[INFO] fetching crate susydev-jsonrpc-derive 11.0.0...
[INFO] testing susydev-jsonrpc-derive-11.0.0 against master#1871252fc8bb672d40787e67404e6eaae7059369 for pr-125151
[INFO] extracting crate susydev-jsonrpc-derive 11.0.0 into /workspace/builds/worker-4-tc1/source
[INFO] validating manifest of crates.io crate susydev-jsonrpc-derive 11.0.0 on toolchain 1871252fc8bb672d40787e67404e6eaae7059369
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate susydev-jsonrpc-derive 11.0.0
[INFO] finished tweaking crates.io crate susydev-jsonrpc-derive 11.0.0
[INFO] tweaked toml for crates.io crate susydev-jsonrpc-derive 11.0.0 written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]      Locking 149 packages to latest compatible versions
[INFO] [stderr]       Adding addr2line v0.21.0 (latest: v0.22.0)
[INFO] [stderr]       Adding autocfg v0.1.8 (latest: v1.3.0)
[INFO] [stderr]       Adding bitflags v1.3.2 (latest: v2.5.0)
[INFO] [stderr]       Adding bytes v0.4.12 (latest: v1.6.0)
[INFO] [stderr]       Adding cfg-if v0.1.10 (latest: v1.0.0)
[INFO] [stderr]       Adding cloudabi v0.0.3 (latest: v0.1.0)
[INFO] [stderr]       Adding compiletest_rs v0.3.26 (latest: v0.10.2)
[INFO] [stderr]       Adding crossbeam-deque v0.7.4 (latest: v0.8.5)
[INFO] [stderr]       Adding crossbeam-epoch v0.8.2 (latest: v0.9.18)
[INFO] [stderr]       Adding crossbeam-queue v0.2.3 (latest: v0.3.11)
[INFO] [stderr]       Adding crossbeam-utils v0.7.2 (latest: v0.8.20)
[INFO] [stderr]       Adding dirs v2.0.2 (latest: v5.0.1)
[INFO] [stderr]       Adding dirs-sys v0.3.7 (latest: v0.4.1)
[INFO] [stderr]       Adding futures v0.1.31 (latest: v0.3.30)
[INFO] [stderr]       Adding gimli v0.28.1 (latest: v0.29.0)
[INFO] [stderr]       Adding lock_api v0.1.5 (latest: v0.4.12)
[INFO] [stderr]       Adding lock_api v0.3.4 (latest: v0.4.12)
[INFO] [stderr]       Adding memoffset v0.5.6 (latest: v0.9.1)
[INFO] [stderr]       Adding mio v0.6.23 (latest: v0.8.11)
[INFO] [stderr]       Adding miow v0.2.2 (latest: v0.6.0)
[INFO] [stderr]       Adding miow v0.3.7 (latest: v0.6.0)
[INFO] [stderr]       Adding object v0.32.2 (latest: v0.35.0)
[INFO] [stderr]       Adding parking_lot v0.7.1 (latest: v0.12.3)
[INFO] [stderr]       Adding parking_lot v0.9.0 (latest: v0.12.3)
[INFO] [stderr]       Adding parking_lot_core v0.4.0 (latest: v0.9.10)
[INFO] [stderr]       Adding parking_lot_core v0.6.3 (latest: v0.9.10)
[INFO] [stderr]       Adding proc-macro-crate v0.1.5 (latest: v3.1.0)
[INFO] [stderr]       Adding proc-macro2 v0.4.30 (latest: v1.0.83)
[INFO] [stderr]       Adding quote v0.6.13 (latest: v1.0.36)
[INFO] [stderr]       Adding rand v0.6.5 (latest: v0.8.5)
[INFO] [stderr]       Adding rand_chacha v0.1.1 (latest: v0.3.1)
[INFO] [stderr]       Adding rand_core v0.3.1 (latest: v0.6.4)
[INFO] [stderr]       Adding rand_core v0.4.2 (latest: v0.6.4)
[INFO] [stderr]       Adding rand_hc v0.1.0 (latest: v0.3.2)
[INFO] [stderr]       Adding rand_isaac v0.1.1 (latest: v0.3.0)
[INFO] [stderr]       Adding rand_jitter v0.1.4 (latest: v0.4.0)
[INFO] [stderr]       Adding rand_os v0.1.3 (latest: v0.2.2)
[INFO] [stderr]       Adding rand_pcg v0.1.2 (latest: v0.3.1)
[INFO] [stderr]       Adding rand_xorshift v0.1.1 (latest: v0.3.0)
[INFO] [stderr]       Adding rdrand v0.4.0 (latest: v0.8.3)
[INFO] [stderr]       Adding redox_syscall v0.1.57 (latest: v0.5.1)
[INFO] [stderr]       Adding redox_syscall v0.4.1 (latest: v0.5.1)
[INFO] [stderr]       Adding rustc_version v0.2.3 (latest: v0.4.0)
[INFO] [stderr]       Adding rustfix v0.4.6 (latest: v0.8.2)
[INFO] [stderr]       Adding scopeguard v0.3.3 (latest: v1.2.0)
[INFO] [stderr]       Adding semver v0.9.0 (latest: v1.0.23)
[INFO] [stderr]       Adding semver-parser v0.7.0 (latest: v0.10.2)
[INFO] [stderr]       Adding smallvec v0.6.14 (latest: v1.13.2)
[INFO] [stderr]       Adding syn v0.15.44 (latest: v2.0.66)
[INFO] [stderr]       Adding syn v1.0.109 (latest: v2.0.66)
[INFO] [stderr]       Adding synstructure v0.12.6 (latest: v0.13.1)
[INFO] [stderr]       Adding term v0.6.1 (latest: v0.7.0)
[INFO] [stderr]       Adding tester v0.6.0 (latest: v0.9.1)
[INFO] [stderr]       Adding tokio v0.1.22 (latest: v1.37.0)
[INFO] [stderr]       Adding toml v0.5.11 (latest: v0.8.13)
[INFO] [stderr]       Adding unicode-xid v0.1.0 (latest: v0.2.4)
[INFO] [stderr]       Adding wasi v0.11.0+wasi-snapshot-preview1 (latest: v0.13.1+wasi-0.2.0)
[INFO] [stderr]       Adding winapi v0.2.8 (latest: v0.3.9)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded rustfix v0.4.6
[INFO] [stderr]   Downloaded susydev-jsonrpc-core v11.0.0
[INFO] [stderr]   Downloaded susydev-jsonrpc-pubsub v11.0.0
[INFO] [stderr]   Downloaded susydev-jsonrpc-server-utils v11.0.0
[INFO] [stderr]   Downloaded susydev-jsonrpc-tcp-server v11.0.0
[INFO] [stderr]   Downloaded susydev-jsonrpc-client v11.0.0
[INFO] [stderr]   Downloaded tester v0.6.0
[INFO] [stderr]   Downloaded compiletest_rs v0.3.26
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2095a40409bd68f826ed9b2d22947dbaecf0342573e14f646d58b37aa1f1dd38
[INFO] running `Command { std: "docker" "start" "-a" "2095a40409bd68f826ed9b2d22947dbaecf0342573e14f646d58b37aa1f1dd38", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2095a40409bd68f826ed9b2d22947dbaecf0342573e14f646d58b37aa1f1dd38", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2095a40409bd68f826ed9b2d22947dbaecf0342573e14f646d58b37aa1f1dd38", kill_on_drop: false }`
[INFO] [stdout] 2095a40409bd68f826ed9b2d22947dbaecf0342573e14f646d58b37aa1f1dd38
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 63b4fd07db9d33e83925105bd61f54b9efa726154e8436871ff57d5f234ec99c
[INFO] running `Command { std: "docker" "start" "-a" "63b4fd07db9d33e83925105bd61f54b9efa726154e8436871ff57d5f234ec99c", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v0.4.30
[INFO] [stderr]    Compiling unicode-xid v0.1.0
[INFO] [stderr]    Compiling syn v0.15.44
[INFO] [stderr]    Compiling serde v1.0.202
[INFO] [stderr]    Compiling syn v2.0.66
[INFO] [stderr]    Compiling quote v0.6.13
[INFO] [stderr]    Compiling serde_derive v1.0.202
[INFO] [stderr]    Compiling toml v0.5.11
[INFO] [stderr]    Compiling proc-macro-crate v0.1.5
[INFO] [stderr]    Compiling susydev-jsonrpc-derive v11.0.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 14.31s
[INFO] running `Command { std: "docker" "inspect" "63b4fd07db9d33e83925105bd61f54b9efa726154e8436871ff57d5f234ec99c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "63b4fd07db9d33e83925105bd61f54b9efa726154e8436871ff57d5f234ec99c", kill_on_drop: false }`
[INFO] [stdout] 63b4fd07db9d33e83925105bd61f54b9efa726154e8436871ff57d5f234ec99c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6ee443661493d96fcf1c337c6688dd9f53b12cf1715962bfb359b782200f6dc5
[INFO] running `Command { std: "docker" "start" "-a" "6ee443661493d96fcf1c337c6688dd9f53b12cf1715962bfb359b782200f6dc5", kill_on_drop: false }`
[INFO] [stderr]    Compiling cfg-if v0.1.10
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling futures v0.1.31
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling autocfg v0.1.8
[INFO] [stderr]    Compiling memchr v2.7.2
[INFO] [stderr]    Compiling rand_core v0.4.2
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling memoffset v0.5.6
[INFO] [stderr]    Compiling lock_api v0.3.4
[INFO] [stderr]    Compiling crossbeam-epoch v0.8.2
[INFO] [stderr]    Compiling iovec v0.1.4
[INFO] [stderr]    Compiling num_cpus v1.16.0
[INFO] [stderr]    Compiling serde v1.0.202
[INFO] [stderr]    Compiling net2 v0.2.39
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]    Compiling rand_core v0.3.1
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]    Compiling backtrace v0.3.71
[INFO] [stderr]    Compiling bytes v0.4.12
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]    Compiling smallvec v0.6.14
[INFO] [stderr]    Compiling mio v0.6.23
[INFO] [stderr]    Compiling gimli v0.28.1
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling unicode-xid v0.2.4
[INFO] [stderr]    Compiling failure_derive v0.1.8
[INFO] [stderr]    Compiling miniz_oxide v0.7.3
[INFO] [stderr]    Compiling object v0.32.2
[INFO] [stderr]    Compiling rand_isaac v0.1.1
[INFO] [stderr]    Compiling rand_xorshift v0.1.1
[INFO] [stderr]    Compiling parking_lot_core v0.6.3
[INFO] [stderr]    Compiling parking_lot v0.9.0
[INFO] [stderr]    Compiling parking_lot_core v0.4.0
[INFO] [stderr]    Compiling rand_hc v0.1.0
[INFO] [stderr]    Compiling rand_jitter v0.1.4
[INFO] [stderr]    Compiling rand_os v0.1.3
[INFO] [stderr]    Compiling stable_deref_trait v1.2.0
[INFO] [stderr]    Compiling crossbeam-queue v0.2.3
[INFO] [stderr]    Compiling rustc-demangle v0.1.24
[INFO] [stderr]    Compiling mio-uds v0.6.8
[INFO] [stderr]    Compiling owning_ref v0.4.1
[INFO] [stderr]    Compiling proc-macro2 v0.4.30
[INFO] [stderr]    Compiling crossbeam-deque v0.7.4
[INFO] [stderr]    Compiling scopeguard v0.3.3
[INFO] [stderr]    Compiling unicode-xid v0.1.0
[INFO] [stderr]    Compiling dirs v2.0.2
[INFO] [stderr]    Compiling tokio-executor v0.1.10
[INFO] [stderr]    Compiling tokio-io v0.1.13
[INFO] [stderr]    Compiling tokio-sync v0.1.8
[INFO] [stderr]    Compiling lock_api v0.1.5
[INFO] [stderr]    Compiling bstr v1.9.1
[INFO] [stderr]    Compiling tokio-threadpool v0.1.18
[INFO] [stderr]    Compiling regex-automata v0.4.6
[INFO] [stderr]    Compiling tokio-current-thread v0.1.7
[INFO] [stderr]    Compiling tokio-reactor v0.1.12
[INFO] [stderr]    Compiling tokio-codec v0.1.2
[INFO] [stderr]    Compiling tokio-timer v0.2.13
[INFO] [stderr]    Compiling unicode-width v0.1.12
[INFO] [stderr]    Compiling syn v0.15.44
[INFO] [stderr]    Compiling getopts v0.2.21
[INFO] [stderr]    Compiling quote v0.6.13
[INFO] [stderr]    Compiling term v0.6.1
[INFO] [stderr]    Compiling tokio-uds v0.2.7
[INFO] [stderr]    Compiling tokio-udp v0.1.6
[INFO] [stderr]    Compiling addr2line v0.21.0
[INFO] [stderr]    Compiling tokio-fs v0.1.7
[INFO] [stderr]    Compiling tokio-tcp v0.1.4
[INFO] [stderr]    Compiling compiletest_rs v0.3.26
[INFO] [stderr]    Compiling tokio-service v0.1.0
[INFO] [stderr]    Compiling filetime v0.2.23
[INFO] [stderr]    Compiling diff v0.1.13
[INFO] [stderr]    Compiling parking_lot v0.7.1
[INFO] [stderr]    Compiling tokio v0.1.22
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]    Compiling tester v0.6.0
[INFO] [stderr]    Compiling serde_json v1.0.117
[INFO] [stderr]    Compiling toml v0.5.11
[INFO] [stderr]    Compiling globset v0.4.14
[INFO] [stderr]    Compiling regex v1.10.4
[INFO] [stderr]    Compiling susydev-jsonrpc-core v11.0.0
[INFO] [stderr]    Compiling proc-macro-crate v0.1.5
[INFO] [stderr]    Compiling failure v0.1.8
[INFO] [stderr]    Compiling susydev-jsonrpc-server-utils v11.0.0
[INFO] [stderr]    Compiling susydev-jsonrpc-pubsub v11.0.0
[INFO] [stderr]    Compiling rustfix v0.4.6
[INFO] [stderr]    Compiling susydev-jsonrpc-tcp-server v11.0.0
[INFO] [stderr]    Compiling susydev-jsonrpc-client v11.0.0
[INFO] [stderr]    Compiling susydev-jsonrpc-derive v11.0.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: pubsub methods are currently not supported in the generated client.
[INFO] [stdout] warning: pubsub methods are currently not supported in the generated client.
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 23.29s
[INFO] running `Command { std: "docker" "inspect" "6ee443661493d96fcf1c337c6688dd9f53b12cf1715962bfb359b782200f6dc5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6ee443661493d96fcf1c337c6688dd9f53b12cf1715962bfb359b782200f6dc5", kill_on_drop: false }`
[INFO] [stdout] 6ee443661493d96fcf1c337c6688dd9f53b12cf1715962bfb359b782200f6dc5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 507ea056de56fed6f52afbb02edf957fd615c6dee32feb0bd2d93e99c3e86c95
[INFO] running `Command { std: "docker" "start" "-a" "507ea056de56fed6f52afbb02edf957fd615c6dee32feb0bd2d93e99c3e86c95", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.15s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/susydev_jsonrpc_derive-5cd4491fdfb15c74)
[INFO] [stderr]      Running tests/compiletests.rs (/opt/rustwide/target/debug/deps/compiletests-338556d5f89b6741)
[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] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] 
[INFO] [stdout] running 14 tests
[INFO] [stdout] test [ui] ui/pubsub/missing-unsubscribe.rs ... FAILED
[INFO] [stdout] test [ui] ui/pubsub/attr-invalid-name-values.rs ... FAILED
[INFO] [stdout] test [ui] ui/attr-missing-rpc-name.rs ... FAILED
[INFO] [stdout] test [ui] ui/multiple-rpc-attributes.rs ... FAILED
[INFO] [stdout] test [ui] ui/pubsub/attr-both-subscribe-and-unsubscribe.rs ... FAILED
[INFO] [stdout] test [ui] ui/attr-invalid-name-values.rs ... FAILED
[INFO] [stdout] test [ui] ui/pubsub/attr-invalid-meta-list-names.rs ... FAILED
[INFO] [stdout] test [ui] ui/pubsub/attr-invalid-meta-words.rs ... FAILED
[INFO] [stdout] test [ui] ui/attr-invalid-meta-words.rs ... FAILED
[INFO] [stdout] test [ui] ui/attr-invalid-meta-list-names.rs ... FAILED
[INFO] [stdout] test [ui] ui/too-many-params.rs ... FAILED
[INFO] [stdout] test [ui] ui/pubsub/missing-subscribe.rs ... FAILED
[INFO] [stdout] test [ui] ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs ... FAILED
[INFO] [stdout] test [ui] ui/pubsub/attr-missing-subscription-name.rs ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     [ui] ui/attr-invalid-meta-list-names.rs
[INFO] [stdout]     [ui] ui/attr-invalid-meta-words.rs
[INFO] [stdout]     [ui] ui/attr-invalid-name-values.rs
[INFO] [stdout]     [ui] ui/attr-missing-rpc-name.rs
[INFO] [stdout]     [ui] ui/multiple-rpc-attributes.rs
[INFO] [stdout]     [ui] ui/pubsub/attr-both-subscribe-and-unsubscribe.rs
[INFO] [stdout]     [ui] ui/pubsub/attr-invalid-meta-list-names.rs
[INFO] [stdout]     [ui] ui/pubsub/attr-invalid-meta-words.rs
[INFO] [stdout]     [ui] ui/pubsub/attr-invalid-name-values.rs
[INFO] [stdout]     [ui] ui/pubsub/attr-missing-subscription-name.rs
[INFO] [stdout]     [ui] ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs
[INFO] [stdout]     [ui] ui/pubsub/missing-subscribe.rs
[INFO] [stdout]     [ui] ui/pubsub/missing-unsubscribe.rs
[INFO] [stdout]     [ui] ui/too-many-params.rs
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 14 failed; 0 ignored; 0 measured; 0 filtered out
[INFO] [stdout] 
[INFO] [stdout] test compile_test ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- compile_test stdout ----
[INFO] [stdout] normalized stderr:
[INFO] [stdout] error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout]  --> $DIR/missing-unsubscribe.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]  --> $DIR/missing-unsubscribe.rs:6:3
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[rpc]
[INFO] [stdout]   |   ^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `pubsub` in this scope
[INFO] [stdout]   --> $DIR/missing-unsubscribe.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 |     #[pubsub(subscription = "hello", subscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `typed`
[INFO] [stdout]   --> $DIR/missing-unsubscribe.rs:12:44
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout]    |                                               ^^^^^ use of undeclared crate or module `typed`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]    |
[INFO] [stdout] 1  + use susydev_jsonrpc_pubsub::typed;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0433, E0464.
[INFO] [stdout] For more information about an error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] expected stderr:
[INFO] [stdout] error: subscription 'hello'. Can't find unsubscribe method, expected a method annotated with `unsubscribe` e.g. `#[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]`
[INFO] [stdout]   --> $DIR/missing-unsubscribe.rs:10:2
[INFO] [stdout]    |
[INFO] [stdout] 10 |       /// Hello subscription
[INFO] [stdout]    |  _____^
[INFO] [stdout] 11 | |     #[pubsub(subscription = "hello", subscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] 12 | |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout]    | |_________________________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] diff of stderr:
[INFO] [stdout] 
[INFO] [stdout] -error: subscription 'hello'. Can't find unsubscribe method, expected a method annotated with `unsubscribe` e.g. `#[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]`
[INFO] [stdout] -  --> $DIR/missing-unsubscribe.rs:10:2
[INFO] [stdout] +error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout] + --> $DIR/missing-unsubscribe.rs:2:1
[INFO] [stdout] +  |
[INFO] [stdout] +2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] + --> $DIR/missing-unsubscribe.rs:6:3
[INFO] [stdout] +  |
[INFO] [stdout] +6 | #[rpc]
[INFO] [stdout] +  |   ^^^
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `pubsub` in this scope
[INFO] [stdout] +  --> $DIR/missing-unsubscribe.rs:11:4
[INFO] [stdout]     |
[INFO] [stdout] -10 |       /// Hello subscription
[INFO] [stdout] -   |  _____^
[INFO] [stdout] -11 | |     #[pubsub(subscription = "hello", subscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] -12 | |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout] -   | |_________________________________________________________________________________^
[INFO] [stdout] +11 |     #[pubsub(subscription = "hello", subscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] +   |       ^^^^^^
[INFO] [stdout]  
[INFO] [stdout] -error: aborting due to previous error
[INFO] [stdout] +error[E0433]: failed to resolve: use of undeclared crate or module `typed`
[INFO] [stdout] +  --> $DIR/missing-unsubscribe.rs:12:44
[INFO] [stdout] +   |
[INFO] [stdout] +12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout] +   |                                               ^^^^^ use of undeclared crate or module `typed`
[INFO] [stdout] +   |
[INFO] [stdout] +help: consider importing this module
[INFO] [stdout] +   |
[INFO] [stdout] +1  + use susydev_jsonrpc_pubsub::typed;
[INFO] [stdout] +   |
[INFO] [stdout]  
[INFO] [stdout] +error: aborting due to 4 previous errors
[INFO] [stdout] +
[INFO] [stdout] +Some errors have detailed explanations: E0433, E0464.
[INFO] [stdout] +For more information about an error, try `rustc --explain E0433`.
[INFO] [stdout]  
[INFO] [stdout] 
[INFO] [stdout] The actual stderr differed from the expected stderr.
[INFO] [stdout] Actual stderr saved to /tmp/pubsub/missing-unsubscribe.stderr
[INFO] [stdout] To update references, run this command from build directory:
[INFO] [stdout] tests/ui/update-references.sh '/tmp' 'pubsub/missing-unsubscribe.rs'
[INFO] [stdout] 
[INFO] [stdout] error: 1 errors occurred comparing output.
[INFO] [stdout] status: exit status: 1
[INFO] [stdout] command: "rustc" "tests/ui/pubsub/missing-unsubscribe.rs" "-L" "/tmp" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-C" "prefer-dynamic" "-o" "/tmp/pubsub/missing-unsubscribe.stage-id" "-L" "../target/debug/" "-L" "../target/debug/deps/" "-L" "/tmp/pubsub/missing-unsubscribe.stage-id.aux" "-A" "unused"
[INFO] [stdout] stdout:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] stderr:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/missing-unsubscribe.rs","byte_start":13,"byte_end":49,"line_start":2,"line_end":2,"column_start":1,"column_end":37,"is_primary":true,"text":[{"text":"extern crate susydev_jsonrpc_derive;","highlight_start":1,"highlight_end":37}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found\n --> tests/ui/pubsub/missing-unsubscribe.rs:2:1\n  |\n2 | extern crate susydev_jsonrpc_derive;\n  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so\n  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/missing-unsubscribe.rs","byte_start":125,"byte_end":128,"line_start":6,"line_end":6,"column_start":3,"column_end":6,"is_primary":true,"text":[{"text":"#[rpc]","highlight_start":3,"highlight_end":6}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n --> tests/ui/pubsub/missing-unsubscribe.rs:6:3\n  |\n6 | #[rpc]\n  |   ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `pubsub` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/missing-unsubscribe.rs","byte_start":190,"byte_end":196,"line_start":11,"line_end":11,"column_start":4,"column_end":10,"is_primary":true,"text":[{"text":"\t#[pubsub(subscription = \"hello\", subscribe, name = \"hello_subscribe\", alias(\"hello_sub\"))]","highlight_start":4,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `pubsub` in this scope\n  --> tests/ui/pubsub/missing-unsubscribe.rs:11:4\n   |\n11 |     #[pubsub(subscription = \"hello\", subscribe, name = \"hello_subscribe\", alias(\"hello_sub\"))]\n   |       ^^^^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"failed to resolve: use of undeclared crate or module `typed`","code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap<u32, u32> = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared crate or module `ferris_wheel`\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/missing-unsubscribe.rs","byte_start":322,"byte_end":327,"line_start":12,"line_end":12,"column_start":44,"column_end":49,"is_primary":true,"text":[{"text":"\tfn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);","highlight_start":44,"highlight_end":49}],"label":"use of undeclared crate or module `typed`","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"consider importing this module","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/missing-unsubscribe.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[],"label":null,"suggested_replacement":"use susydev_jsonrpc_pubsub::typed;\n\n","suggestion_applicability":"MaybeIncorrect","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0433]: failed to resolve: use of undeclared crate or module `typed`\n  --> tests/ui/pubsub/missing-unsubscribe.rs:12:44\n   |\n12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);\n   |                                               ^^^^^ use of undeclared crate or module `typed`\n   |\nhelp: consider importing this module\n   |\n1  + use susydev_jsonrpc_pubsub::typed;\n   |\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"aborting due to 4 previous errors","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to 4 previous errors\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"Some errors have detailed explanations: E0433, E0464.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"Some errors have detailed explanations: E0433, E0464.\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"For more information about an error, try `rustc --explain E0433`.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"For more information about an error, try `rustc --explain E0433`.\n"}
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] normalized stderr:
[INFO] [stdout] error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout]  --> $DIR/attr-invalid-name-values.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]  --> $DIR/attr-invalid-name-values.rs:6:3
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[rpc]
[INFO] [stdout]   |   ^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `pubsub` in this scope
[INFO] [stdout]   --> $DIR/attr-invalid-name-values.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 |     #[pubsub(Xsubscription = "hello", subscribe, Xname = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `pubsub` in this scope
[INFO] [stdout]   --> $DIR/attr-invalid-name-values.rs:15:4
[INFO] [stdout]    |
[INFO] [stdout] 15 |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `typed`
[INFO] [stdout]   --> $DIR/attr-invalid-name-values.rs:12:44
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout]    |                                               ^^^^^ use of undeclared crate or module `typed`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]    |
[INFO] [stdout] 1  + use susydev_jsonrpc_pubsub::typed;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `SubscriptionId` in this scope
[INFO] [stdout]   --> $DIR/attr-invalid-name-values.rs:16:54
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout] 1  + use susydev_jsonrpc_pubsub::SubscriptionId;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied
[INFO] [stdout]   --> $DIR/attr-invalid-name-values.rs:16:73
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                                            ^^^^^^ ---- supplied 1 generic argument
[INFO] [stdout]    |                                                                            |
[INFO] [stdout]    |                                                                            expected 2 generic arguments
[INFO] [stdout]    |
[INFO] [stdout] help: add missing generic argument
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;
[INFO] [stdout]    |                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0107, E0412, E0433, E0464.
[INFO] [stdout] For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] expected stderr:
[INFO] [stdout] error: Invalid attribute parameter(s): 'Xsubscription, Xname'. Expected 'subscription, name'
[INFO] [stdout]   --> $DIR/attr-invalid-name-values.rs:10:2
[INFO] [stdout]    |
[INFO] [stdout] 10 |       /// Hello subscription
[INFO] [stdout]    |  _____^
[INFO] [stdout] 11 | |     #[pubsub(Xsubscription = "hello", subscribe, Xname = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] 12 | |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout]    | |_________________________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] diff of stderr:
[INFO] [stdout] 
[INFO] [stdout] -error: Invalid attribute parameter(s): 'Xsubscription, Xname'. Expected 'subscription, name'
[INFO] [stdout] -  --> $DIR/attr-invalid-name-values.rs:10:2
[INFO] [stdout] +error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout] + --> $DIR/attr-invalid-name-values.rs:2:1
[INFO] [stdout] +  |
[INFO] [stdout] +2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] + --> $DIR/attr-invalid-name-values.rs:6:3
[INFO] [stdout] +  |
[INFO] [stdout] +6 | #[rpc]
[INFO] [stdout] +  |   ^^^
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `pubsub` in this scope
[INFO] [stdout] +  --> $DIR/attr-invalid-name-values.rs:11:4
[INFO] [stdout]     |
[INFO] [stdout] -10 |       /// Hello subscription
[INFO] [stdout] -   |  _____^
[INFO] [stdout] -11 | |     #[pubsub(Xsubscription = "hello", subscribe, Xname = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] -12 | |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout] -   | |_________________________________________________________________________________^
[INFO] [stdout] +11 |     #[pubsub(Xsubscription = "hello", subscribe, Xname = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] +   |       ^^^^^^
[INFO] [stdout]  
[INFO] [stdout] -error: aborting due to previous error
[INFO] [stdout] +error: cannot find attribute `pubsub` in this scope
[INFO] [stdout] +  --> $DIR/attr-invalid-name-values.rs:15:4
[INFO] [stdout] +   |
[INFO] [stdout] +15 |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout] +   |       ^^^^^^
[INFO] [stdout]  
[INFO] [stdout] +error[E0433]: failed to resolve: use of undeclared crate or module `typed`
[INFO] [stdout] +  --> $DIR/attr-invalid-name-values.rs:12:44
[INFO] [stdout] +   |
[INFO] [stdout] +12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout] +   |                                               ^^^^^ use of undeclared crate or module `typed`
[INFO] [stdout] +   |
[INFO] [stdout] +help: consider importing this module
[INFO] [stdout] +   |
[INFO] [stdout] +1  + use susydev_jsonrpc_pubsub::typed;
[INFO] [stdout] +   |
[INFO] [stdout] +
[INFO] [stdout] +error[E0412]: cannot find type `SubscriptionId` in this scope
[INFO] [stdout] +  --> $DIR/attr-invalid-name-values.rs:16:54
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout] +   |                                                         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] +   |
[INFO] [stdout] +help: consider importing this enum
[INFO] [stdout] +   |
[INFO] [stdout] +1  + use susydev_jsonrpc_pubsub::SubscriptionId;
[INFO] [stdout] +   |
[INFO] [stdout] +
[INFO] [stdout] +error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied
[INFO] [stdout] +  --> $DIR/attr-invalid-name-values.rs:16:73
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout] +   |                                                                            ^^^^^^ ---- supplied 1 generic argument
[INFO] [stdout] +   |                                                                            |
[INFO] [stdout] +   |                                                                            expected 2 generic arguments
[INFO] [stdout] +   |
[INFO] [stdout] +help: add missing generic argument
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;
[INFO] [stdout] +   |                                                                                       +++
[INFO] [stdout] +
[INFO] [stdout] +error: aborting due to 7 previous errors
[INFO] [stdout] +
[INFO] [stdout] +Some errors have detailed explanations: E0107, E0412, E0433, E0464.
[INFO] [stdout] +For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout]  
[INFO] [stdout] 
[INFO] [stdout] The actual stderr differed from the expected stderr.
[INFO] [stdout] Actual stderr saved to /tmp/pubsub/attr-invalid-name-values.stderr
[INFO] [stdout] To update references, run this command from build directory:
[INFO] [stdout] tests/ui/update-references.sh '/tmp' 'pubsub/attr-invalid-name-values.rs'
[INFO] [stdout] 
[INFO] [stdout] error: 1 errors occurred comparing output.
[INFO] [stdout] status: exit status: 1
[INFO] [stdout] command: "rustc" "tests/ui/pubsub/attr-invalid-name-values.rs" "-L" "/tmp" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-C" "prefer-dynamic" "-o" "/tmp/pubsub/attr-invalid-name-values.stage-id" "-L" "../target/debug/" "-L" "../target/debug/deps/" "-L" "/tmp/pubsub/attr-invalid-name-values.stage-id.aux" "-A" "unused"
[INFO] [stdout] stdout:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] stderr:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-name-values.rs","byte_start":13,"byte_end":49,"line_start":2,"line_end":2,"column_start":1,"column_end":37,"is_primary":true,"text":[{"text":"extern crate susydev_jsonrpc_derive;","highlight_start":1,"highlight_end":37}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found\n --> tests/ui/pubsub/attr-invalid-name-values.rs:2:1\n  |\n2 | extern crate susydev_jsonrpc_derive;\n  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so\n  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-name-values.rs","byte_start":125,"byte_end":128,"line_start":6,"line_end":6,"column_start":3,"column_end":6,"is_primary":true,"text":[{"text":"#[rpc]","highlight_start":3,"highlight_end":6}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n --> tests/ui/pubsub/attr-invalid-name-values.rs:6:3\n  |\n6 | #[rpc]\n  |   ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `pubsub` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-name-values.rs","byte_start":190,"byte_end":196,"line_start":11,"line_end":11,"column_start":4,"column_end":10,"is_primary":true,"text":[{"text":"\t#[pubsub(Xsubscription = \"hello\", subscribe, Xname = \"hello_subscribe\", alias(\"hello_sub\"))]","highlight_start":4,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `pubsub` in this scope\n  --> tests/ui/pubsub/attr-invalid-name-values.rs:11:4\n   |\n11 |     #[pubsub(Xsubscription = \"hello\", subscribe, Xname = \"hello_subscribe\", alias(\"hello_sub\"))]\n   |       ^^^^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `pubsub` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-name-values.rs","byte_start":406,"byte_end":412,"line_start":15,"line_end":15,"column_start":4,"column_end":10,"is_primary":true,"text":[{"text":"\t#[pubsub(subscription = \"hello\", unsubscribe, name = \"hello_unsubscribe\")]","highlight_start":4,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `pubsub` in this scope\n  --> tests/ui/pubsub/attr-invalid-name-values.rs:15:4\n   |\n15 |     #[pubsub(subscription = \"hello\", unsubscribe, name = \"hello_unsubscribe\")]\n   |       ^^^^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"failed to resolve: use of undeclared crate or module `typed`","code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap<u32, u32> = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared crate or module `ferris_wheel`\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-name-values.rs","byte_start":324,"byte_end":329,"line_start":12,"line_end":12,"column_start":44,"column_end":49,"is_primary":true,"text":[{"text":"\tfn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);","highlight_start":44,"highlight_end":49}],"label":"use of undeclared crate or module `typed`","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"consider importing this module","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-name-values.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[],"label":null,"suggested_replacement":"use susydev_jsonrpc_pubsub::typed;\n\n","suggestion_applicability":"MaybeIncorrect","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0433]: failed to resolve: use of undeclared crate or module `typed`\n  --> tests/ui/pubsub/attr-invalid-name-values.rs:12:44\n   |\n12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);\n   |                                               ^^^^^ use of undeclared crate or module `typed`\n   |\nhelp: consider importing this module\n   |\n1  + use susydev_jsonrpc_pubsub::typed;\n   |\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find type `SubscriptionId` in this scope","code":{"code":"E0412","explanation":"A used type name is not in scope.\n\nErroneous code examples:\n\n```compile_fail,E0412\nimpl Something {} // error: type name `Something` is not in scope\n\n// or:\n\ntrait Foo {\n    fn bar(N); // error: type name `N` is not in scope\n}\n\n// or:\n\nfn foo(x: T) {} // type name `T` is not in scope\n```\n\nTo fix this error, please verify you didn't misspell the type name, you did\ndeclare it or imported it into the scope. Examples:\n\n```\nstruct Something;\n\nimpl Something {} // ok!\n\n// or:\n\ntrait Foo {\n    type N;\n\n    fn bar(_: Self::N); // ok!\n}\n\n// or:\n\nfn foo<T>(x: T) {} // ok!\n```\n\nAnother case that causes this error is when a type is imported into a parent\nmodule. To fix this, you can follow the suggestion and use File directly or\n`use super::File;` which will import the types from the parent namespace. An\nexample that causes this error is below:\n\n```compile_fail,E0412\nuse std::fs::File;\n\nmod foo {\n    fn some_function(f: File) {}\n}\n```\n\n```\nuse std::fs::File;\n\nmod foo {\n    // either\n    use super::File;\n    // or\n    // use std::fs::File;\n    fn foo(f: File) {}\n}\n# fn main() {} // don't insert it for us; that'll break imports\n```\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-name-values.rs","byte_start":532,"byte_end":546,"line_start":16,"line_end":16,"column_start":54,"column_end":68,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":54,"highlight_end":68}],"label":"not found in this scope","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"consider importing this enum","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-name-values.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[],"label":null,"suggested_replacement":"use susydev_jsonrpc_pubsub::SubscriptionId;\n\n","suggestion_applicability":"MaybeIncorrect","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0412]: cannot find type `SubscriptionId` in this scope\n  --> tests/ui/pubsub/attr-invalid-name-values.rs:16:54\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;\n   |                                                         ^^^^^^^^^^^^^^ not found in this scope\n   |\nhelp: consider importing this enum\n   |\n1  + use susydev_jsonrpc_pubsub::SubscriptionId;\n   |\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"enum takes 2 generic arguments but 1 generic argument was supplied","code":{"code":"E0107","explanation":"An incorrect number of generic arguments was provided.\n\nErroneous code example:\n\n```compile_fail,E0107\nstruct Foo<T> { x: T }\n\nstruct Bar { x: Foo }             // error: wrong number of type arguments:\n                                  //        expected 1, found 0\nstruct Baz<S, T> { x: Foo<S, T> } // error: wrong number of type arguments:\n                                  //        expected 1, found 2\n\nfn foo<T, U>(x: T, y: U) {}\nfn f() {}\n\nfn main() {\n    let x: bool = true;\n    foo::<bool>(x);                 // error: wrong number of type arguments:\n                                    //        expected 2, found 1\n    foo::<bool, i32, i32>(x, 2, 4); // error: wrong number of type arguments:\n                                    //        expected 2, found 3\n    f::<'static>();                 // error: wrong number of lifetime arguments\n                                    //        expected 0, found 1\n}\n```\n\nWhen using/declaring an item with generic arguments, you must provide the exact\nsame number:\n\n```\nstruct Foo<T> { x: T }\n\nstruct Bar<T> { x: Foo<T> }               // ok!\nstruct Baz<S, T> { x: Foo<S>, y: Foo<T> } // ok!\n\nfn foo<T, U>(x: T, y: U) {}\nfn f() {}\n\nfn main() {\n    let x: bool = true;\n    foo::<bool, u32>(x, 12);              // ok!\n    f();                                  // ok!\n}\n```\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-name-values.rs","byte_start":551,"byte_end":557,"line_start":16,"line_end":16,"column_start":73,"column_end":79,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":73,"highlight_end":79}],"label":"expected 2 generic arguments","suggested_replacement":null,"suggestion_applicability":null,"expansion":null},{"file_name":"tests/ui/pubsub/attr-invalid-name-values.rs","byte_start":558,"byte_end":562,"line_start":16,"line_end":16,"column_start":80,"column_end":84,"is_primary":false,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":80,"highlight_end":84}],"label":"supplied 1 generic argument","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"add missing generic argument","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-name-values.rs","byte_start":562,"byte_end":562,"line_start":16,"line_end":16,"column_start":84,"column_end":84,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":84,"highlight_end":84}],"label":null,"suggested_replacement":", E","suggestion_applicability":"HasPlaceholders","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied\n  --> tests/ui/pubsub/attr-invalid-name-values.rs:16:73\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;\n   |                                                                            ^^^^^^ ---- supplied 1 generic argument\n   |                                                                            |\n   |                                                                            expected 2 generic arguments\n   |\nhelp: add missing generic argument\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;\n   |                                                                                       +++\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"aborting due to 7 previous errors","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to 7 previous errors\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"Some errors have detailed explanations: E0107, E0412, E0433, E0464.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"Some errors have detailed explanations: E0107, E0412, E0433, E0464.\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"For more information about an error, try `rustc --explain E0107`.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"For more information about an error, try `rustc --explain E0107`.\n"}
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] normalized stderr:
[INFO] [stdout] error[E0464]: multiple candidates for `rlib` dependency `serde` found
[INFO] [stdout]  --> $DIR/attr-missing-rpc-name.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | extern crate serde;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib
[INFO] [stdout]   = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib
[INFO] [stdout]   = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib
[INFO] [stdout]   = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib
[INFO] [stdout] 
[INFO] [stdout] error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout]  --> $DIR/attr-missing-rpc-name.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]  --> $DIR/attr-missing-rpc-name.rs:8:3
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[rpc]
[INFO] [stdout]   |   ^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]   --> $DIR/attr-missing-rpc-name.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 |     #[rpc]
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0464`.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] expected stderr:
[INFO] [stdout] error: rpc attribute should have a name e.g. `name = "method_name"`
[INFO] [stdout]   --> $DIR/attr-missing-rpc-name.rs:10:2
[INFO] [stdout]    |
[INFO] [stdout] 10 |       /// Returns a protocol version
[INFO] [stdout]    |  _____^
[INFO] [stdout] 11 | |     #[rpc]
[INFO] [stdout] 12 | |     fn protocol_version(&self) -> Result<String>;
[INFO] [stdout]    | |_________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] diff of stderr:
[INFO] [stdout] 
[INFO] [stdout] normalized stderr:
[INFO] [stdout] error[E0464]: multiple candidates for `rlib` dependency `serde` found
[INFO] [stdout]  --> $DIR/multiple-rpc-attributes.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | extern crate serde;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib
[INFO] [stdout]   = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib
[INFO] [stdout]   = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib
[INFO] [stdout]   = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib
[INFO] [stdout] 
[INFO] [stdout] error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout]  --> $DIR/multiple-rpc-attributes.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]  --> $DIR/multiple-rpc-attributes.rs:8:3
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[rpc]
[INFO] [stdout]   |   ^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]   --> $DIR/multiple-rpc-attributes.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 |     #[rpc(name = "protocolVersion")]
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]   --> $DIR/multiple-rpc-attributes.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 |     #[rpc(name = "protocolVersionAgain")]
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 5 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0464`.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] expected stderr:
[INFO] [stdout] error: Expected only a single rpc attribute per method
[INFO] [stdout]   --> $DIR/multiple-rpc-attributes.rs:10:2
[INFO] [stdout]    |
[INFO] [stdout] 10 |       /// Returns a protocol version
[INFO] [stdout]    |  _____^
[INFO] [stdout] 11 | |     #[rpc(name = "protocolVersion")]
[INFO] [stdout] 12 | |     #[rpc(name = "protocolVersionAgain")]
[INFO] [stdout] 13 | |     fn protocol_version(&self) -> Result<String>;
[INFO] [stdout]    | |_________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] diff of stderr:
[INFO] [stdout] 
[INFO] [stdout] -error: rpc attribute should have a name e.g. `name = "method_name"`
[INFO] [stdout] -  --> $DIR/attr-missing-rpc-name.rs:10:2
[INFO] [stdout] +error[E0464]: multiple candidates for `rlib` dependency `serde` found
[INFO] [stdout] + --> $DIR/attr-missing-rpc-name.rs:1:1
[INFO] [stdout] +  |
[INFO] [stdout] +1 | extern crate serde;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib
[INFO] [stdout] +  = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib
[INFO] [stdout] +  = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib
[INFO] [stdout] +  = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib
[INFO] [stdout] +
[INFO] [stdout] +error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout] + --> $DIR/attr-missing-rpc-name.rs:4:1
[INFO] [stdout] +  |
[INFO] [stdout] +4 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] + --> $DIR/attr-missing-rpc-name.rs:8:3
[INFO] [stdout] +  |
[INFO] [stdout] +8 | #[rpc]
[INFO] [stdout] +  |   ^^^
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] +  --> $DIR/attr-missing-rpc-name.rs:11:4
[INFO] [stdout]     |
[INFO] [stdout] -10 |       /// Returns a protocol version
[INFO] [stdout] -   |  _____^
[INFO] [stdout] -11 | |     #[rpc]
[INFO] [stdout] -12 | |     fn protocol_version(&self) -> Result<String>;
[INFO] [stdout] -   | |_________________________________________________^
[INFO] [stdout] +11 |     #[rpc]
[INFO] [stdout] +   |       ^^^
[INFO] [stdout]  
[INFO] [stdout] -error: aborting due to previous error
[INFO] [stdout] +error: aborting due to 4 previous errors
[INFO] [stdout]  
[INFO] [stdout] +For more information about this error, try `rustc --explain E0464`.
[INFO] [stdout]  
[INFO] [stdout] -error: Expected only a single rpc attribute per method
[INFO] [stdout] -  --> $DIR/multiple-rpc-attributes.rs:10:2
[INFO] [stdout] +error[E0464]: multiple candidates for `rlib` dependency `serde` found
[INFO] [stdout] + --> $DIR/multiple-rpc-attributes.rs:1:1
[INFO] [stdout] +  |
[INFO] [stdout] +1 | extern crate serde;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib
[INFO] [stdout] +  = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib
[INFO] [stdout] +  = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib
[INFO] [stdout] +  = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib
[INFO] [stdout] +
[INFO] [stdout] +error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout] + --> $DIR/multiple-rpc-attributes.rs:4:1
[INFO] [stdout] +  |
[INFO] [stdout] +4 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] + --> $DIR/multiple-rpc-attributes.rs:8:3
[INFO] [stdout] +  |
[INFO] [stdout] +8 | #[rpc]
[INFO] [stdout] +  |   ^^^
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] +  --> $DIR/multiple-rpc-attributes.rs:11:4
[INFO] [stdout]     |
[INFO] [stdout] -10 |       /// Returns a protocol version
[INFO] [stdout] -   |  _____^
[INFO] [stdout] -11 | |     #[rpc(name = "protocolVersion")]
[INFO] [stdout] -12 | |     #[rpc(name = "protocolVersionAgain")]
[INFO] [stdout] -13 | |     fn protocol_version(&self) -> Result<String>;
[INFO] [stdout] -   | |_________________________________________________^
[INFO] [stdout] +11 |     #[rpc(name = "protocolVersion")]
[INFO] [stdout] +   |       ^^^
[INFO] [stdout]  
[INFO] [stdout] -error: aborting due to previous error
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] +  --> $DIR/multiple-rpc-attributes.rs:12:4
[INFO] [stdout] +   |
[INFO] [stdout] +12 |     #[rpc(name = "protocolVersionAgain")]
[INFO] [stdout] +   |       ^^^
[INFO] [stdout]  
[INFO] [stdout] +error: aborting due to 5 previous errors
[INFO] [stdout] +
[INFO] [stdout] +For more information about this error, try `rustc --explain E0464`.
[INFO] [stdout]  
[INFO] [stdout] 
[INFO] [stdout] The actual stderr differed from the expected stderr.
[INFO] [stdout] Actual stderr saved to /tmp/attr-missing-rpc-name.stderr
[INFO] [stdout] To update references, run this command from build directory:
[INFO] [stdout] tests/ui/update-references.sh '/tmp' 'attr-missing-rpc-name.rs'
[INFO] [stdout] 
[INFO] [stdout] error: 1 errors occurred comparing output.
[INFO] [stdout] status: exit status: 1
[INFO] [stdout] command: "rustc" "tests/ui/attr-missing-rpc-name.rs" "-L" "/tmp" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-C" "prefer-dynamic" "-o" "/tmp/attr-missing-rpc-name.stage-id" "-L" "../target/debug/" "-L" "../target/debug/deps/" "-L" "/tmp/attr-missing-rpc-name.stage-id.aux" "-A" "unused"
[INFO] [stdout] stdout:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] stderr:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `rlib` dependency `serde` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/attr-missing-rpc-name.rs","byte_start":0,"byte_end":19,"line_start":1,"line_end":1,"column_start":1,"column_end":20,"is_primary":true,"text":[{"text":"extern crate serde;","highlight_start":1,"highlight_end":20}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `rlib` dependency `serde` found\n --> tests/ui/attr-missing-rpc-name.rs:1:1\n  |\n1 | extern crate serde;\n  | ^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib\n  = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib\n  = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib\n  = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib\n  = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/attr-missing-rpc-name.rs","byte_start":68,"byte_end":104,"line_start":4,"line_end":4,"column_start":1,"column_end":37,"is_primary":true,"text":[{"text":"extern crate susydev_jsonrpc_derive;","highlight_start":1,"highlight_end":37}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found\n --> tests/ui/attr-missing-rpc-name.rs:4:1\n  |\n4 | extern crate susydev_jsonrpc_derive;\n  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so\n  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/attr-missing-rpc-name.rs","byte_start":143,"byte_end":146,"line_start":8,"line_end":8,"column_start":3,"column_end":6,"is_primary":true,"text":[{"text":"#[rpc]","highlight_start":3,"highlight_end":6}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n --> tests/ui/attr-missing-rpc-name.rs:8:3\n  |\n8 | #[rpc]\n  |   ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/attr-missing-rpc-name.rs","byte_start":199,"byte_end":202,"line_start":11,"line_end":11,"column_start":4,"column_end":7,"is_primary":true,"text":[{"text":"\t#[rpc]","highlight_start":4,"highlight_end":7}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n  --> tests/ui/attr-missing-rpc-name.rs:11:4\n   |\n11 |     #[rpc]\n   |       ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"aborting due to 4 previous errors","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to 4 previous errors\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"For more information about this error, try `rustc --explain E0464`.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"For more information about this error, try `rustc --explain E0464`.\n"}
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] The actual stderr differed from the expected stderr.
[INFO] [stdout] Actual stderr saved to /tmp/multiple-rpc-attributes.stderr
[INFO] [stdout] To update references, run this command from build directory:
[INFO] [stdout] tests/ui/update-references.sh '/tmp' 'multiple-rpc-attributes.rs'
[INFO] [stdout] 
[INFO] [stdout] error: 1 errors occurred comparing output.
[INFO] [stdout] status: exit status: 1
[INFO] [stdout] command: "rustc" "tests/ui/multiple-rpc-attributes.rs" "-L" "/tmp" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-C" "prefer-dynamic" "-o" "/tmp/multiple-rpc-attributes.stage-id" "-L" "../target/debug/" "-L" "../target/debug/deps/" "-L" "/tmp/multiple-rpc-attributes.stage-id.aux" "-A" "unused"
[INFO] [stdout] stdout:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] stderr:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `rlib` dependency `serde` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/multiple-rpc-attributes.rs","byte_start":0,"byte_end":19,"line_start":1,"line_end":1,"column_start":1,"column_end":20,"is_primary":true,"text":[{"text":"extern crate serde;","highlight_start":1,"highlight_end":20}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `rlib` dependency `serde` found\n --> tests/ui/multiple-rpc-attributes.rs:1:1\n  |\n1 | extern crate serde;\n  | ^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib\n  = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib\n  = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib\n  = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib\n  = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/multiple-rpc-attributes.rs","byte_start":68,"byte_end":104,"line_start":4,"line_end":4,"column_start":1,"column_end":37,"is_primary":true,"text":[{"text":"extern crate susydev_jsonrpc_derive;","highlight_start":1,"highlight_end":37}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found\n --> tests/ui/multiple-rpc-attributes.rs:4:1\n  |\n4 | extern crate susydev_jsonrpc_derive;\n  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so\n  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/multiple-rpc-attributes.rs","byte_start":143,"byte_end":146,"line_start":8,"line_end":8,"column_start":3,"column_end":6,"is_primary":true,"text":[{"text":"#[rpc]","highlight_start":3,"highlight_end":6}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n --> tests/ui/multiple-rpc-attributes.rs:8:3\n  |\n8 | #[rpc]\n  |   ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/multiple-rpc-attributes.rs","byte_start":199,"byte_end":202,"line_start":11,"line_end":11,"column_start":4,"column_end":7,"is_primary":true,"text":[{"text":"\t#[rpc(name = \"protocolVersion\")]","highlight_start":4,"highlight_end":7}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n  --> tests/ui/multiple-rpc-attributes.rs:11:4\n   |\n11 |     #[rpc(name = \"protocolVersion\")]\n   |       ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/multiple-rpc-attributes.rs","byte_start":233,"byte_end":236,"line_start":12,"line_end":12,"column_start":4,"column_end":7,"is_primary":true,"text":[{"text":"\t#[rpc(name = \"protocolVersionAgain\")]","highlight_start":4,"highlight_end":7}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n  --> tests/ui/multiple-rpc-attributes.rs:12:4\n   |\n12 |     #[rpc(name = \"protocolVersionAgain\")]\n   |       ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"aborting due to 5 previous errors","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to 5 previous errors\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"For more information about this error, try `rustc --explain E0464`.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"For more information about this error, try `rustc --explain E0464`.\n"}
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] normalized stderr:
[INFO] [stdout] error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout]  --> $DIR/attr-both-subscribe-and-unsubscribe.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]  --> $DIR/attr-both-subscribe-and-unsubscribe.rs:6:3
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[rpc]
[INFO] [stdout]   |   ^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `pubsub` in this scope
[INFO] [stdout]   --> $DIR/attr-both-subscribe-and-unsubscribe.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 |     #[pubsub(subscription = "hello", subscribe, unsubscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `pubsub` in this scope
[INFO] [stdout]   --> $DIR/attr-both-subscribe-and-unsubscribe.rs:15:4
[INFO] [stdout]    |
[INFO] [stdout] 15 |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `typed`
[INFO] [stdout]   --> $DIR/attr-both-subscribe-and-unsubscribe.rs:12:44
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout]    |                                               ^^^^^ use of undeclared crate or module `typed`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]    |
[INFO] [stdout] 1  + use susydev_jsonrpc_pubsub::typed;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `SubscriptionId` in this scope
[INFO] [stdout]   --> $DIR/attr-both-subscribe-and-unsubscribe.rs:16:54
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout] 1  + use susydev_jsonrpc_pubsub::SubscriptionId;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied
[INFO] [stdout]   --> $DIR/attr-both-subscribe-and-unsubscribe.rs:16:73
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                                            ^^^^^^ ---- supplied 1 generic argument
[INFO] [stdout]    |                                                                            |
[INFO] [stdout]    |                                                                            expected 2 generic arguments
[INFO] [stdout]    |
[INFO] [stdout] help: add missing generic argument
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;
[INFO] [stdout]    |                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0107, E0412, E0433, E0464.
[INFO] [stdout] For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] expected stderr:
[INFO] [stdout] error: pubsub attribute annotated with both subscribe and unsubscribe
[INFO] [stdout]   --> $DIR/attr-both-subscribe-and-unsubscribe.rs:10:2
[INFO] [stdout]    |
[INFO] [stdout] 10 |       /// Hello subscription
[INFO] [stdout]    |  _____^
[INFO] [stdout] 11 | |     #[pubsub(subscription = "hello", subscribe, unsubscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] 12 | |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout]    | |_________________________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] diff of stderr:
[INFO] [stdout] 
[INFO] [stdout] -error: pubsub attribute annotated with both subscribe and unsubscribe
[INFO] [stdout] -  --> $DIR/attr-both-subscribe-and-unsubscribe.rs:10:2
[INFO] [stdout] +error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout] + --> $DIR/attr-both-subscribe-and-unsubscribe.rs:2:1
[INFO] [stdout] +  |
[INFO] [stdout] +2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] + --> $DIR/attr-both-subscribe-and-unsubscribe.rs:6:3
[INFO] [stdout] +  |
[INFO] [stdout] +6 | #[rpc]
[INFO] [stdout] +  |   ^^^
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `pubsub` in this scope
[INFO] [stdout] +  --> $DIR/attr-both-subscribe-and-unsubscribe.rs:11:4
[INFO] [stdout]     |
[INFO] [stdout] -10 |       /// Hello subscription
[INFO] [stdout] -   |  _____^
[INFO] [stdout] -11 | |     #[pubsub(subscription = "hello", subscribe, unsubscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] -12 | |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout] -   | |_________________________________________________________________________________^
[INFO] [stdout] +11 |     #[pubsub(subscription = "hello", subscribe, unsubscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] +   |       ^^^^^^
[INFO] [stdout]  
[INFO] [stdout] -error: aborting due to previous error
[INFO] [stdout] +error: cannot find attribute `pubsub` in this scope
[INFO] [stdout] +  --> $DIR/attr-both-subscribe-and-unsubscribe.rs:15:4
[INFO] [stdout] +   |
[INFO] [stdout] +15 |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout] +   |       ^^^^^^
[INFO] [stdout]  
[INFO] [stdout] +error[E0433]: failed to resolve: use of undeclared crate or module `typed`
[INFO] [stdout] +  --> $DIR/attr-both-subscribe-and-unsubscribe.rs:12:44
[INFO] [stdout] +   |
[INFO] [stdout] +12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout] +   |                                               ^^^^^ use of undeclared crate or module `typed`
[INFO] [stdout] +   |
[INFO] [stdout] +help: consider importing this module
[INFO] [stdout] +   |
[INFO] [stdout] +1  + use susydev_jsonrpc_pubsub::typed;
[INFO] [stdout] +   |
[INFO] [stdout] +
[INFO] [stdout] +error[E0412]: cannot find type `SubscriptionId` in this scope
[INFO] [stdout] +  --> $DIR/attr-both-subscribe-and-unsubscribe.rs:16:54
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout] +   |                                                         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] +   |
[INFO] [stdout] +help: consider importing this enum
[INFO] [stdout] +   |
[INFO] [stdout] +1  + use susydev_jsonrpc_pubsub::SubscriptionId;
[INFO] [stdout] +   |
[INFO] [stdout] +
[INFO] [stdout] +error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied
[INFO] [stdout] +  --> $DIR/attr-both-subscribe-and-unsubscribe.rs:16:73
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout] +   |                                                                            ^^^^^^ ---- supplied 1 generic argument
[INFO] [stdout] +   |                                                                            |
[INFO] [stdout] +   |                                                                            expected 2 generic arguments
[INFO] [stdout] +   |
[INFO] [stdout] +help: add missing generic argument
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;
[INFO] [stdout] +   |                                                                                       +++
[INFO] [stdout] +
[INFO] [stdout] +error: aborting due to 7 previous errors
[INFO] [stdout] +
[INFO] [stdout] +Some errors have detailed explanations: E0107, E0412, E0433, E0464.
[INFO] [stdout] +For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout]  
[INFO] [stdout] 
[INFO] [stdout] The actual stderr differed from the expected stderr.
[INFO] [stdout] Actual stderr saved to /tmp/pubsub/attr-both-subscribe-and-unsubscribe.stderr
[INFO] [stdout] To update references, run this command from build directory:
[INFO] [stdout] tests/ui/update-references.sh '/tmp' 'pubsub/attr-both-subscribe-and-unsubscribe.rs'
[INFO] [stdout] 
[INFO] [stdout] error: 1 errors occurred comparing output.
[INFO] [stdout] status: exit status: 1
[INFO] [stdout] command: "rustc" "tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs" "-L" "/tmp" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-C" "prefer-dynamic" "-o" "/tmp/pubsub/attr-both-subscribe-and-unsubscribe.stage-id" "-L" "../target/debug/" "-L" "../target/debug/deps/" "-L" "/tmp/pubsub/attr-both-subscribe-and-unsubscribe.stage-id.aux" "-A" "unused"
[INFO] [stdout] stdout:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] stderr:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs","byte_start":13,"byte_end":49,"line_start":2,"line_end":2,"column_start":1,"column_end":37,"is_primary":true,"text":[{"text":"extern crate susydev_jsonrpc_derive;","highlight_start":1,"highlight_end":37}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found\n --> tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs:2:1\n  |\n2 | extern crate susydev_jsonrpc_derive;\n  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so\n  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs","byte_start":125,"byte_end":128,"line_start":6,"line_end":6,"column_start":3,"column_end":6,"is_primary":true,"text":[{"text":"#[rpc]","highlight_start":3,"highlight_end":6}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n --> tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs:6:3\n  |\n6 | #[rpc]\n  |   ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `pubsub` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs","byte_start":190,"byte_end":196,"line_start":11,"line_end":11,"column_start":4,"column_end":10,"is_primary":true,"text":[{"text":"\t#[pubsub(subscription = \"hello\", subscribe, unsubscribe, name = \"hello_subscribe\", alias(\"hello_sub\"))]","highlight_start":4,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `pubsub` in this scope\n  --> tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs:11:4\n   |\n11 |     #[pubsub(subscription = \"hello\", subscribe, unsubscribe, name = \"hello_subscribe\", alias(\"hello_sub\"))]\n   |       ^^^^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `pubsub` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs","byte_start":417,"byte_end":423,"line_start":15,"line_end":15,"column_start":4,"column_end":10,"is_primary":true,"text":[{"text":"\t#[pubsub(subscription = \"hello\", unsubscribe, name = \"hello_unsubscribe\")]","highlight_start":4,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `pubsub` in this scope\n  --> tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs:15:4\n   |\n15 |     #[pubsub(subscription = \"hello\", unsubscribe, name = \"hello_unsubscribe\")]\n   |       ^^^^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"failed to resolve: use of undeclared crate or module `typed`","code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap<u32, u32> = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared crate or module `ferris_wheel`\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs","byte_start":335,"byte_end":340,"line_start":12,"line_end":12,"column_start":44,"column_end":49,"is_primary":true,"text":[{"text":"\tfn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);","highlight_start":44,"highlight_end":49}],"label":"use of undeclared crate or module `typed`","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"consider importing this module","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[],"label":null,"suggested_replacement":"use susydev_jsonrpc_pubsub::typed;\n\n","suggestion_applicability":"MaybeIncorrect","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0433]: failed to resolve: use of undeclared crate or module `typed`\n  --> tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs:12:44\n   |\n12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);\n   |                                               ^^^^^ use of undeclared crate or module `typed`\n   |\nhelp: consider importing this module\n   |\n1  + use susydev_jsonrpc_pubsub::typed;\n   |\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find type `SubscriptionId` in this scope","code":{"code":"E0412","explanation":"A used type name is not in scope.\n\nErroneous code examples:\n\n```compile_fail,E0412\nimpl Something {} // error: type name `Something` is not in scope\n\n// or:\n\ntrait Foo {\n    fn bar(N); // error: type name `N` is not in scope\n}\n\n// or:\n\nfn foo(x: T) {} // type name `T` is not in scope\n```\n\nTo fix this error, please verify you didn't misspell the type name, you did\ndeclare it or imported it into the scope. Examples:\n\n```\nstruct Something;\n\nimpl Something {} // ok!\n\n// or:\n\ntrait Foo {\n    type N;\n\n    fn bar(_: Self::N); // ok!\n}\n\n// or:\n\nfn foo<T>(x: T) {} // ok!\n```\n\nAnother case that causes this error is when a type is imported into a parent\nmodule. To fix this, you can follow the suggestion and use File directly or\n`use super::File;` which will import the types from the parent namespace. An\nexample that causes this error is below:\n\n```compile_fail,E0412\nuse std::fs::File;\n\nmod foo {\n    fn some_function(f: File) {}\n}\n```\n\n```\nuse std::fs::File;\n\nmod foo {\n    // either\n    use super::File;\n    // or\n    // use std::fs::File;\n    fn foo(f: File) {}\n}\n# fn main() {} // don't insert it for us; that'll break imports\n```\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs","byte_start":543,"byte_end":557,"line_start":16,"line_end":16,"column_start":54,"column_end":68,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":54,"highlight_end":68}],"label":"not found in this scope","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"consider importing this enum","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[],"label":null,"suggested_replacement":"use susydev_jsonrpc_pubsub::SubscriptionId;\n\n","suggestion_applicability":"MaybeIncorrect","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0412]: cannot find type `SubscriptionId` in this scope\n  --> tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs:16:54\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;\n   |                                                         ^^^^^^^^^^^^^^ not found in this scope\n   |\nhelp: consider importing this enum\n   |\n1  + use susydev_jsonrpc_pubsub::SubscriptionId;\n   |\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"enum takes 2 generic arguments but 1 generic argument was supplied","code":{"code":"E0107","explanation":"An incorrect number of generic arguments was provided.\n\nErroneous code example:\n\n```compile_fail,E0107\nstruct Foo<T> { x: T }\n\nstruct Bar { x: Foo }             // error: wrong number of type arguments:\n                                  //        expected 1, found 0\nstruct Baz<S, T> { x: Foo<S, T> } // error: wrong number of type arguments:\n                                  //        expected 1, found 2\n\nfn foo<T, U>(x: T, y: U) {}\nfn f() {}\n\nfn main() {\n    let x: bool = true;\n    foo::<bool>(x);                 // error: wrong number of type arguments:\n                                    //        expected 2, found 1\n    foo::<bool, i32, i32>(x, 2, 4); // error: wrong number of type arguments:\n                                    //        expected 2, found 3\n    f::<'static>();                 // error: wrong number of lifetime arguments\n                                    //        expected 0, found 1\n}\n```\n\nWhen using/declaring an item with generic arguments, you must provide the exact\nsame number:\n\n```\nstruct Foo<T> { x: T }\n\nstruct Bar<T> { x: Foo<T> }               // ok!\nstruct Baz<S, T> { x: Foo<S>, y: Foo<T> } // ok!\n\nfn foo<T, U>(x: T, y: U) {}\nfn f() {}\n\nfn main() {\n    let x: bool = true;\n    foo::<bool, u32>(x, 12);              // ok!\n    f();                                  // ok!\n}\n```\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs","byte_start":562,"byte_end":568,"line_start":16,"line_end":16,"column_start":73,"column_end":79,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":73,"highlight_end":79}],"label":"expected 2 generic arguments","suggested_replacement":null,"suggestion_applicability":null,"expansion":null},{"file_name":"tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs","byte_start":569,"byte_end":573,"line_start":16,"line_end":16,"column_start":80,"column_end":84,"is_primary":false,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":80,"highlight_end":84}],"label":"supplied 1 generic argument","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"add missing generic argument","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs","byte_start":573,"byte_end":573,"line_start":16,"line_end":16,"column_start":84,"column_end":84,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":84,"highlight_end":84}],"label":null,"suggested_replacement":", E","suggestion_applicability":"HasPlaceholders","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied\n  --> tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs:16:73\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;\n   |                                                                            ^^^^^^ ---- supplied 1 generic argument\n   |                                                                            |\n   |                                                                            expected 2 generic arguments\n   |\nhelp: add missing generic argument\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;\n   |                                                                                       +++\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"aborting due to 7 previous errors","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to 7 previous errors\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"Some errors have detailed explanations: E0107, E0412, E0433, E0464.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"Some errors have detailed explanations: E0107, E0412, E0433, E0464.\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"For more information about an error, try `rustc --explain E0107`.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"For more information about an error, try `rustc --explain E0107`.\n"}
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] normalized stderr:
[INFO] [stdout] error[E0464]: multiple candidates for `rlib` dependency `serde` found
[INFO] [stdout]  --> $DIR/attr-invalid-name-values.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | extern crate serde;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib
[INFO] [stdout]   = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib
[INFO] [stdout]   = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib
[INFO] [stdout]   = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib
[INFO] [stdout] 
[INFO] [stdout] error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout]  --> $DIR/attr-invalid-name-values.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]  --> $DIR/attr-invalid-name-values.rs:8:3
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[rpc]
[INFO] [stdout]   |   ^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]   --> $DIR/attr-invalid-name-values.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 |     #[rpc(Xname = "protocolVersion")]
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0464`.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] expected stderr:
[INFO] [stdout] error: Invalid attribute parameter(s): 'Xname'. Expected 'name, returns'
[INFO] [stdout]   --> $DIR/attr-invalid-name-values.rs:10:2
[INFO] [stdout]    |
[INFO] [stdout] 10 |       /// Returns a protocol version
[INFO] [stdout]    |  _____^
[INFO] [stdout] 11 | |     #[rpc(Xname = "protocolVersion")]
[INFO] [stdout] 12 | |     fn protocol_version(&self) -> Result<String>;
[INFO] [stdout]    | |_________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] diff of stderr:
[INFO] [stdout] 
[INFO] [stdout] -error: Invalid attribute parameter(s): 'Xname'. Expected 'name, returns'
[INFO] [stdout] -  --> $DIR/attr-invalid-name-values.rs:10:2
[INFO] [stdout] +error[E0464]: multiple candidates for `rlib` dependency `serde` found
[INFO] [stdout] + --> $DIR/attr-invalid-name-values.rs:1:1
[INFO] [stdout] +  |
[INFO] [stdout] +1 | extern crate serde;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib
[INFO] [stdout] +  = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib
[INFO] [stdout] +  = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib
[INFO] [stdout] +  = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib
[INFO] [stdout] +
[INFO] [stdout] +error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout] + --> $DIR/attr-invalid-name-values.rs:4:1
[INFO] [stdout] +  |
[INFO] [stdout] +4 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] + --> $DIR/attr-invalid-name-values.rs:8:3
[INFO] [stdout] +  |
[INFO] [stdout] +8 | #[rpc]
[INFO] [stdout] +  |   ^^^
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] +  --> $DIR/attr-invalid-name-values.rs:11:4
[INFO] [stdout]     |
[INFO] [stdout] -10 |       /// Returns a protocol version
[INFO] [stdout] -   |  _____^
[INFO] [stdout] -11 | |     #[rpc(Xname = "protocolVersion")]
[INFO] [stdout] -12 | |     fn protocol_version(&self) -> Result<String>;
[INFO] [stdout] -   | |_________________________________________________^
[INFO] [stdout] +11 |     #[rpc(Xname = "protocolVersion")]
[INFO] [stdout] +   |       ^^^
[INFO] [stdout]  
[INFO] [stdout] -error: aborting due to previous error
[INFO] [stdout] +error: aborting due to 4 previous errors
[INFO] [stdout]  
[INFO] [stdout] +For more information about this error, try `rustc --explain E0464`.
[INFO] [stdout]  
[INFO] [stdout] 
[INFO] [stdout] The actual stderr differed from the expected stderr.
[INFO] [stdout] Actual stderr saved to /tmp/attr-invalid-name-values.stderr
[INFO] [stdout] To update references, run this command from build directory:
[INFO] [stdout] tests/ui/update-references.sh '/tmp' 'attr-invalid-name-values.rs'
[INFO] [stdout] 
[INFO] [stdout] error: 1 errors occurred comparing output.
[INFO] [stdout] status: exit status: 1
[INFO] [stdout] command: "rustc" "tests/ui/attr-invalid-name-values.rs" "-L" "/tmp" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-C" "prefer-dynamic" "-o" "/tmp/attr-invalid-name-values.stage-id" "-L" "../target/debug/" "-L" "../target/debug/deps/" "-L" "/tmp/attr-invalid-name-values.stage-id.aux" "-A" "unused"
[INFO] [stdout] stdout:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] stderr:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `rlib` dependency `serde` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/attr-invalid-name-values.rs","byte_start":0,"byte_end":19,"line_start":1,"line_end":1,"column_start":1,"column_end":20,"is_primary":true,"text":[{"text":"extern crate serde;","highlight_start":1,"highlight_end":20}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `rlib` dependency `serde` found\n --> tests/ui/attr-invalid-name-values.rs:1:1\n  |\n1 | extern crate serde;\n  | ^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib\n  = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib\n  = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib\n  = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib\n  = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/attr-invalid-name-values.rs","byte_start":68,"byte_end":104,"line_start":4,"line_end":4,"column_start":1,"column_end":37,"is_primary":true,"text":[{"text":"extern crate susydev_jsonrpc_derive;","highlight_start":1,"highlight_end":37}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found\n --> tests/ui/attr-invalid-name-values.rs:4:1\n  |\n4 | extern crate susydev_jsonrpc_derive;\n  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so\n  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/attr-invalid-name-values.rs","byte_start":143,"byte_end":146,"line_start":8,"line_end":8,"column_start":3,"column_end":6,"is_primary":true,"text":[{"text":"#[rpc]","highlight_start":3,"highlight_end":6}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n --> tests/ui/attr-invalid-name-values.rs:8:3\n  |\n8 | #[rpc]\n  |   ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/attr-invalid-name-values.rs","byte_start":199,"byte_end":202,"line_start":11,"line_end":11,"column_start":4,"column_end":7,"is_primary":true,"text":[{"text":"\t#[rpc(Xname = \"protocolVersion\")]","highlight_start":4,"highlight_end":7}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n  --> tests/ui/attr-invalid-name-values.rs:11:4\n   |\n11 |     #[rpc(Xname = \"protocolVersion\")]\n   |       ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"aborting due to 4 previous errors","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to 4 previous errors\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"For more information about this error, try `rustc --explain E0464`.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"For more information about this error, try `rustc --explain E0464`.\n"}
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] normalized stderr:
[INFO] [stdout] error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout]  --> $DIR/attr-invalid-meta-list-names.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]  --> $DIR/attr-invalid-meta-list-names.rs:6:3
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[rpc]
[INFO] [stdout]   |   ^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `pubsub` in this scope
[INFO] [stdout]   --> $DIR/attr-invalid-meta-list-names.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 |     #[pubsub(subscription = "hello", subscribe, name = "hello_subscribe", Xalias("hello_sub"))]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `pubsub` in this scope
[INFO] [stdout]   --> $DIR/attr-invalid-meta-list-names.rs:15:4
[INFO] [stdout]    |
[INFO] [stdout] 15 |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `typed`
[INFO] [stdout]   --> $DIR/attr-invalid-meta-list-names.rs:12:44
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout]    |                                               ^^^^^ use of undeclared crate or module `typed`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]    |
[INFO] [stdout] 1  + use susydev_jsonrpc_pubsub::typed;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `SubscriptionId` in this scope
[INFO] [stdout]   --> $DIR/attr-invalid-meta-list-names.rs:16:54
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout] 1  + use susydev_jsonrpc_pubsub::SubscriptionId;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied
[INFO] [stdout]   --> $DIR/attr-invalid-meta-list-names.rs:16:73
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                                            ^^^^^^ ---- supplied 1 generic argument
[INFO] [stdout]    |                                                                            |
[INFO] [stdout]    |                                                                            expected 2 generic arguments
[INFO] [stdout]    |
[INFO] [stdout] help: add missing generic argument
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;
[INFO] [stdout]    |                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0107, E0412, E0433, E0464.
[INFO] [stdout] For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] expected stderr:
[INFO] [stdout] error: Invalid attribute parameter(s): 'Xalias'. Expected 'alias'
[INFO] [stdout]   --> $DIR/attr-invalid-meta-list-names.rs:10:2
[INFO] [stdout]    |
[INFO] [stdout] 10 |       /// Hello subscription
[INFO] [stdout]    |  _____^
[INFO] [stdout] 11 | |     #[pubsub(subscription = "hello", subscribe, name = "hello_subscribe", Xalias("hello_sub"))]
[INFO] [stdout] 12 | |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout]    | |_________________________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] diff of stderr:
[INFO] [stdout] 
[INFO] [stdout] -error: Invalid attribute parameter(s): 'Xalias'. Expected 'alias'
[INFO] [stdout] -  --> $DIR/attr-invalid-meta-list-names.rs:10:2
[INFO] [stdout] +error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout] + --> $DIR/attr-invalid-meta-list-names.rs:2:1
[INFO] [stdout] +  |
[INFO] [stdout] +2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] + --> $DIR/attr-invalid-meta-list-names.rs:6:3
[INFO] [stdout] +  |
[INFO] [stdout] +6 | #[rpc]
[INFO] [stdout] +  |   ^^^
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `pubsub` in this scope
[INFO] [stdout] +  --> $DIR/attr-invalid-meta-list-names.rs:11:4
[INFO] [stdout]     |
[INFO] [stdout] -10 |       /// Hello subscription
[INFO] [stdout] -   |  _____^
[INFO] [stdout] -11 | |     #[pubsub(subscription = "hello", subscribe, name = "hello_subscribe", Xalias("hello_sub"))]
[INFO] [stdout] -12 | |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout] -   | |_________________________________________________________________________________^
[INFO] [stdout] +11 |     #[pubsub(subscription = "hello", subscribe, name = "hello_subscribe", Xalias("hello_sub"))]
[INFO] [stdout] +   |       ^^^^^^
[INFO] [stdout]  
[INFO] [stdout] -error: aborting due to previous error
[INFO] [stdout] +error: cannot find attribute `pubsub` in this scope
[INFO] [stdout] +  --> $DIR/attr-invalid-meta-list-names.rs:15:4
[INFO] [stdout] +   |
[INFO] [stdout] +15 |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout] +   |       ^^^^^^
[INFO] [stdout]  
[INFO] [stdout] +error[E0433]: failed to resolve: use of undeclared crate or module `typed`
[INFO] [stdout] +  --> $DIR/attr-invalid-meta-list-names.rs:12:44
[INFO] [stdout] +   |
[INFO] [stdout] +12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout] +   |                                               ^^^^^ use of undeclared crate or module `typed`
[INFO] [stdout] +   |
[INFO] [stdout] +help: consider importing this module
[INFO] [stdout] +   |
[INFO] [stdout] +1  + use susydev_jsonrpc_pubsub::typed;
[INFO] [stdout] +   |
[INFO] [stdout] +
[INFO] [stdout] +error[E0412]: cannot find type `SubscriptionId` in this scope
[INFO] [stdout] +  --> $DIR/attr-invalid-meta-list-names.rs:16:54
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout] +   |                                                         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] +   |
[INFO] [stdout] +help: consider importing this enum
[INFO] [stdout] +   |
[INFO] [stdout] +1  + use susydev_jsonrpc_pubsub::SubscriptionId;
[INFO] [stdout] +   |
[INFO] [stdout] +
[INFO] [stdout] +error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied
[INFO] [stdout] +  --> $DIR/attr-invalid-meta-list-names.rs:16:73
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout] +   |                                                                            ^^^^^^ ---- supplied 1 generic argument
[INFO] [stdout] +   |                                                                            |
[INFO] [stdout] +   |                                                                            expected 2 generic arguments
[INFO] [stdout] +   |
[INFO] [stdout] +help: add missing generic argument
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;
[INFO] [stdout] +   |                                                                                       +++
[INFO] [stdout] +
[INFO] [stdout] +error: aborting due to 7 previous errors
[INFO] [stdout] +
[INFO] [stdout] +Some errors have detailed explanations: E0107, E0412, E0433, E0464.
[INFO] [stdout] +For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout]  
[INFO] [stdout] 
[INFO] [stdout] The actual stderr differed from the expected stderr.
[INFO] [stdout] Actual stderr saved to /tmp/pubsub/attr-invalid-meta-list-names.stderr
[INFO] [stdout] To update references, run this command from build directory:
[INFO] [stdout] tests/ui/update-references.sh '/tmp' 'pubsub/attr-invalid-meta-list-names.rs'
[INFO] [stdout] 
[INFO] [stdout] error: 1 errors occurred comparing output.
[INFO] [stdout] status: exit status: 1
[INFO] [stdout] command: "rustc" "tests/ui/pubsub/attr-invalid-meta-list-names.rs" "-L" "/tmp" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-C" "prefer-dynamic" "-o" "/tmp/pubsub/attr-invalid-meta-list-names.stage-id" "-L" "../target/debug/" "-L" "../target/debug/deps/" "-L" "/tmp/pubsub/attr-invalid-meta-list-names.stage-id.aux" "-A" "unused"
[INFO] [stdout] stdout:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] stderr:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-list-names.rs","byte_start":13,"byte_end":49,"line_start":2,"line_end":2,"column_start":1,"column_end":37,"is_primary":true,"text":[{"text":"extern crate susydev_jsonrpc_derive;","highlight_start":1,"highlight_end":37}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found\n --> tests/ui/pubsub/attr-invalid-meta-list-names.rs:2:1\n  |\n2 | extern crate susydev_jsonrpc_derive;\n  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so\n  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-list-names.rs","byte_start":125,"byte_end":128,"line_start":6,"line_end":6,"column_start":3,"column_end":6,"is_primary":true,"text":[{"text":"#[rpc]","highlight_start":3,"highlight_end":6}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n --> tests/ui/pubsub/attr-invalid-meta-list-names.rs:6:3\n  |\n6 | #[rpc]\n  |   ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `pubsub` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-list-names.rs","byte_start":190,"byte_end":196,"line_start":11,"line_end":11,"column_start":4,"column_end":10,"is_primary":true,"text":[{"text":"\t#[pubsub(subscription = \"hello\", subscribe, name = \"hello_subscribe\", Xalias(\"hello_sub\"))]","highlight_start":4,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `pubsub` in this scope\n  --> tests/ui/pubsub/attr-invalid-meta-list-names.rs:11:4\n   |\n11 |     #[pubsub(subscription = \"hello\", subscribe, name = \"hello_subscribe\", Xalias(\"hello_sub\"))]\n   |       ^^^^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `pubsub` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-list-names.rs","byte_start":405,"byte_end":411,"line_start":15,"line_end":15,"column_start":4,"column_end":10,"is_primary":true,"text":[{"text":"\t#[pubsub(subscription = \"hello\", unsubscribe, name = \"hello_unsubscribe\")]","highlight_start":4,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `pubsub` in this scope\n  --> tests/ui/pubsub/attr-invalid-meta-list-names.rs:15:4\n   |\n15 |     #[pubsub(subscription = \"hello\", unsubscribe, name = \"hello_unsubscribe\")]\n   |       ^^^^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"failed to resolve: use of undeclared crate or module `typed`","code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap<u32, u32> = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared crate or module `ferris_wheel`\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-list-names.rs","byte_start":323,"byte_end":328,"line_start":12,"line_end":12,"column_start":44,"column_end":49,"is_primary":true,"text":[{"text":"\tfn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);","highlight_start":44,"highlight_end":49}],"label":"use of undeclared crate or module `typed`","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"consider importing this module","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-list-names.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[],"label":null,"suggested_replacement":"use susydev_jsonrpc_pubsub::typed;\n\n","suggestion_applicability":"MaybeIncorrect","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0433]: failed to resolve: use of undeclared crate or module `typed`\n  --> tests/ui/pubsub/attr-invalid-meta-list-names.rs:12:44\n   |\n12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);\n   |                                               ^^^^^ use of undeclared crate or module `typed`\n   |\nhelp: consider importing this module\n   |\n1  + use susydev_jsonrpc_pubsub::typed;\n   |\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find type `SubscriptionId` in this scope","code":{"code":"E0412","explanation":"A used type name is not in scope.\n\nErroneous code examples:\n\n```compile_fail,E0412\nimpl Something {} // error: type name `Something` is not in scope\n\n// or:\n\ntrait Foo {\n    fn bar(N); // error: type name `N` is not in scope\n}\n\n// or:\n\nfn foo(x: T) {} // type name `T` is not in scope\n```\n\nTo fix this error, please verify you didn't misspell the type name, you did\ndeclare it or imported it into the scope. Examples:\n\n```\nstruct Something;\n\nimpl Something {} // ok!\n\n// or:\n\ntrait Foo {\n    type N;\n\n    fn bar(_: Self::N); // ok!\n}\n\n// or:\n\nfn foo<T>(x: T) {} // ok!\n```\n\nAnother case that causes this error is when a type is imported into a parent\nmodule. To fix this, you can follow the suggestion and use File directly or\n`use super::File;` which will import the types from the parent namespace. An\nexample that causes this error is below:\n\n```compile_fail,E0412\nuse std::fs::File;\n\nmod foo {\n    fn some_function(f: File) {}\n}\n```\n\n```\nuse std::fs::File;\n\nmod foo {\n    // either\n    use super::File;\n    // or\n    // use std::fs::File;\n    fn foo(f: File) {}\n}\n# fn main() {} // don't insert it for us; that'll break imports\n```\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-list-names.rs","byte_start":531,"byte_end":545,"line_start":16,"line_end":16,"column_start":54,"column_end":68,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":54,"highlight_end":68}],"label":"not found in this scope","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"consider importing this enum","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-list-names.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[],"label":null,"suggested_replacement":"use susydev_jsonrpc_pubsub::SubscriptionId;\n\n","suggestion_applicability":"MaybeIncorrect","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0412]: cannot find type `SubscriptionId` in this scope\n  --> tests/ui/pubsub/attr-invalid-meta-list-names.rs:16:54\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;\n   |                                                         ^^^^^^^^^^^^^^ not found in this scope\n   |\nhelp: consider importing this enum\n   |\n1  + use susydev_jsonrpc_pubsub::SubscriptionId;\n   |\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"enum takes 2 generic arguments but 1 generic argument was supplied","code":{"code":"E0107","explanation":"An incorrect number of generic arguments was provided.\n\nErroneous code example:\n\n```compile_fail,E0107\nstruct Foo<T> { x: T }\n\nstruct Bar { x: Foo }             // error: wrong number of type arguments:\n                                  //        expected 1, found 0\nstruct Baz<S, T> { x: Foo<S, T> } // error: wrong number of type arguments:\n                                  //        expected 1, found 2\n\nfn foo<T, U>(x: T, y: U) {}\nfn f() {}\n\nfn main() {\n    let x: bool = true;\n    foo::<bool>(x);                 // error: wrong number of type arguments:\n                                    //        expected 2, found 1\n    foo::<bool, i32, i32>(x, 2, 4); // error: wrong number of type arguments:\n                                    //        expected 2, found 3\n    f::<'static>();                 // error: wrong number of lifetime arguments\n                                    //        expected 0, found 1\n}\n```\n\nWhen using/declaring an item with generic arguments, you must provide the exact\nsame number:\n\n```\nstruct Foo<T> { x: T }\n\nstruct Bar<T> { x: Foo<T> }               // ok!\nstruct Baz<S, T> { x: Foo<S>, y: Foo<T> } // ok!\n\nfn foo<T, U>(x: T, y: U) {}\nfn f() {}\n\nfn main() {\n    let x: bool = true;\n    foo::<bool, u32>(x, 12);              // ok!\n    f();                                  // ok!\n}\n```\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-list-names.rs","byte_start":550,"byte_end":556,"line_start":16,"line_end":16,"column_start":73,"column_end":79,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":73,"highlight_end":79}],"label":"expected 2 generic arguments","suggested_replacement":null,"suggestion_applicability":null,"expansion":null},{"file_name":"tests/ui/pubsub/attr-invalid-meta-list-names.rs","byte_start":557,"byte_end":561,"line_start":16,"line_end":16,"column_start":80,"column_end":84,"is_primary":false,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":80,"highlight_end":84}],"label":"supplied 1 generic argument","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"add missing generic argument","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-list-names.rs","byte_start":561,"byte_end":561,"line_start":16,"line_end":16,"column_start":84,"column_end":84,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":84,"highlight_end":84}],"label":null,"suggested_replacement":", E","suggestion_applicability":"HasPlaceholders","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied\n  --> tests/ui/pubsub/attr-invalid-meta-list-names.rs:16:73\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;\n   |                                                                            ^^^^^^ ---- supplied 1 generic argument\n   |                                                                            |\n   |                                                                            expected 2 generic arguments\n   |\nhelp: add missing generic argument\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;\n   |                                                                                       +++\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"aborting due to 7 previous errors","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to 7 previous errors\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"Some errors have detailed explanations: E0107, E0412, E0433, E0464.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"Some errors have detailed explanations: E0107, E0412, E0433, E0464.\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"For more information about an error, try `rustc --explain E0107`.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"For more information about an error, try `rustc --explain E0107`.\n"}
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] normalized stderr:
[INFO] [stdout] error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout]  --> $DIR/attr-invalid-meta-words.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]  --> $DIR/attr-invalid-meta-words.rs:6:3
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[rpc]
[INFO] [stdout]   |   ^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `pubsub` in this scope
[INFO] [stdout]   --> $DIR/attr-invalid-meta-words.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 |     #[pubsub(subscription = "hello", Xsubscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `pubsub` in this scope
[INFO] [stdout]   --> $DIR/attr-invalid-meta-words.rs:15:4
[INFO] [stdout]    |
[INFO] [stdout] 15 |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `typed`
[INFO] [stdout]   --> $DIR/attr-invalid-meta-words.rs:12:44
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout]    |                                               ^^^^^ use of undeclared crate or module `typed`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]    |
[INFO] [stdout] 1  + use susydev_jsonrpc_pubsub::typed;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `SubscriptionId` in this scope
[INFO] [stdout]   --> $DIR/attr-invalid-meta-words.rs:16:54
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout] 1  + use susydev_jsonrpc_pubsub::SubscriptionId;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied
[INFO] [stdout]   --> $DIR/attr-invalid-meta-words.rs:16:73
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                                            ^^^^^^ ---- supplied 1 generic argument
[INFO] [stdout]    |                                                                            |
[INFO] [stdout]    |                                                                            expected 2 generic arguments
[INFO] [stdout]    |
[INFO] [stdout] help: add missing generic argument
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;
[INFO] [stdout]    |                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0107, E0412, E0433, E0464.
[INFO] [stdout] For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] expected stderr:
[INFO] [stdout] error: Invalid attribute parameter(s): 'Xsubscribe'. Expected 'subscribe, unsubscribe'
[INFO] [stdout]   --> $DIR/attr-invalid-meta-words.rs:10:2
[INFO] [stdout]    |
[INFO] [stdout] 10 |       /// Hello subscription
[INFO] [stdout]    |  _____^
[INFO] [stdout] 11 | |     #[pubsub(subscription = "hello", Xsubscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] 12 | |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout]    | |_________________________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] diff of stderr:
[INFO] [stdout] 
[INFO] [stdout] -error: Invalid attribute parameter(s): 'Xsubscribe'. Expected 'subscribe, unsubscribe'
[INFO] [stdout] -  --> $DIR/attr-invalid-meta-words.rs:10:2
[INFO] [stdout] +error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout] + --> $DIR/attr-invalid-meta-words.rs:2:1
[INFO] [stdout] +  |
[INFO] [stdout] +2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] + --> $DIR/attr-invalid-meta-words.rs:6:3
[INFO] [stdout] +  |
[INFO] [stdout] +6 | #[rpc]
[INFO] [stdout] +  |   ^^^
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `pubsub` in this scope
[INFO] [stdout] +  --> $DIR/attr-invalid-meta-words.rs:11:4
[INFO] [stdout]     |
[INFO] [stdout] -10 |       /// Hello subscription
[INFO] [stdout] -   |  _____^
[INFO] [stdout] -11 | |     #[pubsub(subscription = "hello", Xsubscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] -12 | |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout] -   | |_________________________________________________________________________________^
[INFO] [stdout] +11 |     #[pubsub(subscription = "hello", Xsubscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] +   |       ^^^^^^
[INFO] [stdout]  
[INFO] [stdout] -error: aborting due to previous error
[INFO] [stdout] +error: cannot find attribute `pubsub` in this scope
[INFO] [stdout] +  --> $DIR/attr-invalid-meta-words.rs:15:4
[INFO] [stdout] +   |
[INFO] [stdout] +15 |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout] +   |       ^^^^^^
[INFO] [stdout]  
[INFO] [stdout] +error[E0433]: failed to resolve: use of undeclared crate or module `typed`
[INFO] [stdout] +  --> $DIR/attr-invalid-meta-words.rs:12:44
[INFO] [stdout] +   |
[INFO] [stdout] +12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout] +   |                                               ^^^^^ use of undeclared crate or module `typed`
[INFO] [stdout] +   |
[INFO] [stdout] +help: consider importing this module
[INFO] [stdout] +   |
[INFO] [stdout] +1  + use susydev_jsonrpc_pubsub::typed;
[INFO] [stdout] +   |
[INFO] [stdout] +
[INFO] [stdout] +error[E0412]: cannot find type `SubscriptionId` in this scope
[INFO] [stdout] +  --> $DIR/attr-invalid-meta-words.rs:16:54
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout] +   |                                                         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] +   |
[INFO] [stdout] +help: consider importing this enum
[INFO] [stdout] +   |
[INFO] [stdout] +1  + use susydev_jsonrpc_pubsub::SubscriptionId;
[INFO] [stdout] +   |
[INFO] [stdout] +
[INFO] [stdout] +error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied
[INFO] [stdout] +  --> $DIR/attr-invalid-meta-words.rs:16:73
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout] +   |                                                                            ^^^^^^ ---- supplied 1 generic argument
[INFO] [stdout] +   |                                                                            |
[INFO] [stdout] +   |                                                                            expected 2 generic arguments
[INFO] [stdout] +   |
[INFO] [stdout] +help: add missing generic argument
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;
[INFO] [stdout] +   |                                                                                       +++
[INFO] [stdout] +
[INFO] [stdout] +error: aborting due to 7 previous errors
[INFO] [stdout] +
[INFO] [stdout] +Some errors have detailed explanations: E0107, E0412, E0433, E0464.
[INFO] [stdout] +For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout]  
[INFO] [stdout] 
[INFO] [stdout] The actual stderr differed from the expected stderr.
[INFO] [stdout] Actual stderr saved to /tmp/pubsub/attr-invalid-meta-words.stderr
[INFO] [stdout] To update references, run this command from build directory:
[INFO] [stdout] tests/ui/update-references.sh '/tmp' 'pubsub/attr-invalid-meta-words.rs'
[INFO] [stdout] 
[INFO] [stdout] error: 1 errors occurred comparing output.
[INFO] [stdout] status: exit status: 1
[INFO] [stdout] command: "rustc" "tests/ui/pubsub/attr-invalid-meta-words.rs" "-L" "/tmp" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-C" "prefer-dynamic" "-o" "/tmp/pubsub/attr-invalid-meta-words.stage-id" "-L" "../target/debug/" "-L" "../target/debug/deps/" "-L" "/tmp/pubsub/attr-invalid-meta-words.stage-id.aux" "-A" "unused"
[INFO] [stdout] stdout:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] stderr:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-words.rs","byte_start":13,"byte_end":49,"line_start":2,"line_end":2,"column_start":1,"column_end":37,"is_primary":true,"text":[{"text":"extern crate susydev_jsonrpc_derive;","highlight_start":1,"highlight_end":37}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found\n --> tests/ui/pubsub/attr-invalid-meta-words.rs:2:1\n  |\n2 | extern crate susydev_jsonrpc_derive;\n  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so\n  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-words.rs","byte_start":125,"byte_end":128,"line_start":6,"line_end":6,"column_start":3,"column_end":6,"is_primary":true,"text":[{"text":"#[rpc]","highlight_start":3,"highlight_end":6}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n --> tests/ui/pubsub/attr-invalid-meta-words.rs:6:3\n  |\n6 | #[rpc]\n  |   ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `pubsub` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-words.rs","byte_start":190,"byte_end":196,"line_start":11,"line_end":11,"column_start":4,"column_end":10,"is_primary":true,"text":[{"text":"\t#[pubsub(subscription = \"hello\", Xsubscribe, name = \"hello_subscribe\", alias(\"hello_sub\"))]","highlight_start":4,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `pubsub` in this scope\n  --> tests/ui/pubsub/attr-invalid-meta-words.rs:11:4\n   |\n11 |     #[pubsub(subscription = \"hello\", Xsubscribe, name = \"hello_subscribe\", alias(\"hello_sub\"))]\n   |       ^^^^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `pubsub` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-words.rs","byte_start":405,"byte_end":411,"line_start":15,"line_end":15,"column_start":4,"column_end":10,"is_primary":true,"text":[{"text":"\t#[pubsub(subscription = \"hello\", unsubscribe, name = \"hello_unsubscribe\")]","highlight_start":4,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `pubsub` in this scope\n  --> tests/ui/pubsub/attr-invalid-meta-words.rs:15:4\n   |\n15 |     #[pubsub(subscription = \"hello\", unsubscribe, name = \"hello_unsubscribe\")]\n   |       ^^^^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"failed to resolve: use of undeclared crate or module `typed`","code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap<u32, u32> = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared crate or module `ferris_wheel`\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-words.rs","byte_start":323,"byte_end":328,"line_start":12,"line_end":12,"column_start":44,"column_end":49,"is_primary":true,"text":[{"text":"\tfn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);","highlight_start":44,"highlight_end":49}],"label":"use of undeclared crate or module `typed`","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"consider importing this module","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-words.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[],"label":null,"suggested_replacement":"use susydev_jsonrpc_pubsub::typed;\n\n","suggestion_applicability":"MaybeIncorrect","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0433]: failed to resolve: use of undeclared crate or module `typed`\n  --> tests/ui/pubsub/attr-invalid-meta-words.rs:12:44\n   |\n12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);\n   |                                               ^^^^^ use of undeclared crate or module `typed`\n   |\nhelp: consider importing this module\n   |\n1  + use susydev_jsonrpc_pubsub::typed;\n   |\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find type `SubscriptionId` in this scope","code":{"code":"E0412","explanation":"A used type name is not in scope.\n\nErroneous code examples:\n\n```compile_fail,E0412\nimpl Something {} // error: type name `Something` is not in scope\n\n// or:\n\ntrait Foo {\n    fn bar(N); // error: type name `N` is not in scope\n}\n\n// or:\n\nfn foo(x: T) {} // type name `T` is not in scope\n```\n\nTo fix this error, please verify you didn't misspell the type name, you did\ndeclare it or imported it into the scope. Examples:\n\n```\nstruct Something;\n\nimpl Something {} // ok!\n\n// or:\n\ntrait Foo {\n    type N;\n\n    fn bar(_: Self::N); // ok!\n}\n\n// or:\n\nfn foo<T>(x: T) {} // ok!\n```\n\nAnother case that causes this error is when a type is imported into a parent\nmodule. To fix this, you can follow the suggestion and use File directly or\n`use super::File;` which will import the types from the parent namespace. An\nexample that causes this error is below:\n\n```compile_fail,E0412\nuse std::fs::File;\n\nmod foo {\n    fn some_function(f: File) {}\n}\n```\n\n```\nuse std::fs::File;\n\nmod foo {\n    // either\n    use super::File;\n    // or\n    // use std::fs::File;\n    fn foo(f: File) {}\n}\n# fn main() {} // don't insert it for us; that'll break imports\n```\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-words.rs","byte_start":531,"byte_end":545,"line_start":16,"line_end":16,"column_start":54,"column_end":68,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":54,"highlight_end":68}],"label":"not found in this scope","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"consider importing this enum","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-words.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[],"label":null,"suggested_replacement":"use susydev_jsonrpc_pubsub::SubscriptionId;\n\n","suggestion_applicability":"MaybeIncorrect","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0412]: cannot find type `SubscriptionId` in this scope\n  --> tests/ui/pubsub/attr-invalid-meta-words.rs:16:54\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;\n   |                                                         ^^^^^^^^^^^^^^ not found in this scope\n   |\nhelp: consider importing this enum\n   |\n1  + use susydev_jsonrpc_pubsub::SubscriptionId;\n   |\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"enum takes 2 generic arguments but 1 generic argument was supplied","code":{"code":"E0107","explanation":"An incorrect number of generic arguments was provided.\n\nErroneous code example:\n\n```compile_fail,E0107\nstruct Foo<T> { x: T }\n\nstruct Bar { x: Foo }             // error: wrong number of type arguments:\n                                  //        expected 1, found 0\nstruct Baz<S, T> { x: Foo<S, T> } // error: wrong number of type arguments:\n                                  //        expected 1, found 2\n\nfn foo<T, U>(x: T, y: U) {}\nfn f() {}\n\nfn main() {\n    let x: bool = true;\n    foo::<bool>(x);                 // error: wrong number of type arguments:\n                                    //        expected 2, found 1\n    foo::<bool, i32, i32>(x, 2, 4); // error: wrong number of type arguments:\n                                    //        expected 2, found 3\n    f::<'static>();                 // error: wrong number of lifetime arguments\n                                    //        expected 0, found 1\n}\n```\n\nWhen using/declaring an item with generic arguments, you must provide the exact\nsame number:\n\n```\nstruct Foo<T> { x: T }\n\nstruct Bar<T> { x: Foo<T> }               // ok!\nstruct Baz<S, T> { x: Foo<S>, y: Foo<T> } // ok!\n\nfn foo<T, U>(x: T, y: U) {}\nfn f() {}\n\nfn main() {\n    let x: bool = true;\n    foo::<bool, u32>(x, 12);              // ok!\n    f();                                  // ok!\n}\n```\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-words.rs","byte_start":550,"byte_end":556,"line_start":16,"line_end":16,"column_start":73,"column_end":79,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":73,"highlight_end":79}],"label":"expected 2 generic arguments","suggested_replacement":null,"suggestion_applicability":null,"expansion":null},{"file_name":"tests/ui/pubsub/attr-invalid-meta-words.rs","byte_start":557,"byte_end":561,"line_start":16,"line_end":16,"column_start":80,"column_end":84,"is_primary":false,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":80,"highlight_end":84}],"label":"supplied 1 generic argument","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"add missing generic argument","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-words.rs","byte_start":561,"byte_end":561,"line_start":16,"line_end":16,"column_start":84,"column_end":84,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":84,"highlight_end":84}],"label":null,"suggested_replacement":", E","suggestion_applicability":"HasPlaceholders","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied\n  --> tests/ui/pubsub/attr-invalid-meta-words.rs:16:73\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;\n   |                                                                            ^^^^^^ ---- supplied 1 generic argument\n   |                                                                            |\n   |                                                                            expected 2 generic arguments\n   |\nhelp: add missing generic argument\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;\n   |                                                                                       +++\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"aborting due to 7 previous errors","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to 7 previous errors\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"Some errors have detailed explanations: E0107, E0412, E0433, E0464.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"Some errors have detailed explanations: E0107, E0412, E0433, E0464.\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"For more information about an error, try `rustc --explain E0107`.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"For more information about an error, try `rustc --explain E0107`.\n"}
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] normalized stderr:
[INFO] [stdout] error[E0464]: multiple candidates for `rlib` dependency `serde` found
[INFO] [stdout]  --> $DIR/attr-invalid-meta-words.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | extern crate serde;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib
[INFO] [stdout]   = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib
[INFO] [stdout]   = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib
[INFO] [stdout]   = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib
[INFO] [stdout] 
[INFO] [stdout] error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout]  --> $DIR/attr-invalid-meta-words.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]  --> $DIR/attr-invalid-meta-words.rs:8:3
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[rpc]
[INFO] [stdout]   |   ^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]   --> $DIR/attr-invalid-meta-words.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 |     #[rpc(name = "protocolVersion", Xmeta)]
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0464`.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] expected stderr:
[INFO] [stdout] error: Invalid attribute parameter(s): 'Xmeta'. Expected 'meta'
[INFO] [stdout]   --> $DIR/attr-invalid-meta-words.rs:10:2
[INFO] [stdout]    |
[INFO] [stdout] 10 |       /// Returns a protocol version
[INFO] [stdout]    |  _____^
[INFO] [stdout] 11 | |     #[rpc(name = "protocolVersion", Xmeta)]
[INFO] [stdout] 12 | |     fn protocol_version(&self) -> Result<String>;
[INFO] [stdout]    | |_________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] diff of stderr:
[INFO] [stdout] 
[INFO] [stdout] -error: Invalid attribute parameter(s): 'Xmeta'. Expected 'meta'
[INFO] [stdout] -  --> $DIR/attr-invalid-meta-words.rs:10:2
[INFO] [stdout] +error[E0464]: multiple candidates for `rlib` dependency `serde` found
[INFO] [stdout] + --> $DIR/attr-invalid-meta-words.rs:1:1
[INFO] [stdout] +  |
[INFO] [stdout] +1 | extern crate serde;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib
[INFO] [stdout] +  = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib
[INFO] [stdout] +  = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib
[INFO] [stdout] +  = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib
[INFO] [stdout] +
[INFO] [stdout] +error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout] + --> $DIR/attr-invalid-meta-words.rs:4:1
[INFO] [stdout] +  |
[INFO] [stdout] +4 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] + --> $DIR/attr-invalid-meta-words.rs:8:3
[INFO] [stdout] +  |
[INFO] [stdout] +8 | #[rpc]
[INFO] [stdout] +  |   ^^^
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] +  --> $DIR/attr-invalid-meta-words.rs:11:4
[INFO] [stdout]     |
[INFO] [stdout] -10 |       /// Returns a protocol version
[INFO] [stdout] -   |  _____^
[INFO] [stdout] -11 | |     #[rpc(name = "protocolVersion", Xmeta)]
[INFO] [stdout] -12 | |     fn protocol_version(&self) -> Result<String>;
[INFO] [stdout] -   | |_________________________________________________^
[INFO] [stdout] +11 |     #[rpc(name = "protocolVersion", Xmeta)]
[INFO] [stdout] +   |       ^^^
[INFO] [stdout]  
[INFO] [stdout] -error: aborting due to previous error
[INFO] [stdout] +error: aborting due to 4 previous errors
[INFO] [stdout]  
[INFO] [stdout] +For more information about this error, try `rustc --explain E0464`.
[INFO] [stdout]  
[INFO] [stdout] 
[INFO] [stdout] The actual stderr differed from the expected stderr.
[INFO] [stdout] Actual stderr saved to /tmp/attr-invalid-meta-words.stderr
[INFO] [stdout] To update references, run this command from build directory:
[INFO] [stdout] tests/ui/update-references.sh '/tmp' 'attr-invalid-meta-words.rs'
[INFO] [stdout] 
[INFO] [stdout] error: 1 errors occurred comparing output.
[INFO] [stdout] status: exit status: 1
[INFO] [stdout] command: "rustc" "tests/ui/attr-invalid-meta-words.rs" "-L" "/tmp" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-C" "prefer-dynamic" "-o" "/tmp/attr-invalid-meta-words.stage-id" "-L" "../target/debug/" "-L" "../target/debug/deps/" "-L" "/tmp/attr-invalid-meta-words.stage-id.aux" "-A" "unused"
[INFO] [stdout] stdout:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] stderr:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `rlib` dependency `serde` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/attr-invalid-meta-words.rs","byte_start":0,"byte_end":19,"line_start":1,"line_end":1,"column_start":1,"column_end":20,"is_primary":true,"text":[{"text":"extern crate serde;","highlight_start":1,"highlight_end":20}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `rlib` dependency `serde` found\n --> tests/ui/attr-invalid-meta-words.rs:1:1\n  |\n1 | extern crate serde;\n  | ^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib\n  = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib\n  = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib\n  = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib\n  = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/attr-invalid-meta-words.rs","byte_start":68,"byte_end":104,"line_start":4,"line_end":4,"column_start":1,"column_end":37,"is_primary":true,"text":[{"text":"extern crate susydev_jsonrpc_derive;","highlight_start":1,"highlight_end":37}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found\n --> tests/ui/attr-invalid-meta-words.rs:4:1\n  |\n4 | extern crate susydev_jsonrpc_derive;\n  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so\n  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/attr-invalid-meta-words.rs","byte_start":143,"byte_end":146,"line_start":8,"line_end":8,"column_start":3,"column_end":6,"is_primary":true,"text":[{"text":"#[rpc]","highlight_start":3,"highlight_end":6}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n --> tests/ui/attr-invalid-meta-words.rs:8:3\n  |\n8 | #[rpc]\n  |   ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/attr-invalid-meta-words.rs","byte_start":199,"byte_end":202,"line_start":11,"line_end":11,"column_start":4,"column_end":7,"is_primary":true,"text":[{"text":"\t#[rpc(name = \"protocolVersion\", Xmeta)]","highlight_start":4,"highlight_end":7}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n  --> tests/ui/attr-invalid-meta-words.rs:11:4\n   |\n11 |     #[rpc(name = \"protocolVersion\", Xmeta)]\n   |       ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"aborting due to 4 previous errors","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to 4 previous errors\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"For more information about this error, try `rustc --explain E0464`.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"For more information about this error, try `rustc --explain E0464`.\n"}
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] normalized stderr:
[INFO] [stdout] error[E0464]: multiple candidates for `rlib` dependency `serde` found
[INFO] [stdout]  --> $DIR/attr-invalid-meta-list-names.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | extern crate serde;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib
[INFO] [stdout]   = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib
[INFO] [stdout]   = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib
[INFO] [stdout]   = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib
[INFO] [stdout] 
[INFO] [stdout] error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout]  --> $DIR/attr-invalid-meta-list-names.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]  --> $DIR/attr-invalid-meta-list-names.rs:8:3
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[rpc]
[INFO] [stdout]   |   ^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]   --> $DIR/attr-invalid-meta-list-names.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 |     #[rpc(name = "protocolVersion", Xalias("alias"))]
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0464`.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] expected stderr:
[INFO] [stdout] error: Invalid attribute parameter(s): 'Xalias'. Expected 'alias'
[INFO] [stdout]   --> $DIR/attr-invalid-meta-list-names.rs:10:2
[INFO] [stdout]    |
[INFO] [stdout] 10 |       /// Returns a protocol version
[INFO] [stdout]    |  _____^
[INFO] [stdout] 11 | |     #[rpc(name = "protocolVersion", Xalias("alias"))]
[INFO] [stdout] 12 | |     fn protocol_version(&self) -> Result<String>;
[INFO] [stdout]    | |_________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] diff of stderr:
[INFO] [stdout] 
[INFO] [stdout] -error: Invalid attribute parameter(s): 'Xalias'. Expected 'alias'
[INFO] [stdout] -  --> $DIR/attr-invalid-meta-list-names.rs:10:2
[INFO] [stdout] +error[E0464]: multiple candidates for `rlib` dependency `serde` found
[INFO] [stdout] + --> $DIR/attr-invalid-meta-list-names.rs:1:1
[INFO] [stdout] +  |
[INFO] [stdout] +1 | extern crate serde;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib
[INFO] [stdout] +  = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib
[INFO] [stdout] +  = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib
[INFO] [stdout] +  = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib
[INFO] [stdout] +
[INFO] [stdout] +error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout] + --> $DIR/attr-invalid-meta-list-names.rs:4:1
[INFO] [stdout] +  |
[INFO] [stdout] +4 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] + --> $DIR/attr-invalid-meta-list-names.rs:8:3
[INFO] [stdout] +  |
[INFO] [stdout] +8 | #[rpc]
[INFO] [stdout] +  |   ^^^
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] +  --> $DIR/attr-invalid-meta-list-names.rs:11:4
[INFO] [stdout]     |
[INFO] [stdout] -10 |       /// Returns a protocol version
[INFO] [stdout] -   |  _____^
[INFO] [stdout] -11 | |     #[rpc(name = "protocolVersion", Xalias("alias"))]
[INFO] [stdout] -12 | |     fn protocol_version(&self) -> Result<String>;
[INFO] [stdout] -   | |_________________________________________________^
[INFO] [stdout] +11 |     #[rpc(name = "protocolVersion", Xalias("alias"))]
[INFO] [stdout] +   |       ^^^
[INFO] [stdout]  
[INFO] [stdout] -error: aborting due to previous error
[INFO] [stdout] +error: aborting due to 4 previous errors
[INFO] [stdout]  
[INFO] [stdout] +For more information about this error, try `rustc --explain E0464`.
[INFO] [stdout]  
[INFO] [stdout] 
[INFO] [stdout] The actual stderr differed from the expected stderr.
[INFO] [stdout] Actual stderr saved to /tmp/attr-invalid-meta-list-names.stderr
[INFO] [stdout] To update references, run this command from build directory:
[INFO] [stdout] tests/ui/update-references.sh '/tmp' 'attr-invalid-meta-list-names.rs'
[INFO] [stdout] 
[INFO] [stdout] error: 1 errors occurred comparing output.
[INFO] [stdout] status: exit status: 1
[INFO] [stdout] command: "rustc" "tests/ui/attr-invalid-meta-list-names.rs" "-L" "/tmp" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-C" "prefer-dynamic" "-o" "/tmp/attr-invalid-meta-list-names.stage-id" "-L" "../target/debug/" "-L" "../target/debug/deps/" "-L" "/tmp/attr-invalid-meta-list-names.stage-id.aux" "-A" "unused"
[INFO] [stdout] stdout:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] stderr:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `rlib` dependency `serde` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/attr-invalid-meta-list-names.rs","byte_start":0,"byte_end":19,"line_start":1,"line_end":1,"column_start":1,"column_end":20,"is_primary":true,"text":[{"text":"extern crate serde;","highlight_start":1,"highlight_end":20}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `rlib` dependency `serde` found\n --> tests/ui/attr-invalid-meta-list-names.rs:1:1\n  |\n1 | extern crate serde;\n  | ^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib\n  = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib\n  = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib\n  = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib\n  = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/attr-invalid-meta-list-names.rs","byte_start":68,"byte_end":104,"line_start":4,"line_end":4,"column_start":1,"column_end":37,"is_primary":true,"text":[{"text":"extern crate susydev_jsonrpc_derive;","highlight_start":1,"highlight_end":37}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found\n --> tests/ui/attr-invalid-meta-list-names.rs:4:1\n  |\n4 | extern crate susydev_jsonrpc_derive;\n  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so\n  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/attr-invalid-meta-list-names.rs","byte_start":143,"byte_end":146,"line_start":8,"line_end":8,"column_start":3,"column_end":6,"is_primary":true,"text":[{"text":"#[rpc]","highlight_start":3,"highlight_end":6}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n --> tests/ui/attr-invalid-meta-list-names.rs:8:3\n  |\n8 | #[rpc]\n  |   ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/attr-invalid-meta-list-names.rs","byte_start":199,"byte_end":202,"line_start":11,"line_end":11,"column_start":4,"column_end":7,"is_primary":true,"text":[{"text":"\t#[rpc(name = \"protocolVersion\", Xalias(\"alias\"))]","highlight_start":4,"highlight_end":7}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n  --> tests/ui/attr-invalid-meta-list-names.rs:11:4\n   |\n11 |     #[rpc(name = \"protocolVersion\", Xalias(\"alias\"))]\n   |       ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"aborting due to 4 previous errors","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to 4 previous errors\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"For more information about this error, try `rustc --explain E0464`.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"For more information about this error, try `rustc --explain E0464`.\n"}
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] normalized stderr:
[INFO] [stdout] error[E0464]: multiple candidates for `rlib` dependency `serde` found
[INFO] [stdout]  --> $DIR/too-many-params.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | extern crate serde;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib
[INFO] [stdout]   = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib
[INFO] [stdout]   = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib
[INFO] [stdout]   = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib
[INFO] [stdout] 
[INFO] [stdout] error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout]  --> $DIR/too-many-params.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]  --> $DIR/too-many-params.rs:8:3
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[rpc]
[INFO] [stdout]   |   ^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]   --> $DIR/too-many-params.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 |     #[rpc(name = "tooManyParams")]
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0464`.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] expected stderr:
[INFO] [stdout] error: Maximum supported number of params is 16
[INFO] [stdout]   --> $DIR/too-many-params.rs:10:2
[INFO] [stdout]    |
[INFO] [stdout] 10 |       /// Has too many params
[INFO] [stdout]    |  _____^
[INFO] [stdout] 11 | |     #[rpc(name = "tooManyParams")]
[INFO] [stdout] 12 | |     fn to_many_params(
[INFO] [stdout] 13 | |         &self,
[INFO] [stdout] 14 | |         a: u64, b: u64, c: u64, d: u64, e: u64, f: u64, g: u64, h: u64, i: u64, j: u64,
[INFO] [stdout] 15 | |         k: u64, l: u64, m: u64, n: u64, o: u64, p: u64, q: u64,
[INFO] [stdout] 16 | |     ) -> Result<String>;
[INFO] [stdout]    | |________________________^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] diff of stderr:
[INFO] [stdout] 
[INFO] [stdout] -error: Maximum supported number of params is 16
[INFO] [stdout] -  --> $DIR/too-many-params.rs:10:2
[INFO] [stdout] +error[E0464]: multiple candidates for `rlib` dependency `serde` found
[INFO] [stdout] + --> $DIR/too-many-params.rs:1:1
[INFO] [stdout] +  |
[INFO] [stdout] +1 | extern crate serde;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib
[INFO] [stdout] +  = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib
[INFO] [stdout] +  = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib
[INFO] [stdout] +  = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib
[INFO] [stdout] +
[INFO] [stdout] +error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout] + --> $DIR/too-many-params.rs:4:1
[INFO] [stdout] +  |
[INFO] [stdout] +4 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] + --> $DIR/too-many-params.rs:8:3
[INFO] [stdout] +  |
[INFO] [stdout] +8 | #[rpc]
[INFO] [stdout] +  |   ^^^
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] +  --> $DIR/too-many-params.rs:11:4
[INFO] [stdout]     |
[INFO] [stdout] -10 |       /// Has too many params
[INFO] [stdout] -   |  _____^
[INFO] [stdout] -11 | |     #[rpc(name = "tooManyParams")]
[INFO] [stdout] -12 | |     fn to_many_params(
[INFO] [stdout] -13 | |         &self,
[INFO] [stdout] -14 | |         a: u64, b: u64, c: u64, d: u64, e: u64, f: u64, g: u64, h: u64, i: u64, j: u64,
[INFO] [stdout] -15 | |         k: u64, l: u64, m: u64, n: u64, o: u64, p: u64, q: u64,
[INFO] [stdout] -16 | |     ) -> Result<String>;
[INFO] [stdout] -   | |________________________^
[INFO] [stdout] +11 |     #[rpc(name = "tooManyParams")]
[INFO] [stdout] +   |       ^^^
[INFO] [stdout]  
[INFO] [stdout] -error: aborting due to previous error
[INFO] [stdout] +error: aborting due to 4 previous errors
[INFO] [stdout]  
[INFO] [stdout] +For more information about this error, try `rustc --explain E0464`.
[INFO] [stdout]  
[INFO] [stdout] 
[INFO] [stdout] The actual stderr differed from the expected stderr.
[INFO] [stdout] Actual stderr saved to /tmp/too-many-params.stderr
[INFO] [stdout] To update references, run this command from build directory:
[INFO] [stdout] tests/ui/update-references.sh '/tmp' 'too-many-params.rs'
[INFO] [stdout] 
[INFO] [stdout] error: 1 errors occurred comparing output.
[INFO] [stdout] status: exit status: 1
[INFO] [stdout] command: "rustc" "tests/ui/too-many-params.rs" "-L" "/tmp" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-C" "prefer-dynamic" "-o" "/tmp/too-many-params.stage-id" "-L" "../target/debug/" "-L" "../target/debug/deps/" "-L" "/tmp/too-many-params.stage-id.aux" "-A" "unused"
[INFO] [stdout] stdout:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] stderr:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `rlib` dependency `serde` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/too-many-params.rs","byte_start":0,"byte_end":19,"line_start":1,"line_end":1,"column_start":1,"column_end":20,"is_primary":true,"text":[{"text":"extern crate serde;","highlight_start":1,"highlight_end":20}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `rlib` dependency `serde` found\n --> tests/ui/too-many-params.rs:1:1\n  |\n1 | extern crate serde;\n  | ^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib\n  = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib\n  = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib\n  = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib\n  = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/too-many-params.rs","byte_start":68,"byte_end":104,"line_start":4,"line_end":4,"column_start":1,"column_end":37,"is_primary":true,"text":[{"text":"extern crate susydev_jsonrpc_derive;","highlight_start":1,"highlight_end":37}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found\n --> tests/ui/too-many-params.rs:4:1\n  |\n4 | extern crate susydev_jsonrpc_derive;\n  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so\n  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/too-many-params.rs","byte_start":143,"byte_end":146,"line_start":8,"line_end":8,"column_start":3,"column_end":6,"is_primary":true,"text":[{"text":"#[rpc]","highlight_start":3,"highlight_end":6}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n --> tests/ui/too-many-params.rs:8:3\n  |\n8 | #[rpc]\n  |   ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/too-many-params.rs","byte_start":192,"byte_end":195,"line_start":11,"line_end":11,"column_start":4,"column_end":7,"is_primary":true,"text":[{"text":"\t#[rpc(name = \"tooManyParams\")]","highlight_start":4,"highlight_end":7}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n  --> tests/ui/too-many-params.rs:11:4\n   |\n11 |     #[rpc(name = \"tooManyParams\")]\n   |       ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"aborting due to 4 previous errors","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to 4 previous errors\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"For more information about this error, try `rustc --explain E0464`.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"For more information about this error, try `rustc --explain E0464`.\n"}
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] normalized stderr:
[INFO] [stdout] error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout]  --> $DIR/missing-subscribe.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]  --> $DIR/missing-subscribe.rs:6:3
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[rpc]
[INFO] [stdout]   |   ^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `pubsub` in this scope
[INFO] [stdout]   --> $DIR/missing-subscribe.rs:13:4
[INFO] [stdout]    |
[INFO] [stdout] 13 |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `SubscriptionId` in this scope
[INFO] [stdout]   --> $DIR/missing-subscribe.rs:14:54
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stderr] error: test failed, to rerun pass `--test compiletests`
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout] 1  + use susydev_jsonrpc_pubsub::SubscriptionId;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied
[INFO] [stdout]   --> $DIR/missing-subscribe.rs:14:73
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                                            ^^^^^^ ---- supplied 1 generic argument
[INFO] [stdout]    |                                                                            |
[INFO] [stdout]    |                                                                            expected 2 generic arguments
[INFO] [stdout]    |
[INFO] [stdout] help: add missing generic argument
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;
[INFO] [stdout]    |                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 5 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0107, E0412, E0464.
[INFO] [stdout] For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] expected stderr:
[INFO] [stdout] error: subscription 'hello'. Can't find subscribe method, expected a method annotated with `subscribe` e.g. `#[pubsub(subscription = "hello", subscribe, name = "hello_subscribe")]`
[INFO] [stdout]   --> $DIR/missing-subscribe.rs:12:2
[INFO] [stdout]    |
[INFO] [stdout] 12 |       /// Unsubscribe from hello subscription.
[INFO] [stdout]    |  _____^
[INFO] [stdout] 13 | |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout] 14 | |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    | |________________________________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] diff of stderr:
[INFO] [stdout] 
[INFO] [stdout] normalized stderr:
[INFO] [stdout] error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout]  --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]  --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:6:3
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[rpc]
[INFO] [stdout]   |   ^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `pubsub` in this scope
[INFO] [stdout]   --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 |     #[pubsub(subscription = "hello", name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `pubsub` in this scope
[INFO] [stdout]   --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:15:4
[INFO] [stdout]    |
[INFO] [stdout] 15 |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `typed`
[INFO] [stdout]   --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:12:44
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout]    |                                               ^^^^^ use of undeclared crate or module `typed`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]    |
[INFO] [stdout] 1  + use susydev_jsonrpc_pubsub::typed;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `SubscriptionId` in this scope
[INFO] [stdout]   --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:16:54
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout] 1  + use susydev_jsonrpc_pubsub::SubscriptionId;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied
[INFO] [stdout]   --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:16:73
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                                            ^^^^^^ ---- supplied 1 generic argument
[INFO] [stdout]    |                                                                            |
[INFO] [stdout]    |                                                                            expected 2 generic arguments
[INFO] [stdout]    |
[INFO] [stdout] help: add missing generic argument
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;
[INFO] [stdout]    |                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0107, E0412, E0433, E0464.
[INFO] [stdout] For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] expected stderr:
[INFO] [stdout] error: pubsub attribute not annotated with either subscribe or unsubscribe
[INFO] [stdout]   --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:10:2
[INFO] [stdout]    |
[INFO] [stdout] 10 |       /// Hello subscription
[INFO] [stdout]    |  _____^
[INFO] [stdout] 11 | |     #[pubsub(subscription = "hello", name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] 12 | |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout]    | |_________________________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] diff of stderr:
[INFO] [stdout] 
[INFO] [stdout] -error: subscription 'hello'. Can't find subscribe method, expected a method annotated with `subscribe` e.g. `#[pubsub(subscription = "hello", subscribe, name = "hello_subscribe")]`
[INFO] [stdout] -  --> $DIR/missing-subscribe.rs:12:2
[INFO] [stdout] +error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout] + --> $DIR/missing-subscribe.rs:2:1
[INFO] [stdout] +  |
[INFO] [stdout] +2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] + --> $DIR/missing-subscribe.rs:6:3
[INFO] [stdout] +  |
[INFO] [stdout] +6 | #[rpc]
[INFO] [stdout] +  |   ^^^
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `pubsub` in this scope
[INFO] [stdout] +  --> $DIR/missing-subscribe.rs:13:4
[INFO] [stdout]     |
[INFO] [stdout] -12 |       /// Unsubscribe from hello subscription.
[INFO] [stdout] -   |  _____^
[INFO] [stdout] -13 | |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout] -14 | |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout] -   | |________________________________________________________________________________________^
[INFO] [stdout] +13 |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout] +   |       ^^^^^^
[INFO] [stdout]  
[INFO] [stdout] -error: aborting due to previous error
[INFO] [stdout] +error[E0412]: cannot find type `SubscriptionId` in this scope
[INFO] [stdout] +  --> $DIR/missing-subscribe.rs:14:54
[INFO] [stdout] +   |
[INFO] [stdout] +14 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout] +   |                                                         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] +   |
[INFO] [stdout] +help: consider importing this enum
[INFO] [stdout] +   |
[INFO] [stdout] +1  + use susydev_jsonrpc_pubsub::SubscriptionId;
[INFO] [stdout] +   |
[INFO] [stdout]  
[INFO] [stdout] +error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied
[INFO] [stdout] +  --> $DIR/missing-subscribe.rs:14:73
[INFO] [stdout] +   |
[INFO] [stdout] +14 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout] +   |                                                                            ^^^^^^ ---- supplied 1 generic argument
[INFO] [stdout] +   |                                                                            |
[INFO] [stdout] +   |                                                                            expected 2 generic arguments
[INFO] [stdout] +   |
[INFO] [stdout] +help: add missing generic argument
[INFO] [stdout] +   |
[INFO] [stdout] +14 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;
[INFO] [stdout] +   |                                                                                       +++
[INFO] [stdout] +
[INFO] [stdout] +error: aborting due to 5 previous errors
[INFO] [stdout] +
[INFO] [stdout] +Some errors have detailed explanations: E0107, E0412, E0464.
[INFO] [stdout] +For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout]  
[INFO] [stdout] 
[INFO] [stdout] The actual stderr differed from the expected stderr.
[INFO] [stdout] Actual stderr saved to /tmp/pubsub/missing-subscribe.stderr
[INFO] [stdout] To update references, run this command from build directory:
[INFO] [stdout] tests/ui/update-references.sh '/tmp' 'pubsub/missing-subscribe.rs'
[INFO] [stdout] 
[INFO] [stdout] error: 1 errors occurred comparing output.
[INFO] [stdout] status: exit status: 1
[INFO] [stdout] command: "rustc" "tests/ui/pubsub/missing-subscribe.rs" "-L" "/tmp" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-C" "prefer-dynamic" "-o" "/tmp/pubsub/missing-subscribe.stage-id" "-L" "../target/debug/" "-L" "../target/debug/deps/" "-L" "/tmp/pubsub/missing-subscribe.stage-id.aux" "-A" "unused"
[INFO] [stdout] stdout:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] stderr:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/missing-subscribe.rs","byte_start":13,"byte_end":49,"line_start":2,"line_end":2,"column_start":1,"column_end":37,"is_primary":true,"text":[{"text":"extern crate susydev_jsonrpc_derive;","highlight_start":1,"highlight_end":37}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found\n --> tests/ui/pubsub/missing-subscribe.rs:2:1\n  |\n2 | extern crate susydev_jsonrpc_derive;\n  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so\n  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/missing-subscribe.rs","byte_start":125,"byte_end":128,"line_start":6,"line_end":6,"column_start":3,"column_end":6,"is_primary":true,"text":[{"text":"#[rpc]","highlight_start":3,"highlight_end":6}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n --> tests/ui/pubsub/missing-subscribe.rs:6:3\n  |\n6 | #[rpc]\n  |   ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `pubsub` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/missing-subscribe.rs","byte_start":253,"byte_end":259,"line_start":13,"line_end":13,"column_start":4,"column_end":10,"is_primary":true,"text":[{"text":"\t#[pubsub(subscription = \"hello\", unsubscribe, name = \"hello_unsubscribe\")]","highlight_start":4,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `pubsub` in this scope\n  --> tests/ui/pubsub/missing-subscribe.rs:13:4\n   |\n13 |     #[pubsub(subscription = \"hello\", unsubscribe, name = \"hello_unsubscribe\")]\n   |       ^^^^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find type `SubscriptionId` in this scope","code":{"code":"E0412","explanation":"A used type name is not in scope.\n\nErroneous code examples:\n\n```compile_fail,E0412\nimpl Something {} // error: type name `Something` is not in scope\n\n// or:\n\ntrait Foo {\n    fn bar(N); // error: type name `N` is not in scope\n}\n\n// or:\n\nfn foo(x: T) {} // type name `T` is not in scope\n```\n\nTo fix this error, please verify you didn't misspell the type name, you did\ndeclare it or imported it into the scope. Examples:\n\n```\nstruct Something;\n\nimpl Something {} // ok!\n\n// or:\n\ntrait Foo {\n    type N;\n\n    fn bar(_: Self::N); // ok!\n}\n\n// or:\n\nfn foo<T>(x: T) {} // ok!\n```\n\nAnother case that causes this error is when a type is imported into a parent\nmodule. To fix this, you can follow the suggestion and use File directly or\n`use super::File;` which will import the types from the parent namespace. An\nexample that causes this error is below:\n\n```compile_fail,E0412\nuse std::fs::File;\n\nmod foo {\n    fn some_function(f: File) {}\n}\n```\n\n```\nuse std::fs::File;\n\nmod foo {\n    // either\n    use super::File;\n    // or\n    // use std::fs::File;\n    fn foo(f: File) {}\n}\n# fn main() {} // don't insert it for us; that'll break imports\n```\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/missing-subscribe.rs","byte_start":379,"byte_end":393,"line_start":14,"line_end":14,"column_start":54,"column_end":68,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":54,"highlight_end":68}],"label":"not found in this scope","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"consider importing this enum","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/missing-subscribe.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[],"label":null,"suggested_replacement":"use susydev_jsonrpc_pubsub::SubscriptionId;\n\n","suggestion_applicability":"MaybeIncorrect","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0412]: cannot find type `SubscriptionId` in this scope\n  --> tests/ui/pubsub/missing-subscribe.rs:14:54\n   |\n14 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;\n   |                                                         ^^^^^^^^^^^^^^ not found in this scope\n   |\nhelp: consider importing this enum\n   |\n1  + use susydev_jsonrpc_pubsub::SubscriptionId;\n   |\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"enum takes 2 generic arguments but 1 generic argument was supplied","code":{"code":"E0107","explanation":"An incorrect number of generic arguments was provided.\n\nErroneous code example:\n\n```compile_fail,E0107\nstruct Foo<T> { x: T }\n\nstruct Bar { x: Foo }             // error: wrong number of type arguments:\n                                  //        expected 1, found 0\nstruct Baz<S, T> { x: Foo<S, T> } // error: wrong number of type arguments:\n                                  //        expected 1, found 2\n\nfn foo<T, U>(x: T, y: U) {}\nfn f() {}\n\nfn main() {\n    let x: bool = true;\n    foo::<bool>(x);                 // error: wrong number of type arguments:\n                                    //        expected 2, found 1\n    foo::<bool, i32, i32>(x, 2, 4); // error: wrong number of type arguments:\n                                    //        expected 2, found 3\n    f::<'static>();                 // error: wrong number of lifetime arguments\n                                    //        expected 0, found 1\n}\n```\n\nWhen using/declaring an item with generic arguments, you must provide the exact\nsame number:\n\n```\nstruct Foo<T> { x: T }\n\nstruct Bar<T> { x: Foo<T> }               // ok!\nstruct Baz<S, T> { x: Foo<S>, y: Foo<T> } // ok!\n\nfn foo<T, U>(x: T, y: U) {}\nfn f() {}\n\nfn main() {\n    let x: bool = true;\n    foo::<bool, u32>(x, 12);              // ok!\n    f();                                  // ok!\n}\n```\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/missing-subscribe.rs","byte_start":398,"byte_end":404,"line_start":14,"line_end":14,"column_start":73,"column_end":79,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":73,"highlight_end":79}],"label":"expected 2 generic arguments","suggested_replacement":null,"suggestion_applicability":null,"expansion":null},{"file_name":"tests/ui/pubsub/missing-subscribe.rs","byte_start":405,"byte_end":409,"line_start":14,"line_end":14,"column_start":80,"column_end":84,"is_primary":false,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":80,"highlight_end":84}],"label":"supplied 1 generic argument","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"add missing generic argument","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/missing-subscribe.rs","byte_start":409,"byte_end":409,"line_start":14,"line_end":14,"column_start":84,"column_end":84,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":84,"highlight_end":84}],"label":null,"suggested_replacement":", E","suggestion_applicability":"HasPlaceholders","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied\n  --> tests/ui/pubsub/missing-subscribe.rs:14:73\n   |\n14 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;\n   |                                                                            ^^^^^^ ---- supplied 1 generic argument\n   |                                                                            |\n   |                                                                            expected 2 generic arguments\n   |\nhelp: add missing generic argument\n   |\n14 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;\n   |                                                                                       +++\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"aborting due to 5 previous errors","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to 5 previous errors\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"Some errors have detailed explanations: E0107, E0412, E0464.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"Some errors have detailed explanations: E0107, E0412, E0464.\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"For more information about an error, try `rustc --explain E0107`.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"For more information about an error, try `rustc --explain E0107`.\n"}
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] -error: pubsub attribute not annotated with either subscribe or unsubscribe
[INFO] [stdout] -  --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:10:2
[INFO] [stdout] +error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout] + --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:2:1
[INFO] [stdout] +  |
[INFO] [stdout] +2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] + --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:6:3
[INFO] [stdout] +  |
[INFO] [stdout] +6 | #[rpc]
[INFO] [stdout] +  |   ^^^
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `pubsub` in this scope
[INFO] [stdout] +  --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:11:4
[INFO] [stdout]     |
[INFO] [stdout] -10 |       /// Hello subscription
[INFO] [stdout] -   |  _____^
[INFO] [stdout] -11 | |     #[pubsub(subscription = "hello", name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] -12 | |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout] -   | |_________________________________________________________________________________^
[INFO] [stdout] +11 |     #[pubsub(subscription = "hello", name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] +   |       ^^^^^^
[INFO] [stdout]  
[INFO] [stdout] -error: aborting due to previous error
[INFO] [stdout] +error: cannot find attribute `pubsub` in this scope
[INFO] [stdout] +  --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:15:4
[INFO] [stdout] +   |
[INFO] [stdout] +15 |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout] +   |       ^^^^^^
[INFO] [stdout]  
[INFO] [stdout] +error[E0433]: failed to resolve: use of undeclared crate or module `typed`
[INFO] [stdout] +  --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:12:44
[INFO] [stdout] +   |
[INFO] [stdout] +12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout] +   |                                               ^^^^^ use of undeclared crate or module `typed`
[INFO] [stdout] +   |
[INFO] [stdout] +help: consider importing this module
[INFO] [stdout] +   |
[INFO] [stdout] +1  + use susydev_jsonrpc_pubsub::typed;
[INFO] [stdout] +   |
[INFO] [stdout] +
[INFO] [stdout] +error[E0412]: cannot find type `SubscriptionId` in this scope
[INFO] [stdout] +  --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:16:54
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout] +   |                                                         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] +   |
[INFO] [stdout] +help: consider importing this enum
[INFO] [stdout] +   |
[INFO] [stdout] +1  + use susydev_jsonrpc_pubsub::SubscriptionId;
[INFO] [stdout] +   |
[INFO] [stdout] +
[INFO] [stdout] +error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied
[INFO] [stdout] +  --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:16:73
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout] +   |                                                                            ^^^^^^ ---- supplied 1 generic argument
[INFO] [stdout] +   |                                                                            |
[INFO] [stdout] +   |                                                                            expected 2 generic arguments
[INFO] [stdout] +   |
[INFO] [stdout] +help: add missing generic argument
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;
[INFO] [stdout] +   |                                                                                       +++
[INFO] [stdout] +
[INFO] [stdout] +error: aborting due to 7 previous errors
[INFO] [stdout] +
[INFO] [stdout] +Some errors have detailed explanations: E0107, E0412, E0433, E0464.
[INFO] [stdout] +For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout]  
[INFO] [stdout] 
[INFO] [stdout] The actual stderr differed from the expected stderr.
[INFO] [stdout] Actual stderr saved to /tmp/pubsub/attr-neither-subscribe-or-unsubscribe.stderr
[INFO] [stdout] To update references, run this command from build directory:
[INFO] [stdout] tests/ui/update-references.sh '/tmp' 'pubsub/attr-neither-subscribe-or-unsubscribe.rs'
[INFO] [stdout] 
[INFO] [stdout] error: 1 errors occurred comparing output.
[INFO] [stdout] status: exit status: 1
[INFO] [stdout] command: "rustc" "tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs" "-L" "/tmp" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-C" "prefer-dynamic" "-o" "/tmp/pubsub/attr-neither-subscribe-or-unsubscribe.stage-id" "-L" "../target/debug/" "-L" "../target/debug/deps/" "-L" "/tmp/pubsub/attr-neither-subscribe-or-unsubscribe.stage-id.aux" "-A" "unused"
[INFO] [stdout] stdout:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] stderr:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs","byte_start":13,"byte_end":49,"line_start":2,"line_end":2,"column_start":1,"column_end":37,"is_primary":true,"text":[{"text":"extern crate susydev_jsonrpc_derive;","highlight_start":1,"highlight_end":37}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found\n --> tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs:2:1\n  |\n2 | extern crate susydev_jsonrpc_derive;\n  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so\n  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs","byte_start":125,"byte_end":128,"line_start":6,"line_end":6,"column_start":3,"column_end":6,"is_primary":true,"text":[{"text":"#[rpc]","highlight_start":3,"highlight_end":6}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n --> tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs:6:3\n  |\n6 | #[rpc]\n  |   ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `pubsub` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs","byte_start":190,"byte_end":196,"line_start":11,"line_end":11,"column_start":4,"column_end":10,"is_primary":true,"text":[{"text":"\t#[pubsub(subscription = \"hello\", name = \"hello_subscribe\", alias(\"hello_sub\"))]","highlight_start":4,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `pubsub` in this scope\n  --> tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs:11:4\n   |\n11 |     #[pubsub(subscription = \"hello\", name = \"hello_subscribe\", alias(\"hello_sub\"))]\n   |       ^^^^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `pubsub` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs","byte_start":393,"byte_end":399,"line_start":15,"line_end":15,"column_start":4,"column_end":10,"is_primary":true,"text":[{"text":"\t#[pubsub(subscription = \"hello\", unsubscribe, name = \"hello_unsubscribe\")]","highlight_start":4,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `pubsub` in this scope\n  --> tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs:15:4\n   |\n15 |     #[pubsub(subscription = \"hello\", unsubscribe, name = \"hello_unsubscribe\")]\n   |       ^^^^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"failed to resolve: use of undeclared crate or module `typed`","code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap<u32, u32> = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared crate or module `ferris_wheel`\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs","byte_start":311,"byte_end":316,"line_start":12,"line_end":12,"column_start":44,"column_end":49,"is_primary":true,"text":[{"text":"\tfn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);","highlight_start":44,"highlight_end":49}],"label":"use of undeclared crate or module `typed`","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"consider importing this module","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[],"label":null,"suggested_replacement":"use susydev_jsonrpc_pubsub::typed;\n\n","suggestion_applicability":"MaybeIncorrect","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0433]: failed to resolve: use of undeclared crate or module `typed`\n  --> tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs:12:44\n   |\n12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);\n   |                                               ^^^^^ use of undeclared crate or module `typed`\n   |\nhelp: consider importing this module\n   |\n1  + use susydev_jsonrpc_pubsub::typed;\n   |\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find type `SubscriptionId` in this scope","code":{"code":"E0412","explanation":"A used type name is not in scope.\n\nErroneous code examples:\n\n```compile_fail,E0412\nimpl Something {} // error: type name `Something` is not in scope\n\n// or:\n\ntrait Foo {\n    fn bar(N); // error: type name `N` is not in scope\n}\n\n// or:\n\nfn foo(x: T) {} // type name `T` is not in scope\n```\n\nTo fix this error, please verify you didn't misspell the type name, you did\ndeclare it or imported it into the scope. Examples:\n\n```\nstruct Something;\n\nimpl Something {} // ok!\n\n// or:\n\ntrait Foo {\n    type N;\n\n    fn bar(_: Self::N); // ok!\n}\n\n// or:\n\nfn foo<T>(x: T) {} // ok!\n```\n\nAnother case that causes this error is when a type is imported into a parent\nmodule. To fix this, you can follow the suggestion and use File directly or\n`use super::File;` which will import the types from the parent namespace. An\nexample that causes this error is below:\n\n```compile_fail,E0412\nuse std::fs::File;\n\nmod foo {\n    fn some_function(f: File) {}\n}\n```\n\n```\nuse std::fs::File;\n\nmod foo {\n    // either\n    use super::File;\n    // or\n    // use std::fs::File;\n    fn foo(f: File) {}\n}\n# fn main() {} // don't insert it for us; that'll break imports\n```\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs","byte_start":519,"byte_end":533,"line_start":16,"line_end":16,"column_start":54,"column_end":68,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":54,"highlight_end":68}],"label":"not found in this scope","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"consider importing this enum","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[],"label":null,"suggested_replacement":"use susydev_jsonrpc_pubsub::SubscriptionId;\n\n","suggestion_applicability":"MaybeIncorrect","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0412]: cannot find type `SubscriptionId` in this scope\n  --> tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs:16:54\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;\n   |                                                         ^^^^^^^^^^^^^^ not found in this scope\n   |\nhelp: consider importing this enum\n   |\n1  + use susydev_jsonrpc_pubsub::SubscriptionId;\n   |\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"enum takes 2 generic arguments but 1 generic argument was supplied","code":{"code":"E0107","explanation":"An incorrect number of generic arguments was provided.\n\nErroneous code example:\n\n```compile_fail,E0107\nstruct Foo<T> { x: T }\n\nstruct Bar { x: Foo }             // error: wrong number of type arguments:\n                                  //        expected 1, found 0\nstruct Baz<S, T> { x: Foo<S, T> } // error: wrong number of type arguments:\n                                  //        expected 1, found 2\n\nfn foo<T, U>(x: T, y: U) {}\nfn f() {}\n\nfn main() {\n    let x: bool = true;\n    foo::<bool>(x);                 // error: wrong number of type arguments:\n                                    //        expected 2, found 1\n    foo::<bool, i32, i32>(x, 2, 4); // error: wrong number of type arguments:\n                                    //        expected 2, found 3\n    f::<'static>();                 // error: wrong number of lifetime arguments\n                                    //        expected 0, found 1\n}\n```\n\nWhen using/declaring an item with generic arguments, you must provide the exact\nsame number:\n\n```\nstruct Foo<T> { x: T }\n\nstruct Bar<T> { x: Foo<T> }               // ok!\nstruct Baz<S, T> { x: Foo<S>, y: Foo<T> } // ok!\n\nfn foo<T, U>(x: T, y: U) {}\nfn f() {}\n\nfn main() {\n    let x: bool = true;\n    foo::<bool, u32>(x, 12);              // ok!\n    f();                                  // ok!\n}\n```\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs","byte_start":538,"byte_end":544,"line_start":16,"line_end":16,"column_start":73,"column_end":79,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":73,"highlight_end":79}],"label":"expected 2 generic arguments","suggested_replacement":null,"suggestion_applicability":null,"expansion":null},{"file_name":"tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs","byte_start":545,"byte_end":549,"line_start":16,"line_end":16,"column_start":80,"column_end":84,"is_primary":false,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":80,"highlight_end":84}],"label":"supplied 1 generic argument","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"add missing generic argument","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs","byte_start":549,"byte_end":549,"line_start":16,"line_end":16,"column_start":84,"column_end":84,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":84,"highlight_end":84}],"label":null,"suggested_replacement":", E","suggestion_applicability":"HasPlaceholders","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied\n  --> tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs:16:73\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;\n   |                                                                            ^^^^^^ ---- supplied 1 generic argument\n   |                                                                            |\n   |                                                                            expected 2 generic arguments\n   |\nhelp: add missing generic argument\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;\n   |                                                                                       +++\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"aborting due to 7 previous errors","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to 7 previous errors\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"Some errors have detailed explanations: E0107, E0412, E0433, E0464.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"Some errors have detailed explanations: E0107, E0412, E0433, E0464.\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"For more information about an error, try `rustc --explain E0107`.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"For more information about an error, try `rustc --explain E0107`.\n"}
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] normalized stderr:
[INFO] [stdout] error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout]  --> $DIR/attr-missing-subscription-name.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]  --> $DIR/attr-missing-subscription-name.rs:6:3
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[rpc]
[INFO] [stdout]   |   ^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `pubsub` in this scope
[INFO] [stdout]   --> $DIR/attr-missing-subscription-name.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 |     #[pubsub(subscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `pubsub` in this scope
[INFO] [stdout]   --> $DIR/attr-missing-subscription-name.rs:15:4
[INFO] [stdout]    |
[INFO] [stdout] 15 |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `typed`
[INFO] [stdout]   --> $DIR/attr-missing-subscription-name.rs:12:44
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout]    |                                               ^^^^^ use of undeclared crate or module `typed`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]    |
[INFO] [stdout] 1  + use susydev_jsonrpc_pubsub::typed;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `SubscriptionId` in this scope
[INFO] [stdout]   --> $DIR/attr-missing-subscription-name.rs:16:54
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout] 1  + use susydev_jsonrpc_pubsub::SubscriptionId;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied
[INFO] [stdout]   --> $DIR/attr-missing-subscription-name.rs:16:73
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                                            ^^^^^^ ---- supplied 1 generic argument
[INFO] [stdout]    |                                                                            |
[INFO] [stdout]    |                                                                            expected 2 generic arguments
[INFO] [stdout]    |
[INFO] [stdout] help: add missing generic argument
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;
[INFO] [stdout]    |                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0107, E0412, E0433, E0464.
[INFO] [stdout] For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] expected stderr:
[INFO] [stdout] error: pubsub attribute should have a subscription name
[INFO] [stdout]   --> $DIR/attr-missing-subscription-name.rs:10:2
[INFO] [stdout]    |
[INFO] [stdout] 10 |       /// Hello subscription
[INFO] [stdout]    |  _____^
[INFO] [stdout] 11 | |     #[pubsub(subscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] 12 | |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout]    | |_________________________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] diff of stderr:
[INFO] [stdout] 
[INFO] [stdout] -error: pubsub attribute should have a subscription name
[INFO] [stdout] -  --> $DIR/attr-missing-subscription-name.rs:10:2
[INFO] [stdout] +error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout] + --> $DIR/attr-missing-subscription-name.rs:2:1
[INFO] [stdout] +  |
[INFO] [stdout] +2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] + --> $DIR/attr-missing-subscription-name.rs:6:3
[INFO] [stdout] +  |
[INFO] [stdout] +6 | #[rpc]
[INFO] [stdout] +  |   ^^^
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `pubsub` in this scope
[INFO] [stdout] +  --> $DIR/attr-missing-subscription-name.rs:11:4
[INFO] [stdout]     |
[INFO] [stdout] -10 |       /// Hello subscription
[INFO] [stdout] -   |  _____^
[INFO] [stdout] -11 | |     #[pubsub(subscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] -12 | |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout] -   | |_________________________________________________________________________________^
[INFO] [stdout] +11 |     #[pubsub(subscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] +   |       ^^^^^^
[INFO] [stdout]  
[INFO] [stdout] -error: aborting due to previous error
[INFO] [stdout] +error: cannot find attribute `pubsub` in this scope
[INFO] [stdout] +  --> $DIR/attr-missing-subscription-name.rs:15:4
[INFO] [stdout] +   |
[INFO] [stdout] +15 |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout] +   |       ^^^^^^
[INFO] [stdout]  
[INFO] [stdout] +error[E0433]: failed to resolve: use of undeclared crate or module `typed`
[INFO] [stdout] +  --> $DIR/attr-missing-subscription-name.rs:12:44
[INFO] [stdout] +   |
[INFO] [stdout] +12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout] +   |                                               ^^^^^ use of undeclared crate or module `typed`
[INFO] [stdout] +   |
[INFO] [stdout] +help: consider importing this module
[INFO] [stdout] +   |
[INFO] [stdout] +1  + use susydev_jsonrpc_pubsub::typed;
[INFO] [stdout] +   |
[INFO] [stdout] +
[INFO] [stdout] +error[E0412]: cannot find type `SubscriptionId` in this scope
[INFO] [stdout] +  --> $DIR/attr-missing-subscription-name.rs:16:54
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout] +   |                                                         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] +   |
[INFO] [stdout] +help: consider importing this enum
[INFO] [stdout] +   |
[INFO] [stdout] +1  + use susydev_jsonrpc_pubsub::SubscriptionId;
[INFO] [stdout] +   |
[INFO] [stdout] +
[INFO] [stdout] +error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied
[INFO] [stdout] +  --> $DIR/attr-missing-subscription-name.rs:16:73
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout] +   |                                                                            ^^^^^^ ---- supplied 1 generic argument
[INFO] [stdout] +   |                                                                            |
[INFO] [stdout] +   |                                                                            expected 2 generic arguments
[INFO] [stdout] +   |
[INFO] [stdout] +help: add missing generic argument
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;
[INFO] [stdout] +   |                                                                                       +++
[INFO] [stdout] +
[INFO] [stdout] +error: aborting due to 7 previous errors
[INFO] [stdout] +
[INFO] [stdout] +Some errors have detailed explanations: E0107, E0412, E0433, E0464.
[INFO] [stdout] +For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout]  
[INFO] [stdout] 
[INFO] [stdout] The actual stderr differed from the expected stderr.
[INFO] [stdout] Actual stderr saved to /tmp/pubsub/attr-missing-subscription-name.stderr
[INFO] [stdout] To update references, run this command from build directory:
[INFO] [stdout] tests/ui/update-references.sh '/tmp' 'pubsub/attr-missing-subscription-name.rs'
[INFO] [stdout] 
[INFO] [stdout] error: 1 errors occurred comparing output.
[INFO] [stdout] status: exit status: 1
[INFO] [stdout] command: "rustc" "tests/ui/pubsub/attr-missing-subscription-name.rs" "-L" "/tmp" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-C" "prefer-dynamic" "-o" "/tmp/pubsub/attr-missing-subscription-name.stage-id" "-L" "../target/debug/" "-L" "../target/debug/deps/" "-L" "/tmp/pubsub/attr-missing-subscription-name.stage-id.aux" "-A" "unused"
[INFO] [stdout] stdout:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] stderr:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-missing-subscription-name.rs","byte_start":13,"byte_end":49,"line_start":2,"line_end":2,"column_start":1,"column_end":37,"is_primary":true,"text":[{"text":"extern crate susydev_jsonrpc_derive;","highlight_start":1,"highlight_end":37}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found\n --> tests/ui/pubsub/attr-missing-subscription-name.rs:2:1\n  |\n2 | extern crate susydev_jsonrpc_derive;\n  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so\n  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-missing-subscription-name.rs","byte_start":125,"byte_end":128,"line_start":6,"line_end":6,"column_start":3,"column_end":6,"is_primary":true,"text":[{"text":"#[rpc]","highlight_start":3,"highlight_end":6}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n --> tests/ui/pubsub/attr-missing-subscription-name.rs:6:3\n  |\n6 | #[rpc]\n  |   ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `pubsub` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-missing-subscription-name.rs","byte_start":190,"byte_end":196,"line_start":11,"line_end":11,"column_start":4,"column_end":10,"is_primary":true,"text":[{"text":"\t#[pubsub(subscribe, name = \"hello_subscribe\", alias(\"hello_sub\"))]","highlight_start":4,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `pubsub` in this scope\n  --> tests/ui/pubsub/attr-missing-subscription-name.rs:11:4\n   |\n11 |     #[pubsub(subscribe, name = \"hello_subscribe\", alias(\"hello_sub\"))]\n   |       ^^^^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `pubsub` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-missing-subscription-name.rs","byte_start":380,"byte_end":386,"line_start":15,"line_end":15,"column_start":4,"column_end":10,"is_primary":true,"text":[{"text":"\t#[pubsub(subscription = \"hello\", unsubscribe, name = \"hello_unsubscribe\")]","highlight_start":4,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `pubsub` in this scope\n  --> tests/ui/pubsub/attr-missing-subscription-name.rs:15:4\n   |\n15 |     #[pubsub(subscription = \"hello\", unsubscribe, name = \"hello_unsubscribe\")]\n   |       ^^^^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"failed to resolve: use of undeclared crate or module `typed`","code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap<u32, u32> = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared crate or module `ferris_wheel`\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-missing-subscription-name.rs","byte_start":298,"byte_end":303,"line_start":12,"line_end":12,"column_start":44,"column_end":49,"is_primary":true,"text":[{"text":"\tfn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);","highlight_start":44,"highlight_end":49}],"label":"use of undeclared crate or module `typed`","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"consider importing this module","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-missing-subscription-name.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[],"label":null,"suggested_replacement":"use susydev_jsonrpc_pubsub::typed;\n\n","suggestion_applicability":"MaybeIncorrect","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0433]: failed to resolve: use of undeclared crate or module `typed`\n  --> tests/ui/pubsub/attr-missing-subscription-name.rs:12:44\n   |\n12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);\n   |                                               ^^^^^ use of undeclared crate or module `typed`\n   |\nhelp: consider importing this module\n   |\n1  + use susydev_jsonrpc_pubsub::typed;\n   |\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find type `SubscriptionId` in this scope","code":{"code":"E0412","explanation":"A used type name is not in scope.\n\nErroneous code examples:\n\n```compile_fail,E0412\nimpl Something {} // error: type name `Something` is not in scope\n\n// or:\n\ntrait Foo {\n    fn bar(N); // error: type name `N` is not in scope\n}\n\n// or:\n\nfn foo(x: T) {} // type name `T` is not in scope\n```\n\nTo fix this error, please verify you didn't misspell the type name, you did\ndeclare it or imported it into the scope. Examples:\n\n```\nstruct Something;\n\nimpl Something {} // ok!\n\n// or:\n\ntrait Foo {\n    type N;\n\n    fn bar(_: Self::N); // ok!\n}\n\n// or:\n\nfn foo<T>(x: T) {} // ok!\n```\n\nAnother case that causes this error is when a type is imported into a parent\nmodule. To fix this, you can follow the suggestion and use File directly or\n`use super::File;` which will import the types from the parent namespace. An\nexample that causes this error is below:\n\n```compile_fail,E0412\nuse std::fs::File;\n\nmod foo {\n    fn some_function(f: File) {}\n}\n```\n\n```\nuse std::fs::File;\n\nmod foo {\n    // either\n    use super::File;\n    // or\n    // use std::fs::File;\n    fn foo(f: File) {}\n}\n# fn main() {} // don't insert it for us; that'll break imports\n```\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-missing-subscription-name.rs","byte_start":506,"byte_end":520,"line_start":16,"line_end":16,"column_start":54,"column_end":68,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":54,"highlight_end":68}],"label":"not found in this scope","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"consider importing this enum","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-missing-subscription-name.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[],"label":null,"suggested_replacement":"use susydev_jsonrpc_pubsub::SubscriptionId;\n\n","suggestion_applicability":"MaybeIncorrect","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0412]: cannot find type `SubscriptionId` in this scope\n  --> tests/ui/pubsub/attr-missing-subscription-name.rs:16:54\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;\n   |                                                         ^^^^^^^^^^^^^^ not found in this scope\n   |\nhelp: consider importing this enum\n   |\n1  + use susydev_jsonrpc_pubsub::SubscriptionId;\n   |\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"enum takes 2 generic arguments but 1 generic argument was supplied","code":{"code":"E0107","explanation":"An incorrect number of generic arguments was provided.\n\nErroneous code example:\n\n```compile_fail,E0107\nstruct Foo<T> { x: T }\n\nstruct Bar { x: Foo }             // error: wrong number of type arguments:\n                                  //        expected 1, found 0\nstruct Baz<S, T> { x: Foo<S, T> } // error: wrong number of type arguments:\n                                  //        expected 1, found 2\n\nfn foo<T, U>(x: T, y: U) {}\nfn f() {}\n\nfn main() {\n    let x: bool = true;\n    foo::<bool>(x);                 // error: wrong number of type arguments:\n                                    //        expected 2, found 1\n    foo::<bool, i32, i32>(x, 2, 4); // error: wrong number of type arguments:\n                                    //        expected 2, found 3\n    f::<'static>();                 // error: wrong number of lifetime arguments\n                                    //        expected 0, found 1\n}\n```\n\nWhen using/declaring an item with generic arguments, you must provide the exact\nsame number:\n\n```\nstruct Foo<T> { x: T }\n\nstruct Bar<T> { x: Foo<T> }               // ok!\nstruct Baz<S, T> { x: Foo<S>, y: Foo<T> } // ok!\n\nfn foo<T, U>(x: T, y: U) {}\nfn f() {}\n\nfn main() {\n    let x: bool = true;\n    foo::<bool, u32>(x, 12);              // ok!\n    f();                                  // ok!\n}\n```\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-missing-subscription-name.rs","byte_start":525,"byte_end":531,"line_start":16,"line_end":16,"column_start":73,"column_end":79,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":73,"highlight_end":79}],"label":"expected 2 generic arguments","suggested_replacement":null,"suggestion_applicability":null,"expansion":null},{"file_name":"tests/ui/pubsub/attr-missing-subscription-name.rs","byte_start":532,"byte_end":536,"line_start":16,"line_end":16,"column_start":80,"column_end":84,"is_primary":false,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":80,"highlight_end":84}],"label":"supplied 1 generic argument","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"add missing generic argument","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-missing-subscription-name.rs","byte_start":536,"byte_end":536,"line_start":16,"line_end":16,"column_start":84,"column_end":84,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":84,"highlight_end":84}],"label":null,"suggested_replacement":", E","suggestion_applicability":"HasPlaceholders","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied\n  --> tests/ui/pubsub/attr-missing-subscription-name.rs:16:73\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;\n   |                                                                            ^^^^^^ ---- supplied 1 generic argument\n   |                                                                            |\n   |                                                                            expected 2 generic arguments\n   |\nhelp: add missing generic argument\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;\n   |                                                                                       +++\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"aborting due to 7 previous errors","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to 7 previous errors\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"Some errors have detailed explanations: E0107, E0412, E0433, E0464.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"Some errors have detailed explanations: E0107, E0412, E0433, E0464.\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"For more information about an error, try `rustc --explain E0107`.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"For more information about an error, try `rustc --explain E0107`.\n"}
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] thread 'compile_test' panicked at /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/compiletest_rs-0.3.26/src/lib.rs:101:22:
[INFO] [stdout] Some tests failed
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x560c2fb49c25 - std::backtrace_rs::backtrace::libunwind::trace::h59d96bdb08384354
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/../../backtrace/src/backtrace/libunwind.rs:105:5
[INFO] [stdout]    1:     0x560c2fb49c25 - std::backtrace_rs::backtrace::trace_unsynchronized::h9cf5becacfc93fba
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x560c2fb49c25 - std::sys_common::backtrace::_print_fmt::h10b76d10405dbd48
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/sys_common/backtrace.rs:68:5
[INFO] [stdout]    3:     0x560c2fb49c25 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h6ed9e62a156d84e4
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/sys_common/backtrace.rs:44:22
[INFO] [stdout]    4:     0x560c2fb7383b - core::fmt::rt::Argument::fmt::h645c680983f03c9f
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/fmt/rt.rs:165:63
[INFO] [stdout]    5:     0x560c2fb7383b - core::fmt::write::h8bcd80919a02be29
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/fmt/mod.rs:1169:21
[INFO] [stdout]    6:     0x560c2fb4676f - std::io::Write::write_fmt::h8d0c47c662cad79c
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/io/mod.rs:1835:15
[INFO] [stdout]    7:     0x560c2fb499fe - std::sys_common::backtrace::_print::h6306f131a28d62b0
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/sys_common/backtrace.rs:47:5
[INFO] [stdout]    8:     0x560c2fb499fe - std::sys_common::backtrace::print::h7079288e0a26dfcc
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/sys_common/backtrace.rs:34:9
[INFO] [stdout]    9:     0x560c2fb4baa9 - std::panicking::default_hook::{{closure}}::hb063ecec81a736ba
[INFO] [stdout]   10:     0x560c2fb4b76e - std::panicking::default_hook::hd56ee406bf547b5c
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:295:9
[INFO] [stdout]   11:     0x560c2f624b9a - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::he5eacdef44c8728f
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/alloc/src/boxed.rs:2036:9
[INFO] [stdout]   12:     0x560c2f624b9a - test::test_main::{{closure}}::h0ec9aed229e79095
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/test/src/lib.rs:137:21
[INFO] [stdout]   13:     0x560c2fb4c0ab - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hcbd0d80e1ad4e4f9
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/alloc/src/boxed.rs:2036:9
[INFO] [stdout]   14:     0x560c2fb4c0ab - std::panicking::rust_panic_with_hook::h624aa3ca42ebb8f2
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:799:13
[INFO] [stdout]   15:     0x560c2f7e4128 - std::panicking::begin_panic::{{closure}}::h06bdc48b6bdbc3d8
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:694:9
[INFO] [stdout]   16:     0x560c2f7e006a - std::sys_common::backtrace::__rust_end_short_backtrace::h5164c45fe2456488
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/sys_common/backtrace.rs:171:18
[INFO] [stdout]   17:     0x560c2f7e40c7 - std::panicking::begin_panic::hb036d885cefabf50
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:693:12
[INFO] [stdout]   18:     0x560c2f642884 - compiletest_rs::run_tests::ha459ba217368da19
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/compiletest_rs-0.3.26/src/lib.rs:101:22
[INFO] [stdout]   19:     0x560c2f5f12df - compiletests::run_mode::h7544e06133a1f4f7
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/compiletests.rs:18:2
[INFO] [stdout]   20:     0x560c2f5f1352 - compiletests::compile_test::h74c4e3180fd82459
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/compiletests.rs:23:2
[INFO] [stdout]   21:     0x560c2f5f1327 - compiletests::compile_test::{{closure}}::hba4aa87aad7901a8
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/compiletests.rs:22:18
[INFO] [stdout]   22:     0x560c2f5f0c06 - core::ops::function::FnOnce::call_once::h353b4599c92fde35
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x560c2f62957b - core::ops::function::FnOnce::call_once::h2e43a8f6f3d94b99
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x560c2f62957b - test::__rust_begin_short_backtrace::h214c9f2d2d3fee90
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/test/src/lib.rs:625:18
[INFO] [stdout]   25:     0x560c2f628c81 - test::run_test_in_process::{{closure}}::h510b7ba7990692a5
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/test/src/lib.rs:648:60
[INFO] [stdout]   26:     0x560c2f628c81 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4157186197a93871
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   27:     0x560c2f628c81 - std::panicking::try::do_call::h1bf2463bccd4b28c
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:559:40
[INFO] [stdout]   28:     0x560c2f628c81 - std::panicking::try::hd6d4808c9fab4fa5
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:523:19
[INFO] [stdout]   29:     0x560c2f628c81 - std::panic::catch_unwind::hd5641d97d123f9f2
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panic.rs:149:14
[INFO] [stdout]   30:     0x560c2f628c81 - test::run_test_in_process::hc273b71c8b878a4c
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/test/src/lib.rs:648:27
[INFO] [stdout]   31:     0x560c2f628c81 - test::run_test::{{closure}}::h6838df834eb8467e
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/test/src/lib.rs:569:43
[INFO] [stdout]   32:     0x560c2f5f1644 - test::run_test::{{closure}}::h608b98ecff5665fb
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/test/src/lib.rs:599:41
[INFO] [stdout]   33:     0x560c2f5f1644 - std::sys_common::backtrace::__rust_begin_short_backtrace::hdc4182b97d1042e9
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/sys_common/backtrace.rs:155:18
[INFO] [stdout]   34:     0x560c2f5f6072 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h571773fd21d674c8
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/thread/mod.rs:542:17
[INFO] [stdout]   35:     0x560c2f5f6072 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hdcd384cf2fa70ba3
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   36:     0x560c2f5f6072 - std::panicking::try::do_call::h4f1a44bd81423be1
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:559:40
[INFO] [stdout]   37:     0x560c2f5f6072 - std::panicking::try::h5e02afcb81dcd361
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:523:19
[INFO] [stdout]   38:     0x560c2f5f6072 - std::panic::catch_unwind::h022f75775bfd8c45
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panic.rs:149:14
[INFO] [stdout]   39:     0x560c2f5f6072 - std::thread::Builder::spawn_unchecked_::{{closure}}::hf5a62e9e4e6df1f8
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/thread/mod.rs:541:30
[INFO] [stdout]   40:     0x560c2f5f6072 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6d56360aeb9509a7
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   41:     0x560c2fb5200b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h7a343dc551c06baa
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/alloc/src/boxed.rs:2022:9
[INFO] [stdout]   42:     0x560c2fb5200b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h30b8111cbaa644f3
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/alloc/src/boxed.rs:2022:9
[INFO] [stdout]   43:     0x560c2fb5200b - std::sys::pal::unix::thread::Thread::new::thread_start::h7404e134e61e7a11
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/sys/pal/unix/thread.rs:108:17
[INFO] [stdout]   44:     0x7f1a20a34ac3 - <unknown>
[INFO] [stdout]   45:     0x7f1a20ac5a04 - __clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     compile_test
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.39s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "507ea056de56fed6f52afbb02edf957fd615c6dee32feb0bd2d93e99c3e86c95", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "507ea056de56fed6f52afbb02edf957fd615c6dee32feb0bd2d93e99c3e86c95", kill_on_drop: false }`
[INFO] [stdout] 507ea056de56fed6f52afbb02edf957fd615c6dee32feb0bd2d93e99c3e86c95
[INFO] testing susydev-jsonrpc-derive-11.0.0 against try#b642703cf9526da1e72c0b6755753b939a9c6b6d for pr-125151
[INFO] extracting crate susydev-jsonrpc-derive 11.0.0 into /workspace/builds/worker-4-tc2/source
[INFO] validating manifest of crates.io crate susydev-jsonrpc-derive 11.0.0 on toolchain b642703cf9526da1e72c0b6755753b939a9c6b6d
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate susydev-jsonrpc-derive 11.0.0
[INFO] finished tweaking crates.io crate susydev-jsonrpc-derive 11.0.0
[INFO] tweaked toml for crates.io crate susydev-jsonrpc-derive 11.0.0 written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 149 packages to latest compatible versions
[INFO] [stderr]       Adding addr2line v0.21.0 (latest: v0.22.0)
[INFO] [stderr]       Adding autocfg v0.1.8 (latest: v1.3.0)
[INFO] [stderr]       Adding bitflags v1.3.2 (latest: v2.5.0)
[INFO] [stderr]       Adding bytes v0.4.12 (latest: v1.6.0)
[INFO] [stderr]       Adding cfg-if v0.1.10 (latest: v1.0.0)
[INFO] [stderr]       Adding cloudabi v0.0.3 (latest: v0.1.0)
[INFO] [stderr]       Adding compiletest_rs v0.3.26 (latest: v0.10.2)
[INFO] [stderr]       Adding crossbeam-deque v0.7.4 (latest: v0.8.5)
[INFO] [stderr]       Adding crossbeam-epoch v0.8.2 (latest: v0.9.18)
[INFO] [stderr]       Adding crossbeam-queue v0.2.3 (latest: v0.3.11)
[INFO] [stderr]       Adding crossbeam-utils v0.7.2 (latest: v0.8.20)
[INFO] [stderr]       Adding dirs v2.0.2 (latest: v5.0.1)
[INFO] [stderr]       Adding dirs-sys v0.3.7 (latest: v0.4.1)
[INFO] [stderr]       Adding futures v0.1.31 (latest: v0.3.30)
[INFO] [stderr]       Adding gimli v0.28.1 (latest: v0.29.0)
[INFO] [stderr]       Adding lock_api v0.1.5 (latest: v0.4.12)
[INFO] [stderr]       Adding lock_api v0.3.4 (latest: v0.4.12)
[INFO] [stderr]       Adding memoffset v0.5.6 (latest: v0.9.1)
[INFO] [stderr]       Adding mio v0.6.23 (latest: v0.8.11)
[INFO] [stderr]       Adding miow v0.2.2 (latest: v0.6.0)
[INFO] [stderr]       Adding miow v0.3.7 (latest: v0.6.0)
[INFO] [stderr]       Adding object v0.32.2 (latest: v0.35.0)
[INFO] [stderr]       Adding parking_lot v0.7.1 (latest: v0.12.3)
[INFO] [stderr]       Adding parking_lot v0.9.0 (latest: v0.12.3)
[INFO] [stderr]       Adding parking_lot_core v0.4.0 (latest: v0.9.10)
[INFO] [stderr]       Adding parking_lot_core v0.6.3 (latest: v0.9.10)
[INFO] [stderr]       Adding proc-macro-crate v0.1.5 (latest: v3.1.0)
[INFO] [stderr]       Adding proc-macro2 v0.4.30 (latest: v1.0.83)
[INFO] [stderr]       Adding quote v0.6.13 (latest: v1.0.36)
[INFO] [stderr]       Adding rand v0.6.5 (latest: v0.8.5)
[INFO] [stderr]       Adding rand_chacha v0.1.1 (latest: v0.3.1)
[INFO] [stderr]       Adding rand_core v0.3.1 (latest: v0.6.4)
[INFO] [stderr]       Adding rand_core v0.4.2 (latest: v0.6.4)
[INFO] [stderr]       Adding rand_hc v0.1.0 (latest: v0.3.2)
[INFO] [stderr]       Adding rand_isaac v0.1.1 (latest: v0.3.0)
[INFO] [stderr]       Adding rand_jitter v0.1.4 (latest: v0.4.0)
[INFO] [stderr]       Adding rand_os v0.1.3 (latest: v0.2.2)
[INFO] [stderr]       Adding rand_pcg v0.1.2 (latest: v0.3.1)
[INFO] [stderr]       Adding rand_xorshift v0.1.1 (latest: v0.3.0)
[INFO] [stderr]       Adding rdrand v0.4.0 (latest: v0.8.3)
[INFO] [stderr]       Adding redox_syscall v0.1.57 (latest: v0.5.1)
[INFO] [stderr]       Adding redox_syscall v0.4.1 (latest: v0.5.1)
[INFO] [stderr]       Adding rustc_version v0.2.3 (latest: v0.4.0)
[INFO] [stderr]       Adding rustfix v0.4.6 (latest: v0.8.2)
[INFO] [stderr]       Adding scopeguard v0.3.3 (latest: v1.2.0)
[INFO] [stderr]       Adding semver v0.9.0 (latest: v1.0.23)
[INFO] [stderr]       Adding semver-parser v0.7.0 (latest: v0.10.2)
[INFO] [stderr]       Adding smallvec v0.6.14 (latest: v1.13.2)
[INFO] [stderr]       Adding syn v0.15.44 (latest: v2.0.66)
[INFO] [stderr]       Adding syn v1.0.109 (latest: v2.0.66)
[INFO] [stderr]       Adding synstructure v0.12.6 (latest: v0.13.1)
[INFO] [stderr]       Adding term v0.6.1 (latest: v0.7.0)
[INFO] [stderr]       Adding tester v0.6.0 (latest: v0.9.1)
[INFO] [stderr]       Adding tokio v0.1.22 (latest: v1.37.0)
[INFO] [stderr]       Adding toml v0.5.11 (latest: v0.8.13)
[INFO] [stderr]       Adding unicode-xid v0.1.0 (latest: v0.2.4)
[INFO] [stderr]       Adding wasi v0.11.0+wasi-snapshot-preview1 (latest: v0.13.1+wasi-0.2.0)
[INFO] [stderr]       Adding winapi v0.2.8 (latest: v0.3.9)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2c64f6a1604550580349d45a1fc27a52aae677f039332042b86099809c4faffc
[INFO] running `Command { std: "docker" "start" "-a" "2c64f6a1604550580349d45a1fc27a52aae677f039332042b86099809c4faffc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2c64f6a1604550580349d45a1fc27a52aae677f039332042b86099809c4faffc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2c64f6a1604550580349d45a1fc27a52aae677f039332042b86099809c4faffc", kill_on_drop: false }`
[INFO] [stdout] 2c64f6a1604550580349d45a1fc27a52aae677f039332042b86099809c4faffc
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 74c7b0d322f853a06e44117ca591ef646573dd1491ad102c3e89160d3082a9aa
[INFO] running `Command { std: "docker" "start" "-a" "74c7b0d322f853a06e44117ca591ef646573dd1491ad102c3e89160d3082a9aa", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v0.4.30
[INFO] [stderr]    Compiling unicode-xid v0.1.0
[INFO] [stderr]    Compiling syn v0.15.44
[INFO] [stderr]    Compiling serde v1.0.202
[INFO] [stderr]    Compiling syn v2.0.66
[INFO] [stderr]    Compiling quote v0.6.13
[INFO] [stderr]    Compiling serde_derive v1.0.202
[INFO] [stderr]    Compiling toml v0.5.11
[INFO] [stderr]    Compiling proc-macro-crate v0.1.5
[INFO] [stderr]    Compiling susydev-jsonrpc-derive v11.0.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 15.73s
[INFO] running `Command { std: "docker" "inspect" "74c7b0d322f853a06e44117ca591ef646573dd1491ad102c3e89160d3082a9aa", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "74c7b0d322f853a06e44117ca591ef646573dd1491ad102c3e89160d3082a9aa", kill_on_drop: false }`
[INFO] [stdout] 74c7b0d322f853a06e44117ca591ef646573dd1491ad102c3e89160d3082a9aa
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 1e859eb13ab65bd6633b975f0ec23b90d8d13677ed76c6dfd9494d26f468b517
[INFO] running `Command { std: "docker" "start" "-a" "1e859eb13ab65bd6633b975f0ec23b90d8d13677ed76c6dfd9494d26f468b517", kill_on_drop: false }`
[INFO] [stderr]    Compiling cfg-if v0.1.10
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling futures v0.1.31
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling iovec v0.1.4
[INFO] [stderr]    Compiling autocfg v0.1.8
[INFO] [stderr]    Compiling rand_core v0.4.2
[INFO] [stderr]    Compiling memchr v2.7.2
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling num_cpus v1.16.0
[INFO] [stderr]    Compiling memoffset v0.5.6
[INFO] [stderr]    Compiling lock_api v0.3.4
[INFO] [stderr]    Compiling crossbeam-epoch v0.8.2
[INFO] [stderr]    Compiling serde v1.0.202
[INFO] [stderr]    Compiling net2 v0.2.39
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]    Compiling bytes v0.4.12
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling backtrace v0.3.71
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]    Compiling rand_core v0.3.1
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]    Compiling failure_derive v0.1.8
[INFO] [stderr]    Compiling gimli v0.28.1
[INFO] [stderr]    Compiling smallvec v0.6.14
[INFO] [stderr]    Compiling unicode-xid v0.2.4
[INFO] [stderr]    Compiling parking_lot_core v0.6.3
[INFO] [stderr]    Compiling parking_lot v0.9.0
[INFO] [stderr]    Compiling mio v0.6.23
[INFO] [stderr]    Compiling parking_lot_core v0.4.0
[INFO] [stderr]    Compiling miniz_oxide v0.7.3
[INFO] [stderr]    Compiling rand_xorshift v0.1.1
[INFO] [stderr]    Compiling rand_hc v0.1.0
[INFO] [stderr]    Compiling rand_isaac v0.1.1
[INFO] [stderr]    Compiling tokio-io v0.1.13
[INFO] [stderr]    Compiling tokio-sync v0.1.8
[INFO] [stderr]    Compiling rand_jitter v0.1.4
[INFO] [stderr]    Compiling rand_os v0.1.3
[INFO] [stderr]    Compiling tokio-executor v0.1.10
[INFO] [stderr]    Compiling crossbeam-queue v0.2.3
[INFO] [stderr]    Compiling object v0.32.2
[INFO] [stderr]    Compiling rustc-demangle v0.1.24
[INFO] [stderr]    Compiling tokio-codec v0.1.2
[INFO] [stderr]    Compiling stable_deref_trait v1.2.0
[INFO] [stderr]    Compiling proc-macro2 v0.4.30
[INFO] [stderr]    Compiling owning_ref v0.4.1
[INFO] [stderr]    Compiling scopeguard v0.3.3
[INFO] [stderr]    Compiling unicode-xid v0.1.0
[INFO] [stderr]    Compiling dirs v2.0.2
[INFO] [stderr]    Compiling tokio-current-thread v0.1.7
[INFO] [stderr]    Compiling lock_api v0.1.5
[INFO] [stderr]    Compiling tokio-timer v0.2.13
[INFO] [stderr]    Compiling crossbeam-deque v0.7.4
[INFO] [stderr]    Compiling bstr v1.9.1
[INFO] [stderr]    Compiling tokio-threadpool v0.1.18
[INFO] [stderr]    Compiling unicode-width v0.1.12
[INFO] [stderr]    Compiling syn v0.15.44
[INFO] [stderr]    Compiling tokio-reactor v0.1.12
[INFO] [stderr]    Compiling mio-uds v0.6.8
[INFO] [stderr]    Compiling getopts v0.2.21
[INFO] [stderr]    Compiling quote v0.6.13
[INFO] [stderr]    Compiling term v0.6.1
[INFO] [stderr]    Compiling compiletest_rs v0.3.26
[INFO] [stderr]    Compiling tokio-tcp v0.1.4
[INFO] [stderr]    Compiling regex-automata v0.4.6
[INFO] [stderr]    Compiling tokio-fs v0.1.7
[INFO] [stderr]    Compiling tokio-uds v0.2.7
[INFO] [stderr]    Compiling tokio-udp v0.1.6
[INFO] [stderr]    Compiling tokio-service v0.1.0
[INFO] [stderr]    Compiling parking_lot v0.7.1
[INFO] [stderr]    Compiling filetime v0.2.23
[INFO] [stderr]    Compiling diff v0.1.13
[INFO] [stderr]    Compiling tokio v0.1.22
[INFO] [stderr]    Compiling tester v0.6.0
[INFO] [stderr]    Compiling addr2line v0.21.0
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]    Compiling serde_json v1.0.117
[INFO] [stderr]    Compiling toml v0.5.11
[INFO] [stderr]    Compiling susydev-jsonrpc-core v11.0.0
[INFO] [stderr]    Compiling proc-macro-crate v0.1.5
[INFO] [stderr]    Compiling globset v0.4.14
[INFO] [stderr]    Compiling regex v1.10.4
[INFO] [stderr]    Compiling susydev-jsonrpc-pubsub v11.0.0
[INFO] [stderr]    Compiling susydev-jsonrpc-server-utils v11.0.0
[INFO] [stderr]    Compiling susydev-jsonrpc-tcp-server v11.0.0
[INFO] [stderr]    Compiling failure v0.1.8
[INFO] [stderr]    Compiling rustfix v0.4.6
[INFO] [stderr]    Compiling susydev-jsonrpc-client v11.0.0
[INFO] [stderr]    Compiling susydev-jsonrpc-derive v11.0.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: pubsub methods are currently not supported in the generated client.
[INFO] [stdout] warning: pubsub methods are currently not supported in the generated client.
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 24.14s
[INFO] running `Command { std: "docker" "inspect" "1e859eb13ab65bd6633b975f0ec23b90d8d13677ed76c6dfd9494d26f468b517", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1e859eb13ab65bd6633b975f0ec23b90d8d13677ed76c6dfd9494d26f468b517", kill_on_drop: false }`
[INFO] [stdout] 1e859eb13ab65bd6633b975f0ec23b90d8d13677ed76c6dfd9494d26f468b517
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 447b2870173abd8bf7a62e3adf4f0d2a82dc09b74f2450ba7347d68bc52dfbfc
[INFO] running `Command { std: "docker" "start" "-a" "447b2870173abd8bf7a62e3adf4f0d2a82dc09b74f2450ba7347d68bc52dfbfc", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.14s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/susydev_jsonrpc_derive-5cd4491fdfb15c74)
[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]      Running tests/compiletests.rs (/opt/rustwide/target/debug/deps/compiletests-338556d5f89b6741)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] 
[INFO] [stdout] running 14 tests
[INFO] [stdout] test [ui] ui/pubsub/attr-invalid-meta-list-names.rs ... FAILED
[INFO] [stdout] test [ui] ui/pubsub/attr-missing-subscription-name.rs ... FAILED
[INFO] [stdout] test [ui] ui/pubsub/attr-invalid-name-values.rs ... FAILED
[INFO] [stdout] test [ui] ui/pubsub/missing-subscribe.rs ... FAILED
[INFO] [stdout] test [ui] ui/pubsub/missing-unsubscribe.rs ... FAILED
[INFO] [stdout] test [ui] ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs ... FAILED
[INFO] [stdout] test [ui] ui/pubsub/attr-invalid-meta-words.rs ... FAILED
[INFO] [stdout] test [ui] ui/pubsub/attr-both-subscribe-and-unsubscribe.rs ... FAILED
[INFO] [stdout] test [ui] ui/attr-invalid-meta-words.rs ... FAILED
[INFO] [stdout] test [ui] ui/multiple-rpc-attributes.rs ... FAILED
[INFO] [stdout] test [ui] ui/attr-invalid-meta-list-names.rs ... FAILED
[INFO] [stdout] test [ui] ui/attr-invalid-name-values.rs ... FAILED
[INFO] [stdout] test [ui] ui/too-many-params.rs ... FAILED
[INFO] [stdout] test [ui] ui/attr-missing-rpc-name.rs ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     [ui] ui/attr-invalid-meta-list-names.rs
[INFO] [stdout]     [ui] ui/attr-invalid-meta-words.rs
[INFO] [stdout]     [ui] ui/attr-invalid-name-values.rs
[INFO] [stdout]     [ui] ui/attr-missing-rpc-name.rs
[INFO] [stdout]     [ui] ui/multiple-rpc-attributes.rs
[INFO] [stdout]     [ui] ui/pubsub/attr-both-subscribe-and-unsubscribe.rs
[INFO] [stdout]     [ui] ui/pubsub/attr-invalid-meta-list-names.rs
[INFO] [stdout]     [ui] ui/pubsub/attr-invalid-meta-words.rs
[INFO] [stdout]     [ui] ui/pubsub/attr-invalid-name-values.rs
[INFO] [stdout]     [ui] ui/pubsub/attr-missing-subscription-name.rs
[INFO] [stdout]     [ui] ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs
[INFO] [stdout]     [ui] ui/pubsub/missing-subscribe.rs
[INFO] [stdout]     [ui] ui/pubsub/missing-unsubscribe.rs
[INFO] [stdout]     [ui] ui/too-many-params.rs
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 14 failed; 0 ignored; 0 measured; 0 filtered out
[INFO] [stdout] 
[INFO] [stdout] test compile_test ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- compile_test stdout ----
[INFO] [stdout] normalized stderr:
[INFO] [stdout] error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout]  --> $DIR/attr-invalid-meta-list-names.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]  --> $DIR/attr-invalid-meta-list-names.rs:6:3
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[rpc]
[INFO] [stdout]   |   ^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `pubsub` in this scope
[INFO] [stdout]   --> $DIR/attr-invalid-meta-list-names.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 |     #[pubsub(subscription = "hello", subscribe, name = "hello_subscribe", Xalias("hello_sub"))]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `pubsub` in this scope
[INFO] [stdout]   --> $DIR/attr-invalid-meta-list-names.rs:15:4
[INFO] [stdout]    |
[INFO] [stdout] 15 |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `typed`
[INFO] [stdout]   --> $DIR/attr-invalid-meta-list-names.rs:12:44
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout]    |                                               ^^^^^ use of undeclared crate or module `typed`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]    |
[INFO] [stdout] 1  + use susydev_jsonrpc_pubsub::typed;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `SubscriptionId` in this scope
[INFO] [stdout]   --> $DIR/attr-invalid-meta-list-names.rs:16:54
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout] 1  + use susydev_jsonrpc_pubsub::SubscriptionId;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied
[INFO] [stdout]   --> $DIR/attr-invalid-meta-list-names.rs:16:73
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                                            ^^^^^^ ---- supplied 1 generic argument
[INFO] [stdout]    |                                                                            |
[INFO] [stdout]    |                                                                            expected 2 generic arguments
[INFO] [stdout]    |
[INFO] [stdout] help: add missing generic argument
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;
[INFO] [stdout]    |                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0107, E0412, E0433, E0464.
[INFO] [stdout] For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] expected stderr:
[INFO] [stdout] error: Invalid attribute parameter(s): 'Xalias'. Expected 'alias'
[INFO] [stdout]   --> $DIR/attr-invalid-meta-list-names.rs:10:2
[INFO] [stdout]    |
[INFO] [stdout] 10 |       /// Hello subscription
[INFO] [stdout]    |  _____^
[INFO] [stdout] 11 | |     #[pubsub(subscription = "hello", subscribe, name = "hello_subscribe", Xalias("hello_sub"))]
[INFO] [stdout] 12 | |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout]    | |_________________________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] diff of stderr:
[INFO] [stdout] 
[INFO] [stdout] -error: Invalid attribute parameter(s): 'Xalias'. Expected 'alias'
[INFO] [stdout] -  --> $DIR/attr-invalid-meta-list-names.rs:10:2
[INFO] [stdout] +error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout] + --> $DIR/attr-invalid-meta-list-names.rs:2:1
[INFO] [stdout] +  |
[INFO] [stdout] +2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] + --> $DIR/attr-invalid-meta-list-names.rs:6:3
[INFO] [stdout] +  |
[INFO] [stdout] +6 | #[rpc]
[INFO] [stdout] +  |   ^^^
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `pubsub` in this scope
[INFO] [stdout] +  --> $DIR/attr-invalid-meta-list-names.rs:11:4
[INFO] [stdout]     |
[INFO] [stdout] -10 |       /// Hello subscription
[INFO] [stdout] -   |  _____^
[INFO] [stdout] -11 | |     #[pubsub(subscription = "hello", subscribe, name = "hello_subscribe", Xalias("hello_sub"))]
[INFO] [stdout] -12 | |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout] -   | |_________________________________________________________________________________^
[INFO] [stdout] +11 |     #[pubsub(subscription = "hello", subscribe, name = "hello_subscribe", Xalias("hello_sub"))]
[INFO] [stdout] +   |       ^^^^^^
[INFO] [stdout]  
[INFO] [stdout] -error: aborting due to previous error
[INFO] [stdout] +error: cannot find attribute `pubsub` in this scope
[INFO] [stdout] +  --> $DIR/attr-invalid-meta-list-names.rs:15:4
[INFO] [stdout] +   |
[INFO] [stdout] +15 |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout] +   |       ^^^^^^
[INFO] [stdout]  
[INFO] [stdout] +error[E0433]: failed to resolve: use of undeclared crate or module `typed`
[INFO] [stdout] +  --> $DIR/attr-invalid-meta-list-names.rs:12:44
[INFO] [stdout] +   |
[INFO] [stdout] +12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout] +   |                                               ^^^^^ use of undeclared crate or module `typed`
[INFO] [stdout] +   |
[INFO] [stdout] +help: consider importing this module
[INFO] [stdout] +   |
[INFO] [stdout] +1  + use susydev_jsonrpc_pubsub::typed;
[INFO] [stdout] +   |
[INFO] [stdout] +
[INFO] [stdout] +error[E0412]: cannot find type `SubscriptionId` in this scope
[INFO] [stdout] +  --> $DIR/attr-invalid-meta-list-names.rs:16:54
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout] +   |                                                         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] +   |
[INFO] [stdout] +help: consider importing this enum
[INFO] [stdout] +   |
[INFO] [stdout] +1  + use susydev_jsonrpc_pubsub::SubscriptionId;
[INFO] [stdout] +   |
[INFO] [stdout] +
[INFO] [stdout] +error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied
[INFO] [stdout] +  --> $DIR/attr-invalid-meta-list-names.rs:16:73
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout] +   |                                                                            ^^^^^^ ---- supplied 1 generic argument
[INFO] [stdout] +   |                                                                            |
[INFO] [stdout] +   |                                                                            expected 2 generic arguments
[INFO] [stdout] +   |
[INFO] [stdout] +help: add missing generic argument
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;
[INFO] [stdout] +   |                                                                                       +++
[INFO] [stdout] +
[INFO] [stdout] +error: aborting due to 7 previous errors
[INFO] [stdout] +
[INFO] [stdout] +Some errors have detailed explanations: E0107, E0412, E0433, E0464.
[INFO] [stdout] +For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout]  
[INFO] [stdout] 
[INFO] [stdout] The actual stderr differed from the expected stderr.
[INFO] [stdout] Actual stderr saved to /tmp/pubsub/attr-invalid-meta-list-names.stderr
[INFO] [stdout] To update references, run this command from build directory:
[INFO] [stdout] tests/ui/update-references.sh '/tmp' 'pubsub/attr-invalid-meta-list-names.rs'
[INFO] [stdout] 
[INFO] [stdout] error: 1 errors occurred comparing output.
[INFO] [stdout] status: exit status: 1
[INFO] [stdout] command: "rustc" "tests/ui/pubsub/attr-invalid-meta-list-names.rs" "-L" "/tmp" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-C" "prefer-dynamic" "-o" "/tmp/pubsub/attr-invalid-meta-list-names.stage-id" "-L" "../target/debug/" "-L" "../target/debug/deps/" "-L" "/tmp/pubsub/attr-invalid-meta-list-names.stage-id.aux" "-A" "unused"
[INFO] [stdout] stdout:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] stderr:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-list-names.rs","byte_start":13,"byte_end":49,"line_start":2,"line_end":2,"column_start":1,"column_end":37,"is_primary":true,"text":[{"text":"extern crate susydev_jsonrpc_derive;","highlight_start":1,"highlight_end":37}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found\n --> tests/ui/pubsub/attr-invalid-meta-list-names.rs:2:1\n  |\n2 | extern crate susydev_jsonrpc_derive;\n  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so\n  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-list-names.rs","byte_start":125,"byte_end":128,"line_start":6,"line_end":6,"column_start":3,"column_end":6,"is_primary":true,"text":[{"text":"#[rpc]","highlight_start":3,"highlight_end":6}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n --> tests/ui/pubsub/attr-invalid-meta-list-names.rs:6:3\n  |\n6 | #[rpc]\n  |   ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `pubsub` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-list-names.rs","byte_start":190,"byte_end":196,"line_start":11,"line_end":11,"column_start":4,"column_end":10,"is_primary":true,"text":[{"text":"\t#[pubsub(subscription = \"hello\", subscribe, name = \"hello_subscribe\", Xalias(\"hello_sub\"))]","highlight_start":4,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `pubsub` in this scope\n  --> tests/ui/pubsub/attr-invalid-meta-list-names.rs:11:4\n   |\n11 |     #[pubsub(subscription = \"hello\", subscribe, name = \"hello_subscribe\", Xalias(\"hello_sub\"))]\n   |       ^^^^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `pubsub` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-list-names.rs","byte_start":405,"byte_end":411,"line_start":15,"line_end":15,"column_start":4,"column_end":10,"is_primary":true,"text":[{"text":"\t#[pubsub(subscription = \"hello\", unsubscribe, name = \"hello_unsubscribe\")]","highlight_start":4,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `pubsub` in this scope\n  --> tests/ui/pubsub/attr-invalid-meta-list-names.rs:15:4\n   |\n15 |     #[pubsub(subscription = \"hello\", unsubscribe, name = \"hello_unsubscribe\")]\n   |       ^^^^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"failed to resolve: use of undeclared crate or module `typed`","code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap<u32, u32> = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared crate or module `ferris_wheel`\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-list-names.rs","byte_start":323,"byte_end":328,"line_start":12,"line_end":12,"column_start":44,"column_end":49,"is_primary":true,"text":[{"text":"\tfn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);","highlight_start":44,"highlight_end":49}],"label":"use of undeclared crate or module `typed`","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"consider importing this module","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-list-names.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[],"label":null,"suggested_replacement":"use susydev_jsonrpc_pubsub::typed;\n\n","suggestion_applicability":"MaybeIncorrect","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0433]: failed to resolve: use of undeclared crate or module `typed`\n  --> tests/ui/pubsub/attr-invalid-meta-list-names.rs:12:44\n   |\n12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);\n   |                                               ^^^^^ use of undeclared crate or module `typed`\n   |\nhelp: consider importing this module\n   |\n1  + use susydev_jsonrpc_pubsub::typed;\n   |\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find type `SubscriptionId` in this scope","code":{"code":"E0412","explanation":"A used type name is not in scope.\n\nErroneous code examples:\n\n```compile_fail,E0412\nimpl Something {} // error: type name `Something` is not in scope\n\n// or:\n\ntrait Foo {\n    fn bar(N); // error: type name `N` is not in scope\n}\n\n// or:\n\nfn foo(x: T) {} // type name `T` is not in scope\n```\n\nTo fix this error, please verify you didn't misspell the type name, you did\ndeclare it or imported it into the scope. Examples:\n\n```\nstruct Something;\n\nimpl Something {} // ok!\n\n// or:\n\ntrait Foo {\n    type N;\n\n    fn bar(_: Self::N); // ok!\n}\n\n// or:\n\nfn foo<T>(x: T) {} // ok!\n```\n\nAnother case that causes this error is when a type is imported into a parent\nmodule. To fix this, you can follow the suggestion and use File directly or\n`use super::File;` which will import the types from the parent namespace. An\nexample that causes this error is below:\n\n```compile_fail,E0412\nuse std::fs::File;\n\nmod foo {\n    fn some_function(f: File) {}\n}\n```\n\n```\nuse std::fs::File;\n\nmod foo {\n    // either\n    use super::File;\n    // or\n    // use std::fs::File;\n    fn foo(f: File) {}\n}\n# fn main() {} // don't insert it for us; that'll break imports\n```\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-list-names.rs","byte_start":531,"byte_end":545,"line_start":16,"line_end":16,"column_start":54,"column_end":68,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":54,"highlight_end":68}],"label":"not found in this scope","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"consider importing this enum","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-list-names.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[],"label":null,"suggested_replacement":"use susydev_jsonrpc_pubsub::SubscriptionId;\n\n","suggestion_applicability":"MaybeIncorrect","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0412]: cannot find type `SubscriptionId` in this scope\n  --> tests/ui/pubsub/attr-invalid-meta-list-names.rs:16:54\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;\n   |                                                         ^^^^^^^^^^^^^^ not found in this scope\n   |\nhelp: consider importing this enum\n   |\n1  + use susydev_jsonrpc_pubsub::SubscriptionId;\n   |\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"enum takes 2 generic arguments but 1 generic argument was supplied","code":{"code":"E0107","explanation":"An incorrect number of generic arguments was provided.\n\nErroneous code example:\n\n```compile_fail,E0107\nstruct Foo<T> { x: T }\n\nstruct Bar { x: Foo }             // error: wrong number of type arguments:\n                                  //        expected 1, found 0\nstruct Baz<S, T> { x: Foo<S, T> } // error: wrong number of type arguments:\n                                  //        expected 1, found 2\n\nfn foo<T, U>(x: T, y: U) {}\nfn f() {}\n\nfn main() {\n    let x: bool = true;\n    foo::<bool>(x);                 // error: wrong number of type arguments:\n                                    //        expected 2, found 1\n    foo::<bool, i32, i32>(x, 2, 4); // error: wrong number of type arguments:\n                                    //        expected 2, found 3\n    f::<'static>();                 // error: wrong number of lifetime arguments\n                                    //        expected 0, found 1\n}\n```\n\nWhen using/declaring an item with generic arguments, you must provide the exact\nsame number:\n\n```\nstruct Foo<T> { x: T }\n\nstruct Bar<T> { x: Foo<T> }               // ok!\nstruct Baz<S, T> { x: Foo<S>, y: Foo<T> } // ok!\n\nfn foo<T, U>(x: T, y: U) {}\nfn f() {}\n\nfn main() {\n    let x: bool = true;\n    foo::<bool, u32>(x, 12);              // ok!\n    f();                                  // ok!\n}\n```\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-list-names.rs","byte_start":550,"byte_end":556,"line_start":16,"line_end":16,"column_start":73,"column_end":79,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":73,"highlight_end":79}],"label":"expected 2 generic arguments","suggested_replacement":null,"suggestion_applicability":null,"expansion":null},{"file_name":"tests/ui/pubsub/attr-invalid-meta-list-names.rs","byte_start":557,"byte_end":561,"line_start":16,"line_end":16,"column_start":80,"column_end":84,"is_primary":false,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":80,"highlight_end":84}],"label":"supplied 1 generic argument","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"add missing generic argument","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-list-names.rs","byte_start":561,"byte_end":561,"line_start":16,"line_end":16,"column_start":84,"column_end":84,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":84,"highlight_end":84}],"label":null,"suggested_replacement":", E","suggestion_applicability":"HasPlaceholders","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied\n  --> tests/ui/pubsub/attr-invalid-meta-list-names.rs:16:73\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;\n   |                                                                            ^^^^^^ ---- supplied 1 generic argument\n   |                                                                            |\n   |                                                                            expected 2 generic arguments\n   |\nhelp: add missing generic argument\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;\n   |                                                                                       +++\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"aborting due to 7 previous errors","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to 7 previous errors\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"Some errors have detailed explanations: E0107, E0412, E0433, E0464.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"Some errors have detailed explanations: E0107, E0412, E0433, E0464.\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"For more information about an error, try `rustc --explain E0107`.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"For more information about an error, try `rustc --explain E0107`.\n"}
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] normalized stderr:
[INFO] [stdout] error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout]  --> $DIR/attr-missing-subscription-name.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]  --> $DIR/attr-missing-subscription-name.rs:6:3
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[rpc]
[INFO] [stdout]   |   ^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `pubsub` in this scope
[INFO] [stdout]   --> $DIR/attr-missing-subscription-name.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 |     #[pubsub(subscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `pubsub` in this scope
[INFO] [stdout]   --> $DIR/attr-missing-subscription-name.rs:15:4
[INFO] [stdout]    |
[INFO] [stdout] 15 |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `typed`
[INFO] [stdout]   --> $DIR/attr-missing-subscription-name.rs:12:44
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout]    |                                               ^^^^^ use of undeclared crate or module `typed`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]    |
[INFO] [stdout] 1  + use susydev_jsonrpc_pubsub::typed;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `SubscriptionId` in this scope
[INFO] [stdout]   --> $DIR/attr-missing-subscription-name.rs:16:54
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout] 1  + use susydev_jsonrpc_pubsub::SubscriptionId;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied
[INFO] [stdout]   --> $DIR/attr-missing-subscription-name.rs:16:73
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                                            ^^^^^^ ---- supplied 1 generic argument
[INFO] [stdout]    |                                                                            |
[INFO] [stdout]    |                                                                            expected 2 generic arguments
[INFO] [stdout]    |
[INFO] [stdout] help: add missing generic argument
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;
[INFO] [stdout]    |                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0107, E0412, E0433, E0464.
[INFO] [stdout] For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] expected stderr:
[INFO] [stdout] error: pubsub attribute should have a subscription name
[INFO] [stdout]   --> $DIR/attr-missing-subscription-name.rs:10:2
[INFO] [stdout]    |
[INFO] [stdout] 10 |       /// Hello subscription
[INFO] [stdout]    |  _____^
[INFO] [stdout] 11 | |     #[pubsub(subscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] 12 | |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout]    | |_________________________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] diff of stderr:
[INFO] [stdout] 
[INFO] [stdout] -error: pubsub attribute should have a subscription name
[INFO] [stdout] -  --> $DIR/attr-missing-subscription-name.rs:10:2
[INFO] [stdout] +error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout] + --> $DIR/attr-missing-subscription-name.rs:2:1
[INFO] [stdout] +  |
[INFO] [stdout] +2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] + --> $DIR/attr-missing-subscription-name.rs:6:3
[INFO] [stdout] +  |
[INFO] [stdout] +6 | #[rpc]
[INFO] [stdout] +  |   ^^^
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `pubsub` in this scope
[INFO] [stdout] +  --> $DIR/attr-missing-subscription-name.rs:11:4
[INFO] [stdout]     |
[INFO] [stdout] -10 |       /// Hello subscription
[INFO] [stdout] -   |  _____^
[INFO] [stdout] -11 | |     #[pubsub(subscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] -12 | |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout] -   | |_________________________________________________________________________________^
[INFO] [stdout] +11 |     #[pubsub(subscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] +   |       ^^^^^^
[INFO] [stdout]  
[INFO] [stdout] -error: aborting due to previous error
[INFO] [stdout] +error: cannot find attribute `pubsub` in this scope
[INFO] [stdout] +  --> $DIR/attr-missing-subscription-name.rs:15:4
[INFO] [stdout] +   |
[INFO] [stdout] +15 |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout] +   |       ^^^^^^
[INFO] [stdout]  
[INFO] [stdout] +error[E0433]: failed to resolve: use of undeclared crate or module `typed`
[INFO] [stdout] +  --> $DIR/attr-missing-subscription-name.rs:12:44
[INFO] [stdout] +   |
[INFO] [stdout] +12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout] +   |                                               ^^^^^ use of undeclared crate or module `typed`
[INFO] [stdout] +   |
[INFO] [stdout] +help: consider importing this module
[INFO] [stdout] +   |
[INFO] [stdout] +1  + use susydev_jsonrpc_pubsub::typed;
[INFO] [stdout] +   |
[INFO] [stdout] +
[INFO] [stdout] +error[E0412]: cannot find type `SubscriptionId` in this scope
[INFO] [stdout] +  --> $DIR/attr-missing-subscription-name.rs:16:54
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout] +   |                                                         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] +   |
[INFO] [stdout] +help: consider importing this enum
[INFO] [stdout] +   |
[INFO] [stdout] +1  + use susydev_jsonrpc_pubsub::SubscriptionId;
[INFO] [stdout] +   |
[INFO] [stdout] +
[INFO] [stdout] +error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied
[INFO] [stdout] +  --> $DIR/attr-missing-subscription-name.rs:16:73
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout] +   |                                                                            ^^^^^^ ---- supplied 1 generic argument
[INFO] [stdout] +   |                                                                            |
[INFO] [stdout] +   |                                                                            expected 2 generic arguments
[INFO] [stdout] +   |
[INFO] [stdout] +help: add missing generic argument
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;
[INFO] [stdout] +   |                                                                                       +++
[INFO] [stdout] +
[INFO] [stdout] +error: aborting due to 7 previous errors
[INFO] [stdout] +
[INFO] [stdout] +Some errors have detailed explanations: E0107, E0412, E0433, E0464.
[INFO] [stdout] +For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout]  
[INFO] [stdout] 
[INFO] [stdout] The actual stderr differed from the expected stderr.
[INFO] [stdout] Actual stderr saved to /tmp/pubsub/attr-missing-subscription-name.stderr
[INFO] [stdout] To update references, run this command from build directory:
[INFO] [stdout] tests/ui/update-references.sh '/tmp' 'pubsub/attr-missing-subscription-name.rs'
[INFO] [stdout] 
[INFO] [stdout] error: 1 errors occurred comparing output.
[INFO] [stdout] status: exit status: 1
[INFO] [stdout] command: "rustc" "tests/ui/pubsub/attr-missing-subscription-name.rs" "-L" "/tmp" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-C" "prefer-dynamic" "-o" "/tmp/pubsub/attr-missing-subscription-name.stage-id" "-L" "../target/debug/" "-L" "../target/debug/deps/" "-L" "/tmp/pubsub/attr-missing-subscription-name.stage-id.aux" "-A" "unused"
[INFO] [stdout] stdout:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] stderr:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-missing-subscription-name.rs","byte_start":13,"byte_end":49,"line_start":2,"line_end":2,"column_start":1,"column_end":37,"is_primary":true,"text":[{"text":"extern crate susydev_jsonrpc_derive;","highlight_start":1,"highlight_end":37}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found\n --> tests/ui/pubsub/attr-missing-subscription-name.rs:2:1\n  |\n2 | extern crate susydev_jsonrpc_derive;\n  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so\n  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-missing-subscription-name.rs","byte_start":125,"byte_end":128,"line_start":6,"line_end":6,"column_start":3,"column_end":6,"is_primary":true,"text":[{"text":"#[rpc]","highlight_start":3,"highlight_end":6}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n --> tests/ui/pubsub/attr-missing-subscription-name.rs:6:3\n  |\n6 | #[rpc]\n  |   ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `pubsub` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-missing-subscription-name.rs","byte_start":190,"byte_end":196,"line_start":11,"line_end":11,"column_start":4,"column_end":10,"is_primary":true,"text":[{"text":"\t#[pubsub(subscribe, name = \"hello_subscribe\", alias(\"hello_sub\"))]","highlight_start":4,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `pubsub` in this scope\n  --> tests/ui/pubsub/attr-missing-subscription-name.rs:11:4\n   |\n11 |     #[pubsub(subscribe, name = \"hello_subscribe\", alias(\"hello_sub\"))]\n   |       ^^^^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `pubsub` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-missing-subscription-name.rs","byte_start":380,"byte_end":386,"line_start":15,"line_end":15,"column_start":4,"column_end":10,"is_primary":true,"text":[{"text":"\t#[pubsub(subscription = \"hello\", unsubscribe, name = \"hello_unsubscribe\")]","highlight_start":4,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `pubsub` in this scope\n  --> tests/ui/pubsub/attr-missing-subscription-name.rs:15:4\n   |\n15 |     #[pubsub(subscription = \"hello\", unsubscribe, name = \"hello_unsubscribe\")]\n   |       ^^^^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"failed to resolve: use of undeclared crate or module `typed`","code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap<u32, u32> = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared crate or module `ferris_wheel`\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-missing-subscription-name.rs","byte_start":298,"byte_end":303,"line_start":12,"line_end":12,"column_start":44,"column_end":49,"is_primary":true,"text":[{"text":"\tfn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);","highlight_start":44,"highlight_end":49}],"label":"use of undeclared crate or module `typed`","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"consider importing this module","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-missing-subscription-name.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[],"label":null,"suggested_replacement":"use susydev_jsonrpc_pubsub::typed;\n\n","suggestion_applicability":"MaybeIncorrect","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0433]: failed to resolve: use of undeclared crate or module `typed`\n  --> tests/ui/pubsub/attr-missing-subscription-name.rs:12:44\n   |\n12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);\n   |                                               ^^^^^ use of undeclared crate or module `typed`\n   |\nhelp: consider importing this module\n   |\n1  + use susydev_jsonrpc_pubsub::typed;\n   |\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find type `SubscriptionId` in this scope","code":{"code":"E0412","explanation":"A used type name is not in scope.\n\nErroneous code examples:\n\n```compile_fail,E0412\nimpl Something {} // error: type name `Something` is not in scope\n\n// or:\n\ntrait Foo {\n    fn bar(N); // error: type name `N` is not in scope\n}\n\n// or:\n\nfn foo(x: T) {} // type name `T` is not in scope\n```\n\nTo fix this error, please verify you didn't misspell the type name, you did\ndeclare it or imported it into the scope. Examples:\n\n```\nstruct Something;\n\nimpl Something {} // ok!\n\n// or:\n\ntrait Foo {\n    type N;\n\n    fn bar(_: Self::N); // ok!\n}\n\n// or:\n\nfn foo<T>(x: T) {} // ok!\n```\n\nAnother case that causes this error is when a type is imported into a parent\nmodule. To fix this, you can follow the suggestion and use File directly or\n`use super::File;` which will import the types from the parent namespace. An\nexample that causes this error is below:\n\n```compile_fail,E0412\nuse std::fs::File;\n\nmod foo {\n    fn some_function(f: File) {}\n}\n```\n\n```\nuse std::fs::File;\n\nmod foo {\n    // either\n    use super::File;\n    // or\n    // use std::fs::File;\n    fn foo(f: File) {}\n}\n# fn main() {} // don't insert it for us; that'll break imports\n```\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-missing-subscription-name.rs","byte_start":506,"byte_end":520,"line_start":16,"line_end":16,"column_start":54,"column_end":68,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":54,"highlight_end":68}],"label":"not found in this scope","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"consider importing this enum","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-missing-subscription-name.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[],"label":null,"suggested_replacement":"use susydev_jsonrpc_pubsub::SubscriptionId;\n\n","suggestion_applicability":"MaybeIncorrect","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0412]: cannot find type `SubscriptionId` in this scope\n  --> tests/ui/pubsub/attr-missing-subscription-name.rs:16:54\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;\n   |                                                         ^^^^^^^^^^^^^^ not found in this scope\n   |\nhelp: consider importing this enum\n   |\n1  + use susydev_jsonrpc_pubsub::SubscriptionId;\n   |\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"enum takes 2 generic arguments but 1 generic argument was supplied","code":{"code":"E0107","explanation":"An incorrect number of generic arguments was provided.\n\nErroneous code example:\n\n```compile_fail,E0107\nstruct Foo<T> { x: T }\n\nstruct Bar { x: Foo }             // error: wrong number of type arguments:\n                                  //        expected 1, found 0\nstruct Baz<S, T> { x: Foo<S, T> } // error: wrong number of type arguments:\n                                  //        expected 1, found 2\n\nfn foo<T, U>(x: T, y: U) {}\nfn f() {}\n\nfn main() {\n    let x: bool = true;\n    foo::<bool>(x);                 // error: wrong number of type arguments:\n                                    //        expected 2, found 1\n    foo::<bool, i32, i32>(x, 2, 4); // error: wrong number of type arguments:\n                                    //        expected 2, found 3\n    f::<'static>();                 // error: wrong number of lifetime arguments\n                                    //        expected 0, found 1\n}\n```\n\nWhen using/declaring an item with generic arguments, you must provide the exact\nsame number:\n\n```\nstruct Foo<T> { x: T }\n\nstruct Bar<T> { x: Foo<T> }               // ok!\nstruct Baz<S, T> { x: Foo<S>, y: Foo<T> } // ok!\n\nfn foo<T, U>(x: T, y: U) {}\nfn f() {}\n\nfn main() {\n    let x: bool = true;\n    foo::<bool, u32>(x, 12);              // ok!\n    f();                                  // ok!\n}\n```\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-missing-subscription-name.rs","byte_start":525,"byte_end":531,"line_start":16,"line_end":16,"column_start":73,"column_end":79,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":73,"highlight_end":79}],"label":"expected 2 generic arguments","suggested_replacement":null,"suggestion_applicability":null,"expansion":null},{"file_name":"tests/ui/pubsub/attr-missing-subscription-name.rs","byte_start":532,"byte_end":536,"line_start":16,"line_end":16,"column_start":80,"column_end":84,"is_primary":false,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":80,"highlight_end":84}],"label":"supplied 1 generic argument","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"add missing generic argument","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-missing-subscription-name.rs","byte_start":536,"byte_end":536,"line_start":16,"line_end":16,"column_start":84,"column_end":84,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":84,"highlight_end":84}],"label":null,"suggested_replacement":", E","suggestion_applicability":"HasPlaceholders","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied\n  --> tests/ui/pubsub/attr-missing-subscription-name.rs:16:73\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;\n   |                                                                            ^^^^^^ ---- supplied 1 generic argument\n   |                                                                            |\n   |                                                                            expected 2 generic arguments\n   |\nhelp: add missing generic argument\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;\n   |                                                                                       +++\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"aborting due to 7 previous errors","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to 7 previous errors\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"Some errors have detailed explanations: E0107, E0412, E0433, E0464.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"Some errors have detailed explanations: E0107, E0412, E0433, E0464.\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"For more information about an error, try `rustc --explain E0107`.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"For more information about an error, try `rustc --explain E0107`.\n"}
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] normalized stderr:
[INFO] [stdout] error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout]  --> $DIR/attr-invalid-name-values.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]  --> $DIR/attr-invalid-name-values.rs:6:3
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[rpc]
[INFO] [stdout]   |   ^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `pubsub` in this scope
[INFO] [stdout]   --> $DIR/attr-invalid-name-values.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 |     #[pubsub(Xsubscription = "hello", subscribe, Xname = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `pubsub` in this scope
[INFO] [stdout]   --> $DIR/attr-invalid-name-values.rs:15:4
[INFO] [stdout]    |
[INFO] [stdout] 15 |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `typed`
[INFO] [stdout]   --> $DIR/attr-invalid-name-values.rs:12:44
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout]    |                                               ^^^^^ use of undeclared crate or module `typed`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]    |
[INFO] [stdout] 1  + use susydev_jsonrpc_pubsub::typed;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `SubscriptionId` in this scope
[INFO] [stdout]   --> $DIR/attr-invalid-name-values.rs:16:54
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout] 1  + use susydev_jsonrpc_pubsub::SubscriptionId;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied
[INFO] [stdout]   --> $DIR/attr-invalid-name-values.rs:16:73
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                                            ^^^^^^ ---- supplied 1 generic argument
[INFO] [stdout]    |                                                                            |
[INFO] [stdout]    |                                                                            expected 2 generic arguments
[INFO] [stdout]    |
[INFO] [stdout] help: add missing generic argument
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;
[INFO] [stdout]    |                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0107, E0412, E0433, E0464.
[INFO] [stdout] For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] expected stderr:
[INFO] [stdout] error: Invalid attribute parameter(s): 'Xsubscription, Xname'. Expected 'subscription, name'
[INFO] [stdout]   --> $DIR/attr-invalid-name-values.rs:10:2
[INFO] [stdout]    |
[INFO] [stdout] 10 |       /// Hello subscription
[INFO] [stdout]    |  _____^
[INFO] [stdout] 11 | |     #[pubsub(Xsubscription = "hello", subscribe, Xname = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] 12 | |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout]    | |_________________________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] diff of stderr:
[INFO] [stdout] 
[INFO] [stdout] -error: Invalid attribute parameter(s): 'Xsubscription, Xname'. Expected 'subscription, name'
[INFO] [stdout] -  --> $DIR/attr-invalid-name-values.rs:10:2
[INFO] [stdout] +error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout] + --> $DIR/attr-invalid-name-values.rs:2:1
[INFO] [stdout] +  |
[INFO] [stdout] +2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] + --> $DIR/attr-invalid-name-values.rs:6:3
[INFO] [stdout] +  |
[INFO] [stdout] +6 | #[rpc]
[INFO] [stdout] +  |   ^^^
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `pubsub` in this scope
[INFO] [stdout] +  --> $DIR/attr-invalid-name-values.rs:11:4
[INFO] [stdout]     |
[INFO] [stdout] -10 |       /// Hello subscription
[INFO] [stdout] -   |  _____^
[INFO] [stdout] -11 | |     #[pubsub(Xsubscription = "hello", subscribe, Xname = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] -12 | |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout] -   | |_________________________________________________________________________________^
[INFO] [stdout] +11 |     #[pubsub(Xsubscription = "hello", subscribe, Xname = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] +   |       ^^^^^^
[INFO] [stdout]  
[INFO] [stdout] -error: aborting due to previous error
[INFO] [stdout] +error: cannot find attribute `pubsub` in this scope
[INFO] [stdout] +  --> $DIR/attr-invalid-name-values.rs:15:4
[INFO] [stdout] +   |
[INFO] [stdout] +15 |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout] +   |       ^^^^^^
[INFO] [stdout]  
[INFO] [stdout] +error[E0433]: failed to resolve: use of undeclared crate or module `typed`
[INFO] [stdout] +  --> $DIR/attr-invalid-name-values.rs:12:44
[INFO] [stdout] +   |
[INFO] [stdout] +12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout] +   |                                               ^^^^^ use of undeclared crate or module `typed`
[INFO] [stdout] +   |
[INFO] [stdout] +help: consider importing this module
[INFO] [stdout] +   |
[INFO] [stdout] +1  + use susydev_jsonrpc_pubsub::typed;
[INFO] [stdout] +   |
[INFO] [stdout] +
[INFO] [stdout] +error[E0412]: cannot find type `SubscriptionId` in this scope
[INFO] [stdout] +  --> $DIR/attr-invalid-name-values.rs:16:54
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout] +   |                                                         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] +   |
[INFO] [stdout] +help: consider importing this enum
[INFO] [stdout] +   |
[INFO] [stdout] +1  + use susydev_jsonrpc_pubsub::SubscriptionId;
[INFO] [stdout] +   |
[INFO] [stdout] +
[INFO] [stdout] +error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied
[INFO] [stdout] +  --> $DIR/attr-invalid-name-values.rs:16:73
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout] +   |                                                                            ^^^^^^ ---- supplied 1 generic argument
[INFO] [stdout] +   |                                                                            |
[INFO] [stdout] +   |                                                                            expected 2 generic arguments
[INFO] [stdout] +   |
[INFO] [stdout] +help: add missing generic argument
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;
[INFO] [stdout] +   |                                                                                       +++
[INFO] [stdout] +
[INFO] [stdout] +error: aborting due to 7 previous errors
[INFO] [stdout] +
[INFO] [stdout] +Some errors have detailed explanations: E0107, E0412, E0433, E0464.
[INFO] [stdout] +For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout]  
[INFO] [stdout] 
[INFO] [stdout] The actual stderr differed from the expected stderr.
[INFO] [stdout] Actual stderr saved to /tmp/pubsub/attr-invalid-name-values.stderr
[INFO] [stdout] To update references, run this command from build directory:
[INFO] [stdout] tests/ui/update-references.sh '/tmp' 'pubsub/attr-invalid-name-values.rs'
[INFO] [stdout] 
[INFO] [stdout] error: 1 errors occurred comparing output.
[INFO] [stdout] status: exit status: 1
[INFO] [stdout] command: "rustc" "tests/ui/pubsub/attr-invalid-name-values.rs" "-L" "/tmp" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-C" "prefer-dynamic" "-o" "/tmp/pubsub/attr-invalid-name-values.stage-id" "-L" "../target/debug/" "-L" "../target/debug/deps/" "-L" "/tmp/pubsub/attr-invalid-name-values.stage-id.aux" "-A" "unused"
[INFO] [stdout] stdout:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] stderr:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-name-values.rs","byte_start":13,"byte_end":49,"line_start":2,"line_end":2,"column_start":1,"column_end":37,"is_primary":true,"text":[{"text":"extern crate susydev_jsonrpc_derive;","highlight_start":1,"highlight_end":37}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found\n --> tests/ui/pubsub/attr-invalid-name-values.rs:2:1\n  |\n2 | extern crate susydev_jsonrpc_derive;\n  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so\n  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-name-values.rs","byte_start":125,"byte_end":128,"line_start":6,"line_end":6,"column_start":3,"column_end":6,"is_primary":true,"text":[{"text":"#[rpc]","highlight_start":3,"highlight_end":6}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n --> tests/ui/pubsub/attr-invalid-name-values.rs:6:3\n  |\n6 | #[rpc]\n  |   ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `pubsub` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-name-values.rs","byte_start":190,"byte_end":196,"line_start":11,"line_end":11,"column_start":4,"column_end":10,"is_primary":true,"text":[{"text":"\t#[pubsub(Xsubscription = \"hello\", subscribe, Xname = \"hello_subscribe\", alias(\"hello_sub\"))]","highlight_start":4,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `pubsub` in this scope\n  --> tests/ui/pubsub/attr-invalid-name-values.rs:11:4\n   |\n11 |     #[pubsub(Xsubscription = \"hello\", subscribe, Xname = \"hello_subscribe\", alias(\"hello_sub\"))]\n   |       ^^^^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `pubsub` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-name-values.rs","byte_start":406,"byte_end":412,"line_start":15,"line_end":15,"column_start":4,"column_end":10,"is_primary":true,"text":[{"text":"\t#[pubsub(subscription = \"hello\", unsubscribe, name = \"hello_unsubscribe\")]","highlight_start":4,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `pubsub` in this scope\n  --> tests/ui/pubsub/attr-invalid-name-values.rs:15:4\n   |\n15 |     #[pubsub(subscription = \"hello\", unsubscribe, name = \"hello_unsubscribe\")]\n   |       ^^^^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"failed to resolve: use of undeclared crate or module `typed`","code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap<u32, u32> = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared crate or module `ferris_wheel`\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-name-values.rs","byte_start":324,"byte_end":329,"line_start":12,"line_end":12,"column_start":44,"column_end":49,"is_primary":true,"text":[{"text":"\tfn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);","highlight_start":44,"highlight_end":49}],"label":"use of undeclared crate or module `typed`","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"consider importing this module","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-name-values.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[],"label":null,"suggested_replacement":"use susydev_jsonrpc_pubsub::typed;\n\n","suggestion_applicability":"MaybeIncorrect","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0433]: failed to resolve: use of undeclared crate or module `typed`\n  --> tests/ui/pubsub/attr-invalid-name-values.rs:12:44\n   |\n12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);\n   |                                               ^^^^^ use of undeclared crate or module `typed`\n   |\nhelp: consider importing this module\n   |\n1  + use susydev_jsonrpc_pubsub::typed;\n   |\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find type `SubscriptionId` in this scope","code":{"code":"E0412","explanation":"A used type name is not in scope.\n\nErroneous code examples:\n\n```compile_fail,E0412\nimpl Something {} // error: type name `Something` is not in scope\n\n// or:\n\ntrait Foo {\n    fn bar(N); // error: type name `N` is not in scope\n}\n\n// or:\n\nfn foo(x: T) {} // type name `T` is not in scope\n```\n\nTo fix this error, please verify you didn't misspell the type name, you did\ndeclare it or imported it into the scope. Examples:\n\n```\nstruct Something;\n\nimpl Something {} // ok!\n\n// or:\n\ntrait Foo {\n    type N;\n\n    fn bar(_: Self::N); // ok!\n}\n\n// or:\n\nfn foo<T>(x: T) {} // ok!\n```\n\nAnother case that causes this error is when a type is imported into a parent\nmodule. To fix this, you can follow the suggestion and use File directly or\n`use super::File;` which will import the types from the parent namespace. An\nexample that causes this error is below:\n\n```compile_fail,E0412\nuse std::fs::File;\n\nmod foo {\n    fn some_function(f: File) {}\n}\n```\n\n```\nuse std::fs::File;\n\nmod foo {\n    // either\n    use super::File;\n    // or\n    // use std::fs::File;\n    fn foo(f: File) {}\n}\n# fn main() {} // don't insert it for us; that'll break imports\n```\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-name-values.rs","byte_start":532,"byte_end":546,"line_start":16,"line_end":16,"column_start":54,"column_end":68,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":54,"highlight_end":68}],"label":"not found in this scope","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"consider importing this enum","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-name-values.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[],"label":null,"suggested_replacement":"use susydev_jsonrpc_pubsub::SubscriptionId;\n\n","suggestion_applicability":"MaybeIncorrect","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0412]: cannot find type `SubscriptionId` in this scope\n  --> tests/ui/pubsub/attr-invalid-name-values.rs:16:54\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;\n   |                                                         ^^^^^^^^^^^^^^ not found in this scope\n   |\nhelp: consider importing this enum\n   |\n1  + use susydev_jsonrpc_pubsub::SubscriptionId;\n   |\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"enum takes 2 generic arguments but 1 generic argument was supplied","code":{"code":"E0107","explanation":"An incorrect number of generic arguments was provided.\n\nErroneous code example:\n\n```compile_fail,E0107\nstruct Foo<T> { x: T }\n\nstruct Bar { x: Foo }             // error: wrong number of type arguments:\n                                  //        expected 1, found 0\nstruct Baz<S, T> { x: Foo<S, T> } // error: wrong number of type arguments:\n                                  //        expected 1, found 2\n\nfn foo<T, U>(x: T, y: U) {}\nfn f() {}\n\nfn main() {\n    let x: bool = true;\n    foo::<bool>(x);                 // error: wrong number of type arguments:\n                                    //        expected 2, found 1\n    foo::<bool, i32, i32>(x, 2, 4); // error: wrong number of type arguments:\n                                    //        expected 2, found 3\n    f::<'static>();                 // error: wrong number of lifetime arguments\n                                    //        expected 0, found 1\n}\n```\n\nWhen using/declaring an item with generic arguments, you must provide the exact\nsame number:\n\n```\nstruct Foo<T> { x: T }\n\nstruct Bar<T> { x: Foo<T> }               // ok!\nstruct Baz<S, T> { x: Foo<S>, y: Foo<T> } // ok!\n\nfn foo<T, U>(x: T, y: U) {}\nfn f() {}\n\nfn main() {\n    let x: bool = true;\n    foo::<bool, u32>(x, 12);              // ok!\n    f();                                  // ok!\n}\n```\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-name-values.rs","byte_start":551,"byte_end":557,"line_start":16,"line_end":16,"column_start":73,"column_end":79,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":73,"highlight_end":79}],"label":"expected 2 generic arguments","suggested_replacement":null,"suggestion_applicability":null,"expansion":null},{"file_name":"tests/ui/pubsub/attr-invalid-name-values.rs","byte_start":558,"byte_end":562,"line_start":16,"line_end":16,"column_start":80,"column_end":84,"is_primary":false,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":80,"highlight_end":84}],"label":"supplied 1 generic argument","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"add missing generic argument","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-name-values.rs","byte_start":562,"byte_end":562,"line_start":16,"line_end":16,"column_start":84,"column_end":84,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":84,"highlight_end":84}],"label":null,"suggested_replacement":", E","suggestion_applicability":"HasPlaceholders","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied\n  --> tests/ui/pubsub/attr-invalid-name-values.rs:16:73\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;\n   |                                                                            ^^^^^^ ---- supplied 1 generic argument\n   |                                                                            |\n   |                                                                            expected 2 generic arguments\n   |\nhelp: add missing generic argument\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;\n   |                                                                                       +++\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"aborting due to 7 previous errors","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to 7 previous errors\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"Some errors have detailed explanations: E0107, E0412, E0433, E0464.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"Some errors have detailed explanations: E0107, E0412, E0433, E0464.\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"For more information about an error, try `rustc --explain E0107`.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"For more information about an error, try `rustc --explain E0107`.\n"}
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] normalized stderr:
[INFO] [stdout] error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout]  --> $DIR/missing-subscribe.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]  --> $DIR/missing-subscribe.rs:6:3
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[rpc]
[INFO] [stdout]   |   ^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `pubsub` in this scope
[INFO] [stdout]   --> $DIR/missing-subscribe.rs:13:4
[INFO] [stdout]    |
[INFO] [stdout] 13 |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `SubscriptionId` in this scope
[INFO] [stdout]   --> $DIR/missing-subscribe.rs:14:54
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout] 1  + use susydev_jsonrpc_pubsub::SubscriptionId;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied
[INFO] [stdout]   --> $DIR/missing-subscribe.rs:14:73
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                                            ^^^^^^ ---- supplied 1 generic argument
[INFO] [stdout]    |                                                                            |
[INFO] [stdout]    |                                                                            expected 2 generic arguments
[INFO] [stdout]    |
[INFO] [stdout] help: add missing generic argument
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;
[INFO] [stdout]    |                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 5 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0107, E0412, E0464.
[INFO] [stdout] For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] expected stderr:
[INFO] [stdout] error: subscription 'hello'. Can't find subscribe method, expected a method annotated with `subscribe` e.g. `#[pubsub(subscription = "hello", subscribe, name = "hello_subscribe")]`
[INFO] [stdout]   --> $DIR/missing-subscribe.rs:12:2
[INFO] [stdout]    |
[INFO] [stdout] 12 |       /// Unsubscribe from hello subscription.
[INFO] [stdout]    |  _____^
[INFO] [stdout] 13 | |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout] 14 | |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    | |________________________________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] diff of stderr:
[INFO] [stdout] 
[INFO] [stdout] -error: subscription 'hello'. Can't find subscribe method, expected a method annotated with `subscribe` e.g. `#[pubsub(subscription = "hello", subscribe, name = "hello_subscribe")]`
[INFO] [stdout] -  --> $DIR/missing-subscribe.rs:12:2
[INFO] [stdout] +error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout] + --> $DIR/missing-subscribe.rs:2:1
[INFO] [stdout] +  |
[INFO] [stdout] +2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] + --> $DIR/missing-subscribe.rs:6:3
[INFO] [stdout] +  |
[INFO] [stdout] +6 | #[rpc]
[INFO] [stdout] +  |   ^^^
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `pubsub` in this scope
[INFO] [stdout] +  --> $DIR/missing-subscribe.rs:13:4
[INFO] [stdout]     |
[INFO] [stdout] -12 |       /// Unsubscribe from hello subscription.
[INFO] [stdout] -   |  _____^
[INFO] [stdout] -13 | |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout] -14 | |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout] -   | |________________________________________________________________________________________^
[INFO] [stdout] +13 |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout] +   |       ^^^^^^
[INFO] [stdout]  
[INFO] [stdout] -error: aborting due to previous error
[INFO] [stdout] +error[E0412]: cannot find type `SubscriptionId` in this scope
[INFO] [stdout] +  --> $DIR/missing-subscribe.rs:14:54
[INFO] [stdout] +   |
[INFO] [stdout] +14 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout] +   |                                                         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] +   |
[INFO] [stdout] +help: consider importing this enum
[INFO] [stdout] +   |
[INFO] [stdout] +1  + use susydev_jsonrpc_pubsub::SubscriptionId;
[INFO] [stdout] +   |
[INFO] [stdout]  
[INFO] [stdout] +error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied
[INFO] [stdout] +  --> $DIR/missing-subscribe.rs:14:73
[INFO] [stdout] +   |
[INFO] [stdout] +14 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout] +   |                                                                            ^^^^^^ ---- supplied 1 generic argument
[INFO] [stdout] +   |                                                                            |
[INFO] [stdout] +   |                                                                            expected 2 generic arguments
[INFO] [stdout] +   |
[INFO] [stdout] +help: add missing generic argument
[INFO] [stdout] +   |
[INFO] [stdout] +14 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;
[INFO] [stdout] +   |                                                                                       +++
[INFO] [stdout] +
[INFO] [stdout] +error: aborting due to 5 previous errors
[INFO] [stdout] +
[INFO] [stdout] +Some errors have detailed explanations: E0107, E0412, E0464.
[INFO] [stdout] +For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout]  
[INFO] [stdout] 
[INFO] [stdout] The actual stderr differed from the expected stderr.
[INFO] [stdout] Actual stderr saved to /tmp/pubsub/missing-subscribe.stderr
[INFO] [stdout] To update references, run this command from build directory:
[INFO] [stdout] tests/ui/update-references.sh '/tmp' 'pubsub/missing-subscribe.rs'
[INFO] [stdout] 
[INFO] [stdout] error: 1 errors occurred comparing output.
[INFO] [stdout] status: exit status: 1
[INFO] [stdout] command: "rustc" "tests/ui/pubsub/missing-subscribe.rs" "-L" "/tmp" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-C" "prefer-dynamic" "-o" "/tmp/pubsub/missing-subscribe.stage-id" "-L" "../target/debug/" "-L" "../target/debug/deps/" "-L" "/tmp/pubsub/missing-subscribe.stage-id.aux" "-A" "unused"
[INFO] [stdout] stdout:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] stderr:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/missing-subscribe.rs","byte_start":13,"byte_end":49,"line_start":2,"line_end":2,"column_start":1,"column_end":37,"is_primary":true,"text":[{"text":"extern crate susydev_jsonrpc_derive;","highlight_start":1,"highlight_end":37}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found\n --> tests/ui/pubsub/missing-subscribe.rs:2:1\n  |\n2 | extern crate susydev_jsonrpc_derive;\n  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so\n  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/missing-subscribe.rs","byte_start":125,"byte_end":128,"line_start":6,"line_end":6,"column_start":3,"column_end":6,"is_primary":true,"text":[{"text":"#[rpc]","highlight_start":3,"highlight_end":6}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n --> tests/ui/pubsub/missing-subscribe.rs:6:3\n  |\n6 | #[rpc]\n  |   ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `pubsub` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/missing-subscribe.rs","byte_start":253,"byte_end":259,"line_start":13,"line_end":13,"column_start":4,"column_end":10,"is_primary":true,"text":[{"text":"\t#[pubsub(subscription = \"hello\", unsubscribe, name = \"hello_unsubscribe\")]","highlight_start":4,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `pubsub` in this scope\n  --> tests/ui/pubsub/missing-subscribe.rs:13:4\n   |\n13 |     #[pubsub(subscription = \"hello\", unsubscribe, name = \"hello_unsubscribe\")]\n   |       ^^^^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find type `SubscriptionId` in this scope","code":{"code":"E0412","explanation":"A used type name is not in scope.\n\nErroneous code examples:\n\n```compile_fail,E0412\nimpl Something {} // error: type name `Something` is not in scope\n\n// or:\n\ntrait Foo {\n    fn bar(N); // error: type name `N` is not in scope\n}\n\n// or:\n\nfn foo(x: T) {} // type name `T` is not in scope\n```\n\nTo fix this error, please verify you didn't misspell the type name, you did\ndeclare it or imported it into the scope. Examples:\n\n```\nstruct Something;\n\nimpl Something {} // ok!\n\n// or:\n\ntrait Foo {\n    type N;\n\n    fn bar(_: Self::N); // ok!\n}\n\n// or:\n\nfn foo<T>(x: T) {} // ok!\n```\n\nAnother case that causes this error is when a type is imported into a parent\nmodule. To fix this, you can follow the suggestion and use File directly or\n`use super::File;` which will import the types from the parent namespace. An\nexample that causes this error is below:\n\n```compile_fail,E0412\nuse std::fs::File;\n\nmod foo {\n    fn some_function(f: File) {}\n}\n```\n\n```\nuse std::fs::File;\n\nmod foo {\n    // either\n    use super::File;\n    // or\n    // use std::fs::File;\n    fn foo(f: File) {}\n}\n# fn main() {} // don't insert it for us; that'll break imports\n```\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/missing-subscribe.rs","byte_start":379,"byte_end":393,"line_start":14,"line_end":14,"column_start":54,"column_end":68,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":54,"highlight_end":68}],"label":"not found in this scope","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"consider importing this enum","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/missing-subscribe.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[],"label":null,"suggested_replacement":"use susydev_jsonrpc_pubsub::SubscriptionId;\n\n","suggestion_applicability":"MaybeIncorrect","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0412]: cannot find type `SubscriptionId` in this scope\n  --> tests/ui/pubsub/missing-subscribe.rs:14:54\n   |\n14 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;\n   |                                                         ^^^^^^^^^^^^^^ not found in this scope\n   |\nhelp: consider importing this enum\n   |\n1  + use susydev_jsonrpc_pubsub::SubscriptionId;\n   |\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"enum takes 2 generic arguments but 1 generic argument was supplied","code":{"code":"E0107","explanation":"An incorrect number of generic arguments was provided.\n\nErroneous code example:\n\n```compile_fail,E0107\nstruct Foo<T> { x: T }\n\nstruct Bar { x: Foo }             // error: wrong number of type arguments:\n                                  //        expected 1, found 0\nstruct Baz<S, T> { x: Foo<S, T> } // error: wrong number of type arguments:\n                                  //        expected 1, found 2\n\nfn foo<T, U>(x: T, y: U) {}\nfn f() {}\n\nfn main() {\n    let x: bool = true;\n    foo::<bool>(x);                 // error: wrong number of type arguments:\n                                    //        expected 2, found 1\n    foo::<bool, i32, i32>(x, 2, 4); // error: wrong number of type arguments:\n                                    //        expected 2, found 3\n    f::<'static>();                 // error: wrong number of lifetime arguments\n                                    //        expected 0, found 1\n}\n```\n\nWhen using/declaring an item with generic arguments, you must provide the exact\nsame number:\n\n```\nstruct Foo<T> { x: T }\n\nstruct Bar<T> { x: Foo<T> }               // ok!\nstruct Baz<S, T> { x: Foo<S>, y: Foo<T> } // ok!\n\nfn foo<T, U>(x: T, y: U) {}\nfn f() {}\n\nfn main() {\n    let x: bool = true;\n    foo::<bool, u32>(x, 12);              // ok!\n    f();                                  // ok!\n}\n```\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/missing-subscribe.rs","byte_start":398,"byte_end":404,"line_start":14,"line_end":14,"column_start":73,"column_end":79,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":73,"highlight_end":79}],"label":"expected 2 generic arguments","suggested_replacement":null,"suggestion_applicability":null,"expansion":null},{"file_name":"tests/ui/pubsub/missing-subscribe.rs","byte_start":405,"byte_end":409,"line_start":14,"line_end":14,"column_start":80,"column_end":84,"is_primary":false,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":80,"highlight_end":84}],"label":"supplied 1 generic argument","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"add missing generic argument","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/missing-subscribe.rs","byte_start":409,"byte_end":409,"line_start":14,"line_end":14,"column_start":84,"column_end":84,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":84,"highlight_end":84}],"label":null,"suggested_replacement":", E","suggestion_applicability":"HasPlaceholders","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied\n  --> tests/ui/pubsub/missing-subscribe.rs:14:73\n   |\n14 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;\n   |                                                                            ^^^^^^ ---- supplied 1 generic argument\n   |                                                                            |\n   |                                                                            expected 2 generic arguments\n   |\nhelp: add missing generic argument\n   |\n14 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;\n   |                                                                                       +++\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"aborting due to 5 previous errors","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to 5 previous errors\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"Some errors have detailed explanations: E0107, E0412, E0464.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"Some errors have detailed explanations: E0107, E0412, E0464.\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"For more information about an error, try `rustc --explain E0107`.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"For more information about an error, try `rustc --explain E0107`.\n"}
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] normalized stderr:
[INFO] [stdout] error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout]  --> $DIR/missing-unsubscribe.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]  --> $DIR/missing-unsubscribe.rs:6:3
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[rpc]
[INFO] [stdout]   |   ^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `pubsub` in this scope
[INFO] [stdout]   --> $DIR/missing-unsubscribe.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 |     #[pubsub(subscription = "hello", subscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `typed`
[INFO] [stdout]   --> $DIR/missing-unsubscribe.rs:12:44
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout]    |                                               ^^^^^ use of undeclared crate or module `typed`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]    |
[INFO] [stdout] 1  + use susydev_jsonrpc_pubsub::typed;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0433, E0464.
[INFO] [stdout] For more information about an error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] expected stderr:
[INFO] [stdout] error: subscription 'hello'. Can't find unsubscribe method, expected a method annotated with `unsubscribe` e.g. `#[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]`
[INFO] [stdout]   --> $DIR/missing-unsubscribe.rs:10:2
[INFO] [stdout]    |
[INFO] [stdout] 10 |       /// Hello subscription
[INFO] [stdout]    |  _____^
[INFO] [stdout] 11 | |     #[pubsub(subscription = "hello", subscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] 12 | |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout]    | |_________________________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] diff of stderr:
[INFO] [stdout] 
[INFO] [stdout] -error: subscription 'hello'. Can't find unsubscribe method, expected a method annotated with `unsubscribe` e.g. `#[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]`
[INFO] [stdout] -  --> $DIR/missing-unsubscribe.rs:10:2
[INFO] [stdout] +error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout] + --> $DIR/missing-unsubscribe.rs:2:1
[INFO] [stdout] +  |
[INFO] [stdout] +2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] + --> $DIR/missing-unsubscribe.rs:6:3
[INFO] [stdout] +  |
[INFO] [stdout] +6 | #[rpc]
[INFO] [stdout] +  |   ^^^
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `pubsub` in this scope
[INFO] [stdout] +  --> $DIR/missing-unsubscribe.rs:11:4
[INFO] [stdout]     |
[INFO] [stdout] -10 |       /// Hello subscription
[INFO] [stdout] -   |  _____^
[INFO] [stdout] -11 | |     #[pubsub(subscription = "hello", subscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] -12 | |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout] -   | |_________________________________________________________________________________^
[INFO] [stdout] +11 |     #[pubsub(subscription = "hello", subscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] +   |       ^^^^^^
[INFO] [stdout]  
[INFO] [stdout] -error: aborting due to previous error
[INFO] [stdout] +error[E0433]: failed to resolve: use of undeclared crate or module `typed`
[INFO] [stdout] +  --> $DIR/missing-unsubscribe.rs:12:44
[INFO] [stdout] +   |
[INFO] [stdout] +12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout] +   |                                               ^^^^^ use of undeclared crate or module `typed`
[INFO] [stdout] +   |
[INFO] [stdout] +help: consider importing this module
[INFO] [stdout] +   |
[INFO] [stdout] +1  + use susydev_jsonrpc_pubsub::typed;
[INFO] [stdout] +   |
[INFO] [stdout]  
[INFO] [stdout] +error: aborting due to 4 previous errors
[INFO] [stdout] +
[INFO] [stdout] +Some errors have detailed explanations: E0433, E0464.
[INFO] [stdout] +For more information about an error, try `rustc --explain E0433`.
[INFO] [stdout]  
[INFO] [stdout] 
[INFO] [stdout] The actual stderr differed from the expected stderr.
[INFO] [stdout] Actual stderr saved to /tmp/pubsub/missing-unsubscribe.stderr
[INFO] [stdout] To update references, run this command from build directory:
[INFO] [stdout] tests/ui/update-references.sh '/tmp' 'pubsub/missing-unsubscribe.rs'
[INFO] [stdout] 
[INFO] [stdout] error: 1 errors occurred comparing output.
[INFO] [stdout] status: exit status: 1
[INFO] [stdout] command: "rustc" "tests/ui/pubsub/missing-unsubscribe.rs" "-L" "/tmp" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-C" "prefer-dynamic" "-o" "/tmp/pubsub/missing-unsubscribe.stage-id" "-L" "../target/debug/" "-L" "../target/debug/deps/" "-L" "/tmp/pubsub/missing-unsubscribe.stage-id.aux" "-A" "unused"
[INFO] [stdout] stdout:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] stderr:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/missing-unsubscribe.rs","byte_start":13,"byte_end":49,"line_start":2,"line_end":2,"column_start":1,"column_end":37,"is_primary":true,"text":[{"text":"extern crate susydev_jsonrpc_derive;","highlight_start":1,"highlight_end":37}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found\n --> tests/ui/pubsub/missing-unsubscribe.rs:2:1\n  |\n2 | extern crate susydev_jsonrpc_derive;\n  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so\n  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/missing-unsubscribe.rs","byte_start":125,"byte_end":128,"line_start":6,"line_end":6,"column_start":3,"column_end":6,"is_primary":true,"text":[{"text":"#[rpc]","highlight_start":3,"highlight_end":6}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n --> tests/ui/pubsub/missing-unsubscribe.rs:6:3\n  |\n6 | #[rpc]\n  |   ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `pubsub` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/missing-unsubscribe.rs","byte_start":190,"byte_end":196,"line_start":11,"line_end":11,"column_start":4,"column_end":10,"is_primary":true,"text":[{"text":"\t#[pubsub(subscription = \"hello\", subscribe, name = \"hello_subscribe\", alias(\"hello_sub\"))]","highlight_start":4,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `pubsub` in this scope\n  --> tests/ui/pubsub/missing-unsubscribe.rs:11:4\n   |\n11 |     #[pubsub(subscription = \"hello\", subscribe, name = \"hello_subscribe\", alias(\"hello_sub\"))]\n   |       ^^^^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"failed to resolve: use of undeclared crate or module `typed`","code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap<u32, u32> = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared crate or module `ferris_wheel`\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/missing-unsubscribe.rs","byte_start":322,"byte_end":327,"line_start":12,"line_end":12,"column_start":44,"column_end":49,"is_primary":true,"text":[{"text":"\tfn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);","highlight_start":44,"highlight_end":49}],"label":"use of undeclared crate or module `typed`","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"consider importing this module","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/missing-unsubscribe.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[],"label":null,"suggested_replacement":"use susydev_jsonrpc_pubsub::typed;\n\n","suggestion_applicability":"MaybeIncorrect","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0433]: failed to resolve: use of undeclared crate or module `typed`\n  --> tests/ui/pubsub/missing-unsubscribe.rs:12:44\n   |\n12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);\n   |                                               ^^^^^ use of undeclared crate or module `typed`\n   |\nhelp: consider importing this module\n   |\n1  + use susydev_jsonrpc_pubsub::typed;\n   |\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"aborting due to 4 previous errors","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to 4 previous errors\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"Some errors have detailed explanations: E0433, E0464.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"Some errors have detailed explanations: E0433, E0464.\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"For more information about an error, try `rustc --explain E0433`.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"For more information about an error, try `rustc --explain E0433`.\n"}
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] normalized stderr:
[INFO] [stdout] error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout]  --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]  --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:6:3
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[rpc]
[INFO] [stdout]   |   ^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `pubsub` in this scope
[INFO] [stdout]   --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 |     #[pubsub(subscription = "hello", name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `pubsub` in this scope
[INFO] [stdout]   --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:15:4
[INFO] [stdout]    |
[INFO] [stdout] 15 |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `typed`
[INFO] [stdout]   --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:12:44
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout]    |                                               ^^^^^ use of undeclared crate or module `typed`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]    |
[INFO] [stdout] 1  + use susydev_jsonrpc_pubsub::typed;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `SubscriptionId` in this scope
[INFO] [stdout]   --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:16:54
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout] 1  + use susydev_jsonrpc_pubsub::SubscriptionId;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied
[INFO] [stdout]   --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:16:73
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                                            ^^^^^^ ---- supplied 1 generic argument
[INFO] [stdout]    |                                                                            |
[INFO] [stdout]    |                                                                            expected 2 generic arguments
[INFO] [stdout]    |
[INFO] [stdout] help: add missing generic argument
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;
[INFO] [stdout]    |                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0107, E0412, E0433, E0464.
[INFO] [stdout] For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] expected stderr:
[INFO] [stdout] error: pubsub attribute not annotated with either subscribe or unsubscribe
[INFO] [stdout]   --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:10:2
[INFO] [stdout]    |
[INFO] [stdout] 10 |       /// Hello subscription
[INFO] [stdout]    |  _____^
[INFO] [stdout] 11 | |     #[pubsub(subscription = "hello", name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] 12 | |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout]    | |_________________________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] diff of stderr:
[INFO] [stdout] 
[INFO] [stdout] -error: pubsub attribute not annotated with either subscribe or unsubscribe
[INFO] [stdout] -  --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:10:2
[INFO] [stdout] +error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout] + --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:2:1
[INFO] [stdout] +  |
[INFO] [stdout] +2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] + --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:6:3
[INFO] [stdout] +  |
[INFO] [stdout] +6 | #[rpc]
[INFO] [stdout] +  |   ^^^
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `pubsub` in this scope
[INFO] [stdout] +  --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:11:4
[INFO] [stdout]     |
[INFO] [stdout] -10 |       /// Hello subscription
[INFO] [stdout] -   |  _____^
[INFO] [stdout] -11 | |     #[pubsub(subscription = "hello", name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] -12 | |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout] -   | |_________________________________________________________________________________^
[INFO] [stdout] +11 |     #[pubsub(subscription = "hello", name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] +   |       ^^^^^^
[INFO] [stdout]  
[INFO] [stdout] -error: aborting due to previous error
[INFO] [stdout] +error: cannot find attribute `pubsub` in this scope
[INFO] [stdout] +  --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:15:4
[INFO] [stdout] +   |
[INFO] [stdout] +15 |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout] +   |       ^^^^^^
[INFO] [stdout]  
[INFO] [stdout] +error[E0433]: failed to resolve: use of undeclared crate or module `typed`
[INFO] [stdout] +  --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:12:44
[INFO] [stdout] +   |
[INFO] [stdout] +12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout] +   |                                               ^^^^^ use of undeclared crate or module `typed`
[INFO] [stdout] +   |
[INFO] [stdout] +help: consider importing this module
[INFO] [stdout] +   |
[INFO] [stdout] +1  + use susydev_jsonrpc_pubsub::typed;
[INFO] [stdout] +   |
[INFO] [stdout] +
[INFO] [stdout] +error[E0412]: cannot find type `SubscriptionId` in this scope
[INFO] [stdout] +  --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:16:54
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout] +   |                                                         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] +   |
[INFO] [stdout] +help: consider importing this enum
[INFO] [stdout] +   |
[INFO] [stdout] +1  + use susydev_jsonrpc_pubsub::SubscriptionId;
[INFO] [stdout] +   |
[INFO] [stdout] +
[INFO] [stdout] +error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied
[INFO] [stdout] +  --> $DIR/attr-neither-subscribe-or-unsubscribe.rs:16:73
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout] +   |                                                                            ^^^^^^ ---- supplied 1 generic argument
[INFO] [stdout] +   |                                                                            |
[INFO] [stdout] +   |                                                                            expected 2 generic arguments
[INFO] [stdout] +   |
[INFO] [stdout] +help: add missing generic argument
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;
[INFO] [stdout] +   |                                                                                       +++
[INFO] [stdout] +
[INFO] [stdout] +error: aborting due to 7 previous errors
[INFO] [stdout] +
[INFO] [stdout] +Some errors have detailed explanations: E0107, E0412, E0433, E0464.
[INFO] [stdout] +For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout]  
[INFO] [stdout] 
[INFO] [stdout] The actual stderr differed from the expected stderr.
[INFO] [stdout] Actual stderr saved to /tmp/pubsub/attr-neither-subscribe-or-unsubscribe.stderr
[INFO] [stdout] To update references, run this command from build directory:
[INFO] [stdout] tests/ui/update-references.sh '/tmp' 'pubsub/attr-neither-subscribe-or-unsubscribe.rs'
[INFO] [stdout] 
[INFO] [stdout] error: 1 errors occurred comparing output.
[INFO] [stdout] status: exit status: 1
[INFO] [stdout] command: "rustc" "tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs" "-L" "/tmp" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-C" "prefer-dynamic" "-o" "/tmp/pubsub/attr-neither-subscribe-or-unsubscribe.stage-id" "-L" "../target/debug/" "-L" "../target/debug/deps/" "-L" "/tmp/pubsub/attr-neither-subscribe-or-unsubscribe.stage-id.aux" "-A" "unused"
[INFO] [stdout] stdout:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] stderr:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs","byte_start":13,"byte_end":49,"line_start":2,"line_end":2,"column_start":1,"column_end":37,"is_primary":true,"text":[{"text":"extern crate susydev_jsonrpc_derive;","highlight_start":1,"highlight_end":37}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found\n --> tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs:2:1\n  |\n2 | extern crate susydev_jsonrpc_derive;\n  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so\n  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs","byte_start":125,"byte_end":128,"line_start":6,"line_end":6,"column_start":3,"column_end":6,"is_primary":true,"text":[{"text":"#[rpc]","highlight_start":3,"highlight_end":6}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n --> tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs:6:3\n  |\n6 | #[rpc]\n  |   ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `pubsub` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs","byte_start":190,"byte_end":196,"line_start":11,"line_end":11,"column_start":4,"column_end":10,"is_primary":true,"text":[{"text":"\t#[pubsub(subscription = \"hello\", name = \"hello_subscribe\", alias(\"hello_sub\"))]","highlight_start":4,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `pubsub` in this scope\n  --> tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs:11:4\n   |\n11 |     #[pubsub(subscription = \"hello\", name = \"hello_subscribe\", alias(\"hello_sub\"))]\n   |       ^^^^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `pubsub` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs","byte_start":393,"byte_end":399,"line_start":15,"line_end":15,"column_start":4,"column_end":10,"is_primary":true,"text":[{"text":"\t#[pubsub(subscription = \"hello\", unsubscribe, name = \"hello_unsubscribe\")]","highlight_start":4,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `pubsub` in this scope\n  --> tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs:15:4\n   |\n15 |     #[pubsub(subscription = \"hello\", unsubscribe, name = \"hello_unsubscribe\")]\n   |       ^^^^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"failed to resolve: use of undeclared crate or module `typed`","code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap<u32, u32> = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared crate or module `ferris_wheel`\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs","byte_start":311,"byte_end":316,"line_start":12,"line_end":12,"column_start":44,"column_end":49,"is_primary":true,"text":[{"text":"\tfn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);","highlight_start":44,"highlight_end":49}],"label":"use of undeclared crate or module `typed`","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"consider importing this module","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[],"label":null,"suggested_replacement":"use susydev_jsonrpc_pubsub::typed;\n\n","suggestion_applicability":"MaybeIncorrect","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0433]: failed to resolve: use of undeclared crate or module `typed`\n  --> tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs:12:44\n   |\n12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);\n   |                                               ^^^^^ use of undeclared crate or module `typed`\n   |\nhelp: consider importing this module\n   |\n1  + use susydev_jsonrpc_pubsub::typed;\n   |\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find type `SubscriptionId` in this scope","code":{"code":"E0412","explanation":"A used type name is not in scope.\n\nErroneous code examples:\n\n```compile_fail,E0412\nimpl Something {} // error: type name `Something` is not in scope\n\n// or:\n\ntrait Foo {\n    fn bar(N); // error: type name `N` is not in scope\n}\n\n// or:\n\nfn foo(x: T) {} // type name `T` is not in scope\n```\n\nTo fix this error, please verify you didn't misspell the type name, you did\ndeclare it or imported it into the scope. Examples:\n\n```\nstruct Something;\n\nimpl Something {} // ok!\n\n// or:\n\ntrait Foo {\n    type N;\n\n    fn bar(_: Self::N); // ok!\n}\n\n// or:\n\nfn foo<T>(x: T) {} // ok!\n```\n\nAnother case that causes this error is when a type is imported into a parent\nmodule. To fix this, you can follow the suggestion and use File directly or\n`use super::File;` which will import the types from the parent namespace. An\nexample that causes this error is below:\n\n```compile_fail,E0412\nuse std::fs::File;\n\nmod foo {\n    fn some_function(f: File) {}\n}\n```\n\n```\nuse std::fs::File;\n\nmod foo {\n    // either\n    use super::File;\n    // or\n    // use std::fs::File;\n    fn foo(f: File) {}\n}\n# fn main() {} // don't insert it for us; that'll break imports\n```\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs","byte_start":519,"byte_end":533,"line_start":16,"line_end":16,"column_start":54,"column_end":68,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":54,"highlight_end":68}],"label":"not found in this scope","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"consider importing this enum","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[],"label":null,"suggested_replacement":"use susydev_jsonrpc_pubsub::SubscriptionId;\n\n","suggestion_applicability":"MaybeIncorrect","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0412]: cannot find type `SubscriptionId` in this scope\n  --> tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs:16:54\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;\n   |                                                         ^^^^^^^^^^^^^^ not found in this scope\n   |\nhelp: consider importing this enum\n   |\n1  + use susydev_jsonrpc_pubsub::SubscriptionId;\n   |\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"enum takes 2 generic arguments but 1 generic argument was supplied","code":{"code":"E0107","explanation":"An incorrect number of generic arguments was provided.\n\nErroneous code example:\n\n```compile_fail,E0107\nstruct Foo<T> { x: T }\n\nstruct Bar { x: Foo }             // error: wrong number of type arguments:\n                                  //        expected 1, found 0\nstruct Baz<S, T> { x: Foo<S, T> } // error: wrong number of type arguments:\n                                  //        expected 1, found 2\n\nfn foo<T, U>(x: T, y: U) {}\nfn f() {}\n\nfn main() {\n    let x: bool = true;\n    foo::<bool>(x);                 // error: wrong number of type arguments:\n                                    //        expected 2, found 1\n    foo::<bool, i32, i32>(x, 2, 4); // error: wrong number of type arguments:\n                                    //        expected 2, found 3\n    f::<'static>();                 // error: wrong number of lifetime arguments\n                                    //        expected 0, found 1\n}\n```\n\nWhen using/declaring an item with generic arguments, you must provide the exact\nsame number:\n\n```\nstruct Foo<T> { x: T }\n\nstruct Bar<T> { x: Foo<T> }               // ok!\nstruct Baz<S, T> { x: Foo<S>, y: Foo<T> } // ok!\n\nfn foo<T, U>(x: T, y: U) {}\nfn f() {}\n\nfn main() {\n    let x: bool = true;\n    foo::<bool, u32>(x, 12);              // ok!\n    f();                                  // ok!\n}\n```\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs","byte_start":538,"byte_end":544,"line_start":16,"line_end":16,"column_start":73,"column_end":79,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":73,"highlight_end":79}],"label":"expected 2 generic arguments","suggested_replacement":null,"suggestion_applicability":null,"expansion":null},{"file_name":"tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs","byte_start":545,"byte_end":549,"line_start":16,"line_end":16,"column_start":80,"column_end":84,"is_primary":false,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":80,"highlight_end":84}],"label":"supplied 1 generic argument","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"add missing generic argument","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs","byte_start":549,"byte_end":549,"line_start":16,"line_end":16,"column_start":84,"column_end":84,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":84,"highlight_end":84}],"label":null,"suggested_replacement":", E","suggestion_applicability":"HasPlaceholders","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied\n  --> tests/ui/pubsub/attr-neither-subscribe-or-unsubscribe.rs:16:73\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;\n   |                                                                            ^^^^^^ ---- supplied 1 generic argument\n   |                                                                            |\n   |                                                                            expected 2 generic arguments\n   |\nhelp: add missing generic argument\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;\n   |                                                                                       +++\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"aborting due to 7 previous errors","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to 7 previous errors\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"Some errors have detailed explanations: E0107, E0412, E0433, E0464.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"Some errors have detailed explanations: E0107, E0412, E0433, E0464.\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"For more information about an error, try `rustc --explain E0107`.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"For more information about an error, try `rustc --explain E0107`.\n"}
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] normalized stderr:
[INFO] [stdout] error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout]  --> $DIR/attr-invalid-meta-words.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]  --> $DIR/attr-invalid-meta-words.rs:6:3
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[rpc]
[INFO] [stdout]   |   ^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `pubsub` in this scope
[INFO] [stdout]   --> $DIR/attr-invalid-meta-words.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 |     #[pubsub(subscription = "hello", Xsubscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `pubsub` in this scope
[INFO] [stdout]   --> $DIR/attr-invalid-meta-words.rs:15:4
[INFO] [stdout]    |
[INFO] [stdout] 15 |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `typed`
[INFO] [stdout]   --> $DIR/attr-invalid-meta-words.rs:12:44
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout]    |                                               ^^^^^ use of undeclared crate or module `typed`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]    |
[INFO] [stdout] 1  + use susydev_jsonrpc_pubsub::typed;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `SubscriptionId` in this scope
[INFO] [stdout]   --> $DIR/attr-invalid-meta-words.rs:16:54
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout] 1  + use susydev_jsonrpc_pubsub::SubscriptionId;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied
[INFO] [stdout]   --> $DIR/attr-invalid-meta-words.rs:16:73
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                                            ^^^^^^ ---- supplied 1 generic argument
[INFO] [stdout]    |                                                                            |
[INFO] [stdout]    |                                                                            expected 2 generic arguments
[INFO] [stdout]    |
[INFO] [stdout] help: add missing generic argument
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;
[INFO] [stdout]    |                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0107, E0412, E0433, E0464.
[INFO] [stdout] For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] expected stderr:
[INFO] [stdout] error: Invalid attribute parameter(s): 'Xsubscribe'. Expected 'subscribe, unsubscribe'
[INFO] [stdout]   --> $DIR/attr-invalid-meta-words.rs:10:2
[INFO] [stdout]    |
[INFO] [stdout] 10 |       /// Hello subscription
[INFO] [stdout]    |  _____^
[INFO] [stdout] 11 | |     #[pubsub(subscription = "hello", Xsubscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] 12 | |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout]    | |_________________________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] diff of stderr:
[INFO] [stdout] 
[INFO] [stdout] -error: Invalid attribute parameter(s): 'Xsubscribe'. Expected 'subscribe, unsubscribe'
[INFO] [stdout] -  --> $DIR/attr-invalid-meta-words.rs:10:2
[INFO] [stdout] +error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout] + --> $DIR/attr-invalid-meta-words.rs:2:1
[INFO] [stdout] +  |
[INFO] [stdout] +2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] + --> $DIR/attr-invalid-meta-words.rs:6:3
[INFO] [stdout] +  |
[INFO] [stdout] +6 | #[rpc]
[INFO] [stdout] +  |   ^^^
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `pubsub` in this scope
[INFO] [stdout] +  --> $DIR/attr-invalid-meta-words.rs:11:4
[INFO] [stdout]     |
[INFO] [stdout] -10 |       /// Hello subscription
[INFO] [stdout] -   |  _____^
[INFO] [stdout] -11 | |     #[pubsub(subscription = "hello", Xsubscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] -12 | |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout] -   | |_________________________________________________________________________________^
[INFO] [stdout] +11 |     #[pubsub(subscription = "hello", Xsubscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] +   |       ^^^^^^
[INFO] [stdout]  
[INFO] [stdout] -error: aborting due to previous error
[INFO] [stdout] +error: cannot find attribute `pubsub` in this scope
[INFO] [stdout] +  --> $DIR/attr-invalid-meta-words.rs:15:4
[INFO] [stdout] +   |
[INFO] [stdout] +15 |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout] +   |       ^^^^^^
[INFO] [stdout]  
[INFO] [stdout] +error[E0433]: failed to resolve: use of undeclared crate or module `typed`
[INFO] [stdout] +  --> $DIR/attr-invalid-meta-words.rs:12:44
[INFO] [stdout] +   |
[INFO] [stdout] +12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout] +   |                                               ^^^^^ use of undeclared crate or module `typed`
[INFO] [stdout] +   |
[INFO] [stdout] +help: consider importing this module
[INFO] [stdout] +   |
[INFO] [stdout] +1  + use susydev_jsonrpc_pubsub::typed;
[INFO] [stdout] +   |
[INFO] [stdout] +
[INFO] [stdout] +error[E0412]: cannot find type `SubscriptionId` in this scope
[INFO] [stdout] +  --> $DIR/attr-invalid-meta-words.rs:16:54
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout] +   |                                                         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] +   |
[INFO] [stdout] +help: consider importing this enum
[INFO] [stdout] +   |
[INFO] [stdout] +1  + use susydev_jsonrpc_pubsub::SubscriptionId;
[INFO] [stdout] +   |
[INFO] [stdout] +
[INFO] [stdout] +error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied
[INFO] [stdout] +  --> $DIR/attr-invalid-meta-words.rs:16:73
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout] +   |                                                                            ^^^^^^ ---- supplied 1 generic argument
[INFO] [stdout] +   |                                                                            |
[INFO] [stdout] +   |                                                                            expected 2 generic arguments
[INFO] [stdout] +   |
[INFO] [stdout] +help: add missing generic argument
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;
[INFO] [stdout] +   |                                                                                       +++
[INFO] [stdout] +
[INFO] [stdout] +error: aborting due to 7 previous errors
[INFO] [stdout] +
[INFO] [stdout] +Some errors have detailed explanations: E0107, E0412, E0433, E0464.
[INFO] [stdout] +For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout]  
[INFO] [stdout] 
[INFO] [stdout] The actual stderr differed from the expected stderr.
[INFO] [stdout] Actual stderr saved to /tmp/pubsub/attr-invalid-meta-words.stderr
[INFO] [stdout] To update references, run this command from build directory:
[INFO] [stdout] tests/ui/update-references.sh '/tmp' 'pubsub/attr-invalid-meta-words.rs'
[INFO] [stdout] 
[INFO] [stdout] error: 1 errors occurred comparing output.
[INFO] [stdout] status: exit status: 1
[INFO] [stdout] command: "rustc" "tests/ui/pubsub/attr-invalid-meta-words.rs" "-L" "/tmp" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-C" "prefer-dynamic" "-o" "/tmp/pubsub/attr-invalid-meta-words.stage-id" "-L" "../target/debug/" "-L" "../target/debug/deps/" "-L" "/tmp/pubsub/attr-invalid-meta-words.stage-id.aux" "-A" "unused"
[INFO] [stdout] stdout:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] stderr:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-words.rs","byte_start":13,"byte_end":49,"line_start":2,"line_end":2,"column_start":1,"column_end":37,"is_primary":true,"text":[{"text":"extern crate susydev_jsonrpc_derive;","highlight_start":1,"highlight_end":37}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found\n --> tests/ui/pubsub/attr-invalid-meta-words.rs:2:1\n  |\n2 | extern crate susydev_jsonrpc_derive;\n  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so\n  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-words.rs","byte_start":125,"byte_end":128,"line_start":6,"line_end":6,"column_start":3,"column_end":6,"is_primary":true,"text":[{"text":"#[rpc]","highlight_start":3,"highlight_end":6}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n --> tests/ui/pubsub/attr-invalid-meta-words.rs:6:3\n  |\n6 | #[rpc]\n  |   ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `pubsub` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-words.rs","byte_start":190,"byte_end":196,"line_start":11,"line_end":11,"column_start":4,"column_end":10,"is_primary":true,"text":[{"text":"\t#[pubsub(subscription = \"hello\", Xsubscribe, name = \"hello_subscribe\", alias(\"hello_sub\"))]","highlight_start":4,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `pubsub` in this scope\n  --> tests/ui/pubsub/attr-invalid-meta-words.rs:11:4\n   |\n11 |     #[pubsub(subscription = \"hello\", Xsubscribe, name = \"hello_subscribe\", alias(\"hello_sub\"))]\n   |       ^^^^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `pubsub` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-words.rs","byte_start":405,"byte_end":411,"line_start":15,"line_end":15,"column_start":4,"column_end":10,"is_primary":true,"text":[{"text":"\t#[pubsub(subscription = \"hello\", unsubscribe, name = \"hello_unsubscribe\")]","highlight_start":4,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `pubsub` in this scope\n  --> tests/ui/pubsub/attr-invalid-meta-words.rs:15:4\n   |\n15 |     #[pubsub(subscription = \"hello\", unsubscribe, name = \"hello_unsubscribe\")]\n   |       ^^^^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"failed to resolve: use of undeclared crate or module `typed`","code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap<u32, u32> = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared crate or module `ferris_wheel`\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-words.rs","byte_start":323,"byte_end":328,"line_start":12,"line_end":12,"column_start":44,"column_end":49,"is_primary":true,"text":[{"text":"\tfn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);","highlight_start":44,"highlight_end":49}],"label":"use of undeclared crate or module `typed`","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"consider importing this module","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-words.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[],"label":null,"suggested_replacement":"use susydev_jsonrpc_pubsub::typed;\n\n","suggestion_applicability":"MaybeIncorrect","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0433]: failed to resolve: use of undeclared crate or module `typed`\n  --> tests/ui/pubsub/attr-invalid-meta-words.rs:12:44\n   |\n12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);\n   |                                               ^^^^^ use of undeclared crate or module `typed`\n   |\nhelp: consider importing this module\n   |\n1  + use susydev_jsonrpc_pubsub::typed;\n   |\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find type `SubscriptionId` in this scope","code":{"code":"E0412","explanation":"A used type name is not in scope.\n\nErroneous code examples:\n\n```compile_fail,E0412\nimpl Something {} // error: type name `Something` is not in scope\n\n// or:\n\ntrait Foo {\n    fn bar(N); // error: type name `N` is not in scope\n}\n\n// or:\n\nfn foo(x: T) {} // type name `T` is not in scope\n```\n\nTo fix this error, please verify you didn't misspell the type name, you did\ndeclare it or imported it into the scope. Examples:\n\n```\nstruct Something;\n\nimpl Something {} // ok!\n\n// or:\n\ntrait Foo {\n    type N;\n\n    fn bar(_: Self::N); // ok!\n}\n\n// or:\n\nfn foo<T>(x: T) {} // ok!\n```\n\nAnother case that causes this error is when a type is imported into a parent\nmodule. To fix this, you can follow the suggestion and use File directly or\n`use super::File;` which will import the types from the parent namespace. An\nexample that causes this error is below:\n\n```compile_fail,E0412\nuse std::fs::File;\n\nmod foo {\n    fn some_function(f: File) {}\n}\n```\n\n```\nuse std::fs::File;\n\nmod foo {\n    // either\n    use super::File;\n    // or\n    // use std::fs::File;\n    fn foo(f: File) {}\n}\n# fn main() {} // don't insert it for us; that'll break imports\n```\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-words.rs","byte_start":531,"byte_end":545,"line_start":16,"line_end":16,"column_start":54,"column_end":68,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":54,"highlight_end":68}],"label":"not found in this scope","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"consider importing this enum","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-words.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[],"label":null,"suggested_replacement":"use susydev_jsonrpc_pubsub::SubscriptionId;\n\n","suggestion_applicability":"MaybeIncorrect","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0412]: cannot find type `SubscriptionId` in this scope\n  --> tests/ui/pubsub/attr-invalid-meta-words.rs:16:54\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;\n   |                                                         ^^^^^^^^^^^^^^ not found in this scope\n   |\nhelp: consider importing this enum\n   |\n1  + use susydev_jsonrpc_pubsub::SubscriptionId;\n   |\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"enum takes 2 generic arguments but 1 generic argument was supplied","code":{"code":"E0107","explanation":"An incorrect number of generic arguments was provided.\n\nErroneous code example:\n\n```compile_fail,E0107\nstruct Foo<T> { x: T }\n\nstruct Bar { x: Foo }             // error: wrong number of type arguments:\n                                  //        expected 1, found 0\nstruct Baz<S, T> { x: Foo<S, T> } // error: wrong number of type arguments:\n                                  //        expected 1, found 2\n\nfn foo<T, U>(x: T, y: U) {}\nfn f() {}\n\nfn main() {\n    let x: bool = true;\n    foo::<bool>(x);                 // error: wrong number of type arguments:\n                                    //        expected 2, found 1\n    foo::<bool, i32, i32>(x, 2, 4); // error: wrong number of type arguments:\n                                    //        expected 2, found 3\n    f::<'static>();                 // error: wrong number of lifetime arguments\n                                    //        expected 0, found 1\n}\n```\n\nWhen using/declaring an item with generic arguments, you must provide the exact\nsame number:\n\n```\nstruct Foo<T> { x: T }\n\nstruct Bar<T> { x: Foo<T> }               // ok!\nstruct Baz<S, T> { x: Foo<S>, y: Foo<T> } // ok!\n\nfn foo<T, U>(x: T, y: U) {}\nfn f() {}\n\nfn main() {\n    let x: bool = true;\n    foo::<bool, u32>(x, 12);              // ok!\n    f();                                  // ok!\n}\n```\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-words.rs","byte_start":550,"byte_end":556,"line_start":16,"line_end":16,"column_start":73,"column_end":79,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":73,"highlight_end":79}],"label":"expected 2 generic arguments","suggested_replacement":null,"suggestion_applicability":null,"expansion":null},{"file_name":"tests/ui/pubsub/attr-invalid-meta-words.rs","byte_start":557,"byte_end":561,"line_start":16,"line_end":16,"column_start":80,"column_end":84,"is_primary":false,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":80,"highlight_end":84}],"label":"supplied 1 generic argument","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"add missing generic argument","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-invalid-meta-words.rs","byte_start":561,"byte_end":561,"line_start":16,"line_end":16,"column_start":84,"column_end":84,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":84,"highlight_end":84}],"label":null,"suggested_replacement":", E","suggestion_applicability":"HasPlaceholders","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied\n  --> tests/ui/pubsub/attr-invalid-meta-words.rs:16:73\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;\n   |                                                                            ^^^^^^ ---- supplied 1 generic argument\n   |                                                                            |\n   |                                                                            expected 2 generic arguments\n   |\nhelp: add missing generic argument\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;\n   |                                                                                       +++\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"aborting due to 7 previous errors","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to 7 previous errors\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"Some errors have detailed explanations: E0107, E0412, E0433, E0464.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"Some errors have detailed explanations: E0107, E0412, E0433, E0464.\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"For more information about an error, try `rustc --explain E0107`.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"For more information about an error, try `rustc --explain E0107`.\n"}
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] normalized stderr:
[INFO] [stdout] error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout]  --> $DIR/attr-both-subscribe-and-unsubscribe.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]  --> $DIR/attr-both-subscribe-and-unsubscribe.rs:6:3
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[rpc]
[INFO] [stdout]   |   ^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `pubsub` in this scope
[INFO] [stdout]   --> $DIR/attr-both-subscribe-and-unsubscribe.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 |     #[pubsub(subscription = "hello", subscribe, unsubscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `pubsub` in this scope
[INFO] [stdout]   --> $DIR/attr-both-subscribe-and-unsubscribe.rs:15:4
[INFO] [stdout]    |
[INFO] [stdout] 15 |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `typed`
[INFO] [stdout]   --> $DIR/attr-both-subscribe-and-unsubscribe.rs:12:44
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout]    |                                               ^^^^^ use of undeclared crate or module `typed`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]    |
[INFO] [stdout] 1  + use susydev_jsonrpc_pubsub::typed;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `SubscriptionId` in this scope
[INFO] [stdout]   --> $DIR/attr-both-subscribe-and-unsubscribe.rs:16:54
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout] 1  + use susydev_jsonrpc_pubsub::SubscriptionId;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied
[INFO] [stdout]   --> $DIR/attr-both-subscribe-and-unsubscribe.rs:16:73
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                                            ^^^^^^ ---- supplied 1 generic argument
[INFO] [stdout]    |                                                                            |
[INFO] [stdout]    |                                                                            expected 2 generic arguments
[INFO] [stdout]    |
[INFO] [stdout] help: add missing generic argument
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;
[INFO] [stdout]    |                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0107, E0412, E0433, E0464.
[INFO] [stdout] For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] expected stderr:
[INFO] [stdout] error: pubsub attribute annotated with both subscribe and unsubscribe
[INFO] [stdout]   --> $DIR/attr-both-subscribe-and-unsubscribe.rs:10:2
[INFO] [stdout]    |
[INFO] [stdout] 10 |       /// Hello subscription
[INFO] [stdout]    |  _____^
[INFO] [stdout] 11 | |     #[pubsub(subscription = "hello", subscribe, unsubscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] 12 | |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout]    | |_________________________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] diff of stderr:
[INFO] [stdout] 
[INFO] [stdout] -error: pubsub attribute annotated with both subscribe and unsubscribe
[INFO] [stdout] -  --> $DIR/attr-both-subscribe-and-unsubscribe.rs:10:2
[INFO] [stdout] +error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout] + --> $DIR/attr-both-subscribe-and-unsubscribe.rs:2:1
[INFO] [stdout] +  |
[INFO] [stdout] +2 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] + --> $DIR/attr-both-subscribe-and-unsubscribe.rs:6:3
[INFO] [stdout] +  |
[INFO] [stdout] +6 | #[rpc]
[INFO] [stdout] +  |   ^^^
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `pubsub` in this scope
[INFO] [stdout] +  --> $DIR/attr-both-subscribe-and-unsubscribe.rs:11:4
[INFO] [stdout]     |
[INFO] [stdout] -10 |       /// Hello subscription
[INFO] [stdout] -   |  _____^
[INFO] [stdout] -11 | |     #[pubsub(subscription = "hello", subscribe, unsubscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] -12 | |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout] -   | |_________________________________________________________________________________^
[INFO] [stdout] +11 |     #[pubsub(subscription = "hello", subscribe, unsubscribe, name = "hello_subscribe", alias("hello_sub"))]
[INFO] [stdout] +   |       ^^^^^^
[INFO] [stdout]  
[INFO] [stdout] -error: aborting due to previous error
[INFO] [stdout] +error: cannot find attribute `pubsub` in this scope
[INFO] [stdout] +  --> $DIR/attr-both-subscribe-and-unsubscribe.rs:15:4
[INFO] [stdout] +   |
[INFO] [stdout] +15 |     #[pubsub(subscription = "hello", unsubscribe, name = "hello_unsubscribe")]
[INFO] [stdout] +   |       ^^^^^^
[INFO] [stdout]  
[INFO] [stdout] +error[E0433]: failed to resolve: use of undeclared crate or module `typed`
[INFO] [stdout] +  --> $DIR/attr-both-subscribe-and-unsubscribe.rs:12:44
[INFO] [stdout] +   |
[INFO] [stdout] +12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);
[INFO] [stdout] +   |                                               ^^^^^ use of undeclared crate or module `typed`
[INFO] [stdout] +   |
[INFO] [stdout] +help: consider importing this module
[INFO] [stdout] +   |
[INFO] [stdout] +1  + use susydev_jsonrpc_pubsub::typed;
[INFO] [stdout] +   |
[INFO] [stdout] +
[INFO] [stdout] +error[E0412]: cannot find type `SubscriptionId` in this scope
[INFO] [stdout] +  --> $DIR/attr-both-subscribe-and-unsubscribe.rs:16:54
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout] +   |                                                         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] +   |
[INFO] [stdout] +help: consider importing this enum
[INFO] [stdout] +   |
[INFO] [stdout] +1  + use susydev_jsonrpc_pubsub::SubscriptionId;
[INFO] [stdout] +   |
[INFO] [stdout] +
[INFO] [stdout] +error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied
[INFO] [stdout] +  --> $DIR/attr-both-subscribe-and-unsubscribe.rs:16:73
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout] +   |                                                                            ^^^^^^ ---- supplied 1 generic argument
[INFO] [stdout] +   |                                                                            |
[INFO] [stdout] +   |                                                                            expected 2 generic arguments
[INFO] [stdout] +   |
[INFO] [stdout] +help: add missing generic argument
[INFO] [stdout] +   |
[INFO] [stdout] +16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;
[INFO] [stdout] +   |                                                                                       +++
[INFO] [stdout] +
[INFO] [stdout] +error: aborting due to 7 previous errors
[INFO] [stdout] +
[INFO] [stdout] +Some errors have detailed explanations: E0107, E0412, E0433, E0464.
[INFO] [stdout] +For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout]  
[INFO] [stdout] 
[INFO] [stdout] The actual stderr differed from the expected stderr.
[INFO] [stdout] Actual stderr saved to /tmp/pubsub/attr-both-subscribe-and-unsubscribe.stderr
[INFO] [stdout] To update references, run this command from build directory:
[INFO] [stdout] tests/ui/update-references.sh '/tmp' 'pubsub/attr-both-subscribe-and-unsubscribe.rs'
[INFO] [stdout] 
[INFO] [stdout] error: 1 errors occurred comparing output.
[INFO] [stdout] status: exit status: 1
[INFO] [stdout] command: "rustc" "tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs" "-L" "/tmp" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-C" "prefer-dynamic" "-o" "/tmp/pubsub/attr-both-subscribe-and-unsubscribe.stage-id" "-L" "../target/debug/" "-L" "../target/debug/deps/" "-L" "/tmp/pubsub/attr-both-subscribe-and-unsubscribe.stage-id.aux" "-A" "unused"
[INFO] [stdout] stdout:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] stderr:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs","byte_start":13,"byte_end":49,"line_start":2,"line_end":2,"column_start":1,"column_end":37,"is_primary":true,"text":[{"text":"extern crate susydev_jsonrpc_derive;","highlight_start":1,"highlight_end":37}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found\n --> tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs:2:1\n  |\n2 | extern crate susydev_jsonrpc_derive;\n  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so\n  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs","byte_start":125,"byte_end":128,"line_start":6,"line_end":6,"column_start":3,"column_end":6,"is_primary":true,"text":[{"text":"#[rpc]","highlight_start":3,"highlight_end":6}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n --> tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs:6:3\n  |\n6 | #[rpc]\n  |   ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `pubsub` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs","byte_start":190,"byte_end":196,"line_start":11,"line_end":11,"column_start":4,"column_end":10,"is_primary":true,"text":[{"text":"\t#[pubsub(subscription = \"hello\", subscribe, unsubscribe, name = \"hello_subscribe\", alias(\"hello_sub\"))]","highlight_start":4,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `pubsub` in this scope\n  --> tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs:11:4\n   |\n11 |     #[pubsub(subscription = \"hello\", subscribe, unsubscribe, name = \"hello_subscribe\", alias(\"hello_sub\"))]\n   |       ^^^^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `pubsub` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs","byte_start":417,"byte_end":423,"line_start":15,"line_end":15,"column_start":4,"column_end":10,"is_primary":true,"text":[{"text":"\t#[pubsub(subscription = \"hello\", unsubscribe, name = \"hello_unsubscribe\")]","highlight_start":4,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `pubsub` in this scope\n  --> tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs:15:4\n   |\n15 |     #[pubsub(subscription = \"hello\", unsubscribe, name = \"hello_unsubscribe\")]\n   |       ^^^^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"failed to resolve: use of undeclared crate or module `typed`","code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap<u32, u32> = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared crate or module `ferris_wheel`\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs","byte_start":335,"byte_end":340,"line_start":12,"line_end":12,"column_start":44,"column_end":49,"is_primary":true,"text":[{"text":"\tfn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);","highlight_start":44,"highlight_end":49}],"label":"use of undeclared crate or module `typed`","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"consider importing this module","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[],"label":null,"suggested_replacement":"use susydev_jsonrpc_pubsub::typed;\n\n","suggestion_applicability":"MaybeIncorrect","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0433]: failed to resolve: use of undeclared crate or module `typed`\n  --> tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs:12:44\n   |\n12 |     fn subscribe(&self, _: Self::Metadata, _: typed::Subscriber<String>, _: u64);\n   |                                               ^^^^^ use of undeclared crate or module `typed`\n   |\nhelp: consider importing this module\n   |\n1  + use susydev_jsonrpc_pubsub::typed;\n   |\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find type `SubscriptionId` in this scope","code":{"code":"E0412","explanation":"A used type name is not in scope.\n\nErroneous code examples:\n\n```compile_fail,E0412\nimpl Something {} // error: type name `Something` is not in scope\n\n// or:\n\ntrait Foo {\n    fn bar(N); // error: type name `N` is not in scope\n}\n\n// or:\n\nfn foo(x: T) {} // type name `T` is not in scope\n```\n\nTo fix this error, please verify you didn't misspell the type name, you did\ndeclare it or imported it into the scope. Examples:\n\n```\nstruct Something;\n\nimpl Something {} // ok!\n\n// or:\n\ntrait Foo {\n    type N;\n\n    fn bar(_: Self::N); // ok!\n}\n\n// or:\n\nfn foo<T>(x: T) {} // ok!\n```\n\nAnother case that causes this error is when a type is imported into a parent\nmodule. To fix this, you can follow the suggestion and use File directly or\n`use super::File;` which will import the types from the parent namespace. An\nexample that causes this error is below:\n\n```compile_fail,E0412\nuse std::fs::File;\n\nmod foo {\n    fn some_function(f: File) {}\n}\n```\n\n```\nuse std::fs::File;\n\nmod foo {\n    // either\n    use super::File;\n    // or\n    // use std::fs::File;\n    fn foo(f: File) {}\n}\n# fn main() {} // don't insert it for us; that'll break imports\n```\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs","byte_start":543,"byte_end":557,"line_start":16,"line_end":16,"column_start":54,"column_end":68,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":54,"highlight_end":68}],"label":"not found in this scope","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"consider importing this enum","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[],"label":null,"suggested_replacement":"use susydev_jsonrpc_pubsub::SubscriptionId;\n\n","suggestion_applicability":"MaybeIncorrect","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0412]: cannot find type `SubscriptionId` in this scope\n  --> tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs:16:54\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;\n   |                                                         ^^^^^^^^^^^^^^ not found in this scope\n   |\nhelp: consider importing this enum\n   |\n1  + use susydev_jsonrpc_pubsub::SubscriptionId;\n   |\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"enum takes 2 generic arguments but 1 generic argument was supplied","code":{"code":"E0107","explanation":"An incorrect number of generic arguments was provided.\n\nErroneous code example:\n\n```compile_fail,E0107\nstruct Foo<T> { x: T }\n\nstruct Bar { x: Foo }             // error: wrong number of type arguments:\n                                  //        expected 1, found 0\nstruct Baz<S, T> { x: Foo<S, T> } // error: wrong number of type arguments:\n                                  //        expected 1, found 2\n\nfn foo<T, U>(x: T, y: U) {}\nfn f() {}\n\nfn main() {\n    let x: bool = true;\n    foo::<bool>(x);                 // error: wrong number of type arguments:\n                                    //        expected 2, found 1\n    foo::<bool, i32, i32>(x, 2, 4); // error: wrong number of type arguments:\n                                    //        expected 2, found 3\n    f::<'static>();                 // error: wrong number of lifetime arguments\n                                    //        expected 0, found 1\n}\n```\n\nWhen using/declaring an item with generic arguments, you must provide the exact\nsame number:\n\n```\nstruct Foo<T> { x: T }\n\nstruct Bar<T> { x: Foo<T> }               // ok!\nstruct Baz<S, T> { x: Foo<S>, y: Foo<T> } // ok!\n\nfn foo<T, U>(x: T, y: U) {}\nfn f() {}\n\nfn main() {\n    let x: bool = true;\n    foo::<bool, u32>(x, 12);              // ok!\n    f();                                  // ok!\n}\n```\n"},"level":"error","spans":[{"file_name":"tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs","byte_start":562,"byte_end":568,"line_start":16,"line_end":16,"column_start":73,"column_end":79,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":73,"highlight_end":79}],"label":"expected 2 generic arguments","suggested_replacement":null,"suggestion_applicability":null,"expansion":null},{"file_name":"tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs","byte_start":569,"byte_end":573,"line_start":16,"line_end":16,"column_start":80,"column_end":84,"is_primary":false,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":80,"highlight_end":84}],"label":"supplied 1 generic argument","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"add missing generic argument","code":null,"level":"help","spans":[{"file_name":"tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs","byte_start":573,"byte_end":573,"line_start":16,"line_end":16,"column_start":84,"column_end":84,"is_primary":true,"text":[{"text":"\tfn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;","highlight_start":84,"highlight_end":84}],"label":null,"suggested_replacement":", E","suggestion_applicability":"HasPlaceholders","expansion":null}],"children":[],"rendered":null}],"rendered":"error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied\n  --> tests/ui/pubsub/attr-both-subscribe-and-unsubscribe.rs:16:73\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool>;\n   |                                                                            ^^^^^^ ---- supplied 1 generic argument\n   |                                                                            |\n   |                                                                            expected 2 generic arguments\n   |\nhelp: add missing generic argument\n   |\n16 |     fn unsubscribe(&self, _: Option<Self::Metadata>, _: SubscriptionId) -> Result<bool, E>;\n   |                                                                                       +++\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"aborting due to 7 previous errors","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to 7 previous errors\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"Some errors have detailed explanations: E0107, E0412, E0433, E0464.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"Some errors have detailed explanations: E0107, E0412, E0433, E0464.\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"For more information about an error, try `rustc --explain E0107`.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"For more information about an error, try `rustc --explain E0107`.\n"}
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] normalized stderr:
[INFO] [stdout] error[E0464]: multiple candidates for `rlib` dependency `serde` found
[INFO] [stdout]  --> $DIR/attr-invalid-meta-words.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | extern crate serde;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib
[INFO] [stdout]   = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib
[INFO] [stdout]   = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib
[INFO] [stdout]   = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib
[INFO] [stdout] 
[INFO] [stdout] error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout]  --> $DIR/attr-invalid-meta-words.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]  --> $DIR/attr-invalid-meta-words.rs:8:3
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[rpc]
[INFO] [stdout]   |   ^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]   --> $DIR/attr-invalid-meta-words.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 |     #[rpc(name = "protocolVersion", Xmeta)]
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0464`.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] expected stderr:
[INFO] [stdout] error: Invalid attribute parameter(s): 'Xmeta'. Expected 'meta'
[INFO] [stdout]   --> $DIR/attr-invalid-meta-words.rs:10:2
[INFO] [stdout]    |
[INFO] [stdout] 10 |       /// Returns a protocol version
[INFO] [stdout]    |  _____^
[INFO] [stdout] 11 | |     #[rpc(name = "protocolVersion", Xmeta)]
[INFO] [stdout] 12 | |     fn protocol_version(&self) -> Result<String>;
[INFO] [stdout]    | |_________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] diff of stderr:
[INFO] [stdout] 
[INFO] [stdout] -error: Invalid attribute parameter(s): 'Xmeta'. Expected 'meta'
[INFO] [stdout] -  --> $DIR/attr-invalid-meta-words.rs:10:2
[INFO] [stdout] +error[E0464]: multiple candidates for `rlib` dependency `serde` found
[INFO] [stdout] + --> $DIR/attr-invalid-meta-words.rs:1:1
[INFO] [stdout] +  |
[INFO] [stdout] +1 | extern crate serde;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib
[INFO] [stdout] +  = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib
[INFO] [stdout] +  = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib
[INFO] [stdout] +  = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib
[INFO] [stdout] +
[INFO] [stdout] +error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout] + --> $DIR/attr-invalid-meta-words.rs:4:1
[INFO] [stdout] +  |
[INFO] [stdout] +4 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] + --> $DIR/attr-invalid-meta-words.rs:8:3
[INFO] [stdout] +  |
[INFO] [stdout] +8 | #[rpc]
[INFO] [stdout] +  |   ^^^
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] +  --> $DIR/attr-invalid-meta-words.rs:11:4
[INFO] [stdout]     |
[INFO] [stdout] -10 |       /// Returns a protocol version
[INFO] [stdout] -   |  _____^
[INFO] [stdout] -11 | |     #[rpc(name = "protocolVersion", Xmeta)]
[INFO] [stdout] -12 | |     fn protocol_version(&self) -> Result<String>;
[INFO] [stdout] -   | |_________________________________________________^
[INFO] [stdout] +11 |     #[rpc(name = "protocolVersion", Xmeta)]
[INFO] [stdout] +   |       ^^^
[INFO] [stdout]  
[INFO] [stdout] -error: aborting due to previous error
[INFO] [stdout] +error: aborting due to 4 previous errors
[INFO] [stdout]  
[INFO] [stdout] +For more information about this error, try `rustc --explain E0464`.
[INFO] [stdout]  
[INFO] [stdout] 
[INFO] [stdout] The actual stderr differed from the expected stderr.
[INFO] [stdout] Actual stderr saved to /tmp/attr-invalid-meta-words.stderr
[INFO] [stdout] To update references, run this command from build directory:
[INFO] [stdout] tests/ui/update-references.sh '/tmp' 'attr-invalid-meta-words.rs'
[INFO] [stdout] 
[INFO] [stdout] error: 1 errors occurred comparing output.
[INFO] [stdout] status: exit status: 1
[INFO] [stdout] command: "rustc" "tests/ui/attr-invalid-meta-words.rs" "-L" "/tmp" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-C" "prefer-dynamic" "-o" "/tmp/attr-invalid-meta-words.stage-id" "-L" "../target/debug/" "-L" "../target/debug/deps/" "-L" "/tmp/attr-invalid-meta-words.stage-id.aux" "-A" "unused"
[INFO] [stdout] stdout:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] stderr:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `rlib` dependency `serde` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/attr-invalid-meta-words.rs","byte_start":0,"byte_end":19,"line_start":1,"line_end":1,"column_start":1,"column_end":20,"is_primary":true,"text":[{"text":"extern crate serde;","highlight_start":1,"highlight_end":20}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `rlib` dependency `serde` found\n --> tests/ui/attr-invalid-meta-words.rs:1:1\n  |\n1 | extern crate serde;\n  | ^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib\n  = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib\n  = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib\n  = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib\n  = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/attr-invalid-meta-words.rs","byte_start":68,"byte_end":104,"line_start":4,"line_end":4,"column_start":1,"column_end":37,"is_primary":true,"text":[{"text":"extern crate susydev_jsonrpc_derive;","highlight_start":1,"highlight_end":37}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found\n --> tests/ui/attr-invalid-meta-words.rs:4:1\n  |\n4 | extern crate susydev_jsonrpc_derive;\n  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so\n  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/attr-invalid-meta-words.rs","byte_start":143,"byte_end":146,"line_start":8,"line_end":8,"column_start":3,"column_end":6,"is_primary":true,"text":[{"text":"#[rpc]","highlight_start":3,"highlight_end":6}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n --> tests/ui/attr-invalid-meta-words.rs:8:3\n  |\n8 | #[rpc]\n  |   ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/attr-invalid-meta-words.rs","byte_start":199,"byte_end":202,"line_start":11,"line_end":11,"column_start":4,"column_end":7,"is_primary":true,"text":[{"text":"\t#[rpc(name = \"protocolVersion\", Xmeta)]","highlight_start":4,"highlight_end":7}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n  --> tests/ui/attr-invalid-meta-words.rs:11:4\n   |\n11 |     #[rpc(name = \"protocolVersion\", Xmeta)]\n   |       ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"aborting due to 4 previous errors","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to 4 previous errors\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"For more information about this error, try `rustc --explain E0464`.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"For more information about this error, try `rustc --explain E0464`.\n"}
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] normalized stderr:
[INFO] [stdout] error[E0464]: multiple candidates for `rlib` dependency `serde` found
[INFO] [stdout]  --> $DIR/multiple-rpc-attributes.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | extern crate serde;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib
[INFO] [stdout]   = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib
[INFO] [stdout]   = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib
[INFO] [stdout]   = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib
[INFO] [stdout] 
[INFO] [stdout] error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout]  --> $DIR/multiple-rpc-attributes.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]  --> $DIR/multiple-rpc-attributes.rs:8:3
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[rpc]
[INFO] [stdout]   |   ^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]   --> $DIR/multiple-rpc-attributes.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 |     #[rpc(name = "protocolVersion")]
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]   --> $DIR/multiple-rpc-attributes.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 |     #[rpc(name = "protocolVersionAgain")]
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 5 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0464`.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] expected stderr:
[INFO] [stdout] error: Expected only a single rpc attribute per method
[INFO] [stdout]   --> $DIR/multiple-rpc-attributes.rs:10:2
[INFO] [stdout]    |
[INFO] [stdout] 10 |       /// Returns a protocol version
[INFO] [stdout]    |  _____^
[INFO] [stdout] 11 | |     #[rpc(name = "protocolVersion")]
[INFO] [stdout] 12 | |     #[rpc(name = "protocolVersionAgain")]
[INFO] [stdout] 13 | |     fn protocol_version(&self) -> Result<String>;
[INFO] [stdout]    | |_________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] diff of stderr:
[INFO] [stdout] 
[INFO] [stdout] -error: Expected only a single rpc attribute per method
[INFO] [stdout] -  --> $DIR/multiple-rpc-attributes.rs:10:2
[INFO] [stdout] +error[E0464]: multiple candidates for `rlib` dependency `serde` found
[INFO] [stdout] + --> $DIR/multiple-rpc-attributes.rs:1:1
[INFO] [stdout] +  |
[INFO] [stdout] +1 | extern crate serde;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib
[INFO] [stderr] error: test failed, to rerun pass `--test compiletests`
[INFO] [stdout] +  = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib
[INFO] [stdout] +  = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib
[INFO] [stdout] +  = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib
[INFO] [stdout] +
[INFO] [stdout] +error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout] + --> $DIR/multiple-rpc-attributes.rs:4:1
[INFO] [stdout] +  |
[INFO] [stdout] +4 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] + --> $DIR/multiple-rpc-attributes.rs:8:3
[INFO] [stdout] +  |
[INFO] [stdout] +8 | #[rpc]
[INFO] [stdout] +  |   ^^^
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] +  --> $DIR/multiple-rpc-attributes.rs:11:4
[INFO] [stdout]     |
[INFO] [stdout] -10 |       /// Returns a protocol version
[INFO] [stdout] -   |  _____^
[INFO] [stdout] -11 | |     #[rpc(name = "protocolVersion")]
[INFO] [stdout] -12 | |     #[rpc(name = "protocolVersionAgain")]
[INFO] [stdout] -13 | |     fn protocol_version(&self) -> Result<String>;
[INFO] [stdout] -   | |_________________________________________________^
[INFO] [stdout] +11 |     #[rpc(name = "protocolVersion")]
[INFO] [stdout] +   |       ^^^
[INFO] [stdout]  
[INFO] [stdout] -error: aborting due to previous error
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] +  --> $DIR/multiple-rpc-attributes.rs:12:4
[INFO] [stdout] +   |
[INFO] [stdout] +12 |     #[rpc(name = "protocolVersionAgain")]
[INFO] [stdout] +   |       ^^^
[INFO] [stdout]  
[INFO] [stdout] +error: aborting due to 5 previous errors
[INFO] [stdout] +
[INFO] [stdout] +For more information about this error, try `rustc --explain E0464`.
[INFO] [stdout]  
[INFO] [stdout] 
[INFO] [stdout] The actual stderr differed from the expected stderr.
[INFO] [stdout] Actual stderr saved to /tmp/multiple-rpc-attributes.stderr
[INFO] [stdout] To update references, run this command from build directory:
[INFO] [stdout] tests/ui/update-references.sh '/tmp' 'multiple-rpc-attributes.rs'
[INFO] [stdout] 
[INFO] [stdout] error: 1 errors occurred comparing output.
[INFO] [stdout] status: exit status: 1
[INFO] [stdout] command: "rustc" "tests/ui/multiple-rpc-attributes.rs" "-L" "/tmp" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-C" "prefer-dynamic" "-o" "/tmp/multiple-rpc-attributes.stage-id" "-L" "../target/debug/" "-L" "../target/debug/deps/" "-L" "/tmp/multiple-rpc-attributes.stage-id.aux" "-A" "unused"
[INFO] [stdout] stdout:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] stderr:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `rlib` dependency `serde` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/multiple-rpc-attributes.rs","byte_start":0,"byte_end":19,"line_start":1,"line_end":1,"column_start":1,"column_end":20,"is_primary":true,"text":[{"text":"extern crate serde;","highlight_start":1,"highlight_end":20}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `rlib` dependency `serde` found\n --> tests/ui/multiple-rpc-attributes.rs:1:1\n  |\n1 | extern crate serde;\n  | ^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib\n  = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib\n  = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib\n  = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib\n  = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/multiple-rpc-attributes.rs","byte_start":68,"byte_end":104,"line_start":4,"line_end":4,"column_start":1,"column_end":37,"is_primary":true,"text":[{"text":"extern crate susydev_jsonrpc_derive;","highlight_start":1,"highlight_end":37}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found\n --> tests/ui/multiple-rpc-attributes.rs:4:1\n  |\n4 | extern crate susydev_jsonrpc_derive;\n  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so\n  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/multiple-rpc-attributes.rs","byte_start":143,"byte_end":146,"line_start":8,"line_end":8,"column_start":3,"column_end":6,"is_primary":true,"text":[{"text":"#[rpc]","highlight_start":3,"highlight_end":6}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n --> tests/ui/multiple-rpc-attributes.rs:8:3\n  |\n8 | #[rpc]\n  |   ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/multiple-rpc-attributes.rs","byte_start":199,"byte_end":202,"line_start":11,"line_end":11,"column_start":4,"column_end":7,"is_primary":true,"text":[{"text":"\t#[rpc(name = \"protocolVersion\")]","highlight_start":4,"highlight_end":7}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n  --> tests/ui/multiple-rpc-attributes.rs:11:4\n   |\n11 |     #[rpc(name = \"protocolVersion\")]\n   |       ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/multiple-rpc-attributes.rs","byte_start":233,"byte_end":236,"line_start":12,"line_end":12,"column_start":4,"column_end":7,"is_primary":true,"text":[{"text":"\t#[rpc(name = \"protocolVersionAgain\")]","highlight_start":4,"highlight_end":7}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n  --> tests/ui/multiple-rpc-attributes.rs:12:4\n   |\n12 |     #[rpc(name = \"protocolVersionAgain\")]\n   |       ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"aborting due to 5 previous errors","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to 5 previous errors\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"For more information about this error, try `rustc --explain E0464`.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"For more information about this error, try `rustc --explain E0464`.\n"}
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] normalized stderr:
[INFO] [stdout] error[E0464]: multiple candidates for `rlib` dependency `serde` found
[INFO] [stdout]  --> $DIR/attr-invalid-meta-list-names.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | extern crate serde;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib
[INFO] [stdout]   = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib
[INFO] [stdout]   = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib
[INFO] [stdout]   = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib
[INFO] [stdout] 
[INFO] [stdout] error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout]  --> $DIR/attr-invalid-meta-list-names.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]  --> $DIR/attr-invalid-meta-list-names.rs:8:3
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[rpc]
[INFO] [stdout]   |   ^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]   --> $DIR/attr-invalid-meta-list-names.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 |     #[rpc(name = "protocolVersion", Xalias("alias"))]
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0464`.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] expected stderr:
[INFO] [stdout] error: Invalid attribute parameter(s): 'Xalias'. Expected 'alias'
[INFO] [stdout]   --> $DIR/attr-invalid-meta-list-names.rs:10:2
[INFO] [stdout]    |
[INFO] [stdout] 10 |       /// Returns a protocol version
[INFO] [stdout]    |  _____^
[INFO] [stdout] 11 | |     #[rpc(name = "protocolVersion", Xalias("alias"))]
[INFO] [stdout] 12 | |     fn protocol_version(&self) -> Result<String>;
[INFO] [stdout]    | |_________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] diff of stderr:
[INFO] [stdout] 
[INFO] [stdout] -error: Invalid attribute parameter(s): 'Xalias'. Expected 'alias'
[INFO] [stdout] -  --> $DIR/attr-invalid-meta-list-names.rs:10:2
[INFO] [stdout] +error[E0464]: multiple candidates for `rlib` dependency `serde` found
[INFO] [stdout] + --> $DIR/attr-invalid-meta-list-names.rs:1:1
[INFO] [stdout] +  |
[INFO] [stdout] +1 | extern crate serde;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib
[INFO] [stdout] +  = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib
[INFO] [stdout] +  = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib
[INFO] [stdout] +  = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib
[INFO] [stdout] +
[INFO] [stdout] +error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout] + --> $DIR/attr-invalid-meta-list-names.rs:4:1
[INFO] [stdout] +  |
[INFO] [stdout] +4 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] + --> $DIR/attr-invalid-meta-list-names.rs:8:3
[INFO] [stdout] +  |
[INFO] [stdout] +8 | #[rpc]
[INFO] [stdout] +  |   ^^^
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] +  --> $DIR/attr-invalid-meta-list-names.rs:11:4
[INFO] [stdout]     |
[INFO] [stdout] -10 |       /// Returns a protocol version
[INFO] [stdout] -   |  _____^
[INFO] [stdout] -11 | |     #[rpc(name = "protocolVersion", Xalias("alias"))]
[INFO] [stdout] -12 | |     fn protocol_version(&self) -> Result<String>;
[INFO] [stdout] -   | |_________________________________________________^
[INFO] [stdout] +11 |     #[rpc(name = "protocolVersion", Xalias("alias"))]
[INFO] [stdout] +   |       ^^^
[INFO] [stdout]  
[INFO] [stdout] -error: aborting due to previous error
[INFO] [stdout] +error: aborting due to 4 previous errors
[INFO] [stdout]  
[INFO] [stdout] +For more information about this error, try `rustc --explain E0464`.
[INFO] [stdout]  
[INFO] [stdout] 
[INFO] [stdout] The actual stderr differed from the expected stderr.
[INFO] [stdout] Actual stderr saved to /tmp/attr-invalid-meta-list-names.stderr
[INFO] [stdout] To update references, run this command from build directory:
[INFO] [stdout] tests/ui/update-references.sh '/tmp' 'attr-invalid-meta-list-names.rs'
[INFO] [stdout] 
[INFO] [stdout] error: 1 errors occurred comparing output.
[INFO] [stdout] status: exit status: 1
[INFO] [stdout] command: "rustc" "tests/ui/attr-invalid-meta-list-names.rs" "-L" "/tmp" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-C" "prefer-dynamic" "-o" "/tmp/attr-invalid-meta-list-names.stage-id" "-L" "../target/debug/" "-L" "../target/debug/deps/" "-L" "/tmp/attr-invalid-meta-list-names.stage-id.aux" "-A" "unused"
[INFO] [stdout] stdout:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] stderr:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `rlib` dependency `serde` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/attr-invalid-meta-list-names.rs","byte_start":0,"byte_end":19,"line_start":1,"line_end":1,"column_start":1,"column_end":20,"is_primary":true,"text":[{"text":"extern crate serde;","highlight_start":1,"highlight_end":20}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `rlib` dependency `serde` found\n --> tests/ui/attr-invalid-meta-list-names.rs:1:1\n  |\n1 | extern crate serde;\n  | ^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib\n  = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib\n  = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib\n  = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib\n  = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/attr-invalid-meta-list-names.rs","byte_start":68,"byte_end":104,"line_start":4,"line_end":4,"column_start":1,"column_end":37,"is_primary":true,"text":[{"text":"extern crate susydev_jsonrpc_derive;","highlight_start":1,"highlight_end":37}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found\n --> tests/ui/attr-invalid-meta-list-names.rs:4:1\n  |\n4 | extern crate susydev_jsonrpc_derive;\n  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so\n  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/attr-invalid-meta-list-names.rs","byte_start":143,"byte_end":146,"line_start":8,"line_end":8,"column_start":3,"column_end":6,"is_primary":true,"text":[{"text":"#[rpc]","highlight_start":3,"highlight_end":6}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n --> tests/ui/attr-invalid-meta-list-names.rs:8:3\n  |\n8 | #[rpc]\n  |   ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/attr-invalid-meta-list-names.rs","byte_start":199,"byte_end":202,"line_start":11,"line_end":11,"column_start":4,"column_end":7,"is_primary":true,"text":[{"text":"\t#[rpc(name = \"protocolVersion\", Xalias(\"alias\"))]","highlight_start":4,"highlight_end":7}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n  --> tests/ui/attr-invalid-meta-list-names.rs:11:4\n   |\n11 |     #[rpc(name = \"protocolVersion\", Xalias(\"alias\"))]\n   |       ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"aborting due to 4 previous errors","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to 4 previous errors\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"For more information about this error, try `rustc --explain E0464`.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"For more information about this error, try `rustc --explain E0464`.\n"}
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] normalized stderr:
[INFO] [stdout] error[E0464]: multiple candidates for `rlib` dependency `serde` found
[INFO] [stdout]  --> $DIR/attr-invalid-name-values.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | extern crate serde;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib
[INFO] [stdout]   = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib
[INFO] [stdout]   = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib
[INFO] [stdout]   = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib
[INFO] [stdout] 
[INFO] [stdout] error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout]  --> $DIR/attr-invalid-name-values.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]  --> $DIR/attr-invalid-name-values.rs:8:3
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[rpc]
[INFO] [stdout]   |   ^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]   --> $DIR/attr-invalid-name-values.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 |     #[rpc(Xname = "protocolVersion")]
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0464`.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] expected stderr:
[INFO] [stdout] error: Invalid attribute parameter(s): 'Xname'. Expected 'name, returns'
[INFO] [stdout]   --> $DIR/attr-invalid-name-values.rs:10:2
[INFO] [stdout]    |
[INFO] [stdout] 10 |       /// Returns a protocol version
[INFO] [stdout]    |  _____^
[INFO] [stdout] 11 | |     #[rpc(Xname = "protocolVersion")]
[INFO] [stdout] 12 | |     fn protocol_version(&self) -> Result<String>;
[INFO] [stdout]    | |_________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] diff of stderr:
[INFO] [stdout] 
[INFO] [stdout] -error: Invalid attribute parameter(s): 'Xname'. Expected 'name, returns'
[INFO] [stdout] -  --> $DIR/attr-invalid-name-values.rs:10:2
[INFO] [stdout] +error[E0464]: multiple candidates for `rlib` dependency `serde` found
[INFO] [stdout] + --> $DIR/attr-invalid-name-values.rs:1:1
[INFO] [stdout] +  |
[INFO] [stdout] +1 | extern crate serde;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib
[INFO] [stdout] +  = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib
[INFO] [stdout] +  = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib
[INFO] [stdout] +  = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib
[INFO] [stdout] +
[INFO] [stdout] +error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout] + --> $DIR/attr-invalid-name-values.rs:4:1
[INFO] [stdout] +  |
[INFO] [stdout] +4 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] + --> $DIR/attr-invalid-name-values.rs:8:3
[INFO] [stdout] +  |
[INFO] [stdout] +8 | #[rpc]
[INFO] [stdout] +  |   ^^^
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] +  --> $DIR/attr-invalid-name-values.rs:11:4
[INFO] [stdout]     |
[INFO] [stdout] -10 |       /// Returns a protocol version
[INFO] [stdout] -   |  _____^
[INFO] [stdout] -11 | |     #[rpc(Xname = "protocolVersion")]
[INFO] [stdout] -12 | |     fn protocol_version(&self) -> Result<String>;
[INFO] [stdout] -   | |_________________________________________________^
[INFO] [stdout] +11 |     #[rpc(Xname = "protocolVersion")]
[INFO] [stdout] +   |       ^^^
[INFO] [stdout]  
[INFO] [stdout] -error: aborting due to previous error
[INFO] [stdout] +error: aborting due to 4 previous errors
[INFO] [stdout]  
[INFO] [stdout] +For more information about this error, try `rustc --explain E0464`.
[INFO] [stdout]  
[INFO] [stdout] 
[INFO] [stdout] The actual stderr differed from the expected stderr.
[INFO] [stdout] Actual stderr saved to /tmp/attr-invalid-name-values.stderr
[INFO] [stdout] To update references, run this command from build directory:
[INFO] [stdout] tests/ui/update-references.sh '/tmp' 'attr-invalid-name-values.rs'
[INFO] [stdout] 
[INFO] [stdout] error: 1 errors occurred comparing output.
[INFO] [stdout] status: exit status: 1
[INFO] [stdout] command: "rustc" "tests/ui/attr-invalid-name-values.rs" "-L" "/tmp" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-C" "prefer-dynamic" "-o" "/tmp/attr-invalid-name-values.stage-id" "-L" "../target/debug/" "-L" "../target/debug/deps/" "-L" "/tmp/attr-invalid-name-values.stage-id.aux" "-A" "unused"
[INFO] [stdout] stdout:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] stderr:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `rlib` dependency `serde` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/attr-invalid-name-values.rs","byte_start":0,"byte_end":19,"line_start":1,"line_end":1,"column_start":1,"column_end":20,"is_primary":true,"text":[{"text":"extern crate serde;","highlight_start":1,"highlight_end":20}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `rlib` dependency `serde` found\n --> tests/ui/attr-invalid-name-values.rs:1:1\n  |\n1 | extern crate serde;\n  | ^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib\n  = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib\n  = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib\n  = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib\n  = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/attr-invalid-name-values.rs","byte_start":68,"byte_end":104,"line_start":4,"line_end":4,"column_start":1,"column_end":37,"is_primary":true,"text":[{"text":"extern crate susydev_jsonrpc_derive;","highlight_start":1,"highlight_end":37}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found\n --> tests/ui/attr-invalid-name-values.rs:4:1\n  |\n4 | extern crate susydev_jsonrpc_derive;\n  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so\n  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/attr-invalid-name-values.rs","byte_start":143,"byte_end":146,"line_start":8,"line_end":8,"column_start":3,"column_end":6,"is_primary":true,"text":[{"text":"#[rpc]","highlight_start":3,"highlight_end":6}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n --> tests/ui/attr-invalid-name-values.rs:8:3\n  |\n8 | #[rpc]\n  |   ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/attr-invalid-name-values.rs","byte_start":199,"byte_end":202,"line_start":11,"line_end":11,"column_start":4,"column_end":7,"is_primary":true,"text":[{"text":"\t#[rpc(Xname = \"protocolVersion\")]","highlight_start":4,"highlight_end":7}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n  --> tests/ui/attr-invalid-name-values.rs:11:4\n   |\n11 |     #[rpc(Xname = \"protocolVersion\")]\n   |       ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"aborting due to 4 previous errors","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to 4 previous errors\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"For more information about this error, try `rustc --explain E0464`.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"For more information about this error, try `rustc --explain E0464`.\n"}
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] normalized stderr:
[INFO] [stdout] error[E0464]: multiple candidates for `rlib` dependency `serde` found
[INFO] [stdout]  --> $DIR/too-many-params.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | extern crate serde;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib
[INFO] [stdout]   = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib
[INFO] [stdout]   = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib
[INFO] [stdout]   = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib
[INFO] [stdout] 
[INFO] [stdout] error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout]  --> $DIR/too-many-params.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]  --> $DIR/too-many-params.rs:8:3
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[rpc]
[INFO] [stdout]   |   ^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]   --> $DIR/too-many-params.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 |     #[rpc(name = "tooManyParams")]
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0464`.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] expected stderr:
[INFO] [stdout] error: Maximum supported number of params is 16
[INFO] [stdout]   --> $DIR/too-many-params.rs:10:2
[INFO] [stdout]    |
[INFO] [stdout] 10 |       /// Has too many params
[INFO] [stdout]    |  _____^
[INFO] [stdout] 11 | |     #[rpc(name = "tooManyParams")]
[INFO] [stdout] 12 | |     fn to_many_params(
[INFO] [stdout] 13 | |         &self,
[INFO] [stdout] 14 | |         a: u64, b: u64, c: u64, d: u64, e: u64, f: u64, g: u64, h: u64, i: u64, j: u64,
[INFO] [stdout] 15 | |         k: u64, l: u64, m: u64, n: u64, o: u64, p: u64, q: u64,
[INFO] [stdout] 16 | |     ) -> Result<String>;
[INFO] [stdout]    | |________________________^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] diff of stderr:
[INFO] [stdout] 
[INFO] [stdout] -error: Maximum supported number of params is 16
[INFO] [stdout] -  --> $DIR/too-many-params.rs:10:2
[INFO] [stdout] +error[E0464]: multiple candidates for `rlib` dependency `serde` found
[INFO] [stdout] + --> $DIR/too-many-params.rs:1:1
[INFO] [stdout] +  |
[INFO] [stdout] +1 | extern crate serde;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib
[INFO] [stdout] +  = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib
[INFO] [stdout] +  = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib
[INFO] [stdout] +  = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib
[INFO] [stdout] +
[INFO] [stdout] +error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout] + --> $DIR/too-many-params.rs:4:1
[INFO] [stdout] +  |
[INFO] [stdout] +4 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] + --> $DIR/too-many-params.rs:8:3
[INFO] [stdout] +  |
[INFO] [stdout] +8 | #[rpc]
[INFO] [stdout] +  |   ^^^
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] +  --> $DIR/too-many-params.rs:11:4
[INFO] [stdout]     |
[INFO] [stdout] -10 |       /// Has too many params
[INFO] [stdout] -   |  _____^
[INFO] [stdout] -11 | |     #[rpc(name = "tooManyParams")]
[INFO] [stdout] -12 | |     fn to_many_params(
[INFO] [stdout] -13 | |         &self,
[INFO] [stdout] -14 | |         a: u64, b: u64, c: u64, d: u64, e: u64, f: u64, g: u64, h: u64, i: u64, j: u64,
[INFO] [stdout] -15 | |         k: u64, l: u64, m: u64, n: u64, o: u64, p: u64, q: u64,
[INFO] [stdout] -16 | |     ) -> Result<String>;
[INFO] [stdout] -   | |________________________^
[INFO] [stdout] +11 |     #[rpc(name = "tooManyParams")]
[INFO] [stdout] +   |       ^^^
[INFO] [stdout]  
[INFO] [stdout] -error: aborting due to previous error
[INFO] [stdout] +error: aborting due to 4 previous errors
[INFO] [stdout]  
[INFO] [stdout] +For more information about this error, try `rustc --explain E0464`.
[INFO] [stdout]  
[INFO] [stdout] 
[INFO] [stdout] The actual stderr differed from the expected stderr.
[INFO] [stdout] Actual stderr saved to /tmp/too-many-params.stderr
[INFO] [stdout] To update references, run this command from build directory:
[INFO] [stdout] tests/ui/update-references.sh '/tmp' 'too-many-params.rs'
[INFO] [stdout] 
[INFO] [stdout] error: 1 errors occurred comparing output.
[INFO] [stdout] status: exit status: 1
[INFO] [stdout] command: "rustc" "tests/ui/too-many-params.rs" "-L" "/tmp" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-C" "prefer-dynamic" "-o" "/tmp/too-many-params.stage-id" "-L" "../target/debug/" "-L" "../target/debug/deps/" "-L" "/tmp/too-many-params.stage-id.aux" "-A" "unused"
[INFO] [stdout] stdout:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] stderr:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `rlib` dependency `serde` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/too-many-params.rs","byte_start":0,"byte_end":19,"line_start":1,"line_end":1,"column_start":1,"column_end":20,"is_primary":true,"text":[{"text":"extern crate serde;","highlight_start":1,"highlight_end":20}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `rlib` dependency `serde` found\n --> tests/ui/too-many-params.rs:1:1\n  |\n1 | extern crate serde;\n  | ^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib\n  = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib\n  = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib\n  = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib\n  = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/too-many-params.rs","byte_start":68,"byte_end":104,"line_start":4,"line_end":4,"column_start":1,"column_end":37,"is_primary":true,"text":[{"text":"extern crate susydev_jsonrpc_derive;","highlight_start":1,"highlight_end":37}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found\n --> tests/ui/too-many-params.rs:4:1\n  |\n4 | extern crate susydev_jsonrpc_derive;\n  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so\n  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/too-many-params.rs","byte_start":143,"byte_end":146,"line_start":8,"line_end":8,"column_start":3,"column_end":6,"is_primary":true,"text":[{"text":"#[rpc]","highlight_start":3,"highlight_end":6}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n --> tests/ui/too-many-params.rs:8:3\n  |\n8 | #[rpc]\n  |   ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/too-many-params.rs","byte_start":192,"byte_end":195,"line_start":11,"line_end":11,"column_start":4,"column_end":7,"is_primary":true,"text":[{"text":"\t#[rpc(name = \"tooManyParams\")]","highlight_start":4,"highlight_end":7}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n  --> tests/ui/too-many-params.rs:11:4\n   |\n11 |     #[rpc(name = \"tooManyParams\")]\n   |       ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"aborting due to 4 previous errors","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to 4 previous errors\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"For more information about this error, try `rustc --explain E0464`.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"For more information about this error, try `rustc --explain E0464`.\n"}
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] normalized stderr:
[INFO] [stdout] error[E0464]: multiple candidates for `rlib` dependency `serde` found
[INFO] [stdout]  --> $DIR/attr-missing-rpc-name.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | extern crate serde;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib
[INFO] [stdout]   = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib
[INFO] [stdout]   = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib
[INFO] [stdout]   = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib
[INFO] [stdout] 
[INFO] [stdout] error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout]  --> $DIR/attr-missing-rpc-name.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]  --> $DIR/attr-missing-rpc-name.rs:8:3
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[rpc]
[INFO] [stdout]   |   ^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `rpc` in this scope
[INFO] [stdout]   --> $DIR/attr-missing-rpc-name.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 |     #[rpc]
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0464`.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] expected stderr:
[INFO] [stdout] error: rpc attribute should have a name e.g. `name = "method_name"`
[INFO] [stdout]   --> $DIR/attr-missing-rpc-name.rs:10:2
[INFO] [stdout]    |
[INFO] [stdout] 10 |       /// Returns a protocol version
[INFO] [stdout]    |  _____^
[INFO] [stdout] 11 | |     #[rpc]
[INFO] [stdout] 12 | |     fn protocol_version(&self) -> Result<String>;
[INFO] [stdout]    | |_________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] diff of stderr:
[INFO] [stdout] 
[INFO] [stdout] -error: rpc attribute should have a name e.g. `name = "method_name"`
[INFO] [stdout] -  --> $DIR/attr-missing-rpc-name.rs:10:2
[INFO] [stdout] +error[E0464]: multiple candidates for `rlib` dependency `serde` found
[INFO] [stdout] + --> $DIR/attr-missing-rpc-name.rs:1:1
[INFO] [stdout] +  |
[INFO] [stdout] +1 | extern crate serde;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib
[INFO] [stdout] +  = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib
[INFO] [stdout] +  = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib
[INFO] [stdout] +  = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib
[INFO] [stdout] +
[INFO] [stdout] +error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found
[INFO] [stdout] + --> $DIR/attr-missing-rpc-name.rs:4:1
[INFO] [stdout] +  |
[INFO] [stdout] +4 | extern crate susydev_jsonrpc_derive;
[INFO] [stdout] +  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] +  |
[INFO] [stdout] +  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so
[INFO] [stdout] +  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] + --> $DIR/attr-missing-rpc-name.rs:8:3
[INFO] [stdout] +  |
[INFO] [stdout] +8 | #[rpc]
[INFO] [stdout] +  |   ^^^
[INFO] [stdout] +
[INFO] [stdout] +error: cannot find attribute `rpc` in this scope
[INFO] [stdout] +  --> $DIR/attr-missing-rpc-name.rs:11:4
[INFO] [stdout]     |
[INFO] [stdout] -10 |       /// Returns a protocol version
[INFO] [stdout] -   |  _____^
[INFO] [stdout] -11 | |     #[rpc]
[INFO] [stdout] -12 | |     fn protocol_version(&self) -> Result<String>;
[INFO] [stdout] -   | |_________________________________________________^
[INFO] [stdout] +11 |     #[rpc]
[INFO] [stdout] +   |       ^^^
[INFO] [stdout]  
[INFO] [stdout] -error: aborting due to previous error
[INFO] [stdout] +error: aborting due to 4 previous errors
[INFO] [stdout]  
[INFO] [stdout] +For more information about this error, try `rustc --explain E0464`.
[INFO] [stdout]  
[INFO] [stdout] 
[INFO] [stdout] The actual stderr differed from the expected stderr.
[INFO] [stdout] Actual stderr saved to /tmp/attr-missing-rpc-name.stderr
[INFO] [stdout] To update references, run this command from build directory:
[INFO] [stdout] tests/ui/update-references.sh '/tmp' 'attr-missing-rpc-name.rs'
[INFO] [stdout] 
[INFO] [stdout] error: 1 errors occurred comparing output.
[INFO] [stdout] status: exit status: 1
[INFO] [stdout] command: "rustc" "tests/ui/attr-missing-rpc-name.rs" "-L" "/tmp" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-C" "prefer-dynamic" "-o" "/tmp/attr-missing-rpc-name.stage-id" "-L" "../target/debug/" "-L" "../target/debug/deps/" "-L" "/tmp/attr-missing-rpc-name.stage-id.aux" "-A" "unused"
[INFO] [stdout] stdout:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] stderr:
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `rlib` dependency `serde` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/attr-missing-rpc-name.rs","byte_start":0,"byte_end":19,"line_start":1,"line_end":1,"column_start":1,"column_end":20,"is_primary":true,"text":[{"text":"extern crate serde;","highlight_start":1,"highlight_end":20}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `rlib` dependency `serde` found\n --> tests/ui/attr-missing-rpc-name.rs:1:1\n  |\n1 | extern crate serde;\n  | ^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libserde-038d58eaae8c97c0.rlib\n  = note: candidate #2: /opt/rustwide/target/debug/deps/libserde-1666f5b895378e64.rlib\n  = note: candidate #3: /opt/rustwide/target/debug/deps/libserde-3a5fb95ced06198d.rlib\n  = note: candidate #4: /opt/rustwide/target/debug/deps/libserde-4bcb8503d1bb5b6f.rlib\n  = note: candidate #5: /opt/rustwide/target/debug/deps/libserde-5c9c5ab0b665bb2a.rlib\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found","code":{"code":"E0464","explanation":"The compiler found multiple library files with the requested crate name.\n\n```compile_fail\n// aux-build:crateresolve-1.rs\n// aux-build:crateresolve-2.rs\n// aux-build:crateresolve-3.rs\n\nextern crate crateresolve;\n//~^ ERROR multiple candidates for `rlib` dependency `crateresolve` found\n\nfn main() {}\n```\n\nThis error can occur in several different cases -- for example, when using\n`extern crate` or passing `--extern` options without crate paths. It can also be\ncaused by caching issues with the build directory, in which case `cargo clean`\nmay help.\n\nIn the above example, there are three different library files, all of which\ndefine the same crate name. Without providing a full path, there is no way for\nthe compiler to know which crate it should use.\n"},"level":"error","spans":[{"file_name":"tests/ui/attr-missing-rpc-name.rs","byte_start":68,"byte_end":104,"line_start":4,"line_end":4,"column_start":1,"column_end":37,"is_primary":true,"text":[{"text":"extern crate susydev_jsonrpc_derive;","highlight_start":1,"highlight_end":37}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"error[E0464]: multiple candidates for `dylib` dependency `susydev_jsonrpc_derive` found\n --> tests/ui/attr-missing-rpc-name.rs:4:1\n  |\n4 | extern crate susydev_jsonrpc_derive;\n  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  |\n  = note: candidate #1: /opt/rustwide/target/debug/deps/libsusydev_jsonrpc_derive-1a4490d422260de6.so\n  = note: candidate #2: /opt/rustwide/target/debug/libsusydev_jsonrpc_derive.so\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/attr-missing-rpc-name.rs","byte_start":143,"byte_end":146,"line_start":8,"line_end":8,"column_start":3,"column_end":6,"is_primary":true,"text":[{"text":"#[rpc]","highlight_start":3,"highlight_end":6}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n --> tests/ui/attr-missing-rpc-name.rs:8:3\n  |\n8 | #[rpc]\n  |   ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"cannot find attribute `rpc` in this scope","code":null,"level":"error","spans":[{"file_name":"tests/ui/attr-missing-rpc-name.rs","byte_start":199,"byte_end":202,"line_start":11,"line_end":11,"column_start":4,"column_end":7,"is_primary":true,"text":[{"text":"\t#[rpc]","highlight_start":4,"highlight_end":7}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: cannot find attribute `rpc` in this scope\n  --> tests/ui/attr-missing-rpc-name.rs:11:4\n   |\n11 |     #[rpc]\n   |       ^^^\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"aborting due to 4 previous errors","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to 4 previous errors\n\n"}
[INFO] [stdout] {"$message_type":"diagnostic","message":"For more information about this error, try `rustc --explain E0464`.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"For more information about this error, try `rustc --explain E0464`.\n"}
[INFO] [stdout] 
[INFO] [stdout] ------------------------------------------
[INFO] [stdout] 
[INFO] [stdout] thread 'compile_test' panicked at /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/compiletest_rs-0.3.26/src/lib.rs:101:22:
[INFO] [stdout] Some tests failed
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x55b8a1ed8785 - std::backtrace_rs::backtrace::libunwind::trace::he49dc9a9e3164223
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/../../backtrace/src/backtrace/libunwind.rs:105:5
[INFO] [stdout]    1:     0x55b8a1ed8785 - std::backtrace_rs::backtrace::trace_unsynchronized::h3a3e77c68030aa6b
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x55b8a1ed8785 - std::sys_common::backtrace::_print_fmt::h9479ad2f99afd5d4
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/sys_common/backtrace.rs:68:5
[INFO] [stdout]    3:     0x55b8a1ed8785 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hfb01aa1fa3fb1821
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/sys_common/backtrace.rs:44:22
[INFO] [stdout]    4:     0x55b8a1f0233b - core::fmt::rt::Argument::fmt::h125e56152abbc1c3
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/core/src/fmt/rt.rs:165:63
[INFO] [stdout]    5:     0x55b8a1f0233b - core::fmt::write::hb0ab4ff05ccfe741
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/core/src/fmt/mod.rs:1169:21
[INFO] [stdout]    6:     0x55b8a1ed537f - std::io::Write::write_fmt::hea6336dbf2fa00b8
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/io/mod.rs:1835:15
[INFO] [stdout]    7:     0x55b8a1ed855e - std::sys_common::backtrace::_print::h79ca548f3a2adf4b
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/sys_common/backtrace.rs:47:5
[INFO] [stdout]    8:     0x55b8a1ed855e - std::sys_common::backtrace::print::h9aebf997b2fea2d3
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/sys_common/backtrace.rs:34:9
[INFO] [stdout]    9:     0x55b8a1eda549 - std::panicking::default_hook::{{closure}}::h68a0954af2694526
[INFO] [stdout]   10:     0x55b8a1eda29c - std::panicking::default_hook::h5be50cc6849ffb00
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/panicking.rs:295:9
[INFO] [stdout]   11:     0x55b8a19b0c6f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hd874405dcbd1d3ed
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/alloc/src/boxed.rs:2036:9
[INFO] [stdout]   12:     0x55b8a19b0c6f - test::test_main::{{closure}}::h4f26a9df34a84b94
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/test/src/lib.rs:137:21
[INFO] [stdout]   13:     0x55b8a1edab4b - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h00e96d9c62aa9a12
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/alloc/src/boxed.rs:2036:9
[INFO] [stdout]   14:     0x55b8a1edab4b - std::panicking::rust_panic_with_hook::h3c0df6036729334c
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/panicking.rs:799:13
[INFO] [stdout]   15:     0x55b8a1eace68 - std::panicking::begin_panic::{{closure}}::hc3abd4cde528ac29
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/panicking.rs:694:9
[INFO] [stdout]   16:     0x55b8a1eae24a - std::sys_common::backtrace::__rust_end_short_backtrace::h8e86532f4086cb20
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/sys_common/backtrace.rs:171:18
[INFO] [stdout]   17:     0x55b8a1eace07 - std::panicking::begin_panic::h4892f80f1265a13c
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/panicking.rs:693:12
[INFO] [stdout]   18:     0x55b8a19db1a4 - compiletest_rs::run_tests::h86ac46f6fe25f3b0
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/compiletest_rs-0.3.26/src/lib.rs:101:22
[INFO] [stdout]   19:     0x55b8a197d2bf - compiletests::run_mode::hab91477f6e26a2e6
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/compiletests.rs:18:2
[INFO] [stdout]   20:     0x55b8a197d332 - compiletests::compile_test::h457df3cd1c1912c1
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/compiletests.rs:23:2
[INFO] [stdout]   21:     0x55b8a197d307 - compiletests::compile_test::{{closure}}::h8e0bfe7c2f3f6005
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/compiletests.rs:22:18
[INFO] [stdout]   22:     0x55b8a197cbf6 - core::ops::function::FnOnce::call_once::h763ccf8013cb6cca
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x55b8a19b558b - core::ops::function::FnOnce::call_once::h18c6bf92212b87a4
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x55b8a19b558b - test::__rust_begin_short_backtrace::hdcf0edcfa9080086
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/test/src/lib.rs:625:18
[INFO] [stdout]   25:     0x55b8a19b4c51 - test::run_test_in_process::{{closure}}::heac2c4eb375d2d10
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/test/src/lib.rs:648:60
[INFO] [stdout]   26:     0x55b8a19b4c51 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h0289bafc8a1cc004
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   27:     0x55b8a19b4c51 - std::panicking::try::do_call::h5e158f1ad8a5f983
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/panicking.rs:559:40
[INFO] [stdout]   28:     0x55b8a19b4c51 - std::panicking::try::hea3411d60321c4de
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/panicking.rs:523:19
[INFO] [stdout]   29:     0x55b8a19b4c51 - std::panic::catch_unwind::hafb7bb18bc47bbc7
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/panic.rs:149:14
[INFO] [stdout]   30:     0x55b8a19b4c51 - test::run_test_in_process::h74dd138dc7762d99
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/test/src/lib.rs:648:27
[INFO] [stdout]   31:     0x55b8a19b4c51 - test::run_test::{{closure}}::h6b390822e63606cf
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/test/src/lib.rs:569:43
[INFO] [stdout]   32:     0x55b8a197d624 - test::run_test::{{closure}}::h6e11dba8131d354b
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/test/src/lib.rs:599:41
[INFO] [stdout]   33:     0x55b8a197d624 - std::sys_common::backtrace::__rust_begin_short_backtrace::ha71b3541b59bdbbb
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/sys_common/backtrace.rs:155:18
[INFO] [stdout]   34:     0x55b8a19820f2 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hef92127c5ef9e53c
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/thread/mod.rs:542:17
[INFO] [stdout]   35:     0x55b8a19820f2 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h859c109f9d11c92b
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   36:     0x55b8a19820f2 - std::panicking::try::do_call::hbf534c458cd858f0
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/panicking.rs:559:40
[INFO] [stdout]   37:     0x55b8a19820f2 - std::panicking::try::h65c18365a7b9ad90
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/panicking.rs:523:19
[INFO] [stdout]   38:     0x55b8a19820f2 - std::panic::catch_unwind::h21b25d4c69478c39
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/panic.rs:149:14
[INFO] [stdout]   39:     0x55b8a19820f2 - std::thread::Builder::spawn_unchecked_::{{closure}}::h23335f620275a9bf
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/thread/mod.rs:541:30
[INFO] [stdout]   40:     0x55b8a19820f2 - core::ops::function::FnOnce::call_once{{vtable.shim}}::hb491dc55513e9b7c
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   41:     0x55b8a1ee0a9b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h41b39260afcffdc9
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/alloc/src/boxed.rs:2022:9
[INFO] [stdout]   42:     0x55b8a1ee0a9b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h6694c8dc6dd010c4
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/alloc/src/boxed.rs:2022:9
[INFO] [stdout]   43:     0x55b8a1ee0a9b - std::sys::pal::unix::thread::Thread::new::thread_start::hf16038e1c8e19c99
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/sys/pal/unix/thread.rs:108:17
[INFO] [stdout]   44:     0x7f2681dedac3 - <unknown>
[INFO] [stdout]   45:     0x7f2681e7ea04 - __clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     compile_test
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.23s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "447b2870173abd8bf7a62e3adf4f0d2a82dc09b74f2450ba7347d68bc52dfbfc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "447b2870173abd8bf7a62e3adf4f0d2a82dc09b74f2450ba7347d68bc52dfbfc", kill_on_drop: false }`
[INFO] [stdout] 447b2870173abd8bf7a62e3adf4f0d2a82dc09b74f2450ba7347d68bc52dfbfc
