File tree Expand file tree Collapse file tree 1 file changed +19
-0
lines changed Expand file tree Collapse file tree 1 file changed +19
-0
lines changed Original file line number Diff line number Diff line change @@ -5,4 +5,23 @@ is always in a valid state.
5
5
6
6
The CI infrastructure is described in detail in the [ rustc-dev-guide] [ rustc-dev-guide ] .
7
7
8
+ ## ` rust-lang/rust ` CI invariant
9
+
10
+ Changes to the default and ` beta ` /` stable ` release branches of the [ rust-lang/rust] repository go
11
+ through two sets of CI jobs:
12
+
13
+ 1 . ** PR CI** . This is a fast and restricted set of CI jobs that run against PRs to provide faster
14
+ feedback.
15
+ 2 . ** Merge CI** : This is the full set of CI jobs that all changes to [ rust-lang/rust] must pass.
16
+ This includes, but are not limited to, e.g. testing jobs for all Tier 1 targets.
17
+
18
+ We enforce an [ rust-lang/rust] CI invariant where ** PR CI jobs are a subset of Merge CI jobs modulo
19
+ carve outs** . The carve out differences between PR CI and Merge CI jobs are tracked in
20
+ < https://github.com/rust-lang/rust/issues/144259 > . The reason for this subset invariant is because
21
+ if you have PR-only CI jobs, a PR can fail the PR-only jobs but pass the Merge CI. This can cause
22
+ all subsequent PR CI to fail, in _ completely unrelated PRs_ , which is very frustrating for other
23
+ contributors.
24
+
25
+
26
+ [ rust-lang/rust ] : https://github.com/rust-lang/rust
8
27
[ rustc-dev-guide ] : https://rustc-dev-guide.rust-lang.org/tests/ci.html
You can’t perform that action at this time.
0 commit comments