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

treat setting the number of test-threads to 0 as an error #38945

Merged
merged 2 commits into from
Feb 12, 2017
Merged

treat setting the number of test-threads to 0 as an error #38945

merged 2 commits into from
Feb 12, 2017

Conversation

battisti
Copy link
Contributor

@battisti battisti commented Jan 9, 2017

It is currently possible to call cargo test -- --test-threads=0 which will cause cargo to hang until aborted. This change will fix that and will report an appropriate error to the user.

Running test with cargo test -- --test-threads=0 causes cargo to
hang as 0 is a valid usize. Adding zero threads as a special case
to the error handling.
@rust-highfive
Copy link
Collaborator

Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @brson (or someone else) soon.

If any changes to this PR are deemed necessary, please add them as extra commits. This ensures that the reviewer can see what has changed since they last reviewed the code. Due to the way GitHub handles out-of-date commits, this should also make it reasonably obvious what issues have or haven't been addressed. Large or tricky changes may require several passes of review and changes.

Please see the contribution instructions for more information.

@Mark-Simulacrum
Copy link
Member

Some programs treat 0 as "number of cores," should we also do that?

@battisti
Copy link
Contributor Author

@Mark-Simulacrum do you have an example where this is done?

@Mark-Simulacrum
Copy link
Member

Hmm, actually, I can't find such an example right now. I think Cargo defaults to number of cores by default, though, so maybe just documenting that in the --help would be sufficient? For example, cargo test's help currently has: -j N, --jobs N Number of parallel jobs, defaults to # of CPUs. It may be sufficient to just add a note to the documentation (--help) and maybe print something along the lines of "the default is the # of CPU cores, 0 is not a valid number of threads."?

It's worth noting the test --help currently includes the following after the main options summary. I'm not sure that's the best place.

By default, all tests are run in parallel. This can be altered with the
--test-threads flag or the RUST_TEST_THREADS environment variable when running
tests (set it to 1).

@battisti
Copy link
Contributor Author

Thanks! Next weekend, I will add that to the --help documentation and change the error message for --test-threads=0 accordingly.

@alexcrichton
Copy link
Member

@battisti sorry for the long turnaround! It looks like tidy checks may be failing though? If you want to fix that up I'll r+ and we can merge

@battisti
Copy link
Contributor Author

@alexcrichton looks like I fixed the tidy check, but now the OS X checks fail due to an: "unknown archive format".

@alexcrichton
Copy link
Member

@bors: r+

No worries, looks good to me!

@bors
Copy link
Contributor

bors commented Feb 11, 2017

📌 Commit 0a4c268 has been approved by alexcrichton

@bors
Copy link
Contributor

bors commented Feb 12, 2017

⌛ Testing commit 0a4c268 with merge 912bc14...

bors added a commit that referenced this pull request Feb 12, 2017
treat setting the number of test-threads to 0 as an error

It is currently possible to call `cargo test -- --test-threads=0` which will cause cargo to hang until aborted. This change will fix that and will report an appropriate error to the user.
@bors
Copy link
Contributor

bors commented Feb 12, 2017

☀️ Test successful - status-appveyor, status-travis
Approved by: alexcrichton
Pushing 912bc14 to master...

@bors bors merged commit 0a4c268 into rust-lang:master Feb 12, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants