Repository navigation
Conversation
Multi-call dispatcher: 'coreutils <tool> [args...]' runs the sibling binary, and the arguments after the tool name are passed through untouched so the sub-utility's own option parsing decides what they mean. Siblings are found relative to the executable's own directory, which is where build.vsh puts them, so a relocated binary does not change what it dispatches to. With no operand it prints the multi-call banner and exits 1. --version is not an option here and never will be: it is read as the name of a sub-utility, so it fails as a missing function, which is what the reference does and what a test pins. Ubuntu's coreutils package ships no multi-call binary, so GNU could not be measured for this one; the surface was taken from the uutils reference on Windows instead, which is noted in the test file. Verified against that reference by hand for the banner, an unknown sub-utility, and the --version case.
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.
Multi-call dispatcher:
coreutils <tool> [args...]runs the sibling binary, and the arguments after the tool name are passed through untouched so the sub-utility's own option parsing decides what they mean.Siblings are found relative to the executable's own directory, which is where
build.vshputs them, so a relocated binary does not change what it dispatches to.With no operand it prints the multi-call banner and exits 1.
--versionis not an option here and never will be: it is read as the name of a sub-utility, so it fails as a missing function. That is what the reference does, and a test pins it — it is the kind of thing a future "add --version support" change would quietly break.Ubuntu's coreutils package ships no multi-call binary, so GNU could not be measured for this one. The surface was taken from the uutils reference on Windows instead, and that provenance is stated in the test file rather than left implied.