You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A number of this crate's dependencies no longer compile on Rust 1.36.0, meaning this crate is no longer usable on Rust 1.36.0.
Expected Behavior
Running cargo +1.36.0 build should pass.
Current Behavior
There are almost certainly more compile errors, but running cargo +1.36.0 build shows that rustc-demangle and memchr no longer work with Rust 1.36.0.
Possible Solution
There are two possible solutions:
Update this crate's MSRV (a breaking change)
Pin the offending crates to a supported version
I don't believe the second solution is feasible because the offending crates are transitive dependencies.
The best solution would be to bump the MSRV and create a new major release. While we're at it, we could use some newer Rust features so there are less breaking changes in the future or take advantage of recent features.
Add the #[non_exhaustive] attribute to Metadata so adding extra metadata to a report isn't a breaking change
This would require introducing a builder API so people can initialize Metadata themselves
Context
I don't particularly mind because I almost always use nightly or stable Rust, but MSRV is very important to some people and we should try to accommodate them.
Code Sample
$ git checkout ffe447a2c66b41b338edb440470c42050bbc0dd5
$ cargo +1.36.0 test
...
error: cannot find macro `matches!`in this scope
--> /home/michael/.cargo/registry/src/github.com-1ecc6299db9ec823/rustc-demangle-0.1.21/src/v0.rs:700:20
|
700 |if matches!((quote, c), ('\'', '"') | ('"', '\'')) {
| ^^^^^^^
error: aborting due to previous error
error: Could not compile `rustc-demangle`.
warning: build failed, waiting for other jobs to finish...
error[E0658]: naming constants with `_` is unstable
--> /home/michael/.cargo/registry/src/github.com-1ecc6299db9ec823/memchr-2.4.1/src/memmem/prefilter/fallback.rs:37:1
|
37 | const _: PrefilterFnTy = find;| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: for more information, see https://github.com/rust-lang/rust/issues/54912
error[E0658]: naming constants with `_` is unstable
--> /home/michael/.cargo/registry/src/github.com-1ecc6299db9ec823/memchr-2.4.1/src/memmem/prefilter/x86/sse.rs:9:1
|
9 | const _: PrefilterFnTy = find;| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: for more information, see https://github.com/rust-lang/rust/issues/54912
error[E0658]: non exhaustive is an experimental feature
--> /home/michael/.cargo/registry/src/github.com-1ecc6299db9ec823/memchr-2.4.1/src/memmem/prefilter/mod.rs:152:1
|
152 |#[non_exhaustive]| ^^^^^^^^^^^^^^^^^
|
= note: for more information, see https://github.com/rust-lang/rust/issues/44109
error: aborting due to 3 previous errors
Your Environment
This was tested against ffe447a using Rust 1.36.0 on Linux.
The text was updated successfully, but these errors were encountered:
Choose one: this is a 🐛 bug report
A number of this crate's dependencies no longer compile on Rust 1.36.0, meaning this crate is no longer usable on Rust 1.36.0.
Expected Behavior
Running
cargo +1.36.0 build
should pass.Current Behavior
There are almost certainly more compile errors, but running
cargo +1.36.0 build
shows thatrustc-demangle
andmemchr
no longer work with Rust 1.36.0.Possible Solution
There are two possible solutions:
I don't believe the second solution is feasible because the offending crates are transitive dependencies.
The best solution would be to bump the MSRV and create a new major release. While we're at it, we could use some newer Rust features so there are less breaking changes in the future or take advantage of recent features.
#[non_exhaustive]
attribute toMetadata
so adding extra metadata to a report isn't a breaking changeMetadata
themselvesContext
I don't particularly mind because I almost always use
nightly
orstable
Rust, but MSRV is very important to some people and we should try to accommodate them.Code Sample
Your Environment
This was tested against ffe447a using Rust 1.36.0 on Linux.
The text was updated successfully, but these errors were encountered: