[INFO] fetching crate limn-layout 0.0.1...
[INFO] testing limn-layout-0.0.1 against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-7
[INFO] extracting crate limn-layout 0.0.1 into /workspace/builds/worker-7-tc1/source
[INFO] started tweaking crates.io crate limn-layout 0.0.1
[INFO] finished tweaking crates.io crate limn-layout 0.0.1
[INFO] tweaked toml for crates.io crate limn-layout 0.0.1 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate limn-layout 0.0.1 on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]      Locking 20 packages to latest compatible versions
[INFO] [stderr]       Adding euclid v0.15.6 (available: v0.22.11)
[INFO] [stderr]       Adding lazy_static v0.2.11 (available: v1.5.0)
[INFO] [stderr]       Adding log v0.3.9 (available: v0.4.28)
[INFO] [stderr]       Adding maplit v0.1.6 (available: v1.0.2)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded lazy_static v0.2.11
[INFO] [stderr]   Downloaded heapsize v0.4.2
[INFO] [stderr]   Downloaded cassowary v0.3.0
[INFO] [stderr]   Downloaded log v0.3.9
[INFO] [stderr]   Downloaded num-traits v0.1.43
[INFO] [stderr]   Downloaded euclid v0.15.6
[INFO] [stderr]   Downloaded maplit v0.1.6
[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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] cbda719ea2578b3564f36b1725a8e9168de94ed4022c2edd5f8e4a52f31459fd
[INFO] running `Command { std: "docker" "start" "-a" "cbda719ea2578b3564f36b1725a8e9168de94ed4022c2edd5f8e4a52f31459fd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "cbda719ea2578b3564f36b1725a8e9168de94ed4022c2edd5f8e4a52f31459fd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cbda719ea2578b3564f36b1725a8e9168de94ed4022c2edd5f8e4a52f31459fd", kill_on_drop: false }`
[INFO] [stdout] cbda719ea2578b3564f36b1725a8e9168de94ed4022c2edd5f8e4a52f31459fd
[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=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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a3e171676b2668501875045045bbf9858fd25bac77e0ee65de8a862e5472e28c
[INFO] running `Command { std: "docker" "start" "-a" "a3e171676b2668501875045045bbf9858fd25bac77e0ee65de8a862e5472e28c", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling heapsize v0.4.2
[INFO] [stderr]    Compiling lazy_static v0.2.11
[INFO] [stderr]    Compiling cassowary v0.3.0
[INFO] [stderr]    Compiling num-traits v0.1.43
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling euclid v0.15.6
[INFO] [stderr]    Compiling limn-layout v0.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]  --> src/lib.rs:3:28
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![cfg_attr(all(not(test), feature="clippy"), warn(result_unwrap_used))]
[INFO] [stdout]   |                            ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]   |
[INFO] [stdout]   = note: no expected values for `feature`
[INFO] [stdout]   = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]  --> src/lib.rs:4:13
[INFO] [stdout]   |
[INFO] [stdout] 4 | #![cfg_attr(feature="clippy", warn(unseparated_literal_suffix))]
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]   |
[INFO] [stdout]   = note: no expected values for `feature`
[INFO] [stdout]   = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]  --> src/lib.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | #![cfg_attr(feature="clippy", warn(wrong_pub_self_convention))]
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]   |
[INFO] [stdout]   = note: no expected values for `feature`
[INFO] [stdout]   = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]  --> src/lib.rs:8:13
[INFO] [stdout]   |
[INFO] [stdout] 8 | #![cfg_attr(feature="clippy", feature(plugin))]
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]   |
[INFO] [stdout]   = note: no expected values for `feature`
[INFO] [stdout]   = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]  --> src/lib.rs:9:13
[INFO] [stdout]   |
[INFO] [stdout] 9 | #![cfg_attr(feature="clippy", plugin(clippy))]
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]   |
[INFO] [stdout]   = note: no expected values for `feature`
[INFO] [stdout]   = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]   --> src/lib.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 | #![cfg_attr(feature="clippy", warn(cast_possible_truncation))]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]   --> src/lib.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 | #![cfg_attr(feature="clippy", warn(cast_possible_wrap))]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]   --> src/lib.rs:19:13
[INFO] [stdout]    |
[INFO] [stdout] 19 | #![cfg_attr(feature="clippy", warn(cast_precision_loss))]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]   --> src/lib.rs:20:13
[INFO] [stdout]    |
[INFO] [stdout] 20 | #![cfg_attr(feature="clippy", warn(cast_sign_loss))]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]   --> src/lib.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 | #![cfg_attr(feature="clippy", warn(missing_docs_in_private_items))]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]   --> src/lib.rs:22:13
[INFO] [stdout]    |
[INFO] [stdout] 22 | #![cfg_attr(feature="clippy", warn(mut_mut))]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]   --> src/lib.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 26 | #![cfg_attr(feature="clippy", warn(print_stdout))]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]   --> src/lib.rs:31:28
[INFO] [stdout]    |
[INFO] [stdout] 31 | #![cfg_attr(all(not(test), feature="clippy"), warn(result_unwrap_used))]
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]   --> src/lib.rs:32:13
[INFO] [stdout]    |
[INFO] [stdout] 32 | #![cfg_attr(feature="clippy", warn(unseparated_literal_suffix))]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]   --> src/lib.rs:33:13
[INFO] [stdout]    |
[INFO] [stdout] 33 | #![cfg_attr(feature="clippy", warn(wrong_pub_self_convention))]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]    --> src/lib.rs:426:1
[INFO] [stdout]     |
[INFO] [stdout] 426 | / lazy_static! {
[INFO] [stdout] 427 | |     pub static ref LAYOUT: LayoutVars = LayoutVars::new();
[INFO] [stdout] 428 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:154:34
[INFO] [stdout]     |
[INFO] [stdout] 154 |     container: Option<Rc<RefCell<LayoutContainer>>>,
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 154 |     container: Option<Rc<RefCell<dyn LayoutContainer>>>,
[INFO] [stdout]     |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/constraint.rs:430:32
[INFO] [stdout]     |
[INFO] [stdout] 430 | impl ConstraintBuilder for Box<ConstraintBuilder> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 430 | impl ConstraintBuilder for Box<dyn ConstraintBuilder> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 403 |           child.add(constraints![
[INFO] [stdout]     |  ___________________-
[INFO] [stdout] 404 | |             bound_by(&parent).padding(self.padding),
[INFO] [stdout] 405 | |             match_layout(&parent).strength(WEAK),
[INFO] [stdout] 406 | |         ]);
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:114:28
[INFO] [stdout]     |
[INFO] [stdout] 114 |                   parent.add(constraints![
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 115 | |                     start | EQ(REQUIRED) | parent_start + space,
[INFO] [stdout] 116 | |                     end | EQ(REQUIRED) | parent_end - space,
[INFO] [stdout] 117 | |                 ]);
[INFO] [stdout]     | |_________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:120:28
[INFO] [stdout]     |
[INFO] [stdout] 120 |                   parent.add(constraints![
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 121 | |                     start | EQ(REQUIRED) | parent_start,
[INFO] [stdout] 122 | |                     end | EQ(REQUIRED) | parent_end,
[INFO] [stdout] 123 | |                 ]);
[INFO] [stdout]     | |_________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:196:35
[INFO] [stdout]     |
[INFO] [stdout] 196 |                           child.add(constraints![
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 197 | |                             align_top(parent),
[INFO] [stdout] 198 | |                             align_bottom(parent),
[INFO] [stdout] 199 | |                         ]);
[INFO] [stdout]     | |_________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:202:35
[INFO] [stdout]     |
[INFO] [stdout] 202 |                           child.add(constraints![
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 203 | |                             center_vertical(parent),
[INFO] [stdout] 204 | |                             bound_top(parent),
[INFO] [stdout] 205 | |                             bound_bottom(parent),
[INFO] [stdout] 206 | |                         ]);
[INFO] [stdout]     | |_________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:209:35
[INFO] [stdout]     |
[INFO] [stdout] 209 |                           child.add(constraints![
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 210 | |                             align_top(parent),
[INFO] [stdout] 211 | |                             bound_bottom(parent),
[INFO] [stdout] 212 | |                         ]);
[INFO] [stdout]     | |_________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:215:35
[INFO] [stdout]     |
[INFO] [stdout] 215 |                           child.add(constraints![
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 216 | |                             bound_top(parent),
[INFO] [stdout] 217 | |                             align_bottom(parent),
[INFO] [stdout] 218 | |                         ]);
[INFO] [stdout]     | |_________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:221:35
[INFO] [stdout]     |
[INFO] [stdout] 221 |                           child.add(constraints![
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 222 | |                             bound_top(parent),
[INFO] [stdout] 223 | |                             bound_bottom(parent),
[INFO] [stdout] 224 | |                         ]);
[INFO] [stdout]     | |_________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:232:35
[INFO] [stdout]     |
[INFO] [stdout] 232 |                           child.add(constraints![
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 233 | |                             align_left(parent),
[INFO] [stdout] 234 | |                             align_right(parent),
[INFO] [stdout] 235 | |                         ]);
[INFO] [stdout]     | |_________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:238:35
[INFO] [stdout]     |
[INFO] [stdout] 238 |                           child.add(constraints![
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 239 | |                             center_horizontal(parent),
[INFO] [stdout] 240 | |                             bound_left(parent),
[INFO] [stdout] 241 | |                             bound_right(parent),
[INFO] [stdout] 242 | |                         ]);
[INFO] [stdout]     | |_________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:245:35
[INFO] [stdout]     |
[INFO] [stdout] 245 |                           child.add(constraints![
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 246 | |                             align_left(parent),
[INFO] [stdout] 247 | |                             bound_right(parent),
[INFO] [stdout] 248 | |                         ]);
[INFO] [stdout]     | |_________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:251:35
[INFO] [stdout]     |
[INFO] [stdout] 251 |                           child.add(constraints![
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 252 | |                             bound_left(parent),
[INFO] [stdout] 253 | |                             align_right(parent),
[INFO] [stdout] 254 | |                         ]);
[INFO] [stdout]     | |_________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:257:35
[INFO] [stdout]     |
[INFO] [stdout] 257 |                           child.add(constraints![
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 258 | |                             bound_left(parent),
[INFO] [stdout] 259 | |                             bound_right(parent),
[INFO] [stdout] 260 | |                         ]);
[INFO] [stdout]     | |_________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/grid_layout.rs:79:19
[INFO] [stdout]     |
[INFO] [stdout]  79 |           child.add(constraints![
[INFO] [stdout]     |  ___________________-
[INFO] [stdout]  80 | |             bound_by(row),
[INFO] [stdout]  81 | |             bound_by(col),
[INFO] [stdout]  82 | |             match_layout(&parent).strength(STRONG),
[INFO] [stdout]  83 | |         ]);
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:208:22
[INFO] [stdout]     |
[INFO] [stdout] 208 |     pub fn edit_left(&mut self) -> VariableEditable {
[INFO] [stdout]     |                      ^^^^^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 208 |     pub fn edit_left(&mut self) -> VariableEditable<'_> {
[INFO] [stdout]     |                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:212:21
[INFO] [stdout]     |
[INFO] [stdout] 212 |     pub fn edit_top(&mut self) -> VariableEditable {
[INFO] [stdout]     |                     ^^^^^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 212 |     pub fn edit_top(&mut self) -> VariableEditable<'_> {
[INFO] [stdout]     |                                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:216:23
[INFO] [stdout]     |
[INFO] [stdout] 216 |     pub fn edit_right(&mut self) -> VariableEditable {
[INFO] [stdout]     |                       ^^^^^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 216 |     pub fn edit_right(&mut self) -> VariableEditable<'_> {
[INFO] [stdout]     |                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:220:24
[INFO] [stdout]     |
[INFO] [stdout] 220 |     pub fn edit_bottom(&mut self) -> VariableEditable {
[INFO] [stdout]     |                        ^^^^^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 220 |     pub fn edit_bottom(&mut self) -> VariableEditable<'_> {
[INFO] [stdout]     |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:224:23
[INFO] [stdout]     |
[INFO] [stdout] 224 |     pub fn edit_width(&mut self) -> VariableEditable {
[INFO] [stdout]     |                       ^^^^^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 224 |     pub fn edit_width(&mut self) -> VariableEditable<'_> {
[INFO] [stdout]     |                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:228:24
[INFO] [stdout]     |
[INFO] [stdout] 228 |     pub fn edit_height(&mut self) -> VariableEditable {
[INFO] [stdout]     |                        ^^^^^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 228 |     pub fn edit_height(&mut self) -> VariableEditable<'_> {
[INFO] [stdout]     |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.55s
[INFO] running `Command { std: "docker" "inspect" "a3e171676b2668501875045045bbf9858fd25bac77e0ee65de8a862e5472e28c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a3e171676b2668501875045045bbf9858fd25bac77e0ee65de8a862e5472e28c", kill_on_drop: false }`
[INFO] [stdout] a3e171676b2668501875045045bbf9858fd25bac77e0ee65de8a862e5472e28c
[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=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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b629046c2fe53c81706d2d308a638fb9eb3a045b000fffed59412bfbe10140d1
[INFO] running `Command { std: "docker" "start" "-a" "b629046c2fe53c81706d2d308a638fb9eb3a045b000fffed59412bfbe10140d1", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling maplit v0.1.6
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]  --> src/lib.rs:3:28
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![cfg_attr(all(not(test), feature="clippy"), warn(result_unwrap_used))]
[INFO] [stdout]   |                            ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]   |
[INFO] [stdout]   = note: no expected values for `feature`
[INFO] [stdout]   = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]  --> src/lib.rs:4:13
[INFO] [stdout]   |
[INFO] [stdout] 4 | #![cfg_attr(feature="clippy", warn(unseparated_literal_suffix))]
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]   |
[INFO] [stdout]   = note: no expected values for `feature`
[INFO] [stdout]   = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]  --> src/lib.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | #![cfg_attr(feature="clippy", warn(wrong_pub_self_convention))]
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]   |
[INFO] [stdout]   = note: no expected values for `feature`
[INFO] [stdout]   = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]  --> src/lib.rs:8:13
[INFO] [stdout]   |
[INFO] [stdout] 8 | #![cfg_attr(feature="clippy", feature(plugin))]
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]   |
[INFO] [stdout]   = note: no expected values for `feature`
[INFO] [stdout]   = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]  --> src/lib.rs:9:13
[INFO] [stdout]   |
[INFO] [stdout] 9 | #![cfg_attr(feature="clippy", plugin(clippy))]
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]   |
[INFO] [stdout]   = note: no expected values for `feature`
[INFO] [stdout]   = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]   --> src/lib.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 | #![cfg_attr(feature="clippy", warn(cast_possible_truncation))]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]   --> src/lib.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 | #![cfg_attr(feature="clippy", warn(cast_possible_wrap))]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]   --> src/lib.rs:19:13
[INFO] [stdout]    |
[INFO] [stdout] 19 | #![cfg_attr(feature="clippy", warn(cast_precision_loss))]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]   --> src/lib.rs:20:13
[INFO] [stdout]    |
[INFO] [stdout] 20 | #![cfg_attr(feature="clippy", warn(cast_sign_loss))]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]   --> src/lib.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 | #![cfg_attr(feature="clippy", warn(missing_docs_in_private_items))]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]   --> src/lib.rs:22:13
[INFO] [stdout]    |
[INFO] [stdout] 22 | #![cfg_attr(feature="clippy", warn(mut_mut))]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]   --> src/lib.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 26 | #![cfg_attr(feature="clippy", warn(print_stdout))]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]   --> src/lib.rs:31:28
[INFO] [stdout]    |
[INFO] [stdout] 31 | #![cfg_attr(all(not(test), feature="clippy"), warn(result_unwrap_used))]
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]   --> src/lib.rs:32:13
[INFO] [stdout]    |
[INFO] [stdout] 32 | #![cfg_attr(feature="clippy", warn(unseparated_literal_suffix))]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]   --> src/lib.rs:33:13
[INFO] [stdout]    |
[INFO] [stdout] 33 | #![cfg_attr(feature="clippy", warn(wrong_pub_self_convention))]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]    --> src/lib.rs:426:1
[INFO] [stdout]     |
[INFO] [stdout] 426 | / lazy_static! {
[INFO] [stdout] 427 | |     pub static ref LAYOUT: LayoutVars = LayoutVars::new();
[INFO] [stdout] 428 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:154:34
[INFO] [stdout]     |
[INFO] [stdout] 154 |     container: Option<Rc<RefCell<LayoutContainer>>>,
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 154 |     container: Option<Rc<RefCell<dyn LayoutContainer>>>,
[INFO] [stdout]     |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/constraint.rs:430:32
[INFO] [stdout]     |
[INFO] [stdout] 430 | impl ConstraintBuilder for Box<ConstraintBuilder> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 430 | impl ConstraintBuilder for Box<dyn ConstraintBuilder> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 403 |           child.add(constraints![
[INFO] [stdout]     |  ___________________-
[INFO] [stdout] 404 | |             bound_by(&parent).padding(self.padding),
[INFO] [stdout] 405 | |             match_layout(&parent).strength(WEAK),
[INFO] [stdout] 406 | |         ]);
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:114:28
[INFO] [stdout]     |
[INFO] [stdout] 114 |                   parent.add(constraints![
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 115 | |                     start | EQ(REQUIRED) | parent_start + space,
[INFO] [stdout] 116 | |                     end | EQ(REQUIRED) | parent_end - space,
[INFO] [stdout] 117 | |                 ]);
[INFO] [stdout]     | |_________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:120:28
[INFO] [stdout]     |
[INFO] [stdout] 120 |                   parent.add(constraints![
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 121 | |                     start | EQ(REQUIRED) | parent_start,
[INFO] [stdout] 122 | |                     end | EQ(REQUIRED) | parent_end,
[INFO] [stdout] 123 | |                 ]);
[INFO] [stdout]     | |_________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:196:35
[INFO] [stdout]     |
[INFO] [stdout] 196 |                           child.add(constraints![
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 197 | |                             align_top(parent),
[INFO] [stdout] 198 | |                             align_bottom(parent),
[INFO] [stdout] 199 | |                         ]);
[INFO] [stdout]     | |_________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:202:35
[INFO] [stdout]     |
[INFO] [stdout] 202 |                           child.add(constraints![
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 203 | |                             center_vertical(parent),
[INFO] [stdout] 204 | |                             bound_top(parent),
[INFO] [stdout] 205 | |                             bound_bottom(parent),
[INFO] [stdout] 206 | |                         ]);
[INFO] [stdout]     | |_________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:209:35
[INFO] [stdout]     |
[INFO] [stdout] 209 |                           child.add(constraints![
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 210 | |                             align_top(parent),
[INFO] [stdout] 211 | |                             bound_bottom(parent),
[INFO] [stdout] 212 | |                         ]);
[INFO] [stdout]     | |_________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:215:35
[INFO] [stdout]     |
[INFO] [stdout] 215 |                           child.add(constraints![
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 216 | |                             bound_top(parent),
[INFO] [stdout] 217 | |                             align_bottom(parent),
[INFO] [stdout] 218 | |                         ]);
[INFO] [stdout]     | |_________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:221:35
[INFO] [stdout]     |
[INFO] [stdout] 221 |                           child.add(constraints![
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 222 | |                             bound_top(parent),
[INFO] [stdout] 223 | |                             bound_bottom(parent),
[INFO] [stdout] 224 | |                         ]);
[INFO] [stdout]     | |_________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:232:35
[INFO] [stdout]     |
[INFO] [stdout] 232 |                           child.add(constraints![
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 233 | |                             align_left(parent),
[INFO] [stdout] 234 | |                             align_right(parent),
[INFO] [stdout] 235 | |                         ]);
[INFO] [stdout]     | |_________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:238:35
[INFO] [stdout]     |
[INFO] [stdout] 238 |                           child.add(constraints![
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 239 | |                             center_horizontal(parent),
[INFO] [stdout] 240 | |                             bound_left(parent),
[INFO] [stdout] 241 | |                             bound_right(parent),
[INFO] [stdout] 242 | |                         ]);
[INFO] [stdout]     | |_________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:245:35
[INFO] [stdout]     |
[INFO] [stdout] 245 |                           child.add(constraints![
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 246 | |                             align_left(parent),
[INFO] [stdout] 247 | |                             bound_right(parent),
[INFO] [stdout] 248 | |                         ]);
[INFO] [stdout]     | |_________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:251:35
[INFO] [stdout]     |
[INFO] [stdout] 251 |                           child.add(constraints![
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 252 | |                             bound_left(parent),
[INFO] [stdout] 253 | |                             align_right(parent),
[INFO] [stdout] 254 | |                         ]);
[INFO] [stdout]     | |_________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:257:35
[INFO] [stdout]     |
[INFO] [stdout] 257 |                           child.add(constraints![
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 258 | |                             bound_left(parent),
[INFO] [stdout] 259 | |                             bound_right(parent),
[INFO] [stdout] 260 | |                         ]);
[INFO] [stdout]     | |_________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/grid_layout.rs:79:19
[INFO] [stdout]     |
[INFO] [stdout]  79 |           child.add(constraints![
[INFO] [stdout]     |  ___________________-
[INFO] [stdout]  80 | |             bound_by(row),
[INFO] [stdout]  81 | |             bound_by(col),
[INFO] [stdout]  82 | |             match_layout(&parent).strength(STRONG),
[INFO] [stdout]  83 | |         ]);
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:208:22
[INFO] [stdout]     |
[INFO] [stdout] 208 |     pub fn edit_left(&mut self) -> VariableEditable {
[INFO] [stdout]     |                      ^^^^^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 208 |     pub fn edit_left(&mut self) -> VariableEditable<'_> {
[INFO] [stdout]     |                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:212:21
[INFO] [stdout]     |
[INFO] [stdout] 212 |     pub fn edit_top(&mut self) -> VariableEditable {
[INFO] [stdout]     |                     ^^^^^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 212 |     pub fn edit_top(&mut self) -> VariableEditable<'_> {
[INFO] [stdout]     |                                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:216:23
[INFO] [stdout]     |
[INFO] [stdout] 216 |     pub fn edit_right(&mut self) -> VariableEditable {
[INFO] [stdout]     |                       ^^^^^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 216 |     pub fn edit_right(&mut self) -> VariableEditable<'_> {
[INFO] [stdout]     |                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:220:24
[INFO] [stdout]     |
[INFO] [stdout] 220 |     pub fn edit_bottom(&mut self) -> VariableEditable {
[INFO] [stdout]     |                        ^^^^^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 220 |     pub fn edit_bottom(&mut self) -> VariableEditable<'_> {
[INFO] [stdout]     |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:224:23
[INFO] [stdout]     |
[INFO] [stdout] 224 |     pub fn edit_width(&mut self) -> VariableEditable {
[INFO] [stdout]     |                       ^^^^^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 224 |     pub fn edit_width(&mut self) -> VariableEditable<'_> {
[INFO] [stdout]     |                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:228:24
[INFO] [stdout]     |
[INFO] [stdout] 228 |     pub fn edit_height(&mut self) -> VariableEditable {
[INFO] [stdout]     |                        ^^^^^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 228 |     pub fn edit_height(&mut self) -> VariableEditable<'_> {
[INFO] [stdout]     |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling limn-layout v0.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]  --> src/lib.rs:3:28
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![cfg_attr(all(not(test), feature="clippy"), warn(result_unwrap_used))]
[INFO] [stdout]   |                            ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]   |
[INFO] [stdout]   = note: no expected values for `feature`
[INFO] [stdout]   = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]  --> src/lib.rs:4:13
[INFO] [stdout]   |
[INFO] [stdout] 4 | #![cfg_attr(feature="clippy", warn(unseparated_literal_suffix))]
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]   |
[INFO] [stdout]   = note: no expected values for `feature`
[INFO] [stdout]   = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]  --> src/lib.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | #![cfg_attr(feature="clippy", warn(wrong_pub_self_convention))]
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]   |
[INFO] [stdout]   = note: no expected values for `feature`
[INFO] [stdout]   = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]  --> src/lib.rs:8:13
[INFO] [stdout]   |
[INFO] [stdout] 8 | #![cfg_attr(feature="clippy", feature(plugin))]
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]   |
[INFO] [stdout]   = note: no expected values for `feature`
[INFO] [stdout]   = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]  --> src/lib.rs:9:13
[INFO] [stdout]   |
[INFO] [stdout] 9 | #![cfg_attr(feature="clippy", plugin(clippy))]
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]   |
[INFO] [stdout]   = note: no expected values for `feature`
[INFO] [stdout]   = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]   --> src/lib.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 | #![cfg_attr(feature="clippy", warn(cast_possible_truncation))]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]   --> src/lib.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 | #![cfg_attr(feature="clippy", warn(cast_possible_wrap))]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]   --> src/lib.rs:19:13
[INFO] [stdout]    |
[INFO] [stdout] 19 | #![cfg_attr(feature="clippy", warn(cast_precision_loss))]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]   --> src/lib.rs:20:13
[INFO] [stdout]    |
[INFO] [stdout] 20 | #![cfg_attr(feature="clippy", warn(cast_sign_loss))]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]   --> src/lib.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 | #![cfg_attr(feature="clippy", warn(missing_docs_in_private_items))]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]   --> src/lib.rs:22:13
[INFO] [stdout]    |
[INFO] [stdout] 22 | #![cfg_attr(feature="clippy", warn(mut_mut))]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]   --> src/lib.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 26 | #![cfg_attr(feature="clippy", warn(print_stdout))]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]   --> src/lib.rs:31:28
[INFO] [stdout]    |
[INFO] [stdout] 31 | #![cfg_attr(all(not(test), feature="clippy"), warn(result_unwrap_used))]
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]   --> src/lib.rs:32:13
[INFO] [stdout]    |
[INFO] [stdout] 32 | #![cfg_attr(feature="clippy", warn(unseparated_literal_suffix))]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stdout]   --> src/lib.rs:33:13
[INFO] [stdout]    |
[INFO] [stdout] 33 | #![cfg_attr(feature="clippy", warn(wrong_pub_self_convention))]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]    --> src/lib.rs:426:1
[INFO] [stdout]     |
[INFO] [stdout] 426 | / lazy_static! {
[INFO] [stdout] 427 | |     pub static ref LAYOUT: LayoutVars = LayoutVars::new();
[INFO] [stdout] 428 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:154:34
[INFO] [stdout]     |
[INFO] [stdout] 154 |     container: Option<Rc<RefCell<LayoutContainer>>>,
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 154 |     container: Option<Rc<RefCell<dyn LayoutContainer>>>,
[INFO] [stdout]     |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/constraint.rs:430:32
[INFO] [stdout]     |
[INFO] [stdout] 430 | impl ConstraintBuilder for Box<ConstraintBuilder> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 430 | impl ConstraintBuilder for Box<dyn ConstraintBuilder> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 403 |           child.add(constraints![
[INFO] [stdout]     |  ___________________-
[INFO] [stdout] 404 | |             bound_by(&parent).padding(self.padding),
[INFO] [stdout] 405 | |             match_layout(&parent).strength(WEAK),
[INFO] [stdout] 406 | |         ]);
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:114:28
[INFO] [stdout]     |
[INFO] [stdout] 114 |                   parent.add(constraints![
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 115 | |                     start | EQ(REQUIRED) | parent_start + space,
[INFO] [stdout] 116 | |                     end | EQ(REQUIRED) | parent_end - space,
[INFO] [stdout] 117 | |                 ]);
[INFO] [stdout]     | |_________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:120:28
[INFO] [stdout]     |
[INFO] [stdout] 120 |                   parent.add(constraints![
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 121 | |                     start | EQ(REQUIRED) | parent_start,
[INFO] [stdout] 122 | |                     end | EQ(REQUIRED) | parent_end,
[INFO] [stdout] 123 | |                 ]);
[INFO] [stdout]     | |_________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:196:35
[INFO] [stdout]     |
[INFO] [stdout] 196 |                           child.add(constraints![
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 197 | |                             align_top(parent),
[INFO] [stdout] 198 | |                             align_bottom(parent),
[INFO] [stdout] 199 | |                         ]);
[INFO] [stdout]     | |_________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:202:35
[INFO] [stdout]     |
[INFO] [stdout] 202 |                           child.add(constraints![
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 203 | |                             center_vertical(parent),
[INFO] [stdout] 204 | |                             bound_top(parent),
[INFO] [stdout] 205 | |                             bound_bottom(parent),
[INFO] [stdout] 206 | |                         ]);
[INFO] [stdout]     | |_________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:209:35
[INFO] [stdout]     |
[INFO] [stdout] 209 |                           child.add(constraints![
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 210 | |                             align_top(parent),
[INFO] [stdout] 211 | |                             bound_bottom(parent),
[INFO] [stdout] 212 | |                         ]);
[INFO] [stdout]     | |_________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:215:35
[INFO] [stdout]     |
[INFO] [stdout] 215 |                           child.add(constraints![
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 216 | |                             bound_top(parent),
[INFO] [stdout] 217 | |                             align_bottom(parent),
[INFO] [stdout] 218 | |                         ]);
[INFO] [stdout]     | |_________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:221:35
[INFO] [stdout]     |
[INFO] [stdout] 221 |                           child.add(constraints![
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 222 | |                             bound_top(parent),
[INFO] [stdout] 223 | |                             bound_bottom(parent),
[INFO] [stdout] 224 | |                         ]);
[INFO] [stdout]     | |_________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:232:35
[INFO] [stdout]     |
[INFO] [stdout] 232 |                           child.add(constraints![
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 233 | |                             align_left(parent),
[INFO] [stdout] 234 | |                             align_right(parent),
[INFO] [stdout] 235 | |                         ]);
[INFO] [stdout]     | |_________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:238:35
[INFO] [stdout]     |
[INFO] [stdout] 238 |                           child.add(constraints![
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 239 | |                             center_horizontal(parent),
[INFO] [stdout] 240 | |                             bound_left(parent),
[INFO] [stdout] 241 | |                             bound_right(parent),
[INFO] [stdout] 242 | |                         ]);
[INFO] [stdout]     | |_________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:245:35
[INFO] [stdout]     |
[INFO] [stdout] 245 |                           child.add(constraints![
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 246 | |                             align_left(parent),
[INFO] [stdout] 247 | |                             bound_right(parent),
[INFO] [stdout] 248 | |                         ]);
[INFO] [stdout]     | |_________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:251:35
[INFO] [stdout]     |
[INFO] [stdout] 251 |                           child.add(constraints![
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 252 | |                             bound_left(parent),
[INFO] [stdout] 253 | |                             align_right(parent),
[INFO] [stdout] 254 | |                         ]);
[INFO] [stdout]     | |_________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/linear_layout.rs:257:35
[INFO] [stdout]     |
[INFO] [stdout] 257 |                           child.add(constraints![
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 258 | |                             bound_left(parent),
[INFO] [stdout] 259 | |                             bound_right(parent),
[INFO] [stdout] 260 | |                         ]);
[INFO] [stdout]     | |_________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:379:34
[INFO] [stdout]     |
[INFO] [stdout] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/grid_layout.rs:79:19
[INFO] [stdout]     |
[INFO] [stdout]  79 |           child.add(constraints![
[INFO] [stdout]     |  ___________________-
[INFO] [stdout]  80 | |             bound_by(row),
[INFO] [stdout]  81 | |             bound_by(col),
[INFO] [stdout]  82 | |             match_layout(&parent).strength(STRONG),
[INFO] [stdout]  83 | |         ]);
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:208:22
[INFO] [stdout]     |
[INFO] [stdout] 208 |     pub fn edit_left(&mut self) -> VariableEditable {
[INFO] [stdout]     |                      ^^^^^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 208 |     pub fn edit_left(&mut self) -> VariableEditable<'_> {
[INFO] [stdout]     |                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:212:21
[INFO] [stdout]     |
[INFO] [stdout] 212 |     pub fn edit_top(&mut self) -> VariableEditable {
[INFO] [stdout]     |                     ^^^^^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 212 |     pub fn edit_top(&mut self) -> VariableEditable<'_> {
[INFO] [stdout]     |                                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:216:23
[INFO] [stdout]     |
[INFO] [stdout] 216 |     pub fn edit_right(&mut self) -> VariableEditable {
[INFO] [stdout]     |                       ^^^^^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 216 |     pub fn edit_right(&mut self) -> VariableEditable<'_> {
[INFO] [stdout]     |                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:220:24
[INFO] [stdout]     |
[INFO] [stdout] 220 |     pub fn edit_bottom(&mut self) -> VariableEditable {
[INFO] [stdout]     |                        ^^^^^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 220 |     pub fn edit_bottom(&mut self) -> VariableEditable<'_> {
[INFO] [stdout]     |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:224:23
[INFO] [stdout]     |
[INFO] [stdout] 224 |     pub fn edit_width(&mut self) -> VariableEditable {
[INFO] [stdout]     |                       ^^^^^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 224 |     pub fn edit_width(&mut self) -> VariableEditable<'_> {
[INFO] [stdout]     |                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:228:24
[INFO] [stdout]     |
[INFO] [stdout] 228 |     pub fn edit_height(&mut self) -> VariableEditable {
[INFO] [stdout]     |                        ^^^^^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 228 |     pub fn edit_height(&mut self) -> VariableEditable<'_> {
[INFO] [stdout]     |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.91s
[INFO] running `Command { std: "docker" "inspect" "b629046c2fe53c81706d2d308a638fb9eb3a045b000fffed59412bfbe10140d1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b629046c2fe53c81706d2d308a638fb9eb3a045b000fffed59412bfbe10140d1", kill_on_drop: false }`
[INFO] [stdout] b629046c2fe53c81706d2d308a638fb9eb3a045b000fffed59412bfbe10140d1
[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=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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] defb9a93ba50199b9e0c3b870070830814796b2c50c7c0b4453ba340ba6c78f3
[INFO] running `Command { std: "docker" "start" "-a" "defb9a93ba50199b9e0c3b870070830814796b2c50c7c0b4453ba340ba6c78f3", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stderr]  --> src/lib.rs:3:28
[INFO] [stderr]   |
[INFO] [stderr] 3 | #![cfg_attr(all(not(test), feature="clippy"), warn(result_unwrap_used))]
[INFO] [stderr]   |                            ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stderr]   |
[INFO] [stderr]   = note: no expected values for `feature`
[INFO] [stderr]   = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stderr]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stderr]  --> src/lib.rs:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 | #![cfg_attr(feature="clippy", warn(unseparated_literal_suffix))]
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stderr]   |
[INFO] [stderr]   = note: no expected values for `feature`
[INFO] [stderr]   = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stderr]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stderr]  --> src/lib.rs:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 | #![cfg_attr(feature="clippy", warn(wrong_pub_self_convention))]
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stderr]   |
[INFO] [stderr]   = note: no expected values for `feature`
[INFO] [stderr]   = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stderr]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stderr]  --> src/lib.rs:8:13
[INFO] [stderr]   |
[INFO] [stderr] 8 | #![cfg_attr(feature="clippy", feature(plugin))]
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stderr]   |
[INFO] [stderr]   = note: no expected values for `feature`
[INFO] [stderr]   = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stderr]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stderr]  --> src/lib.rs:9:13
[INFO] [stderr]   |
[INFO] [stderr] 9 | #![cfg_attr(feature="clippy", plugin(clippy))]
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stderr]   |
[INFO] [stderr]   = note: no expected values for `feature`
[INFO] [stderr]   = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stderr]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stderr]   --> src/lib.rs:17:13
[INFO] [stderr]    |
[INFO] [stderr] 17 | #![cfg_attr(feature="clippy", warn(cast_possible_truncation))]
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stderr]    |
[INFO] [stderr]    = note: no expected values for `feature`
[INFO] [stderr]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stderr]   --> src/lib.rs:18:13
[INFO] [stderr]    |
[INFO] [stderr] 18 | #![cfg_attr(feature="clippy", warn(cast_possible_wrap))]
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stderr]    |
[INFO] [stderr]    = note: no expected values for `feature`
[INFO] [stderr]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stderr]   --> src/lib.rs:19:13
[INFO] [stderr]    |
[INFO] [stderr] 19 | #![cfg_attr(feature="clippy", warn(cast_precision_loss))]
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stderr]    |
[INFO] [stderr]    = note: no expected values for `feature`
[INFO] [stderr]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stderr]   --> src/lib.rs:20:13
[INFO] [stderr]    |
[INFO] [stderr] 20 | #![cfg_attr(feature="clippy", warn(cast_sign_loss))]
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stderr]    |
[INFO] [stderr]    = note: no expected values for `feature`
[INFO] [stderr]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stderr]   --> src/lib.rs:21:13
[INFO] [stderr]    |
[INFO] [stderr] 21 | #![cfg_attr(feature="clippy", warn(missing_docs_in_private_items))]
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stderr]    |
[INFO] [stderr]    = note: no expected values for `feature`
[INFO] [stderr]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stderr]   --> src/lib.rs:22:13
[INFO] [stderr]    |
[INFO] [stderr] 22 | #![cfg_attr(feature="clippy", warn(mut_mut))]
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stderr]    |
[INFO] [stderr]    = note: no expected values for `feature`
[INFO] [stderr]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stderr]   --> src/lib.rs:26:13
[INFO] [stderr]    |
[INFO] [stderr] 26 | #![cfg_attr(feature="clippy", warn(print_stdout))]
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stderr]    |
[INFO] [stderr]    = note: no expected values for `feature`
[INFO] [stderr]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stderr]   --> src/lib.rs:31:28
[INFO] [stderr]    |
[INFO] [stderr] 31 | #![cfg_attr(all(not(test), feature="clippy"), warn(result_unwrap_used))]
[INFO] [stderr]    |                            ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stderr]    |
[INFO] [stderr]    = note: no expected values for `feature`
[INFO] [stderr]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stderr]   --> src/lib.rs:32:13
[INFO] [stderr]    |
[INFO] [stderr] 32 | #![cfg_attr(feature="clippy", warn(unseparated_literal_suffix))]
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stderr]    |
[INFO] [stderr]    = note: no expected values for `feature`
[INFO] [stderr]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `clippy`
[INFO] [stderr]   --> src/lib.rs:33:13
[INFO] [stderr]    |
[INFO] [stderr] 33 | #![cfg_attr(feature="clippy", warn(wrong_pub_self_convention))]
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stderr]    |
[INFO] [stderr]    = note: no expected values for `feature`
[INFO] [stderr]    = help: consider adding `clippy` as a feature in `Cargo.toml`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stderr]    --> src/lib.rs:426:1
[INFO] [stderr]     |
[INFO] [stderr] 426 | / lazy_static! {
[INFO] [stderr] 427 | |     pub static ref LAYOUT: LayoutVars = LayoutVars::new();
[INFO] [stderr] 428 | | }
[INFO] [stderr]     | |_^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr]     = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/lib.rs:154:34
[INFO] [stderr]     |
[INFO] [stderr] 154 |     container: Option<Rc<RefCell<LayoutContainer>>>,
[INFO] [stderr]     |                                  ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 154 |     container: Option<Rc<RefCell<dyn LayoutContainer>>>,
[INFO] [stderr]     |                                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/constraint.rs:430:32
[INFO] [stderr]     |
[INFO] [stderr] 430 | impl ConstraintBuilder for Box<ConstraintBuilder> {
[INFO] [stderr]     |                                ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 430 | impl ConstraintBuilder for Box<dyn ConstraintBuilder> {
[INFO] [stderr]     |                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/lib.rs:379:34
[INFO] [stderr]     |
[INFO] [stderr] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stderr]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 403 |           child.add(constraints![
[INFO] [stderr]     |  ___________________-
[INFO] [stderr] 404 | |             bound_by(&parent).padding(self.padding),
[INFO] [stderr] 405 | |             match_layout(&parent).strength(WEAK),
[INFO] [stderr] 406 | |         ]);
[INFO] [stderr]     | |_________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stderr] 
[INFO] [stdout] running 0 tests
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/lib.rs:379:34
[INFO] [stderr]     |
[INFO] [stderr] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stderr]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/linear_layout.rs:114:28
[INFO] [stdout] 
[INFO] [stderr]     |
[INFO] [stderr] 114 |                   parent.add(constraints![
[INFO] [stderr]     |  ____________________________-
[INFO] [stderr] 115 | |                     start | EQ(REQUIRED) | parent_start + space,
[INFO] [stderr] 116 | |                     end | EQ(REQUIRED) | parent_end - space,
[INFO] [stderr] 117 | |                 ]);
[INFO] [stderr]     | |_________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/lib.rs:379:34
[INFO] [stderr]     |
[INFO] [stderr] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stderr]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/linear_layout.rs:120:28
[INFO] [stderr]     |
[INFO] [stderr] 120 |                   parent.add(constraints![
[INFO] [stderr]     |  ____________________________-
[INFO] [stderr] 121 | |                     start | EQ(REQUIRED) | parent_start,
[INFO] [stderr] 122 | |                     end | EQ(REQUIRED) | parent_end,
[INFO] [stderr] 123 | |                 ]);
[INFO] [stderr]     | |_________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stderr]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/lib.rs:379:34
[INFO] [stderr]     |
[INFO] [stderr] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stderr]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/linear_layout.rs:196:35
[INFO] [stderr]     |
[INFO] [stderr] 196 |                           child.add(constraints![
[INFO] [stderr]     |  ___________________________________-
[INFO] [stderr] 197 | |                             align_top(parent),
[INFO] [stderr] 198 | |                             align_bottom(parent),
[INFO] [stderr] 199 | |                         ]);
[INFO] [stderr]     | |_________________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/lib.rs:379:34
[INFO] [stderr]     |
[INFO] [stderr] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stderr]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/linear_layout.rs:202:35
[INFO] [stderr]     |
[INFO] [stderr] 202 |                           child.add(constraints![
[INFO] [stderr]     |  ___________________________________-
[INFO] [stderr] 203 | |                             center_vertical(parent),
[INFO] [stderr] 204 | |                             bound_top(parent),
[INFO] [stderr] 205 | |                             bound_bottom(parent),
[INFO] [stderr] 206 | |                         ]);
[INFO] [stderr]     | |_________________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/lib.rs:379:34
[INFO] [stderr]     |
[INFO] [stderr] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stderr]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/linear_layout.rs:209:35
[INFO] [stderr]     |
[INFO] [stderr] 209 |                           child.add(constraints![
[INFO] [stderr]     |  ___________________________________-
[INFO] [stderr] 210 | |                             align_top(parent),
[INFO] [stderr] 211 | |                             bound_bottom(parent),
[INFO] [stderr] 212 | |                         ]);
[INFO] [stderr]     | |_________________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/lib.rs:379:34
[INFO] [stderr]     |
[INFO] [stderr] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stderr]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/linear_layout.rs:215:35
[INFO] [stderr]     |
[INFO] [stderr] 215 |                           child.add(constraints![
[INFO] [stderr]     |  ___________________________________-
[INFO] [stderr] 216 | |                             bound_top(parent),
[INFO] [stderr] 217 | |                             align_bottom(parent),
[INFO] [stderr] 218 | |                         ]);
[INFO] [stderr]     | |_________________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/lib.rs:379:34
[INFO] [stderr]     |
[INFO] [stderr] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stderr]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/linear_layout.rs:221:35
[INFO] [stderr]     |
[INFO] [stderr] 221 |                           child.add(constraints![
[INFO] [stderr]     |  ___________________________________-
[INFO] [stderr] 222 | |                             bound_top(parent),
[INFO] [stderr] 223 | |                             bound_bottom(parent),
[INFO] [stderr] 224 | |                         ]);
[INFO] [stderr]     | |_________________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/lib.rs:379:34
[INFO] [stderr]     |
[INFO] [stderr] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stderr]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/linear_layout.rs:232:35
[INFO] [stderr]     |
[INFO] [stderr] 232 |                           child.add(constraints![
[INFO] [stderr]     |  ___________________________________-
[INFO] [stderr] 233 | |                             align_left(parent),
[INFO] [stderr] 234 | |                             align_right(parent),
[INFO] [stderr] 235 | |                         ]);
[INFO] [stderr]     | |_________________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/lib.rs:379:34
[INFO] [stderr]     |
[INFO] [stderr] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stderr]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/linear_layout.rs:238:35
[INFO] [stderr]     |
[INFO] [stderr] 238 |                           child.add(constraints![
[INFO] [stderr]     |  ___________________________________-
[INFO] [stderr] 239 | |                             center_horizontal(parent),
[INFO] [stderr] 240 | |                             bound_left(parent),
[INFO] [stderr] 241 | |                             bound_right(parent),
[INFO] [stderr] 242 | |                         ]);
[INFO] [stderr]     | |_________________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/lib.rs:379:34
[INFO] [stderr]     |
[INFO] [stderr] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stderr]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/linear_layout.rs:245:35
[INFO] [stderr]     |
[INFO] [stderr] 245 |                           child.add(constraints![
[INFO] [stderr]     |  ___________________________________-
[INFO] [stderr] 246 | |                             align_left(parent),
[INFO] [stderr] 247 | |                             bound_right(parent),
[INFO] [stderr] 248 | |                         ]);
[INFO] [stderr]     | |_________________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/lib.rs:379:34
[INFO] [stderr]     |
[INFO] [stderr] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stderr]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/linear_layout.rs:251:35
[INFO] [stderr]     |
[INFO] [stderr] 251 |                           child.add(constraints![
[INFO] [stderr]     |  ___________________________________-
[INFO] [stderr] 252 | |                             bound_left(parent),
[INFO] [stderr] 253 | |                             align_right(parent),
[INFO] [stderr] 254 | |                         ]);
[INFO] [stderr]     | |_________________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/lib.rs:379:34
[INFO] [stderr]     |
[INFO] [stderr] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stderr]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/linear_layout.rs:257:35
[INFO] [stderr]     |
[INFO] [stderr] 257 |                           child.add(constraints![
[INFO] [stderr]     |  ___________________________________-
[INFO] [stderr] 258 | |                             bound_left(parent),
[INFO] [stderr] 259 | |                             bound_right(parent),
[INFO] [stderr] 260 | |                         ]);
[INFO] [stderr]     | |_________________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/lib.rs:379:34
[INFO] [stderr]     |
[INFO] [stderr] 379 |               let mut vec: Vec<Box<ConstraintBuilder>> = Vec::new();
[INFO] [stderr]     |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/grid_layout.rs:79:19
[INFO] [stderr]     |
[INFO] [stderr]  79 |           child.add(constraints![
[INFO] [stderr]     |  ___________________-
[INFO] [stderr]  80 | |             bound_by(row),
[INFO] [stderr]  81 | |             bound_by(col),
[INFO] [stderr]  82 | |             match_layout(&parent).strength(STRONG),
[INFO] [stderr]  83 | |         ]);
[INFO] [stderr]     | |_________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/lib.rs:208:22
[INFO] [stderr]     |
[INFO] [stderr] 208 |     pub fn edit_left(&mut self) -> VariableEditable {
[INFO] [stderr]     |                      ^^^^^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                      |
[INFO] [stderr]     |                      the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 208 |     pub fn edit_left(&mut self) -> VariableEditable<'_> {
[INFO] [stderr]     |                                                    ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/lib.rs:212:21
[INFO] [stderr]     |
[INFO] [stderr] 212 |     pub fn edit_top(&mut self) -> VariableEditable {
[INFO] [stderr]     |                     ^^^^^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 212 |     pub fn edit_top(&mut self) -> VariableEditable<'_> {
[INFO] [stderr]     |                                                   ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/lib.rs:216:23
[INFO] [stderr]     |
[INFO] [stderr] 216 |     pub fn edit_right(&mut self) -> VariableEditable {
[INFO] [stderr]     |                       ^^^^^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                       |
[INFO] [stderr]     |                       the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 216 |     pub fn edit_right(&mut self) -> VariableEditable<'_> {
[INFO] [stderr]     |                                                     ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/lib.rs:220:24
[INFO] [stderr]     |
[INFO] [stderr] 220 |     pub fn edit_bottom(&mut self) -> VariableEditable {
[INFO] [stderr]     |                        ^^^^^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                        |
[INFO] [stderr]     |                        the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 220 |     pub fn edit_bottom(&mut self) -> VariableEditable<'_> {
[INFO] [stderr]     |                                                      ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/lib.rs:224:23
[INFO] [stderr]     |
[INFO] [stderr] 224 |     pub fn edit_width(&mut self) -> VariableEditable {
[INFO] [stderr]     |                       ^^^^^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                       |
[INFO] [stderr]     |                       the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 224 |     pub fn edit_width(&mut self) -> VariableEditable<'_> {
[INFO] [stderr]     |                                                     ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/lib.rs:228:24
[INFO] [stderr]     |
[INFO] [stderr] 228 |     pub fn edit_height(&mut self) -> VariableEditable {
[INFO] [stderr]     |                        ^^^^^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                        |
[INFO] [stderr]     |                        the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 228 |     pub fn edit_height(&mut self) -> VariableEditable<'_> {
[INFO] [stderr]     |                                                      ++++
[INFO] [stderr] 
[INFO] [stderr] warning: `limn-layout` (lib) generated 38 warnings (run `cargo fix --lib -p limn-layout` to apply 8 suggestions)
[INFO] [stderr] warning: `limn-layout` (lib test) generated 38 warnings (38 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.07s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/limn_layout-809080d3f9e395c4)
[INFO] [stderr]      Running tests/integration.rs (/opt/rustwide/target/debug/deps/integration-38a04643413be212)
[INFO] [stdout] 
[INFO] [stdout] running 10 tests
[INFO] [stdout] test edit_var ... ok
[INFO] [stdout] test grid ... ok
[INFO] [stdout] test linear_layout_remove ... ok
[INFO] [stdout] test linear_layout_end_padding ... ok
[INFO] [stdout] test linear_layout_spacing_around ... ok
[INFO] [stdout] test one_widget ... ok
[INFO] [stdout] test linear_layout_start ... ok
[INFO] [stdout] test linear_layout_spacing_between ... ok
[INFO] [stdout] test grid_layout ... ok
[INFO] [stdout] test linear_layout_fill ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests limn_layout
[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] running `Command { std: "docker" "inspect" "defb9a93ba50199b9e0c3b870070830814796b2c50c7c0b4453ba340ba6c78f3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "defb9a93ba50199b9e0c3b870070830814796b2c50c7c0b4453ba340ba6c78f3", kill_on_drop: false }`
[INFO] [stdout] defb9a93ba50199b9e0c3b870070830814796b2c50c7c0b4453ba340ba6c78f3
