[INFO] fetching crate semigroup 0.5.1...
[INFO] testing semigroup-0.5.1 against 1.95.0 for beta-1.96-2
[INFO] extracting crate semigroup 0.5.1 into /workspace/builds/worker-7-tc1/source
[INFO] started tweaking crates.io crate semigroup 0.5.1
[INFO] removed 0 missing examples
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate semigroup 0.5.1
[INFO] tweaked toml for crates.io crate semigroup 0.5.1 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate semigroup 0.5.1 on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate semigroup 0.5.1 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded trybuild v1.0.116
[INFO] [stderr]   Downloaded semigroup_derive v0.5.1
[INFO] [stderr]   Downloaded dissimilar v1.0.11
[INFO] [stderr]   Downloaded hdrhistogram v7.5.4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 60e49631248f9d1899adb4b89687c3868b240a5629a27812458bd0bafe47bb58
[INFO] running `Command { std: "docker" "start" "-a" "60e49631248f9d1899adb4b89687c3868b240a5629a27812458bd0bafe47bb58", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "60e49631248f9d1899adb4b89687c3868b240a5629a27812458bd0bafe47bb58", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "60e49631248f9d1899adb4b89687c3868b240a5629a27812458bd0bafe47bb58", kill_on_drop: false }`
[INFO] [stdout] 60e49631248f9d1899adb4b89687c3868b240a5629a27812458bd0bafe47bb58
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9d4f893ae1f64aba86ec16c8a9c731707257490dab15de3337988d8ea43470e1
[INFO] running `Command { std: "docker" "start" "-a" "9d4f893ae1f64aba86ec16c8a9c731707257490dab15de3337988d8ea43470e1", kill_on_drop: false }`
[INFO] [stderr]    Compiling unicode-width v0.2.2
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]    Compiling comfy-table v7.2.2
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]    Compiling semigroup_derive v0.5.1
[INFO] [stderr]    Compiling semigroup v0.5.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.03s
[INFO] running `Command { std: "docker" "inspect" "9d4f893ae1f64aba86ec16c8a9c731707257490dab15de3337988d8ea43470e1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9d4f893ae1f64aba86ec16c8a9c731707257490dab15de3337988d8ea43470e1", kill_on_drop: false }`
[INFO] [stdout] 9d4f893ae1f64aba86ec16c8a9c731707257490dab15de3337988d8ea43470e1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8180dd39e230c16ca05ee77aee07c04c9f7b4bc8165e09140e6ed061b5684c83
[INFO] running `Command { std: "docker" "start" "-a" "8180dd39e230c16ca05ee77aee07c04c9f7b4bc8165e09140e6ed061b5684c83", kill_on_drop: false }`
[INFO] [stderr]    Compiling winnow v1.0.1
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling anstyle-parse v1.0.0
[INFO] [stderr]    Compiling target-triple v1.0.0
[INFO] [stderr]    Compiling colorchoice v1.0.5
[INFO] [stderr]    Compiling rstest_macros v0.26.1
[INFO] [stderr]    Compiling toml_datetime v1.1.1+spec-1.1.0
[INFO] [stderr]    Compiling serde_spanned v1.1.1
[INFO] [stderr]    Compiling futures-core v0.3.32
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]    Compiling toml_writer v1.1.1+spec-1.1.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling clap_derive v4.6.1
[INFO] [stderr]    Compiling termcolor v1.4.1
[INFO] [stderr]    Compiling dissimilar v1.0.11
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling anstream v1.0.0
[INFO] [stderr]    Compiling clap_builder v4.6.0
[INFO] [stderr]    Compiling toml_parser v1.1.2+spec-1.1.0
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling toml_edit v0.25.11+spec-1.1.0
[INFO] [stderr]    Compiling toml v1.1.2+spec-1.1.0
[INFO] [stderr]    Compiling clap v4.6.1
[INFO] [stderr]    Compiling proc-macro-crate v3.5.0
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]    Compiling semigroup_derive v0.5.1
[INFO] [stderr]    Compiling trybuild v1.0.116
[INFO] [stderr]    Compiling semigroup v0.5.1 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling rstest v0.26.1
[INFO] [stdout] error: cannot find derive macro `Semigroup` in this scope
[INFO] [stdout]  --> tests/derive_semigroup.rs:3:35
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Debug, Clone, PartialEq, Semigroup)]
[INFO] [stdout]   |                                   ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: `Semigroup` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]  --> tests/derive_semigroup.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use semigroup::Semigroup;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: the derive macros `Semigroup` and `SemigroupPriv` accept the similarly named `semigroup` attribute (notice the capitalization)
[INFO] [stdout]   |
[INFO] [stdout] 3 - #[derive(Debug, Clone, PartialEq, Semigroup)]
[INFO] [stdout] 3 + #[derive(Debug, Clone, PartialEq, semigroup)]
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `semigroup` in this scope
[INFO] [stdout]  --> tests/derive_semigroup.rs:4:3
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[semigroup(with = "semigroup::op::Coalesce")]
[INFO] [stdout]   |   ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `semigroup` is in scope, but it is a crate, not an attribute
[INFO] [stdout] help: `semigroup` is an attribute that can be used by the derive macros `Semigroup` and `SemigroupPriv`, you might be missing a `derive` attribute
[INFO] [stdout]   |
[INFO] [stdout] 5 + #[derive(Semigroup, SemigroupPriv)]
[INFO] [stdout] 6 | pub struct NamedStruct {
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `semigroup` in this scope
[INFO] [stdout]  --> tests/derive_semigroup.rs:6:7
[INFO] [stdout]   |
[INFO] [stdout] 6 |     #[semigroup(with = "semigroup::op::Overwrite")]
[INFO] [stdout]   |       ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `semigroup` is an attribute that can be used by the derive macros `Semigroup` and `SemigroupPriv`, you might be missing a `derive` attribute
[INFO] [stdout]   = note: `semigroup` is in scope, but it is a crate, not an attribute
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Semigroup` in this scope
[INFO] [stdout]   --> tests/derive_semigroup.rs:38:35
[INFO] [stdout]    |
[INFO] [stdout] 38 | #[derive(Debug, Clone, PartialEq, Semigroup)]
[INFO] [stdout]    |                                   ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Semigroup` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> tests/derive_semigroup.rs:1:5
[INFO] [stdout]    |
[INFO] [stdout]  1 | use semigroup::Semigroup;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: the derive macros `Semigroup` and `SemigroupPriv` accept the similarly named `semigroup` attribute (notice the capitalization)
[INFO] [stdout]    |
[INFO] [stdout] 38 - #[derive(Debug, Clone, PartialEq, Semigroup)]
[INFO] [stdout] 38 + #[derive(Debug, Clone, PartialEq, semigroup)]
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `semigroup` in this scope
[INFO] [stdout]   --> tests/derive_semigroup.rs:39:3
[INFO] [stdout]    |
[INFO] [stdout] 39 | #[semigroup(with = "semigroup::op::Coalesce")]
[INFO] [stdout]    |   ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `semigroup` is in scope, but it is a crate, not an attribute
[INFO] [stdout] help: `semigroup` is an attribute that can be used by the derive macros `Semigroup` and `SemigroupPriv`, you might be missing a `derive` attribute
[INFO] [stdout]    |
[INFO] [stdout] 40 + #[derive(Semigroup, SemigroupPriv)]
[INFO] [stdout] 41 | pub struct UnnamedStruct(
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `semigroup` in this scope
[INFO] [stdout]   --> tests/derive_semigroup.rs:41:7
[INFO] [stdout]    |
[INFO] [stdout] 41 |     #[semigroup(with = "semigroup::op::Overwrite")] String,
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `semigroup` is an attribute that can be used by the derive macros `Semigroup` and `SemigroupPriv`, you might be missing a `derive` attribute
[INFO] [stdout]    = note: `semigroup` is in scope, but it is a crate, not an attribute
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Semigroup` in this scope
[INFO] [stdout]   --> tests/derive_semigroup.rs:60:35
[INFO] [stdout]    |
[INFO] [stdout] 60 | #[derive(Debug, Clone, PartialEq, Semigroup)]
[INFO] [stdout]    |                                   ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Semigroup` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> tests/derive_semigroup.rs:1:5
[INFO] [stdout]    |
[INFO] [stdout]  1 | use semigroup::Semigroup;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: the derive macros `Semigroup` and `SemigroupPriv` accept the similarly named `semigroup` attribute (notice the capitalization)
[INFO] [stdout]    |
[INFO] [stdout] 60 - #[derive(Debug, Clone, PartialEq, Semigroup)]
[INFO] [stdout] 60 + #[derive(Debug, Clone, PartialEq, semigroup)]
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Semigroup` in this scope
[INFO] [stdout]   --> examples/clap_serde.rs:16:63
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[derive(Debug, Clone, Default, Serialize, Deserialize, Args, Semigroup)]
[INFO] [stdout]    |                                                               ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Semigroup` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> examples/clap_serde.rs:4:5
[INFO] [stdout]    |
[INFO] [stdout]  4 | use semigroup::Semigroup;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: the derive macros `Semigroup` and `SemigroupPriv` accept the similarly named `semigroup` attribute (notice the capitalization)
[INFO] [stdout]    |
[INFO] [stdout] 16 - #[derive(Debug, Clone, Default, Serialize, Deserialize, Args, Semigroup)]
[INFO] [stdout] 16 + #[derive(Debug, Clone, Default, Serialize, Deserialize, Args, semigroup)]
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `op` found for struct `NamedStruct` in the current scope
[INFO] [stdout]   --> tests/derive_semigroup.rs:23:22
[INFO] [stdout]    |
[INFO] [stdout]  5 | pub struct NamedStruct {
[INFO] [stdout]    | ---------------------- function or associated item `op` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 23 |         NamedStruct::op(a.clone(), b.clone()),
[INFO] [stdout]    |                      ^^ function or associated item not found in `NamedStruct`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following trait defines an item `op`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `Semigroup`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `semigroup` in this scope
[INFO] [stdout]   --> examples/clap_serde.rs:17:3
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[semigroup(with = "semigroup::op::Coalesce")]
[INFO] [stdout]    |   ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `semigroup` is in scope, but it is a crate, not an attribute
[INFO] [stdout] help: `semigroup` is an attribute that can be used by the derive macros `Semigroup` and `SemigroupPriv`, you might be missing a `derive` attribute
[INFO] [stdout]    |
[INFO] [stdout] 18 + #[derive(Semigroup, SemigroupPriv)]
[INFO] [stdout] 19 | struct Person {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `op` found for struct `NamedStruct` in the current scope
[INFO] [stdout]   --> tests/derive_semigroup.rs:30:22
[INFO] [stdout]    |
[INFO] [stdout]  5 | pub struct NamedStruct {
[INFO] [stdout]    | ---------------------- function or associated item `op` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 30 |         NamedStruct::op(b.clone(), a.clone()),
[INFO] [stdout]    |                      ^^ function or associated item not found in `NamedStruct`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following trait defines an item `op`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `Semigroup`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `op` found for struct `UnnamedStruct` in the current scope
[INFO] [stdout]   --> tests/derive_semigroup.rs:51:24
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct UnnamedStruct(
[INFO] [stdout]    | ------------------------ function or associated item `op` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 51 |         UnnamedStruct::op(a.clone(), b.clone()),
[INFO] [stdout]    |                        ^^ function or associated item not found in `UnnamedStruct`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following trait defines an item `op`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `Semigroup`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `op` found for struct `UnnamedStruct` in the current scope
[INFO] [stdout]   --> tests/derive_semigroup.rs:55:24
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct UnnamedStruct(
[INFO] [stdout]    | ------------------------ function or associated item `op` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 55 |         UnnamedStruct::op(b.clone(), a.clone()),
[INFO] [stdout]    |                        ^^ function or associated item not found in `UnnamedStruct`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following trait defines an item `op`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `Semigroup`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Semigroup` in this scope
[INFO] [stdout]  --> tests/derive_semigroup_generics.rs:3:35
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Debug, Clone, PartialEq, Semigroup)]
[INFO] [stdout]   |                                   ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: `Semigroup` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]  --> tests/derive_semigroup_generics.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use semigroup::Semigroup;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: the derive macros `Semigroup` and `SemigroupPriv` accept the similarly named `semigroup` attribute (notice the capitalization)
[INFO] [stdout]   |
[INFO] [stdout] 3 - #[derive(Debug, Clone, PartialEq, Semigroup)]
[INFO] [stdout] 3 + #[derive(Debug, Clone, PartialEq, semigroup)]
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `op` found for struct `UnitStruct` in the current scope
[INFO] [stdout]   --> tests/derive_semigroup.rs:66:28
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub struct UnitStruct;
[INFO] [stdout]    | --------------------- function or associated item `op` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 66 |     assert_eq!(UnitStruct::op(a.clone(), b.clone()), UnitStruct);
[INFO] [stdout]    |                            ^^ function or associated item not found in `UnitStruct`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following trait defines an item `op`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `Semigroup`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `op` found for struct `UnitStruct` in the current scope
[INFO] [stdout]   --> tests/derive_semigroup.rs:67:28
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub struct UnitStruct;
[INFO] [stdout]    | --------------------- function or associated item `op` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 67 |     assert_eq!(UnitStruct::op(b.clone(), a.clone()), UnitStruct);
[INFO] [stdout]    |                            ^^ function or associated item not found in `UnitStruct`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following trait defines an item `op`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `Semigroup`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find `assert_commutative` in `crate`
[INFO] [stdout]   --> src/op/xor.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 52 |         crate::assert_commutative!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^ could not find `assert_commutative` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find `assert_semigroup` in `crate`
[INFO] [stdout]   --> src/op/xor.rs:39:16
[INFO] [stdout]    |
[INFO] [stdout] 39 |         crate::assert_semigroup!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^ could not find `assert_semigroup` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `semigroup` (test "derive_semigroup") due to 13 previous errors
[INFO] [stdout] error[E0433]: cannot find `assert_semigroup` in `crate`
[INFO] [stdout]   --> src/op/union.rs:84:16
[INFO] [stdout]    |
[INFO] [stdout] 84 |         crate::assert_semigroup!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^ could not find `assert_semigroup` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0433]: cannot find `assert_semigroup` in `crate`
[INFO] [stdout]   --> src/op/union.rs:75:16
[INFO] [stdout]    |
[INFO] [stdout] 75 |         crate::assert_semigroup!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^ could not find `assert_semigroup` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find `assert_commutative` in `crate`
[INFO] [stdout]   --> src/op/sum.rs:53:16
[INFO] [stdout]    |
[INFO] [stdout] 53 |         crate::assert_commutative!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^ could not find `assert_commutative` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find `assert_semigroup` in `crate`
[INFO] [stdout]   --> src/op/sum.rs:40:16
[INFO] [stdout]    |
[INFO] [stdout] 40 |         crate::assert_semigroup!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^ could not find `assert_semigroup` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find `assert_commutative` in `crate`
[INFO] [stdout]   --> src/op/prod.rs:53:16
[INFO] [stdout]    |
[INFO] [stdout] 53 |         crate::assert_commutative!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^ could not find `assert_commutative` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find `assert_semigroup` in `crate`
[INFO] [stdout]   --> src/op/prod.rs:40:16
[INFO] [stdout]    |
[INFO] [stdout] 40 |         crate::assert_semigroup!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^ could not find `assert_semigroup` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find `assert_commutative` in `crate`
[INFO] [stdout]   --> src/op/min.rs:53:16
[INFO] [stdout]    |
[INFO] [stdout] 53 |         crate::assert_commutative!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^ could not find `assert_commutative` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find `assert_semigroup` in `crate`
[INFO] [stdout]   --> src/op/min.rs:40:16
[INFO] [stdout]    |
[INFO] [stdout] 40 |         crate::assert_semigroup!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^ could not find `assert_semigroup` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Semigroup` in this scope
[INFO] [stdout]  --> tests/derive_annotated.rs:3:35
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Debug, Clone, PartialEq, Semigroup)]
[INFO] [stdout]   |                                   ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: `Semigroup` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]  --> tests/derive_annotated.rs:1:38
[INFO] [stdout]   |
[INFO] [stdout] 1 | use semigroup::{Annotate, Annotated, Semigroup};
[INFO] [stdout]   |                                      ^^^^^^^^^
[INFO] [stdout] help: the derive macros `Semigroup` and `SemigroupPriv` accept the similarly named `semigroup` attribute (notice the capitalization)
[INFO] [stdout]   |
[INFO] [stdout] 3 - #[derive(Debug, Clone, PartialEq, Semigroup)]
[INFO] [stdout] 3 + #[derive(Debug, Clone, PartialEq, semigroup)]
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0599`.
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find `assert_commutative` in `crate`
[INFO] [stdout]   --> src/op/max.rs:53:16
[INFO] [stdout]    |
[INFO] [stdout] 53 |         crate::assert_commutative!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^ could not find `assert_commutative` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find `assert_semigroup` in `crate`
[INFO] [stdout]   --> src/op/max.rs:40:16
[INFO] [stdout]    |
[INFO] [stdout] 40 |         crate::assert_semigroup!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^ could not find `assert_semigroup` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find `assert_semigroup` in `crate`
[INFO] [stdout]   --> src/op/intersection.rs:90:16
[INFO] [stdout]    |
[INFO] [stdout] 90 |         crate::assert_semigroup!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^ could not find `assert_semigroup` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find `assert_semigroup` in `crate`
[INFO] [stdout]   --> src/op/intersection.rs:69:16
[INFO] [stdout]    |
[INFO] [stdout] 69 |         crate::assert_semigroup!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^ could not find `assert_semigroup` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find `assert_commutative` in `crate`
[INFO] [stdout]   --> src/op/any.rs:74:16
[INFO] [stdout]    |
[INFO] [stdout] 74 |         crate::assert_commutative!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^ could not find `assert_commutative` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find `assert_commutative` in `crate`
[INFO] [stdout]   --> src/op/any.rs:71:16
[INFO] [stdout]    |
[INFO] [stdout] 71 |         crate::assert_commutative!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^ could not find `assert_commutative` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find `assert_commutative` in `crate`
[INFO] [stdout]   --> src/op/any.rs:68:16
[INFO] [stdout]    |
[INFO] [stdout] 68 |         crate::assert_commutative!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^ could not find `assert_commutative` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find `assert_semigroup` in `crate`
[INFO] [stdout]   --> src/op/any.rs:49:16
[INFO] [stdout]    |
[INFO] [stdout] 49 |         crate::assert_semigroup!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^ could not find `assert_semigroup` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find `assert_semigroup` in `crate`
[INFO] [stdout]   --> src/op/any.rs:46:16
[INFO] [stdout]    |
[INFO] [stdout] 46 |         crate::assert_semigroup!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^ could not find `assert_semigroup` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `semigroup` in this scope
[INFO] [stdout]  --> tests/derive_semigroup_generics.rs:6:7
[INFO] [stdout]   |
[INFO] [stdout] 6 |     #[semigroup(with = "semigroup::op::Coalesce")]
[INFO] [stdout]   |       ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `semigroup` is an attribute that can be used by the derive macros `Semigroup` and `SemigroupPriv`, you might be missing a `derive` attribute
[INFO] [stdout]   = note: `semigroup` is in scope, but it is a crate, not an attribute
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find `assert_semigroup` in `crate`
[INFO] [stdout]   --> src/op/any.rs:43:16
[INFO] [stdout]    |
[INFO] [stdout] 43 |         crate::assert_semigroup!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^ could not find `assert_semigroup` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find `assert_commutative` in `crate`
[INFO] [stdout]   --> src/op/all.rs:74:16
[INFO] [stdout]    |
[INFO] [stdout] 74 |         crate::assert_commutative!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^ could not find `assert_commutative` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find `assert_commutative` in `crate`
[INFO] [stdout]   --> src/op/all.rs:71:16
[INFO] [stdout]    |
[INFO] [stdout] 71 |         crate::assert_commutative!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^ could not find `assert_commutative` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find `assert_commutative` in `crate`
[INFO] [stdout]   --> src/op/all.rs:68:16
[INFO] [stdout]    |
[INFO] [stdout] 68 |         crate::assert_commutative!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^ could not find `assert_commutative` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find `assert_semigroup` in `crate`
[INFO] [stdout]   --> src/op/all.rs:49:16
[INFO] [stdout]    |
[INFO] [stdout] 49 |         crate::assert_semigroup!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^ could not find `assert_semigroup` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find `assert_semigroup` in `crate`
[INFO] [stdout]   --> src/op/all.rs:46:16
[INFO] [stdout]    |
[INFO] [stdout] 46 |         crate::assert_semigroup!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^ could not find `assert_semigroup` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find `assert_semigroup` in `crate`
[INFO] [stdout]   --> src/op/all.rs:43:16
[INFO] [stdout]    |
[INFO] [stdout] 43 |         crate::assert_semigroup!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^ could not find `assert_semigroup` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `semigroup` in this scope
[INFO] [stdout]  --> tests/derive_annotated.rs:4:3
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[semigroup(annotated, with = "semigroup::op::Coalesce")]
[INFO] [stdout]   |   ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `semigroup` is in scope, but it is a crate, not an attribute
[INFO] [stdout] help: `semigroup` is an attribute that can be used by the derive macros `Semigroup` and `SemigroupPriv`, you might be missing a `derive` attribute
[INFO] [stdout]   |
[INFO] [stdout] 5 + #[derive(Semigroup, SemigroupPriv)]
[INFO] [stdout] 6 | pub struct NamedStruct {
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find `assert_semigroup` in `crate`
[INFO] [stdout]   --> src/op/overwrite.rs:38:16
[INFO] [stdout]    |
[INFO] [stdout] 38 |         crate::assert_semigroup!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^ could not find `assert_semigroup` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find `assert_semigroup` in `crate`
[INFO] [stdout]   --> src/op/concat.rs:80:16
[INFO] [stdout]    |
[INFO] [stdout] 80 |         crate::assert_semigroup!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^ could not find `assert_semigroup` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find `assert_semigroup` in `crate`
[INFO] [stdout]   --> src/op/coalesce.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 52 |         crate::assert_semigroup!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^ could not find `assert_semigroup` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find `assert_semigroup` in `crate`
[INFO] [stdout]   --> src/op/coalesce.rs:50:16
[INFO] [stdout]    |
[INFO] [stdout] 50 |         crate::assert_semigroup!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^ could not find `assert_semigroup` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find `assert_semigroup` in `crate`
[INFO] [stdout]   --> src/op/coalesce.rs:48:16
[INFO] [stdout]    |
[INFO] [stdout] 48 |         crate::assert_semigroup!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^ could not find `assert_semigroup` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find `assert_semigroup` in `crate`
[INFO] [stdout]   --> src/op/coalesce.rs:46:16
[INFO] [stdout]    |
[INFO] [stdout] 46 |         crate::assert_semigroup!(a, b, c);
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^ could not find `assert_semigroup` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `semigroup` in this scope
[INFO] [stdout]  --> tests/derive_annotated.rs:6:7
[INFO] [stdout]   |
[INFO] [stdout] 6 |     #[semigroup(with = "semigroup::op::Overwrite")]
[INFO] [stdout]   |       ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `semigroup` is an attribute that can be used by the derive macros `Semigroup` and `SemigroupPriv`, you might be missing a `derive` attribute
[INFO] [stdout]   = note: `semigroup` is in scope, but it is a crate, not an attribute
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Semigroup` in this scope
[INFO] [stdout]   --> tests/derive_annotated.rs:63:35
[INFO] [stdout]    |
[INFO] [stdout] 63 | #[derive(Debug, Clone, PartialEq, Semigroup)]
[INFO] [stdout]    |                                   ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Semigroup` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> tests/derive_annotated.rs:1:38
[INFO] [stdout]    |
[INFO] [stdout]  1 | use semigroup::{Annotate, Annotated, Semigroup};
[INFO] [stdout]    |                                      ^^^^^^^^^
[INFO] [stdout] help: the derive macros `Semigroup` and `SemigroupPriv` accept the similarly named `semigroup` attribute (notice the capitalization)
[INFO] [stdout]    |
[INFO] [stdout] 63 - #[derive(Debug, Clone, PartialEq, Semigroup)]
[INFO] [stdout] 63 + #[derive(Debug, Clone, PartialEq, semigroup)]
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `semigroup` in this scope
[INFO] [stdout]   --> tests/derive_annotated.rs:64:3
[INFO] [stdout]    |
[INFO] [stdout] 64 | #[semigroup(annotated, with = "semigroup::op::Coalesce")]
[INFO] [stdout]    |   ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `semigroup` is in scope, but it is a crate, not an attribute
[INFO] [stdout] help: `semigroup` is an attribute that can be used by the derive macros `Semigroup` and `SemigroupPriv`, you might be missing a `derive` attribute
[INFO] [stdout]    |
[INFO] [stdout] 65 + #[derive(Semigroup, SemigroupPriv)]
[INFO] [stdout] 66 | pub struct UnnamedStruct(
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `semigroup` in this scope
[INFO] [stdout]   --> tests/derive_annotated.rs:66:7
[INFO] [stdout]    |
[INFO] [stdout] 66 |     #[semigroup(with = "semigroup::op::Overwrite")] String,
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `semigroup` is an attribute that can be used by the derive macros `Semigroup` and `SemigroupPriv`, you might be missing a `derive` attribute
[INFO] [stdout]    = note: `semigroup` is in scope, but it is a crate, not an attribute
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Semigroup` in this scope
[INFO] [stdout]   --> tests/derive_semigroup_generics.rs:37:35
[INFO] [stdout]    |
[INFO] [stdout] 37 | #[derive(Debug, Clone, PartialEq, Semigroup)]
[INFO] [stdout]    |                                   ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Semigroup` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> tests/derive_semigroup_generics.rs:1:5
[INFO] [stdout]    |
[INFO] [stdout]  1 | use semigroup::Semigroup;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: the derive macros `Semigroup` and `SemigroupPriv` accept the similarly named `semigroup` attribute (notice the capitalization)
[INFO] [stdout]    |
[INFO] [stdout] 37 - #[derive(Debug, Clone, PartialEq, Semigroup)]
[INFO] [stdout] 37 + #[derive(Debug, Clone, PartialEq, semigroup)]
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `NamedStructAnnotation` in this scope
[INFO] [stdout]   --> tests/derive_annotated.rs:37:13
[INFO] [stdout]    |
[INFO] [stdout] 37 |             NamedStructAnnotation {
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `NamedStructAnnotation` in this scope
[INFO] [stdout]   --> tests/derive_annotated.rs:55:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             NamedStructAnnotation {
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `semigroup` in this scope
[INFO] [stdout]   --> tests/derive_semigroup_generics.rs:40:7
[INFO] [stdout]    |
[INFO] [stdout] 40 |     #[semigroup(with = "semigroup::op::Coalesce")] Option<u32>,
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `semigroup` is an attribute that can be used by the derive macros `Semigroup` and `SemigroupPriv`, you might be missing a `derive` attribute
[INFO] [stdout]    = note: `semigroup` is in scope, but it is a crate, not an attribute
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `semigroup` found for struct `Person` in the current scope
[INFO] [stdout]   --> examples/clap_serde.rs:52:29
[INFO] [stdout]    |
[INFO] [stdout] 18 | struct Person {
[INFO] [stdout]    | ------------- method `semigroup` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 52 |     let person = app.person.semigroup(file_person);
[INFO] [stdout]    |                             ^^^^^^^^^ method not found in `Person`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following trait defines an item `semigroup`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `Semigroup`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0599`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `semigroup` (example "clap_serde") due to 3 previous errors
[INFO] [stdout] error[E0599]: no function or associated item named `op` found for struct `NamedStruct<T>` in the current scope
[INFO] [stdout]   --> tests/derive_semigroup_generics.rs:22:22
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub struct NamedStruct<T> {
[INFO] [stdout]    | ------------------------- function or associated item `op` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 22 |         NamedStruct::op(a.clone(), b.clone()),
[INFO] [stdout]    |                      ^^ function or associated item not found in `NamedStruct<_>`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following trait defines an item `op`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `Semigroup`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `op` found for struct `NamedStruct<T>` in the current scope
[INFO] [stdout]   --> tests/derive_semigroup_generics.rs:29:22
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub struct NamedStruct<T> {
[INFO] [stdout]    | ------------------------- function or associated item `op` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 29 |         NamedStruct::op(b.clone(), a.clone()),
[INFO] [stdout]    |                      ^^ function or associated item not found in `NamedStruct<_>`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following trait defines an item `op`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `Semigroup`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `op` found for struct `UnnamedStruct<T>` in the current scope
[INFO] [stdout]   --> tests/derive_semigroup_generics.rs:49:24
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub struct UnnamedStruct<T>(
[INFO] [stdout]    | --------------------------- function or associated item `op` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 49 |         UnnamedStruct::op(a.clone(), b.clone()),
[INFO] [stdout]    |                        ^^ function or associated item not found in `UnnamedStruct<_>`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following trait defines an item `op`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `Semigroup`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `op` found for struct `UnnamedStruct<T>` in the current scope
[INFO] [stdout]   --> tests/derive_semigroup_generics.rs:53:24
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub struct UnnamedStruct<T>(
[INFO] [stdout]    | --------------------------- function or associated item `op` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 53 |         UnnamedStruct::op(b.clone(), a.clone()),
[INFO] [stdout]    |                        ^^ function or associated item not found in `UnnamedStruct<_>`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following trait defines an item `op`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `Semigroup`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0599`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `semigroup` (test "derive_semigroup_generics") due to 8 previous errors
[INFO] [stdout] error[E0599]: no method named `annotated` found for struct `NamedStruct` in the current scope
[INFO] [stdout]   --> tests/derive_annotated.rs:17:6
[INFO] [stdout]    |
[INFO] [stdout]  5 |   pub struct NamedStruct {
[INFO] [stdout]    |   ---------------------- method `annotated` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 13 |       let a = NamedStruct {
[INFO] [stdout]    |  _____________-
[INFO] [stdout] 14 | |         name: "A".to_string(),
[INFO] [stdout] 15 | |         value: Some(10),
[INFO] [stdout] 16 | |     }
[INFO] [stdout] 17 | |     .annotated("First");
[INFO] [stdout]    | |     -^^^^^^^^^ method not found in `NamedStruct`
[INFO] [stdout]    | |_____|
[INFO] [stdout]    |
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following trait defines an item `annotated`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `Annotate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `annotated` found for struct `NamedStruct` in the current scope
[INFO] [stdout]   --> tests/derive_annotated.rs:23:6
[INFO] [stdout]    |
[INFO] [stdout]  5 |   pub struct NamedStruct {
[INFO] [stdout]    |   ---------------------- method `annotated` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 19 |       let b = NamedStruct {
[INFO] [stdout]    |  _____________-
[INFO] [stdout] 20 | |         name: "B".to_string(),
[INFO] [stdout] 21 | |         value: None,
[INFO] [stdout] 22 | |     }
[INFO] [stdout] 23 | |     .annotated("Second");
[INFO] [stdout]    | |     -^^^^^^^^^ method not found in `NamedStruct`
[INFO] [stdout]    | |_____|
[INFO] [stdout]    |
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following trait defines an item `annotated`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `Annotate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `annotated` found for struct `UnnamedStruct` in the current scope
[INFO] [stdout]   --> tests/derive_annotated.rs:72:54
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub struct UnnamedStruct(
[INFO] [stdout]    | ------------------------ method `annotated` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 72 |     let a = UnnamedStruct("A".to_string(), Some(10)).annotated(1.0);
[INFO] [stdout]    |                                                      ^^^^^^^^^ method not found in `UnnamedStruct`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following trait defines an item `annotated`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `Annotate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `annotated` found for struct `UnnamedStruct` in the current scope
[INFO] [stdout]   --> tests/derive_annotated.rs:73:50
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub struct UnnamedStruct(
[INFO] [stdout]    | ------------------------ method `annotated` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 73 |     let b = UnnamedStruct("B".to_string(), None).annotated(2.0);
[INFO] [stdout]    |                                                  ^^^^^^^^^ method not found in `UnnamedStruct`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following trait defines an item `annotated`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `Annotate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function, tuple struct or tuple variant `UnnamedStructAnnotation` in this scope
[INFO] [stdout]   --> tests/derive_annotated.rs:84:13
[INFO] [stdout]    |
[INFO] [stdout] 84 |             UnnamedStructAnnotation(2.0, 1.0),
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function, tuple struct or tuple variant `UnnamedStructAnnotation` in this scope
[INFO] [stdout]   --> tests/derive_annotated.rs:97:13
[INFO] [stdout]    |
[INFO] [stdout] 97 |             UnnamedStructAnnotation(1.0, 1.0),
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0422, E0425, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0422`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `semigroup` (test "derive_annotated") due to 14 previous errors
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `semigroup` (lib test) due to 32 previous errors
[INFO] running `Command { std: "docker" "inspect" "8180dd39e230c16ca05ee77aee07c04c9f7b4bc8165e09140e6ed061b5684c83", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8180dd39e230c16ca05ee77aee07c04c9f7b4bc8165e09140e6ed061b5684c83", kill_on_drop: false }`
[INFO] [stdout] 8180dd39e230c16ca05ee77aee07c04c9f7b4bc8165e09140e6ed061b5684c83
