Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature]: improve CSV processing and error messges #212

Open
apop5 opened this issue Jun 27, 2023 · 0 comments
Open

[Feature]: improve CSV processing and error messges #212

apop5 opened this issue Jun 27, 2023 · 0 comments
Labels
state:backlog In the backlog state:needs-maintainer-feedback Needs more information from a maintainer to determine next steps state:needs-triage Needs to triaged to determine next steps type:feature-request A new feature proposal urgency:low Little to no impact

Comments

@apop5
Copy link
Contributor

apop5 commented Jun 27, 2023

Feature Overview

When dealing with multiple CSV files for profile support, error messages are sparse (i.e. the specific filename being processed is not displayed, and this can result in difficulty in finding the offending code.

Other minor annoyances:

in CSV profile, having a blank line at the end of the file causes tool failure:

INFO -   File "C:\Code\mu_tiano_platforms\Features\CONFIG\SetupDataPkg\Tools\VariableList.py", line 1201, in read_csv
INFO -     knob_value_string = row[value_index]

Enum Knob override in Profile CSV cannot have a leading space. Example:

Modify CfgData.xml in Q35 to add enum and enum knob. Same limitation doesn't exist for

   <Enums>
    <Enum name="EnableDisableCombo" help="">
      <Value name="Disabled" value="0" help="" />
      <Value name="Enabled"  value="1" help="" />
    </Enum>
   </Enums>
   
    <Knob name="ExampleEnum" type="EnableDisableCombo" default="Enabled" help="" />

in CfgData.csv, add override with leading space:

*,ExampleEnum, Disabled,00 00 00 00,
INFO -   File "C:\Code\mu_tiano_platforms\Features\CONFIG\SetupDataPkg\Tools\VariableList.py", line 365, in string_to_object
INFO -     raise ParseError(
INFO - VariableList.ParseError: Value ' Disabled' is not a valid value of enum 'EnableDisableCombo'

enum values are a maximum of uint32_t, which is in conflict with flexibility of yaml.
Would it be possible to specify a size for enums? or to increase their default size to uint64_t to account for larger values that need storing?

Solution Overview

Minor changes/improvements

Alternatives Considered

No response

Urgency

Low

Are you going to implement the feature request?

I will implement the feature

Do you need maintainer feedback?

No maintainer feedback needed

Anything else?

No response

@apop5 apop5 added state:backlog In the backlog type:feature-request A new feature proposal state:needs-maintainer-feedback Needs more information from a maintainer to determine next steps state:needs-triage Needs to triaged to determine next steps labels Jun 27, 2023
@github-actions github-actions bot added the urgency:low Little to no impact label Jun 27, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
state:backlog In the backlog state:needs-maintainer-feedback Needs more information from a maintainer to determine next steps state:needs-triage Needs to triaged to determine next steps type:feature-request A new feature proposal urgency:low Little to no impact
Projects
None yet
Development

No branches or pull requests

1 participant