[INFO] fetching crate ss-trees 0.1.1... [INFO] checking ss-trees-0.1.1 against master#3aedcf06b73fc36feeebca3d579e1d2a6c40acc5 for pr-65819 [INFO] extracting crate ss-trees 0.1.1 into /workspace/builds/worker-8/source [INFO] validating manifest of crates.io crate ss-trees 0.1.1 on toolchain 3aedcf06b73fc36feeebca3d579e1d2a6c40acc5 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+3aedcf06b73fc36feeebca3d579e1d2a6c40acc5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate ss-trees 0.1.1 [INFO] finished tweaking crates.io crate ss-trees 0.1.1 [INFO] tweaked toml for crates.io crate ss-trees 0.1.1 written to /workspace/builds/worker-8/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+3aedcf06b73fc36feeebca3d579e1d2a6c40acc5" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+3aedcf06b73fc36feeebca3d579e1d2a6c40acc5" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/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" "rustops/crates-build-env@sha256:c46a2d1a26fb48b37929c74ca49dd9409f2375a0a3bdb8fe07617f3ffccaa889" "/opt/rustwide/cargo-home/bin/cargo" "+3aedcf06b73fc36feeebca3d579e1d2a6c40acc5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 57c33a916b898b2af46cfe9bf57a7e844a35ebee7fa50979b19606ef9e92f5c6 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "57c33a916b898b2af46cfe9bf57a7e844a35ebee7fa50979b19606ef9e92f5c6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "57c33a916b898b2af46cfe9bf57a7e844a35ebee7fa50979b19606ef9e92f5c6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "57c33a916b898b2af46cfe9bf57a7e844a35ebee7fa50979b19606ef9e92f5c6", kill_on_drop: false }` [INFO] [stdout] 57c33a916b898b2af46cfe9bf57a7e844a35ebee7fa50979b19606ef9e92f5c6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:c46a2d1a26fb48b37929c74ca49dd9409f2375a0a3bdb8fe07617f3ffccaa889" "/opt/rustwide/cargo-home/bin/cargo" "+3aedcf06b73fc36feeebca3d579e1d2a6c40acc5" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 98586c3619cc90fc97fd63862972991dd18737f6545e05a69df6976e52d02814 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "98586c3619cc90fc97fd63862972991dd18737f6545e05a69df6976e52d02814", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.26 [INFO] [stderr] Compiling unicode-xid v0.2.1 [INFO] [stderr] Compiling syn v1.0.69 [INFO] [stderr] Compiling libc v0.2.93 [INFO] [stderr] Compiling wasm-bindgen-shared v0.2.73 [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Compiling maybe-uninit v2.0.0 [INFO] [stderr] Compiling bumpalo v3.6.1 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Checking scopeguard v0.3.3 [INFO] [stderr] Compiling wasm-bindgen v0.2.73 [INFO] [stderr] Compiling serde_derive v1.0.125 [INFO] [stderr] Compiling serde v1.0.125 [INFO] [stderr] Compiling ryu v1.0.5 [INFO] [stderr] Compiling rand_pcg v0.1.2 [INFO] [stderr] Compiling rand_chacha v0.1.1 [INFO] [stderr] Compiling rand v0.6.5 [INFO] [stderr] Checking rand_core v0.3.1 [INFO] [stderr] Checking lock_api v0.1.5 [INFO] [stderr] Checking itertools v0.8.2 [INFO] [stderr] Checking rand_isaac v0.1.1 [INFO] [stderr] Checking rand_xorshift v0.1.1 [INFO] [stderr] Checking rand_hc v0.1.0 [INFO] [stderr] Compiling log v0.4.14 [INFO] [stderr] Compiling parking_lot_core v0.4.0 [INFO] [stderr] Checking smallvec v0.6.14 [INFO] [stderr] Compiling quote v1.0.9 [INFO] [stderr] Checking rand_os v0.1.3 [INFO] [stderr] Checking parking_lot v0.7.1 [INFO] [stderr] Checking once_cell v0.1.8 [INFO] [stderr] Checking cached v0.8.1 [INFO] [stderr] Compiling wasm-bindgen-backend v0.2.73 [INFO] [stderr] Compiling wasm-bindgen-macro-support v0.2.73 [INFO] [stderr] Compiling wasm-bindgen-macro v0.2.73 [INFO] [stderr] Checking js-sys v0.3.50 [INFO] [stderr] Checking web-sys v0.3.50 [INFO] [stderr] Checking serde_json v1.0.64 [INFO] [stderr] Checking ss-web-utils v0.1.1 [INFO] [stderr] Checking ss-trees v0.1.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:65:11 [INFO] [stdout] | [INFO] [stdout] 65 | api: &TreeApi, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:177:34 [INFO] [stdout] | [INFO] [stdout] 177 | pub fn get_meta(&self, api: &TreeApi) -> M { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:245:23 [INFO] [stdout] | [INFO] [stdout] 245 | pub fn from(api: &TreeApi, parent: &M, new: ITree) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:269:35 [INFO] [stdout] | [INFO] [stdout] 269 | pub fn unchanged(&self, api: &TreeApi, other: &ITree) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:276:36 [INFO] [stdout] | [INFO] [stdout] 276 | pub fn recyclable(&self, api: &TreeApi, other: &ITree) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:283:34 [INFO] [stdout] | [INFO] [stdout] 283 | pub fn sync(&mut self, api: &TreeApi, parent: &M, new: ITree) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:328:35 [INFO] [stdout] | [INFO] [stdout] 328 | pub fn unchanged(&self, api: &TreeApi, other: &ILeaf) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:331:36 [INFO] [stdout] | [INFO] [stdout] 331 | pub fn recyclable(&self, api: &TreeApi, other: &ILeaf) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:334:34 [INFO] [stdout] | [INFO] [stdout] 334 | pub fn sync(&mut self, api: &TreeApi, parent: &M, new: ILeaf) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:354:35 [INFO] [stdout] | [INFO] [stdout] 354 | pub fn unchanged(&self, api: &TreeApi, other: &INode) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:357:36 [INFO] [stdout] | [INFO] [stdout] 357 | pub fn recyclable(&self, api: &TreeApi, other: &INode) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:360:34 [INFO] [stdout] | [INFO] [stdout] 360 | pub fn sync(&mut self, api: &TreeApi, parent: &M, new: INode) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:454:35 [INFO] [stdout] | [INFO] [stdout] 454 | pub fn unchanged(&self, api: &TreeApi, other: &IChildren) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:464:36 [INFO] [stdout] | [INFO] [stdout] 464 | pub fn recyclable(&self, api: &TreeApi, other: &IChildren) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:474:34 [INFO] [stdout] | [INFO] [stdout] 474 | pub fn sync(&mut self, api: &TreeApi, parent: &M, new: IChildren) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:701:45 [INFO] [stdout] | [INFO] [stdout] 701 | pub fn create_tree(api: &TreeApi, parent: &M, new: ITree) -> STree [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/map.rs:62:75 [INFO] [stdout] | [INFO] [stdout] 62 | pub fn unchanged(&self, values: &IMap, api: &IMapLogic) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn IMapLogic` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/map.rs:89:87 [INFO] [stdout] | [INFO] [stdout] 89 | pub fn sync(&mut self, attached: &N, values: IMap, api: &IMapLogic) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn IMapLogic` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:65:11 [INFO] [stdout] | [INFO] [stdout] 65 | api: &TreeApi, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:177:34 [INFO] [stdout] | [INFO] [stdout] 177 | pub fn get_meta(&self, api: &TreeApi) -> M { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:245:23 [INFO] [stdout] | [INFO] [stdout] 245 | pub fn from(api: &TreeApi, parent: &M, new: ITree) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:269:35 [INFO] [stdout] | [INFO] [stdout] 269 | pub fn unchanged(&self, api: &TreeApi, other: &ITree) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:276:36 [INFO] [stdout] | [INFO] [stdout] 276 | pub fn recyclable(&self, api: &TreeApi, other: &ITree) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:283:34 [INFO] [stdout] | [INFO] [stdout] 283 | pub fn sync(&mut self, api: &TreeApi, parent: &M, new: ITree) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:328:35 [INFO] [stdout] | [INFO] [stdout] 328 | pub fn unchanged(&self, api: &TreeApi, other: &ILeaf) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:331:36 [INFO] [stdout] | [INFO] [stdout] 331 | pub fn recyclable(&self, api: &TreeApi, other: &ILeaf) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:334:34 [INFO] [stdout] | [INFO] [stdout] 334 | pub fn sync(&mut self, api: &TreeApi, parent: &M, new: ILeaf) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:354:35 [INFO] [stdout] | [INFO] [stdout] 354 | pub fn unchanged(&self, api: &TreeApi, other: &INode) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:357:36 [INFO] [stdout] | [INFO] [stdout] 357 | pub fn recyclable(&self, api: &TreeApi, other: &INode) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:360:34 [INFO] [stdout] | [INFO] [stdout] 360 | pub fn sync(&mut self, api: &TreeApi, parent: &M, new: INode) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:454:35 [INFO] [stdout] | [INFO] [stdout] 454 | pub fn unchanged(&self, api: &TreeApi, other: &IChildren) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:464:36 [INFO] [stdout] | [INFO] [stdout] 464 | pub fn recyclable(&self, api: &TreeApi, other: &IChildren) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:474:34 [INFO] [stdout] | [INFO] [stdout] 474 | pub fn sync(&mut self, api: &TreeApi, parent: &M, new: IChildren) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tree.rs:701:45 [INFO] [stdout] | [INFO] [stdout] 701 | pub fn create_tree(api: &TreeApi, parent: &M, new: ITree) -> STree [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TreeApi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/map.rs:62:75 [INFO] [stdout] | [INFO] [stdout] 62 | pub fn unchanged(&self, values: &IMap, api: &IMapLogic) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn IMapLogic` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/map.rs:89:87 [INFO] [stdout] | [INFO] [stdout] 89 | pub fn sync(&mut self, attached: &N, values: IMap, api: &IMapLogic) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn IMapLogic` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0635]: unknown feature `vec_remove_item` [INFO] [stdout] --> src/lib.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | #![feature(vec_remove_item)] [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to previous error; 18 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0635`. [INFO] [stdout] [INFO] [stderr] error: could not compile `ss-trees` [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error[E0635]: unknown feature `vec_remove_item` [INFO] [stdout] --> src/lib.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | #![feature(vec_remove_item)] [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to previous error; 18 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0635`. [INFO] [stdout] [INFO] [stderr] error: build failed [INFO] running `Command { std: "docker" "inspect" "98586c3619cc90fc97fd63862972991dd18737f6545e05a69df6976e52d02814", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "98586c3619cc90fc97fd63862972991dd18737f6545e05a69df6976e52d02814", kill_on_drop: false }` [INFO] [stdout] 98586c3619cc90fc97fd63862972991dd18737f6545e05a69df6976e52d02814