[INFO] fetching crate romp 0.5.2... [INFO] testing romp-0.5.2 against 1.86.0 for beta-1.87-1 [INFO] extracting crate romp 0.5.2 into /workspace/builds/worker-7-tc1/source [INFO] validating manifest of crates.io crate romp 0.5.2 on toolchain 1.86.0 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.86.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate romp 0.5.2 [INFO] finished tweaking crates.io crate romp 0.5.2 [INFO] tweaked toml for crates.io crate romp 0.5.2 written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] crate crates.io crate romp 0.5.2 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.86.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded tokio-reactor v0.1.11 [INFO] [stderr] Downloaded log4rs v0.8.3 [INFO] [stderr] Downloaded base16 v0.2.1 [INFO] [stderr] Downloaded tokio-timer v0.2.12 [INFO] [stderr] Downloaded totems v0.2.7 [INFO] [stderr] Downloaded sha2 v0.8.1 [INFO] [stderr] Downloaded tokio-executor v0.1.9 [INFO] [stderr] Downloaded signal-hook v0.1.13 [INFO] [stderr] Downloaded tokio-threadpool v0.1.17 [INFO] [stderr] Downloaded sanename v0.1.1 [INFO] [stderr] Downloaded serde-value v0.5.3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:b0b074c097205a61b89e8ad263052f976b2b332c4dc5f02aef1fe52501660d6e" "/opt/rustwide/cargo-home/bin/cargo" "+1.86.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] fef95de1f334e4faffad50c6a1b7c78ec37a7ad1cff07f3c293c0b23984690fe [INFO] running `Command { std: "docker" "start" "-a" "fef95de1f334e4faffad50c6a1b7c78ec37a7ad1cff07f3c293c0b23984690fe", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "fef95de1f334e4faffad50c6a1b7c78ec37a7ad1cff07f3c293c0b23984690fe", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "fef95de1f334e4faffad50c6a1b7c78ec37a7ad1cff07f3c293c0b23984690fe", kill_on_drop: false }` [INFO] [stdout] fef95de1f334e4faffad50c6a1b7c78ec37a7ad1cff07f3c293c0b23984690fe [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:b0b074c097205a61b89e8ad263052f976b2b332c4dc5f02aef1fe52501660d6e" "/opt/rustwide/cargo-home/bin/cargo" "+1.86.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c5fa8653eb398477577dfa48df08ea16c79de6039c0e1aac88c4ddf37d77cc5a [INFO] running `Command { std: "docker" "start" "-a" "c5fa8653eb398477577dfa48df08ea16c79de6039c0e1aac88c4ddf37d77cc5a", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.66 [INFO] [stderr] Compiling cfg-if v0.1.10 [INFO] [stderr] Compiling semver-parser v0.7.0 [INFO] [stderr] Compiling serde v1.0.104 [INFO] [stderr] Compiling log v0.4.8 [INFO] [stderr] Compiling maybe-uninit v2.0.0 [INFO] [stderr] Compiling byteorder v1.3.2 [INFO] [stderr] Compiling futures v0.1.29 [INFO] [stderr] Compiling scopeguard v1.0.0 [INFO] [stderr] Compiling slab v0.4.2 [INFO] [stderr] Compiling autocfg v0.1.7 [INFO] [stderr] Compiling autocfg v1.0.0 [INFO] [stderr] Compiling fnv v1.0.6 [INFO] [stderr] Compiling typenum v1.11.2 [INFO] [stderr] Compiling proc-macro2 v1.0.8 [INFO] [stderr] Compiling unicode-xid v0.2.0 [INFO] [stderr] Compiling crossbeam-utils v0.6.6 [INFO] [stderr] Compiling lock_api v0.3.3 [INFO] [stderr] Compiling crc32fast v1.2.0 [INFO] [stderr] Compiling ryu v1.0.2 [INFO] [stderr] Compiling syn v1.0.14 [INFO] [stderr] Compiling semver v0.9.0 [INFO] [stderr] Compiling linked-hash-map v0.5.2 [INFO] [stderr] Compiling adler32 v1.0.4 [INFO] [stderr] Compiling smallvec v0.6.13 [INFO] [stderr] Compiling num-traits v0.2.11 [INFO] [stderr] Compiling num-integer v0.1.42 [INFO] [stderr] Compiling crossbeam-utils v0.7.0 [INFO] [stderr] Compiling crossbeam-epoch v0.8.0 [INFO] [stderr] Compiling crossbeam-queue v0.1.2 [INFO] [stderr] Compiling rustc_version v0.2.3 [INFO] [stderr] Compiling arc-swap v0.4.4 [INFO] [stderr] Compiling byte-tools v0.3.1 [INFO] [stderr] Compiling traitobject v0.1.0 [INFO] [stderr] Compiling stable_deref_trait v1.1.1 [INFO] [stderr] Compiling unsafe-any v0.4.2 [INFO] [stderr] Compiling owning_ref v0.3.3 [INFO] [stderr] Compiling block-padding v0.1.5 [INFO] [stderr] Compiling iovec v0.1.4 [INFO] [stderr] Compiling parking_lot_core v0.6.2 [INFO] [stderr] Compiling parking_lot v0.9.0 [INFO] [stderr] Compiling net2 v0.2.33 [INFO] [stderr] Compiling num_cpus v1.12.0 [INFO] [stderr] Compiling memoffset v0.5.3 [INFO] [stderr] Compiling bytes v0.4.12 [INFO] [stderr] Compiling tokio-executor v0.1.9 [INFO] [stderr] Compiling tokio-sync v0.1.7 [INFO] [stderr] Compiling quote v1.0.2 [INFO] [stderr] Compiling rand v0.4.6 [INFO] [stderr] Compiling signal-hook-registry v1.2.0 [INFO] [stderr] Compiling generic-array v0.12.3 [INFO] [stderr] Compiling time v0.1.42 [INFO] [stderr] Compiling yaml-rust v0.4.3 [INFO] [stderr] Compiling miniz_oxide v0.3.5 [INFO] [stderr] Compiling quick-error v1.2.3 [INFO] [stderr] Compiling itoa v0.4.5 [INFO] [stderr] Compiling crossbeam-deque v0.7.2 [INFO] [stderr] Compiling dtoa v0.4.4 [INFO] [stderr] Compiling ordered-float v1.0.2 [INFO] [stderr] Compiling digest v0.8.1 [INFO] [stderr] Compiling block-buffer v0.7.3 [INFO] [stderr] Compiling humantime v1.3.0 [INFO] [stderr] Compiling signal-hook v0.1.13 [INFO] [stderr] Compiling tokio-current-thread v0.1.6 [INFO] [stderr] Compiling parking_lot_core v0.2.14 [INFO] [stderr] Compiling tokio-timer v0.2.12 [INFO] [stderr] Compiling thread-id v3.3.0 [INFO] [stderr] Compiling typemap v0.3.3 [INFO] [stderr] Compiling log-mdc v0.1.0 [INFO] [stderr] Compiling opaque-debug v0.2.3 [INFO] [stderr] Compiling chrono v0.4.10 [INFO] [stderr] Compiling arc-swap v0.3.11 [INFO] [stderr] Compiling flate2 v1.0.13 [INFO] [stderr] Compiling antidote v1.0.0 [INFO] [stderr] Compiling fake-simd v0.1.2 [INFO] [stderr] Compiling parking_lot v0.4.8 [INFO] [stderr] Compiling sha2 v0.8.1 [INFO] [stderr] Compiling base64 v0.11.0 [INFO] [stderr] Compiling sha1 v0.6.0 [INFO] [stderr] Compiling totems v0.2.7 [INFO] [stderr] Compiling base16 v0.2.1 [INFO] [stderr] Compiling sanename v0.1.1 [INFO] [stderr] Compiling chashmap v2.2.2 [INFO] [stderr] Compiling serde_json v1.0.45 [INFO] [stderr] Compiling serde-value v0.5.3 [INFO] [stderr] Compiling serde_yaml v0.8.11 [INFO] [stderr] Compiling toml v0.5.6 [INFO] [stderr] Compiling tokio-io v0.1.12 [INFO] [stderr] Compiling mio v0.6.21 [INFO] [stderr] Compiling tokio-threadpool v0.1.17 [INFO] [stderr] Compiling serde_derive v1.0.104 [INFO] [stderr] Compiling tokio-codec v0.1.1 [INFO] [stderr] Compiling tokio-fs v0.1.6 [INFO] [stderr] Compiling tokio-reactor v0.1.11 [INFO] [stderr] Compiling mio-uds v0.6.7 [INFO] [stderr] Compiling tokio-uds v0.2.5 [INFO] [stderr] Compiling tokio-tcp v0.1.3 [INFO] [stderr] Compiling tokio-udp v0.1.5 [INFO] [stderr] Compiling tokio-signal v0.2.7 [INFO] [stderr] Compiling tokio v0.1.22 [INFO] [stderr] Compiling log4rs v0.8.3 [INFO] [stderr] Compiling romp v0.5.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/config/config.rs:15:10 [INFO] [stdout] | [INFO] [stdout] 15 | #[derive(Deserialize, Debug)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/config/config.rs:192:10 [INFO] [stdout] | [INFO] [stdout] 192 | #[derive(Deserialize, Debug)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/config/config.rs:241:10 [INFO] [stdout] | [INFO] [stdout] 241 | #[derive(Deserialize, Debug)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/config/user.rs:14:10 [INFO] [stdout] | [INFO] [stdout] 14 | #[derive(Deserialize, Debug)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/workflow/filter/http.rs:45:29 [INFO] [stdout] | [INFO] [stdout] 45 | ... /// All HTTP errors are fatal [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 46 | ... fatal: true [INFO] [stdout] | ----------- rustdoc does not generate documentation for expression fields [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/session/reader.rs:183:13 [INFO] [stdout] | [INFO] [stdout] 183 | let mut message = self.parser.take_message(Ownership::Session); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `session_id` is never read [INFO] [stdout] --> src/session/reader.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 32 | pub struct Reader { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 33 | session: Arc>, [INFO] [stdout] 34 | session_id: usize, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [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] --> src/config/config.rs:15:10 [INFO] [stdout] | [INFO] [stdout] 15 | #[derive(Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ServerConfig` [INFO] [stdout] 16 | #[serde(default)] [INFO] [stdout] 17 | pub struct ServerConfig { [INFO] [stdout] | ------------ `ServerConfig` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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] --> src/config/config.rs:192:10 [INFO] [stdout] | [INFO] [stdout] 192 | #[derive(Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Destination` [INFO] [stdout] 193 | #[serde(default)] [INFO] [stdout] 194 | pub struct Destination { [INFO] [stdout] | ----------- `Destination` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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] --> src/config/config.rs:241:10 [INFO] [stdout] | [INFO] [stdout] 241 | #[derive(Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Downstream` [INFO] [stdout] 242 | #[serde(default)] [INFO] [stdout] 243 | pub struct Downstream { [INFO] [stdout] | ---------- `Downstream` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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] --> src/config/user.rs:14:10 [INFO] [stdout] | [INFO] [stdout] 14 | #[derive(Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_UserConfig` [INFO] [stdout] 15 | #[serde(default)] [INFO] [stdout] 16 | pub struct UserConfig { [INFO] [stdout] | ---------- `UserConfig` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing [INFO] [stdout] --> src/message/serializer.rs:83:21 [INFO] [stdout] | [INFO] [stdout] 83 | drop(message); [INFO] [stdout] | ^^^^^-------^ [INFO] [stdout] | | [INFO] [stdout] | argument has type `&SessionMessage` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dropping_references)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the expression or result [INFO] [stdout] | [INFO] [stdout] 83 - drop(message); [INFO] [stdout] 83 + let _ = message; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::string::String::split_off` that must be used [INFO] [stdout] --> src/workflow/filter/echo.rs:41:29 [INFO] [stdout] | [INFO] [stdout] 41 | ... reply_destination.split_off(destination_name.len() - 3); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: use `.truncate()` if you don't need the other half [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 41 | let _ = reply_destination.split_off(destination_name.len() - 3); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::string::String::split_off` that must be used [INFO] [stdout] --> src/workflow/filter/resend.rs:40:29 [INFO] [stdout] | [INFO] [stdout] 40 | ... reply_destination.split_off(destination_name.len() - 3); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: use `.truncate()` if you don't need the other half [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 40 | let _ = reply_destination.split_off(destination_name.len() - 3); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/workflow/http_router.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | CHAIN.push((filter, DEFAULT_INSERT_POINT)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/workflow/http_router.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | CHAIN.push((filter, at)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/workflow/http_router.rs:91:15 [INFO] [stdout] | [INFO] [stdout] 91 | while CHAIN.len() > 0 { [INFO] [stdout] | ^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/workflow/http_router.rs:92:26 [INFO] [stdout] | [INFO] [stdout] 92 | let filter = CHAIN.remove(CHAIN.len() - 1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/workflow/http_router.rs:92:39 [INFO] [stdout] | [INFO] [stdout] 92 | let filter = CHAIN.remove(CHAIN.len() - 1); [INFO] [stdout] | ^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/workflow/router.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | CHAIN.push((filter, DEFAULT_INSERT_POINT)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/workflow/router.rs:65:9 [INFO] [stdout] | [INFO] [stdout] 65 | CHAIN.push((filter, at)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/workflow/router.rs:106:15 [INFO] [stdout] | [INFO] [stdout] 106 | while CHAIN.len() > 0 { [INFO] [stdout] | ^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/workflow/router.rs:107:26 [INFO] [stdout] | [INFO] [stdout] 107 | let filter = CHAIN.remove(CHAIN.len() - 1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/workflow/router.rs:107:39 [INFO] [stdout] | [INFO] [stdout] 107 | let filter = CHAIN.remove(CHAIN.len() - 1); [INFO] [stdout] | ^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 18.57s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: traitobject v0.1.0, typemap v0.3.3 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2` [INFO] running `Command { std: "docker" "inspect" "c5fa8653eb398477577dfa48df08ea16c79de6039c0e1aac88c4ddf37d77cc5a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c5fa8653eb398477577dfa48df08ea16c79de6039c0e1aac88c4ddf37d77cc5a", kill_on_drop: false }` [INFO] [stdout] c5fa8653eb398477577dfa48df08ea16c79de6039c0e1aac88c4ddf37d77cc5a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:b0b074c097205a61b89e8ad263052f976b2b332c4dc5f02aef1fe52501660d6e" "/opt/rustwide/cargo-home/bin/cargo" "+1.86.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] dad85894e128a4ce59e8a975ad9d69b91d2a2ea3cbee1b2219042737fbbf4718 [INFO] running `Command { std: "docker" "start" "-a" "dad85894e128a4ce59e8a975ad9d69b91d2a2ea3cbee1b2219042737fbbf4718", kill_on_drop: false }` [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/config/config.rs:15:10 [INFO] [stdout] | [INFO] [stdout] 15 | #[derive(Deserialize, Debug)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/config/config.rs:192:10 [INFO] [stdout] | [INFO] [stdout] 192 | #[derive(Deserialize, Debug)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/config/config.rs:241:10 [INFO] [stdout] | [INFO] [stdout] 241 | #[derive(Deserialize, Debug)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/config/user.rs:14:10 [INFO] [stdout] | [INFO] [stdout] 14 | #[derive(Deserialize, Debug)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/workflow/filter/http.rs:45:29 [INFO] [stdout] | [INFO] [stdout] 45 | ... /// All HTTP errors are fatal [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 46 | ... fatal: true [INFO] [stdout] | ----------- rustdoc does not generate documentation for expression fields [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/session/reader.rs:183:13 [INFO] [stdout] | [INFO] [stdout] 183 | let mut message = self.parser.take_message(Ownership::Session); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `session_id` is never read [INFO] [stdout] --> src/session/reader.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 32 | pub struct Reader { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 33 | session: Arc>, [INFO] [stdout] 34 | session_id: usize, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [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] --> src/config/config.rs:15:10 [INFO] [stdout] | [INFO] [stdout] 15 | #[derive(Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ServerConfig` [INFO] [stdout] 16 | #[serde(default)] [INFO] [stdout] 17 | pub struct ServerConfig { [INFO] [stdout] | ------------ `ServerConfig` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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] --> src/config/config.rs:192:10 [INFO] [stdout] | [INFO] [stdout] 192 | #[derive(Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Destination` [INFO] [stdout] 193 | #[serde(default)] [INFO] [stdout] 194 | pub struct Destination { [INFO] [stdout] | ----------- `Destination` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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] --> src/config/config.rs:241:10 [INFO] [stdout] | [INFO] [stdout] 241 | #[derive(Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Downstream` [INFO] [stdout] 242 | #[serde(default)] [INFO] [stdout] 243 | pub struct Downstream { [INFO] [stdout] | ---------- `Downstream` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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] --> src/config/user.rs:14:10 [INFO] [stdout] | [INFO] [stdout] 14 | #[derive(Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_UserConfig` [INFO] [stdout] 15 | #[serde(default)] [INFO] [stdout] 16 | pub struct UserConfig { [INFO] [stdout] | ---------- `UserConfig` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing [INFO] [stdout] --> src/message/serializer.rs:83:21 [INFO] [stdout] | [INFO] [stdout] 83 | drop(message); [INFO] [stdout] | ^^^^^-------^ [INFO] [stdout] | | [INFO] [stdout] | argument has type `&SessionMessage` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dropping_references)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the expression or result [INFO] [stdout] | [INFO] [stdout] 83 - drop(message); [INFO] [stdout] 83 + let _ = message; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::string::String::split_off` that must be used [INFO] [stdout] --> src/workflow/filter/echo.rs:41:29 [INFO] [stdout] | [INFO] [stdout] 41 | ... reply_destination.split_off(destination_name.len() - 3); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: use `.truncate()` if you don't need the other half [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 41 | let _ = reply_destination.split_off(destination_name.len() - 3); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::string::String::split_off` that must be used [INFO] [stdout] --> src/workflow/filter/resend.rs:40:29 [INFO] [stdout] | [INFO] [stdout] 40 | ... reply_destination.split_off(destination_name.len() - 3); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: use `.truncate()` if you don't need the other half [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 40 | let _ = reply_destination.split_off(destination_name.len() - 3); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/workflow/http_router.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | CHAIN.push((filter, DEFAULT_INSERT_POINT)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/workflow/http_router.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | CHAIN.push((filter, at)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/workflow/http_router.rs:91:15 [INFO] [stdout] | [INFO] [stdout] 91 | while CHAIN.len() > 0 { [INFO] [stdout] | ^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/workflow/http_router.rs:92:26 [INFO] [stdout] | [INFO] [stdout] 92 | let filter = CHAIN.remove(CHAIN.len() - 1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/workflow/http_router.rs:92:39 [INFO] [stdout] | [INFO] [stdout] 92 | let filter = CHAIN.remove(CHAIN.len() - 1); [INFO] [stdout] | ^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/workflow/router.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | CHAIN.push((filter, DEFAULT_INSERT_POINT)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/workflow/router.rs:65:9 [INFO] [stdout] | [INFO] [stdout] 65 | CHAIN.push((filter, at)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/workflow/router.rs:106:15 [INFO] [stdout] | [INFO] [stdout] 106 | while CHAIN.len() > 0 { [INFO] [stdout] | ^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/workflow/router.rs:107:26 [INFO] [stdout] | [INFO] [stdout] 107 | let filter = CHAIN.remove(CHAIN.len() - 1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling romp v0.5.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/workflow/router.rs:107:39 [INFO] [stdout] | [INFO] [stdout] 107 | let filter = CHAIN.remove(CHAIN.len() - 1); [INFO] [stdout] | ^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/config/config.rs:15:10 [INFO] [stdout] | [INFO] [stdout] 15 | #[derive(Deserialize, Debug)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/config/config.rs:192:10 [INFO] [stdout] | [INFO] [stdout] 192 | #[derive(Deserialize, Debug)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/config/config.rs:241:10 [INFO] [stdout] | [INFO] [stdout] 241 | #[derive(Deserialize, Debug)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/config/user.rs:14:10 [INFO] [stdout] | [INFO] [stdout] 14 | #[derive(Deserialize, Debug)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/workflow/filter/http.rs:45:29 [INFO] [stdout] | [INFO] [stdout] 45 | ... /// All HTTP errors are fatal [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 46 | ... fatal: true [INFO] [stdout] | ----------- rustdoc does not generate documentation for expression fields [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/session/reader.rs:183:13 [INFO] [stdout] | [INFO] [stdout] 183 | let mut message = self.parser.take_message(Ownership::Session); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `session_id` is never read [INFO] [stdout] --> src/session/reader.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 32 | pub struct Reader { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 33 | session: Arc>, [INFO] [stdout] 34 | session_id: usize, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [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] --> src/config/config.rs:15:10 [INFO] [stdout] | [INFO] [stdout] 15 | #[derive(Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ServerConfig` [INFO] [stdout] 16 | #[serde(default)] [INFO] [stdout] 17 | pub struct ServerConfig { [INFO] [stdout] | ------------ `ServerConfig` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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] --> src/config/config.rs:192:10 [INFO] [stdout] | [INFO] [stdout] 192 | #[derive(Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Destination` [INFO] [stdout] 193 | #[serde(default)] [INFO] [stdout] 194 | pub struct Destination { [INFO] [stdout] | ----------- `Destination` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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] --> src/config/config.rs:241:10 [INFO] [stdout] | [INFO] [stdout] 241 | #[derive(Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Downstream` [INFO] [stdout] 242 | #[serde(default)] [INFO] [stdout] 243 | pub struct Downstream { [INFO] [stdout] | ---------- `Downstream` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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] --> src/config/user.rs:14:10 [INFO] [stdout] | [INFO] [stdout] 14 | #[derive(Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_UserConfig` [INFO] [stdout] 15 | #[serde(default)] [INFO] [stdout] 16 | pub struct UserConfig { [INFO] [stdout] | ---------- `UserConfig` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing [INFO] [stdout] --> src/message/serializer.rs:83:21 [INFO] [stdout] | [INFO] [stdout] 83 | drop(message); [INFO] [stdout] | ^^^^^-------^ [INFO] [stdout] | | [INFO] [stdout] | argument has type `&mq::SessionMessage` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dropping_references)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the expression or result [INFO] [stdout] | [INFO] [stdout] 83 - drop(message); [INFO] [stdout] 83 + let _ = message; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::string::String::split_off` that must be used [INFO] [stdout] --> src/workflow/filter/echo.rs:41:29 [INFO] [stdout] | [INFO] [stdout] 41 | ... reply_destination.split_off(destination_name.len() - 3); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: use `.truncate()` if you don't need the other half [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 41 | let _ = reply_destination.split_off(destination_name.len() - 3); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::string::String::split_off` that must be used [INFO] [stdout] --> src/workflow/filter/resend.rs:40:29 [INFO] [stdout] | [INFO] [stdout] 40 | ... reply_destination.split_off(destination_name.len() - 3); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: use `.truncate()` if you don't need the other half [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 40 | let _ = reply_destination.split_off(destination_name.len() - 3); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/workflow/http_router.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | CHAIN.push((filter, DEFAULT_INSERT_POINT)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/workflow/http_router.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | CHAIN.push((filter, at)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/workflow/http_router.rs:91:15 [INFO] [stdout] | [INFO] [stdout] 91 | while CHAIN.len() > 0 { [INFO] [stdout] | ^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/workflow/http_router.rs:92:26 [INFO] [stdout] | [INFO] [stdout] 92 | let filter = CHAIN.remove(CHAIN.len() - 1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/workflow/http_router.rs:92:39 [INFO] [stdout] | [INFO] [stdout] 92 | let filter = CHAIN.remove(CHAIN.len() - 1); [INFO] [stdout] | ^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/workflow/router.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | CHAIN.push((filter, DEFAULT_INSERT_POINT)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/workflow/router.rs:65:9 [INFO] [stdout] | [INFO] [stdout] 65 | CHAIN.push((filter, at)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/workflow/router.rs:106:15 [INFO] [stdout] | [INFO] [stdout] 106 | while CHAIN.len() > 0 { [INFO] [stdout] | ^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/workflow/router.rs:107:26 [INFO] [stdout] | [INFO] [stdout] 107 | let filter = CHAIN.remove(CHAIN.len() - 1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/workflow/router.rs:107:39 [INFO] [stdout] | [INFO] [stdout] 107 | let filter = CHAIN.remove(CHAIN.len() - 1); [INFO] [stdout] | ^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 4.28s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: traitobject v0.1.0, typemap v0.3.3 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2` [INFO] running `Command { std: "docker" "inspect" "dad85894e128a4ce59e8a975ad9d69b91d2a2ea3cbee1b2219042737fbbf4718", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "dad85894e128a4ce59e8a975ad9d69b91d2a2ea3cbee1b2219042737fbbf4718", kill_on_drop: false }` [INFO] [stdout] dad85894e128a4ce59e8a975ad9d69b91d2a2ea3cbee1b2219042737fbbf4718 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:b0b074c097205a61b89e8ad263052f976b2b332c4dc5f02aef1fe52501660d6e" "/opt/rustwide/cargo-home/bin/cargo" "+1.86.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 5cd4ce2fcc80f346fbf32792011851fff28025c4ac29aeedecec13478f8c7f06 [INFO] running `Command { std: "docker" "start" "-a" "5cd4ce2fcc80f346fbf32792011851fff28025c4ac29aeedecec13478f8c7f06", kill_on_drop: false }` [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> src/config/config.rs:15:10 [INFO] [stderr] | [INFO] [stderr] 15 | #[derive(Deserialize, Debug)] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: no expected values for `feature` [INFO] [stderr] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stderr] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> src/config/config.rs:192:10 [INFO] [stderr] | [INFO] [stderr] 192 | #[derive(Deserialize, Debug)] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: no expected values for `feature` [INFO] [stderr] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stderr] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> src/config/config.rs:241:10 [INFO] [stderr] | [INFO] [stderr] 241 | #[derive(Deserialize, Debug)] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: no expected values for `feature` [INFO] [stderr] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stderr] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> src/config/user.rs:14:10 [INFO] [stderr] | [INFO] [stderr] 14 | #[derive(Deserialize, Debug)] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: no expected values for `feature` [INFO] [stderr] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stderr] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/workflow/filter/http.rs:45:29 [INFO] [stderr] | [INFO] [stderr] 45 | ... /// All HTTP errors are fatal [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 46 | ... fatal: true [INFO] [stderr] | ----------- rustdoc does not generate documentation for expression fields [INFO] [stderr] | [INFO] [stderr] = help: use `//` for a plain comment [INFO] [stderr] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/session/reader.rs:183:13 [INFO] [stderr] | [INFO] [stderr] 183 | let mut message = self.parser.take_message(Ownership::Session); [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: field `session_id` is never read [INFO] [stderr] --> src/session/reader.rs:34:5 [INFO] [stderr] | [INFO] [stderr] 32 | pub struct Reader { [INFO] [stderr] | ------ field in this struct [INFO] [stderr] 33 | session: Arc>, [INFO] [stderr] 34 | session_id: usize, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/config/config.rs:15:10 [INFO] [stderr] | [INFO] [stderr] 15 | #[derive(Deserialize, Debug)] [INFO] [stderr] | ^---------- [INFO] [stderr] | | [INFO] [stderr] | `Deserialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ServerConfig` [INFO] [stderr] 16 | #[serde(default)] [INFO] [stderr] 17 | pub struct ServerConfig { [INFO] [stderr] | ------------ `ServerConfig` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = 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] [stderr] = 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] [stderr] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/config/config.rs:192:10 [INFO] [stderr] | [INFO] [stderr] 192 | #[derive(Deserialize, Debug)] [INFO] [stderr] | ^---------- [INFO] [stderr] | | [INFO] [stderr] | `Deserialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Destination` [INFO] [stderr] 193 | #[serde(default)] [INFO] [stderr] 194 | pub struct Destination { [INFO] [stderr] | ----------- `Destination` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = 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] [stderr] = 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] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/config/config.rs:241:10 [INFO] [stderr] | [INFO] [stderr] 241 | #[derive(Deserialize, Debug)] [INFO] [stderr] | ^---------- [INFO] [stderr] | | [INFO] [stderr] | `Deserialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Downstream` [INFO] [stderr] 242 | #[serde(default)] [INFO] [stderr] 243 | pub struct Downstream { [INFO] [stderr] | ---------- `Downstream` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = 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] [stderr] = 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] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/config/user.rs:14:10 [INFO] [stderr] | [INFO] [stderr] 14 | #[derive(Deserialize, Debug)] [INFO] [stderr] | ^---------- [INFO] [stderr] | | [INFO] [stderr] | `Deserialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_UserConfig` [INFO] [stderr] 15 | #[serde(default)] [INFO] [stderr] 16 | pub struct UserConfig { [INFO] [stderr] | ---------- `UserConfig` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = 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] [stderr] = 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] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing [INFO] [stderr] --> src/message/serializer.rs:83:21 [INFO] [stderr] | [INFO] [stderr] 83 | drop(message); [INFO] [stderr] | ^^^^^-------^ [INFO] [stderr] | | [INFO] [stderr] | argument has type `&SessionMessage` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dropping_references)]` on by default [INFO] [stderr] help: use `let _ = ...` to ignore the expression or result [INFO] [stderr] | [INFO] [stderr] 83 - drop(message); [INFO] [stderr] 83 + let _ = message; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused return value of `std::string::String::split_off` that must be used [INFO] [stderr] --> src/workflow/filter/echo.rs:41:29 [INFO] [stderr] | [INFO] [stderr] 41 | ... reply_destination.split_off(destination_name.len() - 3); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: use `.truncate()` if you don't need the other half [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 41 | let _ = reply_destination.split_off(destination_name.len() - 3); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `std::string::String::split_off` that must be used [INFO] [stderr] --> src/workflow/filter/resend.rs:40:29 [INFO] [stderr] | [INFO] [stderr] 40 | ... reply_destination.split_off(destination_name.len() - 3); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: use `.truncate()` if you don't need the other half [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 40 | let _ = reply_destination.split_off(destination_name.len() - 3); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged [INFO] [stderr] --> src/workflow/http_router.rs:41:9 [INFO] [stderr] | [INFO] [stderr] 41 | CHAIN.push((filter, DEFAULT_INSERT_POINT)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stderr] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged [INFO] [stderr] --> src/workflow/http_router.rs:57:9 [INFO] [stderr] | [INFO] [stderr] 57 | CHAIN.push((filter, at)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/workflow/http_router.rs:91:15 [INFO] [stderr] | [INFO] [stderr] 91 | while CHAIN.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^ shared reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged [INFO] [stderr] --> src/workflow/http_router.rs:92:26 [INFO] [stderr] | [INFO] [stderr] 92 | let filter = CHAIN.remove(CHAIN.len() - 1); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/workflow/http_router.rs:92:39 [INFO] [stderr] | [INFO] [stderr] 92 | let filter = CHAIN.remove(CHAIN.len() - 1); [INFO] [stderr] | ^^^^^^^^^^^ shared reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged [INFO] [stderr] --> src/workflow/router.rs:49:9 [INFO] [stderr] | [INFO] [stderr] 49 | CHAIN.push((filter, DEFAULT_INSERT_POINT)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged [INFO] [stderr] --> src/workflow/router.rs:65:9 [INFO] [stderr] | [INFO] [stderr] 65 | CHAIN.push((filter, at)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/workflow/router.rs:106:15 [INFO] [stderr] | [INFO] [stderr] 106 | while CHAIN.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^ shared reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged [INFO] [stderr] --> src/workflow/router.rs:107:26 [INFO] [stderr] | [INFO] [stderr] 107 | let filter = CHAIN.remove(CHAIN.len() - 1); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/workflow/router.rs:107:39 [INFO] [stderr] | [INFO] [stderr] 107 | let filter = CHAIN.remove(CHAIN.len() - 1); [INFO] [stderr] | ^^^^^^^^^^^ shared reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stderr] [INFO] [stderr] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing [INFO] [stderr] --> src/message/serializer.rs:83:21 [INFO] [stderr] | [INFO] [stderr] 83 | drop(message); [INFO] [stderr] | ^^^^^-------^ [INFO] [stderr] | | [INFO] [stderr] | argument has type `&mq::SessionMessage` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dropping_references)]` on by default [INFO] [stderr] help: use `let _ = ...` to ignore the expression or result [INFO] [stderr] | [INFO] [stderr] 83 - drop(message); [INFO] [stderr] 83 + let _ = message; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: `romp` (lib) generated 24 warnings (run `cargo fix --lib -p romp` to apply 1 suggestion) [INFO] [stderr] warning: `romp` (lib test) generated 24 warnings (23 duplicates) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.15s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: traitobject v0.1.0, typemap v0.3.3 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2` [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/romp-83ab95bfb3a8d4a7) [INFO] [stdout] [INFO] [stdout] running 58 tests [INFO] [stderr] log4rs: error deserializing appender requests: Read-only file system (os error 30) [INFO] [stderr] log4rs: error deserializing appender file: Read-only file system (os error 30) [INFO] [stdout] 2025-04-16T01:38:27 INFO loading... [INFO] [stderr] log4rs: Reference to nonexistent appender: `requests` [INFO] [stdout] 2025-04-16T01:38:27 INFO nofile: 1048576 [INFO] [stderr] log4rs: Reference to nonexistent appender: `file` [INFO] [stderr] log4rs: Reference to nonexistent appender: `file` [INFO] [stdout] test body_parser::fixed_length::tests::test_fixed_length_happy ... ok [INFO] [stdout] test config::user::tests::test_init ... ok [INFO] [stdout] test message::serializer::tests::test_happy ... ok [INFO] [stdout] test message::stomp_message::tests::test_chunks ... ok [INFO] [stdout] test message::serializer::tests::test_happy_trailing_zero_as_chunk ... ok [INFO] [stdout] test message::serializer::tests::test_happy_no_body_ws_extra_hdr ... ok [INFO] [stdout] test message::serializer::tests::test_happy_multi_chunk_body ... ok [INFO] [stdout] test body_parser::text::tests::test_text_unhappy ... ok [INFO] [stdout] test message::serializer::tests::test_happy_no_body ... ok [INFO] [stdout] test config::config::tests::test_init ... ok [INFO] [stdout] test body_parser::fixed_length::tests::test_fixed_length_unhappy ... ok [INFO] [stdout] test body_parser::text::tests::test_text_happy ... ok [INFO] [stdout] test message::stomp_message::tests::test_clone_to_message ... ok [INFO] [stdout] 2025-04-16T01:38:27 WARN invalid command 'WIBBLE' [INFO] [stdout] test message::stomp_message::tests::test_extract_hdr ... ok [INFO] [stdout] test message::stomp_message::tests::test_init ... ok [INFO] [stdout] test message::stomp_message::tests::test_take ... ok [INFO] [stdout] test parser::tests::test_early_zero_termination_in_hdr_name ... ok [INFO] [stdout] test parser::tests::test_early_zero_termination_in_hdr_val ... ok [INFO] [stdout] 2025-04-16T01:38:27 WARN error creating pid file: 8 [INFO] [stdout] test parser::tests::test_happy ... ok [INFO] [stdout] 2025-04-16T01:38:27 INFO created destination memtop-c [INFO] [stdout] 2025-04-16T01:38:27 INFO created destination memtop-f [INFO] [stdout] 2025-04-16T01:38:27 INFO created destination expiry-q [INFO] [stdout] test parser::tests::test_happy_login ... 2025-04-16T01:38:27 INFO created destination memtop-b [INFO] [stdout] 2025-04-16T01:38:27 INFO created destination /queue/memq [INFO] [stdout] ok2025-04-16T01:38:27 INFO created destination memtop-a [INFO] [stdout] 2025-04-16T01:38:27 INFO created destination memq-1 [INFO] [stdout] 2025-04-16T01:38:27 INFO created destination ackme [INFO] [stdout] 2025-04-16T01:38:27 INFO created destination /xtomp/stat [INFO] [stdout] 2025-04-16T01:38:27 INFO created destination 3-flup [INFO] [stdout] [INFO] [stdout] test parser::tests::test_happy_body ... ok [INFO] [stdout] test parser::tests::test_heart_beats ... ok [INFO] [stdout] test parser::tests::test_invalid_command ... ok [INFO] [stdout] test parser::tests::test_telnet_line_endings_login ... ok [INFO] [stdout] test parser::tests::test_non_text_command ... ok [INFO] [stdout] test message::serializer::tests::test_happy_no_body_ws ... ok [INFO] [stdout] test session::filter::tests::test_numeric_gt ... ok [INFO] [stdout] test persist::mlog::tests::test_happy ... ok [INFO] [stdout] test session::filter::tests::test_numeric_equal ... ok [INFO] [stdout] test session::ecg::tests::test_parse_header_read_range ... ok [INFO] [stdout] test session::ecg::tests::test_parse_header ... ok [INFO] [stdout] test parser::tests::test_wrong_case_command ... ok [INFO] [stdout] test session::filter::tests::test_numeric_lt ... ok [INFO] [stdout] test session::filter::tests::test_string_equal ... ok [INFO] [stdout] test util::tests::test_rollover_gt ... ok [INFO] [stdout] test web_socket::ws_demunge::tests::test_firefox_media_header_partial ... ok [INFO] [stdout] test web_socket::ws_demunge::tests::test_happy_with_mask ... ok [INFO] [stdout] test web_socket::ws_demunge::tests::test_mask ... ok [INFO] [stdout] test web_socket::ws_demunge::tests::test_skip_ping_frames ... ok [INFO] [stdout] 2025-04-16T01:38:27 WARN publish before Destination is started, message queued [INFO] [stdout] 2025-04-16T01:38:27 WARN publish before Destination is started, message queued [INFO] [stdout] 2025-04-16T01:38:27 WARN publish before Destination is started, message queued [INFO] [stdout] 2025-04-16T01:38:27 WARN error creating pid file: 8 [INFO] [stdout] 2025-04-16T01:38:27 INFO created destination memtop-a [INFO] [stdout] 2025-04-16T01:38:27 INFO created destination memtop-b [INFO] [stdout] 2025-04-16T01:38:27 WARN publish before Destination is started, message queued [INFO] [stdout] 2025-04-16T01:38:27 WARN publish before Destination is started, message queued [INFO] [stdout] 2025-04-16T01:38:27 WARN publish before Destination is started, message queued [INFO] [stdout] 2025-04-16T01:38:27 WARN publish before Destination is started, message queued [INFO] [stdout] test web_socket::ws_headers::tests::test_neg_no_host ... ok [INFO] [stdout] test web_socket::ws_headers::tests::test_happy_path2 ... ok [INFO] [stdout] test web_socket::ws_headers::tests::test_happy_path ... ok [INFO] [stdout] test web_socket::ws_headers::tests::test_neg_no_upgrade ... ok [INFO] [stdout] test workflow::destination::destination::tests::test_no_min_delivery ... ok [INFO] [stdout] test workflow::console::ngin::tests::test ... ok [INFO] [stdout] test workflow::destination::server::tests::test_init ... ok [INFO] [stdout] test workflow::destination::destination::tests::test_ack ... ok [INFO] [stdout] test web_socket::ws_response::tests::test_frame_hdr ... ok [INFO] [stdout] test workflow::destination::server::tests::test_new_id ... ok [INFO] [stdout] test workflow::sha_auth::tests::test_auth_timeout ... ok [INFO] [stdout] test workflow::sha_auth::tests::test_happy_path ... ok [INFO] [stdout] 2025-04-16T01:38:27 WARN publish before Destination is started, message queued [INFO] [stdout] test message::stomp_message::tests::test_partial_eq ... ok [INFO] [stdout] test web_socket::ws_demunge::tests::test_firefox_media_header ... ok [INFO] [stdout] test parser::tests::test_early_zero_termination_in_cmd ... ok [INFO] [stdout] test web_socket::ws_demunge::tests::test_happy_noop_mask ... ok [INFO] [stdout] test parser::tests::test_http_get ... ok [INFO] [stdout] 2025-04-16T01:38:27 WARN publish before Destination is started, message queued [INFO] [stdout] test workflow::destination::destination::tests::test ... ok [INFO] [stdout] test session::stomp_session::tests::test_new ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 58 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s [INFO] [stdout] [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/romp-4565bb31d293be96) [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] Doc-tests romp [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test src/prelude.rs - prelude (line 7) ... ok [INFO] [stdout] test src/lib.rs - (line 12) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.67s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "5cd4ce2fcc80f346fbf32792011851fff28025c4ac29aeedecec13478f8c7f06", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5cd4ce2fcc80f346fbf32792011851fff28025c4ac29aeedecec13478f8c7f06", kill_on_drop: false }` [INFO] [stdout] 5cd4ce2fcc80f346fbf32792011851fff28025c4ac29aeedecec13478f8c7f06