[INFO] cloning repository https://github.com/tailhook/lithos
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/tailhook/lithos" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftailhook%2Flithos", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftailhook%2Flithos'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] eaf420161293864dbecd435266b73635f1ce9bb0
[INFO] testing tailhook/lithos against 1.75.0 for beta-1.76-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftailhook%2Flithos" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/tailhook/lithos on toolchain 1.75.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.75.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/tailhook/lithos
[INFO] finished tweaking git repo https://github.com/tailhook/lithos
[INFO] tweaked toml for git repo https://github.com/tailhook/lithos written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/tailhook/lithos already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.75.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded unix_socket v0.5.0
[INFO] [stderr]   Downloaded scan_dir v0.3.3
[INFO] [stderr]   Downloaded ipnetwork v0.13.0
[INFO] [stderr]   Downloaded syslog v3.3.0
[INFO] [stderr]   Downloaded structopt-derive v0.2.10
[INFO] [stderr]   Downloaded wincolor v1.0.0
[INFO] [stderr]   Downloaded libcantal v0.3.2
[INFO] [stderr]   Downloaded termcolor v1.0.1
[INFO] [stderr]   Downloaded digest v0.7.5
[INFO] [stderr]   Downloaded atomic v0.3.4
[INFO] [stderr]   Downloaded humannum v0.1.0
[INFO] [stderr]   Downloaded structopt v0.2.10
[INFO] [stderr]   Downloaded quire v0.4.1
[INFO] [stderr]   Downloaded libmount v0.1.11
[INFO] [stderr]   Downloaded proc-macro2 v0.4.12
[INFO] [stderr]   Downloaded ssh-keys v0.1.3
[INFO] [stderr]   Downloaded fern v0.4.4
[INFO] [stderr]   Downloaded unshare v0.5.0
[INFO] [stderr]   Downloaded env_logger v0.5.12
[INFO] [stderr]   Downloaded blake2 v0.7.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.75.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 55277d26f79719a172846833ac0ecfe951ba679bec70583229424451f8a3de82
[INFO] running `Command { std: "docker" "start" "-a" "55277d26f79719a172846833ac0ecfe951ba679bec70583229424451f8a3de82", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "55277d26f79719a172846833ac0ecfe951ba679bec70583229424451f8a3de82", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "55277d26f79719a172846833ac0ecfe951ba679bec70583229424451f8a3de82", kill_on_drop: false }`
[INFO] [stdout] 55277d26f79719a172846833ac0ecfe951ba679bec70583229424451f8a3de82
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.75.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 57e9807a8d1ecd5be24b0c45ca003c42d483d917d9d8418ee9cc21d62f94e798
[INFO] running `Command { std: "docker" "start" "-a" "57e9807a8d1ecd5be24b0c45ca003c42d483d917d9d8418ee9cc21d62f94e798", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.43
[INFO] [stderr]    Compiling cfg-if v0.1.5
[INFO] [stderr]    Compiling proc-macro2 v0.4.12
[INFO] [stderr]    Compiling unicode-xid v0.1.0
[INFO] [stderr]    Compiling quick-error v1.2.2
[INFO] [stderr]    Compiling void v1.0.2
[INFO] [stderr]    Compiling serde v1.0.71
[INFO] [stderr]    Compiling typenum v1.10.0
[INFO] [stderr]    Compiling bitflags v1.0.3
[INFO] [stderr]    Compiling version_check v0.1.4
[INFO] [stderr]    Compiling cc v1.0.18
[INFO] [stderr]    Compiling nix v0.11.0
[INFO] [stderr]    Compiling num-traits v0.2.5
[INFO] [stderr]    Compiling unicode-width v0.1.5
[INFO] [stderr]    Compiling gcc v0.3.54
[INFO] [stderr]    Compiling byte-tools v0.2.0
[INFO] [stderr]    Compiling log v0.4.3
[INFO] [stderr]    Compiling failure_derive v0.1.2
[INFO] [stderr]    Compiling unreachable v1.0.0
[INFO] [stderr]    Compiling ucd-util v0.1.1
[INFO] [stderr]    Compiling regex v1.0.2
[INFO] [stderr]    Compiling textwrap v0.10.0
[INFO] [stderr]    Compiling vec_map v0.8.1
[INFO] [stderr]    Compiling byteorder v1.2.4
[INFO] [stderr]    Compiling log v0.3.9
[INFO] [stderr]    Compiling regex-syntax v0.6.2
[INFO] [stderr]    Compiling ansi_term v0.11.0
[INFO] [stderr]    Compiling utf8-ranges v1.0.0
[INFO] [stderr]    Compiling lazy_static v1.1.0
[INFO] [stderr]    Compiling itoa v0.4.2
[INFO] [stderr]    Compiling dtoa v0.4.3
[INFO] [stderr]    Compiling strsim v0.7.0
[INFO] [stderr]    Compiling arrayref v0.3.4
[INFO] [stderr]    Compiling memchr v2.0.1
[INFO] [stderr]    Compiling atty v0.2.11
[INFO] [stderr]    Compiling time v0.1.40
[INFO] [stderr]    Compiling rand v0.4.2
[INFO] [stderr]    Compiling aho-corasick v0.6.6
[INFO] [stderr]    Compiling rustc-demangle v0.1.9
[INFO] [stderr]    Compiling constant_time_eq v0.1.3
[INFO] [stderr]    Compiling safemem v0.2.0
[INFO] [stderr]    Compiling quote v0.6.6
[INFO] [stderr]    Compiling thread_local v0.3.5
[INFO] [stderr]    Compiling base64 v0.9.2
[INFO] [stderr]    Compiling syn v0.14.8
[INFO] [stderr]    Compiling clap v2.32.0
[INFO] [stderr]    Compiling block-buffer v0.3.3
[INFO] [stderr]    Compiling rust-crypto v0.2.36
[INFO] [stderr]    Compiling unix_socket v0.5.0
[INFO] [stderr]    Compiling humantime v1.1.1
[INFO] [stderr]    Compiling fake-simd v0.1.2
[INFO] [stderr]    Compiling rustc-serialize v0.3.24
[INFO] [stderr]    Compiling atomic v0.3.4
[INFO] [stderr]    Compiling termcolor v1.0.1
[INFO] [stderr]    Compiling backtrace-sys v0.1.23
[INFO] [stderr]    Compiling rand_core v0.2.1
[INFO] [stderr]    Compiling syslog v3.3.0
[INFO] [stderr]    Compiling ssh-keys v0.1.3
[INFO] [stderr]    Compiling rand v0.3.22
[INFO] [stderr]    Compiling rand v0.5.5
[INFO] [stderr]    Compiling num-traits v0.1.43
[INFO] [stderr]    Compiling fern v0.4.4
[INFO] [stderr]    Compiling generic-array v0.9.0
[INFO] [stderr]    Compiling humannum v0.1.0
[INFO] [stderr]    Compiling scan_dir v0.3.3
[INFO] [stderr]    Compiling argparse v0.2.1
[INFO] [stderr]    Compiling digest v0.7.5
[INFO] [stderr]    Compiling crypto-mac v0.5.2
[INFO] [stderr]    Compiling blake2 v0.7.1
[INFO] [stderr]    Compiling sha2 v0.7.1
[INFO] [stderr]    Compiling matches v0.1.7
[INFO] [stderr]    Compiling backtrace v0.3.9
[INFO] [stderr]    Compiling signal v0.6.0
[INFO] [stderr]    Compiling libmount v0.1.11
[INFO] [stderr]    Compiling unshare v0.5.0
[INFO] [stderr]    Compiling synstructure v0.9.0
[INFO] [stderr]    Compiling env_logger v0.5.12
[INFO] [stderr]    Compiling structopt-derive v0.2.10
[INFO] [stderr]    Compiling serde_derive v1.0.71
[INFO] [stderr]    Compiling serde_json v1.0.24
[INFO] [stderr]    Compiling quire v0.4.1
[INFO] [stderr]    Compiling serde_str v0.1.0
[INFO] [stderr]    Compiling structopt v0.2.10
[INFO] [stderr]    Compiling failure v0.1.2
[INFO] [stderr]    Compiling libcantal v0.3.2
[INFO] [stderr]    Compiling ipnetwork v0.13.0
[INFO] [stderr]    Compiling lithos v0.18.4 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/master_config.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 52 |     try!(ensure_dir(&cfg.runtime_dir)
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/master_config.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 54 |     try!(ensure_dir(&cfg.runtime_dir.join(&cfg.state_dir))
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/master_config.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 56 |     try!(ensure_dir(&cfg.runtime_dir.join(&cfg.mount_dir))
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/master_config.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 58 |     try!(ensure_dir(&cfg.default_log_dir)
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/master_config.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 64 |     try!(ensure_dir(&cfg.stdio_log_dir)
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/mount.rs:72:24
[INFO] [stdout]    |
[INFO] [stdout] 72 |         let mount_id = try!(parts.next_value());
[INFO] [stdout]    |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/mount.rs:73:25
[INFO] [stdout]    |
[INFO] [stdout] 73 |         let parent_id = try!(parts.next_value());
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/mount.rs:74:22
[INFO] [stdout]    |
[INFO] [stdout] 74 |         let device = try!(parts.next_str());
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/mount.rs:75:29
[INFO] [stdout]    |
[INFO] [stdout] 75 |         let relative_root = try!(parts.next_str());
[INFO] [stdout]    |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/mount.rs:76:27
[INFO] [stdout]    |
[INFO] [stdout] 76 |         let mount_point = try!(parts.next_str());
[INFO] [stdout]    |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/mount.rs:77:29
[INFO] [stdout]    |
[INFO] [stdout] 77 |         let mount_options = try!(parts.next_str());
[INFO] [stdout]    |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/mount.rs:89:39
[INFO] [stdout]    |
[INFO] [stdout] 89 |                     tag_shared = Some(try!(pair.next_value()));
[INFO] [stdout]    |                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/mount.rs:92:39
[INFO] [stdout]    |
[INFO] [stdout] 92 |                     tag_master = Some(try!(pair.next_value()));
[INFO] [stdout]    |                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/mount.rs:95:47
[INFO] [stdout]    |
[INFO] [stdout] 95 |                     tag_propagate_from = Some(try!(pair.next_value()));
[INFO] [stdout]    |                                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/mount.rs:102:22
[INFO] [stdout]     |
[INFO] [stdout] 102 |         let fstype = try!(parts.next_str());
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/mount.rs:103:28
[INFO] [stdout]     |
[INFO] [stdout] 103 |         let mount_source = try!(parts.next_str());
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/mount.rs:104:29
[INFO] [stdout]     |
[INFO] [stdout] 104 |         let super_options = try!(parts.next_str());
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:160:5
[INFO] [stdout]     |
[INFO] [stdout] 160 |     try!(temporary_change_root(dir, || {
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:161:23
[INFO] [stdout]     |
[INFO] [stdout] 161 |         let dirlist = try!(read_dir("/")
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:168:21
[INFO] [stdout]     |
[INFO] [stdout] 168 |                     try!(remove_dir_all(entry.path())
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:173:21
[INFO] [stdout]     |
[INFO] [stdout] 173 |                     try!(remove_file(entry.path())
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:185:9
[INFO] [stdout]     |
[INFO] [stdout] 185 |         try!(remove_dir(dir)
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/network.rs:23:16
[INFO] [stdout]    |
[INFO] [stdout] 23 |     let host = try!(get_host_name());
[INFO] [stdout]    |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/network.rs:24:16
[INFO] [stdout]    |
[INFO] [stdout] 24 |     let addr = try!(get_host_address(&host[..]));
[INFO] [stdout]    |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cgroup.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |     let f = try!(File::open(&path)
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cgroup.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |         try!(chunks.next().ok_or(format!("CGroup num expected")));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cgroup.rs:45:20
[INFO] [stdout]    |
[INFO] [stdout] 45 |         let line = try!(line
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cgroup.rs:53:25
[INFO] [stdout]    |
[INFO] [stdout] 53 |         let namechunk = try!(chunks.next()
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cgroup.rs:56:21
[INFO] [stdout]    |
[INFO] [stdout] 56 |         let names = try!(namepair.next()
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cgroup.rs:59:36
[INFO] [stdout]    |
[INFO] [stdout] 59 |         let group_path = Path::new(try!(chunks.next()
[INFO] [stdout]    |                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cgroup.rs:92:22
[INFO] [stdout]    |
[INFO] [stdout] 92 |     let parent_grp = try!(parse_cgroups(Some(1)));
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cgroup.rs:93:19
[INFO] [stdout]    |
[INFO] [stdout] 93 |     let old_grp = try!(parse_cgroups(None));
[INFO] [stdout]    |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cgroup.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 129 |         try!(OpenOptions::new().write(true).open(&fullpath.join("tasks"))
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cgroup.rs:98:52
[INFO] [stdout]    |
[INFO] [stdout] 98 |         let CGroupPath(ref rfolder, ref rpath) = **try!(
[INFO] [stdout]    |                                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cgroup.rs:101:52
[INFO] [stdout]     |
[INFO] [stdout] 101 |         let CGroupPath(ref ofolder, ref opath) = **try!(
[INFO] [stdout]     |                                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cgroup.rs:122:13
[INFO] [stdout]     |
[INFO] [stdout] 122 |             try!(create_dir(&fullpath)
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cgroup.rs:165:22
[INFO] [stdout]     |
[INFO] [stdout] 165 |     let parent_grp = try!(parse_cgroups(Some(1)));
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cgroup.rs:185:20
[INFO] [stdout]     |
[INFO] [stdout] 185 |         let path = try!(self.full_paths.get(&ctr)
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cgroup.rs:195:20
[INFO] [stdout]     |
[INFO] [stdout] 195 |         let path = try!(self.full_paths.get(&ctr)
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/metrics.rs:64:42
[INFO] [stdout]    |
[INFO] [stdout] 64 |     fn visit<'x>(&'x self, visitor: &mut Visitor<'x>) {
[INFO] [stdout]    |                                          ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 64 |     fn visit<'x>(&'x self, visitor: &mut dyn Visitor<'x>) {
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/metrics.rs:91:29
[INFO] [stdout]    |
[INFO] [stdout] 91 |     fn visit(&self, s: &mut NameVisitor) {
[INFO] [stdout]    |                             ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 91 |     fn visit(&self, s: &mut dyn NameVisitor) {
[INFO] [stdout]    |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/metrics.rs:105:29
[INFO] [stdout]     |
[INFO] [stdout] 105 |     fn visit(&self, s: &mut NameVisitor) {
[INFO] [stdout]     |                             ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 105 |     fn visit(&self, s: &mut dyn NameVisitor) {
[INFO] [stdout]     |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/metrics.rs:115:29
[INFO] [stdout]     |
[INFO] [stdout] 115 |     fn visit(&self, s: &mut NameVisitor) {
[INFO] [stdout]     |                             ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 115 |     fn visit(&self, s: &mut dyn NameVisitor) {
[INFO] [stdout]     |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/knot_options.rs:30:22
[INFO] [stdout]    |
[INFO] [stdout] 30 |         stdout: &mut Write, stderr: &mut Write)
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 30 |         stdout: &mut dyn Write, stderr: &mut Write)
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/knot_options.rs:30:42
[INFO] [stdout]    |
[INFO] [stdout] 30 |         stdout: &mut Write, stderr: &mut Write)
[INFO] [stdout]    |                                          ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 30 |         stdout: &mut Write, stderr: &mut dyn Write)
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/tree_options.rs:20:22
[INFO] [stdout]    |
[INFO] [stdout] 20 |         stdout: &mut Write, stderr: &mut Write)
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 20 |         stdout: &mut dyn Write, stderr: &mut Write)
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/tree_options.rs:20:42
[INFO] [stdout]    |
[INFO] [stdout] 20 |         stdout: &mut Write, stderr: &mut Write)
[INFO] [stdout]    |                                          ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 20 |         stdout: &mut Write, stderr: &mut dyn Write)
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/utils.rs:61:50
[INFO] [stdout]    |
[INFO] [stdout] 61 |     if unsafe { chdir(CString::new("/").unwrap().as_ptr()) } != 0 {
[INFO] [stdout]    |                       -------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout]    = note: `#[warn(temporary_cstring_as_ptr)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/utils.rs:70:51
[INFO] [stdout]    |
[INFO] [stdout] 70 |     if unsafe { chroot(CString::new(".").unwrap().as_ptr()) } != 0 {
[INFO] [stdout]    |                        -------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/utils.rs:114:50
[INFO] [stdout]     |
[INFO] [stdout] 114 |     if unsafe { chdir(CString::new("/").unwrap().as_ptr()) } != 0
[INFO] [stdout]     |                       -------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 50 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/bin/lithos_switch.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 84 |     try!(copy(&config_file, &tmp_filename)
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/bin/lithos_switch.rs:86:5
[INFO] [stdout]    |
[INFO] [stdout] 86 |     try!(rename(&tmp_filename, &target_fn)
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/bin/lithos_cmd.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 |     try!(create_master_dirs(&master));
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/bin/lithos_cmd.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |     try!(init_logging(&master, &log_file,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/bin/lithos_cmd.rs:36:32
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let master: MasterConfig = try!(parse_config(&master_cfg,
[INFO] [stdout]    |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/bin/lithos_cmd.rs:48:34
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let sandbox: SandboxConfig = try!(parse_config(
[INFO] [stdout]    |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/bin/lithos_cmd.rs:75:24
[INFO] [stdout]    |
[INFO] [stdout] 75 |     sandbox_children = try!(parse_config(&cfg,
[INFO] [stdout]    |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/bin/lithos_cmd.rs:78:21
[INFO] [stdout]    |
[INFO] [stdout] 78 |     let child_cfg = try!(sandbox_children.get(&command_name)
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]   --> src/bin/lithos_crypt.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[macro_use] extern crate structopt;
[INFO] [stdout]    | ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_ps/ascii.rs:100:9
[INFO] [stdout]     |
[INFO] [stdout] 100 |         try!(write!(writer, "{}\n", self.head));
[INFO] [stdout]     |         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_tree/main.rs:160:5
[INFO] [stdout]     |
[INFO] [stdout] 160 |     try!(create_master_dirs(&master));
[INFO] [stdout]     |     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_ps/ascii.rs:109:17
[INFO] [stdout]     |
[INFO] [stdout] 109 |                 try!(write!(writer, "{}├─{}\n", indent, child.head));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_tree/main.rs:161:5
[INFO] [stdout]     |
[INFO] [stdout] 161 |     try!(init_logging(&master, &master.log_file, &master.syslog_app_name,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_tree/main.rs:166:5
[INFO] [stdout]     |
[INFO] [stdout] 166 |     try!(check_process(&master));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_ps/ascii.rs:110:17
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 try!(child._print_children(writer, &childindent[..]));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_tree/main.rs:168:9
[INFO] [stdout]     |
[INFO] [stdout] 168 |         try!(cgroup::ensure_in_group(name, &master.cgroup_controllers));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_ps/ascii.rs:115:13
[INFO] [stdout]     |
[INFO] [stdout] 115 |             try!(write!(writer, "{}└─{}\n", indent, child.head));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_tree/main.rs:223:5
[INFO] [stdout]     |
[INFO] [stdout] 223 |     try!(File::create(&pid_file)
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_ps/ascii.rs:116:13
[INFO] [stdout]     |
[INFO] [stdout] 116 |             try!(child._print_children(writer, &childindent[..]));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_tree/main.rs:465:5
[INFO] [stdout]     |
[INFO] [stdout] 465 |     try!(check_master_config(&master));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_tree/main.rs:466:5
[INFO] [stdout]     |
[INFO] [stdout] 466 |     try!(global_init(&master, &options));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_tree/main.rs:462:32
[INFO] [stdout]     |
[INFO] [stdout] 462 |     let master: MasterConfig = try!(parse_config(&config_file,
[INFO] [stdout]     |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/bin/lithos_check.rs:17:48
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::sync::atomic::{AtomicUsize, Ordering, ATOMIC_USIZE_INIT};
[INFO] [stdout]    |                                                ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_tree/main.rs:581:9
[INFO] [stdout]     |
[INFO] [stdout] 581 |         try!(socket(AddressFamily::Inet, SockType::Stream,
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/bin/lithos_check.rs:34:35
[INFO] [stdout]    |
[INFO] [stdout] 34 | static EXIT_STATUS: AtomicUsize = ATOMIC_USIZE_INIT;
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]    |
[INFO] [stdout] 34 | static EXIT_STATUS: AtomicUsize = AtomicUsize::new(0);
[INFO] [stdout]    |                                   ~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_knot/main.rs:112:5
[INFO] [stdout]     |
[INFO] [stdout] 112 |     try!(init_logging(&master, &log_file,
[INFO] [stdout]     |     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_knot/main.rs:128:5
[INFO] [stdout]     |
[INFO] [stdout] 128 |     try!(mount_private(&Path::new("/")));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_knot/main.rs:131:5
[INFO] [stdout]     |
[INFO] [stdout] 131 |     try!(BindMount::new(&image_path, &mount_dir).mount()
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_knot/main.rs:133:5
[INFO] [stdout]     |
[INFO] [stdout] 133 |     try!(mount_ro_recursive(&mount_dir));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_knot/main.rs:197:5
[INFO] [stdout]     |
[INFO] [stdout] 197 |     try!(prepare_state_dir(state_dir, &local, &sandbox));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_knot/main.rs:198:5
[INFO] [stdout]     |
[INFO] [stdout] 198 |     try!(setup_filesystem(&master, &sandbox, &local, state_dir));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_knot/main.rs:256:5
[INFO] [stdout]     |
[INFO] [stdout] 256 |     try!(set_fileno_limit(local.fileno_limit)
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/bin/lithos_knot/main.rs:96:32
[INFO] [stdout]    |
[INFO] [stdout] 96 |     let master: MasterConfig = try!(parse_config(&options.master_config,
[INFO] [stdout]    |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_knot/main.rs:100:34
[INFO] [stdout]     |
[INFO] [stdout] 100 |     let sandbox: SandboxConfig = try!(parse_config(
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_knot/main.rs:123:27
[INFO] [stdout]     |
[INFO] [stdout] 123 |     let mut stderr_file = try!(OpenOptions::new()
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_knot/main.rs:202:23
[INFO] [stdout]     |
[INFO] [stdout] 202 |         let cgroups = try!(cgroup::ensure_in_group(
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_knot/main.rs:361:25
[INFO] [stdout]     |
[INFO] [stdout] 361 |                 let f = try!(OpenOptions::new()
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_knot/main.rs:365:28
[INFO] [stdout]     |
[INFO] [stdout] 365 |                 cmd.stdout(try!(Stdio::dup_file(&f)
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_knot/main.rs:371:28
[INFO] [stdout]     |
[INFO] [stdout] 371 |                 cmd.stdout(try!(Stdio::dup_file(&stderr_file)
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_knot/main.rs:374:28
[INFO] [stdout]     |
[INFO] [stdout] 374 |                 cmd.stderr(try!(Stdio::dup_file(&stderr_file)
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_knot/main.rs:388:21
[INFO] [stdout]     |
[INFO] [stdout] 388 |         let child = try!(cmd.spawn().map_err(|e|
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bin/lithos_ps/ascii.rs:130:23
[INFO] [stdout]     |
[INFO] [stdout] 130 |                     1 ... 10240 => (1f64, "B"),
[INFO] [stdout]     |                       ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bin/lithos_ps/ascii.rs:131:27
[INFO] [stdout]     |
[INFO] [stdout] 131 |                     10241 ... 10485760 => (1024f64, "kiB"),
[INFO] [stdout]     |                           ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bin/lithos_ps/ascii.rs:132:30
[INFO] [stdout]     |
[INFO] [stdout] 132 |                     10485761 ... 10737418240 => (1048576f64, "MiB"),
[INFO] [stdout]     |                              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_ps/main.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 142 |     try!(f.read_to_string(&mut buf));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_ps/main.rs:139:17
[INFO] [stdout]     |
[INFO] [stdout] 139 |     let mut f = try!(File::open(
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_ps/main.rs:229:5
[INFO] [stdout]     |
[INFO] [stdout] 229 |     try!(f.read_line(&mut line));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_ps/main.rs:185:28
[INFO] [stdout]     |
[INFO] [stdout] 185 |     let f = BufReader::new(try!(File::open(
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_ps/main.rs:189:22
[INFO] [stdout]     |
[INFO] [stdout] 189 |     result.cmdline = try!(read_cmdline(pid));
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_ps/main.rs:191:20
[INFO] [stdout]     |
[INFO] [stdout] 191 |         let line = try!(line);
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_ps/main.rs:226:32
[INFO] [stdout]     |
[INFO] [stdout] 226 |     let mut f = BufReader::new(try!(File::open(
[INFO] [stdout]     |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_ps/main.rs:533:9
[INFO] [stdout]     |
[INFO] [stdout] 533 |         try!(tree.print(&mut out));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_ps/main.rs:595:56
[INFO] [stdout]     |
[INFO] [stdout] 595 |         let new_children: BTreeMap<String, Instance> = try!(scan_processes())
[INFO] [stdout]     |                                                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 6 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 17 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 16 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 9 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 10.71s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: rustc-serialize v0.3.24, syn v0.14.8
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "57e9807a8d1ecd5be24b0c45ca003c42d483d917d9d8418ee9cc21d62f94e798", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "57e9807a8d1ecd5be24b0c45ca003c42d483d917d9d8418ee9cc21d62f94e798", kill_on_drop: false }`
[INFO] [stdout] 57e9807a8d1ecd5be24b0c45ca003c42d483d917d9d8418ee9cc21d62f94e798
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.75.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] cdbde26947cefe98112c4962b86d28b2b758ab28c9469e4680abf7fb40844a10
[INFO] running `Command { std: "docker" "start" "-a" "cdbde26947cefe98112c4962b86d28b2b758ab28c9469e4680abf7fb40844a10", kill_on_drop: false }`
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/master_config.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 52 |     try!(ensure_dir(&cfg.runtime_dir)
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/master_config.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 54 |     try!(ensure_dir(&cfg.runtime_dir.join(&cfg.state_dir))
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/master_config.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 56 |     try!(ensure_dir(&cfg.runtime_dir.join(&cfg.mount_dir))
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/master_config.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 58 |     try!(ensure_dir(&cfg.default_log_dir)
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/master_config.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 64 |     try!(ensure_dir(&cfg.stdio_log_dir)
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/mount.rs:72:24
[INFO] [stdout]    |
[INFO] [stdout] 72 |         let mount_id = try!(parts.next_value());
[INFO] [stdout]    |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/mount.rs:73:25
[INFO] [stdout]    |
[INFO] [stdout] 73 |         let parent_id = try!(parts.next_value());
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/mount.rs:74:22
[INFO] [stdout]    |
[INFO] [stdout] 74 |         let device = try!(parts.next_str());
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/mount.rs:75:29
[INFO] [stdout]    |
[INFO] [stdout] 75 |         let relative_root = try!(parts.next_str());
[INFO] [stdout]    |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/mount.rs:76:27
[INFO] [stdout]    |
[INFO] [stdout] 76 |         let mount_point = try!(parts.next_str());
[INFO] [stdout]    |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/mount.rs:77:29
[INFO] [stdout]    |
[INFO] [stdout] 77 |         let mount_options = try!(parts.next_str());
[INFO] [stdout]    |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/mount.rs:89:39
[INFO] [stdout]    |
[INFO] [stdout] 89 |                     tag_shared = Some(try!(pair.next_value()));
[INFO] [stdout]    |                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/mount.rs:92:39
[INFO] [stdout]    |
[INFO] [stdout] 92 |                     tag_master = Some(try!(pair.next_value()));
[INFO] [stdout]    |                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/mount.rs:95:47
[INFO] [stdout]    |
[INFO] [stdout] 95 |                     tag_propagate_from = Some(try!(pair.next_value()));
[INFO] [stdout]    |                                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/mount.rs:102:22
[INFO] [stdout]     |
[INFO] [stdout] 102 |         let fstype = try!(parts.next_str());
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/mount.rs:103:28
[INFO] [stdout]     |
[INFO] [stdout] 103 |         let mount_source = try!(parts.next_str());
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/mount.rs:104:29
[INFO] [stdout]     |
[INFO] [stdout] 104 |         let super_options = try!(parts.next_str());
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:160:5
[INFO] [stdout]     |
[INFO] [stdout] 160 |     try!(temporary_change_root(dir, || {
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:161:23
[INFO] [stdout]     |
[INFO] [stdout] 161 |         let dirlist = try!(read_dir("/")
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:168:21
[INFO] [stdout]     |
[INFO] [stdout] 168 |                     try!(remove_dir_all(entry.path())
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:173:21
[INFO] [stdout]     |
[INFO] [stdout] 173 |                     try!(remove_file(entry.path())
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:185:9
[INFO] [stdout]     |
[INFO] [stdout] 185 |         try!(remove_dir(dir)
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/network.rs:23:16
[INFO] [stdout]    |
[INFO] [stdout] 23 |     let host = try!(get_host_name());
[INFO] [stdout]    |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/network.rs:24:16
[INFO] [stdout]    |
[INFO] [stdout] 24 |     let addr = try!(get_host_address(&host[..]));
[INFO] [stdout]    |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cgroup.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |     let f = try!(File::open(&path)
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cgroup.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |         try!(chunks.next().ok_or(format!("CGroup num expected")));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cgroup.rs:45:20
[INFO] [stdout]    |
[INFO] [stdout] 45 |         let line = try!(line
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cgroup.rs:53:25
[INFO] [stdout]    |
[INFO] [stdout] 53 |         let namechunk = try!(chunks.next()
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cgroup.rs:56:21
[INFO] [stdout]    |
[INFO] [stdout] 56 |         let names = try!(namepair.next()
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cgroup.rs:59:36
[INFO] [stdout]    |
[INFO] [stdout] 59 |         let group_path = Path::new(try!(chunks.next()
[INFO] [stdout]    |                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cgroup.rs:92:22
[INFO] [stdout]    |
[INFO] [stdout] 92 |     let parent_grp = try!(parse_cgroups(Some(1)));
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cgroup.rs:93:19
[INFO] [stdout]    |
[INFO] [stdout] 93 |     let old_grp = try!(parse_cgroups(None));
[INFO] [stdout]    |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cgroup.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 129 |         try!(OpenOptions::new().write(true).open(&fullpath.join("tasks"))
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cgroup.rs:98:52
[INFO] [stdout]    |
[INFO] [stdout] 98 |         let CGroupPath(ref rfolder, ref rpath) = **try!(
[INFO] [stdout]    |                                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cgroup.rs:101:52
[INFO] [stdout]     |
[INFO] [stdout] 101 |         let CGroupPath(ref ofolder, ref opath) = **try!(
[INFO] [stdout]     |                                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cgroup.rs:122:13
[INFO] [stdout]     |
[INFO] [stdout] 122 |             try!(create_dir(&fullpath)
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cgroup.rs:165:22
[INFO] [stdout]     |
[INFO] [stdout] 165 |     let parent_grp = try!(parse_cgroups(Some(1)));
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cgroup.rs:185:20
[INFO] [stdout]     |
[INFO] [stdout] 185 |         let path = try!(self.full_paths.get(&ctr)
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cgroup.rs:195:20
[INFO] [stdout]     |
[INFO] [stdout] 195 |         let path = try!(self.full_paths.get(&ctr)
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/metrics.rs:64:42
[INFO] [stdout]    |
[INFO] [stdout] 64 |     fn visit<'x>(&'x self, visitor: &mut Visitor<'x>) {
[INFO] [stdout]    |                                          ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 64 |     fn visit<'x>(&'x self, visitor: &mut dyn Visitor<'x>) {
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/metrics.rs:91:29
[INFO] [stdout]    |
[INFO] [stdout] 91 |     fn visit(&self, s: &mut NameVisitor) {
[INFO] [stdout]    |                             ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 91 |     fn visit(&self, s: &mut dyn NameVisitor) {
[INFO] [stdout]    |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/metrics.rs:105:29
[INFO] [stdout]     |
[INFO] [stdout] 105 |     fn visit(&self, s: &mut NameVisitor) {
[INFO] [stdout]     |                             ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 105 |     fn visit(&self, s: &mut dyn NameVisitor) {
[INFO] [stdout]     |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/metrics.rs:115:29
[INFO] [stdout]     |
[INFO] [stdout] 115 |     fn visit(&self, s: &mut NameVisitor) {
[INFO] [stdout]     |                             ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 115 |     fn visit(&self, s: &mut dyn NameVisitor) {
[INFO] [stdout]     |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/knot_options.rs:30:22
[INFO] [stdout]    |
[INFO] [stdout] 30 |         stdout: &mut Write, stderr: &mut Write)
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 30 |         stdout: &mut dyn Write, stderr: &mut Write)
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/knot_options.rs:30:42
[INFO] [stdout]    |
[INFO] [stdout] 30 |         stdout: &mut Write, stderr: &mut Write)
[INFO] [stdout]    |                                          ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 30 |         stdout: &mut Write, stderr: &mut dyn Write)
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/tree_options.rs:20:22
[INFO] [stdout]    |
[INFO] [stdout] 20 |         stdout: &mut Write, stderr: &mut Write)
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 20 |         stdout: &mut dyn Write, stderr: &mut Write)
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/tree_options.rs:20:42
[INFO] [stdout]    |
[INFO] [stdout] 20 |         stdout: &mut Write, stderr: &mut Write)
[INFO] [stdout]    |                                          ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 20 |         stdout: &mut Write, stderr: &mut dyn Write)
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/utils.rs:61:50
[INFO] [stdout]    |
[INFO] [stdout] 61 |     if unsafe { chdir(CString::new("/").unwrap().as_ptr()) } != 0 {
[INFO] [stdout]    |                       -------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout]    = note: `#[warn(temporary_cstring_as_ptr)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/utils.rs:70:51
[INFO] [stdout]    |
[INFO] [stdout] 70 |     if unsafe { chroot(CString::new(".").unwrap().as_ptr()) } != 0 {
[INFO] [stdout]    |                        -------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/utils.rs:114:50
[INFO] [stdout]     |
[INFO] [stdout] 114 |     if unsafe { chdir(CString::new("/").unwrap().as_ptr()) } != 0
[INFO] [stdout]     |                       -------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling lithos v0.18.4 (/opt/rustwide/workdir)
[INFO] [stdout] warning: 50 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/bin/lithos_switch.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 84 |     try!(copy(&config_file, &tmp_filename)
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/bin/lithos_switch.rs:86:5
[INFO] [stdout]    |
[INFO] [stdout] 86 |     try!(rename(&tmp_filename, &target_fn)
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/bin/lithos_cmd.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 |     try!(create_master_dirs(&master));
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/bin/lithos_cmd.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |     try!(init_logging(&master, &log_file,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/bin/lithos_cmd.rs:36:32
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let master: MasterConfig = try!(parse_config(&master_cfg,
[INFO] [stdout]    |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/bin/lithos_cmd.rs:48:34
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let sandbox: SandboxConfig = try!(parse_config(
[INFO] [stdout]    |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/bin/lithos_cmd.rs:75:24
[INFO] [stdout]    |
[INFO] [stdout] 75 |     sandbox_children = try!(parse_config(&cfg,
[INFO] [stdout]    |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/bin/lithos_cmd.rs:78:21
[INFO] [stdout]    |
[INFO] [stdout] 78 |     let child_cfg = try!(sandbox_children.get(&command_name)
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/bin/lithos_check.rs:17:48
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::sync::atomic::{AtomicUsize, Ordering, ATOMIC_USIZE_INIT};
[INFO] [stdout]    |                                                ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_tree/main.rs:160:5
[INFO] [stdout]     |
[INFO] [stdout] 160 |     try!(create_master_dirs(&master));
[INFO] [stdout]     |     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_tree/main.rs:161:5
[INFO] [stdout]     |
[INFO] [stdout] 161 |     try!(init_logging(&master, &master.log_file, &master.syslog_app_name,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/bin/lithos_check.rs:34:35
[INFO] [stdout]    |
[INFO] [stdout] 34 | static EXIT_STATUS: AtomicUsize = ATOMIC_USIZE_INIT;
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]    |
[INFO] [stdout] 34 | static EXIT_STATUS: AtomicUsize = AtomicUsize::new(0);
[INFO] [stdout]    |                                   ~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_tree/main.rs:166:5
[INFO] [stdout]     |
[INFO] [stdout] 166 |     try!(check_process(&master));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_tree/main.rs:168:9
[INFO] [stdout]     |
[INFO] [stdout] 168 |         try!(cgroup::ensure_in_group(name, &master.cgroup_controllers));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_tree/main.rs:223:5
[INFO] [stdout]     |
[INFO] [stdout] 223 |     try!(File::create(&pid_file)
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_tree/main.rs:465:5
[INFO] [stdout]     |
[INFO] [stdout] 465 |     try!(check_master_config(&master));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_tree/main.rs:466:5
[INFO] [stdout]     |
[INFO] [stdout] 466 |     try!(global_init(&master, &options));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_tree/main.rs:462:32
[INFO] [stdout]     |
[INFO] [stdout] 462 |     let master: MasterConfig = try!(parse_config(&config_file,
[INFO] [stdout]     |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_tree/main.rs:581:9
[INFO] [stdout]     |
[INFO] [stdout] 581 |         try!(socket(AddressFamily::Inet, SockType::Stream,
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_ps/ascii.rs:100:9
[INFO] [stdout]     |
[INFO] [stdout] 100 |         try!(write!(writer, "{}\n", self.head));
[INFO] [stdout]     |         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_ps/ascii.rs:109:17
[INFO] [stdout]     |
[INFO] [stdout] 109 |                 try!(write!(writer, "{}├─{}\n", indent, child.head));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_ps/ascii.rs:110:17
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 try!(child._print_children(writer, &childindent[..]));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_ps/ascii.rs:115:13
[INFO] [stdout]     |
[INFO] [stdout] 115 |             try!(write!(writer, "{}└─{}\n", indent, child.head));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_ps/ascii.rs:116:13
[INFO] [stdout]     |
[INFO] [stdout] 116 |             try!(child._print_children(writer, &childindent[..]));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bin/lithos_ps/ascii.rs:130:23
[INFO] [stdout]     |
[INFO] [stdout] 130 |                     1 ... 10240 => (1f64, "B"),
[INFO] [stdout]     |                       ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bin/lithos_ps/ascii.rs:131:27
[INFO] [stdout]     |
[INFO] [stdout] 131 |                     10241 ... 10485760 => (1024f64, "kiB"),
[INFO] [stdout]     |                           ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bin/lithos_ps/ascii.rs:132:30
[INFO] [stdout]     |
[INFO] [stdout] 132 |                     10485761 ... 10737418240 => (1048576f64, "MiB"),
[INFO] [stdout]     |                              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_ps/main.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 142 |     try!(f.read_to_string(&mut buf));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_ps/main.rs:139:17
[INFO] [stdout]     |
[INFO] [stdout] 139 |     let mut f = try!(File::open(
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_ps/main.rs:229:5
[INFO] [stdout]     |
[INFO] [stdout] 229 |     try!(f.read_line(&mut line));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_ps/main.rs:185:28
[INFO] [stdout]     |
[INFO] [stdout] 185 |     let f = BufReader::new(try!(File::open(
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_ps/main.rs:189:22
[INFO] [stdout]     |
[INFO] [stdout] 189 |     result.cmdline = try!(read_cmdline(pid));
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_ps/main.rs:191:20
[INFO] [stdout]     |
[INFO] [stdout] 191 |         let line = try!(line);
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_ps/main.rs:226:32
[INFO] [stdout]     |
[INFO] [stdout] 226 |     let mut f = BufReader::new(try!(File::open(
[INFO] [stdout]     |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_ps/main.rs:533:9
[INFO] [stdout]     |
[INFO] [stdout] 533 |         try!(tree.print(&mut out));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_ps/main.rs:595:56
[INFO] [stdout]     |
[INFO] [stdout] 595 |         let new_children: BTreeMap<String, Instance> = try!(scan_processes())
[INFO] [stdout]     |                                                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_knot/main.rs:112:5
[INFO] [stdout]     |
[INFO] [stdout] 112 |     try!(init_logging(&master, &log_file,
[INFO] [stdout]     |     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_knot/main.rs:128:5
[INFO] [stdout]     |
[INFO] [stdout] 128 |     try!(mount_private(&Path::new("/")));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_knot/main.rs:131:5
[INFO] [stdout]     |
[INFO] [stdout] 131 |     try!(BindMount::new(&image_path, &mount_dir).mount()
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_knot/main.rs:133:5
[INFO] [stdout]     |
[INFO] [stdout] 133 |     try!(mount_ro_recursive(&mount_dir));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_knot/main.rs:197:5
[INFO] [stdout]     |
[INFO] [stdout] 197 |     try!(prepare_state_dir(state_dir, &local, &sandbox));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_knot/main.rs:198:5
[INFO] [stdout]     |
[INFO] [stdout] 198 |     try!(setup_filesystem(&master, &sandbox, &local, state_dir));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_knot/main.rs:256:5
[INFO] [stdout]     |
[INFO] [stdout] 256 |     try!(set_fileno_limit(local.fileno_limit)
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/bin/lithos_knot/main.rs:96:32
[INFO] [stdout]    |
[INFO] [stdout] 96 |     let master: MasterConfig = try!(parse_config(&options.master_config,
[INFO] [stdout]    |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_knot/main.rs:100:34
[INFO] [stdout]     |
[INFO] [stdout] 100 |     let sandbox: SandboxConfig = try!(parse_config(
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_knot/main.rs:123:27
[INFO] [stdout]     |
[INFO] [stdout] 123 |     let mut stderr_file = try!(OpenOptions::new()
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_knot/main.rs:202:23
[INFO] [stdout]     |
[INFO] [stdout] 202 |         let cgroups = try!(cgroup::ensure_in_group(
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_knot/main.rs:361:25
[INFO] [stdout]     |
[INFO] [stdout] 361 |                 let f = try!(OpenOptions::new()
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_knot/main.rs:365:28
[INFO] [stdout]     |
[INFO] [stdout] 365 |                 cmd.stdout(try!(Stdio::dup_file(&f)
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_knot/main.rs:371:28
[INFO] [stdout]     |
[INFO] [stdout] 371 |                 cmd.stdout(try!(Stdio::dup_file(&stderr_file)
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_knot/main.rs:374:28
[INFO] [stdout]     |
[INFO] [stdout] 374 |                 cmd.stderr(try!(Stdio::dup_file(&stderr_file)
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bin/lithos_knot/main.rs:388:21
[INFO] [stdout]     |
[INFO] [stdout] 388 |         let child = try!(cmd.spawn().map_err(|e|
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]   --> src/bin/lithos_crypt.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[macro_use] extern crate structopt;
[INFO] [stdout]    | ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 6 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/master_config.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 52 |     try!(ensure_dir(&cfg.runtime_dir)
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/master_config.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 54 |     try!(ensure_dir(&cfg.runtime_dir.join(&cfg.state_dir))
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/master_config.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 56 |     try!(ensure_dir(&cfg.runtime_dir.join(&cfg.mount_dir))
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/master_config.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 58 |     try!(ensure_dir(&cfg.default_log_dir)
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/master_config.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 64 |     try!(ensure_dir(&cfg.stdio_log_dir)
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/mount.rs:72:24
[INFO] [stdout]    |
[INFO] [stdout] 72 |         let mount_id = try!(parts.next_value());
[INFO] [stdout]    |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/mount.rs:73:25
[INFO] [stdout]    |
[INFO] [stdout] 73 |         let parent_id = try!(parts.next_value());
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/mount.rs:74:22
[INFO] [stdout]    |
[INFO] [stdout] 74 |         let device = try!(parts.next_str());
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/mount.rs:75:29
[INFO] [stdout]    |
[INFO] [stdout] 75 |         let relative_root = try!(parts.next_str());
[INFO] [stdout]    |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/mount.rs:76:27
[INFO] [stdout]    |
[INFO] [stdout] 76 |         let mount_point = try!(parts.next_str());
[INFO] [stdout]    |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/mount.rs:77:29
[INFO] [stdout]    |
[INFO] [stdout] 77 |         let mount_options = try!(parts.next_str());
[INFO] [stdout]    |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/mount.rs:89:39
[INFO] [stdout]    |
[INFO] [stdout] 89 |                     tag_shared = Some(try!(pair.next_value()));
[INFO] [stdout]    |                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/mount.rs:92:39
[INFO] [stdout]    |
[INFO] [stdout] 92 |                     tag_master = Some(try!(pair.next_value()));
[INFO] [stdout]    |                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/mount.rs:95:47
[INFO] [stdout]    |
[INFO] [stdout] 95 |                     tag_propagate_from = Some(try!(pair.next_value()));
[INFO] [stdout]    |                                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/mount.rs:102:22
[INFO] [stdout]     |
[INFO] [stdout] 102 |         let fstype = try!(parts.next_str());
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/mount.rs:103:28
[INFO] [stdout]     |
[INFO] [stdout] 103 |         let mount_source = try!(parts.next_str());
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/mount.rs:104:29
[INFO] [stdout]     |
[INFO] [stdout] 104 |         let super_options = try!(parts.next_str());
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:160:5
[INFO] [stdout]     |
[INFO] [stdout] 160 |     try!(temporary_change_root(dir, || {
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:161:23
[INFO] [stdout]     |
[INFO] [stdout] 161 |         let dirlist = try!(read_dir("/")
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:168:21
[INFO] [stdout]     |
[INFO] [stdout] 168 |                     try!(remove_dir_all(entry.path())
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:173:21
[INFO] [stdout]     |
[INFO] [stdout] 173 |                     try!(remove_file(entry.path())
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:185:9
[INFO] [stdout]     |
[INFO] [stdout] 185 |         try!(remove_dir(dir)
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/network.rs:23:16
[INFO] [stdout]    |
[INFO] [stdout] 23 |     let host = try!(get_host_name());
[INFO] [stdout]    |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/network.rs:24:16
[INFO] [stdout]    |
[INFO] [stdout] 24 |     let addr = try!(get_host_address(&host[..]));
[INFO] [stdout]    |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cgroup.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |     let f = try!(File::open(&path)
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cgroup.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |         try!(chunks.next().ok_or(format!("CGroup num expected")));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cgroup.rs:45:20
[INFO] [stdout]    |
[INFO] [stdout] 45 |         let line = try!(line
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cgroup.rs:53:25
[INFO] [stdout]    |
[INFO] [stdout] 53 |         let namechunk = try!(chunks.next()
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cgroup.rs:56:21
[INFO] [stdout]    |
[INFO] [stdout] 56 |         let names = try!(namepair.next()
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cgroup.rs:59:36
[INFO] [stdout]    |
[INFO] [stdout] 59 |         let group_path = Path::new(try!(chunks.next()
[INFO] [stdout]    |                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cgroup.rs:92:22
[INFO] [stdout]    |
[INFO] [stdout] 92 |     let parent_grp = try!(parse_cgroups(Some(1)));
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cgroup.rs:93:19
[INFO] [stdout]    |
[INFO] [stdout] 93 |     let old_grp = try!(parse_cgroups(None));
[INFO] [stdout]    |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cgroup.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 129 |         try!(OpenOptions::new().write(true).open(&fullpath.join("tasks"))
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cgroup.rs:98:52
[INFO] [stdout]    |
[INFO] [stdout] 98 |         let CGroupPath(ref rfolder, ref rpath) = **try!(
[INFO] [stdout]    |                                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cgroup.rs:101:52
[INFO] [stdout]     |
[INFO] [stdout] 101 |         let CGroupPath(ref ofolder, ref opath) = **try!(
[INFO] [stdout]     |                                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cgroup.rs:122:13
[INFO] [stdout]     |
[INFO] [stdout] 122 |             try!(create_dir(&fullpath)
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cgroup.rs:165:22
[INFO] [stdout]     |
[INFO] [stdout] 165 |     let parent_grp = try!(parse_cgroups(Some(1)));
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cgroup.rs:185:20
[INFO] [stdout]     |
[INFO] [stdout] 185 |         let path = try!(self.full_paths.get(&ctr)
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cgroup.rs:195:20
[INFO] [stdout]     |
[INFO] [stdout] 195 |         let path = try!(self.full_paths.get(&ctr)
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/metrics.rs:64:42
[INFO] [stdout]    |
[INFO] [stdout] 64 |     fn visit<'x>(&'x self, visitor: &mut Visitor<'x>) {
[INFO] [stdout]    |                                          ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 64 |     fn visit<'x>(&'x self, visitor: &mut dyn Visitor<'x>) {
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/metrics.rs:91:29
[INFO] [stdout]    |
[INFO] [stdout] 91 |     fn visit(&self, s: &mut NameVisitor) {
[INFO] [stdout]    |                             ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 91 |     fn visit(&self, s: &mut dyn NameVisitor) {
[INFO] [stdout]    |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/metrics.rs:105:29
[INFO] [stdout]     |
[INFO] [stdout] 105 |     fn visit(&self, s: &mut NameVisitor) {
[INFO] [stdout]     |                             ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 105 |     fn visit(&self, s: &mut dyn NameVisitor) {
[INFO] [stdout]     |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/metrics.rs:115:29
[INFO] [stdout]     |
[INFO] [stdout] 115 |     fn visit(&self, s: &mut NameVisitor) {
[INFO] [stdout]     |                             ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 115 |     fn visit(&self, s: &mut dyn NameVisitor) {
[INFO] [stdout]     |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/knot_options.rs:30:22
[INFO] [stdout]    |
[INFO] [stdout] 30 |         stdout: &mut Write, stderr: &mut Write)
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 30 |         stdout: &mut dyn Write, stderr: &mut Write)
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/knot_options.rs:30:42
[INFO] [stdout]    |
[INFO] [stdout] 30 |         stdout: &mut Write, stderr: &mut Write)
[INFO] [stdout]    |                                          ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 30 |         stdout: &mut Write, stderr: &mut dyn Write)
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/tree_options.rs:20:22
[INFO] [stdout]    |
[INFO] [stdout] 20 |         stdout: &mut Write, stderr: &mut Write)
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 20 |         stdout: &mut dyn Write, stderr: &mut Write)
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/tree_options.rs:20:42
[INFO] [stdout]    |
[INFO] [stdout] 20 |         stdout: &mut Write, stderr: &mut Write)
[INFO] [stdout]    |                                          ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 20 |         stdout: &mut Write, stderr: &mut dyn Write)
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 9 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 16 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 17 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/utils.rs:61:50
[INFO] [stdout]    |
[INFO] [stdout] 61 |     if unsafe { chdir(CString::new("/").unwrap().as_ptr()) } != 0 {
[INFO] [stdout]    |                       -------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout]    = note: `#[warn(temporary_cstring_as_ptr)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/utils.rs:70:51
[INFO] [stdout]    |
[INFO] [stdout] 70 |     if unsafe { chroot(CString::new(".").unwrap().as_ptr()) } != 0 {
[INFO] [stdout]    |                        -------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/utils.rs:114:50
[INFO] [stdout]     |
[INFO] [stdout] 114 |     if unsafe { chdir(CString::new("/").unwrap().as_ptr()) } != 0
[INFO] [stdout]     |                       -------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 50 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 1.80s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: rustc-serialize v0.3.24, syn v0.14.8
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "cdbde26947cefe98112c4962b86d28b2b758ab28c9469e4680abf7fb40844a10", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cdbde26947cefe98112c4962b86d28b2b758ab28c9469e4680abf7fb40844a10", kill_on_drop: false }`
[INFO] [stdout] cdbde26947cefe98112c4962b86d28b2b758ab28c9469e4680abf7fb40844a10
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.75.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 0e8b22e3539060cead0bab8c4382acd29e4d9ff8ed83c9912ed15b3b03e08e19
[INFO] running `Command { std: "docker" "start" "-a" "0e8b22e3539060cead0bab8c4382acd29e4d9ff8ed83c9912ed15b3b03e08e19", kill_on_drop: false }`
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/master_config.rs:52:5
[INFO] [stderr]    |
[INFO] [stderr] 52 |     try!(ensure_dir(&cfg.runtime_dir)
[INFO] [stderr]    |     ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/master_config.rs:54:5
[INFO] [stderr]    |
[INFO] [stderr] 54 |     try!(ensure_dir(&cfg.runtime_dir.join(&cfg.state_dir))
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/master_config.rs:56:5
[INFO] [stderr]    |
[INFO] [stderr] 56 |     try!(ensure_dir(&cfg.runtime_dir.join(&cfg.mount_dir))
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/master_config.rs:58:5
[INFO] [stderr]    |
[INFO] [stderr] 58 |     try!(ensure_dir(&cfg.default_log_dir)
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/master_config.rs:64:5
[INFO] [stderr]    |
[INFO] [stderr] 64 |     try!(ensure_dir(&cfg.stdio_log_dir)
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/mount.rs:72:24
[INFO] [stderr]    |
[INFO] [stderr] 72 |         let mount_id = try!(parts.next_value());
[INFO] [stderr]    |                        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/mount.rs:73:25
[INFO] [stderr]    |
[INFO] [stderr] 73 |         let parent_id = try!(parts.next_value());
[INFO] [stderr]    |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/mount.rs:74:22
[INFO] [stderr]    |
[INFO] [stderr] 74 |         let device = try!(parts.next_str());
[INFO] [stderr]    |                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/mount.rs:75:29
[INFO] [stderr]    |
[INFO] [stderr] 75 |         let relative_root = try!(parts.next_str());
[INFO] [stderr]    |                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/mount.rs:76:27
[INFO] [stderr]    |
[INFO] [stderr] 76 |         let mount_point = try!(parts.next_str());
[INFO] [stderr]    |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/mount.rs:77:29
[INFO] [stderr]    |
[INFO] [stderr] 77 |         let mount_options = try!(parts.next_str());
[INFO] [stderr]    |                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/mount.rs:89:39
[INFO] [stderr]    |
[INFO] [stderr] 89 |                     tag_shared = Some(try!(pair.next_value()));
[INFO] [stderr]    |                                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/mount.rs:92:39
[INFO] [stderr]    |
[INFO] [stderr] 92 |                     tag_master = Some(try!(pair.next_value()));
[INFO] [stderr]    |                                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/mount.rs:95:47
[INFO] [stderr]    |
[INFO] [stderr] 95 |                     tag_propagate_from = Some(try!(pair.next_value()));
[INFO] [stderr]    |                                               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/mount.rs:102:22
[INFO] [stderr]     |
[INFO] [stderr] 102 |         let fstype = try!(parts.next_str());
[INFO] [stderr]     |                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/mount.rs:103:28
[INFO] [stderr]     |
[INFO] [stderr] 103 |         let mount_source = try!(parts.next_str());
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/mount.rs:104:29
[INFO] [stderr]     |
[INFO] [stderr] 104 |         let super_options = try!(parts.next_str());
[INFO] [stderr]     |                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/utils.rs:160:5
[INFO] [stderr]     |
[INFO] [stderr] 160 |     try!(temporary_change_root(dir, || {
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/utils.rs:161:23
[INFO] [stderr]     |
[INFO] [stderr] 161 |         let dirlist = try!(read_dir("/")
[INFO] [stderr]     |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/utils.rs:168:21
[INFO] [stderr]     |
[INFO] [stderr] 168 |                     try!(remove_dir_all(entry.path())
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/utils.rs:173:21
[INFO] [stderr]     |
[INFO] [stderr] 173 |                     try!(remove_file(entry.path())
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/utils.rs:185:9
[INFO] [stderr]     |
[INFO] [stderr] 185 |         try!(remove_dir(dir)
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/network.rs:23:16
[INFO] [stderr]    |
[INFO] [stderr] 23 |     let host = try!(get_host_name());
[INFO] [stderr]    |                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/network.rs:24:16
[INFO] [stderr]    |
[INFO] [stderr] 24 |     let addr = try!(get_host_address(&host[..]));
[INFO] [stderr]    |                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/cgroup.rs:40:13
[INFO] [stderr]    |
[INFO] [stderr] 40 |     let f = try!(File::open(&path)
[INFO] [stderr]    |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/cgroup.rs:52:9
[INFO] [stderr]    |
[INFO] [stderr] 52 |         try!(chunks.next().ok_or(format!("CGroup num expected")));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/cgroup.rs:45:20
[INFO] [stderr]    |
[INFO] [stderr] 45 |         let line = try!(line
[INFO] [stderr]    |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/cgroup.rs:53:25
[INFO] [stderr]    |
[INFO] [stderr] 53 |         let namechunk = try!(chunks.next()
[INFO] [stderr]    |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/cgroup.rs:56:21
[INFO] [stderr]    |
[INFO] [stderr] 56 |         let names = try!(namepair.next()
[INFO] [stderr]    |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/cgroup.rs:59:36
[INFO] [stderr]    |
[INFO] [stderr] 59 |         let group_path = Path::new(try!(chunks.next()
[INFO] [stderr]    |                                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/cgroup.rs:92:22
[INFO] [stderr]    |
[INFO] [stderr] 92 |     let parent_grp = try!(parse_cgroups(Some(1)));
[INFO] [stderr]    |                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/cgroup.rs:93:19
[INFO] [stderr]    |
[INFO] [stderr] 93 |     let old_grp = try!(parse_cgroups(None));
[INFO] [stderr]    |                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/cgroup.rs:129:9
[INFO] [stderr]     |
[INFO] [stderr] 129 |         try!(OpenOptions::new().write(true).open(&fullpath.join("tasks"))
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/cgroup.rs:98:52
[INFO] [stderr]    |
[INFO] [stderr] 98 |         let CGroupPath(ref rfolder, ref rpath) = **try!(
[INFO] [stderr]    |                                                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/cgroup.rs:101:52
[INFO] [stderr]     |
[INFO] [stderr] 101 |         let CGroupPath(ref ofolder, ref opath) = **try!(
[INFO] [stderr]     |                                                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/cgroup.rs:122:13
[INFO] [stderr]     |
[INFO] [stderr] 122 |             try!(create_dir(&fullpath)
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/cgroup.rs:165:22
[INFO] [stderr]     |
[INFO] [stderr] 165 |     let parent_grp = try!(parse_cgroups(Some(1)));
[INFO] [stderr]     |                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/cgroup.rs:185:20
[INFO] [stderr]     |
[INFO] [stderr] 185 |         let path = try!(self.full_paths.get(&ctr)
[INFO] [stderr]     |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/cgroup.rs:195:20
[INFO] [stderr]     |
[INFO] [stderr] 195 |         let path = try!(self.full_paths.get(&ctr)
[INFO] [stderr]     |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/metrics.rs:64:42
[INFO] [stderr]    |
[INFO] [stderr] 64 |     fn visit<'x>(&'x self, visitor: &mut Visitor<'x>) {
[INFO] [stderr]    |                                          ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 64 |     fn visit<'x>(&'x self, visitor: &mut dyn Visitor<'x>) {
[INFO] [stderr]    |                                          +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/metrics.rs:91:29
[INFO] [stderr]    |
[INFO] [stderr] 91 |     fn visit(&self, s: &mut NameVisitor) {
[INFO] [stderr]    |                             ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 91 |     fn visit(&self, s: &mut dyn NameVisitor) {
[INFO] [stderr]    |                             +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/metrics.rs:105:29
[INFO] [stderr]     |
[INFO] [stderr] 105 |     fn visit(&self, s: &mut NameVisitor) {
[INFO] [stderr]     |                             ^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 105 |     fn visit(&self, s: &mut dyn NameVisitor) {
[INFO] [stderr]     |                             +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/metrics.rs:115:29
[INFO] [stderr]     |
[INFO] [stderr] 115 |     fn visit(&self, s: &mut NameVisitor) {
[INFO] [stderr]     |                             ^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 115 |     fn visit(&self, s: &mut dyn NameVisitor) {
[INFO] [stderr]     |                             +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/knot_options.rs:30:22
[INFO] [stderr]    |
[INFO] [stderr] 30 |         stdout: &mut Write, stderr: &mut Write)
[INFO] [stderr]    |                      ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 30 |         stdout: &mut dyn Write, stderr: &mut Write)
[INFO] [stderr]    |                      +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/knot_options.rs:30:42
[INFO] [stderr]    |
[INFO] [stderr] 30 |         stdout: &mut Write, stderr: &mut Write)
[INFO] [stderr]    |                                          ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 30 |         stdout: &mut Write, stderr: &mut dyn Write)
[INFO] [stderr]    |                                          +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/tree_options.rs:20:22
[INFO] [stderr]    |
[INFO] [stderr] 20 |         stdout: &mut Write, stderr: &mut Write)
[INFO] [stderr]    |                      ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 20 |         stdout: &mut dyn Write, stderr: &mut Write)
[INFO] [stderr]    |                      +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/tree_options.rs:20:42
[INFO] [stderr]    |
[INFO] [stderr] 20 |         stdout: &mut Write, stderr: &mut Write)
[INFO] [stderr]    |                                          ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 20 |         stdout: &mut Write, stderr: &mut dyn Write)
[INFO] [stderr]    |                                          +++
[INFO] [stderr] 
[INFO] [stderr] warning: getting the inner pointer of a temporary `CString`
[INFO] [stderr]   --> src/utils.rs:61:50
[INFO] [stderr]    |
[INFO] [stderr] 61 |     if unsafe { chdir(CString::new("/").unwrap().as_ptr()) } != 0 {
[INFO] [stderr]    |                       -------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stderr]    |                       |
[INFO] [stderr]    |                       this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stderr]    |
[INFO] [stderr]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stderr]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stderr]    = note: `#[warn(temporary_cstring_as_ptr)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: getting the inner pointer of a temporary `CString`
[INFO] [stderr]   --> src/utils.rs:70:51
[INFO] [stderr]    |
[INFO] [stderr] 70 |     if unsafe { chroot(CString::new(".").unwrap().as_ptr()) } != 0 {
[INFO] [stderr]    |                        -------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stderr]    |                        |
[INFO] [stderr]    |                        this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stderr]    |
[INFO] [stderr]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stderr]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stderr] 
[INFO] [stderr] warning: getting the inner pointer of a temporary `CString`
[INFO] [stderr]    --> src/utils.rs:114:50
[INFO] [stderr]     |
[INFO] [stderr] 114 |     if unsafe { chdir(CString::new("/").unwrap().as_ptr()) } != 0
[INFO] [stderr]     |                       -------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stderr]     |                       |
[INFO] [stderr]     |                       this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stderr]     |
[INFO] [stderr]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stderr]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stderr] 
[INFO] [stderr] warning: `lithos` (lib) generated 50 warnings (run `cargo fix --lib -p lithos` to apply 8 suggestions)
[INFO] [stderr] warning: `lithos` (lib test) generated 50 warnings (50 duplicates)
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred
[INFO] [stderr]   --> src/bin/lithos_check.rs:17:48
[INFO] [stderr]    |
[INFO] [stderr] 17 | use std::sync::atomic::{AtomicUsize, Ordering, ATOMIC_USIZE_INIT};
[INFO] [stderr]    |                                                ^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred
[INFO] [stderr]   --> src/bin/lithos_check.rs:34:35
[INFO] [stderr]    |
[INFO] [stderr] 34 | static EXIT_STATUS: AtomicUsize = ATOMIC_USIZE_INIT;
[INFO] [stderr]    |                                   ^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: replace the use of the deprecated constant
[INFO] [stderr]    |
[INFO] [stderr] 34 | static EXIT_STATUS: AtomicUsize = AtomicUsize::new(0);
[INFO] [stderr]    |                                   ~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: unused `#[macro_use]` import
[INFO] [stderr]   --> src/bin/lithos_crypt.rs:10:1
[INFO] [stderr]    |
[INFO] [stderr] 10 | #[macro_use] extern crate structopt;
[INFO] [stderr]    | ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_knot/main.rs:112:5
[INFO] [stderr]     |
[INFO] [stderr] 112 |     try!(init_logging(&master, &log_file,
[INFO] [stderr]     |     ^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_knot/main.rs:128:5
[INFO] [stderr]     |
[INFO] [stderr] 128 |     try!(mount_private(&Path::new("/")));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_knot/main.rs:131:5
[INFO] [stderr]     |
[INFO] [stderr] 131 |     try!(BindMount::new(&image_path, &mount_dir).mount()
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_knot/main.rs:133:5
[INFO] [stderr]     |
[INFO] [stderr] 133 |     try!(mount_ro_recursive(&mount_dir));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_knot/main.rs:197:5
[INFO] [stderr]     |
[INFO] [stderr] 197 |     try!(prepare_state_dir(state_dir, &local, &sandbox));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_knot/main.rs:198:5
[INFO] [stderr]     |
[INFO] [stderr] 198 |     try!(setup_filesystem(&master, &sandbox, &local, state_dir));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_knot/main.rs:256:5
[INFO] [stderr]     |
[INFO] [stderr] 256 |     try!(set_fileno_limit(local.fileno_limit)
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/bin/lithos_knot/main.rs:96:32
[INFO] [stderr]    |
[INFO] [stderr] 96 |     let master: MasterConfig = try!(parse_config(&options.master_config,
[INFO] [stderr]    |                                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_knot/main.rs:100:34
[INFO] [stderr]     |
[INFO] [stderr] 100 |     let sandbox: SandboxConfig = try!(parse_config(
[INFO] [stderr]     |                                  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_knot/main.rs:123:27
[INFO] [stderr]     |
[INFO] [stderr] 123 |     let mut stderr_file = try!(OpenOptions::new()
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_knot/main.rs:202:23
[INFO] [stderr]     |
[INFO] [stderr] 202 |         let cgroups = try!(cgroup::ensure_in_group(
[INFO] [stderr]     |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_knot/main.rs:361:25
[INFO] [stderr]     |
[INFO] [stderr] 361 |                 let f = try!(OpenOptions::new()
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_knot/main.rs:365:28
[INFO] [stderr]     |
[INFO] [stderr] 365 |                 cmd.stdout(try!(Stdio::dup_file(&f)
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_knot/main.rs:371:28
[INFO] [stderr]     |
[INFO] [stderr] 371 |                 cmd.stdout(try!(Stdio::dup_file(&stderr_file)
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_knot/main.rs:374:28
[INFO] [stderr]     |
[INFO] [stderr] 374 |                 cmd.stderr(try!(Stdio::dup_file(&stderr_file)
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_knot/main.rs:388:21
[INFO] [stderr]     |
[INFO] [stderr] 388 |         let child = try!(cmd.spawn().map_err(|e|
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_tree/main.rs:160:5
[INFO] [stderr]     |
[INFO] [stderr] 160 |     try!(create_master_dirs(&master));
[INFO] [stderr]     |     ^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_tree/main.rs:161:5
[INFO] [stderr]     |
[INFO] [stderr] 161 |     try!(init_logging(&master, &master.log_file, &master.syslog_app_name,
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_tree/main.rs:166:5
[INFO] [stderr]     |
[INFO] [stderr] 166 |     try!(check_process(&master));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_tree/main.rs:168:9
[INFO] [stderr]     |
[INFO] [stderr] 168 |         try!(cgroup::ensure_in_group(name, &master.cgroup_controllers));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_tree/main.rs:223:5
[INFO] [stderr]     |
[INFO] [stderr] 223 |     try!(File::create(&pid_file)
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_tree/main.rs:465:5
[INFO] [stderr]     |
[INFO] [stderr] 465 |     try!(check_master_config(&master));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_tree/main.rs:466:5
[INFO] [stderr]     |
[INFO] [stderr] 466 |     try!(global_init(&master, &options));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_tree/main.rs:462:32
[INFO] [stderr]     |
[INFO] [stderr] 462 |     let master: MasterConfig = try!(parse_config(&config_file,
[INFO] [stderr]     |                                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_tree/main.rs:581:9
[INFO] [stderr]     |
[INFO] [stderr] 581 |         try!(socket(AddressFamily::Inet, SockType::Stream,
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/bin/lithos_switch.rs:84:5
[INFO] [stderr]    |
[INFO] [stderr] 84 |     try!(copy(&config_file, &tmp_filename)
[INFO] [stderr]    |     ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/bin/lithos_switch.rs:86:5
[INFO] [stderr]    |
[INFO] [stderr] 86 |     try!(rename(&tmp_filename, &target_fn)
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_ps/ascii.rs:100:9
[INFO] [stderr]     |
[INFO] [stderr] 100 |         try!(write!(writer, "{}\n", self.head));
[INFO] [stderr]     |         ^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_ps/ascii.rs:109:17
[INFO] [stderr]     |
[INFO] [stderr] 109 |                 try!(write!(writer, "{}├─{}\n", indent, child.head));
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_ps/ascii.rs:110:17
[INFO] [stderr]     |
[INFO] [stderr] 110 |                 try!(child._print_children(writer, &childindent[..]));
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_ps/ascii.rs:115:13
[INFO] [stderr]     |
[INFO] [stderr] 115 |             try!(write!(writer, "{}└─{}\n", indent, child.head));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_ps/ascii.rs:116:13
[INFO] [stderr]     |
[INFO] [stderr] 116 |             try!(child._print_children(writer, &childindent[..]));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/bin/lithos_ps/ascii.rs:130:23
[INFO] [stderr]     |
[INFO] [stderr] 130 |                     1 ... 10240 => (1f64, "B"),
[INFO] [stderr]     |                       ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/bin/lithos_ps/ascii.rs:131:27
[INFO] [stderr]     |
[INFO] [stderr] 131 |                     10241 ... 10485760 => (1024f64, "kiB"),
[INFO] [stderr]     |                           ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/bin/lithos_ps/ascii.rs:132:30
[INFO] [stderr]     |
[INFO] [stderr] 132 |                     10485761 ... 10737418240 => (1048576f64, "MiB"),
[INFO] [stderr]     |                              ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_ps/main.rs:142:5
[INFO] [stderr]     |
[INFO] [stderr] 142 |     try!(f.read_to_string(&mut buf));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_ps/main.rs:139:17
[INFO] [stderr]     |
[INFO] [stderr] 139 |     let mut f = try!(File::open(
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_ps/main.rs:229:5
[INFO] [stderr]     |
[INFO] [stderr] 229 |     try!(f.read_line(&mut line));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_ps/main.rs:185:28
[INFO] [stderr]     |
[INFO] [stderr] 185 |     let f = BufReader::new(try!(File::open(
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_ps/main.rs:189:22
[INFO] [stderr]     |
[INFO] [stderr] 189 |     result.cmdline = try!(read_cmdline(pid));
[INFO] [stderr]     |                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_ps/main.rs:191:20
[INFO] [stderr]     |
[INFO] [stderr] 191 |         let line = try!(line);
[INFO] [stderr]     |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_ps/main.rs:226:32
[INFO] [stderr]     |
[INFO] [stderr] 226 |     let mut f = BufReader::new(try!(File::open(
[INFO] [stderr]     |                                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_ps/main.rs:533:9
[INFO] [stderr]     |
[INFO] [stderr] 533 |         try!(tree.print(&mut out));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/bin/lithos_ps/main.rs:595:56
[INFO] [stderr]     |
[INFO] [stderr] 595 |         let new_children: BTreeMap<String, Instance> = try!(scan_processes())
[INFO] [stderr]     |                                                        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/bin/lithos_cmd.rs:39:5
[INFO] [stderr]    |
[INFO] [stderr] 39 |     try!(create_master_dirs(&master));
[INFO] [stderr]    |     ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/bin/lithos_cmd.rs:60:5
[INFO] [stderr]    |
[INFO] [stderr] 60 |     try!(init_logging(&master, &log_file,
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/bin/lithos_cmd.rs:36:32
[INFO] [stderr]    |
[INFO] [stderr] 36 |     let master: MasterConfig = try!(parse_config(&master_cfg,
[INFO] [stderr]    |                                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/bin/lithos_cmd.rs:48:34
[INFO] [stderr]    |
[INFO] [stderr] 48 |     let sandbox: SandboxConfig = try!(parse_config(
[INFO] [stderr]    |                                  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/bin/lithos_cmd.rs:75:24
[INFO] [stderr]    |
[INFO] [stderr] 75 |     sandbox_children = try!(parse_config(&cfg,
[INFO] [stderr]    |                        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/bin/lithos_cmd.rs:78:21
[INFO] [stderr]    |
[INFO] [stderr] 78 |     let child_cfg = try!(sandbox_children.get(&command_name)
[INFO] [stderr]    |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `lithos` (bin "lithos_check" test) generated 2 warnings (run `cargo fix --bin "lithos_check" --tests` to apply 1 suggestion)
[INFO] [stderr] warning: `lithos` (bin "lithos_crypt" test) generated 1 warning
[INFO] [stderr] warning: `lithos` (bin "lithos_knot" test) generated 16 warnings
[INFO] [stderr] warning: `lithos` (bin "lithos_tree" test) generated 9 warnings
[INFO] [stderr] warning: `lithos` (bin "lithos_switch" test) generated 2 warnings
[INFO] [stderr] warning: `lithos` (bin "lithos_ps" test) generated 17 warnings (run `cargo fix --bin "lithos_ps" --tests` to apply 3 suggestions)
[INFO] [stderr] warning: `lithos` (bin "lithos_cmd" test) generated 6 warnings
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.05s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: rustc-serialize v0.3.24, syn v0.14.8
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/lithos-9de6016cbf39ed90)
[INFO] [stdout] 
[INFO] [stdout] running 16 tests
[INFO] [stdout] test child_config::test::serialize_compat ... ok
[INFO] [stdout] test child_config::test::serialize_vars ... ok
[INFO] [stdout] test container_config::test::correct_name ... ok
[INFO] [stdout] test child_config::test::deserialize_compat ... ok
[INFO] [stdout] test child_config::test::dedeserialize_vars ... ok
[INFO] [stdout] test container_config::test::just_var ... ok
[INFO] [stdout] test container_config::test::middle ... ok
[INFO] [stdout] test container_config::test::prefix ... ok
[INFO] [stdout] test container_config::test::suffix ... ok
[INFO] [stdout] test container_config::test::two_vars ... ok
[INFO] [stdout] test nacl::test::test_nacl_secretbox_vectors ... ok
[INFO] [stdout] test nacl::test::test_nacl_box_vectors ... ok
[INFO] [stdout] test nacl::test::curve_roundtrip ... ok
[INFO] [stdout] test nacl::test::test_box_edwards_seal ... ok
[INFO] [stdout] test nacl::test::test_box_seal ... ok
[INFO] [stdout] test nacl::test::curve_roundtrip2 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 16 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/lithos_check.rs (/opt/rustwide/target/debug/deps/lithos_check-f26c21f752ceba97)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/lithos_clean.rs (/opt/rustwide/target/debug/deps/lithos_clean-db88f52f99dd9be4)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/lithos_cmd.rs (/opt/rustwide/target/debug/deps/lithos_cmd-b95f2c395e75b339)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/lithos_crypt.rs (/opt/rustwide/target/debug/deps/lithos_crypt-e5e03ef73d1de331)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/lithos_knot/main.rs (/opt/rustwide/target/debug/deps/lithos_knot-182cf999dd38919d)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/lithos_ps/main.rs (/opt/rustwide/target/debug/deps/lithos_ps-f6032ef6da683537)
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test ascii::test::test_many_nodes ... ok
[INFO] [stdout] test ascii::test::test_one_node ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/lithos_switch.rs (/opt/rustwide/target/debug/deps/lithos_switch-25914ecbe0be78f9)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/lithos_tree/main.rs (/opt/rustwide/target/debug/deps/lithos_tree-f04cee7d740293cf)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests lithos
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "0e8b22e3539060cead0bab8c4382acd29e4d9ff8ed83c9912ed15b3b03e08e19", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0e8b22e3539060cead0bab8c4382acd29e4d9ff8ed83c9912ed15b3b03e08e19", kill_on_drop: false }`
[INFO] [stdout] 0e8b22e3539060cead0bab8c4382acd29e4d9ff8ed83c9912ed15b3b03e08e19
