[INFO] fetching crate rustpak 0.1.0...
[INFO] testing rustpak-0.1.0 against try#c2e32f1c9652b13ed99608599c1e855462f421f3 for pr-146098-8
[INFO] extracting crate rustpak 0.1.0 into /workspace/builds/worker-5-tc2/source
[INFO] started tweaking crates.io crate rustpak 0.1.0
[INFO] finished tweaking crates.io crate rustpak 0.1.0
[INFO] tweaked toml for crates.io crate rustpak 0.1.0 written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate rustpak 0.1.0 on toolchain c2e32f1c9652b13ed99608599c1e855462f421f3
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate rustpak 0.1.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: only one of `license` or `license-file` is necessary
[INFO] [stderr] `license` should be used if the package license can be expressed with a standard SPDX expression.
[INFO] [stderr] `license-file` should be used if the package uses a non-standard license.
[INFO] [stderr] See https://doc.rust-lang.org/cargo/reference/manifest.html#the-license-and-license-file-fields for more information.
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] eec82a6936a397016f28ccbe33fcbc1a8ea7377f46d7cfb222fe5b64bf3c01d8
[INFO] running `Command { std: "docker" "start" "-a" "eec82a6936a397016f28ccbe33fcbc1a8ea7377f46d7cfb222fe5b64bf3c01d8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "eec82a6936a397016f28ccbe33fcbc1a8ea7377f46d7cfb222fe5b64bf3c01d8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "eec82a6936a397016f28ccbe33fcbc1a8ea7377f46d7cfb222fe5b64bf3c01d8", kill_on_drop: false }`
[INFO] [stdout] eec82a6936a397016f28ccbe33fcbc1a8ea7377f46d7cfb222fe5b64bf3c01d8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8cd6784e14e42745d8210b2892e356b2446815467aa970f8e111985237b65b36
[INFO] running `Command { std: "docker" "start" "-a" "8cd6784e14e42745d8210b2892e356b2446815467aa970f8e111985237b65b36", kill_on_drop: false }`
[INFO] [stderr] warning: only one of `license` or `license-file` is necessary
[INFO] [stderr] `license` should be used if the package license can be expressed with a standard SPDX expression.
[INFO] [stderr] `license-file` should be used if the package uses a non-standard license.
[INFO] [stderr] See https://doc.rust-lang.org/cargo/reference/manifest.html#the-license-and-license-file-fields for more information.
[INFO] [stderr]    Compiling libc v0.2.91
[INFO] [stderr]    Compiling bitflags v1.2.1
[INFO] [stderr]    Compiling unicode-width v0.1.8
[INFO] [stderr]    Compiling ansi_term v0.11.0
[INFO] [stderr]    Compiling vec_map v0.8.2
[INFO] [stderr]    Compiling strsim v0.8.0
[INFO] [stderr]    Compiling byteorder v1.4.3
[INFO] [stderr]    Compiling textwrap v0.11.0
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling clap v2.33.3
[INFO] [stderr]    Compiling rustpak v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: found module declaration for lib.rs
[INFO] [stdout]  --> src/main.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | mod lib;
[INFO] [stdout]   | ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: lib.rs is the root of this crate's library target
[INFO] [stdout]   = help: to refer to it from other targets, use the library's name as the path
[INFO] [stdout]   = note: `#[warn(special_module_name)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:125:32
[INFO] [stdout]     |
[INFO] [stdout] 125 |     pub extern "C" fn new() -> Pak<'a> {
[INFO] [stdout]     |                                ^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout]     = note: `#[warn(improper_ctypes_definitions)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:134:39
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak, Box<dyn Error>> {
[INFO] [stdout]     |                                       ^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<Pak<'_>, Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:134:51
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak, Box<dyn Error>> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:134:58
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak, Box<dyn Error>> {
[INFO] [stdout]     |                                        --                ^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                        |
[INFO] [stdout]     |                                        the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak<'a>, Box<dyn Error>> {
[INFO] [stdout]     |                                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `String`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:164:50
[INFO] [stdout]     |
[INFO] [stdout] 164 |     pub extern "C" fn  add_file(&mut self, file: PakFileEntry) -> Result<&mut Pak<'a>, Box<dyn Error>> {
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct
[INFO] [stdout]     = note: this struct has unspecified layout
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<&mut Pak<'_>, Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:164:67
[INFO] [stdout]     |
[INFO] [stdout] 164 |     pub extern "C" fn  add_file(&mut self, file: PakFileEntry) -> Result<&mut Pak<'a>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:178:57
[INFO] [stdout]     |
[INFO] [stdout] 178 |     pub extern "C" fn  remove_file(&mut self, filename: &str) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                         ^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<(), Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:178:66
[INFO] [stdout]     |
[INFO] [stdout] 178 |     pub extern "C" fn  remove_file(&mut self, filename: &str) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:191:46
[INFO] [stdout]     |
[INFO] [stdout] 191 |     pub extern "C" fn  save(&self, filename: &str) ->  Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                              ^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<(), Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:191:56
[INFO] [stdout]     |
[INFO] [stdout] 191 |     pub extern "C" fn  save(&self, filename: &str) ->  Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:125:32
[INFO] [stdout]     |
[INFO] [stdout] 125 |     pub extern "C" fn new() -> Pak<'a> {
[INFO] [stdout]     |                                ^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout]     = note: `#[warn(improper_ctypes_definitions)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:134:39
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak, Box<dyn Error>> {
[INFO] [stdout]     |                                       ^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<Pak<'_>, Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:134:51
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak, Box<dyn Error>> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:134:58
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak, Box<dyn Error>> {
[INFO] [stdout]     |                                        --                ^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                        |
[INFO] [stdout]     |                                        the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak<'a>, Box<dyn Error>> {
[INFO] [stdout]     |                                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `String`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:164:50
[INFO] [stdout]     |
[INFO] [stdout] 164 |     pub extern "C" fn  add_file(&mut self, file: PakFileEntry) -> Result<&mut Pak<'a>, Box<dyn Error>> {
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct
[INFO] [stdout]     = note: this struct has unspecified layout
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<&mut Pak<'_>, Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:164:67
[INFO] [stdout]     |
[INFO] [stdout] 164 |     pub extern "C" fn  add_file(&mut self, file: PakFileEntry) -> Result<&mut Pak<'a>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:178:57
[INFO] [stdout]     |
[INFO] [stdout] 178 |     pub extern "C" fn  remove_file(&mut self, filename: &str) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                         ^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<(), Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:178:66
[INFO] [stdout]     |
[INFO] [stdout] 178 |     pub extern "C" fn  remove_file(&mut self, filename: &str) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:191:46
[INFO] [stdout]     |
[INFO] [stdout] 191 |     pub extern "C" fn  save(&self, filename: &str) ->  Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                              ^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<(), Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:191:56
[INFO] [stdout]     |
[INFO] [stdout] 191 |     pub extern "C" fn  save(&self, filename: &str) ->  Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.89s
[INFO] running `Command { std: "docker" "inspect" "8cd6784e14e42745d8210b2892e356b2446815467aa970f8e111985237b65b36", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8cd6784e14e42745d8210b2892e356b2446815467aa970f8e111985237b65b36", kill_on_drop: false }`
[INFO] [stdout] 8cd6784e14e42745d8210b2892e356b2446815467aa970f8e111985237b65b36
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f271fbbd265fb84d7c1e5154858e451eca10bf2c5e67e1ecad2f4c359e39d405
[INFO] running `Command { std: "docker" "start" "-a" "f271fbbd265fb84d7c1e5154858e451eca10bf2c5e67e1ecad2f4c359e39d405", kill_on_drop: false }`
[INFO] [stderr] warning: only one of `license` or `license-file` is necessary
[INFO] [stderr] `license` should be used if the package license can be expressed with a standard SPDX expression.
[INFO] [stderr] `license-file` should be used if the package uses a non-standard license.
[INFO] [stderr] See https://doc.rust-lang.org/cargo/reference/manifest.html#the-license-and-license-file-fields for more information.
[INFO] [stderr]    Compiling rustpak v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: found module declaration for lib.rs
[INFO] [stdout]  --> src/main.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | mod lib;
[INFO] [stdout]   | ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: lib.rs is the root of this crate's library target
[INFO] [stdout]   = help: to refer to it from other targets, use the library's name as the path
[INFO] [stdout]   = note: `#[warn(special_module_name)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:125:32
[INFO] [stdout]     |
[INFO] [stdout] 125 |     pub extern "C" fn new() -> Pak<'a> {
[INFO] [stdout]     |                                ^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout]     = note: `#[warn(improper_ctypes_definitions)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:134:39
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak, Box<dyn Error>> {
[INFO] [stdout]     |                                       ^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<Pak<'_>, Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:134:51
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak, Box<dyn Error>> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:134:58
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak, Box<dyn Error>> {
[INFO] [stdout]     |                                        --                ^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                        |
[INFO] [stdout]     |                                        the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak<'a>, Box<dyn Error>> {
[INFO] [stdout]     |                                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `String`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:164:50
[INFO] [stdout]     |
[INFO] [stdout] 164 |     pub extern "C" fn  add_file(&mut self, file: PakFileEntry) -> Result<&mut Pak<'a>, Box<dyn Error>> {
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct
[INFO] [stdout]     = note: this struct has unspecified layout
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<&mut Pak<'_>, Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:164:67
[INFO] [stdout]     |
[INFO] [stdout] 164 |     pub extern "C" fn  add_file(&mut self, file: PakFileEntry) -> Result<&mut Pak<'a>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:178:57
[INFO] [stdout]     |
[INFO] [stdout] 178 |     pub extern "C" fn  remove_file(&mut self, filename: &str) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                         ^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<(), Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:178:66
[INFO] [stdout]     |
[INFO] [stdout] 178 |     pub extern "C" fn  remove_file(&mut self, filename: &str) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:191:46
[INFO] [stdout]     |
[INFO] [stdout] 191 |     pub extern "C" fn  save(&self, filename: &str) ->  Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                              ^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<(), Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:191:56
[INFO] [stdout]     |
[INFO] [stdout] 191 |     pub extern "C" fn  save(&self, filename: &str) ->  Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: found module declaration for lib.rs
[INFO] [stdout]  --> src/main.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | mod lib;
[INFO] [stdout]   | ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: lib.rs is the root of this crate's library target
[INFO] [stdout]   = help: to refer to it from other targets, use the library's name as the path
[INFO] [stdout]   = note: `#[warn(special_module_name)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:125:32
[INFO] [stdout]     |
[INFO] [stdout] 125 |     pub extern "C" fn new() -> Pak<'a> {
[INFO] [stdout]     |                                ^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout]     = note: `#[warn(improper_ctypes_definitions)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:134:39
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak, Box<dyn Error>> {
[INFO] [stdout]     |                                       ^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<Pak<'_>, Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:134:51
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak, Box<dyn Error>> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:134:58
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak, Box<dyn Error>> {
[INFO] [stdout]     |                                        --                ^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                        |
[INFO] [stdout]     |                                        the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak<'a>, Box<dyn Error>> {
[INFO] [stdout]     |                                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `String`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:164:50
[INFO] [stdout]     |
[INFO] [stdout] 164 |     pub extern "C" fn  add_file(&mut self, file: PakFileEntry) -> Result<&mut Pak<'a>, Box<dyn Error>> {
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct
[INFO] [stdout]     = note: this struct has unspecified layout
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<&mut Pak<'_>, Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:164:67
[INFO] [stdout]     |
[INFO] [stdout] 164 |     pub extern "C" fn  add_file(&mut self, file: PakFileEntry) -> Result<&mut Pak<'a>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:178:57
[INFO] [stdout]     |
[INFO] [stdout] 178 |     pub extern "C" fn  remove_file(&mut self, filename: &str) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                         ^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<(), Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:178:66
[INFO] [stdout]     |
[INFO] [stdout] 178 |     pub extern "C" fn  remove_file(&mut self, filename: &str) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:191:46
[INFO] [stdout]     |
[INFO] [stdout] 191 |     pub extern "C" fn  save(&self, filename: &str) ->  Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                              ^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<(), Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:191:56
[INFO] [stdout]     |
[INFO] [stdout] 191 |     pub extern "C" fn  save(&self, filename: &str) ->  Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `rustpak`
[INFO] [stdout]  --> tests/pak_test.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 3 |     use rustpak::{Pak, PakFileEntry, PakFileError};
[INFO] [stdout]   |         ^^^^^^^ use of unresolved module or unlinked crate `rustpak`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `rustpak`, use `cargo add rustpak` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:125:32
[INFO] [stdout]     |
[INFO] [stdout] 125 |     pub extern "C" fn new() -> Pak<'a> {
[INFO] [stdout]     |                                ^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout]     = note: `#[warn(improper_ctypes_definitions)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:134:39
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak, Box<dyn Error>> {
[INFO] [stdout]     |                                       ^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<Pak<'_>, Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:134:51
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak, Box<dyn Error>> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:134:58
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak, Box<dyn Error>> {
[INFO] [stdout]     |                                        --                ^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                        |
[INFO] [stdout]     |                                        the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak<'a>, Box<dyn Error>> {
[INFO] [stdout]     |                                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rustpak` (test "pak_test") due to 1 previous error
[INFO] [stdout] warning: `extern` fn uses type `String`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:164:50
[INFO] [stdout]     |
[INFO] [stdout] 164 |     pub extern "C" fn  add_file(&mut self, file: PakFileEntry) -> Result<&mut Pak<'a>, Box<dyn Error>> {
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct
[INFO] [stdout]     = note: this struct has unspecified layout
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: `extern` fn uses type `Result<&mut Pak<'_>, Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:164:67
[INFO] [stdout]     |
[INFO] [stdout] 164 |     pub extern "C" fn  add_file(&mut self, file: PakFileEntry) -> Result<&mut Pak<'a>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:178:57
[INFO] [stdout]     |
[INFO] [stdout] 178 |     pub extern "C" fn  remove_file(&mut self, filename: &str) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                         ^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<(), Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:178:66
[INFO] [stdout]     |
[INFO] [stdout] 178 |     pub extern "C" fn  remove_file(&mut self, filename: &str) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:191:46
[INFO] [stdout]     |
[INFO] [stdout] 191 |     pub extern "C" fn  save(&self, filename: &str) ->  Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                              ^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<(), Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:191:56
[INFO] [stdout]     |
[INFO] [stdout] 191 |     pub extern "C" fn  save(&self, filename: &str) ->  Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "f271fbbd265fb84d7c1e5154858e451eca10bf2c5e67e1ecad2f4c359e39d405", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f271fbbd265fb84d7c1e5154858e451eca10bf2c5e67e1ecad2f4c359e39d405", kill_on_drop: false }`
[INFO] [stdout] f271fbbd265fb84d7c1e5154858e451eca10bf2c5e67e1ecad2f4c359e39d405
