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
EXP-3458: add nimbus-fml validate command #5607
Conversation
Codecov ReportPatch coverage:
Additional details and impacted files@@ Coverage Diff @@
## main #5607 +/- ##
==========================================
+ Coverage 84.53% 84.74% +0.21%
==========================================
Files 105 105
Lines 11076 11179 +103
==========================================
+ Hits 9363 9474 +111
+ Misses 1713 1705 -8
☔ View full report in Codecov by Sentry. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM! 🚀
...onents/support/nimbus-fml/fixtures/fe/invalid/invalid_default_value_for_one_channel.fml.yaml
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is looking okay, but I don't think it's quite ready to land.
There's some complexity around imports
which isn't quite working as expected. I've left some notes below.
1b80596
to
8751416
Compare
Latest testing:
Lovely.
This is less helpful. |
Oh dang I've never seen that one — is the error present in the core FML module? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is lovely. Thank you for iterating on the output and the colors are 👨🍳 kiss.
))?; | ||
return Ok(()); | ||
} | ||
let intermediate_representation = parser.get_intermediate_representation(&channels[0])?; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It would be nice if we can get this to fail with some indication of which file is being processed.
Or at least, output the error with an output_err
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah I think I'm going to add an optional manifests hashmap param to that method so that we can get the imports in order and keep a record of which ones were imported and where it failed and stuff.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
And maybe rework the iteration so it keeps iterating but records successes/failures
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
But I'm going to handle that in a separate ticket (after updating that error to go to output_err
)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This PR adds a command to the
nimbus-fml
CLI that validates an FML file and all of its channels.EXP-3458
Pull Request checklist
[ci full]
to the PR title.