-
Notifications
You must be signed in to change notification settings - Fork 13.3k
compiletest: Remove the libtest-based executor and its dependency #140392
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
Conversation
This patch has deliberately been kept small and simple, to make it easier to revert if necessary. Further cleanup can take palce after we're confident that it won't need to be reverted.
Some changes occurred in src/tools/compiletest cc @jieyouxu |
I think we should keep the libtest executor until the next stable release (2025-05-15 (in 16 days)) in case something goes horribly wrong (seems very unlikely, but as a backup plan) during stable release or whatever. Wdyt? EDIT: but I guess we'd have to do changes and reverts anyway. |
Hmm, at the very least it’s probably a good idea to avoid any subsequent cleanup that would make this harder to revert, until after the next beta. But I think it should be fine to land something like this change (or perhaps an even easier-to-revert variant) in the near-ish future. |
If we really ought to
then I think we might want to hold this off until next beta anyway. We can still land stage 0 redesign PR without this PR (if that might happen), keeping the compiletest-stage0 hack, and then rip out the stage0 hack after landing stage 0 redesign, then this. |
In the medium-term (i.e. after this and the stage 0 redesign have both landed), the situation I hope to be in is:
Removing the libtest dependency before landing the stage 0 redesign is not strictly necessary, because we do have the stage0 hack, and it's likely that the libtest dependency will be removed before any internal details of libtest actually change (which is what would break the hack). But I would prefer to not to force compiler contributors to have to think about the hack if reasonably possible. |
I thought about this some more. Let's land this, I'll put a hold on any further compiletest adjustments that would complicate reverting libtest removal until next beta. Agreed that ideally, compiler contributors won't have to worry about the compiletest stage0 hack. @bors r+ rollup |
compiletest: Remove the libtest-based executor and its dependency Now that rust-lang#140288 has landed and the new compiletest executor is used by default, we can now move forward with removing the libtest dependency from compiletest. My hope is that after landing this, we can configure bootstrap to build compiletest with the pre-built stage0 library by default, instead of the in-tree stage0 library. That would give the stage0 redesign one less thing to worry about. --- This PR has deliberately been kept small and simple, to make it easier to revert if necessary. Further cleanup can take palce after we're confident that it won't need to be reverted. r? jieyouxu
Rollup of 6 pull requests Successful merges: - rust-lang#139883 (crashes: more tests) - rust-lang#140312 (Improve pretty-printing of braces) - rust-lang#140392 (compiletest: Remove the libtest-based executor and its dependency) - rust-lang#140395 (organize and extend forbidden target feature tests) - rust-lang#140422 (unwind: bump `unwinding` dependency to 0.2.6) - rust-lang#140432 (Update documentation for `fn target_config`) r? `@ghost` `@rustbot` modify labels: rollup
this is really amazing work, thank you both so much <3 |
Rollup of 7 pull requests Successful merges: - rust-lang#138344 (Enable `reliable_f16_math` on x86) - rust-lang#139909 (implement or-patterns for pattern types) - rust-lang#140392 (compiletest: Remove the libtest-based executor and its dependency) - rust-lang#140400 (PassWrapper: adapt for llvm/llvm-project@d3d856ad8469) - rust-lang#140422 (unwind: bump `unwinding` dependency to 0.2.6) - rust-lang#140432 (Update documentation for `fn target_config`) - rust-lang#140433 (Replace the \01__gnu_mcount_nc to LLVM intrinsic for additional ARM targets) r? `@ghost` `@rustbot` modify labels: rollup
Rollup merge of rust-lang#140392 - Zalathar:goodbye-libtest, r=jieyouxu compiletest: Remove the libtest-based executor and its dependency Now that rust-lang#140288 has landed and the new compiletest executor is used by default, we can now move forward with removing the libtest dependency from compiletest. My hope is that after landing this, we can configure bootstrap to build compiletest with the pre-built stage0 library by default, instead of the in-tree stage0 library. That would give the stage0 redesign one less thing to worry about. --- This PR has deliberately been kept small and simple, to make it easier to revert if necessary. Further cleanup can take palce after we're confident that it won't need to be reverted. r? jieyouxu Blocker for rust-lang#119899
Now that #140288 has landed and the new compiletest executor is used by default, we can now move forward with removing the libtest dependency from compiletest.
My hope is that after landing this, we can configure bootstrap to build compiletest with the pre-built stage0 library by default, instead of the in-tree stage0 library. That would give the stage0 redesign one less thing to worry about.
This PR has deliberately been kept small and simple, to make it easier to revert if necessary. Further cleanup can take palce after we're confident that it won't need to be reverted.
r? jieyouxu
Blocker for #119899