[INFO] cloning repository https://github.com/Turboshell/turboshell
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Turboshell/turboshell" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTurboshell%2Fturboshell", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTurboshell%2Fturboshell'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 1fcecb90a373e4932fdc348e43280e75cd432b77
[INFO] testing Turboshell/turboshell against beta-2021-08-01 for beta-1.55-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTurboshell%2Fturboshell" "/workspace/builds/worker-6/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/Turboshell/turboshell on toolchain beta-2021-08-01
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-08-01" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/Turboshell/turboshell
[INFO] finished tweaking git repo https://github.com/Turboshell/turboshell
[INFO] tweaked toml for git repo https://github.com/Turboshell/turboshell written to /workspace/builds/worker-6/source/Cargo.toml
[INFO] crate git repo https://github.com/Turboshell/turboshell already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-08-01" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded xattr v0.1.10
[INFO] [stderr]   Downloaded tar v0.4.9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-08-01" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c8332773c5e09b4dec3965668d277c99c5db6607fe5f8cf6e58298271f0e3d1e
[INFO] running `Command { std: "docker" "start" "-a" "c8332773c5e09b4dec3965668d277c99c5db6607fe5f8cf6e58298271f0e3d1e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c8332773c5e09b4dec3965668d277c99c5db6607fe5f8cf6e58298271f0e3d1e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c8332773c5e09b4dec3965668d277c99c5db6607fe5f8cf6e58298271f0e3d1e", kill_on_drop: false }`
[INFO] [stdout] c8332773c5e09b4dec3965668d277c99c5db6607fe5f8cf6e58298271f0e3d1e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/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" "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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-08-01" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2aced97f4fdfac1ddba5b6bee9929f79a39fd57708887766f0a4a8ac165812b9
[INFO] running `Command { std: "docker" "start" "-a" "2aced97f4fdfac1ddba5b6bee9929f79a39fd57708887766f0a4a8ac165812b9", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.18
[INFO] [stderr]    Compiling winapi-build v0.1.1
[INFO] [stderr]    Compiling winapi v0.2.8
[INFO] [stderr]    Compiling num-traits v0.1.36
[INFO] [stderr]    Compiling gcc v0.3.40
[INFO] [stderr]    Compiling pkg-config v0.3.8
[INFO] [stderr]    Compiling rustc-serialize v0.3.22
[INFO] [stderr]    Compiling lazy_static v0.2.2
[INFO] [stderr]    Compiling utf8-ranges v0.1.3
[INFO] [stderr]    Compiling regex-syntax v0.3.9
[INFO] [stderr]    Compiling strsim v0.5.2
[INFO] [stderr]    Compiling serde v0.7.15
[INFO] [stderr]    Compiling itertools v0.4.19
[INFO] [stderr]    Compiling cast v0.1.0
[INFO] [stderr]    Compiling byteorder v0.5.3
[INFO] [stderr]    Compiling memchr v0.1.11
[INFO] [stderr]    Compiling rand v0.3.15
[INFO] [stderr]    Compiling xattr v0.1.10
[INFO] [stderr]    Compiling filetime v0.1.10
[INFO] [stderr]    Compiling kernel32-sys v0.2.2
[INFO] [stderr]    Compiling crc v1.3.0
[INFO] [stderr]    Compiling aho-corasick v0.5.3
[INFO] [stderr]    Compiling tar v0.4.9
[INFO] [stderr]    Compiling libsodium-sys v0.0.12
[INFO] [stderr]    Compiling tempdir v0.3.5
[INFO] [stderr]    Compiling num-integer v0.1.32
[INFO] [stderr]    Compiling time v0.1.35
[INFO] [stderr]    Compiling thread-id v2.0.0
[INFO] [stderr]    Compiling walkdir v0.1.8
[INFO] [stderr]    Compiling miniz-sys v0.1.7
[INFO] [stderr]    Compiling num-iter v0.1.32
[INFO] [stderr]    Compiling thread_local v0.2.7
[INFO] [stderr]    Compiling num v0.1.36
[INFO] [stderr]    Compiling chrono v0.2.25
[INFO] [stderr]    Compiling regex v0.1.80
[INFO] [stderr]    Compiling sodiumoxide v0.0.12
[INFO] [stderr]    Compiling flate2 v0.2.14
[INFO] [stderr]    Compiling toml v0.1.30
[INFO] [stderr]    Compiling turboshell v0.0.0-snapshot (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling docopt v0.6.86
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/commands/keytool.rs:22:39
[INFO] [stdout]    |
[INFO] [stdout] 22 |         let (mut input, source): (Box<BufRead>, PathBuf) = if should_read_from_file {
[INFO] [stdout]    |                                       ^^^^^^^ help: use `dyn`: `dyn BufRead`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/commands/keytool.rs:48:29
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let mut output: Box<Write> = if output_string != "" {
[INFO] [stdout]    |                             ^^^^^ help: use `dyn`: `dyn Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/compile.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |         try!(header.set_path(entry_name + "/"));
[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/commands/compile.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 54 |         try!(builder.append(&header, io::empty()));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/compile.rs:51:25
[INFO] [stdout]    |
[INFO] [stdout] 51 |         header.set_mode(try!(entry_path.as_ref().metadata()).mode());
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/compile.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 59 |         try!(header.set_path(entry_name));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/compile.rs:63:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |         try!(builder.append(&header, try!(File::open(entry_path.as_ref()))));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/compile.rs:58:24
[INFO] [stdout]    |
[INFO] [stdout] 58 |         let metadata = try!(entry_path.as_ref().metadata());
[INFO] [stdout]    |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/compile.rs:63:38
[INFO] [stdout]    |
[INFO] [stdout] 63 |         try!(builder.append(&header, try!(File::open(entry_path.as_ref()))));
[INFO] [stdout]    |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/compile.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 82 |         try!(header.set_path("archive.toml"));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/compile.rs:86:9
[INFO] [stdout]    |
[INFO] [stdout] 86 |         try!(builder.append(&header, io::Cursor::new(archive_toml_contents.as_bytes())));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/compile.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 89 |         try!(write_to_archive(&mut builder, &basedir_with_slash, PathBuf::from(&self.basedir).join("roles")));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/commands/compile.rs:115:9
[INFO] [stdout]     |
[INFO] [stdout] 115 |         try!(builder.into_inner());
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/compile.rs:94:13
[INFO] [stdout]    |
[INFO] [stdout] 94 |             try!(write_to_archive(&mut builder, &basedir_with_slash, &role.path));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/commands/compile.rs:106:25
[INFO] [stdout]     |
[INFO] [stdout] 106 |                         try!(write_to_archive(&mut builder, &basedir_with_slash, entry_path));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/commands/compile.rs:103:37
[INFO] [stdout]     |
[INFO] [stdout] 103 |                         let entry = try!(entry);
[INFO] [stdout]     |                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/commands/compile.rs:176:25
[INFO] [stdout]     |
[INFO] [stdout] 176 |     let mut output: Box<Write> = if output_string != "" {
[INFO] [stdout]     |                         ^^^^^ help: use `dyn`: `dyn Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/commands/inspect.rs:12:24
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let mut input: Box<Read> = if archive_string != "" {
[INFO] [stdout]    |                        ^^^^ help: use `dyn`: `dyn Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/commands/inspect.rs:44:25
[INFO] [stdout]    |
[INFO] [stdout] 44 |     let mut output: Box<Write> = if output_string != "" {
[INFO] [stdout]    |                         ^^^^^ help: use `dyn`: `dyn Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/run.rs:23:21
[INFO] [stdout]    |
[INFO] [stdout] 23 |                     try!(package.run(out));
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/run.rs:53:33
[INFO] [stdout]    |
[INFO] [stdout] 53 |             writeln!(out, "{}", try!(line)).unwrap();
[INFO] [stdout]    |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/run.rs:57:18
[INFO] [stdout]    |
[INFO] [stdout] 57 |     let status = try!(child.wait());
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/commands/run.rs:78:24
[INFO] [stdout]    |
[INFO] [stdout] 78 |     let mut input: Box<Read> = if archive_string != "" {
[INFO] [stdout]    |                        ^^^^ help: use `dyn`: `dyn Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/resolve.rs:124:32
[INFO] [stdout]     |
[INFO] [stdout] 124 |                         v.push(try!(Package::from_file(&dir, dep_name)));
[INFO] [stdout]     |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/resolve.rs:209:25
[INFO] [stdout]     |
[INFO] [stdout] 209 |                         try!(stack.outdent());
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/runlist.rs:75:22
[INFO] [stdout]    |
[INFO] [stdout] 75 |         let config = try!(read_toml(&config_path));
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:177:22
[INFO] [stdout]     |
[INFO] [stdout] 177 |         let config = try!(read_toml(&role_path));
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:187:40
[INFO] [stdout]     |
[INFO] [stdout] 187 | ...                   v.push(try!(Package::from_file(basedir, val)));
[INFO] [stdout]     |                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:239:17
[INFO] [stdout]     |
[INFO] [stdout] 239 |                 try!(e.emit_map_elt_key(i, |e| e.emit_str(&package.name)));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:240:17
[INFO] [stdout]     |
[INFO] [stdout] 240 |                 try!(e.emit_map_elt_val(i, |e| e.emit_str(&package.version)));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:253:20
[INFO] [stdout]     |
[INFO] [stdout] 253 |             v.push(try!(Role::from_file(basedir, role)));
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:256:27
[INFO] [stdout]     |
[INFO] [stdout] 256 |                     repo: try!(PackageRepository::from_basedir(basedir)),
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:262:23
[INFO] [stdout]     |
[INFO] [stdout] 262 |         let archive = try!(read_toml(&path));
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:292:9
[INFO] [stdout]     |
[INFO] [stdout] 292 |         try!(e.emit_map(1, |e| {
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:313:9
[INFO] [stdout]     |
[INFO] [stdout] 313 |         try!(e.emit_map(1, |e| {
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             try!(e.emit_map_elt_key(0, |e| e.emit_str("archive")));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:296:21
[INFO] [stdout]     |
[INFO] [stdout] 296 |                     try!(e.emit_map_elt_key(0, |e| e.emit_str("roles")));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:297:21
[INFO] [stdout]     |
[INFO] [stdout] 297 |                     try!(e.emit_map_elt_val(0, |e| {
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:301:33
[INFO] [stdout]     |
[INFO] [stdout] 301 | ...                   try!(e.emit_seq_elt(i, |e| e.emit_str(&role.name)));
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             try!(e.emit_map_elt_key(0, |e| e.emit_str("role")));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:319:25
[INFO] [stdout]     |
[INFO] [stdout] 319 |                         try!(e.emit_map_elt_key(i, |e| e.emit_str(&role.name)));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:320:25
[INFO] [stdout]     |
[INFO] [stdout] 320 |                         try!(e.emit_map_elt_val(0, |e| role.encode(e)));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/seedfile.rs:126:9
[INFO] [stdout]     |
[INFO] [stdout] 126 |         try!(v.write_u32::<BigEndian>(crc));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/unpack.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     try!(input.read_exact(&mut identifier_bytes));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/unpack.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     try!(input.read_exact(&mut signature_bytes_base64));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/unpack.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 |     try!(input.read_to_end(&mut tarball_bytes));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/runlist.rs:66:65
[INFO] [stdout]    |
[INFO] [stdout] 66 |     let result = unsafe { libc::access(CString::new(s).unwrap().as_ptr(), libc::F_OK | libc::X_OK) };
[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: `#[warn(temporary_cstring_as_ptr)]` on by default
[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: 47 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `RustcDecodable`: rustc-serialize is deprecated and no longer supported
[INFO] [stdout]   --> src/main.rs:29:16
[INFO] [stdout]    |
[INFO] [stdout] 29 | #[derive(Debug,RustcDecodable)]
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 11.50s
[INFO] running `Command { std: "docker" "inspect" "2aced97f4fdfac1ddba5b6bee9929f79a39fd57708887766f0a4a8ac165812b9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2aced97f4fdfac1ddba5b6bee9929f79a39fd57708887766f0a4a8ac165812b9", kill_on_drop: false }`
[INFO] [stdout] 2aced97f4fdfac1ddba5b6bee9929f79a39fd57708887766f0a4a8ac165812b9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/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" "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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-08-01" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5ba47e930b0bedb0f656dea91aa301dc23a5fe46558aa93be2f35be84fbfb34a
[INFO] running `Command { std: "docker" "start" "-a" "5ba47e930b0bedb0f656dea91aa301dc23a5fe46558aa93be2f35be84fbfb34a", kill_on_drop: false }`
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/commands/keytool.rs:22:39
[INFO] [stdout]    |
[INFO] [stdout] 22 |         let (mut input, source): (Box<BufRead>, PathBuf) = if should_read_from_file {
[INFO] [stdout]    |                                       ^^^^^^^ help: use `dyn`: `dyn BufRead`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/commands/keytool.rs:48:29
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let mut output: Box<Write> = if output_string != "" {
[INFO] [stdout]    |                             ^^^^^ help: use `dyn`: `dyn Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/compile.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |         try!(header.set_path(entry_name + "/"));
[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/commands/compile.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 54 |         try!(builder.append(&header, io::empty()));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/compile.rs:51:25
[INFO] [stdout]    |
[INFO] [stdout] 51 |         header.set_mode(try!(entry_path.as_ref().metadata()).mode());
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/compile.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 59 |         try!(header.set_path(entry_name));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/compile.rs:63:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |         try!(builder.append(&header, try!(File::open(entry_path.as_ref()))));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/compile.rs:58:24
[INFO] [stdout]    |
[INFO] [stdout] 58 |         let metadata = try!(entry_path.as_ref().metadata());
[INFO] [stdout]    |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/compile.rs:63:38
[INFO] [stdout]    |
[INFO] [stdout] 63 |         try!(builder.append(&header, try!(File::open(entry_path.as_ref()))));
[INFO] [stdout]    |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/compile.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 82 |         try!(header.set_path("archive.toml"));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/compile.rs:86:9
[INFO] [stdout]    |
[INFO] [stdout] 86 |         try!(builder.append(&header, io::Cursor::new(archive_toml_contents.as_bytes())));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/compile.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 89 |         try!(write_to_archive(&mut builder, &basedir_with_slash, PathBuf::from(&self.basedir).join("roles")));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/commands/compile.rs:115:9
[INFO] [stdout]     |
[INFO] [stdout] 115 |         try!(builder.into_inner());
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/compile.rs:94:13
[INFO] [stdout]    |
[INFO] [stdout] 94 |             try!(write_to_archive(&mut builder, &basedir_with_slash, &role.path));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/commands/compile.rs:106:25
[INFO] [stdout]     |
[INFO] [stdout] 106 |                         try!(write_to_archive(&mut builder, &basedir_with_slash, entry_path));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/commands/compile.rs:103:37
[INFO] [stdout]     |
[INFO] [stdout] 103 |                         let entry = try!(entry);
[INFO] [stdout]     |                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/commands/compile.rs:176:25
[INFO] [stdout]     |
[INFO] [stdout] 176 |     let mut output: Box<Write> = if output_string != "" {
[INFO] [stdout]     |                         ^^^^^ help: use `dyn`: `dyn Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/commands/inspect.rs:12:24
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let mut input: Box<Read> = if archive_string != "" {
[INFO] [stdout]    |                        ^^^^ help: use `dyn`: `dyn Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/commands/inspect.rs:44:25
[INFO] [stdout]    |
[INFO] [stdout] 44 |     let mut output: Box<Write> = if output_string != "" {
[INFO] [stdout]    |                         ^^^^^ help: use `dyn`: `dyn Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/run.rs:23:21
[INFO] [stdout]    |
[INFO] [stdout] 23 |                     try!(package.run(out));
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/run.rs:53:33
[INFO] [stdout]    |
[INFO] [stdout] 53 |             writeln!(out, "{}", try!(line)).unwrap();
[INFO] [stdout]    |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/run.rs:57:18
[INFO] [stdout]    |
[INFO] [stdout] 57 |     let status = try!(child.wait());
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/commands/run.rs:78:24
[INFO] [stdout]    |
[INFO] [stdout] 78 |     let mut input: Box<Read> = if archive_string != "" {
[INFO] [stdout]    |                        ^^^^ help: use `dyn`: `dyn Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/resolve.rs:124:32
[INFO] [stdout]     |
[INFO] [stdout] 124 |                         v.push(try!(Package::from_file(&dir, dep_name)));
[INFO] [stdout]     |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/resolve.rs:209:25
[INFO] [stdout]     |
[INFO] [stdout] 209 |                         try!(stack.outdent());
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/runlist.rs:75:22
[INFO] [stdout]    |
[INFO] [stdout] 75 |         let config = try!(read_toml(&config_path));
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:177:22
[INFO] [stdout]     |
[INFO] [stdout] 177 |         let config = try!(read_toml(&role_path));
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:187:40
[INFO] [stdout]     |
[INFO] [stdout] 187 | ...                   v.push(try!(Package::from_file(basedir, val)));
[INFO] [stdout]     |                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:239:17
[INFO] [stdout]     |
[INFO] [stdout] 239 |                 try!(e.emit_map_elt_key(i, |e| e.emit_str(&package.name)));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:240:17
[INFO] [stdout]     |
[INFO] [stdout] 240 |                 try!(e.emit_map_elt_val(i, |e| e.emit_str(&package.version)));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:253:20
[INFO] [stdout]     |
[INFO] [stdout] 253 |             v.push(try!(Role::from_file(basedir, role)));
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:256:27
[INFO] [stdout]     |
[INFO] [stdout] 256 |                     repo: try!(PackageRepository::from_basedir(basedir)),
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:262:23
[INFO] [stdout]     |
[INFO] [stdout] 262 |         let archive = try!(read_toml(&path));
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:292:9
[INFO] [stdout]     |
[INFO] [stdout] 292 |         try!(e.emit_map(1, |e| {
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:313:9
[INFO] [stdout]     |
[INFO] [stdout] 313 |         try!(e.emit_map(1, |e| {
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             try!(e.emit_map_elt_key(0, |e| e.emit_str("archive")));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:296:21
[INFO] [stdout]     |
[INFO] [stdout] 296 |                     try!(e.emit_map_elt_key(0, |e| e.emit_str("roles")));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:297:21
[INFO] [stdout]     |
[INFO] [stdout] 297 |                     try!(e.emit_map_elt_val(0, |e| {
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:301:33
[INFO] [stdout]     |
[INFO] [stdout] 301 | ...                   try!(e.emit_seq_elt(i, |e| e.emit_str(&role.name)));
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             try!(e.emit_map_elt_key(0, |e| e.emit_str("role")));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:319:25
[INFO] [stdout]     |
[INFO] [stdout] 319 |                         try!(e.emit_map_elt_key(i, |e| e.emit_str(&role.name)));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:320:25
[INFO] [stdout]     |
[INFO] [stdout] 320 |                         try!(e.emit_map_elt_val(0, |e| role.encode(e)));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/seedfile.rs:126:9
[INFO] [stdout]     |
[INFO] [stdout] 126 |         try!(v.write_u32::<BigEndian>(crc));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/unpack.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     try!(input.read_exact(&mut identifier_bytes));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/unpack.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     try!(input.read_exact(&mut signature_bytes_base64));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/unpack.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 |     try!(input.read_to_end(&mut tarball_bytes));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/runlist.rs:66:65
[INFO] [stdout]    |
[INFO] [stdout] 66 |     let result = unsafe { libc::access(CString::new(s).unwrap().as_ptr(), libc::F_OK | libc::X_OK) };
[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: `#[warn(temporary_cstring_as_ptr)]` on by default
[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: 47 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `RustcDecodable`: rustc-serialize is deprecated and no longer supported
[INFO] [stdout]   --> src/main.rs:29:16
[INFO] [stdout]    |
[INFO] [stdout] 29 | #[derive(Debug,RustcDecodable)]
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling turboshell v0.0.0-snapshot (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `RustcDecodable`: rustc-serialize is deprecated and no longer supported
[INFO] [stdout]   --> src/main.rs:29:16
[INFO] [stdout]    |
[INFO] [stdout] 29 | #[derive(Debug,RustcDecodable)]
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/commands/keytool.rs:22:39
[INFO] [stdout]    |
[INFO] [stdout] 22 |         let (mut input, source): (Box<BufRead>, PathBuf) = if should_read_from_file {
[INFO] [stdout]    |                                       ^^^^^^^ help: use `dyn`: `dyn BufRead`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/commands/keytool.rs:48:29
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let mut output: Box<Write> = if output_string != "" {
[INFO] [stdout]    |                             ^^^^^ help: use `dyn`: `dyn Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/compile.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |         try!(header.set_path(entry_name + "/"));
[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/commands/compile.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 54 |         try!(builder.append(&header, io::empty()));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/compile.rs:51:25
[INFO] [stdout]    |
[INFO] [stdout] 51 |         header.set_mode(try!(entry_path.as_ref().metadata()).mode());
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/compile.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 59 |         try!(header.set_path(entry_name));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/compile.rs:63:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |         try!(builder.append(&header, try!(File::open(entry_path.as_ref()))));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/compile.rs:58:24
[INFO] [stdout]    |
[INFO] [stdout] 58 |         let metadata = try!(entry_path.as_ref().metadata());
[INFO] [stdout]    |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/compile.rs:63:38
[INFO] [stdout]    |
[INFO] [stdout] 63 |         try!(builder.append(&header, try!(File::open(entry_path.as_ref()))));
[INFO] [stdout]    |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/compile.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 82 |         try!(header.set_path("archive.toml"));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/compile.rs:86:9
[INFO] [stdout]    |
[INFO] [stdout] 86 |         try!(builder.append(&header, io::Cursor::new(archive_toml_contents.as_bytes())));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/compile.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 89 |         try!(write_to_archive(&mut builder, &basedir_with_slash, PathBuf::from(&self.basedir).join("roles")));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/commands/compile.rs:115:9
[INFO] [stdout]     |
[INFO] [stdout] 115 |         try!(builder.into_inner());
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/compile.rs:94:13
[INFO] [stdout]    |
[INFO] [stdout] 94 |             try!(write_to_archive(&mut builder, &basedir_with_slash, &role.path));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/commands/compile.rs:106:25
[INFO] [stdout]     |
[INFO] [stdout] 106 |                         try!(write_to_archive(&mut builder, &basedir_with_slash, entry_path));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/commands/compile.rs:103:37
[INFO] [stdout]     |
[INFO] [stdout] 103 |                         let entry = try!(entry);
[INFO] [stdout]     |                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/commands/compile.rs:176:25
[INFO] [stdout]     |
[INFO] [stdout] 176 |     let mut output: Box<Write> = if output_string != "" {
[INFO] [stdout]     |                         ^^^^^ help: use `dyn`: `dyn Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/commands/inspect.rs:12:24
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let mut input: Box<Read> = if archive_string != "" {
[INFO] [stdout]    |                        ^^^^ help: use `dyn`: `dyn Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/commands/inspect.rs:44:25
[INFO] [stdout]    |
[INFO] [stdout] 44 |     let mut output: Box<Write> = if output_string != "" {
[INFO] [stdout]    |                         ^^^^^ help: use `dyn`: `dyn Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/run.rs:23:21
[INFO] [stdout]    |
[INFO] [stdout] 23 |                     try!(package.run(out));
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/run.rs:53:33
[INFO] [stdout]    |
[INFO] [stdout] 53 |             writeln!(out, "{}", try!(line)).unwrap();
[INFO] [stdout]    |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/commands/run.rs:57:18
[INFO] [stdout]    |
[INFO] [stdout] 57 |     let status = try!(child.wait());
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/commands/run.rs:78:24
[INFO] [stdout]    |
[INFO] [stdout] 78 |     let mut input: Box<Read> = if archive_string != "" {
[INFO] [stdout]    |                        ^^^^ help: use `dyn`: `dyn Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/resolve.rs:124:32
[INFO] [stdout]     |
[INFO] [stdout] 124 |                         v.push(try!(Package::from_file(&dir, dep_name)));
[INFO] [stdout]     |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/resolve.rs:209:25
[INFO] [stdout]     |
[INFO] [stdout] 209 |                         try!(stack.outdent());
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/runlist.rs:75:22
[INFO] [stdout]    |
[INFO] [stdout] 75 |         let config = try!(read_toml(&config_path));
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:177:22
[INFO] [stdout]     |
[INFO] [stdout] 177 |         let config = try!(read_toml(&role_path));
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:187:40
[INFO] [stdout]     |
[INFO] [stdout] 187 | ...                   v.push(try!(Package::from_file(basedir, val)));
[INFO] [stdout]     |                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:239:17
[INFO] [stdout]     |
[INFO] [stdout] 239 |                 try!(e.emit_map_elt_key(i, |e| e.emit_str(&package.name)));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:240:17
[INFO] [stdout]     |
[INFO] [stdout] 240 |                 try!(e.emit_map_elt_val(i, |e| e.emit_str(&package.version)));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:253:20
[INFO] [stdout]     |
[INFO] [stdout] 253 |             v.push(try!(Role::from_file(basedir, role)));
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:256:27
[INFO] [stdout]     |
[INFO] [stdout] 256 |                     repo: try!(PackageRepository::from_basedir(basedir)),
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:262:23
[INFO] [stdout]     |
[INFO] [stdout] 262 |         let archive = try!(read_toml(&path));
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:292:9
[INFO] [stdout]     |
[INFO] [stdout] 292 |         try!(e.emit_map(1, |e| {
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:313:9
[INFO] [stdout]     |
[INFO] [stdout] 313 |         try!(e.emit_map(1, |e| {
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |             try!(e.emit_map_elt_key(0, |e| e.emit_str("archive")));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:296:21
[INFO] [stdout]     |
[INFO] [stdout] 296 |                     try!(e.emit_map_elt_key(0, |e| e.emit_str("roles")));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:297:21
[INFO] [stdout]     |
[INFO] [stdout] 297 |                     try!(e.emit_map_elt_val(0, |e| {
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:301:33
[INFO] [stdout]     |
[INFO] [stdout] 301 | ...                   try!(e.emit_seq_elt(i, |e| e.emit_str(&role.name)));
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             try!(e.emit_map_elt_key(0, |e| e.emit_str("role")));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:319:25
[INFO] [stdout]     |
[INFO] [stdout] 319 |                         try!(e.emit_map_elt_key(i, |e| e.emit_str(&role.name)));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/runlist.rs:320:25
[INFO] [stdout]     |
[INFO] [stdout] 320 |                         try!(e.emit_map_elt_val(0, |e| role.encode(e)));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/seedfile.rs:126:9
[INFO] [stdout]     |
[INFO] [stdout] 126 |         try!(v.write_u32::<BigEndian>(crc));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/unpack.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     try!(input.read_exact(&mut identifier_bytes));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/unpack.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     try!(input.read_exact(&mut signature_bytes_base64));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/unpack.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 |     try!(input.read_to_end(&mut tarball_bytes));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/runlist.rs:66:65
[INFO] [stdout]    |
[INFO] [stdout] 66 |     let result = unsafe { libc::access(CString::new(s).unwrap().as_ptr(), libc::F_OK | libc::X_OK) };
[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: `#[warn(temporary_cstring_as_ptr)]` on by default
[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: 47 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 3.89s
[INFO] running `Command { std: "docker" "inspect" "5ba47e930b0bedb0f656dea91aa301dc23a5fe46558aa93be2f35be84fbfb34a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5ba47e930b0bedb0f656dea91aa301dc23a5fe46558aa93be2f35be84fbfb34a", kill_on_drop: false }`
[INFO] [stdout] 5ba47e930b0bedb0f656dea91aa301dc23a5fe46558aa93be2f35be84fbfb34a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/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" "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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-08-01" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] ab8994b3ebce999bf9aa6fafceeb3e0693aae69dc0768e771ca52d9ab2e3c700
[INFO] running `Command { std: "docker" "start" "-a" "ab8994b3ebce999bf9aa6fafceeb3e0693aae69dc0768e771ca52d9ab2e3c700", kill_on_drop: false }`
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/commands/keytool.rs:22:39
[INFO] [stderr]    |
[INFO] [stderr] 22 |         let (mut input, source): (Box<BufRead>, PathBuf) = if should_read_from_file {
[INFO] [stderr]    |                                       ^^^^^^^ help: use `dyn`: `dyn BufRead`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` on by default
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/commands/keytool.rs:48:29
[INFO] [stderr]    |
[INFO] [stderr] 48 |         let mut output: Box<Write> = if output_string != "" {
[INFO] [stderr]    |                             ^^^^^ help: use `dyn`: `dyn Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/commands/compile.rs:49:9
[INFO] [stderr]    |
[INFO] [stderr] 49 |         try!(header.set_path(entry_name + "/"));
[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/commands/compile.rs:54:9
[INFO] [stderr]    |
[INFO] [stderr] 54 |         try!(builder.append(&header, io::empty()));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/commands/compile.rs:51:25
[INFO] [stderr]    |
[INFO] [stderr] 51 |         header.set_mode(try!(entry_path.as_ref().metadata()).mode());
[INFO] [stderr]    |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/commands/compile.rs:59:9
[INFO] [stderr]    |
[INFO] [stderr] 59 |         try!(header.set_path(entry_name));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/commands/compile.rs:63:9
[INFO] [stderr]    |
[INFO] [stderr] 63 |         try!(builder.append(&header, try!(File::open(entry_path.as_ref()))));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/commands/compile.rs:58:24
[INFO] [stderr]    |
[INFO] [stderr] 58 |         let metadata = try!(entry_path.as_ref().metadata());
[INFO] [stderr]    |                        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/commands/compile.rs:63:38
[INFO] [stderr]    |
[INFO] [stderr] 63 |         try!(builder.append(&header, try!(File::open(entry_path.as_ref()))));
[INFO] [stderr]    |                                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/commands/compile.rs:82:9
[INFO] [stderr]    |
[INFO] [stderr] 82 |         try!(header.set_path("archive.toml"));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/commands/compile.rs:86:9
[INFO] [stderr]    |
[INFO] [stderr] 86 |         try!(builder.append(&header, io::Cursor::new(archive_toml_contents.as_bytes())));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/commands/compile.rs:89:9
[INFO] [stderr]    |
[INFO] [stderr] 89 |         try!(write_to_archive(&mut builder, &basedir_with_slash, PathBuf::from(&self.basedir).join("roles")));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/commands/compile.rs:115:9
[INFO] [stderr]     |
[INFO] [stderr] 115 |         try!(builder.into_inner());
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/commands/compile.rs:94:13
[INFO] [stderr]    |
[INFO] [stderr] 94 |             try!(write_to_archive(&mut builder, &basedir_with_slash, &role.path));
[INFO] [stderr]    |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/commands/compile.rs:106:25
[INFO] [stderr]     |
[INFO] [stderr] 106 |                         try!(write_to_archive(&mut builder, &basedir_with_slash, entry_path));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/commands/compile.rs:103:37
[INFO] [stderr]     |
[INFO] [stderr] 103 |                         let entry = try!(entry);
[INFO] [stderr]     |                                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands/compile.rs:176:25
[INFO] [stderr]     |
[INFO] [stderr] 176 |     let mut output: Box<Write> = if output_string != "" {
[INFO] [stderr]     |                         ^^^^^ help: use `dyn`: `dyn Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/commands/inspect.rs:12:24
[INFO] [stderr]    |
[INFO] [stderr] 12 |     let mut input: Box<Read> = if archive_string != "" {
[INFO] [stderr]    |                        ^^^^ help: use `dyn`: `dyn Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/commands/inspect.rs:44:25
[INFO] [stderr]    |
[INFO] [stderr] 44 |     let mut output: Box<Write> = if output_string != "" {
[INFO] [stderr]    |                         ^^^^^ help: use `dyn`: `dyn Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/commands/run.rs:23:21
[INFO] [stderr]    |
[INFO] [stderr] 23 |                     try!(package.run(out));
[INFO] [stderr]    |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/commands/run.rs:53:33
[INFO] [stderr]    |
[INFO] [stderr] 53 |             writeln!(out, "{}", try!(line)).unwrap();
[INFO] [stderr]    |                                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/commands/run.rs:57:18
[INFO] [stderr]    |
[INFO] [stderr] 57 |     let status = try!(child.wait());
[INFO] [stderr]    |                  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/commands/run.rs:78:24
[INFO] [stderr]    |
[INFO] [stderr] 78 |     let mut input: Box<Read> = if archive_string != "" {
[INFO] [stderr]    |                        ^^^^ help: use `dyn`: `dyn Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/resolve.rs:124:32
[INFO] [stderr]     |
[INFO] [stderr] 124 |                         v.push(try!(Package::from_file(&dir, dep_name)));
[INFO] [stderr]     |                                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/resolve.rs:209:25
[INFO] [stderr]     |
[INFO] [stderr] 209 |                         try!(stack.outdent());
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/runlist.rs:75:22
[INFO] [stderr]    |
[INFO] [stderr] 75 |         let config = try!(read_toml(&config_path));
[INFO] [stderr]    |                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/runlist.rs:177:22
[INFO] [stderr]     |
[INFO] [stderr] 177 |         let config = try!(read_toml(&role_path));
[INFO] [stderr]     |                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/runlist.rs:187:40
[INFO] [stderr]     |
[INFO] [stderr] 187 | ...                   v.push(try!(Package::from_file(basedir, val)));
[INFO] [stderr]     |                              ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/runlist.rs:239:17
[INFO] [stderr]     |
[INFO] [stderr] 239 |                 try!(e.emit_map_elt_key(i, |e| e.emit_str(&package.name)));
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/runlist.rs:240:17
[INFO] [stderr]     |
[INFO] [stderr] 240 |                 try!(e.emit_map_elt_val(i, |e| e.emit_str(&package.version)));
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/runlist.rs:253:20
[INFO] [stderr]     |
[INFO] [stderr] 253 |             v.push(try!(Role::from_file(basedir, role)));
[INFO] [stderr]     |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/runlist.rs:256:27
[INFO] [stderr]     |
[INFO] [stderr] 256 |                     repo: try!(PackageRepository::from_basedir(basedir)),
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/runlist.rs:262:23
[INFO] [stderr]     |
[INFO] [stderr] 262 |         let archive = try!(read_toml(&path));
[INFO] [stderr]     |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/runlist.rs:292:9
[INFO] [stderr]     |
[INFO] [stderr] 292 |         try!(e.emit_map(1, |e| {
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/runlist.rs:313:9
[INFO] [stderr]     |
[INFO] [stderr] 313 |         try!(e.emit_map(1, |e| {
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/runlist.rs:293:13
[INFO] [stderr]     |
[INFO] [stderr] 293 |             try!(e.emit_map_elt_key(0, |e| e.emit_str("archive")));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/runlist.rs:296:21
[INFO] [stderr]     |
[INFO] [stderr] 296 |                     try!(e.emit_map_elt_key(0, |e| e.emit_str("roles")));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/runlist.rs:297:21
[INFO] [stderr]     |
[INFO] [stderr] 297 |                     try!(e.emit_map_elt_val(0, |e| {
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/runlist.rs:301:33
[INFO] [stderr]     |
[INFO] [stderr] 301 | ...                   try!(e.emit_seq_elt(i, |e| e.emit_str(&role.name)));
[INFO] [stderr]     |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/runlist.rs:314:13
[INFO] [stderr]     |
[INFO] [stderr] 314 |             try!(e.emit_map_elt_key(0, |e| e.emit_str("role")));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/runlist.rs:319:25
[INFO] [stderr]     |
[INFO] [stderr] 319 |                         try!(e.emit_map_elt_key(i, |e| e.emit_str(&role.name)));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/runlist.rs:320:25
[INFO] [stderr]     |
[INFO] [stderr] 320 |                         try!(e.emit_map_elt_val(0, |e| role.encode(e)));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/seedfile.rs:126:9
[INFO] [stderr]     |
[INFO] [stderr] 126 |         try!(v.write_u32::<BigEndian>(crc));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/unpack.rs:14:5
[INFO] [stderr]    |
[INFO] [stderr] 14 |     try!(input.read_exact(&mut identifier_bytes));
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/unpack.rs:22:5
[INFO] [stderr]    |
[INFO] [stderr] 22 |     try!(input.read_exact(&mut signature_bytes_base64));
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/unpack.rs:38:5
[INFO] [stderr]    |
[INFO] [stderr] 38 |     try!(input.read_to_end(&mut tarball_bytes));
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: getting the inner pointer of a temporary `CString`
[INFO] [stderr]   --> src/runlist.rs:66:65
[INFO] [stderr]    |
[INFO] [stderr] 66 |     let result = unsafe { libc::access(CString::new(s).unwrap().as_ptr(), libc::F_OK | libc::X_OK) };
[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: `#[warn(temporary_cstring_as_ptr)]` on by default
[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: `turboshell` (lib) generated 47 warnings
[INFO] [stderr] warning: `turboshell` (lib test) generated 47 warnings (47 duplicates)
[INFO] [stderr] warning: use of deprecated macro `RustcDecodable`: rustc-serialize is deprecated and no longer supported
[INFO] [stderr]   --> src/main.rs:29:16
[INFO] [stderr]    |
[INFO] [stderr] 29 | #[derive(Debug,RustcDecodable)]
[INFO] [stderr]    |                ^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `turboshell` (bin "turboshell") generated 1 warning
[INFO] [stderr] warning: `turboshell` (bin "turboshell" test) generated 1 warning (1 duplicate)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.05s
[INFO] [stderr]      Running unittests (/opt/rustwide/target/debug/deps/turboshell-8c6a0f3e1a5e4472)
[INFO] [stdout] 
[INFO] [stdout] running 28 tests
[INFO] [stdout] test runlist::tests::package_dependencies_isnt_an_array_of_strings ... ok
[INFO] [stdout] test runlist::tests::package_main_doesnt_exist ... ok
[INFO] [stdout] test runlist::tests::package_main_isnt_a_string ... ok
[INFO] [stdout] test runlist::tests::package_dependencies ... ok
[INFO] [stdout] test runlist::tests::package_main_isnt_executable ... ok
[INFO] [stdout] test runlist::tests::package_name_doesnt_match_directory ... ok
[INFO] [stdout] test runlist::tests::package_dependencies_isnt_an_array ... ok
[INFO] [stdout] test runlist::tests::package_has_broken_toml ... ok
[INFO] [stdout] test resolve::tests::cyclical_resolver_test ... ok
[INFO] [stdout] test runlist::tests::package_with_main_specified ... ok
[INFO] [stdout] test runlist::tests::package_name_isnt_a_string ... ok
[INFO] [stdout] test runlist::tests::package_version_isnt_a_string ... ok
[INFO] [stdout] test runlist::tests::package_env_vars ... ok
[INFO] [stdout] test runlist::tests::package_with_no_problems ... ok
[INFO] [stdout] test runlist::tests::package_env_values_arent_strings ... ok
[INFO] [stdout] test runlist::tests::package_env_isnt_a_table ... ok
[INFO] [stdout] test seedfile::tests::new_seedfile_each_time ... ok
[INFO] [stdout] test resolve::tests::simple_resolver_test ... ok
[INFO] [stdout] test resolve::tests::stack_tests ... ok
[INFO] [stdout] test runlist::tests::package_version_is_missing ... ok
[INFO] [stdout] test runlist::tests::package_with_invalid_utf8 ... ok
[INFO] [stdout] test runlist::tests::package_name_is_missing ... ok
[INFO] [stdout] test resolve::tests::env_test ... ok
[INFO] [stdout] test seedfile::tests::test_parsing ... ok
[INFO] [stdout] test seedfile::tests::roundtrip_seedfile ... ok
[INFO] [stdout] test runlist::tests::package_directory_is_missing ... ok
[INFO] [stdout] test resolve::tests::more_complicated_resolver_test ... ok
[INFO] [stdout] test runlist::tests::package_with_unreadable_package_toml ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- runlist::tests::package_with_unreadable_package_toml stdout ----
[INFO] [stdout] thread 'runlist::tests::package_with_unreadable_package_toml' panicked at 'called `Result::unwrap()` on an `Err` value: Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }', src/runlist.rs:440:84
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x556073c59c40 - std::backtrace_rs::backtrace::libunwind::trace::hff4d1766e93f64f1
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/std/src/../../backtrace/src/backtrace/libunwind.rs:90:5
[INFO] [stdout]    1:     0x556073c59c40 - std::backtrace_rs::backtrace::trace_unsynchronized::h56bbc8eb78770bcb
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x556073c59c40 - std::sys_common::backtrace::_print_fmt::h5c8e75464faca780
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/std/src/sys_common/backtrace.rs:67:5
[INFO] [stdout]    3:     0x556073c59c40 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h48b88277def8b362
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/std/src/sys_common/backtrace.rs:46:22
[INFO] [stdout]    4:     0x556073c7df8c - core::fmt::write::h3381b3176fe2b3d3
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/core/src/fmt/mod.rs:1115:17
[INFO] [stdout]    5:     0x556073c568f5 - std::io::Write::write_fmt::h5f34a676f60246b5
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/std/src/io/mod.rs:1665:15
[INFO] [stdout]    6:     0x556073c5bdbb - std::sys_common::backtrace::_print::ha537687d6c17dd0d
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/std/src/sys_common/backtrace.rs:49:5
[INFO] [stdout]    7:     0x556073c5bdbb - std::sys_common::backtrace::print::h61376ae57d131d72
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/std/src/sys_common/backtrace.rs:36:9
[INFO] [stdout]    8:     0x556073c5bdbb - std::panicking::default_hook::{{closure}}::h0f7208c0b9644a54
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/std/src/panicking.rs:208:50
[INFO] [stdout]    9:     0x556073c5b8cc - std::panicking::default_hook::hdac7fc06578c14ce
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/std/src/panicking.rs:222:9
[INFO] [stdout]   10:     0x556073c5c484 - std::panicking::rust_panic_with_hook::h72b21c283da3d1ef
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/std/src/panicking.rs:622:17
[INFO] [stdout]   11:     0x556073c5bf67 - std::panicking::begin_panic_handler::{{closure}}::he5778f1729cff84a
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/std/src/panicking.rs:519:13
[INFO] [stdout]   12:     0x556073c5a11c - std::sys_common::backtrace::__rust_end_short_backtrace::h2d11ca8b453b4b1d
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/std/src/sys_common/backtrace.rs:141:18
[INFO] [stdout]   13:     0x556073c5bec9 - rust_begin_unwind
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/std/src/panicking.rs:515:5
[INFO] [stdout]   14:     0x556073b54441 - core::panicking::panic_fmt::hf9de31d4acbce4db
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/core/src/panicking.rs:92:14
[INFO] [stdout]   15:     0x556073b54533 - core::result::unwrap_failed::ha0c84e81219e5878
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/core/src/result.rs:1599:5
[INFO] [stdout]   16:     0x556073bdf247 - core::result::Result<T,E>::unwrap::h4ac8894dd54f3da9
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/core/src/result.rs:1281:23
[INFO] [stdout]   17:     0x556073b75332 - turboshell::runlist::tests::package_with_unreadable_package_toml::heb0646270c899175
[INFO] [stdout]                                at /opt/rustwide/workdir/src/runlist.rs:440:9
[INFO] [stdout]   18:     0x556073b7508a - turboshell::runlist::tests::package_with_unreadable_package_toml::{{closure}}::h61cad24a9bb86d1a
[INFO] [stdout]                                at /opt/rustwide/workdir/src/runlist.rs:428:5
[INFO] [stdout]   19:     0x556073b9a25e - core::ops::function::FnOnce::call_once::h4a2c6e68f8235149
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/core/src/ops/function.rs:227:5
[INFO] [stdout]   20:     0x556073bd9dc3 - core::ops::function::FnOnce::call_once::hbb52c4519d3137b0
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/core/src/ops/function.rs:227:5
[INFO] [stdout]   21:     0x556073bd9dc3 - test::__rust_begin_short_backtrace::h86fe3a2a5a5121af
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/test/src/lib.rs:578:5
[INFO] [stdout]   22:     0x556073bd8878 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hfd956bc3d57399be
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/alloc/src/boxed.rs:1572:9
[INFO] [stdout]   23:     0x556073bd8878 - <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h40dc93e0ddb5938a
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/std/src/panic.rs:347:9
[INFO] [stdout]   24:     0x556073bd8878 - std::panicking::try::do_call::h90d07750cb47c562
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/std/src/panicking.rs:401:40
[INFO] [stdout]   25:     0x556073bd8878 - std::panicking::try::h063c84733ad2a629
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/std/src/panicking.rs:365:19
[INFO] [stdout]   26:     0x556073bd8878 - std::panic::catch_unwind::h0c464836a84e7c08
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/std/src/panic.rs:434:14
[INFO] [stdout]   27:     0x556073bd8878 - test::run_test_in_process::h5cb06ef620b157fc
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/test/src/lib.rs:601:18
[INFO] [stdout]   28:     0x556073bd8878 - test::run_test::run_test_inner::{{closure}}::h76f677f4b93f9828
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/test/src/lib.rs:493:39
[INFO] [stdout]   29:     0x556073ba700d - test::run_test::run_test_inner::{{closure}}::h366d01fe04f4d67a
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/test/src/lib.rs:520:37
[INFO] [stdout]   30:     0x556073ba700d - std::sys_common::backtrace::__rust_begin_short_backtrace::h7dfa0de4eb395af2
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/std/src/sys_common/backtrace.rs:125:18
[INFO] [stdout]   31:     0x556073bab7d8 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::hf0a74bb58798037f
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/std/src/thread/mod.rs:476:17
[INFO] [stdout]   32:     0x556073bab7d8 - <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hb024e854818586ac
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/std/src/panic.rs:347:9
[INFO] [stdout]   33:     0x556073bab7d8 - std::panicking::try::do_call::hb2dd9f1d0d48e41d
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/std/src/panicking.rs:401:40
[INFO] [stdout]   34:     0x556073bab7d8 - std::panicking::try::h4717ae7bac8b2bf3
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/std/src/panicking.rs:365:19
[INFO] [stdout]   35:     0x556073bab7d8 - std::panic::catch_unwind::h0dc8a061326ce8d8
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/std/src/panic.rs:434:14
[INFO] [stdout]   36:     0x556073bab7d8 - std::thread::Builder::spawn_unchecked::{{closure}}::haa369e2d6fd00aa1
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/std/src/thread/mod.rs:475:30
[INFO] [stdout]   37:     0x556073bab7d8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h36dcf3de8b056f17
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/core/src/ops/function.rs:227:5
[INFO] [stdout]   38:     0x556073c61a97 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h65c29e4642be2358
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/alloc/src/boxed.rs:1572:9
[INFO] [stdout]   39:     0x556073c61a97 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hd0f8f7fbbd9fffbf
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/alloc/src/boxed.rs:1572:9
[INFO] [stdout]   40:     0x556073c61a97 - std::sys::unix::thread::Thread::new::thread_start::h2fd22fee3ca77b65
[INFO] [stdout]                                at /rustc/53fd98ca776cb875bc9e5514f56b52eb74f9e7a9/library/std/src/sys/unix/thread.rs:74:17
[INFO] [stdout]   41:     0x7f274f11f609 - start_thread
[INFO] [stdout]   42:     0x7f274eeef293 - clone
[INFO] [stdout]   43:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     runlist::tests::package_with_unreadable_package_toml
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 27 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass '--lib'
[INFO] running `Command { std: "docker" "inspect" "ab8994b3ebce999bf9aa6fafceeb3e0693aae69dc0768e771ca52d9ab2e3c700", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ab8994b3ebce999bf9aa6fafceeb3e0693aae69dc0768e771ca52d9ab2e3c700", kill_on_drop: false }`
[INFO] [stdout] ab8994b3ebce999bf9aa6fafceeb3e0693aae69dc0768e771ca52d9ab2e3c700
