-
-
Notifications
You must be signed in to change notification settings - Fork 14.8k
Tracking issue for new compiletest executor #140192
Copy link
Copy link
Open
Labels
A-compiletestArea: The compiletest test runnerArea: The compiletest test runnerA-test-infraArea: test infrastructure (may span bootstrap/compiletest/more)Area: test infrastructure (may span bootstrap/compiletest/more)C-tracking-issueCategory: An issue tracking the progress of sth. like the implementation of an RFCCategory: An issue tracking the progress of sth. like the implementation of an RFCT-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.Relevant to the compiler team, which will review and decide on the PR/issue.
Metadata
Metadata
Assignees
Labels
A-compiletestArea: The compiletest test runnerArea: The compiletest test runnerA-test-infraArea: test infrastructure (may span bootstrap/compiletest/more)Area: test infrastructure (may span bootstrap/compiletest/more)C-tracking-issueCategory: An issue tracking the progress of sth. like the implementation of an RFCCategory: An issue tracking the progress of sth. like the implementation of an RFCT-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.Relevant to the compiler team, which will review and decide on the PR/issue.
Type
Fields
Give feedbackNo fields configured for issues without a type.
This is a tracking issue for migrating towards a new compiletest executor to replace the dependency on the
libtest executor.
This tracking issue is not meant for discussions or bug reports but is meant to track implementation progress, please open individual issues for bugs / discussions or zulip threads instead.
Summary
compiletestcurrently relies on the in-tree libtest (unstable programmatic API). This is problematic because:build.compiletest-use-stage0-libtest = truebut that's more-or-less a hack / mitigation).compiletestbecause we can't easily tailor libtest behavior for rustc/rustdoc/ certain library test suites without regressing all the other libtest consumers.Instead, we can roll our own minimal executor that replaces the libtest executor, which would allow us to drop the dependency on libtest once we migrate over to the new executor.
Known limitations
#![feature(internal_output_capture)].Known bugs
Implementation history
compiler/tree change to inhibitdownload-rustcRevert compiletest new-executor, to re-land without download-rustc #140233