-
Notifications
You must be signed in to change notification settings - Fork 50
Bug: disabling default-features on webpki fails builds that depend on quinn on Linux #164
Copy link
Copy link
Closed
Description
Apparently, the fact that rustls-platform-verifier disables default features on its webpki-dependency declaration causes trouble for downstream packages when building on Linux.
For example, a simple package with the following dependencies will fail to compile with the error below:
[dependencies]
quinn = "0.11.6"
# rustls-webpki = { version = "0.102", features = ["std"] }
build error:
error[E0277]: the trait bound `webpki::Error: std::error::Error` is not satisfied
--> /<snap>/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustls-platform-verifier-0.4.0/src/verification/others.rs:234:40
|
234 | other_err.0.downcast_ref::<webpki::Error>()
| ------------ ^^^^^^^^^^^^^ the trait `std::error::Error` is not implemented for `webpki::Error`
| |
| required by a bound introduced by this call
|
note: required by a bound in `<(dyn std::error::Error + Send + Sync + 'static)>::downcast_ref`
--> /<snap>/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/error.rs:271:28
|
271 | pub fn downcast_ref<T: Error + 'static>(&self) -> Option<&T> {
| ^^^^^ required by this bound in `<dyn Error + Send + Sync>::downcast_ref`
Uncommenting the rustls-webpki dependency above and explicitly enabling std fixes the issue.
System and cargo version
$ cargo --version
cargo 1.85.0 (d73d2caf9 2024-12-31)
$ uname -a
uname -a
Linux dsd-machine 6.8.0-45-generic #45~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Wed Sep 11 15:25:05 UTC 2 x86_64 x86_64 x86_64 GNU/Linux
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels