[INFO] cloning repository https://github.com/1sra3l/wm-menus
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/1sra3l/wm-menus" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2F1sra3l%2Fwm-menus", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2F1sra3l%2Fwm-menus'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 69fd5e3bb4b539da0f2ce9b32f338664ab702013
[INFO] testing 1sra3l/wm-menus against try#9f93af291970322f4f1c6315ccde4d7078201159 for pr-146098-6
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2F1sra3l%2Fwm-menus" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/1sra3l/wm-menus
[INFO] finished tweaking git repo https://github.com/1sra3l/wm-menus
[INFO] tweaked toml for git repo https://github.com/1sra3l/wm-menus written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/1sra3l/wm-menus on toolchain 9f93af291970322f4f1c6315ccde4d7078201159
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9f93af291970322f4f1c6315ccde4d7078201159" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/1sra3l/wm-menus already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9f93af291970322f4f1c6315ccde4d7078201159" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+9f93af291970322f4f1c6315ccde4d7078201159" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 141f9fdccb1bc31d9ec8411cd71d508cc1b69239b6d53931fab4f4e97e024492
[INFO] running `Command { std: "docker" "start" "-a" "141f9fdccb1bc31d9ec8411cd71d508cc1b69239b6d53931fab4f4e97e024492", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "141f9fdccb1bc31d9ec8411cd71d508cc1b69239b6d53931fab4f4e97e024492", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "141f9fdccb1bc31d9ec8411cd71d508cc1b69239b6d53931fab4f4e97e024492", kill_on_drop: false }`
[INFO] [stdout] 141f9fdccb1bc31d9ec8411cd71d508cc1b69239b6d53931fab4f4e97e024492
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+9f93af291970322f4f1c6315ccde4d7078201159" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 26825ddff9840fb2cc1a44bd49f5064e791969f7b410024024a8e45857ec42c3
[INFO] running `Command { std: "docker" "start" "-a" "26825ddff9840fb2cc1a44bd49f5064e791969f7b410024024a8e45857ec42c3", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.36
[INFO] [stderr]    Compiling unicode-xid v0.2.2
[INFO] [stderr]    Compiling syn v1.0.89
[INFO] [stderr]    Compiling memchr v2.4.1
[INFO] [stderr]    Compiling serde_derive v1.0.136
[INFO] [stderr]    Compiling libc v0.2.121
[INFO] [stderr]    Compiling serde v1.0.136
[INFO] [stderr]    Compiling linked-hash-map v0.5.4
[INFO] [stderr]    Compiling hashbrown v0.11.2
[INFO] [stderr]    Compiling termcolor v1.1.3
[INFO] [stderr]    Compiling strsim v0.10.0
[INFO] [stderr]    Compiling textwrap v0.15.0
[INFO] [stderr]    Compiling tini v1.3.0
[INFO] [stderr]    Compiling indexmap v1.8.0
[INFO] [stderr]    Compiling yaml-rust v0.4.5
[INFO] [stderr]    Compiling os_str_bytes v6.0.0
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling clap v3.1.6
[INFO] [stderr]    Compiling quote v1.0.16
[INFO] [stderr]    Compiling quick-xml v0.21.0
[INFO] [stderr]    Compiling xdgkit v3.2.3
[INFO] [stderr]    Compiling wm-menus v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `generate_dir_list` and `user_theme`
[INFO] [stdout]  --> src/places.rs:6:47
[INFO] [stdout]   |
[INFO] [stdout] 6 | use xdgkit::icon_finder::{multiple_find_icon, generate_dir_list, user_theme, DirList};
[INFO] [stdout]   |                                               ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `cache_home`, `config_home`, and `home`
[INFO] [stdout]  --> src/apps.rs:4:53
[INFO] [stdout]   |
[INFO] [stdout] 4 | use xdgkit::basedir::{applications, convert_to_vec, cache_home, config_home, home};
[INFO] [stdout]   |                                                     ^^^^^^^^^^  ^^^^^^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufRead` and `BufReader`
[INFO] [stdout]  --> src/apps.rs:8:22
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::io::{Write, BufRead, BufReader};
[INFO] [stdout]   |                      ^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> src/places.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |       return name.to_string();
[INFO] [stdout]    |       ----------------------- any code following this expression is unreachable
[INFO] [stdout] 12 | /     let icon = match multiple_find_icon(name.to_string(), size, scale, dir_list_vector.clone(), theme.clone()) {
[INFO] [stdout] 13 | |         Some(i) => i,
[INFO] [stdout] 14 | |         None => return "".to_string(),
[INFO] [stdout] 15 | |     };
[INFO] [stdout]    | |______^ unreachable statement
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/apps.rs:230:9
[INFO] [stdout]     |
[INFO] [stdout] 222 | /         match std::fs::File::write(&mut file,
[INFO] [stdout] 223 | |                                     &menu.clone().into_bytes()) {
[INFO] [stdout] 224 | |             Err(e) => {
[INFO] [stdout] 225 | |                 println!("Error:{}", e);
[INFO] [stdout] ...   |
[INFO] [stdout] 228 | |             Ok(_) => return menu,
[INFO] [stdout] 229 | |         };
[INFO] [stdout]     | |_________- any code following this `match` expression is unreachable, as all arms diverge
[INFO] [stdout] 230 |           menu
[INFO] [stdout]     |           ^^^^ unreachable expression
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/apps.rs:254:9
[INFO] [stdout]     |
[INFO] [stdout] 246 | /         match std::fs::File::write(&mut file,
[INFO] [stdout] 247 | |                                     &menu.clone().into_bytes()) {
[INFO] [stdout] 248 | |             Err(e) => {
[INFO] [stdout] 249 | |                 println!("Error:{}", e);
[INFO] [stdout] ...   |
[INFO] [stdout] 252 | |             Ok(_) => return menu,
[INFO] [stdout] 253 | |         };
[INFO] [stdout]     | |_________- any code following this `match` expression is unreachable, as all arms diverge
[INFO] [stdout] 254 |           menu
[INFO] [stdout]     |           ^^^^ unreachable expression
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `size`
[INFO] [stdout]   --> src/places.rs:10:27
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn icon_getter(name:&str, size:i32, scale:i32, dir_list_vector:Vec<DirList>, theme:IconTheme) -> String {
[INFO] [stdout]    |                           ^^^^ help: if this is intentional, prefix it with an underscore: `_size`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `scale`
[INFO] [stdout]   --> src/places.rs:10:37
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn icon_getter(name:&str, size:i32, scale:i32, dir_list_vector:Vec<DirList>, theme:IconTheme) -> String {
[INFO] [stdout]    |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_scale`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dir_list_vector`
[INFO] [stdout]   --> src/places.rs:10:48
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn icon_getter(name:&str, size:i32, scale:i32, dir_list_vector:Vec<DirList>, theme:IconTheme) -> String {
[INFO] [stdout]    |                                                ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dir_list_vector`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `theme`
[INFO] [stdout]   --> src/places.rs:10:78
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn icon_getter(name:&str, size:i32, scale:i32, dir_list_vector:Vec<DirList>, theme:IconTheme) -> String {
[INFO] [stdout]    |                                                                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_theme`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `icon`
[INFO] [stdout]   --> src/places.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let icon = match multiple_find_icon(name.to_string(), size, scale, dir_list_vector.clone(), theme.clone()) {
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_icon`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/places.rs:13:14
[INFO] [stdout]    |
[INFO] [stdout] 13 |         Some(i) => i,
[INFO] [stdout]    |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `icon`
[INFO] [stdout]   --> src/places.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |     let icon = match std::fs::canonicalize(icon) {
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_icon`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/places.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 |         Ok(i) => i,
[INFO] [stdout]    |            ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `icon`
[INFO] [stdout]   --> src/places.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |     let icon = match icon.to_str() {
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_icon`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/places.rs:21:14
[INFO] [stdout]    |
[INFO] [stdout] 21 |         Some(i) => i,
[INFO] [stdout]    |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `return_string`
[INFO] [stdout]    --> src/places.rs:132:9
[INFO] [stdout]     |
[INFO] [stdout] 132 |     let return_string:String;
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_return_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/places.rs:182:9
[INFO] [stdout]     |
[INFO] [stdout] 182 |     let mut return_string = String::new();
[INFO] [stdout]     |         ----^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `return_string`
[INFO] [stdout]    --> src/places.rs:182:9
[INFO] [stdout]     |
[INFO] [stdout] 182 |     let mut return_string = String::new();
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_return_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `position`
[INFO] [stdout]   --> src/menu.rs:86:13
[INFO] [stdout]    |
[INFO] [stdout] 86 |         let position = match action.rfind(" %"){
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `position`
[INFO] [stdout]    --> src/menu.rs:105:13
[INFO] [stdout]     |
[INFO] [stdout] 105 |         let position = match action.rfind(" %"){
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/apps.rs:119:33
[INFO] [stdout]     |
[INFO] [stdout] 119 | ...                   for mut menu in &mut menus {
[INFO] [stdout]     |                           ----^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `theme`
[INFO] [stdout]    --> src/apps.rs:209:13
[INFO] [stdout]     |
[INFO] [stdout] 209 |         let theme:IconTheme = theme.unwrap();
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_theme`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `icon_getter` is never used
[INFO] [stdout]   --> src/places.rs:10:4
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn icon_getter(name:&str, size:i32, scale:i32, dir_list_vector:Vec<DirList>, theme:IconTheme) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `program_item` is never used
[INFO] [stdout]   --> src/places.rs:96:4
[INFO] [stdout]    |
[INFO] [stdout] 96 | fn program_item(icon:&str, label:&str, dir:&str) -> Item {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `make_menu` is never used
[INFO] [stdout]    --> src/places.rs:129:4
[INFO] [stdout]     |
[INFO] [stdout] 129 | fn make_menu<P: AsRef<Path>>(dir: P, icon:&str, label:&str) -> Menu where P: std::fmt::Display {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sub_menu_menu` is never used
[INFO] [stdout]    --> src/places.rs:167:4
[INFO] [stdout]     |
[INFO] [stdout] 167 | fn sub_menu_menu<P: AsRef<Path>>(dir: P, subdirectories:bool) -> Menu where P: std::fmt::Display {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `gtk_bookmarks_menu` is never used
[INFO] [stdout]    --> src/places.rs:261:8
[INFO] [stdout]     |
[INFO] [stdout] 261 | pub fn gtk_bookmarks_menu() -> Menu {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/menu.rs:75:12
[INFO] [stdout]    |
[INFO] [stdout] 74 | impl Item {
[INFO] [stdout]    | --------- associated function in this implementation
[INFO] [stdout] 75 |     pub fn new(icon:&str, name:&str, action:&str) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `icon` are never read
[INFO] [stdout]   --> src/apps.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub struct AppMenu {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 66 |     pub name:String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 67 |     pub icon:String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 17.25s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: quick-xml v0.21.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 4`
[INFO] running `Command { std: "docker" "inspect" "26825ddff9840fb2cc1a44bd49f5064e791969f7b410024024a8e45857ec42c3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "26825ddff9840fb2cc1a44bd49f5064e791969f7b410024024a8e45857ec42c3", kill_on_drop: false }`
[INFO] [stdout] 26825ddff9840fb2cc1a44bd49f5064e791969f7b410024024a8e45857ec42c3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+9f93af291970322f4f1c6315ccde4d7078201159" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e9923e50e1d90648b021816f45c4af3adb60a10c6d269d74dddadccb9afa3dc0
[INFO] running `Command { std: "docker" "start" "-a" "e9923e50e1d90648b021816f45c4af3adb60a10c6d269d74dddadccb9afa3dc0", kill_on_drop: false }`
[INFO] [stderr]    Compiling wm-menus v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `generate_dir_list` and `user_theme`
[INFO] [stdout]  --> src/places.rs:6:47
[INFO] [stdout]   |
[INFO] [stdout] 6 | use xdgkit::icon_finder::{multiple_find_icon, generate_dir_list, user_theme, DirList};
[INFO] [stdout]   |                                               ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `cache_home`, `config_home`, and `home`
[INFO] [stdout]  --> src/apps.rs:4:53
[INFO] [stdout]   |
[INFO] [stdout] 4 | use xdgkit::basedir::{applications, convert_to_vec, cache_home, config_home, home};
[INFO] [stdout]   |                                                     ^^^^^^^^^^  ^^^^^^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufRead` and `BufReader`
[INFO] [stdout]  --> src/apps.rs:8:22
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::io::{Write, BufRead, BufReader};
[INFO] [stdout]   |                      ^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> src/places.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |       return name.to_string();
[INFO] [stdout]    |       ----------------------- any code following this expression is unreachable
[INFO] [stdout] 12 | /     let icon = match multiple_find_icon(name.to_string(), size, scale, dir_list_vector.clone(), theme.clone()) {
[INFO] [stdout] 13 | |         Some(i) => i,
[INFO] [stdout] 14 | |         None => return "".to_string(),
[INFO] [stdout] 15 | |     };
[INFO] [stdout]    | |______^ unreachable statement
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/apps.rs:230:9
[INFO] [stdout]     |
[INFO] [stdout] 222 | /         match std::fs::File::write(&mut file,
[INFO] [stdout] 223 | |                                     &menu.clone().into_bytes()) {
[INFO] [stdout] 224 | |             Err(e) => {
[INFO] [stdout] 225 | |                 println!("Error:{}", e);
[INFO] [stdout] ...   |
[INFO] [stdout] 228 | |             Ok(_) => return menu,
[INFO] [stdout] 229 | |         };
[INFO] [stdout]     | |_________- any code following this `match` expression is unreachable, as all arms diverge
[INFO] [stdout] 230 |           menu
[INFO] [stdout]     |           ^^^^ unreachable expression
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/apps.rs:254:9
[INFO] [stdout]     |
[INFO] [stdout] 246 | /         match std::fs::File::write(&mut file,
[INFO] [stdout] 247 | |                                     &menu.clone().into_bytes()) {
[INFO] [stdout] 248 | |             Err(e) => {
[INFO] [stdout] 249 | |                 println!("Error:{}", e);
[INFO] [stdout] ...   |
[INFO] [stdout] 252 | |             Ok(_) => return menu,
[INFO] [stdout] 253 | |         };
[INFO] [stdout]     | |_________- any code following this `match` expression is unreachable, as all arms diverge
[INFO] [stdout] 254 |           menu
[INFO] [stdout]     |           ^^^^ unreachable expression
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `size`
[INFO] [stdout]   --> src/places.rs:10:27
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn icon_getter(name:&str, size:i32, scale:i32, dir_list_vector:Vec<DirList>, theme:IconTheme) -> String {
[INFO] [stdout]    |                           ^^^^ help: if this is intentional, prefix it with an underscore: `_size`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `scale`
[INFO] [stdout]   --> src/places.rs:10:37
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn icon_getter(name:&str, size:i32, scale:i32, dir_list_vector:Vec<DirList>, theme:IconTheme) -> String {
[INFO] [stdout]    |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_scale`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dir_list_vector`
[INFO] [stdout]   --> src/places.rs:10:48
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn icon_getter(name:&str, size:i32, scale:i32, dir_list_vector:Vec<DirList>, theme:IconTheme) -> String {
[INFO] [stdout]    |                                                ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dir_list_vector`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `theme`
[INFO] [stdout]   --> src/places.rs:10:78
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn icon_getter(name:&str, size:i32, scale:i32, dir_list_vector:Vec<DirList>, theme:IconTheme) -> String {
[INFO] [stdout]    |                                                                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_theme`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `icon`
[INFO] [stdout]   --> src/places.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let icon = match multiple_find_icon(name.to_string(), size, scale, dir_list_vector.clone(), theme.clone()) {
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_icon`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/places.rs:13:14
[INFO] [stdout]    |
[INFO] [stdout] 13 |         Some(i) => i,
[INFO] [stdout]    |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `icon`
[INFO] [stdout]   --> src/places.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |     let icon = match std::fs::canonicalize(icon) {
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_icon`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/places.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 |         Ok(i) => i,
[INFO] [stdout]    |            ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `icon`
[INFO] [stdout]   --> src/places.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |     let icon = match icon.to_str() {
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_icon`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/places.rs:21:14
[INFO] [stdout]    |
[INFO] [stdout] 21 |         Some(i) => i,
[INFO] [stdout]    |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `return_string`
[INFO] [stdout]    --> src/places.rs:132:9
[INFO] [stdout]     |
[INFO] [stdout] 132 |     let return_string:String;
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_return_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/places.rs:182:9
[INFO] [stdout]     |
[INFO] [stdout] 182 |     let mut return_string = String::new();
[INFO] [stdout]     |         ----^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `return_string`
[INFO] [stdout]    --> src/places.rs:182:9
[INFO] [stdout]     |
[INFO] [stdout] 182 |     let mut return_string = String::new();
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_return_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `position`
[INFO] [stdout]   --> src/menu.rs:86:13
[INFO] [stdout]    |
[INFO] [stdout] 86 |         let position = match action.rfind(" %"){
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `position`
[INFO] [stdout]    --> src/menu.rs:105:13
[INFO] [stdout]     |
[INFO] [stdout] 105 |         let position = match action.rfind(" %"){
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/apps.rs:119:33
[INFO] [stdout]     |
[INFO] [stdout] 119 | ...                   for mut menu in &mut menus {
[INFO] [stdout]     |                           ----^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `theme`
[INFO] [stdout]    --> src/apps.rs:209:13
[INFO] [stdout]     |
[INFO] [stdout] 209 |         let theme:IconTheme = theme.unwrap();
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_theme`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `icon_getter` is never used
[INFO] [stdout]   --> src/places.rs:10:4
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn icon_getter(name:&str, size:i32, scale:i32, dir_list_vector:Vec<DirList>, theme:IconTheme) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `program_item` is never used
[INFO] [stdout]   --> src/places.rs:96:4
[INFO] [stdout]    |
[INFO] [stdout] 96 | fn program_item(icon:&str, label:&str, dir:&str) -> Item {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `make_menu` is never used
[INFO] [stdout]    --> src/places.rs:129:4
[INFO] [stdout]     |
[INFO] [stdout] 129 | fn make_menu<P: AsRef<Path>>(dir: P, icon:&str, label:&str) -> Menu where P: std::fmt::Display {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sub_menu_menu` is never used
[INFO] [stdout]    --> src/places.rs:167:4
[INFO] [stdout]     |
[INFO] [stdout] 167 | fn sub_menu_menu<P: AsRef<Path>>(dir: P, subdirectories:bool) -> Menu where P: std::fmt::Display {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `gtk_bookmarks_menu` is never used
[INFO] [stdout]    --> src/places.rs:261:8
[INFO] [stdout]     |
[INFO] [stdout] 261 | pub fn gtk_bookmarks_menu() -> Menu {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/menu.rs:75:12
[INFO] [stdout]    |
[INFO] [stdout] 74 | impl Item {
[INFO] [stdout]    | --------- associated function in this implementation
[INFO] [stdout] 75 |     pub fn new(icon:&str, name:&str, action:&str) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `icon` are never read
[INFO] [stdout]   --> src/apps.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub struct AppMenu {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 66 |     pub name:String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 67 |     pub icon:String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.45s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: quick-xml v0.21.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 4`
[INFO] running `Command { std: "docker" "inspect" "e9923e50e1d90648b021816f45c4af3adb60a10c6d269d74dddadccb9afa3dc0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e9923e50e1d90648b021816f45c4af3adb60a10c6d269d74dddadccb9afa3dc0", kill_on_drop: false }`
[INFO] [stdout] e9923e50e1d90648b021816f45c4af3adb60a10c6d269d74dddadccb9afa3dc0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+9f93af291970322f4f1c6315ccde4d7078201159" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 58e75ea9ea689ff304e303bbb23ec9c56860bc1365773becf8ab1c9e3acfe419
[INFO] running `Command { std: "docker" "start" "-a" "58e75ea9ea689ff304e303bbb23ec9c56860bc1365773becf8ab1c9e3acfe419", kill_on_drop: false }`
[INFO] [stderr] warning: unused imports: `generate_dir_list` and `user_theme`
[INFO] [stdout] 
[INFO] [stderr]  --> src/places.rs:6:47
[INFO] [stdout] running 0 tests
[INFO] [stderr]   |
[INFO] [stdout] 
[INFO] [stderr] 6 | use xdgkit::icon_finder::{multiple_find_icon, generate_dir_list, user_theme, DirList};
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stderr]   |                                               ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `cache_home`, `config_home`, and `home`
[INFO] [stderr]  --> src/apps.rs:4:53
[INFO] [stderr]   |
[INFO] [stderr] 4 | use xdgkit::basedir::{applications, convert_to_vec, cache_home, config_home, home};
[INFO] [stderr]   |                                                     ^^^^^^^^^^  ^^^^^^^^^^^  ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `BufRead` and `BufReader`
[INFO] [stderr]  --> src/apps.rs:8:22
[INFO] [stderr]   |
[INFO] [stderr] 8 | use std::io::{Write, BufRead, BufReader};
[INFO] [stderr]   |                      ^^^^^^^  ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable statement
[INFO] [stderr]   --> src/places.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 11 |       return name.to_string();
[INFO] [stderr]    |       ----------------------- any code following this expression is unreachable
[INFO] [stderr] 12 | /     let icon = match multiple_find_icon(name.to_string(), size, scale, dir_list_vector.clone(), theme.clone()) {
[INFO] [stderr] 13 | |         Some(i) => i,
[INFO] [stderr] 14 | |         None => return "".to_string(),
[INFO] [stderr] 15 | |     };
[INFO] [stderr]    | |______^ unreachable statement
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable expression
[INFO] [stderr]    --> src/apps.rs:230:9
[INFO] [stderr]     |
[INFO] [stderr] 222 | /         match std::fs::File::write(&mut file,
[INFO] [stderr] 223 | |                                     &menu.clone().into_bytes()) {
[INFO] [stderr] 224 | |             Err(e) => {
[INFO] [stderr] 225 | |                 println!("Error:{}", e);
[INFO] [stderr] ...   |
[INFO] [stderr] 228 | |             Ok(_) => return menu,
[INFO] [stderr] 229 | |         };
[INFO] [stderr]     | |_________- any code following this `match` expression is unreachable, as all arms diverge
[INFO] [stderr] 230 |           menu
[INFO] [stderr]     |           ^^^^ unreachable expression
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable expression
[INFO] [stderr]    --> src/apps.rs:254:9
[INFO] [stderr]     |
[INFO] [stderr] 246 | /         match std::fs::File::write(&mut file,
[INFO] [stderr] 247 | |                                     &menu.clone().into_bytes()) {
[INFO] [stderr] 248 | |             Err(e) => {
[INFO] [stderr] 249 | |                 println!("Error:{}", e);
[INFO] [stderr] ...   |
[INFO] [stderr] 252 | |             Ok(_) => return menu,
[INFO] [stderr] 253 | |         };
[INFO] [stderr]     | |_________- any code following this `match` expression is unreachable, as all arms diverge
[INFO] [stderr] 254 |           menu
[INFO] [stderr]     |           ^^^^ unreachable expression
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `size`
[INFO] [stderr]   --> src/places.rs:10:27
[INFO] [stderr]    |
[INFO] [stderr] 10 | fn icon_getter(name:&str, size:i32, scale:i32, dir_list_vector:Vec<DirList>, theme:IconTheme) -> String {
[INFO] [stderr]    |                           ^^^^ help: if this is intentional, prefix it with an underscore: `_size`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `scale`
[INFO] [stderr]   --> src/places.rs:10:37
[INFO] [stderr]    |
[INFO] [stderr] 10 | fn icon_getter(name:&str, size:i32, scale:i32, dir_list_vector:Vec<DirList>, theme:IconTheme) -> String {
[INFO] [stderr]    |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_scale`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `dir_list_vector`
[INFO] [stderr]   --> src/places.rs:10:48
[INFO] [stderr]    |
[INFO] [stderr] 10 | fn icon_getter(name:&str, size:i32, scale:i32, dir_list_vector:Vec<DirList>, theme:IconTheme) -> String {
[INFO] [stderr]    |                                                ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dir_list_vector`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `theme`
[INFO] [stderr]   --> src/places.rs:10:78
[INFO] [stderr]    |
[INFO] [stderr] 10 | fn icon_getter(name:&str, size:i32, scale:i32, dir_list_vector:Vec<DirList>, theme:IconTheme) -> String {
[INFO] [stderr]    |                                                                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_theme`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `icon`
[INFO] [stderr]   --> src/places.rs:12:9
[INFO] [stderr]    |
[INFO] [stderr] 12 |     let icon = match multiple_find_icon(name.to_string(), size, scale, dir_list_vector.clone(), theme.clone()) {
[INFO] [stderr]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_icon`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `i`
[INFO] [stderr]   --> src/places.rs:13:14
[INFO] [stderr]    |
[INFO] [stderr] 13 |         Some(i) => i,
[INFO] [stderr]    |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `icon`
[INFO] [stderr]   --> src/places.rs:16:9
[INFO] [stderr]    |
[INFO] [stderr] 16 |     let icon = match std::fs::canonicalize(icon) {
[INFO] [stderr]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_icon`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `i`
[INFO] [stderr]   --> src/places.rs:17:12
[INFO] [stderr]    |
[INFO] [stderr] 17 |         Ok(i) => i,
[INFO] [stderr]    |            ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `icon`
[INFO] [stderr]   --> src/places.rs:20:9
[INFO] [stderr]    |
[INFO] [stderr] 20 |     let icon = match icon.to_str() {
[INFO] [stderr]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_icon`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `i`
[INFO] [stderr]   --> src/places.rs:21:14
[INFO] [stderr]    |
[INFO] [stderr] 21 |         Some(i) => i,
[INFO] [stderr]    |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `return_string`
[INFO] [stderr]    --> src/places.rs:132:9
[INFO] [stderr]     |
[INFO] [stderr] 132 |     let return_string:String;
[INFO] [stderr]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_return_string`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/places.rs:182:9
[INFO] [stderr]     |
[INFO] [stderr] 182 |     let mut return_string = String::new();
[INFO] [stderr]     |         ----^^^^^^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `return_string`
[INFO] [stderr]    --> src/places.rs:182:9
[INFO] [stderr]     |
[INFO] [stderr] 182 |     let mut return_string = String::new();
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_return_string`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `position`
[INFO] [stderr]   --> src/menu.rs:86:13
[INFO] [stderr]    |
[INFO] [stderr] 86 |         let position = match action.rfind(" %"){
[INFO] [stderr]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `position`
[INFO] [stderr]    --> src/menu.rs:105:13
[INFO] [stderr]     |
[INFO] [stderr] 105 |         let position = match action.rfind(" %"){
[INFO] [stderr]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/apps.rs:119:33
[INFO] [stderr]     |
[INFO] [stderr] 119 | ...                   for mut menu in &mut menus {
[INFO] [stderr]     |                           ----^^^^
[INFO] [stderr]     |                           |
[INFO] [stderr]     |                           help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `theme`
[INFO] [stderr]    --> src/apps.rs:209:13
[INFO] [stderr]     |
[INFO] [stderr] 209 |         let theme:IconTheme = theme.unwrap();
[INFO] [stderr]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_theme`
[INFO] [stderr] 
[INFO] [stderr] warning: function `icon_getter` is never used
[INFO] [stderr]   --> src/places.rs:10:4
[INFO] [stderr]    |
[INFO] [stderr] 10 | fn icon_getter(name:&str, size:i32, scale:i32, dir_list_vector:Vec<DirList>, theme:IconTheme) -> String {
[INFO] [stderr]    |    ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `program_item` is never used
[INFO] [stderr]   --> src/places.rs:96:4
[INFO] [stderr]    |
[INFO] [stderr] 96 | fn program_item(icon:&str, label:&str, dir:&str) -> Item {
[INFO] [stderr]    |    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `make_menu` is never used
[INFO] [stderr]    --> src/places.rs:129:4
[INFO] [stderr]     |
[INFO] [stderr] 129 | fn make_menu<P: AsRef<Path>>(dir: P, icon:&str, label:&str) -> Menu where P: std::fmt::Display {
[INFO] [stderr]     |    ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `sub_menu_menu` is never used
[INFO] [stderr]    --> src/places.rs:167:4
[INFO] [stderr]     |
[INFO] [stderr] 167 | fn sub_menu_menu<P: AsRef<Path>>(dir: P, subdirectories:bool) -> Menu where P: std::fmt::Display {
[INFO] [stderr]     |    ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `gtk_bookmarks_menu` is never used
[INFO] [stderr]    --> src/places.rs:261:8
[INFO] [stderr]     |
[INFO] [stderr] 261 | pub fn gtk_bookmarks_menu() -> Menu {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/menu.rs:75:12
[INFO] [stderr]    |
[INFO] [stderr] 74 | impl Item {
[INFO] [stderr]    | --------- associated function in this implementation
[INFO] [stderr] 75 |     pub fn new(icon:&str, name:&str, action:&str) -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `name` and `icon` are never read
[INFO] [stderr]   --> src/apps.rs:66:9
[INFO] [stderr]    |
[INFO] [stderr] 65 | pub struct AppMenu {
[INFO] [stderr]    |            ------- fields in this struct
[INFO] [stderr] 66 |     pub name:String,
[INFO] [stderr]    |         ^^^^
[INFO] [stderr] 67 |     pub icon:String,
[INFO] [stderr]    |         ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `wm-menus` (bin "wm-menus" test) generated 30 warnings (run `cargo fix --bin "wm-menus" -p wm-menus --tests` to apply 20 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.09s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: quick-xml v0.21.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 4`
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/wm_menus-429a2f1f59660075)
[INFO] running `Command { std: "docker" "inspect" "58e75ea9ea689ff304e303bbb23ec9c56860bc1365773becf8ab1c9e3acfe419", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "58e75ea9ea689ff304e303bbb23ec9c56860bc1365773becf8ab1c9e3acfe419", kill_on_drop: false }`
[INFO] [stdout] 58e75ea9ea689ff304e303bbb23ec9c56860bc1365773becf8ab1c9e3acfe419
