[INFO] fetching crate biscuit 0.7.0...
[INFO] testing biscuit-0.7.0 against 1.90.0 for beta-1.91-3
[INFO] extracting crate biscuit 0.7.0 into /workspace/builds/worker-2-tc1/source
[INFO] started tweaking crates.io crate biscuit 0.7.0
[INFO] finished tweaking crates.io crate biscuit 0.7.0
[INFO] tweaked toml for crates.io crate biscuit 0.7.0 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate biscuit 0.7.0 on toolchain 1.90.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 60 packages to latest compatible versions
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 270055167f50613203ce2b1975c2806819d4ec1a15d98e9b26fb5028e1021864
[INFO] running `Command { std: "docker" "start" "-a" "270055167f50613203ce2b1975c2806819d4ec1a15d98e9b26fb5028e1021864", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "270055167f50613203ce2b1975c2806819d4ec1a15d98e9b26fb5028e1021864", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "270055167f50613203ce2b1975c2806819d4ec1a15d98e9b26fb5028e1021864", kill_on_drop: false }`
[INFO] [stdout] 270055167f50613203ce2b1975c2806819d4ec1a15d98e9b26fb5028e1021864
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e57a346a7b5e1d6159a8d2981fee351ecd1bd428bbbc3406015ad9c273a74e49
[INFO] running `Command { std: "docker" "start" "-a" "e57a346a7b5e1d6159a8d2981fee351ecd1bd428bbbc3406015ad9c273a74e49", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.101
[INFO] [stderr]    Compiling quote v1.0.41
[INFO] [stderr]    Compiling unicode-ident v1.0.19
[INFO] [stderr]    Compiling libc v0.2.176
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling find-msvc-tools v0.1.2
[INFO] [stderr]    Compiling equivalent v1.0.2
[INFO] [stderr]    Compiling hashbrown v0.16.0
[INFO] [stderr]    Compiling cfg-if v1.0.3
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling cc v1.2.39
[INFO] [stderr]    Compiling ryu v1.0.20
[INFO] [stderr]    Compiling itoa v1.0.15
[INFO] [stderr]    Compiling memchr v2.7.6
[INFO] [stderr]    Compiling untrusted v0.9.0
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling chrono v0.4.42
[INFO] [stderr]    Compiling indexmap v2.11.4
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]    Compiling data-encoding v2.9.0
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling biscuit v0.7.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]    --> src/jwa.rs:309:19
[INFO] [stdout]     |
[INFO] [stdout] 309 |         let rng = rand::SystemRandom::new();
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:92:5
[INFO] [stdout]     |
[INFO] [stdout]  92 |     unused_qualifications,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]     |
[INFO] [stdout] 309 -         let rng = rand::SystemRandom::new();
[INFO] [stdout] 309 +         let rng = SystemRandom::new();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]    --> src/jwa.rs:338:23
[INFO] [stdout]     |
[INFO] [stdout] 338 |             let rng = rand::SystemRandom::new();
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]     |
[INFO] [stdout] 338 -             let rng = rand::SystemRandom::new();
[INFO] [stdout] 338 +             let rng = SystemRandom::new();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `ring::deprecated_constant_time::verify_slices_are_equal`: To be removed. Internal function not intended for external use with no promises regarding side channels.
[INFO] [stdout]   --> src/jwa.rs:10:26
[INFO] [stdout]    |
[INFO] [stdout] 10 | use ring::constant_time::verify_slices_are_equal;
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `ring::deprecated_constant_time::verify_slices_are_equal`: To be removed. Internal function not intended for external use with no promises regarding side channels.
[INFO] [stdout]    --> src/jwa.rs:364:9
[INFO] [stdout]     |
[INFO] [stdout] 364 |         verify_slices_are_equal(expected_signature, actual_signature.as_ref())?;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `chrono::DateTime::<Tz>::from_utc`: Use TimeZone::from_utc_datetime() or DateTime::from_naive_utc_and_offset instead
[INFO] [stdout]    --> src/lib.rs:701:26
[INFO] [stdout]     |
[INFO] [stdout] 701 |         DateTime::<Utc>::from_utc(
[INFO] [stdout]     |                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `chrono::NaiveDateTime::from_timestamp_opt`: use `DateTime::from_timestamp` instead
[INFO] [stdout]    --> src/lib.rs:702:28
[INFO] [stdout]     |
[INFO] [stdout] 702 |             NaiveDateTime::from_timestamp_opt(timestamp, 0).unwrap(),
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `chrono::DateTime::<Tz>::from_utc`: Use TimeZone::from_utc_datetime() or DateTime::from_naive_utc_and_offset instead
[INFO] [stdout]    --> src/lib.rs:724:39
[INFO] [stdout]     |
[INFO] [stdout] 724 |         Ok(Timestamp(DateTime::<Utc>::from_utc(
[INFO] [stdout]     |                                       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `chrono::NaiveDateTime::from_timestamp_opt`: use `DateTime::from_timestamp` instead
[INFO] [stdout]    --> src/lib.rs:725:28
[INFO] [stdout]     |
[INFO] [stdout] 725 |             NaiveDateTime::from_timestamp_opt(timestamp, 0).unwrap(),
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `chrono::TimeDelta::max_value`: Use `TimeDelta::MAX` instead
[INFO] [stdout]    --> src/lib.rs:845:55
[INFO] [stdout]     |
[INFO] [stdout] 845 |             issued_at: Validation::Validate(Duration::max_value()),
[INFO] [stdout]     |                                                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/serde_custom/base64_url_uint.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub fn wrap(data: &BigUint) -> Wrapper {
[INFO] [stdout]    |                   ^^^^^^^^     ------- the same lifetime is hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub fn wrap(data: &BigUint) -> Wrapper<'_> {
[INFO] [stdout]    |                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/serde_custom/byte_sequence.rs:47:19
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub fn wrap(data: &[u8]) -> Wrapper {
[INFO] [stdout]    |                   ^^^^^     ------- the same lifetime is hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub fn wrap(data: &[u8]) -> Wrapper<'_> {
[INFO] [stdout]    |                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 33.52s
[INFO] running `Command { std: "docker" "inspect" "e57a346a7b5e1d6159a8d2981fee351ecd1bd428bbbc3406015ad9c273a74e49", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e57a346a7b5e1d6159a8d2981fee351ecd1bd428bbbc3406015ad9c273a74e49", kill_on_drop: false }`
[INFO] [stdout] e57a346a7b5e1d6159a8d2981fee351ecd1bd428bbbc3406015ad9c273a74e49
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c19aad2c869ad4e5638d58cfdd02f9138550429bfb85d1653dbe9d632df656f9
[INFO] running `Command { std: "docker" "start" "-a" "c19aad2c869ad4e5638d58cfdd02f9138550429bfb85d1653dbe9d632df656f9", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde_test v1.0.177
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]    --> src/jwa.rs:309:19
[INFO] [stdout]     |
[INFO] [stdout] 309 |         let rng = rand::SystemRandom::new();
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:92:5
[INFO] [stdout]     |
[INFO] [stdout]  92 |     unused_qualifications,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]     |
[INFO] [stdout] 309 -         let rng = rand::SystemRandom::new();
[INFO] [stdout] 309 +         let rng = SystemRandom::new();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]    --> src/jwa.rs:338:23
[INFO] [stdout]     |
[INFO] [stdout] 338 |             let rng = rand::SystemRandom::new();
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]     |
[INFO] [stdout] 338 -             let rng = rand::SystemRandom::new();
[INFO] [stdout] 338 +             let rng = SystemRandom::new();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `ring::deprecated_constant_time::verify_slices_are_equal`: To be removed. Internal function not intended for external use with no promises regarding side channels.
[INFO] [stdout]   --> src/jwa.rs:10:26
[INFO] [stdout]    |
[INFO] [stdout] 10 | use ring::constant_time::verify_slices_are_equal;
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `ring::deprecated_constant_time::verify_slices_are_equal`: To be removed. Internal function not intended for external use with no promises regarding side channels.
[INFO] [stdout]    --> src/jwa.rs:364:9
[INFO] [stdout]     |
[INFO] [stdout] 364 |         verify_slices_are_equal(expected_signature, actual_signature.as_ref())?;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `chrono::DateTime::<Tz>::from_utc`: Use TimeZone::from_utc_datetime() or DateTime::from_naive_utc_and_offset instead
[INFO] [stdout]    --> src/lib.rs:701:26
[INFO] [stdout]     |
[INFO] [stdout] 701 |         DateTime::<Utc>::from_utc(
[INFO] [stdout]     |                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `chrono::NaiveDateTime::from_timestamp_opt`: use `DateTime::from_timestamp` instead
[INFO] [stdout]    --> src/lib.rs:702:28
[INFO] [stdout]     |
[INFO] [stdout] 702 |             NaiveDateTime::from_timestamp_opt(timestamp, 0).unwrap(),
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `chrono::DateTime::<Tz>::from_utc`: Use TimeZone::from_utc_datetime() or DateTime::from_naive_utc_and_offset instead
[INFO] [stdout]    --> src/lib.rs:724:39
[INFO] [stdout]     |
[INFO] [stdout] 724 |         Ok(Timestamp(DateTime::<Utc>::from_utc(
[INFO] [stdout]     |                                       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `chrono::NaiveDateTime::from_timestamp_opt`: use `DateTime::from_timestamp` instead
[INFO] [stdout]    --> src/lib.rs:725:28
[INFO] [stdout]     |
[INFO] [stdout] 725 |             NaiveDateTime::from_timestamp_opt(timestamp, 0).unwrap(),
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `chrono::TimeDelta::max_value`: Use `TimeDelta::MAX` instead
[INFO] [stdout]    --> src/lib.rs:845:55
[INFO] [stdout]     |
[INFO] [stdout] 845 |             issued_at: Validation::Validate(Duration::max_value()),
[INFO] [stdout]     |                                                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/serde_custom/base64_url_uint.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub fn wrap(data: &BigUint) -> Wrapper {
[INFO] [stdout]    |                   ^^^^^^^^     ------- the same lifetime is hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub fn wrap(data: &BigUint) -> Wrapper<'_> {
[INFO] [stdout]    |                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/serde_custom/byte_sequence.rs:47:19
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub fn wrap(data: &[u8]) -> Wrapper {
[INFO] [stdout]    |                   ^^^^^     ------- the same lifetime is hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub fn wrap(data: &[u8]) -> Wrapper<'_> {
[INFO] [stdout]    |                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling biscuit v0.7.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]    --> src/jwa.rs:309:19
[INFO] [stdout]     |
[INFO] [stdout] 309 |         let rng = rand::SystemRandom::new();
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:92:5
[INFO] [stdout]     |
[INFO] [stdout]  92 |     unused_qualifications,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]     |
[INFO] [stdout] 309 -         let rng = rand::SystemRandom::new();
[INFO] [stdout] 309 +         let rng = SystemRandom::new();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]    --> src/jwa.rs:338:23
[INFO] [stdout]     |
[INFO] [stdout] 338 |             let rng = rand::SystemRandom::new();
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]     |
[INFO] [stdout] 338 -             let rng = rand::SystemRandom::new();
[INFO] [stdout] 338 +             let rng = SystemRandom::new();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]     --> src/jwa.rs:1267:40
[INFO] [stdout]      |
[INFO] [stdout] 1267 |         let cek = not_err!(cek_alg.cek(jwa::ContentEncryptionAlgorithm::A256GCM, &key));
[INFO] [stdout]      |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]      |
[INFO] [stdout] 1267 -         let cek = not_err!(cek_alg.cek(jwa::ContentEncryptionAlgorithm::A256GCM, &key));
[INFO] [stdout] 1267 +         let cek = not_err!(cek_alg.cek(ContentEncryptionAlgorithm::A256GCM, &key));
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]     --> src/jwa.rs:1290:40
[INFO] [stdout]      |
[INFO] [stdout] 1290 |         let cek = not_err!(cek_alg.cek(jwa::ContentEncryptionAlgorithm::A128GCM, &key));
[INFO] [stdout]      |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]      |
[INFO] [stdout] 1290 -         let cek = not_err!(cek_alg.cek(jwa::ContentEncryptionAlgorithm::A128GCM, &key));
[INFO] [stdout] 1290 +         let cek = not_err!(cek_alg.cek(ContentEncryptionAlgorithm::A128GCM, &key));
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]     --> src/jwa.rs:1296:40
[INFO] [stdout]      |
[INFO] [stdout] 1296 |         let cek = not_err!(cek_alg.cek(jwa::ContentEncryptionAlgorithm::A256GCM, &key));
[INFO] [stdout]      |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]      |
[INFO] [stdout] 1296 -         let cek = not_err!(cek_alg.cek(jwa::ContentEncryptionAlgorithm::A256GCM, &key));
[INFO] [stdout] 1296 +         let cek = not_err!(cek_alg.cek(ContentEncryptionAlgorithm::A256GCM, &key));
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]     --> src/jwa.rs:1319:40
[INFO] [stdout]      |
[INFO] [stdout] 1319 |         let cek = not_err!(cek_alg.cek(jwa::ContentEncryptionAlgorithm::A128GCM, &key));
[INFO] [stdout]      |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]      |
[INFO] [stdout] 1319 -         let cek = not_err!(cek_alg.cek(jwa::ContentEncryptionAlgorithm::A128GCM, &key));
[INFO] [stdout] 1319 +         let cek = not_err!(cek_alg.cek(ContentEncryptionAlgorithm::A128GCM, &key));
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]     --> src/jwa.rs:1325:40
[INFO] [stdout]      |
[INFO] [stdout] 1325 |         let cek = not_err!(cek_alg.cek(jwa::ContentEncryptionAlgorithm::A256GCM, &key));
[INFO] [stdout]      |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]      |
[INFO] [stdout] 1325 -         let cek = not_err!(cek_alg.cek(jwa::ContentEncryptionAlgorithm::A256GCM, &key));
[INFO] [stdout] 1325 +         let cek = not_err!(cek_alg.cek(ContentEncryptionAlgorithm::A256GCM, &key));
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]     --> src/jwa.rs:1351:23
[INFO] [stdout]      |
[INFO] [stdout] 1351 |         let enc_alg = jwa::ContentEncryptionAlgorithm::A128GCM; // determines the CEK
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]      |
[INFO] [stdout] 1351 -         let enc_alg = jwa::ContentEncryptionAlgorithm::A128GCM; // determines the CEK
[INFO] [stdout] 1351 +         let enc_alg = ContentEncryptionAlgorithm::A128GCM; // determines the CEK
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]     --> src/jwa.rs:1383:23
[INFO] [stdout]      |
[INFO] [stdout] 1383 |         let enc_alg = jwa::ContentEncryptionAlgorithm::A128GCM; // determines the CEK
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]      |
[INFO] [stdout] 1383 -         let enc_alg = jwa::ContentEncryptionAlgorithm::A128GCM; // determines the CEK
[INFO] [stdout] 1383 +         let enc_alg = ContentEncryptionAlgorithm::A128GCM; // determines the CEK
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]     --> src/jwa.rs:1399:23
[INFO] [stdout]      |
[INFO] [stdout] 1399 |         let enc_alg = jwa::ContentEncryptionAlgorithm::A128GCM;
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]      |
[INFO] [stdout] 1399 -         let enc_alg = jwa::ContentEncryptionAlgorithm::A128GCM;
[INFO] [stdout] 1399 +         let enc_alg = ContentEncryptionAlgorithm::A128GCM;
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]     --> src/jwa.rs:1407:23
[INFO] [stdout]      |
[INFO] [stdout] 1407 |         let enc_alg = jwa::ContentEncryptionAlgorithm::A256GCM;
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]      |
[INFO] [stdout] 1407 -         let enc_alg = jwa::ContentEncryptionAlgorithm::A256GCM;
[INFO] [stdout] 1407 +         let enc_alg = ContentEncryptionAlgorithm::A256GCM;
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]     --> src/jwa.rs:1432:23
[INFO] [stdout]      |
[INFO] [stdout] 1432 |         let enc_alg = jwa::ContentEncryptionAlgorithm::A128GCM;
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]      |
[INFO] [stdout] 1432 -         let enc_alg = jwa::ContentEncryptionAlgorithm::A128GCM;
[INFO] [stdout] 1432 +         let enc_alg = ContentEncryptionAlgorithm::A128GCM;
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]     --> src/jwa.rs:1460:23
[INFO] [stdout]      |
[INFO] [stdout] 1460 |         let enc_alg = jwa::ContentEncryptionAlgorithm::A256GCM;
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]      |
[INFO] [stdout] 1460 -         let enc_alg = jwa::ContentEncryptionAlgorithm::A256GCM;
[INFO] [stdout] 1460 +         let enc_alg = ContentEncryptionAlgorithm::A256GCM;
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]    --> src/jwe.rs:731:13
[INFO] [stdout]     |
[INFO] [stdout] 731 |             jwa::KeyManagementAlgorithm::DirectSymmetricKey,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]     |
[INFO] [stdout] 731 -             jwa::KeyManagementAlgorithm::DirectSymmetricKey,
[INFO] [stdout] 731 +             KeyManagementAlgorithm::DirectSymmetricKey,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]    --> src/jwe.rs:732:13
[INFO] [stdout]     |
[INFO] [stdout] 732 |             jwa::ContentEncryptionAlgorithm::A256GCM,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]     |
[INFO] [stdout] 732 -             jwa::ContentEncryptionAlgorithm::A256GCM,
[INFO] [stdout] 732 +             ContentEncryptionAlgorithm::A256GCM,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `ring::deprecated_constant_time::verify_slices_are_equal`: To be removed. Internal function not intended for external use with no promises regarding side channels.
[INFO] [stdout]   --> src/jwa.rs:10:26
[INFO] [stdout]    |
[INFO] [stdout] 10 | use ring::constant_time::verify_slices_are_equal;
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `ring::deprecated_constant_time::verify_slices_are_equal`: To be removed. Internal function not intended for external use with no promises regarding side channels.
[INFO] [stdout]    --> src/jwa.rs:364:9
[INFO] [stdout]     |
[INFO] [stdout] 364 |         verify_slices_are_equal(expected_signature, actual_signature.as_ref())?;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `ring::deprecated_constant_time::verify_slices_are_equal`: To be removed. Internal function not intended for external use with no promises regarding side channels.
[INFO] [stdout]    --> src/jwa.rs:792:30
[INFO] [stdout]     |
[INFO] [stdout] 792 |     use ring::constant_time::verify_slices_are_equal;
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `ring::deprecated_constant_time::verify_slices_are_equal`: To be removed. Internal function not intended for external use with no promises regarding side channels.
[INFO] [stdout]     --> src/jwa.rs:1270:13
[INFO] [stdout]      |
[INFO] [stdout] 1270 |             verify_slices_are_equal(cek.octet_key().unwrap(), key.octet_key().unwrap()).is_ok()
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `ring::deprecated_constant_time::verify_slices_are_equal`: To be removed. Internal function not intended for external use with no promises regarding side channels.
[INFO] [stdout]     --> src/jwa.rs:1293:13
[INFO] [stdout]      |
[INFO] [stdout] 1293 |             verify_slices_are_equal(cek.octet_key().unwrap(), key.octet_key().unwrap()).is_err()
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `ring::deprecated_constant_time::verify_slices_are_equal`: To be removed. Internal function not intended for external use with no promises regarding side channels.
[INFO] [stdout]     --> src/jwa.rs:1299:13
[INFO] [stdout]      |
[INFO] [stdout] 1299 |             verify_slices_are_equal(cek.octet_key().unwrap(), key.octet_key().unwrap()).is_err()
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `ring::deprecated_constant_time::verify_slices_are_equal`: To be removed. Internal function not intended for external use with no promises regarding side channels.
[INFO] [stdout]     --> src/jwa.rs:1322:13
[INFO] [stdout]      |
[INFO] [stdout] 1322 |             verify_slices_are_equal(cek.octet_key().unwrap(), key.octet_key().unwrap()).is_err()
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `ring::deprecated_constant_time::verify_slices_are_equal`: To be removed. Internal function not intended for external use with no promises regarding side channels.
[INFO] [stdout]     --> src/jwa.rs:1328:13
[INFO] [stdout]      |
[INFO] [stdout] 1328 |             verify_slices_are_equal(cek.octet_key().unwrap(), key.octet_key().unwrap()).is_err()
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `ring::deprecated_constant_time::verify_slices_are_equal`: To be removed. Internal function not intended for external use with no promises regarding side channels.
[INFO] [stdout]     --> src/jwa.rs:1357:17
[INFO] [stdout]      |
[INFO] [stdout] 1357 |         assert!(verify_slices_are_equal(
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `ring::deprecated_constant_time::verify_slices_are_equal`: To be removed. Internal function not intended for external use with no promises regarding side channels.
[INFO] [stdout]     --> src/jwa.rs:1389:17
[INFO] [stdout]      |
[INFO] [stdout] 1389 |         assert!(verify_slices_are_equal(
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `ring::deprecated_constant_time::verify_slices_are_equal`: To be removed. Internal function not intended for external use with no promises regarding side channels.
[INFO] [stdout]     --> src/jwa.rs:1437:17
[INFO] [stdout]      |
[INFO] [stdout] 1437 |         assert!(verify_slices_are_equal(payload.as_bytes(), &decrypted_payload).is_ok());
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `ring::deprecated_constant_time::verify_slices_are_equal`: To be removed. Internal function not intended for external use with no promises regarding side channels.
[INFO] [stdout]     --> src/jwa.rs:1465:17
[INFO] [stdout]      |
[INFO] [stdout] 1465 |         assert!(verify_slices_are_equal(payload.as_bytes(), &decrypted_payload).is_ok());
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `chrono::DateTime::<Tz>::from_utc`: Use TimeZone::from_utc_datetime() or DateTime::from_naive_utc_and_offset instead
[INFO] [stdout]    --> src/lib.rs:701:26
[INFO] [stdout]     |
[INFO] [stdout] 701 |         DateTime::<Utc>::from_utc(
[INFO] [stdout]     |                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `chrono::NaiveDateTime::from_timestamp_opt`: use `DateTime::from_timestamp` instead
[INFO] [stdout]    --> src/lib.rs:702:28
[INFO] [stdout]     |
[INFO] [stdout] 702 |             NaiveDateTime::from_timestamp_opt(timestamp, 0).unwrap(),
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `chrono::DateTime::<Tz>::from_utc`: Use TimeZone::from_utc_datetime() or DateTime::from_naive_utc_and_offset instead
[INFO] [stdout]    --> src/lib.rs:724:39
[INFO] [stdout]     |
[INFO] [stdout] 724 |         Ok(Timestamp(DateTime::<Utc>::from_utc(
[INFO] [stdout]     |                                       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `chrono::NaiveDateTime::from_timestamp_opt`: use `DateTime::from_timestamp` instead
[INFO] [stdout]    --> src/lib.rs:725:28
[INFO] [stdout]     |
[INFO] [stdout] 725 |             NaiveDateTime::from_timestamp_opt(timestamp, 0).unwrap(),
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `chrono::TimeDelta::max_value`: Use `TimeDelta::MAX` instead
[INFO] [stdout]    --> src/lib.rs:845:55
[INFO] [stdout]     |
[INFO] [stdout] 845 |             issued_at: Validation::Validate(Duration::max_value()),
[INFO] [stdout]     |                                                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `chrono::TimeDelta::max_value`: Use `TimeDelta::MAX` instead
[INFO] [stdout]     --> src/lib.rs:1433:55
[INFO] [stdout]      |
[INFO] [stdout] 1433 |             issued_at: Validation::Validate(Duration::max_value()),
[INFO] [stdout]      |                                                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `chrono::TimeDelta::max_value`: Use `TimeDelta::MAX` instead
[INFO] [stdout]     --> src/lib.rs:1536:55
[INFO] [stdout]      |
[INFO] [stdout] 1536 |             issued_at: Validation::Validate(Duration::max_value()),
[INFO] [stdout]      |                                                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `chrono::TimeDelta::max_value`: Use `TimeDelta::MAX` instead
[INFO] [stdout]     --> src/lib.rs:1564:55
[INFO] [stdout]      |
[INFO] [stdout] 1564 |             issued_at: Validation::Validate(Duration::max_value()),
[INFO] [stdout]      |                                                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/serde_custom/base64_url_uint.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub fn wrap(data: &BigUint) -> Wrapper {
[INFO] [stdout]    |                   ^^^^^^^^     ------- the same lifetime is hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub fn wrap(data: &BigUint) -> Wrapper<'_> {
[INFO] [stdout]    |                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/serde_custom/byte_sequence.rs:47:19
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub fn wrap(data: &[u8]) -> Wrapper {
[INFO] [stdout]    |                   ^^^^^     ------- the same lifetime is hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub fn wrap(data: &[u8]) -> Wrapper<'_> {
[INFO] [stdout]    |                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 7.88s
[INFO] running `Command { std: "docker" "inspect" "c19aad2c869ad4e5638d58cfdd02f9138550429bfb85d1653dbe9d632df656f9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c19aad2c869ad4e5638d58cfdd02f9138550429bfb85d1653dbe9d632df656f9", kill_on_drop: false }`
[INFO] [stdout] c19aad2c869ad4e5638d58cfdd02f9138550429bfb85d1653dbe9d632df656f9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 776f689cc7eebab1460c3c04eb062605b8b383aadbab387adacc632c0874f467
[INFO] running `Command { std: "docker" "start" "-a" "776f689cc7eebab1460c3c04eb062605b8b383aadbab387adacc632c0874f467", kill_on_drop: false }`
[INFO] [stderr] warning: unnecessary qualification
[INFO] [stderr]    --> src/jwa.rs:309:19
[INFO] [stderr]     |
[INFO] [stderr] 309 |         let rng = rand::SystemRandom::new();
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]    --> src/lib.rs:92:5
[INFO] [stderr]     |
[INFO] [stderr]  92 |     unused_qualifications,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] help: remove the unnecessary path segments
[INFO] [stderr]     |
[INFO] [stderr] 309 -         let rng = rand::SystemRandom::new();
[INFO] [stderr] 309 +         let rng = SystemRandom::new();
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary qualification
[INFO] [stderr]    --> src/jwa.rs:338:23
[INFO] [stderr]     |
[INFO] [stderr] 338 |             let rng = rand::SystemRandom::new();
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] help: remove the unnecessary path segments
[INFO] [stderr]     |
[INFO] [stderr] 338 -             let rng = rand::SystemRandom::new();
[INFO] [stderr] 338 +             let rng = SystemRandom::new();
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `ring::deprecated_constant_time::verify_slices_are_equal`: To be removed. Internal function not intended for external use with no promises regarding side channels.
[INFO] [stderr]   --> src/jwa.rs:10:26
[INFO] [stderr]    |
[INFO] [stderr] 10 | use ring::constant_time::verify_slices_are_equal;
[INFO] [stderr]    |                          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `ring::deprecated_constant_time::verify_slices_are_equal`: To be removed. Internal function not intended for external use with no promises regarding side channels.
[INFO] [stderr]    --> src/jwa.rs:364:9
[INFO] [stderr]     |
[INFO] [stderr] 364 |         verify_slices_are_equal(expected_signature, actual_signature.as_ref())?;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `chrono::DateTime::<Tz>::from_utc`: Use TimeZone::from_utc_datetime() or DateTime::from_naive_utc_and_offset instead
[INFO] [stderr]    --> src/lib.rs:701:26
[INFO] [stderr]     |
[INFO] [stderr] 701 |         DateTime::<Utc>::from_utc(
[INFO] [stderr]     |                          ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `chrono::NaiveDateTime::from_timestamp_opt`: use `DateTime::from_timestamp` instead
[INFO] [stderr]    --> src/lib.rs:702:28
[INFO] [stderr]     |
[INFO] [stderr] 702 |             NaiveDateTime::from_timestamp_opt(timestamp, 0).unwrap(),
[INFO] [stderr]     |                            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `chrono::DateTime::<Tz>::from_utc`: Use TimeZone::from_utc_datetime() or DateTime::from_naive_utc_and_offset instead
[INFO] [stderr]    --> src/lib.rs:724:39
[INFO] [stderr]     |
[INFO] [stderr] 724 |         Ok(Timestamp(DateTime::<Utc>::from_utc(
[INFO] [stderr]     |                                       ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `chrono::NaiveDateTime::from_timestamp_opt`: use `DateTime::from_timestamp` instead
[INFO] [stderr]    --> src/lib.rs:725:28
[INFO] [stderr]     |
[INFO] [stderr] 725 |             NaiveDateTime::from_timestamp_opt(timestamp, 0).unwrap(),
[INFO] [stderr]     |                            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `chrono::TimeDelta::max_value`: Use `TimeDelta::MAX` instead
[INFO] [stderr]    --> src/lib.rs:845:55
[INFO] [stderr]     |
[INFO] [stderr] 845 |             issued_at: Validation::Validate(Duration::max_value()),
[INFO] [stderr]     |                                                       ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/serde_custom/base64_url_uint.rs:51:19
[INFO] [stderr]    |
[INFO] [stderr] 51 | pub fn wrap(data: &BigUint) -> Wrapper {
[INFO] [stderr]    |                   ^^^^^^^^     ------- the same lifetime is hidden here
[INFO] [stderr]    |                   |
[INFO] [stderr]    |                   the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 51 | pub fn wrap(data: &BigUint) -> Wrapper<'_> {
[INFO] [stderr]    |                                       ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/serde_custom/byte_sequence.rs:47:19
[INFO] [stderr]    |
[INFO] [stderr] 47 | pub fn wrap(data: &[u8]) -> Wrapper {
[INFO] [stderr]    |                   ^^^^^     ------- the same lifetime is hidden here
[INFO] [stderr]    |                   |
[INFO] [stderr]    |                   the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 47 | pub fn wrap(data: &[u8]) -> Wrapper<'_> {
[INFO] [stderr]    |                                    ++++
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary qualification
[INFO] [stderr]     --> src/jwa.rs:1267:40
[INFO] [stderr]      |
[INFO] [stderr] 1267 |         let cek = not_err!(cek_alg.cek(jwa::ContentEncryptionAlgorithm::A256GCM, &key));
[INFO] [stderr]      |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr] help: remove the unnecessary path segments
[INFO] [stderr]      |
[INFO] [stderr] 1267 -         let cek = not_err!(cek_alg.cek(jwa::ContentEncryptionAlgorithm::A256GCM, &key));
[INFO] [stderr] 1267 +         let cek = not_err!(cek_alg.cek(ContentEncryptionAlgorithm::A256GCM, &key));
[INFO] [stderr]      |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary qualification
[INFO] [stderr]     --> src/jwa.rs:1290:40
[INFO] [stderr]      |
[INFO] [stderr] 1290 |         let cek = not_err!(cek_alg.cek(jwa::ContentEncryptionAlgorithm::A128GCM, &key));
[INFO] [stderr]      |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr] help: remove the unnecessary path segments
[INFO] [stderr]      |
[INFO] [stderr] 1290 -         let cek = not_err!(cek_alg.cek(jwa::ContentEncryptionAlgorithm::A128GCM, &key));
[INFO] [stderr] 1290 +         let cek = not_err!(cek_alg.cek(ContentEncryptionAlgorithm::A128GCM, &key));
[INFO] [stderr]      |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary qualification
[INFO] [stderr]     --> src/jwa.rs:1296:40
[INFO] [stderr]      |
[INFO] [stderr] 1296 |         let cek = not_err!(cek_alg.cek(jwa::ContentEncryptionAlgorithm::A256GCM, &key));
[INFO] [stderr]      |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr] help: remove the unnecessary path segments
[INFO] [stderr]      |
[INFO] [stderr] 1296 -         let cek = not_err!(cek_alg.cek(jwa::ContentEncryptionAlgorithm::A256GCM, &key));
[INFO] [stderr] 1296 +         let cek = not_err!(cek_alg.cek(ContentEncryptionAlgorithm::A256GCM, &key));
[INFO] [stderr]      |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary qualification
[INFO] [stderr]     --> src/jwa.rs:1319:40
[INFO] [stderr]      |
[INFO] [stderr] 1319 |         let cek = not_err!(cek_alg.cek(jwa::ContentEncryptionAlgorithm::A128GCM, &key));
[INFO] [stderr]      |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr] help: remove the unnecessary path segments
[INFO] [stderr]      |
[INFO] [stderr] 1319 -         let cek = not_err!(cek_alg.cek(jwa::ContentEncryptionAlgorithm::A128GCM, &key));
[INFO] [stderr] 1319 +         let cek = not_err!(cek_alg.cek(ContentEncryptionAlgorithm::A128GCM, &key));
[INFO] [stderr]      |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary qualification
[INFO] [stderr]     --> src/jwa.rs:1325:40
[INFO] [stderr]      |
[INFO] [stderr] 1325 |         let cek = not_err!(cek_alg.cek(jwa::ContentEncryptionAlgorithm::A256GCM, &key));
[INFO] [stderr]      |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr] help: remove the unnecessary path segments
[INFO] [stderr]      |
[INFO] [stderr] 1325 -         let cek = not_err!(cek_alg.cek(jwa::ContentEncryptionAlgorithm::A256GCM, &key));
[INFO] [stderr] 1325 +         let cek = not_err!(cek_alg.cek(ContentEncryptionAlgorithm::A256GCM, &key));
[INFO] [stderr]      |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary qualification
[INFO] [stderr]     --> src/jwa.rs:1351:23
[INFO] [stderr]      |
[INFO] [stderr] 1351 |         let enc_alg = jwa::ContentEncryptionAlgorithm::A128GCM; // determines the CEK
[INFO] [stderr]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr] help: remove the unnecessary path segments
[INFO] [stderr]      |
[INFO] [stderr] 1351 -         let enc_alg = jwa::ContentEncryptionAlgorithm::A128GCM; // determines the CEK
[INFO] [stderr] 1351 +         let enc_alg = ContentEncryptionAlgorithm::A128GCM; // determines the CEK
[INFO] [stderr]      |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary qualification
[INFO] [stderr]     --> src/jwa.rs:1383:23
[INFO] [stderr]      |
[INFO] [stderr] 1383 |         let enc_alg = jwa::ContentEncryptionAlgorithm::A128GCM; // determines the CEK
[INFO] [stderr]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr] help: remove the unnecessary path segments
[INFO] [stderr]      |
[INFO] [stderr] 1383 -         let enc_alg = jwa::ContentEncryptionAlgorithm::A128GCM; // determines the CEK
[INFO] [stderr] 1383 +         let enc_alg = ContentEncryptionAlgorithm::A128GCM; // determines the CEK
[INFO] [stderr]      |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary qualification
[INFO] [stderr]     --> src/jwa.rs:1399:23
[INFO] [stderr]      |
[INFO] [stderr] 1399 |         let enc_alg = jwa::ContentEncryptionAlgorithm::A128GCM;
[INFO] [stderr]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr] help: remove the unnecessary path segments
[INFO] [stderr]      |
[INFO] [stderr] 1399 -         let enc_alg = jwa::ContentEncryptionAlgorithm::A128GCM;
[INFO] [stderr] 1399 +         let enc_alg = ContentEncryptionAlgorithm::A128GCM;
[INFO] [stderr]      |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary qualification
[INFO] [stderr]     --> src/jwa.rs:1407:23
[INFO] [stderr]      |
[INFO] [stderr] 1407 |         let enc_alg = jwa::ContentEncryptionAlgorithm::A256GCM;
[INFO] [stderr]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr] help: remove the unnecessary path segments
[INFO] [stderr]      |
[INFO] [stderr] 1407 -         let enc_alg = jwa::ContentEncryptionAlgorithm::A256GCM;
[INFO] [stderr] 1407 +         let enc_alg = ContentEncryptionAlgorithm::A256GCM;
[INFO] [stderr]      |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary qualification
[INFO] [stderr]     --> src/jwa.rs:1432:23
[INFO] [stderr]      |
[INFO] [stderr] 1432 |         let enc_alg = jwa::ContentEncryptionAlgorithm::A128GCM;
[INFO] [stderr]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr] help: remove the unnecessary path segments
[INFO] [stderr]      |
[INFO] [stderr] 1432 -         let enc_alg = jwa::ContentEncryptionAlgorithm::A128GCM;
[INFO] [stderr] 1432 +         let enc_alg = ContentEncryptionAlgorithm::A128GCM;
[INFO] [stderr]      |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary qualification
[INFO] [stderr]     --> src/jwa.rs:1460:23
[INFO] [stderr]      |
[INFO] [stderr] 1460 |         let enc_alg = jwa::ContentEncryptionAlgorithm::A256GCM;
[INFO] [stderr]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr] help: remove the unnecessary path segments
[INFO] [stderr]      |
[INFO] [stderr] 1460 -         let enc_alg = jwa::ContentEncryptionAlgorithm::A256GCM;
[INFO] [stderr] 1460 +         let enc_alg = ContentEncryptionAlgorithm::A256GCM;
[INFO] [stderr]      |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary qualification
[INFO] [stderr]    --> src/jwe.rs:731:13
[INFO] [stderr]     |
[INFO] [stderr] 731 |             jwa::KeyManagementAlgorithm::DirectSymmetricKey,
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] help: remove the unnecessary path segments
[INFO] [stderr]     |
[INFO] [stderr] 731 -             jwa::KeyManagementAlgorithm::DirectSymmetricKey,
[INFO] [stderr] 731 +             KeyManagementAlgorithm::DirectSymmetricKey,
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary qualification
[INFO] [stderr]    --> src/jwe.rs:732:13
[INFO] [stderr]     |
[INFO] [stderr] 732 |             jwa::ContentEncryptionAlgorithm::A256GCM,
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] help: remove the unnecessary path segments
[INFO] [stderr]     |
[INFO] [stderr] 732 -             jwa::ContentEncryptionAlgorithm::A256GCM,
[INFO] [stderr] 732 +             ContentEncryptionAlgorithm::A256GCM,
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `ring::deprecated_constant_time::verify_slices_are_equal`: To be removed. Internal function not intended for external use with no promises regarding side channels.
[INFO] [stderr]    --> src/jwa.rs:792:30
[INFO] [stderr]     |
[INFO] [stderr] 792 |     use ring::constant_time::verify_slices_are_equal;
[INFO] [stderr]     |                              ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `ring::deprecated_constant_time::verify_slices_are_equal`: To be removed. Internal function not intended for external use with no promises regarding side channels.
[INFO] [stderr]     --> src/jwa.rs:1270:13
[INFO] [stderr]      |
[INFO] [stderr] 1270 |             verify_slices_are_equal(cek.octet_key().unwrap(), key.octet_key().unwrap()).is_ok()
[INFO] [stderr]      |             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `ring::deprecated_constant_time::verify_slices_are_equal`: To be removed. Internal function not intended for external use with no promises regarding side channels.
[INFO] [stderr]     --> src/jwa.rs:1293:13
[INFO] [stderr]      |
[INFO] [stderr] 1293 |             verify_slices_are_equal(cek.octet_key().unwrap(), key.octet_key().unwrap()).is_err()
[INFO] [stderr]      |             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `ring::deprecated_constant_time::verify_slices_are_equal`: To be removed. Internal function not intended for external use with no promises regarding side channels.
[INFO] [stderr]     --> src/jwa.rs:1299:13
[INFO] [stderr]      |
[INFO] [stderr] 1299 |             verify_slices_are_equal(cek.octet_key().unwrap(), key.octet_key().unwrap()).is_err()
[INFO] [stderr]      |             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `ring::deprecated_constant_time::verify_slices_are_equal`: To be removed. Internal function not intended for external use with no promises regarding side channels.
[INFO] [stderr]     --> src/jwa.rs:1322:13
[INFO] [stderr]      |
[INFO] [stderr] 1322 |             verify_slices_are_equal(cek.octet_key().unwrap(), key.octet_key().unwrap()).is_err()
[INFO] [stderr]      |             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `ring::deprecated_constant_time::verify_slices_are_equal`: To be removed. Internal function not intended for external use with no promises regarding side channels.
[INFO] [stderr]     --> src/jwa.rs:1328:13
[INFO] [stderr]      |
[INFO] [stderr] 1328 |             verify_slices_are_equal(cek.octet_key().unwrap(), key.octet_key().unwrap()).is_err()
[INFO] [stderr]      |             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `ring::deprecated_constant_time::verify_slices_are_equal`: To be removed. Internal function not intended for external use with no promises regarding side channels.
[INFO] [stderr]     --> src/jwa.rs:1357:17
[INFO] [stderr]      |
[INFO] [stderr] 1357 |         assert!(verify_slices_are_equal(
[INFO] [stderr]      |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `ring::deprecated_constant_time::verify_slices_are_equal`: To be removed. Internal function not intended for external use with no promises regarding side channels.
[INFO] [stderr]     --> src/jwa.rs:1389:17
[INFO] [stderr]      |
[INFO] [stderr] 1389 |         assert!(verify_slices_are_equal(
[INFO] [stderr]      |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `ring::deprecated_constant_time::verify_slices_are_equal`: To be removed. Internal function not intended for external use with no promises regarding side channels.
[INFO] [stderr]     --> src/jwa.rs:1437:17
[INFO] [stderr]      |
[INFO] [stderr] 1437 |         assert!(verify_slices_are_equal(payload.as_bytes(), &decrypted_payload).is_ok());
[INFO] [stderr]      |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `ring::deprecated_constant_time::verify_slices_are_equal`: To be removed. Internal function not intended for external use with no promises regarding side channels.
[INFO] [stderr]     --> src/jwa.rs:1465:17
[INFO] [stderr]      |
[INFO] [stderr] 1465 |         assert!(verify_slices_are_equal(payload.as_bytes(), &decrypted_payload).is_ok());
[INFO] [stderr]      |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `chrono::TimeDelta::max_value`: Use `TimeDelta::MAX` instead
[INFO] [stderr]     --> src/lib.rs:1433:55
[INFO] [stderr]      |
[INFO] [stderr] 1433 |             issued_at: Validation::Validate(Duration::max_value()),
[INFO] [stderr]      |                                                       ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `chrono::TimeDelta::max_value`: Use `TimeDelta::MAX` instead
[INFO] [stderr]     --> src/lib.rs:1536:55
[INFO] [stderr]      |
[INFO] [stderr] 1536 |             issued_at: Validation::Validate(Duration::max_value()),
[INFO] [stderr]      |                                                       ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `chrono::TimeDelta::max_value`: Use `TimeDelta::MAX` instead
[INFO] [stderr]     --> src/lib.rs:1564:55
[INFO] [stderr]      |
[INFO] [stderr] 1564 |             issued_at: Validation::Validate(Duration::max_value()),
[INFO] [stderr]      |                                                       ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `biscuit` (lib) generated 11 warnings (run `cargo fix --lib -p biscuit` to apply 2 suggestions)
[INFO] [stderr] warning: `biscuit` (lib test) generated 37 warnings (11 duplicates) (run `cargo fix --lib -p biscuit --tests` to apply 13 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.11s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/biscuit-188d27c23319e8d0)
[INFO] [stdout] 
[INFO] [stdout] running 147 tests
[INFO] [stdout] test jwa::tests::aes128gcm_key_length ... ok
[INFO] [stdout] test jwa::tests::aes256gcm_key_length ... ok
[INFO] [stdout] test jwa::tests::aes128gcm_encryption_round_trip ... ok
[INFO] [stdout] test jwa::tests::aes1256gcm_encryption_round_trip ... ok
[INFO] [stdout] test jwa::tests::aes256gcmkw_key_encryption_round_trip ... ok
[INFO] [stdout] test jwa::tests::aes_gcm_256_encryption_round_trip_fixed_key_nonce ... ok
[INFO] [stdout] test jwa::tests::aes_gcm_128_encryption_round_trip ... ok
[INFO] [stdout] test jwa::tests::cek_aes128gcmkw_returns_right_key_length ... ok
[INFO] [stdout] test jwa::tests::dir_cek_returns_provided_key ... ok
[INFO] [stdout] test jwa::tests::cek_aes256gcmkw_returns_right_key_length ... ok
[INFO] [stdout] test jwa::tests::aes_gcm_128_encryption_round_trip_fixed_key_nonce ... ok
[INFO] [stdout] test jwa::tests::aes_gcm_256_encryption_round_trip ... ok
[INFO] [stdout] test jwa::tests::rng_is_created ... ok
[INFO] [stdout] test jwa::tests::sign_and_verify_es256_round_trip ... ok
[INFO] [stdout] test jwa::tests::sign_and_verify_es256_round_trip_with_keypair ... ok
[INFO] [stdout] test jwa::tests::sign_and_verify_none ... ok
[INFO] [stdout] test jwa::tests::sign_and_verify_hs256 ... ok
[INFO] [stdout] test jwa::tests::sign_and_verify_ps256_round_trip ... ok
[INFO] [stdout] test jwa::tests::aes128gcmkw_key_encryption_round_trip ... ok
[INFO] [stdout] test jwa::tests::sign_and_verify_rs256_key_params ... ok
[INFO] [stdout] test jwa::tests::sign_and_verify_rs256 ... ok
[INFO] [stdout] test jwa::tests::invalid_none - should panic ... ok
[INFO] [stdout] test jwa::tests::invalid_hs256 - should panic ... ok
[INFO] [stdout] test jwa::tests::invalid_es256 - should panic ... ok
[INFO] [stdout] test jwa::tests::invalid_ps256 - should panic ... ok
[INFO] [stdout] test jwa::tests::invalid_rs256 - should panic ... ok
[INFO] [stdout] test jwe::tests::compression_algorithm_json_serde ... ok
[INFO] [stdout] test jwa::tests::sign_and_verify_ps256_round_trip_with_keypair ... ok
[INFO] [stdout] test jwe::tests::compression_algorithm_serde_token ... ok
[INFO] [stdout] test jwa::tests::verify_ps256 ... ok
[INFO] [stdout] test jwa::tests::verify_es512 - should panic ... ok
[INFO] [stdout] test jwa::tests::verify_es256 ... ok
[INFO] [stdout] test jwe::tests::custom_jwe_header_round_trip ... ok
[INFO] [stdout] test jwe::tests::invalid_modified_encrypted_nonce_for_aes256gcm - should panic ... ok
[INFO] [stdout] test jwe::tests::decrypt_with_mismatch_enc_algorithm - should panic ... ok
[INFO] [stdout] test jwe::tests::invalid_modified_encrypted_cek_for_aes256gcm - should panic ... ok
[INFO] [stdout] test jwa::tests::verify_es384 ... ok
[INFO] [stdout] test jwe::tests::decrypt_with_mismatch_cek_algorithm - should panic ... ok
[INFO] [stdout] test jwe::tests::invalid_tag_for_aes256gcm - should panic ... ok
[INFO] [stdout] test jwe::tests::jwe_a256gcmkw_a256gcm_string_round_trip ... ok
[INFO] [stdout] test jwe::tests::jwe_header_round_trips ... ok
[INFO] [stdout] test jwe::tests::jwe_interoperability_check ... ok
[INFO] [stdout] test jwk::tests::jwk_ec_thumbprint ... ok
[INFO] [stdout] test jwk::tests::jwk_oct_thumbprint ... ok
[INFO] [stdout] test jwk::tests::jwk_okp_private_key_json_serde ... ok
[INFO] [stdout] test jwe::tests::invalid_modified_header_for_aes256gcm - should panic ... ok
[INFO] [stdout] test jwe::tests::jwe_dir_aes256gcm_jws_round_trip ... ok
[INFO] [stdout] test jwe::tests::invalid_nonce_for_aes256gcmkw - should panic ... ok
[INFO] [stdout] test jwk::tests::jwk_okp_public_key_json_serde ... ok
[INFO] [stdout] test jwk::tests::jwk_rsa_thumbprint ... ok
[INFO] [stdout] test jwk::tests::jwk_okp_thumbprint ... ok
[INFO] [stdout] test jwe::tests::invalid_modified_encrypted_payload_for_aes256gcm - should panic ... ok
[INFO] [stdout] test jwe::tests::jwe_a256gcmkw_a256gcm_jws_round_trip ... ok
[INFO] [stdout] test jwk::tests::jwk_set_find_none_test ... ok
[INFO] [stdout] test jwe::tests::invalid_tag_for_aes256gcmkw - should panic ... ok
[INFO] [stdout] test jwk::tests::jwk_set_find_some_test ... ok
[INFO] [stdout] test jwk::tests::key_operations_json_serde ... ok
[INFO] [stdout] test jwe::tests::decrypt_with_incorrect_length - should panic ... ok
[INFO] [stdout] test jwk::tests::jwk_set_public_key_serde_test ... ok
[INFO] [stdout] test jwk::tests::key_operations_serde_token ... ok
[INFO] [stdout] test jwk::tests::public_key_use_json_serde ... ok
[INFO] [stdout] test jws::compact::tests::compact_jws_decode_token_invalid_signature_hs256 - should panic ... ok
[INFO] [stdout] test jwk::tests::jwk_set_private_key_serde_test ... ok
[INFO] [stdout] test jws::compact::tests::compact_jws_decode_token_invalid_signature_rs256 - should panic ... ok
[INFO] [stdout] test jws::compact::tests::compact_jws_decode_token_missing_parts - should panic ... ok
[INFO] [stdout] test jws::compact::tests::compact_jws_decode_with_jwks_algorithm_not_supported - should panic ... ok
[INFO] [stdout] test jws::compact::tests::compact_jws_decode_with_jwks_key_not_found - should panic ... ok
[INFO] [stdout] test jws::compact::tests::compact_jws_decode_with_jwks_kid_missing - should panic ... ok
[INFO] [stdout] test jws::compact::tests::compact_jws_decode_with_jwks_missing_alg - should panic ... ok
[INFO] [stdout] test jws::compact::tests::compact_jws_decode_with_jwks_missing_parts - should panic ... ok
[INFO] [stdout] test jws::compact::tests::compact_jws_decode_with_jwks_shared_secret ... ok
[INFO] [stdout] test jws::compact::tests::compact_jws_decode_with_jwks_shared_secret_mismatched_alg - should panic ... ok
[INFO] [stdout] test jws::compact::tests::compact_jws_decode_with_jwks_without_alg ... ok
[INFO] [stdout] test jwk::tests::public_key_use_serde_token ... ok
[INFO] [stdout] test jws::compact::tests::compact_jws_decode_token_wrong_algorithm - should panic ... ok
[INFO] [stdout] test jws::compact::tests::compact_jws_decode_with_jwks_wrong_algorithm - should panic ... ok
[INFO] [stdout] test jws::compact::tests::compact_jws_decode_with_jwks_rsa ... ok
[INFO] [stdout] test jws::compact::tests::compact_jws_decode_with_p256_invalid_signature - should panic ... ok
[INFO] [stdout] test jws::compact::tests::compact_jws_decode_with_jwks_shared_secret_matching_alg ... ok
[INFO] [stdout] test jws::compact::tests::compact_jws_encode_with_additional_header_fields ... ok
[INFO] [stdout] test jwk::tests::jwk_rsa_thumbprint_normalization_gotcha ... ok
[INFO] [stdout] test jwk::tests::jwk_serde_smoke_test ... ok
[INFO] [stdout] test jwk::tests::jwk_set_symmetric_key ... ok
[INFO] [stdout] test jws::compact::tests::compact_jws_verify_es256_jwks ... ok
[INFO] [stdout] test jws::compact::tests::compact_jws_round_trip_rs256 ... ok
[INFO] [stdout] test jws::compact::tests::compact_jws_verify_es256 ... ok
[INFO] [stdout] test jws::compact::tests::compact_jws_decode_with_jwks_without_alg_non_matching - should panic ... ok
[INFO] [stdout] test jws::compact::tests::compact_jws_round_trip_hs256 ... ok
[INFO] [stdout] test jws::compact::tests::compact_jws_round_trip_hs256_for_bytes_payload ... ok
[INFO] [stdout] test jws::compact::tests::compact_jws_round_trip_none ... ok
[INFO] [stdout] test jws::compact::tests::decoded_compact_jws_cannot_be_serialized - should panic ... ok
[INFO] [stdout] test jws::compact::tests::decoded_compact_jws_cannot_be_deserialized - should panic ... ok
[INFO] [stdout] test jws::compact::tests::unverified_header_is_returned_correctly ... ok
[INFO] [stdout] test jws::compact::tests::signature_is_returned_correctly ... ok
[INFO] [stdout] test jws::flattened::tests::flattened_jws_decode_token_invalid_signature_hs256 - should panic ... ok
[INFO] [stdout] test jws::compact::tests::unverified_payload_is_returned_correctly ... ok
[INFO] [stdout] test jws::flattened::tests::flattened_jws_encode_with_additional_header_fields ... ok
[INFO] [stdout] test jws::flattened::tests::flattened_jws_decode_token_wrong_algorithm - should panic ... ok
[INFO] [stdout] test jws::flattened::tests::flattened_jws_round_trip_none ... ok
[INFO] [stdout] test jws::flattened::tests::flattened_jws_decode_token_invalid_signature_rs256 - should panic ... ok
[INFO] [stdout] test jws::flattened::tests::flattened_jws_verify_es256 ... ok
[INFO] [stdout] test jws::flattened::tests::flattened_jws_round_trip_hs256 ... ok
[INFO] [stdout] test serde_custom::base64_url_uint::tests::serialization_round_trip ... ok
[INFO] [stdout] test serde_custom::byte_sequence::tests::serialization_round_trip ... ok
[INFO] [stdout] test jws::tests::header_serialization_round_trip_with_optional ... ok
[INFO] [stdout] test jws::flattened::tests::flattened_jws_verify_reject_multiple_signatures - should panic ... ok
[INFO] [stdout] test jws::tests::header_serialization_round_trip_no_optional ... ok
[INFO] [stdout] test serde_custom::option_base64_url_uint::tests::none_json_serialization_round_trip ... ok
[INFO] [stdout] test serde_custom::option_base64_url_uint::tests::none_serialization_round_trip ... ok
[INFO] [stdout] test serde_custom::option_base64_url_uint::tests::some_json_serialization_round_trip ... ok
[INFO] [stdout] test serde_custom::option_base64_url_uint::tests::some_serialization_round_trip ... ok
[INFO] [stdout] test serde_custom::option_byte_sequence::tests::none_json_serialization_round_trip ... ok
[INFO] [stdout] test serde_custom::option_byte_sequence::tests::none_serialization_round_trip ... ok
[INFO] [stdout] test serde_custom::option_byte_sequence::tests::some_json_serialization_round_trip ... ok
[INFO] [stdout] test tests::claims_set_serialization_round_trip ... ok
[INFO] [stdout] test tests::compact_part_round_trip ... ok
[INFO] [stdout] test tests::empty_registered_claims_serialization_round_trip ... ok
[INFO] [stdout] test tests::compact_part_base64_url_round_trip ... ok
[INFO] [stdout] test tests::compact_part_vec_u8_round_trip ... ok
[INFO] [stdout] test tests::multiple_string_or_uri_serialization_round_trip ... ok
[INFO] [stdout] test tests::single_string_or_uri_string_serialization_round_trip ... ok
[INFO] [stdout] test tests::single_string_or_uri_uri_serialization_round_trip ... ok
[INFO] [stdout] test tests::registered_claims_serialization_round_trip ... ok
[INFO] [stdout] test tests::multiple_strings_serialization_round_trip ... ok
[INFO] [stdout] test jws::flattened::tests::flattened_jws_round_trip_rs256 ... ok
[INFO] [stdout] test tests::timestamp_serialization_roundtrip ... ok
[INFO] [stdout] test tests::validate_audience_when_multiple ... ok
[INFO] [stdout] test tests::single_string_serialization_round_trip ... ok
[INFO] [stdout] test tests::validate_audience_when_single ... ok
[INFO] [stdout] test jws::flattened::tests::flattened_jws_verify_reject_unprotected_headers - should panic ... ok
[INFO] [stdout] test tests::duplicate_claims_round_trip ... ok
[INFO] [stdout] test tests::validate_issuer_catch_mismatch ... ok
[INFO] [stdout] test tests::validate_times_catch_early_token ... ok
[INFO] [stdout] test tests::validate_times_catch_too_old_token ... ok
[INFO] [stdout] test tests::validate_times_catch_expired_token ... ok
[INFO] [stdout] test tests::validate_times_catch_future_token ... ok
[INFO] [stdout] test tests::validate_times_missing_exp - should panic ... ok
[INFO] [stdout] test tests::validate_times_missing_aud - should panic ... ok
[INFO] [stdout] test tests::validate_times_missing_iss - should panic ... ok
[INFO] [stdout] test tests::validate_times_valid_token_with_default_options ... ok
[INFO] [stdout] test tests::validate_times_valid_token_with_epsilon ... ok
[INFO] [stdout] test tests::validate_valid_token_with_all_required ... ok
[INFO] [stdout] test tests::validate_times_missing_nbf - should panic ... ok
[INFO] [stdout] test tests::validate_times_missing_sub - should panic ... ok
[INFO] [stdout] test tests::validate_times_missing_all - should panic ... ok
[INFO] [stdout] test tests::validate_times_missing_iat - should panic ... ok
[INFO] [stdout] test serde_custom::option_byte_sequence::tests::some_serialization_round_trip ... ok
[INFO] [stderr]    Doc-tests biscuit
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 147 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 13 tests
[INFO] [stdout] test src/jws.rs - jws::Secret::PublicKey (line 150) ... ok
[INFO] [stdout] test src/jws/flattened.rs - jws::flattened::Signable (line 47) ... ok
[INFO] [stdout] test src/jws.rs - jws::Secret::Bytes (line 29) ... ok
[INFO] [stdout] test src/jws.rs - jws::Secret::RsaKeyPair (line 56) ... ok
[INFO] [stdout] test src/jws.rs - jws::Secret::EcdsaKeyPair (line 72) ... ok
[INFO] [stdout] test src/jwk.rs - jwk::AlgorithmParameters::thumbprint (line 287) ... ok
[INFO] [stdout] test src/jwe.rs - jwe::Compact (line 246) ... ok
[INFO] [stdout] test src/jws/flattened.rs - jws::flattened::SignedData::sign (line 158) ... ok
[INFO] [stdout] test src/lib.rs - SingleOrMultiple (line 604) ... ok
[INFO] [stdout] test src/lib.rs - Empty (line 329) ... ok
[INFO] [stdout] test src/jws/flattened.rs - jws::flattened::SignedData::verify_flattened (line 215) ... ok
[INFO] [stdout] test src/lib.rs - JWT (line 148) ... ok
[INFO] [stdout] test src/lib.rs - JWE (line 221) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 3.16s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "776f689cc7eebab1460c3c04eb062605b8b383aadbab387adacc632c0874f467", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "776f689cc7eebab1460c3c04eb062605b8b383aadbab387adacc632c0874f467", kill_on_drop: false }`
[INFO] [stdout] 776f689cc7eebab1460c3c04eb062605b8b383aadbab387adacc632c0874f467
