-
Notifications
You must be signed in to change notification settings - Fork 12.8k
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
--nocapture
doesn't follow common CLI conventions, making it a stumbling block to people debugging failures
#133073
Comments
I propose we audit libtest's CLI for
And propose we adjust CLI parameters to meet user expectations. By "adust" I mean that we make new parameters that are aliases for the existing parameters, and deprecate the existing parameters by hiding them in help and providing a deprecation message. As T-testing-devex is considering first-class custom test harnesses which will be expected to follow libtest's "API", the sooner we nail this down, the more likely they won't need to deal with supporting the deprecated API.
If we had made this change in 2015, the community migration cost would have been small. Its larger now but the longer we wait, the larger it becomes. I'm more worried about existing users having problems with this and the large number of potential new users. |
For casing, the two that are questionable are
For consistency with the rest of Rust tools
For consistency with pytest
For inspiration from cargo-nextest
If people have other test runners they want to compare, you are welcome to add them! I'm scoping this to the existing, stable features of libtest. |
This comment has been minimized.
This comment has been minimized.
My hope is that we can close out the discussion quickly enough that we don't need to split it up. We'll likely need to do an FCP anyways for |
This comment has been minimized.
This comment has been minimized.
Hmm, I see why you brought up a tracking issue. My focus on this is purely in naming and not in improving the semantics. My expectation is that we'll be moving filtering into Cargo and re-evaluate the interface then. Moving more logic into Cargo will be unblocked by the json format being stabilized (so Cargo communicates through tests through json) and this will reduce the burden of what custom test harnesses need to implement. |
This comment has been minimized.
This comment has been minimized.
Is this something that would be possible to pick up once the details are finalised? I'd be interested in taking a look if it was. |
From Zulip
|
We talked about this in today's T-testing-devex meeting
Let's see if this works @rfcbot fcp merge |
Team member @epage has proposed to merge this. The next step is review by the rest of the tagged team members: No concerns currently listed. Once a majority of reviewers approve (and at most 2 approvals are outstanding), this will enter its final comment period. If you spot a major issue that hasn't been raised at any point in this process, please speak up! See this document for info about what commands tagged team members can give me. |
By convention, users would expect to type in
--no-capture
. The fact that the argument is--nocapture
trips people up, especially as they have to wait for their test to compile before they see the failure. Without spelling suggestions, they need to then consult the help to then remember its without the middle-
. Unless someone is doing this all the time to build up muscle memory to counteract intuition, this will trip people up each time.See also
The text was updated successfully, but these errors were encountered: