Repository navigation
fix: expand binary globs in hermit info --json - #621
Open
Bortlesboat wants to merge 1 commit into
Open
Bortlesboat wants to merge 1 commit into
Bortlesboat wants to merge 1 commit into
Conversation
The JSON output marshalled packages as resolved from the manifest, so `Binaries` contained the raw globs (eg. `bin/*`) rather than the files they match. Expand them relative to the package root. Globs that can't be resolved, eg. because the package isn't installed, are left unchanged. Fixes cashapp#161
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #161.
hermit info --jsonmarshalled the packages straight from the manifest, soBinariesheld the globs (["bin/*"]) instead of what they match. The plain text output already resolves them; this does the same for JSON, keeping paths relative to the package root (["bin/bar", "bin/foo"]) so the field keeps the same shape.On the question in the issue about globs that don't resolve: if
ResolveBinariesfails (eg. the package isn't installed yet) the package is emitted unchanged, so JSON consumers still see the manifest values rather than an empty list. The IntelliJ plugin only readsReferenceandRootfrom this output, so it isn't affected.Added a test that installs files under the package root and checks the expanded list, and an assertion on the existing test for the unresolved case. The new test fails on master without the change.