[INFO] fetching crate ankurah-jwt-auth 0.9.0... [INFO] testing ankurah-jwt-auth-0.9.0 against 1.98.0-beta.6+cargoflags=--release for beta-1.98-release-3 [INFO] extracting crate ankurah-jwt-auth 0.9.0 into /workspace/builds/worker-5-tc2/source [INFO] started tweaking crates.io crate ankurah-jwt-auth 0.9.0 [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate ankurah-jwt-auth 0.9.0 [INFO] tweaked toml for crates.io crate ankurah-jwt-auth 0.9.0 written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate ankurah-jwt-auth 0.9.0 on toolchain 1.98.0-beta.6 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate ankurah-jwt-auth 0.9.0 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:00c5645b54fe3ce5dae1417175e3c7fb6a6646c021d554ecd63a097b8b9f3602" "sleep" "infinity", kill_on_drop: false }` [INFO] [stdout] 1c6c9c7833dea08a0bbe5e2df6f80e233d11916654f79048376f4b442dd23d5d [INFO] running `Command { std: "docker" "start" "1c6c9c7833dea08a0bbe5e2df6f80e233d11916654f79048376f4b442dd23d5d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "1c6c9c7833dea08a0bbe5e2df6f80e233d11916654f79048376f4b442dd23d5d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "1c6c9c7833dea08a0bbe5e2df6f80e233d11916654f79048376f4b442dd23d5d" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "1c6c9c7833dea08a0bbe5e2df6f80e233d11916654f79048376f4b442dd23d5d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "1c6c9c7833dea08a0bbe5e2df6f80e233d11916654f79048376f4b442dd23d5d" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.6" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.178 [INFO] [stderr] Compiling proc-macro2 v1.0.103 [INFO] [stderr] Compiling quote v1.0.42 [INFO] [stderr] Compiling unicode-ident v1.0.22 [INFO] [stderr] Compiling typenum v1.19.0 [INFO] [stderr] Compiling version_check v0.9.5 [INFO] [stderr] Compiling zeroize v1.8.2 [INFO] [stderr] Compiling subtle v2.6.1 [INFO] [stderr] Compiling const-oid v0.9.6 [INFO] [stderr] Compiling zerocopy v0.8.31 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling pin-project-lite v0.2.16 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling serde_json v1.0.145 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling cpufeatures v0.2.17 [INFO] [stderr] Compiling base64ct v1.8.3 [INFO] [stderr] Compiling memchr v2.7.6 [INFO] [stderr] Compiling thiserror v2.0.17 [INFO] [stderr] Compiling pem-rfc7468 v0.7.0 [INFO] [stderr] Compiling syn v2.0.111 [INFO] [stderr] Compiling getrandom v0.2.16 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling crypto-common v0.1.7 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling der v0.7.10 [INFO] [stderr] Compiling libm v0.2.15 [INFO] [stderr] Compiling autocfg v1.5.0 [INFO] [stderr] Compiling cfg-if v1.0.4 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling futures-core v0.3.31 [INFO] [stderr] Compiling once_cell v1.21.3 [INFO] [stderr] Compiling ryu v1.0.20 [INFO] [stderr] Compiling itoa v1.0.15 [INFO] [stderr] Compiling futures-sink v0.3.31 [INFO] [stderr] Compiling ucd-trie v0.1.7 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling futures-channel v0.3.31 [INFO] [stderr] Compiling spki v0.7.3 [INFO] [stderr] Compiling hmac v0.12.1 [INFO] [stderr] Compiling sha2 v0.10.9 [INFO] [stderr] Compiling pkcs8 v0.10.2 [INFO] [stderr] Compiling futures-task v0.3.31 [INFO] [stderr] Compiling slab v0.4.11 [INFO] [stderr] Compiling futures-io v0.3.31 [INFO] [stderr] Compiling concurrent-queue v2.5.0 [INFO] [stderr] Compiling ff v0.13.1 [INFO] [stderr] Compiling base16ct v0.2.0 [INFO] [stderr] Compiling parking v2.2.1 [INFO] [stderr] Compiling event-listener v5.4.1 [INFO] [stderr] Compiling sec1 v0.7.3 [INFO] [stderr] Compiling group v0.13.0 [INFO] [stderr] Compiling hkdf v0.12.4 [INFO] [stderr] Compiling rand_core v0.9.3 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling signature v2.2.0 [INFO] [stderr] Compiling crypto-bigint v0.5.5 [INFO] [stderr] Compiling hybrid-array v0.4.7 [INFO] [stderr] Compiling semver v1.0.27 [INFO] [stderr] Compiling rustc_version v0.4.1 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling event-listener-strategy v0.5.4 [INFO] [stderr] Compiling tracing-core v0.1.36 [INFO] [stderr] Compiling inout v0.1.4 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling thiserror-impl v2.0.17 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling elliptic-curve v0.13.8 [INFO] [stderr] Compiling slotmap v1.1.1 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling paste v1.0.15 [INFO] [stderr] Compiling anyhow v1.0.100 [INFO] [stderr] Compiling cipher v0.4.4 [INFO] [stderr] Compiling async-lock v3.4.1 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling inout v0.2.2 [INFO] [stderr] Compiling crypto-common v0.2.0 [INFO] [stderr] Compiling rand v0.9.2 [INFO] [stderr] Compiling reactive_graph v0.2.11 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling rfc6979 v0.4.0 [INFO] [stderr] Compiling universal-hash v0.5.1 [INFO] [stderr] Compiling opaque-debug v0.3.1 [INFO] [stderr] Compiling log v0.4.29 [INFO] [stderr] Compiling num-bigint-dig v0.8.6 [INFO] [stderr] Compiling hashbrown v0.16.1 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling num-iter v0.1.45 [INFO] [stderr] Compiling polyval v0.6.2 [INFO] [stderr] Compiling cipher v0.5.0 [INFO] [stderr] Compiling lazy_static v1.5.0 [INFO] [stderr] Compiling ecdsa v0.16.9 [INFO] [stderr] Compiling indexmap v2.12.1 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling tokio-macros v2.6.0 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling pin-project-internal v1.1.10 [INFO] [stderr] Compiling uuid v1.19.0 [INFO] [stderr] Compiling send_wrapper v0.6.0 [INFO] [stderr] Compiling aho-corasick v1.1.4 [INFO] [stderr] Compiling pest v2.8.4 [INFO] [stderr] Compiling futures-executor v0.3.31 [INFO] [stderr] Compiling ulid v1.2.1 [INFO] [stderr] Compiling futures v0.3.31 [INFO] [stderr] Compiling any_spawner v0.3.0 [INFO] [stderr] Compiling allocator-api2 v0.2.21 [INFO] [stderr] Compiling cpubits v0.1.0 [INFO] [stderr] Compiling regex-syntax v0.8.8 [INFO] [stderr] Compiling rustc-hash v2.1.1 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling base64 v0.22.1 [INFO] [stderr] Compiling or_poisoned v0.1.0 [INFO] [stderr] Compiling foldhash v0.1.5 [INFO] [stderr] Compiling guardian v1.3.0 [INFO] [stderr] Compiling hashbrown v0.15.5 [INFO] [stderr] Compiling pest_meta v2.8.4 [INFO] [stderr] Compiling dashmap v6.1.0 [INFO] [stderr] Compiling pin-project v1.1.10 [INFO] [stderr] Compiling aes v0.9.0-rc.4 [INFO] [stderr] Compiling tokio v1.48.0 [INFO] [stderr] Compiling bytes v1.11.0 [INFO] [stderr] Compiling chrono v0.4.42 [INFO] [stderr] Compiling bincode v1.3.3 [INFO] [stderr] Compiling pest_generator v2.8.4 [INFO] [stderr] Compiling regex-automata v0.4.13 [INFO] [stderr] Compiling gensym v0.1.1 [INFO] [stderr] Compiling ghash v0.5.1 [INFO] [stderr] Compiling aes v0.8.4 [INFO] [stderr] Compiling pest_derive v2.8.4 [INFO] [stderr] Compiling ctr v0.9.2 [INFO] [stderr] Compiling primeorder v0.13.6 [INFO] [stderr] Compiling ankql v0.9.0 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling pkcs1 v0.7.5 [INFO] [stderr] Compiling smallstr v0.3.1 [INFO] [stderr] Compiling bitflags v2.10.0 [INFO] [stderr] Compiling aead v0.5.2 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling fastrand v2.3.0 [INFO] [stderr] Compiling discard v1.0.4 [INFO] [stderr] Compiling arc-swap v1.7.1 [INFO] [stderr] Compiling futures-signals v0.3.34 [INFO] [stderr] Compiling yrs v0.24.0 [INFO] [stderr] Compiling itertools v0.14.0 [INFO] [stderr] Compiling regex v1.12.2 [INFO] [stderr] Compiling aes-keywrap v0.9.0 [INFO] [stderr] Compiling aes-gcm v0.10.3 [INFO] [stderr] Compiling ron v0.11.0 [INFO] [stderr] Compiling rsa v0.9.10 [INFO] [stderr] Compiling ankurah-proto v0.9.0 [INFO] [stderr] Compiling ankurah-signals v0.9.0 [INFO] [stderr] Compiling lru v0.12.5 [INFO] [stderr] Compiling serde_derive_internals v0.29.1 [INFO] [stderr] Compiling hmac-sha512 v1.1.12 [INFO] [stderr] Compiling hmac-sha256 v1.1.14 [INFO] [stderr] Compiling arrayref v0.3.9 [INFO] [stderr] Compiling arrayvec v0.7.6 [INFO] [stderr] Compiling ct-codecs v1.1.6 [INFO] [stderr] Compiling constant_time_eq v0.4.2 [INFO] [stderr] Compiling append-only-vec v0.1.8 [INFO] [stderr] Compiling futures-timer v3.0.3 [INFO] [stderr] Compiling blake2b_simd v1.0.4 [INFO] [stderr] Compiling ed25519-compact v2.2.0 [INFO] [stderr] Compiling superboring v0.1.7 [INFO] [stderr] Compiling ankurah-derive v0.9.0 [INFO] [stderr] Compiling ankurah-core v0.9.0 [INFO] [stderr] Compiling p384 v0.13.1 [INFO] [stderr] Compiling p256 v0.13.2 [INFO] [stderr] Compiling k256 v0.13.4 [INFO] [stderr] Compiling coarsetime v0.1.37 [INFO] [stderr] Compiling binstring v0.1.7 [INFO] [stderr] Compiling hmac-sha1-compact v1.1.7 [INFO] [stderr] Compiling jwt-simple v0.12.13 [INFO] [stderr] Compiling ankurah v0.9.0 [INFO] [stderr] Compiling ankurah-jwt-auth v0.9.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `release` profile [optimized] target(s) in 30.84s [INFO] running `Command { std: "docker" "inspect" "1c6c9c7833dea08a0bbe5e2df6f80e233d11916654f79048376f4b442dd23d5d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "1c6c9c7833dea08a0bbe5e2df6f80e233d11916654f79048376f4b442dd23d5d" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.6" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }` [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling mio v1.1.1 [INFO] [stderr] Compiling signal-hook-registry v1.4.7 [INFO] [stderr] Compiling socket2 v0.6.1 [INFO] [stderr] Compiling iana-time-zone v0.1.64 [INFO] [stderr] Compiling parking_lot_core v0.8.6 [INFO] [stderr] Compiling find-msvc-tools v0.1.5 [INFO] [stderr] Compiling shlex v1.3.0 [INFO] [stderr] Compiling chrono v0.4.42 [INFO] [stderr] Compiling cc v1.2.49 [INFO] [stderr] Compiling instant v0.1.13 [INFO] [stderr] Compiling crc32fast v1.5.0 [INFO] [stderr] Compiling tokio v1.48.0 [INFO] [stderr] Compiling option-ext v0.2.0 [INFO] [stderr] Compiling dirs-sys v0.5.0 [INFO] [stderr] Compiling parking_lot v0.11.2 [INFO] [stderr] Compiling fxhash v0.2.1 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling fs2 v0.4.3 [INFO] [stderr] Compiling constant_time_eq v0.3.1 [INFO] [stderr] Compiling dirs v6.0.0 [INFO] [stderr] Compiling sled v0.34.7 [INFO] [stderr] Compiling blake3 v1.8.2 [INFO] [stderr] Compiling ankurah-proto v0.9.0 [INFO] [stderr] Compiling ankurah-signals v0.9.0 [INFO] [stderr] Compiling ankurah-core v0.9.0 [INFO] [stderr] Compiling ankurah v0.9.0 [INFO] [stderr] Compiling ankurah-storage-common v0.9.0 [INFO] [stderr] Compiling ankurah-connector-local-process v0.9.0 [INFO] [stderr] Compiling ankurah-jwt-auth v0.9.0 (/opt/rustwide/workdir) [INFO] [stderr] Compiling ankurah-storage-sled v0.9.0 [INFO] [stdout] warning: function `test_keys` is never used [INFO] [stdout] --> tests/common.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | pub fn test_keys() -> SigningKeys { SigningKeys::from_pem(include_str!("fixtures/test_key_a.pem")).unwrap() } [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_keys_alt` is never used [INFO] [stdout] --> tests/common.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn test_keys_alt() -> SigningKeys { SigningKeys::from_pem(include_str!("fixtures/test_key_b.pem")).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `blog_config_path` is never used [INFO] [stdout] --> tests/common.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 16 | pub fn blog_config_path() -> String { format!("{}/tests/fixtures/simple_blog.json", env!("CARGO_MANIFEST_DIR")) } [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `make_claims` is never used [INFO] [stdout] --> tests/common.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn make_claims(sub: &str, roles: &[&str], email: &str) -> JwtClaims { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sign_token` is never used [INFO] [stdout] --> tests/common.rs:32:8 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn sign_token(keys: &SigningKeys, claims: &JwtClaims) -> String { keys.sign(claims, Duration::from_hours(1)).unwrap() } [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `make_predicate` is never used [INFO] [stdout] --> tests/common.rs:34:8 [INFO] [stdout] | [INFO] [stdout] 34 | pub fn make_predicate(input: &str) -> Predicate { ankql::parser::parse_selection(input).unwrap().predicate } [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_keys_alt` is never used [INFO] [stdout] --> tests/common.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn test_keys_alt() -> SigningKeys { SigningKeys::from_pem(include_str!("fixtures/test_key_b.pem")).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_blog_config` is never used [INFO] [stdout] --> tests/common.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn load_blog_config() -> PolicyConfig { serde_json::from_str(include_str!("fixtures/simple_blog.json")).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_minimal_config` is never used [INFO] [stdout] --> tests/common.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn load_minimal_config() -> PolicyConfig { serde_json::from_str(include_str!("fixtures/simple_minimal.json")).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `make_claims` is never used [INFO] [stdout] --> tests/common.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn make_claims(sub: &str, roles: &[&str], email: &str) -> JwtClaims { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sign_token` is never used [INFO] [stdout] --> tests/common.rs:32:8 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn sign_token(keys: &SigningKeys, claims: &JwtClaims) -> String { keys.sign(claims, Duration::from_hours(1)).unwrap() } [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `blog_config_path` is never used [INFO] [stdout] --> tests/common.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 16 | pub fn blog_config_path() -> String { format!("{}/tests/fixtures/simple_blog.json", env!("CARGO_MANIFEST_DIR")) } [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_blog_config` is never used [INFO] [stdout] --> tests/common.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn load_blog_config() -> PolicyConfig { serde_json::from_str(include_str!("fixtures/simple_blog.json")).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_minimal_config` is never used [INFO] [stdout] --> tests/common.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn load_minimal_config() -> PolicyConfig { serde_json::from_str(include_str!("fixtures/simple_minimal.json")).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `make_claims` is never used [INFO] [stdout] --> tests/common.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn make_claims(sub: &str, roles: &[&str], email: &str) -> JwtClaims { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sign_token` is never used [INFO] [stdout] --> tests/common.rs:32:8 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn sign_token(keys: &SigningKeys, claims: &JwtClaims) -> String { keys.sign(claims, Duration::from_hours(1)).unwrap() } [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `make_predicate` is never used [INFO] [stdout] --> tests/common.rs:34:8 [INFO] [stdout] | [INFO] [stdout] 34 | pub fn make_predicate(input: &str) -> Predicate { ankql::parser::parse_selection(input).unwrap().predicate } [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_blog_config` is never used [INFO] [stdout] --> tests/common.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn load_blog_config() -> PolicyConfig { serde_json::from_str(include_str!("fixtures/simple_blog.json")).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_minimal_config` is never used [INFO] [stdout] --> tests/common.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn load_minimal_config() -> PolicyConfig { serde_json::from_str(include_str!("fixtures/simple_minimal.json")).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sign_token` is never used [INFO] [stdout] --> tests/common.rs:32:8 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn sign_token(keys: &SigningKeys, claims: &JwtClaims) -> String { keys.sign(claims, Duration::from_hours(1)).unwrap() } [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `make_predicate` is never used [INFO] [stdout] --> tests/common.rs:34:8 [INFO] [stdout] | [INFO] [stdout] 34 | pub fn make_predicate(input: &str) -> Predicate { ankql::parser::parse_selection(input).unwrap().predicate } [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_keys_alt` is never used [INFO] [stdout] --> tests/common.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn test_keys_alt() -> SigningKeys { SigningKeys::from_pem(include_str!("fixtures/test_key_b.pem")).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_keys_alt` is never used [INFO] [stdout] --> tests/common.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn test_keys_alt() -> SigningKeys { SigningKeys::from_pem(include_str!("fixtures/test_key_b.pem")).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `blog_config_path` is never used [INFO] [stdout] --> tests/common.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 16 | pub fn blog_config_path() -> String { format!("{}/tests/fixtures/simple_blog.json", env!("CARGO_MANIFEST_DIR")) } [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_blog_config` is never used [INFO] [stdout] --> tests/common.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn load_blog_config() -> PolicyConfig { serde_json::from_str(include_str!("fixtures/simple_blog.json")).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `blog_config_path` is never used [INFO] [stdout] --> tests/common.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 16 | pub fn blog_config_path() -> String { format!("{}/tests/fixtures/simple_blog.json", env!("CARGO_MANIFEST_DIR")) } [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_minimal_config` is never used [INFO] [stdout] --> tests/common.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn load_minimal_config() -> PolicyConfig { serde_json::from_str(include_str!("fixtures/simple_minimal.json")).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_blog_config` is never used [INFO] [stdout] --> tests/common.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn load_blog_config() -> PolicyConfig { serde_json::from_str(include_str!("fixtures/simple_blog.json")).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `make_predicate` is never used [INFO] [stdout] --> tests/common.rs:34:8 [INFO] [stdout] | [INFO] [stdout] 34 | pub fn make_predicate(input: &str) -> Predicate { ankql::parser::parse_selection(input).unwrap().predicate } [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_minimal_config` is never used [INFO] [stdout] --> tests/common.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn load_minimal_config() -> PolicyConfig { serde_json::from_str(include_str!("fixtures/simple_minimal.json")).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `make_claims` is never used [INFO] [stdout] --> tests/common.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn make_claims(sub: &str, roles: &[&str], email: &str) -> JwtClaims { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sign_token` is never used [INFO] [stdout] --> tests/common.rs:32:8 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn sign_token(keys: &SigningKeys, claims: &JwtClaims) -> String { keys.sign(claims, Duration::from_hours(1)).unwrap() } [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `make_predicate` is never used [INFO] [stdout] --> tests/common.rs:34:8 [INFO] [stdout] | [INFO] [stdout] 34 | pub fn make_predicate(input: &str) -> Predicate { ankql::parser::parse_selection(input).unwrap().predicate } [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_keys_alt` is never used [INFO] [stdout] --> tests/common.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn test_keys_alt() -> SigningKeys { SigningKeys::from_pem(include_str!("fixtures/test_key_b.pem")).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_minimal_config` is never used [INFO] [stdout] --> tests/common.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn load_minimal_config() -> PolicyConfig { serde_json::from_str(include_str!("fixtures/simple_minimal.json")).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `make_predicate` is never used [INFO] [stdout] --> tests/common.rs:34:8 [INFO] [stdout] | [INFO] [stdout] 34 | pub fn make_predicate(input: &str) -> Predicate { ankql::parser::parse_selection(input).unwrap().predicate } [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_keys_alt` is never used [INFO] [stdout] --> tests/common.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn test_keys_alt() -> SigningKeys { SigningKeys::from_pem(include_str!("fixtures/test_key_b.pem")).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_blog_config` is never used [INFO] [stdout] --> tests/common.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn load_blog_config() -> PolicyConfig { serde_json::from_str(include_str!("fixtures/simple_blog.json")).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_minimal_config` is never used [INFO] [stdout] --> tests/common.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn load_minimal_config() -> PolicyConfig { serde_json::from_str(include_str!("fixtures/simple_minimal.json")).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `make_predicate` is never used [INFO] [stdout] --> tests/common.rs:34:8 [INFO] [stdout] | [INFO] [stdout] 34 | pub fn make_predicate(input: &str) -> Predicate { ankql::parser::parse_selection(input).unwrap().predicate } [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_keys_alt` is never used [INFO] [stdout] --> tests/common.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn test_keys_alt() -> SigningKeys { SigningKeys::from_pem(include_str!("fixtures/test_key_b.pem")).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `blog_config_path` is never used [INFO] [stdout] --> tests/common.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 16 | pub fn blog_config_path() -> String { format!("{}/tests/fixtures/simple_blog.json", env!("CARGO_MANIFEST_DIR")) } [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_blog_config` is never used [INFO] [stdout] --> tests/common.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn load_blog_config() -> PolicyConfig { serde_json::from_str(include_str!("fixtures/simple_blog.json")).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_minimal_config` is never used [INFO] [stdout] --> tests/common.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn load_minimal_config() -> PolicyConfig { serde_json::from_str(include_str!("fixtures/simple_minimal.json")).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `make_claims` is never used [INFO] [stdout] --> tests/common.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn make_claims(sub: &str, roles: &[&str], email: &str) -> JwtClaims { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sign_token` is never used [INFO] [stdout] --> tests/common.rs:32:8 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn sign_token(keys: &SigningKeys, claims: &JwtClaims) -> String { keys.sign(claims, Duration::from_hours(1)).unwrap() } [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `make_predicate` is never used [INFO] [stdout] --> tests/common.rs:34:8 [INFO] [stdout] | [INFO] [stdout] 34 | pub fn make_predicate(input: &str) -> Predicate { ankql::parser::parse_selection(input).unwrap().predicate } [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_keys_alt` is never used [INFO] [stdout] --> tests/common.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn test_keys_alt() -> SigningKeys { SigningKeys::from_pem(include_str!("fixtures/test_key_b.pem")).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `blog_config_path` is never used [INFO] [stdout] --> tests/common.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 16 | pub fn blog_config_path() -> String { format!("{}/tests/fixtures/simple_blog.json", env!("CARGO_MANIFEST_DIR")) } [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_blog_config` is never used [INFO] [stdout] --> tests/common.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn load_blog_config() -> PolicyConfig { serde_json::from_str(include_str!("fixtures/simple_blog.json")).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_minimal_config` is never used [INFO] [stdout] --> tests/common.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn load_minimal_config() -> PolicyConfig { serde_json::from_str(include_str!("fixtures/simple_minimal.json")).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `make_claims` is never used [INFO] [stdout] --> tests/common.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn make_claims(sub: &str, roles: &[&str], email: &str) -> JwtClaims { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sign_token` is never used [INFO] [stdout] --> tests/common.rs:32:8 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn sign_token(keys: &SigningKeys, claims: &JwtClaims) -> String { keys.sign(claims, Duration::from_hours(1)).unwrap() } [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_keys_alt` is never used [INFO] [stdout] --> tests/common.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn test_keys_alt() -> SigningKeys { SigningKeys::from_pem(include_str!("fixtures/test_key_b.pem")).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_blog_config` is never used [INFO] [stdout] --> tests/common.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn load_blog_config() -> PolicyConfig { serde_json::from_str(include_str!("fixtures/simple_blog.json")).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_minimal_config` is never used [INFO] [stdout] --> tests/common.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn load_minimal_config() -> PolicyConfig { serde_json::from_str(include_str!("fixtures/simple_minimal.json")).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `make_predicate` is never used [INFO] [stdout] --> tests/common.rs:34:8 [INFO] [stdout] | [INFO] [stdout] 34 | pub fn make_predicate(input: &str) -> Predicate { ankql::parser::parse_selection(input).unwrap().predicate } [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_keys_alt` is never used [INFO] [stdout] --> tests/common.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn test_keys_alt() -> SigningKeys { SigningKeys::from_pem(include_str!("fixtures/test_key_b.pem")).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_blog_config` is never used [INFO] [stdout] --> tests/common.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn load_blog_config() -> PolicyConfig { serde_json::from_str(include_str!("fixtures/simple_blog.json")).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_minimal_config` is never used [INFO] [stdout] --> tests/common.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn load_minimal_config() -> PolicyConfig { serde_json::from_str(include_str!("fixtures/simple_minimal.json")).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `make_claims` is never used [INFO] [stdout] --> tests/common.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn make_claims(sub: &str, roles: &[&str], email: &str) -> JwtClaims { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sign_token` is never used [INFO] [stdout] --> tests/common.rs:32:8 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn sign_token(keys: &SigningKeys, claims: &JwtClaims) -> String { keys.sign(claims, Duration::from_hours(1)).unwrap() } [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `make_predicate` is never used [INFO] [stdout] --> tests/common.rs:34:8 [INFO] [stdout] | [INFO] [stdout] 34 | pub fn make_predicate(input: &str) -> Predicate { ankql::parser::parse_selection(input).unwrap().predicate } [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `release` profile [optimized] target(s) in 52.47s [INFO] running `Command { std: "docker" "inspect" "1c6c9c7833dea08a0bbe5e2df6f80e233d11916654f79048376f4b442dd23d5d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "1c6c9c7833dea08a0bbe5e2df6f80e233d11916654f79048376f4b442dd23d5d" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.6" "test" "--frozen" "--release", kill_on_drop: false }` [INFO] [stderr] warning: function `test_keys_alt` is never used [INFO] [stderr] --> tests/common.rs:14:8 [INFO] [stderr] | [INFO] [stderr] 14 | pub fn test_keys_alt() -> SigningKeys { SigningKeys::from_pem(include_str!("fixtures/test_key_b.pem")).unwrap() } [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: function `load_blog_config` is never used [INFO] [stderr] --> tests/common.rs:18:8 [INFO] [stderr] | [INFO] [stderr] 18 | pub fn load_blog_config() -> PolicyConfig { serde_json::from_str(include_str!("fixtures/simple_blog.json")).unwrap() } [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `load_minimal_config` is never used [INFO] [stderr] --> tests/common.rs:20:8 [INFO] [stderr] | [INFO] [stderr] 20 | pub fn load_minimal_config() -> PolicyConfig { serde_json::from_str(include_str!("fixtures/simple_minimal.json")).unwrap() } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `make_claims` is never used [INFO] [stderr] --> tests/common.rs:22:8 [INFO] [stderr] | [INFO] [stderr] 22 | pub fn make_claims(sub: &str, roles: &[&str], email: &str) -> JwtClaims { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `sign_token` is never used [INFO] [stderr] --> tests/common.rs:32:8 [INFO] [stderr] | [INFO] [stderr] 32 | pub fn sign_token(keys: &SigningKeys, claims: &JwtClaims) -> String { keys.sign(claims, Duration::from_hours(1)).unwrap() } [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `make_predicate` is never used [INFO] [stderr] --> tests/common.rs:34:8 [INFO] [stderr] | [INFO] [stderr] 34 | pub fn make_predicate(input: &str) -> Predicate { ankql::parser::parse_selection(input).unwrap().predicate } [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `test_keys` is never used [INFO] [stderr] --> tests/common.rs:11:8 [INFO] [stderr] | [INFO] [stderr] 11 | pub fn test_keys() -> SigningKeys { SigningKeys::from_pem(include_str!("fixtures/test_key_a.pem")).unwrap() } [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: function `test_keys_alt` is never used [INFO] [stderr] --> tests/common.rs:14:8 [INFO] [stderr] | [INFO] [stderr] 14 | pub fn test_keys_alt() -> SigningKeys { SigningKeys::from_pem(include_str!("fixtures/test_key_b.pem")).unwrap() } [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `blog_config_path` is never used [INFO] [stderr] --> tests/common.rs:16:8 [INFO] [stderr] | [INFO] [stderr] 16 | pub fn blog_config_path() -> String { format!("{}/tests/fixtures/simple_blog.json", env!("CARGO_MANIFEST_DIR")) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `ankurah-jwt-auth` (test "context_tests") generated 6 warnings [INFO] [stderr] warning: `ankurah-jwt-auth` (test "config_tests") generated 6 warnings (3 duplicates) [INFO] [stderr] warning: `ankurah-jwt-auth` (test "scoped_live_update_tests") generated 7 warnings (7 duplicates) [INFO] [stderr] warning: `ankurah-jwt-auth` (test "filter_predicate_tests") generated 5 warnings (5 duplicates) [INFO] [stderr] warning: `ankurah-jwt-auth` (test "node_policy_sync_tests") generated 4 warnings (4 duplicates) [INFO] [stderr] warning: `ankurah-jwt-auth` (test "scope_rule_ops_tests") generated 5 warnings (5 duplicates) [INFO] [stderr] warning: function `load_blog_config` is never used [INFO] [stderr] --> tests/common.rs:18:8 [INFO] [stderr] | [INFO] [stderr] 18 | pub fn load_blog_config() -> PolicyConfig { serde_json::from_str(include_str!("fixtures/simple_blog.json")).unwrap() } [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: function `blog_config_path` is never used [INFO] [stderr] --> tests/common.rs:16:8 [INFO] [stderr] | [INFO] [stderr] 16 | pub fn blog_config_path() -> String { format!("{}/tests/fixtures/simple_blog.json", env!("CARGO_MANIFEST_DIR")) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: `ankurah-jwt-auth` (test "filter_predicate_custom_tests") generated 6 warnings (6 duplicates) [INFO] [stderr] warning: `ankurah-jwt-auth` (test "adversarial_tests") generated 4 warnings (3 duplicates) [INFO] [stderr] warning: `ankurah-jwt-auth` (test "scoped_fetch_repro") generated 7 warnings (7 duplicates) [INFO] [stderr] warning: `ankurah-jwt-auth` (test "node_tests") generated 4 warnings (4 duplicates) [INFO] [stderr] warning: `ankurah-jwt-auth` (test "keys_tests") generated 6 warnings (5 duplicates) [INFO] [stderr] warning: `ankurah-jwt-auth` (test "adversarial_rbac_tests") generated 3 warnings (3 duplicates) [INFO] [stderr] Finished `release` profile [optimized] target(s) in 0.28s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/release/deps/ankurah_jwt_auth-c71fbab6fc9c132b) [INFO] [stdout] [INFO] [stdout] running 14 tests [INFO] [stdout] test variables::tests::test_missing_custom_claim ... ok [INFO] [stdout] test variables::tests::test_non_string_custom_claim_rejected ... ok [INFO] [stdout] test variables::tests::test_substitute_jwt_name_missing_fails ... ok [INFO] [stdout] test variables::tests::test_substitute_jwt_email ... ok [INFO] [stdout] test variables::tests::test_substitute_jwt_custom ... ok [INFO] [stdout] test variables::tests::test_substitute_jwt_name ... ok [INFO] [stdout] test variables::tests::test_injection_payload_becomes_inert_literal ... ok [INFO] [stdout] test variables::tests::test_literal_placeholder_in_filter_fails_closed ... ok [INFO] [stdout] test variables::tests::test_entity_id_value_becomes_typed_literal ... ok [INFO] [stdout] test variables::tests::test_apostrophe_value_is_inert ... ok [INFO] [stdout] test variables::tests::test_substitute_jwt_sub ... ok [INFO] [stdout] test variables::tests::test_substitute_multiple_variables ... ok [INFO] [stdout] test variables::tests::test_unknown_variable ... ok [INFO] [stdout] test variables::tests::test_substitute_special_chars_in_sub ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/adversarial_rbac_tests.rs (/opt/rustwide/target/release/deps/adversarial_rbac_tests-70df588975196c42) [INFO] [stdout] [INFO] [stdout] running 6 tests [INFO] [stdout] test test_nouser_can_read_jwtpolicy_but_not_other_collections ... ok [INFO] [stdout] test test_nouser_cannot_write_anything ... ok [INFO] [stdout] test test_root_context_cannot_be_sent_over_wire ... ok [INFO] [stdout] test test_reader_cannot_write_to_user_collection ... ok [INFO] [stdout] test test_non_privileged_cannot_write_jwtpolicy ... ok [INFO] [stdout] test test_reader_cannot_write_post_via_ephemeral ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stderr] Running tests/adversarial_tests.rs (/opt/rustwide/target/release/deps/adversarial_tests-8f472e2b64c4fecd) [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test test_server_rejects_garbage_auth_data ... ok [INFO] [stdout] test test_server_rejects_wrongly_signed_token ... ok [INFO] [stdout] test test_server_rejects_expired_token ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s [INFO] [stdout] [INFO] [stderr] Running tests/common.rs (/opt/rustwide/target/release/deps/common-14453fdd243ee780) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/config_tests.rs (/opt/rustwide/target/release/deps/config_tests-2cabe60cfb945e51) [INFO] [stdout] [INFO] [stdout] running 14 tests [INFO] [stdout] test test_default_config_is_empty ... ok [INFO] [stdout] test test_editor_can_access_post_collection ... ok [INFO] [stdout] test test_author_can_read_but_not_write_post ... ok [INFO] [stdout] test test_load_minimal_config ... ok [INFO] [stdout] test test_editor_can_write_post_collection ... ok [INFO] [stdout] test test_load_blog_config ... ok [INFO] [stdout] test test_minimal_config_wildcard_admin ... ok [INFO] [stdout] test test_multi_role_access ... ok [INFO] [stdout] test test_reader_can_access_comment_collection ... ok [INFO] [stdout] test test_reader_cannot_access_post_collection ... ok [INFO] [stdout] test test_reader_cannot_write_comment_collection ... ok [INFO] [stdout] test test_unknown_collection_denied ... ok [INFO] [stdout] test test_unknown_role_denied ... ok [INFO] [stdout] test test_wildcard_privilege_grants_all_access ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/context_tests.rs (/opt/rustwide/target/release/deps/context_tests-67c612de94397b12) [INFO] [stdout] [INFO] [stdout] running 12 tests [INFO] [stdout] test test_authenticated_context_auth_data ... ok [INFO] [stdout] test test_authenticated_context_is_not_privileged ... ok [INFO] [stdout] test test_jwt_context_accessors ... ok [INFO] [stdout] test test_jwt_context_equality_by_sub ... ok [INFO] [stdout] test test_nouser_context_equality ... ok [INFO] [stdout] test test_nouser_context_has_no_identity ... ok [INFO] [stdout] test test_nouser_context_is_not_privileged ... ok [INFO] [stdout] test test_nouser_context_produces_empty_auth_data ... ok [INFO] [stdout] test test_root_context_cannot_produce_auth_data ... ok [INFO] [stdout] test test_root_context_equality ... ok [INFO] [stdout] test test_root_context_is_privileged ... ok [INFO] [stdout] test test_nouser_can_access_jwtpolicy_collection ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/filter_predicate_custom_tests.rs (/opt/rustwide/target/release/deps/filter_predicate_custom_tests-907ae870babab89b) [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test test_filter_predicate_missing_claim_denied ... ok [INFO] [stdout] test test_filter_predicate_multiple_rules_anded ... ok [INFO] [stdout] test test_filter_predicate_custom_claim_variable ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stderr] Running tests/filter_predicate_tests.rs (/opt/rustwide/target/release/deps/filter_predicate_tests-2c80f9222cbb47e6) [INFO] [stdout] [INFO] [stdout] running 7 tests [INFO] [stdout] test test_filter_predicate_nouser_denied ... ok [INFO] [stdout] test test_filter_predicate_privileged_bypasses ... ok [INFO] [stdout] test test_filter_predicate_injection_payload_is_inert ... ok [INFO] [stdout] test test_filter_predicate_unless_privilege_bypasses ... ok [INFO] [stdout] test test_filter_predicate_no_scope_rules ... ok [INFO] [stdout] test test_filter_predicate_applies_scope_rule ... ok [INFO] [stdout] test test_filter_predicate_unconditional_scope_rule ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stderr] Running tests/keys_tests.rs (/opt/rustwide/target/release/deps/keys_tests-0c22aaa0291a0d79) [INFO] [stdout] [INFO] [stdout] running 13 tests [INFO] [stdout] test test_parse_claims_unverified_invalid_format ... ok [INFO] [stdout] test test_ephemeral_agent_starts_with_no_keys ... ok [INFO] [stdout] test test_ephemeral_agent_set_keys ... ok [INFO] [stdout] test test_public_key_pem_export ... ok [INFO] [stdout] test test_jwt_keys_public_key_pem ... ok [INFO] [stdout] test test_verify_garbage_token_fails ... ok [INFO] [stdout] test test_sign_and_verify_no_name ... ok [INFO] [stdout] test test_parse_claims_unverified ... ok [INFO] [stdout] test test_parse_claims_unverified_no_name ... ok [INFO] [stdout] test test_jwt_keys_verify_only ... ok [INFO] [stdout] test test_jwt_keys_signing_variant_verify ... ok [INFO] [stdout] test test_verify_wrong_key_fails ... ok [INFO] [stdout] test test_sign_and_verify ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 5.50s [INFO] [stdout] [INFO] [stderr] Running tests/node_policy_sync_tests.rs (/opt/rustwide/target/release/deps/node_policy_sync_tests-f1996e4129186e40) [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test test_ephemeral_receives_policy_via_livequery ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s [INFO] [stdout] [INFO] [stderr] Running tests/node_tests.rs (/opt/rustwide/target/release/deps/node_tests-331fa8aa9ae75a91) [INFO] [stdout] [INFO] [stdout] running 11 tests [INFO] [stdout] test test_root_bypasses_collection_access ... ok [INFO] [stdout] test test_root_context_bypasses_all_policy_checks ... ok [INFO] [stdout] test test_jwt_agent_collection_access_denied ... ok [INFO] [stdout] test test_jwt_agent_reader_cannot_write_post ... ok [INFO] [stdout] test test_jwtpolicy_collection_always_accessible ... ok [INFO] [stdout] test test_read_scope_denies_direct_get_for_out_of_scope_resident_entity ... ok [INFO] [stdout] test test_jwt_agent_single_durable_node ... ok [INFO] [stdout] test test_update_scope_requires_before_and_after_state ... ok [INFO] [stdout] test test_write_scope_allows_matching_ref_and_denies_other_ref ... ok [INFO] [stdout] test test_jwt_agent_durable_ephemeral_pair ... ok [INFO] [stdout] test test_jwt_check_request_roundtrip ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.15s [INFO] [stdout] [INFO] [stderr] Running tests/scope_rule_ops_tests.rs (/opt/rustwide/target/release/deps/scope_rule_ops_tests-1c78b65652d7ea18) [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test applies_to_defaults_to_read_write_and_parses ... ok [INFO] [stdout] test write_only_scope_rule_gates_writes_not_reads ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s [INFO] [stdout] [INFO] [stderr] Running tests/scoped_fetch_repro.rs (/opt/rustwide/target/release/deps/scoped_fetch_repro-eade57715f54e1e7) [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test enduser_scoped_cached_fetch_over_relay ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.13s [INFO] [stdout] [INFO] [stderr] Running tests/scoped_live_update_tests.rs (/opt/rustwide/target/release/deps/scoped_live_update_tests-e0091b1da00884e0) [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test ref_scope_rule_receives_live_updates ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.32s [INFO] [stdout] [INFO] [stderr] Doc-tests ankurah_jwt_auth [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test src/model.rs - model::__ankurah_derive_impl_jwt_policy::JwtPolicyView::r (line 9) ... ignored [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "1c6c9c7833dea08a0bbe5e2df6f80e233d11916654f79048376f4b442dd23d5d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1c6c9c7833dea08a0bbe5e2df6f80e233d11916654f79048376f4b442dd23d5d", kill_on_drop: false }` [INFO] [stdout] 1c6c9c7833dea08a0bbe5e2df6f80e233d11916654f79048376f4b442dd23d5d