[INFO] cloning repository https://github.com/reality2-ai/r2-relay
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/reality2-ai/r2-relay" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Freality2-ai%2Fr2-relay", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Freality2-ai%2Fr2-relay'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 00fee5ce48c33eb2add09853ad46f213dd42b7d4
[INFO] checking reality2-ai/r2-relay against master#b2f1ccf524a3a4cf9c34545167cc23b659cf1cbd for pr-155499
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Freality2-ai%2Fr2-relay" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/reality2-ai/r2-relay
[INFO] finished tweaking git repo https://github.com/reality2-ai/r2-relay
[INFO] tweaked toml for git repo https://github.com/reality2-ai/r2-relay written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/reality2-ai/r2-relay on toolchain b2f1ccf524a3a4cf9c34545167cc23b659cf1cbd
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b2f1ccf524a3a4cf9c34545167cc23b659cf1cbd" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/reality2-ai/r2-relay 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" "+b2f1ccf524a3a4cf9c34545167cc23b659cf1cbd" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded libc v0.2.184
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+b2f1ccf524a3a4cf9c34545167cc23b659cf1cbd" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] e94c8707dcdbfd43ee9154c9e0f04b5b4391dcbcd574f30b2ca1df965318b0bd
[INFO] running `Command { std: "docker" "start" "-a" "e94c8707dcdbfd43ee9154c9e0f04b5b4391dcbcd574f30b2ca1df965318b0bd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e94c8707dcdbfd43ee9154c9e0f04b5b4391dcbcd574f30b2ca1df965318b0bd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e94c8707dcdbfd43ee9154c9e0f04b5b4391dcbcd574f30b2ca1df965318b0bd", kill_on_drop: false }`
[INFO] [stdout] e94c8707dcdbfd43ee9154c9e0f04b5b4391dcbcd574f30b2ca1df965318b0bd
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+b2f1ccf524a3a4cf9c34545167cc23b659cf1cbd" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e192a220490f16ad2a04563744aed427888a86aeec79e6ede0f87cf87673db65
[INFO] running `Command { std: "docker" "start" "-a" "e192a220490f16ad2a04563744aed427888a86aeec79e6ede0f87cf87673db65", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.184
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]     Checking utf8parse v0.2.2
[INFO] [stderr]     Checking is_terminal_polyfill v1.70.2
[INFO] [stderr]     Checking colorchoice v1.0.5
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]     Checking anstyle-query v1.1.5
[INFO] [stderr]     Checking anstyle v1.0.14
[INFO] [stderr]     Checking slab v0.4.12
[INFO] [stderr]     Checking futures-sink v0.3.32
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]     Checking clap_lex v1.1.0
[INFO] [stderr]     Checking signature v2.2.0
[INFO] [stderr]     Checking zeroize v1.8.2
[INFO] [stderr]     Checking anstyle-parse v1.0.0
[INFO] [stderr]     Checking strsim v0.11.1
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking jiff v0.2.23
[INFO] [stderr]     Checking ed25519 v2.2.3
[INFO] [stderr]     Checking matchit v0.8.4
[INFO] [stderr]     Checking tower-http v0.6.8
[INFO] [stderr]     Checking axum-core v0.5.6
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]     Checking anstream v1.0.0
[INFO] [stderr]     Checking clap_builder v4.6.0
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking mio v1.2.0
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]     Checking socket2 v0.6.3
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking rand_core v0.9.5
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking rand v0.9.2
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]     Checking env_filter v1.0.1
[INFO] [stderr]     Checking serde_json v1.0.149
[INFO] [stderr]     Checking serde_path_to_error v0.1.20
[INFO] [stderr]     Checking env_logger v0.11.10
[INFO] [stderr]    Compiling tokio-macros v2.6.1
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling curve25519-dalek-derive v0.1.1
[INFO] [stderr]    Compiling clap_derive v4.6.0
[INFO] [stderr]     Checking tokio v1.50.0
[INFO] [stderr]     Checking ed25519-dalek v2.2.0
[INFO] [stderr]     Checking thiserror v2.0.18
[INFO] [stderr]     Checking tungstenite v0.28.0
[INFO] [stderr]     Checking clap v4.6.0
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking hyper v1.9.0
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking tokio-tungstenite v0.28.0
[INFO] [stderr]     Checking hyper-util v0.1.20
[INFO] [stderr]     Checking axum v0.8.8
[INFO] [stderr]     Checking r2-relay v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: fields `count` and `window_start` are never read
[INFO] [stdout]   --> src/state.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 64 | struct RateEntry {
[INFO] [stdout]    |        --------- fields in this struct
[INFO] [stdout] 65 |     count: u32,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 66 |     window_start: Instant,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `rate_limits` is never read
[INFO] [stdout]   --> src/state.rs:82:5
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub struct RelayState {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 82 |     rate_limits: Mutex<HashMap<IpAddr, RateEntry>>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RATE_LIMIT_MAX` is never used
[INFO] [stdout]   --> src/state.rs:88:7
[INFO] [stdout]    |
[INFO] [stdout] 88 | const RATE_LIMIT_MAX: u32 = 5;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RATE_LIMIT_WINDOW_SECS` is never used
[INFO] [stdout]   --> src/state.rs:90:7
[INFO] [stdout]    |
[INFO] [stdout] 90 | const RATE_LIMIT_WINDOW_SECS: u64 = 60;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `check_rate_limit` is never used
[INFO] [stdout]    --> src/state.rs:108:18
[INFO] [stdout]     |
[INFO] [stdout]  92 | impl RelayState {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 108 |     pub async fn check_rate_limit(&self, ip: IpAddr) -> bool {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `count` and `window_start` are never read
[INFO] [stdout]   --> src/state.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 64 | struct RateEntry {
[INFO] [stdout]    |        --------- fields in this struct
[INFO] [stdout] 65 |     count: u32,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 66 |     window_start: Instant,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `rate_limits` is never read
[INFO] [stdout]   --> src/state.rs:82:5
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub struct RelayState {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 82 |     rate_limits: Mutex<HashMap<IpAddr, RateEntry>>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RATE_LIMIT_MAX` is never used
[INFO] [stdout]   --> src/state.rs:88:7
[INFO] [stdout]    |
[INFO] [stdout] 88 | const RATE_LIMIT_MAX: u32 = 5;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RATE_LIMIT_WINDOW_SECS` is never used
[INFO] [stdout]   --> src/state.rs:90:7
[INFO] [stdout]    |
[INFO] [stdout] 90 | const RATE_LIMIT_WINDOW_SECS: u64 = 60;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `check_rate_limit` is never used
[INFO] [stdout]    --> src/state.rs:108:18
[INFO] [stdout]     |
[INFO] [stdout]  92 | impl RelayState {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 108 |     pub async fn check_rate_limit(&self, ip: IpAddr) -> bool {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 25.85s
[INFO] running `Command { std: "docker" "inspect" "e192a220490f16ad2a04563744aed427888a86aeec79e6ede0f87cf87673db65", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e192a220490f16ad2a04563744aed427888a86aeec79e6ede0f87cf87673db65", kill_on_drop: false }`
[INFO] [stdout] e192a220490f16ad2a04563744aed427888a86aeec79e6ede0f87cf87673db65
