Auto merge of #86098 - pietroalbini:test-stable, r=Mark-Simulacrum
Add the x86_64-gnu-stable builder
During the 1.52 release process we had to deal with some commits that passed the test suite on the nightly branch but failed on the beta or stable branch. In that case it was due to some UI tests including the channel name in the output, but other changes might also be dependent on the channel.
This commit adds a new CI job that runs the Linux x86_64 test suite with the stable branch, ensuring nightly changes also work as stable. To ensure the new job works the following other changes are present:
* The `ui-fulldeps/session-derive-errors.rs` test has been disabled on beta and stable, which required adding support for `// ignore-{channel}` and `// only-{channel}`.
* The `rustdoc/intra-doc/field.rs` has been fixed.
r? `@Mark-Simulacrum`
fixes https://github.com/rust-lang/release-team/issues/11
This commit is contained in:
commit
c622840b90
12 changed files with 72 additions and 22 deletions
|
|
@ -1,4 +1,4 @@
|
|||
// @has field/index.html '//a[@href="https://doc.rust-lang.org/nightly/core/ops/range/struct.Range.html#structfield.start"]' 'start'
|
||||
// @has field/index.html '//a[@href="https://doc.rust-lang.org/nightly/std/io/error/enum.ErrorKind.html#variant.NotFound"]' 'not_found'
|
||||
// @has field/index.html '//a[@href="{{channel}}/core/ops/range/struct.Range.html#structfield.start"]' 'start'
|
||||
// @has field/index.html '//a[@href="{{channel}}/std/io/error/enum.ErrorKind.html#variant.NotFound"]' 'not_found'
|
||||
//! [start][std::ops::Range::start]
|
||||
//! [not_found][std::io::ErrorKind::NotFound]
|
||||
|
|
|
|||
|
|
@ -1,6 +1,12 @@
|
|||
// check-fail
|
||||
// Tests error conditions for specifying diagnostics using #[derive(SessionDiagnostic)]
|
||||
|
||||
// The proc_macro2 crate handles spans differently when on beta/stable release rather than nightly,
|
||||
// changing the output of this test. Since SessionDiagnostic is strictly internal to the compiler
|
||||
// the test is just ignored on stable and beta:
|
||||
// ignore-beta
|
||||
// ignore-stable
|
||||
|
||||
#![feature(rustc_private)]
|
||||
#![crate_type = "lib"]
|
||||
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
error: `#[derive(SessionDiagnostic)]` can only be used on structs
|
||||
--> $DIR/session-derive-errors.rs:28:1
|
||||
--> $DIR/session-derive-errors.rs:34:1
|
||||
|
|
||||
LL | / #[error = "E0123"]
|
||||
LL | |
|
||||
|
|
@ -10,31 +10,31 @@ LL | | }
|
|||
| |_^
|
||||
|
||||
error: `#[label = ...]` is not a valid SessionDiagnostic struct attribute
|
||||
--> $DIR/session-derive-errors.rs:37:1
|
||||
--> $DIR/session-derive-errors.rs:43:1
|
||||
|
|
||||
LL | #[label = "This is in the wrong place"]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
error: `#[suggestion = ...]` is not a valid SessionDiagnostic field attribute
|
||||
--> $DIR/session-derive-errors.rs:44:5
|
||||
--> $DIR/session-derive-errors.rs:50:5
|
||||
|
|
||||
LL | #[suggestion = "this is the wrong kind of attribute"]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
error: `error` specified multiple times
|
||||
--> $DIR/session-derive-errors.rs:52:11
|
||||
--> $DIR/session-derive-errors.rs:58:11
|
||||
|
|
||||
LL | #[error = "E0456"]
|
||||
| ^^^^^^^
|
||||
|
||||
error: `lint` specified when `error` was already specified
|
||||
--> $DIR/session-derive-errors.rs:58:10
|
||||
--> $DIR/session-derive-errors.rs:64:10
|
||||
|
|
||||
LL | #[lint = "some_useful_lint"]
|
||||
| ^^^^^^^^^^^^^^^^^^
|
||||
|
||||
error: `code` not specified
|
||||
--> $DIR/session-derive-errors.rs:67:1
|
||||
--> $DIR/session-derive-errors.rs:73:1
|
||||
|
|
||||
LL | struct ErrorCodeNotProvided {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
@ -42,19 +42,19 @@ LL | struct ErrorCodeNotProvided {}
|
|||
= help: use the [code = "..."] attribute to set this diagnostic's error code
|
||||
|
||||
error: the `#[message = "..."]` attribute can only be applied to fields of type Span
|
||||
--> $DIR/session-derive-errors.rs:95:5
|
||||
--> $DIR/session-derive-errors.rs:101:5
|
||||
|
|
||||
LL | #[message = "this message is applied to a String field"]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
error: `name` doesn't refer to a field on this type
|
||||
--> $DIR/session-derive-errors.rs:102:1
|
||||
--> $DIR/session-derive-errors.rs:108:1
|
||||
|
|
||||
LL | #[message = "This error has a field, and references {name}"]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
error: invalid format string: expected `'}'` but string was terminated
|
||||
--> $DIR/session-derive-errors.rs:110:1
|
||||
--> $DIR/session-derive-errors.rs:116:1
|
||||
|
|
||||
LL | #[error = "E0123"]
|
||||
| - because of this opening brace
|
||||
|
|
@ -65,7 +65,7 @@ LL | #[message = "This is missing a closing brace: {name"]
|
|||
= note: this error originates in the derive macro `SessionDiagnostic` (in Nightly builds, run with -Z macro-backtrace for more info)
|
||||
|
||||
error: invalid format string: unmatched `}` found
|
||||
--> $DIR/session-derive-errors.rs:119:1
|
||||
--> $DIR/session-derive-errors.rs:125:1
|
||||
|
|
||||
LL | #[message = "This is missing an opening brace: name}"]
|
||||
| ^ unmatched `}` in format string
|
||||
|
|
@ -74,25 +74,25 @@ LL | #[message = "This is missing an opening brace: name}"]
|
|||
= note: this error originates in the derive macro `SessionDiagnostic` (in Nightly builds, run with -Z macro-backtrace for more info)
|
||||
|
||||
error: The `#[label = ...]` attribute can only be applied to fields of type Span
|
||||
--> $DIR/session-derive-errors.rs:138:5
|
||||
--> $DIR/session-derive-errors.rs:144:5
|
||||
|
|
||||
LL | #[label = "See here"]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
error: `nonsense` is not a valid key for `#[suggestion(...)]`
|
||||
--> $DIR/session-derive-errors.rs:163:18
|
||||
--> $DIR/session-derive-errors.rs:169:18
|
||||
|
|
||||
LL | #[suggestion(nonsense = "This is nonsense")]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
error: `msg` is not a valid key for `#[suggestion(...)]`
|
||||
--> $DIR/session-derive-errors.rs:171:18
|
||||
--> $DIR/session-derive-errors.rs:177:18
|
||||
|
|
||||
LL | #[suggestion(msg = "This is a suggestion")]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
error: missing suggestion message
|
||||
--> $DIR/session-derive-errors.rs:179:7
|
||||
--> $DIR/session-derive-errors.rs:185:7
|
||||
|
|
||||
LL | #[suggestion(code = "This is suggested code")]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
@ -100,7 +100,7 @@ LL | #[suggestion(code = "This is suggested code")]
|
|||
= help: provide a suggestion message using #[suggestion(message = "...")]
|
||||
|
||||
error: wrong field type for suggestion
|
||||
--> $DIR/session-derive-errors.rs:194:5
|
||||
--> $DIR/session-derive-errors.rs:200:5
|
||||
|
|
||||
LL | / #[suggestion(message = "This is a message", code = "This is suggested code")]
|
||||
LL | |
|
||||
|
|
@ -110,7 +110,7 @@ LL | | suggestion: Applicability,
|
|||
= help: #[suggestion(...)] should be applied to fields of type Span or (Span, Applicability)
|
||||
|
||||
error: type of field annotated with `#[suggestion(...)]` contains more than one Span
|
||||
--> $DIR/session-derive-errors.rs:209:5
|
||||
--> $DIR/session-derive-errors.rs:215:5
|
||||
|
|
||||
LL | / #[suggestion(message = "This is a message", code = "This is suggested code")]
|
||||
LL | |
|
||||
|
|
@ -118,7 +118,7 @@ LL | | suggestion: (Span, Span, Applicability),
|
|||
| |___________________________________________^
|
||||
|
||||
error: type of field annotated with `#[suggestion(...)]` contains more than one Applicability
|
||||
--> $DIR/session-derive-errors.rs:217:5
|
||||
--> $DIR/session-derive-errors.rs:223:5
|
||||
|
|
||||
LL | / #[suggestion(message = "This is a message", code = "This is suggested code")]
|
||||
LL | |
|
||||
|
|
@ -126,7 +126,7 @@ LL | | suggestion: (Applicability, Applicability, Span),
|
|||
| |____________________________________________________^
|
||||
|
||||
error: invalid annotation list `#[label(...)]`
|
||||
--> $DIR/session-derive-errors.rs:225:7
|
||||
--> $DIR/session-derive-errors.rs:231:7
|
||||
|
|
||||
LL | #[label("wrong kind of annotation for label")]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue