[INFO] cloning repository https://github.com/almedso/canopen
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/almedso/canopen" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Falmedso%2Fcanopen", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Falmedso%2Fcanopen'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 822ee8f1ed9509d76ed37addb01b19eb54b2992f
[INFO] checking almedso/canopen against c60b92c03ca8a3b101eb9d57f51e2232690638c7 for pr-164148-crater-rollup
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Falmedso%2Fcanopen" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/almedso/canopen
[INFO] finished tweaking git repo https://github.com/almedso/canopen
[INFO] tweaked toml for git repo https://github.com/almedso/canopen written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/almedso/canopen on toolchain c60b92c03ca8a3b101eb9d57f51e2232690638c7
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c60b92c03ca8a3b101eb9d57f51e2232690638c7" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/almedso/canopen 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" "+c60b92c03ca8a3b101eb9d57f51e2232690638c7" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"`
[INFO] [stderr]   |
[INFO] [stderr]   = note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest
[INFO] [stderr]   = note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest
[INFO] [stderr]   = note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] ef579d3cc77be422f6de32b9527c8a5352dc7ecd5d34ac73a485d0c5e6aea07e
[INFO] running `Command { std: "docker" "start" "ef579d3cc77be422f6de32b9527c8a5352dc7ecd5d34ac73a485d0c5e6aea07e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ef579d3cc77be422f6de32b9527c8a5352dc7ecd5d34ac73a485d0c5e6aea07e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "ef579d3cc77be422f6de32b9527c8a5352dc7ecd5d34ac73a485d0c5e6aea07e" "/opt/rustwide/cargo-home/bin/cargo" "+c60b92c03ca8a3b101eb9d57f51e2232690638c7" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ef579d3cc77be422f6de32b9527c8a5352dc7ecd5d34ac73a485d0c5e6aea07e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "ef579d3cc77be422f6de32b9527c8a5352dc7ecd5d34ac73a485d0c5e6aea07e" "/opt/rustwide/cargo-home/bin/cargo" "+c60b92c03ca8a3b101eb9d57f51e2232690638c7" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"`
[INFO] [stderr]   |
[INFO] [stderr]   = note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest
[INFO] [stderr]   = note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest
[INFO] [stderr]   = note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
[INFO] [stderr]    Compiling proc-macro2 v1.0.40
[INFO] [stderr]    Compiling unicode-ident v1.0.1
[INFO] [stderr]    Compiling syn v1.0.98
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling futures-core v0.3.21
[INFO] [stderr]    Compiling futures-channel v0.3.21
[INFO] [stderr]     Checking futures-sink v0.3.21
[INFO] [stderr]     Checking encoding_index_tests v0.1.4
[INFO] [stderr]     Checking slab v0.4.6
[INFO] [stderr]     Checking parking_lot_core v0.9.3
[INFO] [stderr]    Compiling serde_derive v1.0.139
[INFO] [stderr]    Compiling backtrace v0.3.66
[INFO] [stderr]     Checking num-traits v0.2.15
[INFO] [stderr]     Checking bitflags v0.4.0
[INFO] [stderr]    Compiling failure_derive v0.1.8
[INFO] [stderr]    Compiling serde v1.0.139
[INFO] [stderr]     Checking gimli v0.26.1
[INFO] [stderr]     Checking miniz_oxide v0.5.3
[INFO] [stderr]     Checking nix v0.5.1
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking mio v0.8.4
[INFO] [stderr]     Checking socket2 v0.4.4
[INFO] [stderr]     Checking num_cpus v1.13.1
[INFO] [stderr]     Checking hashbrown v0.12.2
[INFO] [stderr]     Checking itertools v0.4.19
[INFO] [stderr]     Checking rustc-demangle v0.1.21
[INFO] [stderr]    Compiling serde_json v1.0.82
[INFO] [stderr]     Checking once_cell v1.13.1
[INFO] [stderr]     Checking hex v0.2.0
[INFO] [stderr]     Checking os_str_bytes v6.1.0
[INFO] [stderr]     Checking try_from v0.2.2
[INFO] [stderr]     Checking encoding-index-japanese v1.20141219.5
[INFO] [stderr]     Checking encoding-index-tradchinese v1.20141219.5
[INFO] [stderr]     Checking encoding-index-singlebyte v1.20141219.5
[INFO] [stderr]     Checking encoding-index-simpchinese v1.20141219.5
[INFO] [stderr]     Checking clap_lex v0.2.4
[INFO] [stderr]     Checking encoding-index-korean v1.20141219.5
[INFO] [stderr]     Checking textwrap v0.15.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.10
[INFO] [stderr]    Compiling regex-syntax v0.6.27
[INFO] [stderr]    Compiling either v1.7.0
[INFO] [stderr]    Compiling peg-runtime v0.6.3
[INFO] [stderr]    Compiling bytecount v0.6.3
[INFO] [stderr]     Checking aho-corasick v0.7.18
[INFO] [stderr]     Checking object v0.29.0
[INFO] [stderr]     Checking encoding v0.2.33
[INFO] [stderr]    Compiling nom v7.1.1
[INFO] [stderr]     Checking bstr v0.2.17
[INFO] [stderr]    Compiling quote v1.0.20
[INFO] [stderr]     Checking parse_int v0.6.0
[INFO] [stderr]     Checking thread_local v1.1.4
[INFO] [stderr]     Checking indexmap v1.9.1
[INFO] [stderr]    Compiling async-trait v0.1.56
[INFO] [stderr]    Compiling itertools v0.10.3
[INFO] [stderr]     Checking socketcan v1.7.0
[INFO] [stderr]     Checking textwrap v0.12.1
[INFO] [stderr]     Checking terminal_size v0.1.17
[INFO] [stderr]     Checking futures-timer v3.0.2
[INFO] [stderr]     Checking num-integer v0.1.45
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling peg-macros v0.6.3
[INFO] [stderr]     Checking time v0.1.44
[INFO] [stderr]    Compiling quit_macros v1.1.4
[INFO] [stderr]     Checking iana-time-zone v0.1.47
[INFO] [stderr]     Checking regex v1.6.0
[INFO] [stderr]     Checking quit v1.1.4
[INFO] [stderr]     Checking hex-slice v0.1.4
[INFO] [stderr]     Checking chrono v0.4.22
[INFO] [stderr]    Compiling nom_locate v4.0.0
[INFO] [stderr]     Checking peg v0.6.3
[INFO] [stderr]     Checking globset v0.4.9
[INFO] [stderr]     Checking console v0.15.0
[INFO] [stderr]     Checking env_logger v0.9.0
[INFO] [stderr]     Checking ignore v0.4.18
[INFO] [stderr]     Checking addr2line v0.17.0
[INFO] [stderr]     Checking globwalk v0.8.1
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling futures-macro v0.3.21
[INFO] [stderr]    Compiling thiserror-impl v1.0.31
[INFO] [stderr]    Compiling tokio-macros v1.8.0
[INFO] [stderr]    Compiling clap_derive v3.2.7
[INFO] [stderr]    Compiling sealed v0.3.0
[INFO] [stderr]    Compiling num_enum_derive v0.5.7
[INFO] [stderr]    Compiling enum-display-derive v0.1.1
[INFO] [stderr]    Compiling derive_more v0.99.17
[INFO] [stderr]    Compiling ghost v0.1.5
[INFO] [stderr]    Compiling ctor v0.1.22
[INFO] [stderr]    Compiling typed-builder v0.7.1
[INFO] [stderr]    Compiling sealed v0.4.0
[INFO] [stderr]    Compiling synthez-core v0.2.0
[INFO] [stderr]     Checking tokio v1.19.2
[INFO] [stderr]     Checking failure v0.1.8
[INFO] [stderr]     Checking inventory v0.2.3
[INFO] [stderr]     Checking num_enum v0.5.7
[INFO] [stderr]     Checking clap v3.2.10
[INFO] [stderr]    Compiling synthez-codegen v0.2.0
[INFO] [stderr]     Checking futures-util v0.3.21
[INFO] [stderr]     Checking thiserror v1.0.31
[INFO] [stderr]    Compiling synthez v0.2.0
[INFO] [stderr]    Compiling cucumber-expressions v0.2.1
[INFO] [stderr]    Compiling cucumber-codegen v0.13.0
[INFO] [stderr]     Checking clap-verbosity-flag v1.0.1
[INFO] [stderr]     Checking futures-executor v0.3.21
[INFO] [stderr]     Checking futures v0.3.21
[INFO] [stderr]     Checking tokio-socketcan v0.3.1
[INFO] [stderr]     Checking col v0.1.0 (/opt/rustwide/workdir/canopen-lib)
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> canopen-lib/src/canopen/sdo.rs:204:9
[INFO] [stdout]     |
[INFO] [stdout] 204 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling gherkin v0.12.0
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> canopen-lib/src/canopen/data_type.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Fail, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Fail` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_DataConversionError`
[INFO] [stdout] 12 | pub enum DataConversionError {
[INFO] [stdout]    |          ------------------- `DataConversionError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_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 `Fail` (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]   --> canopen-lib/src/canopen/data_type.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Fail, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Display` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_DataConversionError`
[INFO] [stdout] 12 | pub enum DataConversionError {
[INFO] [stdout]    |          ------------------- `DataConversionError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_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 `Fail` (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]  --> canopen-lib/src/canopen/sdo.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Fail, Debug)]
[INFO] [stdout]   |          ^---
[INFO] [stdout]   |          |
[INFO] [stdout]   |          `Fail` is not local
[INFO] [stdout]   |          move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_SDOResult`
[INFO] [stdout] 8 | pub enum SDOResult {
[INFO] [stdout]   |          --------- `SDOResult` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_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 `Fail` (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]  --> canopen-lib/src/canopen/sdo.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Fail, Debug)]
[INFO] [stdout]   |          ^---
[INFO] [stdout]   |          |
[INFO] [stdout]   |          `Display` is not local
[INFO] [stdout]   |          move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_SDOResult`
[INFO] [stdout] 8 | pub enum SDOResult {
[INFO] [stdout]   |          --------- `SDOResult` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_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 `Fail` (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]   --> canopen-lib/src/canopen/sdo.rs:17:10
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Fail, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Fail` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_SDOAbortCode`
[INFO] [stdout] 18 | pub enum SDOAbortCode {
[INFO] [stdout]    |          ------------ `SDOAbortCode` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_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 `Fail` (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]   --> canopen-lib/src/canopen/sdo.rs:17:10
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Fail, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Display` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_SDOAbortCode`
[INFO] [stdout] 18 | pub enum SDOAbortCode {
[INFO] [stdout]    |          ------------ `SDOAbortCode` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_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 `Fail` (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]   --> canopen-lib/src/frame/mod.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Fail` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_CANOpenFrameError`
[INFO] [stdout] 16 | pub enum CANOpenFrameError {
[INFO] [stdout]    |          ----------------- `CANOpenFrameError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_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 `Fail` (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]   --> canopen-lib/src/frame/mod.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Display` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_CANOpenFrameError`
[INFO] [stdout] 16 | pub enum CANOpenFrameError {
[INFO] [stdout]    |          ----------------- `CANOpenFrameError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_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 `Fail` (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]   --> canopen-lib/src/canopen/data_type.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Fail, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Fail` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_DataConversionError`
[INFO] [stdout] 12 | pub enum DataConversionError {
[INFO] [stdout]    |          ------------------- `DataConversionError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_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 `Fail` (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]   --> canopen-lib/src/canopen/data_type.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Fail, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Display` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_DataConversionError`
[INFO] [stdout] 12 | pub enum DataConversionError {
[INFO] [stdout]    |          ------------------- `DataConversionError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_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 `Fail` (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]  --> canopen-lib/src/canopen/sdo.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Fail, Debug)]
[INFO] [stdout]   |          ^---
[INFO] [stdout]   |          |
[INFO] [stdout]   |          `Fail` is not local
[INFO] [stdout]   |          move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_SDOResult`
[INFO] [stdout] 8 | pub enum SDOResult {
[INFO] [stdout]   |          --------- `SDOResult` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_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 `Fail` (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]  --> canopen-lib/src/canopen/sdo.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Fail, Debug)]
[INFO] [stdout]   |          ^---
[INFO] [stdout]   |          |
[INFO] [stdout]   |          `Display` is not local
[INFO] [stdout]   |          move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_SDOResult`
[INFO] [stdout] 8 | pub enum SDOResult {
[INFO] [stdout]   |          --------- `SDOResult` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_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 `Fail` (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]   --> canopen-lib/src/canopen/sdo.rs:17:10
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Fail, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Fail` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_SDOAbortCode`
[INFO] [stdout] 18 | pub enum SDOAbortCode {
[INFO] [stdout]    |          ------------ `SDOAbortCode` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_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 `Fail` (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]   --> canopen-lib/src/canopen/sdo.rs:17:10
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Fail, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Display` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_SDOAbortCode`
[INFO] [stdout] 18 | pub enum SDOAbortCode {
[INFO] [stdout]    |          ------------ `SDOAbortCode` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_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 `Fail` (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]   --> canopen-lib/src/frame/mod.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Fail` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_CANOpenFrameError`
[INFO] [stdout] 16 | pub enum CANOpenFrameError {
[INFO] [stdout]    |          ----------------- `CANOpenFrameError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_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 `Fail` (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]   --> canopen-lib/src/frame/mod.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Display` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_CANOpenFrameError`
[INFO] [stdout] 16 | pub enum CANOpenFrameError {
[INFO] [stdout]    |          ----------------- `CANOpenFrameError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_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 `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking can-tool v0.1.0 (/opt/rustwide/workdir/cot)
[INFO] [stderr]     Checking cucumber v0.13.0
[INFO] [stderr]     Checking bdd v0.1.0 (/opt/rustwide/workdir/bdd)
[INFO] [stdout] error: useless conversion to the same type: `u32` canopen
[INFO] [stdout]    --> bdd/tests/canopen.rs:110:53
[INFO] [stdout]     |
[INFO] [stdout] 110 |     let can_worker = expect_frame(&mut w.cansocket, cob_id.into(), Some(&data[0..len])).fuse();
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 110 -     let can_worker = expect_frame(&mut w.cansocket, cob_id.into(), Some(&data[0..len])).fuse();
[INFO] [stdout] 110 +     let can_worker = expect_frame(&mut w.cansocket, cob_id, Some(&data[0..len])).fuse();
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 110 -     let can_worker = expect_frame(&mut w.cansocket, cob_id.into(), Some(&data[0..len])).fuse();
[INFO] [stdout] 110 +     let can_worker = expect_frame(&mut w.cansocket, <u32 as Into<_>>::into(cob_id), Some(&data[0..len])).fuse();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `u32` canopen
[INFO] [stdout]    --> bdd/tests/canopen.rs:136:53
[INFO] [stdout]     |
[INFO] [stdout] 136 |     let can_worker = expect_frame(&mut w.cansocket, cob_id.into(), None).fuse();
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 136 -     let can_worker = expect_frame(&mut w.cansocket, cob_id.into(), None).fuse();
[INFO] [stdout] 136 +     let can_worker = expect_frame(&mut w.cansocket, cob_id, None).fuse();
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 136 -     let can_worker = expect_frame(&mut w.cansocket, cob_id.into(), None).fuse();
[INFO] [stdout] 136 +     let can_worker = expect_frame(&mut w.cansocket, <u32 as Into<_>>::into(cob_id), None).fuse();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `bdd` (test "canopen") due to 2 previous errors
[INFO] [stderr] warning: unused dependency `cucumber`
[INFO] [stderr]   --> bdd/Cargo.toml:10:1
[INFO] [stderr]    |
[INFO] [stderr] 10 | cucumber = "0.13.0"
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `cucumber`
[INFO] [stderr] help: to still use for development builds, move to `dev-dependencies`
[INFO] [stderr] warning: unused dependency `futures-timer`
[INFO] [stderr]   --> bdd/Cargo.toml:16:1
[INFO] [stderr]    |
[INFO] [stderr] 16 | futures-timer = "3.0.2"
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: consider removing the dependency on `futures-timer`
[INFO] [stderr] help: to still use for development builds, move to `dev-dependencies`
[INFO] [stderr] warning: `bdd` (manifest) generated 2 warnings
[INFO] running `Command { std: "docker" "inspect" "ef579d3cc77be422f6de32b9527c8a5352dc7ecd5d34ac73a485d0c5e6aea07e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ef579d3cc77be422f6de32b9527c8a5352dc7ecd5d34ac73a485d0c5e6aea07e", kill_on_drop: false }`
[INFO] [stdout] ef579d3cc77be422f6de32b9527c8a5352dc7ecd5d34ac73a485d0c5e6aea07e
