[INFO] fetching crate garage_api_s3 2.1.0...
[INFO] checking garage_api_s3-2.1.0 against try#14731909456ca628a194900c35659dfdcb359e77 for pr-149195-1
[INFO] extracting crate garage_api_s3 2.1.0 into /workspace/builds/worker-4-tc2/source
[INFO] started tweaking crates.io crate garage_api_s3 2.1.0
[INFO] finished tweaking crates.io crate garage_api_s3 2.1.0
[INFO] tweaked toml for crates.io crate garage_api_s3 2.1.0 written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate garage_api_s3 2.1.0 on toolchain 14731909456ca628a194900c35659dfdcb359e77
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+14731909456ca628a194900c35659dfdcb359e77" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate garage_api_s3 2.1.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" "+14731909456ca628a194900c35659dfdcb359e77" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/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:94a0c148923f5b2b52a63ef0eeb1882ad339ab61bce784c8077cbe41c61feb6c" "/opt/rustwide/cargo-home/bin/cargo" "+14731909456ca628a194900c35659dfdcb359e77" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 5c81019059b0eefbc9429a657428e6fd67461040b5803b339d710d0d8a4105bb
[INFO] running `Command { std: "docker" "start" "-a" "5c81019059b0eefbc9429a657428e6fd67461040b5803b339d710d0d8a4105bb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5c81019059b0eefbc9429a657428e6fd67461040b5803b339d710d0d8a4105bb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5c81019059b0eefbc9429a657428e6fd67461040b5803b339d710d0d8a4105bb", kill_on_drop: false }`
[INFO] [stdout] 5c81019059b0eefbc9429a657428e6fd67461040b5803b339d710d0d8a4105bb
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/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:94a0c148923f5b2b52a63ef0eeb1882ad339ab61bce784c8077cbe41c61feb6c" "/opt/rustwide/cargo-home/bin/cargo" "+14731909456ca628a194900c35659dfdcb359e77" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 188c26d835d494cec7fda211eb1e4fdf8f93d1d479fc1efaff4e272947acb990
[INFO] running `Command { std: "docker" "start" "-a" "188c26d835d494cec7fda211eb1e4fdf8f93d1d479fc1efaff4e272947acb990", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.94
[INFO] [stderr]    Compiling libc v0.2.171
[INFO] [stderr]     Checking pin-project-lite v0.2.16
[INFO] [stderr]     Checking bytes v1.10.1
[INFO] [stderr]    Compiling pkg-config v0.3.32
[INFO] [stderr]     Checking subtle v2.6.1
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking futures-sink v0.3.31
[INFO] [stderr]    Compiling zerocopy v0.8.23
[INFO] [stderr]     Checking generic-array v0.14.7
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling rustversion v1.0.20
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking equivalent v1.0.2
[INFO] [stderr]     Checking smallvec v1.14.0
[INFO] [stderr]     Checking once_cell v1.21.1
[INFO] [stderr]     Checking futures-channel v0.3.31
[INFO] [stderr]     Checking indexmap v2.8.0
[INFO] [stderr]    Compiling httparse v1.10.1
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]     Checking tracing-core v0.1.33
[INFO] [stderr]    Compiling unicode-xid v0.2.6
[INFO] [stderr]     Checking atomic-waker v1.1.2
[INFO] [stderr]     Checking litemap v0.7.5
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]     Checking try-lock v0.2.5
[INFO] [stderr]     Checking want v0.3.1
[INFO] [stderr]     Checking httpdate v1.0.3
[INFO] [stderr]     Checking log v0.4.26
[INFO] [stderr]     Checking winnow v0.7.4
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]    Compiling nix v0.29.0
[INFO] [stderr]     Checking crossbeam-channel v0.5.14
[INFO] [stderr]     Checking http v1.3.1
[INFO] [stderr]    Compiling garage_util v2.1.0
[INFO] [stderr]    Compiling num-bigint v0.2.6
[INFO] [stderr]    Compiling getrandom v0.3.2
[INFO] [stderr]     Checking arrayvec v0.5.2
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking iana-time-zone v0.1.61
[INFO] [stderr]     Checking no-std-net v0.6.0
[INFO] [stderr]    Compiling zstd-safe v7.2.3
[INFO] [stderr]     Checking arc-swap v1.7.1
[INFO] [stderr]     Checking pnet_base v0.34.0
[INFO] [stderr]    Compiling jobserver v0.1.32
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stderr]    Compiling num-rational v0.2.4
[INFO] [stderr]    Compiling num-complex v0.2.4
[INFO] [stderr]     Checking regex-syntax v0.8.5
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]     Checking bitflags v2.9.0
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking rmp v0.8.14
[INFO] [stderr]    Compiling cc v1.2.16
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking hexdump v0.1.2
[INFO] [stderr]     Checking bytesize v1.3.2
[INFO] [stderr]     Checking xxhash-rust v0.8.15
[INFO] [stderr]    Compiling syn v2.0.100
[INFO] [stderr]     Checking itertools v0.12.1
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]     Checking ipnet v2.11.0
[INFO] [stderr]     Checking format_table v0.1.1
[INFO] [stderr]     Checking num-iter v0.1.45
[INFO] [stderr]    Compiling err-derive v0.3.1
[INFO] [stderr]     Checking inout v0.1.4
[INFO] [stderr]     Checking base64ct v1.7.3
[INFO] [stderr]    Compiling multer v3.1.0
[INFO] [stderr]     Checking tower-service v0.3.3
[INFO] [stderr]     Checking encoding_rs v0.8.35
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]     Checking spin v0.9.8
[INFO] [stderr]     Checking mime v0.3.17
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]     Checking http-range v0.1.5
[INFO] [stderr]     Checking getrandom v0.2.15
[INFO] [stderr]     Checking mio v1.0.3
[INFO] [stderr]     Checking signal-hook-registry v1.4.2
[INFO] [stderr]     Checking socket2 v0.5.8
[INFO] [stderr]     Checking num_cpus v1.16.0
[INFO] [stderr]     Checking pnet_sys v0.34.0
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking gethostname v0.4.3
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking dashmap v4.0.2
[INFO] [stderr]     Checking roxmltree v0.19.0
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking password-hash v0.5.0
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]     Checking rand_core v0.9.3
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking universal-hash v0.5.1
[INFO] [stderr]     Checking aead v0.5.2
[INFO] [stderr]     Checking ctr v0.9.2
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking aes v0.8.4
[INFO] [stderr]     Checking polyval v0.6.2
[INFO] [stderr]     Checking blake2 v0.10.6
[INFO] [stderr]     Checking sha2 v0.10.8
[INFO] [stderr]     Checking rand v0.9.1
[INFO] [stderr]     Checking ghash v0.5.1
[INFO] [stderr]     Checking md-5 v0.10.6
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking num v0.2.1
[INFO] [stderr]     Checking argon2 v0.5.3
[INFO] [stderr]     Checking aes-gcm v0.10.3
[INFO] [stderr]     Checking regex-automata v0.4.9
[INFO] [stderr]    Compiling libsodium-sys v0.2.7
[INFO] [stderr]    Compiling zstd-sys v2.0.14+zstd.1.5.7
[INFO] [stderr]    Compiling crc-fast v1.2.0
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]     Checking regex v1.11.1
[INFO] [stderr]     Checking parse_duration v2.1.1
[INFO] [stderr]    Compiling synstructure v0.13.1
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.7.5
[INFO] [stderr]    Compiling zerovec-derive v0.10.3
[INFO] [stderr]    Compiling tracing-attributes v0.1.28
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling pin-project-internal v1.1.10
[INFO] [stderr]    Compiling icu_provider_macros v1.5.0
[INFO] [stderr]    Compiling async-trait v0.1.88
[INFO] [stderr]     Checking zstd v0.13.3
[INFO] [stderr]     Checking tokio v1.44.1
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking pin-project v1.1.10
[INFO] [stderr]     Checking yoke v0.7.5
[INFO] [stderr]     Checking zerovec v0.10.4
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]     Checking garage_db v2.1.0
[INFO] [stderr]     Checking serde v1.0.219
[INFO] [stderr]     Checking tinystr v0.7.6
[INFO] [stderr]     Checking icu_collections v1.5.0
[INFO] [stderr]     Checking icu_locid v1.5.0
[INFO] [stderr]     Checking icu_provider v1.5.0
[INFO] [stderr]     Checking icu_locid_transform v1.5.0
[INFO] [stderr]     Checking icu_properties v1.5.1
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking tokio-util v0.7.14
[INFO] [stderr]     Checking tokio-stream v0.1.17
[INFO] [stderr]     Checking async-compression v0.4.21
[INFO] [stderr]     Checking opentelemetry v0.17.0
[INFO] [stderr]     Checking h2 v0.4.8
[INFO] [stderr]     Checking toml_datetime v0.6.8
[INFO] [stderr]     Checking serde_spanned v0.6.8
[INFO] [stderr]     Checking rmp-serde v1.3.0
[INFO] [stderr]     Checking chrono v0.4.40
[INFO] [stderr]     Checking ipnetwork v0.20.0
[INFO] [stderr]     Checking serde_bytes v0.11.17
[INFO] [stderr]     Checking quick-xml v0.26.0
[INFO] [stderr]     Checking toml_edit v0.22.24
[INFO] [stderr]     Checking pnet_datalink v0.34.0
[INFO] [stderr]     Checking icu_normalizer v1.5.0
[INFO] [stderr]     Checking idna_adapter v1.2.0
[INFO] [stderr]     Checking idna v1.0.3
[INFO] [stderr]     Checking url v2.5.4
[INFO] [stderr]     Checking hyper v1.6.0
[INFO] [stderr]     Checking toml v0.8.20
[INFO] [stderr]     Checking hyper-util v0.1.10
[INFO] [stderr]     Checking kuska-sodiumoxide v0.2.5-0
[INFO] [stderr]     Checking kuska-handshake v0.2.0
[INFO] [stderr]     Checking garage_net v2.1.0
[INFO] [stderr]     Checking garage_rpc v2.1.0
[INFO] [stderr]     Checking garage_table v2.1.0
[INFO] [stderr]     Checking garage_block v2.1.0
[INFO] [stderr]     Checking garage_model v2.1.0
[INFO] [stderr]     Checking garage_api_common v2.1.0
[INFO] [stderr]     Checking garage_api_s3 v2.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0659]: `RoutingRule` is ambiguous
[INFO] [stdout]    --> website.rs:434:6
[INFO] [stdout]     |
[INFO] [stdout] 434 |                     RoutingRule {
[INFO] [stdout]     |                     ^^^^^^^^^^^ ambiguous name
[INFO] [stdout]     |
[INFO] [stdout]     = note: ambiguous because of multiple glob imports of a name in the same module
[INFO] [stdout] note: `RoutingRule` could refer to the struct imported here
[INFO] [stdout]    --> website.rs:376:6
[INFO] [stdout]     |
[INFO] [stdout] 376 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     = help: consider adding an explicit import of `RoutingRule` to disambiguate
[INFO] [stdout] note: `RoutingRule` could also refer to the struct imported here
[INFO] [stdout]    --> website.rs:376:6
[INFO] [stdout]     |
[INFO] [stdout] 376 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     = help: consider adding an explicit import of `RoutingRule` to disambiguate
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0659]: `Redirect` is ambiguous
[INFO] [stdout]    --> website.rs:439:17
[INFO] [stdout]     |
[INFO] [stdout] 439 |                         redirect: Redirect {
[INFO] [stdout]     |                                   ^^^^^^^^ ambiguous name
[INFO] [stdout]     |
[INFO] [stdout]     = note: ambiguous because of multiple glob imports of a name in the same module
[INFO] [stdout] note: `Redirect` could refer to the struct imported here
[INFO] [stdout]    --> website.rs:376:6
[INFO] [stdout]     |
[INFO] [stdout] 376 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     = help: consider adding an explicit import of `Redirect` to disambiguate
[INFO] [stdout] note: `Redirect` could also refer to the struct imported here
[INFO] [stdout]    --> website.rs:376:6
[INFO] [stdout]     |
[INFO] [stdout] 376 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     = help: consider adding an explicit import of `Redirect` to disambiguate
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0659]: `RoutingRule` is ambiguous
[INFO] [stdout]    --> website.rs:447:6
[INFO] [stdout]     |
[INFO] [stdout] 447 |                     RoutingRule {
[INFO] [stdout]     |                     ^^^^^^^^^^^ ambiguous name
[INFO] [stdout]     |
[INFO] [stdout]     = note: ambiguous because of multiple glob imports of a name in the same module
[INFO] [stdout] note: `RoutingRule` could refer to the struct imported here
[INFO] [stdout]    --> website.rs:376:6
[INFO] [stdout]     |
[INFO] [stdout] 376 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     = help: consider adding an explicit import of `RoutingRule` to disambiguate
[INFO] [stdout] note: `RoutingRule` could also refer to the struct imported here
[INFO] [stdout]    --> website.rs:376:6
[INFO] [stdout]     |
[INFO] [stdout] 376 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     = help: consider adding an explicit import of `RoutingRule` to disambiguate
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0659]: `Redirect` is ambiguous
[INFO] [stdout]    --> website.rs:452:17
[INFO] [stdout]     |
[INFO] [stdout] 452 |                         redirect: Redirect {
[INFO] [stdout]     |                                   ^^^^^^^^ ambiguous name
[INFO] [stdout]     |
[INFO] [stdout]     = note: ambiguous because of multiple glob imports of a name in the same module
[INFO] [stdout] note: `Redirect` could refer to the struct imported here
[INFO] [stdout]    --> website.rs:376:6
[INFO] [stdout]     |
[INFO] [stdout] 376 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     = help: consider adding an explicit import of `Redirect` to disambiguate
[INFO] [stdout] note: `Redirect` could also refer to the struct imported here
[INFO] [stdout]    --> website.rs:376:6
[INFO] [stdout]     |
[INFO] [stdout] 376 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     = help: consider adding an explicit import of `Redirect` to disambiguate
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> website.rs:435:23
[INFO] [stdout]     |
[INFO] [stdout] 435 |                           condition: Some(Condition {
[INFO] [stdout]     |  ____________________________________----_^
[INFO] [stdout]     | |                                    |
[INFO] [stdout]     | |                                    arguments to this enum variant are incorrect
[INFO] [stdout] 436 | |                             http_error_code: Some(IntValue(404)),
[INFO] [stdout] 437 | |                             prefix: Some(Value("prefix1".to_owned())),
[INFO] [stdout] 438 | |                         }),
[INFO] [stdout]     | |_________________________^ expected `RedirectCondition`, found `Condition`
[INFO] [stdout]     |
[INFO] [stdout] help: the type constructed contains `website::Condition` due to the type of the argument passed
[INFO] [stdout]    --> website.rs:435:18
[INFO] [stdout]     |
[INFO] [stdout] 435 |                            condition: Some(Condition {
[INFO] [stdout]     |   ____________________________________^    -
[INFO] [stdout]     |  |_________________________________________|
[INFO] [stdout] 436 | ||                             http_error_code: Some(IntValue(404)),
[INFO] [stdout] 437 | ||                             prefix: Some(Value("prefix1".to_owned())),
[INFO] [stdout] 438 | ||                         }),
[INFO] [stdout]     | ||_________________________-^
[INFO] [stdout]     | |__________________________|
[INFO] [stdout]     |                            this argument influences the type of `Some`
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/14731909456ca628a194900c35659dfdcb359e77/library/core/src/option.rs:608:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> website.rs:440:23
[INFO] [stdout]     |
[INFO] [stdout] 440 | ...                   hostname: Some(Value("gara.ge".to_owned())),
[INFO] [stdout]     |                                 ---- ^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `String`, found `Value`
[INFO] [stdout]     |                                 |
[INFO] [stdout]     |                                 arguments to this enum variant are incorrect
[INFO] [stdout]     |
[INFO] [stdout] help: the type constructed contains `xml::Value` due to the type of the argument passed
[INFO] [stdout]    --> website.rs:440:18
[INFO] [stdout]     |
[INFO] [stdout] 440 | ...                   hostname: Some(Value("gara.ge".to_owned())),
[INFO] [stdout]     |                                 ^^^^^---------------------------^
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      this argument influences the type of `Some`
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/14731909456ca628a194900c35659dfdcb359e77/library/core/src/option.rs:608:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> website.rs:441:23
[INFO] [stdout]     |
[INFO] [stdout] 441 | ...                   protocol: Some(Value("http".to_owned())),
[INFO] [stdout]     |                                 ---- ^^^^^^^^^^^^^^^^^^^^^^^^ expected `String`, found `Value`
[INFO] [stdout]     |                                 |
[INFO] [stdout]     |                                 arguments to this enum variant are incorrect
[INFO] [stdout]     |
[INFO] [stdout] help: the type constructed contains `xml::Value` due to the type of the argument passed
[INFO] [stdout]    --> website.rs:441:18
[INFO] [stdout]     |
[INFO] [stdout] 441 | ...                   protocol: Some(Value("http".to_owned())),
[INFO] [stdout]     |                                 ^^^^^------------------------^
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      this argument influences the type of `Some`
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/14731909456ca628a194900c35659dfdcb359e77/library/core/src/option.rs:608:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> website.rs:442:28
[INFO] [stdout]     |
[INFO] [stdout] 442 | ...                   http_redirect_code: Some(IntValue(303)),
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^ expected `u16`, found `Option<IntValue>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected type `u16`
[INFO] [stdout]                found enum `std::option::Option<xml::IntValue>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `garage_model::bucket_table::Redirect` has no field named `replace_prefix`
[INFO] [stdout]    --> website.rs:443:8
[INFO] [stdout]     |
[INFO] [stdout] 443 | ...                   replace_prefix: Some(Value("prefix2".to_owned())),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 443 |                             replace_key_prefix: Some(Value("prefix2".to_owned())),
[INFO] [stdout]     |                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `garage_model::bucket_table::Redirect` has no field named `replace_full`
[INFO] [stdout]    --> website.rs:444:8
[INFO] [stdout]     |
[INFO] [stdout] 444 | ...                   replace_full: Some(Value("fullkey".to_owned())),
[INFO] [stdout]     |                       ^^^^^^^^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 444 -                             replace_full: Some(Value("fullkey".to_owned())),
[INFO] [stdout] 444 +                             replace_key: Some(Value("fullkey".to_owned())),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> website.rs:434:6
[INFO] [stdout]     |
[INFO] [stdout] 434 | /                     RoutingRule {
[INFO] [stdout] 435 | |                         condition: Some(Condition {
[INFO] [stdout] 436 | |                             http_error_code: Some(IntValue(404)),
[INFO] [stdout] 437 | |                             prefix: Some(Value("prefix1".to_owned())),
[INFO] [stdout] ...   |
[INFO] [stdout] 445 | |                         },
[INFO] [stdout] 446 | |                     },
[INFO] [stdout]     | |_____________________^ expected `website::RoutingRule`, found `garage_model::bucket_table::RoutingRule`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `garage_model::bucket_table::RoutingRule` and `website::RoutingRule` have similar names, but are actually distinct types
[INFO] [stdout] note: `garage_model::bucket_table::RoutingRule` is defined in crate `garage_model`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/garage_model-2.1.0/bucket_table.rs:187:2
[INFO] [stdout]     |
[INFO] [stdout] 187 |     pub struct RoutingRule {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `website::RoutingRule` is defined in the current crate
[INFO] [stdout]    --> website.rs:142:1
[INFO] [stdout]     |
[INFO] [stdout] 142 | pub struct RoutingRule {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> website.rs:448:23
[INFO] [stdout]     |
[INFO] [stdout] 448 |                           condition: Some(Condition {
[INFO] [stdout]     |  ____________________________________----_^
[INFO] [stdout]     | |                                    |
[INFO] [stdout]     | |                                    arguments to this enum variant are incorrect
[INFO] [stdout] 449 | |                             http_error_code: None,
[INFO] [stdout] 450 | |                             prefix: Some(Value("".to_owned())),
[INFO] [stdout] 451 | |                         }),
[INFO] [stdout]     | |_________________________^ expected `RedirectCondition`, found `Condition`
[INFO] [stdout]     |
[INFO] [stdout] help: the type constructed contains `website::Condition` due to the type of the argument passed
[INFO] [stdout]    --> website.rs:448:18
[INFO] [stdout]     |
[INFO] [stdout] 448 |                            condition: Some(Condition {
[INFO] [stdout]     |   ____________________________________^    -
[INFO] [stdout]     |  |_________________________________________|
[INFO] [stdout] 449 | ||                             http_error_code: None,
[INFO] [stdout] 450 | ||                             prefix: Some(Value("".to_owned())),
[INFO] [stdout] 451 | ||                         }),
[INFO] [stdout]     | ||_________________________-^
[INFO] [stdout]     | |__________________________|
[INFO] [stdout]     |                            this argument influences the type of `Some`
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/14731909456ca628a194900c35659dfdcb359e77/library/core/src/option.rs:608:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> website.rs:455:28
[INFO] [stdout]     |
[INFO] [stdout] 455 | ...                   http_redirect_code: Some(IntValue(404)),
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^ expected `u16`, found `Option<IntValue>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected type `u16`
[INFO] [stdout]                found enum `std::option::Option<xml::IntValue>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `garage_model::bucket_table::Redirect` has no field named `replace_prefix`
[INFO] [stdout]    --> website.rs:456:8
[INFO] [stdout]     |
[INFO] [stdout] 456 | ...                   replace_prefix: None,
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 456 |                             replace_key_prefix: None,
[INFO] [stdout]     |                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `garage_model::bucket_table::Redirect` has no field named `replace_full`
[INFO] [stdout]    --> website.rs:457:8
[INFO] [stdout]     |
[INFO] [stdout] 457 | ...                   replace_full: Some(Value("missing".to_owned())),
[INFO] [stdout]     |                       ^^^^^^^^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 457 -                             replace_full: Some(Value("missing".to_owned())),
[INFO] [stdout] 457 +                             replace_key: Some(Value("missing".to_owned())),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0308, E0560, E0659.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0308`.
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> error.rs:26:17
[INFO] [stdout]    |
[INFO] [stdout] 26 | #[derive(Debug, Error)]
[INFO] [stdout]    |                 ^----
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Error` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_std_error_Error_FOR_Error`
[INFO] [stdout] 27 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Error` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Error` may come from an old version of the `err_derive` crate, try updating your dependency with `cargo update -p err_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> error.rs:26:17
[INFO] [stdout]    |
[INFO] [stdout] 26 | #[derive(Debug, Error)]
[INFO] [stdout]    |                 ^----
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Display` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_core_fmt_Display_FOR_Error`
[INFO] [stdout] 27 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Error` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Error` may come from an old version of the `err_derive` crate, try updating your dependency with `cargo update -p err_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> error.rs:26:17
[INFO] [stdout]    |
[INFO] [stdout] 26 | #[derive(Debug, Error)]
[INFO] [stdout]    |                 ^----
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `From` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_core_convert_From_CommonError_FOR_Error`
[INFO] [stdout] 27 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout] ...
[INFO] [stdout] 30 |     Common(#[error(source)] CommonError),
[INFO] [stdout]    |                             ----------- `CommonError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Error` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Error` may come from an old version of the `err_derive` crate, try updating your dependency with `cargo update -p err_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> error.rs:26:17
[INFO] [stdout]    |
[INFO] [stdout] 26 | #[derive(Debug, Error)]
[INFO] [stdout]    |                 ^----
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `From` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_core_convert_From_std_str_Utf8Error_FOR_Error`
[INFO] [stdout] 27 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout] ...
[INFO] [stdout] 65 |     InvalidUtf8Str(#[error(source)] std::str::Utf8Error),
[INFO] [stdout]    |                                     ------------------- `Utf8Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Error` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Error` may come from an old version of the `err_derive` crate, try updating your dependency with `cargo update -p err_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> error.rs:26:17
[INFO] [stdout]    |
[INFO] [stdout] 26 | #[derive(Debug, Error)]
[INFO] [stdout]    |                 ^----
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `From` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_core_convert_From_std_string_FromUtf8Error_FOR_Error`
[INFO] [stdout] 27 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout] ...
[INFO] [stdout] 69 |     InvalidUtf8String(#[error(source)] std::string::FromUtf8Error),
[INFO] [stdout]    |                                        -------------------------- `FromUtf8Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Error` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Error` may come from an old version of the `err_derive` crate, try updating your dependency with `cargo update -p err_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> error.rs:26:17
[INFO] [stdout]    |
[INFO] [stdout] 26 | #[derive(Debug, Error)]
[INFO] [stdout]    |                 ^----
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `From` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_core_convert_From_http_range_HttpRangeParseError_u64_FOR_Error`
[INFO] [stdout] 27 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout] ...
[INFO] [stdout] 77 |     InvalidRange(#[error(from)] (http_range::HttpRangeParseError, u64)),
[INFO] [stdout]    |                                  ------------------------------- `HttpRangeParseError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Error` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Error` may come from an old version of the `err_derive` crate, try updating your dependency with `cargo update -p err_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `garage_api_s3` (lib test) due to 15 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "188c26d835d494cec7fda211eb1e4fdf8f93d1d479fc1efaff4e272947acb990", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "188c26d835d494cec7fda211eb1e4fdf8f93d1d479fc1efaff4e272947acb990", kill_on_drop: false }`
[INFO] [stdout] 188c26d835d494cec7fda211eb1e4fdf8f93d1d479fc1efaff4e272947acb990
