Skip to content

dependency on rcgen too loose since v0.103.10 #482

@jonassmedegaard

Description

@jonassmedegaard

Building rustls-webpki with feature ring, using rcgen v0.14.4 fails like this:

118s error[E0277]: the trait bound `&KeyPair: SigningKey` is not satisfied
118s     --> tests/revocation.rs:1206:24
118s      |
118s 1206 |             .signed_by(&signer)
118s      |              --------- ^^^^^^^ the trait `SigningKey` is not implemented for `&KeyPair`
118s      |              |
118s      |              required by a bound introduced by this call
118s      |
118s note: required by a bound in `CertificateRevocationListParams::signed_by`
118s     --> /usr/share/cargo/registry/rcgen-0.14.4/src/crl.rs:190:28
118s      |
118s  188 |     pub fn signed_by(
118s      |            --------- required by a bound in this associated function
118s  189 |         &self,
118s  190 |         issuer: &Issuer<'_, impl SigningKey>,
118s      |                                  ^^^^^^^^^^ required by this bound in `CertificateRevocationListParams::signed_by`
118s help: consider removing the leading `&`-reference
118s      |
118s 1206 -             .signed_by(&signer)
118s 1206 +             .signed_by(signer)
118s      |
118s 
118s error[E0277]: the trait bound `&KeyPair: SigningKey` is not satisfied
118s     --> tests/revocation.rs:1216:29
118s      |
118s 1216 |         Issuer::new(params, self.issuer.key())
118s      |         -----------         ^^^^^^^^^^^^^^^^^ the trait `SigningKey` is not implemented for `&KeyPair`
118s      |         |
118s      |         required by a bound introduced by this call
118s      |
118s help: the trait `SigningKey` is implemented for `KeyPair`
118s     --> /usr/share/cargo/registry/rcgen-0.14.4/src/key_pair.rs:445:1
118s      |
118s  445 | impl SigningKey for KeyPair {
118s      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
118s note: required by a bound in `Issuer::<'a, S>::new`
118s     --> /usr/share/cargo/registry/rcgen-0.14.4/src/lib.rs:207:13
118s      |
118s  207 | impl<'a, S: SigningKey> Issuer<'a, S> {
118s      |             ^^^^^^^^^^ required by this bound in `Issuer::<'a, S>::new`
118s  208 |     /// Create a new issuer from the given parameters and signing key.
118s  209 |     pub fn new(params: CertificateParams, signing_key: S) -> Self {
118s      |            --- required by a bound in this associated function
118s 
119s For more information about this error, try `rustc --explain E0277`.
119s warning: `rustls-webpki` (test "revocation") generated 2 warnings
119s error: could not compile `rustls-webpki` (test "revocation") due to 2 previous errors; 2 warnings emitted

Building with rcgen 0.14.7 succeeds.

It seems to me that the introduction of file tests/revocation.rs causes the dev-dependency on rcgen v0.14.2 to be too loose.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions