-
Notifications
You must be signed in to change notification settings - Fork 198
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
rustwide_builder: allow using a try build #1892
Conversation
I'm confused about the clippy errors, which seem unrelated to my change. Maybe there's a new version of clippy that triggers on some things it didn't before? |
The new release was yesterday so new clippy lints available now. ;) |
Ah, I was confused why my pre-fixing clippy lints as they appeared on nightly didn't catch these. I don't use |
@jyn514 is something missing to merge this? |
@jsha just in case: did you run tests with this code specifically? |
Yes, I've run |
Cargo test won't test the build, can you check cargo test --ignored? |
cc @jsha just as a last check, to be safe: did you run |
I ran it after your suggestion (thanks!) and it failed, but I haven't had a chance to dig into why. |
but the manual build with this code worked? Just a thought: (I don't know much about try-builds), but couldn't we just use some specific try-build that exists for longer, and add a testcase testing if running the build works with it? |
Yep.
This is a good idea. I'll have to check how long they last. Here's the error I'm getting from
|
All commit artifacts are deleted every 6 months. If you want to update the try commit manually every 5 months that doesn't seem unreasonable, but given that this is just for local development I think it's ok to just not test it too. |
This is interesting. If I run just one of the build tests at a time, they pass. For instance each of these passes:
But this fails:
And this passes:
So it seems like some sort of concurrency issue, with different threads stomping on each other. |
Ah, I didn't know that. Then yes, manual test is fine. |
Scratch that. I realized I was actually running into this concurrency issue with Once I switched back to
Also, I realized the rustwide build tests take their environment from the TestEnvironment, so I would expect them to actually ignore environment variables. Gonna need to do a little more digging. |
just fyi: in CI we're running the build-tests also with docs.rs/.github/workflows/ci.yml Line 118 in 161dba0
|
Figured that out. The test env does call from_env, and then overrides a handful of values: Lines 258 to 283 in 161dba0
We should probably make TestEnvironment more hermetic by setting all (or almost all?) of the fields, but for now I've let it be. With the latest pushed commit, this now passes the crate build tests with |
Followup from #1889 (comment)