[INFO] updating cached repository lumirayz/bar-manager-thing [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/lumirayz/bar-manager-thing [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/lumirayz/bar-manager-thing" "work/ex/pr-63376/sources/master#60960a260f7b5c695fd0717311d72ce62dd4eb43/gh/lumirayz/bar-manager-thing"` [INFO] [stderr] Cloning into 'work/ex/pr-63376/sources/master#60960a260f7b5c695fd0717311d72ce62dd4eb43/gh/lumirayz/bar-manager-thing'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/lumirayz/bar-manager-thing" "work/ex/pr-63376/sources/try#266783e4e09e4e9d5307c1c8e695659c58bbcac7/gh/lumirayz/bar-manager-thing"` [INFO] [stderr] Cloning into 'work/ex/pr-63376/sources/try#266783e4e09e4e9d5307c1c8e695659c58bbcac7/gh/lumirayz/bar-manager-thing'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 7d0e9d536cc377357bc02ef0272b16e32cdbf48d [INFO] sha for GitHub repo lumirayz/bar-manager-thing: 7d0e9d536cc377357bc02ef0272b16e32cdbf48d [INFO] validating manifest of lumirayz/bar-manager-thing on toolchain master#60960a260f7b5c695fd0717311d72ce62dd4eb43 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+60960a260f7b5c695fd0717311d72ce62dd4eb43-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of lumirayz/bar-manager-thing on toolchain try#266783e4e09e4e9d5307c1c8e695659c58bbcac7 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+266783e4e09e4e9d5307c1c8e695659c58bbcac7-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing lumirayz/bar-manager-thing [INFO] finished frobbing lumirayz/bar-manager-thing [INFO] frobbed toml for lumirayz/bar-manager-thing written to work/ex/pr-63376/sources/master#60960a260f7b5c695fd0717311d72ce62dd4eb43/gh/lumirayz/bar-manager-thing/Cargo.toml [INFO] started frobbing lumirayz/bar-manager-thing [INFO] finished frobbing lumirayz/bar-manager-thing [INFO] frobbed toml for lumirayz/bar-manager-thing written to work/ex/pr-63376/sources/try#266783e4e09e4e9d5307c1c8e695659c58bbcac7/gh/lumirayz/bar-manager-thing/Cargo.toml [INFO] crate lumirayz/bar-manager-thing already has a lockfile, it will not be regenerated [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+60960a260f7b5c695fd0717311d72ce62dd4eb43-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] [stderr] error: the lock file /mnt/big/crater/work/ex/pr-63376/sources/master#60960a260f7b5c695fd0717311d72ce62dd4eb43/gh/lumirayz/bar-manager-thing/Cargo.lock needs to be updated but --locked was passed to prevent this [INFO] the lockfile is outdated, regenerating it [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+60960a260f7b5c695fd0717311d72ce62dd4eb43-alt" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] [stderr] Updating git repository `https://github.com/kstep/rust-mpd.git` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+266783e4e09e4e9d5307c1c8e695659c58bbcac7-alt" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] [stderr] Updating git repository `https://github.com/kstep/rust-mpd.git` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+60960a260f7b5c695fd0717311d72ce62dd4eb43-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+266783e4e09e4e9d5307c1c8e695659c58bbcac7-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] checking lumirayz/bar-manager-thing against master#60960a260f7b5c695fd0717311d72ce62dd4eb43 for pr-63376 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/pr-63376/worker-5/master#60960a260f7b5c695fd0717311d72ce62dd4eb43:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/pr-63376/sources/master#60960a260f7b5c695fd0717311d72ce62dd4eb43/gh/lumirayz/bar-manager-thing:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+60960a260f7b5c695fd0717311d72ce62dd4eb43-alt" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] a277165ec6b60ba160b2b8436139fb4ce7831fa46e61e1abd66f4b97cd2cc1f9 [INFO] running `"docker" "start" "-a" "a277165ec6b60ba160b2b8436139fb4ce7831fa46e61e1abd66f4b97cd2cc1f9"` [INFO] [stderr] Checking alsa-sys v0.1.2 [INFO] [stderr] Checking mpd v0.0.12 (https://github.com/kstep/rust-mpd.git#0b6b98e9) [INFO] [stderr] Checking bar v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: unused import: `component::core::Component` [INFO] [stderr] --> src/bar.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use component::core::Component; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:40:27 [INFO] [stderr] | [INFO] [stderr] 40 | fn render(&self, &mut Bar); [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Bar` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:43:24 [INFO] [stderr] | [INFO] [stderr] 43 | impl Component for Box Box> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn() -> Box` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:43:36 [INFO] [stderr] | [INFO] [stderr] 43 | impl Component for Box Box> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:44:32 [INFO] [stderr] | [INFO] [stderr] 44 | fn render(&self, bar: &mut Bar) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Bar` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:45:20 [INFO] [stderr] | [INFO] [stderr] 45 | let c: Box = self(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:51:32 [INFO] [stderr] | [INFO] [stderr] 51 | fn render(&self, bar: &mut Bar) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Bar` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:57:23 [INFO] [stderr] | [INFO] [stderr] 57 | children: Vec> [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:61:34 [INFO] [stderr] | [INFO] [stderr] 61 | pub fn new(children: Vec>) -> ConcatComponent { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:67:32 [INFO] [stderr] | [INFO] [stderr] 67 | fn render(&self, bar: &mut Bar) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Bar` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:6:16 [INFO] [stderr] | [INFO] [stderr] 6 | child: Box [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:11:16 [INFO] [stderr] | [INFO] [stderr] 11 | child: Box [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:16:16 [INFO] [stderr] | [INFO] [stderr] 16 | child: Box [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:21:16 [INFO] [stderr] | [INFO] [stderr] 21 | child: Box [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:26:16 [INFO] [stderr] | [INFO] [stderr] 26 | child: Box [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:30:32 [INFO] [stderr] | [INFO] [stderr] 30 | fn render(&self, bar: &mut Bar) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Bar` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:38:32 [INFO] [stderr] | [INFO] [stderr] 38 | fn render(&self, bar: &mut Bar) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Bar` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:46:32 [INFO] [stderr] | [INFO] [stderr] 46 | fn render(&self, bar: &mut Bar) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Bar` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:54:32 [INFO] [stderr] | [INFO] [stderr] 54 | fn render(&self, bar: &mut Bar) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Bar` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:61:32 [INFO] [stderr] | [INFO] [stderr] 61 | fn render(&self, bar: &mut Bar) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Bar` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:67:45 [INFO] [stderr] | [INFO] [stderr] 67 | pub fn bg(color: T, child: Box) -> BgColor { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:71:45 [INFO] [stderr] | [INFO] [stderr] 71 | pub fn fg(color: T, child: Box) -> FgColor { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:75:44 [INFO] [stderr] | [INFO] [stderr] 75 | pub fn u(color: T, child: Box) -> UColor { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:79:33 [INFO] [stderr] | [INFO] [stderr] 79 | pub fn font(id: u64, child: Box) -> Font { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:83:30 [INFO] [stderr] | [INFO] [stderr] 83 | pub fn align_left(child: Box) -> Align { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:86:32 [INFO] [stderr] | [INFO] [stderr] 86 | pub fn align_center(child: Box) -> Align { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:89:31 [INFO] [stderr] | [INFO] [stderr] 89 | pub fn align_right(child: Box) -> Align { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:30:41 [INFO] [stderr] | [INFO] [stderr] 30 | fn render(&self, bar : &mut Bar) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Bar` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:32:17 [INFO] [stderr] | [INFO] [stderr] 32 | let power = dynamic!{ [INFO] [stderr] | _________________- [INFO] [stderr] 33 | | init => power::PowerSource::new(), [INFO] [stderr] 34 | | render(data: power::PowerSource) => { [INFO] [stderr] 35 | | let (d, state) = data.get(); [INFO] [stderr] ... | [INFO] [stderr] 45 | | } [INFO] [stderr] 46 | | }; [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/main.rs:39:21 [INFO] [stderr] | [INFO] [stderr] 39 | (0.0...10.0, _) => "\u{00E211}", [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/main.rs:40:22 [INFO] [stderr] | [INFO] [stderr] 40 | (10.0...25.0, _) => "\u{00E1FD}", [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/main.rs:41:22 [INFO] [stderr] | [INFO] [stderr] 41 | (25.0...90.0, _) => "\u{00E1FE}", [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:44:13 [INFO] [stderr] | [INFO] [stderr] 44 | component!(bg(if d > 10.0 { BLUE } else { RED }) => [" ", sym, format!(" {} ", d)]) [INFO] [stderr] | ----------------------------------------------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:30:41 [INFO] [stderr] | [INFO] [stderr] 30 | fn render(&self, bar : &mut Bar) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Bar` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:47:17 [INFO] [stderr] | [INFO] [stderr] 47 | let bspwm = dynamic!{ [INFO] [stderr] | _________________- [INFO] [stderr] 48 | | init => bspwm::BspwmSource::new(), [INFO] [stderr] 49 | | render(data: bspwm::BspwmSource) => { [INFO] [stderr] 50 | | let d = data.get(); [INFO] [stderr] ... | [INFO] [stderr] 65 | | } [INFO] [stderr] 66 | | }; [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/main.rs:51:32 [INFO] [stderr] | [INFO] [stderr] 51 | let mut v: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:55:28 [INFO] [stderr] | [INFO] [stderr] 55 | => component!(bg(ORANGE) => [format!(" {} ", desktop.name)]), [INFO] [stderr] | --------------------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:57:28 [INFO] [stderr] | [INFO] [stderr] 57 | => component!(bg(CYAN) => [format!(" {} ", desktop.name)]), [INFO] [stderr] | ------------------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:59:28 [INFO] [stderr] | [INFO] [stderr] 59 | => component!(bg(GREEN) => [format!(" {} ", desktop.name)]), [INFO] [stderr] | -------------------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:61:28 [INFO] [stderr] | [INFO] [stderr] 61 | => component!(bg(BLUE) => [format!(" {} ", desktop.name)]) [INFO] [stderr] | ------------------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:30:41 [INFO] [stderr] | [INFO] [stderr] 30 | fn render(&self, bar : &mut Bar) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Bar` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:67:15 [INFO] [stderr] | [INFO] [stderr] 67 | let mpd = dynamic!{ [INFO] [stderr] | _______________- [INFO] [stderr] 68 | | init => mpd::MpdSource::new("localhost:6700"), [INFO] [stderr] 69 | | render(data: mpd::MpdSource) => { [INFO] [stderr] 70 | | let d = data.get(); [INFO] [stderr] ... | [INFO] [stderr] 96 | | } [INFO] [stderr] 97 | | }; [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:73:21 [INFO] [stderr] | [INFO] [stderr] 73 | component!(bg(ORANGE) => [" \u{00E0B3} "]), [INFO] [stderr] | ------------------------------------------ in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:75:21 [INFO] [stderr] | [INFO] [stderr] 75 | component!(bg(RED) => [format!(" \u{00E0B3}{} ", e)]), [INFO] [stderr] | ----------------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:80:45 [INFO] [stderr] | [INFO] [stderr] 80 | mpd::State::Play => component!(bg(BLUE) => [ [INFO] [stderr] | _____________________________________________- [INFO] [stderr] 81 | | " \u{00E09A} ", match *song { [INFO] [stderr] 82 | | Some(ref s) => { [INFO] [stderr] 83 | | let file = s.file.clone() + " "; [INFO] [stderr] ... | [INFO] [stderr] 90 | | } [INFO] [stderr] 91 | | ]), [INFO] [stderr] | |__________________________- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:87:37 [INFO] [stderr] | [INFO] [stderr] 87 | component![format!("{} ", out)] [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:89:41 [INFO] [stderr] | [INFO] [stderr] 89 | None => component!["-"] [INFO] [stderr] | --------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:92:30 [INFO] [stderr] | [INFO] [stderr] 92 | _ => component!(bg(BLUE) => [" \u{00E057} "]) [INFO] [stderr] | ---------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:21:21 [INFO] [stderr] | [INFO] [stderr] 21 | let c : Box Box> = Box::new(|| Box::new($e)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn() -> Box` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:98:16 [INFO] [stderr] | [INFO] [stderr] 98 | let date = lazy!(time::strftime("\u{00E015} %a %m %b %H:%M:%S", &time::now()).unwrap()); [INFO] [stderr] | ---------------------------------------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:21:33 [INFO] [stderr] | [INFO] [stderr] 21 | let c : Box Box> = Box::new(|| Box::new($e)); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:98:16 [INFO] [stderr] | [INFO] [stderr] 98 | let date = lazy!(time::strftime("\u{00E015} %a %m %b %H:%M:%S", &time::now()).unwrap()); [INFO] [stderr] | ---------------------------------------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:21:21 [INFO] [stderr] | [INFO] [stderr] 21 | let c : Box Box> = Box::new(|| Box::new($e)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn() -> Box` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:99:15 [INFO] [stderr] | [INFO] [stderr] 99 | let vol = lazy!(component!(bg(BLUE) => [" \u{00E152} ", format!("{:.0} ", alsa::get_volume())])); [INFO] [stderr] | -------------------------------------------------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:21:33 [INFO] [stderr] | [INFO] [stderr] 21 | let c : Box Box> = Box::new(|| Box::new($e)); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:99:15 [INFO] [stderr] | [INFO] [stderr] 99 | let vol = lazy!(component!(bg(BLUE) => [" \u{00E152} ", format!("{:.0} ", alsa::get_volume())])); [INFO] [stderr] | -------------------------------------------------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:99:21 [INFO] [stderr] | [INFO] [stderr] 99 | let vol = lazy!(component!(bg(BLUE) => [" \u{00E152} ", format!("{:.0} ", alsa::get_volume())])); [INFO] [stderr] | ------------------------------------------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:100:16 [INFO] [stderr] | [INFO] [stderr] 100 | let tree = component![ [INFO] [stderr] | ________________- [INFO] [stderr] 101 | | component!(align_left => [bspwm]), [INFO] [stderr] 102 | | component!(align_center => [date]), [INFO] [stderr] 103 | | component!(align_right => [mpd, " ", power, " ", vol, " "]) [INFO] [stderr] 104 | | ]; [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:101:9 [INFO] [stderr] | [INFO] [stderr] 101 | component!(align_left => [bspwm]), [INFO] [stderr] | --------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:102:9 [INFO] [stderr] | [INFO] [stderr] 102 | component!(align_center => [date]), [INFO] [stderr] | ---------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:103:9 [INFO] [stderr] | [INFO] [stderr] 103 | component!(align_right => [mpd, " ", power, " ", vol, " "]) [INFO] [stderr] | ----------------------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::thread::sleep_ms': replaced by `std::thread::sleep` [INFO] [stderr] --> src/main.rs:108:9 [INFO] [stderr] | [INFO] [stderr] 108 | thread::sleep_ms(200); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::thread::sleep_ms': replaced by `std::thread::sleep` [INFO] [stderr] --> src/source/mpd.rs:60:17 [INFO] [stderr] | [INFO] [stderr] 60 | thread::sleep_ms(2000); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0119]: conflicting implementations of trait `component::core::Component` for type `std::boxed::Box<(dyn std::ops::Fn() -> std::boxed::Box<(dyn component::core::Component + 'static)> + 'static)>`: [INFO] [stderr] --> src/component/core.rs:50:1 [INFO] [stderr] | [INFO] [stderr] 43 | impl Component for Box Box> { [INFO] [stderr] | ---------------------------------------------- first implementation here [INFO] [stderr] ... [INFO] [stderr] 50 | impl Component for T { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `std::boxed::Box<(dyn std::ops::Fn() -> std::boxed::Box<(dyn component::core::Component + 'static)> + 'static)>` [INFO] [stderr] | [INFO] [stderr] = note: upstream crates may add new impl of trait `std::fmt::Display` for type `(dyn std::ops::Fn() -> std::boxed::Box<(dyn component::core::Component + 'static)> + 'static)` in future versions [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0119`. [INFO] [stderr] error: Could not compile `bar`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: unused import: `component::core::Component` [INFO] [stderr] --> src/bar.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use component::core::Component; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:40:27 [INFO] [stderr] | [INFO] [stderr] 40 | fn render(&self, &mut Bar); [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Bar` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:43:24 [INFO] [stderr] | [INFO] [stderr] 43 | impl Component for Box Box> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn() -> Box` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:43:36 [INFO] [stderr] | [INFO] [stderr] 43 | impl Component for Box Box> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:44:32 [INFO] [stderr] | [INFO] [stderr] 44 | fn render(&self, bar: &mut Bar) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Bar` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:45:20 [INFO] [stderr] | [INFO] [stderr] 45 | let c: Box = self(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:51:32 [INFO] [stderr] | [INFO] [stderr] 51 | fn render(&self, bar: &mut Bar) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Bar` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:57:23 [INFO] [stderr] | [INFO] [stderr] 57 | children: Vec> [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:61:34 [INFO] [stderr] | [INFO] [stderr] 61 | pub fn new(children: Vec>) -> ConcatComponent { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:67:32 [INFO] [stderr] | [INFO] [stderr] 67 | fn render(&self, bar: &mut Bar) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Bar` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:6:16 [INFO] [stderr] | [INFO] [stderr] 6 | child: Box [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:11:16 [INFO] [stderr] | [INFO] [stderr] 11 | child: Box [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:16:16 [INFO] [stderr] | [INFO] [stderr] 16 | child: Box [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:21:16 [INFO] [stderr] | [INFO] [stderr] 21 | child: Box [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:26:16 [INFO] [stderr] | [INFO] [stderr] 26 | child: Box [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:30:32 [INFO] [stderr] | [INFO] [stderr] 30 | fn render(&self, bar: &mut Bar) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Bar` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:38:32 [INFO] [stderr] | [INFO] [stderr] 38 | fn render(&self, bar: &mut Bar) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Bar` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:46:32 [INFO] [stderr] | [INFO] [stderr] 46 | fn render(&self, bar: &mut Bar) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Bar` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:54:32 [INFO] [stderr] | [INFO] [stderr] 54 | fn render(&self, bar: &mut Bar) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Bar` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:61:32 [INFO] [stderr] | [INFO] [stderr] 61 | fn render(&self, bar: &mut Bar) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Bar` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:67:45 [INFO] [stderr] | [INFO] [stderr] 67 | pub fn bg(color: T, child: Box) -> BgColor { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:71:45 [INFO] [stderr] | [INFO] [stderr] 71 | pub fn fg(color: T, child: Box) -> FgColor { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:75:44 [INFO] [stderr] | [INFO] [stderr] 75 | pub fn u(color: T, child: Box) -> UColor { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:79:33 [INFO] [stderr] | [INFO] [stderr] 79 | pub fn font(id: u64, child: Box) -> Font { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:83:30 [INFO] [stderr] | [INFO] [stderr] 83 | pub fn align_left(child: Box) -> Align { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:86:32 [INFO] [stderr] | [INFO] [stderr] 86 | pub fn align_center(child: Box) -> Align { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/format.rs:89:31 [INFO] [stderr] | [INFO] [stderr] 89 | pub fn align_right(child: Box) -> Align { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:30:41 [INFO] [stderr] | [INFO] [stderr] 30 | fn render(&self, bar : &mut Bar) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Bar` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:32:17 [INFO] [stderr] | [INFO] [stderr] 32 | let power = dynamic!{ [INFO] [stderr] | _________________- [INFO] [stderr] 33 | | init => power::PowerSource::new(), [INFO] [stderr] 34 | | render(data: power::PowerSource) => { [INFO] [stderr] 35 | | let (d, state) = data.get(); [INFO] [stderr] ... | [INFO] [stderr] 45 | | } [INFO] [stderr] 46 | | }; [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/main.rs:39:21 [INFO] [stderr] | [INFO] [stderr] 39 | (0.0...10.0, _) => "\u{00E211}", [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/main.rs:40:22 [INFO] [stderr] | [INFO] [stderr] 40 | (10.0...25.0, _) => "\u{00E1FD}", [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/main.rs:41:22 [INFO] [stderr] | [INFO] [stderr] 41 | (25.0...90.0, _) => "\u{00E1FE}", [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:44:13 [INFO] [stderr] | [INFO] [stderr] 44 | component!(bg(if d > 10.0 { BLUE } else { RED }) => [" ", sym, format!(" {} ", d)]) [INFO] [stderr] | ----------------------------------------------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:30:41 [INFO] [stderr] | [INFO] [stderr] 30 | fn render(&self, bar : &mut Bar) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Bar` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:47:17 [INFO] [stderr] | [INFO] [stderr] 47 | let bspwm = dynamic!{ [INFO] [stderr] | _________________- [INFO] [stderr] 48 | | init => bspwm::BspwmSource::new(), [INFO] [stderr] 49 | | render(data: bspwm::BspwmSource) => { [INFO] [stderr] 50 | | let d = data.get(); [INFO] [stderr] ... | [INFO] [stderr] 65 | | } [INFO] [stderr] 66 | | }; [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/main.rs:51:32 [INFO] [stderr] | [INFO] [stderr] 51 | let mut v: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:55:28 [INFO] [stderr] | [INFO] [stderr] 55 | => component!(bg(ORANGE) => [format!(" {} ", desktop.name)]), [INFO] [stderr] | --------------------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:57:28 [INFO] [stderr] | [INFO] [stderr] 57 | => component!(bg(CYAN) => [format!(" {} ", desktop.name)]), [INFO] [stderr] | ------------------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:59:28 [INFO] [stderr] | [INFO] [stderr] 59 | => component!(bg(GREEN) => [format!(" {} ", desktop.name)]), [INFO] [stderr] | -------------------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:61:28 [INFO] [stderr] | [INFO] [stderr] 61 | => component!(bg(BLUE) => [format!(" {} ", desktop.name)]) [INFO] [stderr] | ------------------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:30:41 [INFO] [stderr] | [INFO] [stderr] 30 | fn render(&self, bar : &mut Bar) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Bar` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:67:15 [INFO] [stderr] | [INFO] [stderr] 67 | let mpd = dynamic!{ [INFO] [stderr] | _______________- [INFO] [stderr] 68 | | init => mpd::MpdSource::new("localhost:6700"), [INFO] [stderr] 69 | | render(data: mpd::MpdSource) => { [INFO] [stderr] 70 | | let d = data.get(); [INFO] [stderr] ... | [INFO] [stderr] 96 | | } [INFO] [stderr] 97 | | }; [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:73:21 [INFO] [stderr] | [INFO] [stderr] 73 | component!(bg(ORANGE) => [" \u{00E0B3} "]), [INFO] [stderr] | ------------------------------------------ in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:75:21 [INFO] [stderr] | [INFO] [stderr] 75 | component!(bg(RED) => [format!(" \u{00E0B3}{} ", e)]), [INFO] [stderr] | ----------------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:80:45 [INFO] [stderr] | [INFO] [stderr] 80 | mpd::State::Play => component!(bg(BLUE) => [ [INFO] [stderr] | _____________________________________________- [INFO] [stderr] 81 | | " \u{00E09A} ", match *song { [INFO] [stderr] 82 | | Some(ref s) => { [INFO] [stderr] 83 | | let file = s.file.clone() + " "; [INFO] [stderr] ... | [INFO] [stderr] 90 | | } [INFO] [stderr] 91 | | ]), [INFO] [stderr] | |__________________________- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:87:37 [INFO] [stderr] | [INFO] [stderr] 87 | component![format!("{} ", out)] [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:89:41 [INFO] [stderr] | [INFO] [stderr] 89 | None => component!["-"] [INFO] [stderr] | --------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:92:30 [INFO] [stderr] | [INFO] [stderr] 92 | _ => component!(bg(BLUE) => [" \u{00E057} "]) [INFO] [stderr] | ---------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:21:21 [INFO] [stderr] | [INFO] [stderr] 21 | let c : Box Box> = Box::new(|| Box::new($e)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn() -> Box` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:98:16 [INFO] [stderr] | [INFO] [stderr] 98 | let date = lazy!(time::strftime("\u{00E015} %a %m %b %H:%M:%S", &time::now()).unwrap()); [INFO] [stderr] | ---------------------------------------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:21:33 [INFO] [stderr] | [INFO] [stderr] 21 | let c : Box Box> = Box::new(|| Box::new($e)); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:98:16 [INFO] [stderr] | [INFO] [stderr] 98 | let date = lazy!(time::strftime("\u{00E015} %a %m %b %H:%M:%S", &time::now()).unwrap()); [INFO] [stderr] | ---------------------------------------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:21:21 [INFO] [stderr] | [INFO] [stderr] 21 | let c : Box Box> = Box::new(|| Box::new($e)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn() -> Box` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:99:15 [INFO] [stderr] | [INFO] [stderr] 99 | let vol = lazy!(component!(bg(BLUE) => [" \u{00E152} ", format!("{:.0} ", alsa::get_volume())])); [INFO] [stderr] | -------------------------------------------------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:21:33 [INFO] [stderr] | [INFO] [stderr] 21 | let c : Box Box> = Box::new(|| Box::new($e)); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:99:15 [INFO] [stderr] | [INFO] [stderr] 99 | let vol = lazy!(component!(bg(BLUE) => [" \u{00E152} ", format!("{:.0} ", alsa::get_volume())])); [INFO] [stderr] | -------------------------------------------------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:99:21 [INFO] [stderr] | [INFO] [stderr] 99 | let vol = lazy!(component!(bg(BLUE) => [" \u{00E152} ", format!("{:.0} ", alsa::get_volume())])); [INFO] [stderr] | ------------------------------------------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:100:16 [INFO] [stderr] | [INFO] [stderr] 100 | let tree = component![ [INFO] [stderr] | ________________- [INFO] [stderr] 101 | | component!(align_left => [bspwm]), [INFO] [stderr] 102 | | component!(align_center => [date]), [INFO] [stderr] 103 | | component!(align_right => [mpd, " ", power, " ", vol, " "]) [INFO] [stderr] 104 | | ]; [INFO] [stderr] | |_____- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:101:9 [INFO] [stderr] | [INFO] [stderr] 101 | component!(align_left => [bspwm]), [INFO] [stderr] | --------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:102:9 [INFO] [stderr] | [INFO] [stderr] 102 | component!(align_center => [date]), [INFO] [stderr] | ---------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/component/core.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | let mut vec: Vec> = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Component` [INFO] [stderr] | [INFO] [stderr] ::: src/main.rs:103:9 [INFO] [stderr] | [INFO] [stderr] 103 | component!(align_right => [mpd, " ", power, " ", vol, " "]) [INFO] [stderr] | ----------------------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::thread::sleep_ms': replaced by `std::thread::sleep` [INFO] [stderr] --> src/main.rs:108:9 [INFO] [stderr] | [INFO] [stderr] 108 | thread::sleep_ms(200); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::thread::sleep_ms': replaced by `std::thread::sleep` [INFO] [stderr] --> src/source/mpd.rs:60:17 [INFO] [stderr] | [INFO] [stderr] 60 | thread::sleep_ms(2000); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0119]: conflicting implementations of trait `component::core::Component` for type `std::boxed::Box<(dyn std::ops::Fn() -> std::boxed::Box<(dyn component::core::Component + 'static)> + 'static)>`: [INFO] [stderr] --> src/component/core.rs:50:1 [INFO] [stderr] | [INFO] [stderr] 43 | impl Component for Box Box> { [INFO] [stderr] | ---------------------------------------------- first implementation here [INFO] [stderr] ... [INFO] [stderr] 50 | impl Component for T { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `std::boxed::Box<(dyn std::ops::Fn() -> std::boxed::Box<(dyn component::core::Component + 'static)> + 'static)>` [INFO] [stderr] | [INFO] [stderr] = note: upstream crates may add new impl of trait `std::fmt::Display` for type `(dyn std::ops::Fn() -> std::boxed::Box<(dyn component::core::Component + 'static)> + 'static)` in future versions [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0119`. [INFO] [stderr] error: Could not compile `bar`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "a277165ec6b60ba160b2b8436139fb4ce7831fa46e61e1abd66f4b97cd2cc1f9"` [INFO] running `"docker" "rm" "-f" "a277165ec6b60ba160b2b8436139fb4ce7831fa46e61e1abd66f4b97cd2cc1f9"` [INFO] [stdout] a277165ec6b60ba160b2b8436139fb4ce7831fa46e61e1abd66f4b97cd2cc1f9