[INFO] fetching crate ensync 1.0.2...
[INFO] checking ensync-1.0.2 against try#4f260f0f20b3133d20cfb50353c0221943af5796+rustflags=-Dunmustuse_in_always_ok for pr-148577
[INFO] extracting crate ensync 1.0.2 into /workspace/builds/worker-3-tc2/source
[INFO] started tweaking crates.io crate ensync 1.0.2
[INFO] finished tweaking crates.io crate ensync 1.0.2
[INFO] tweaked toml for crates.io crate ensync 1.0.2 written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate ensync 1.0.2 on toolchain 4f260f0f20b3133d20cfb50353c0221943af5796
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate ensync 1.0.2 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" "+4f260f0f20b3133d20cfb50353c0221943af5796" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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" "+4f260f0f20b3133d20cfb50353c0221943af5796" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 75f38a4ead61e63f26a42b696a71419352fb8e596cf51f9c6e606656e836b5f4
[INFO] running `Command { std: "docker" "start" "-a" "75f38a4ead61e63f26a42b696a71419352fb8e596cf51f9c6e606656e836b5f4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "75f38a4ead61e63f26a42b696a71419352fb8e596cf51f9c6e606656e836b5f4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "75f38a4ead61e63f26a42b696a71419352fb8e596cf51f9c6e606656e836b5f4", kill_on_drop: false }`
[INFO] [stdout] 75f38a4ead61e63f26a42b696a71419352fb8e596cf51f9c6e606656e836b5f4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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 -Dunmustuse_in_always_ok" "-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" "+4f260f0f20b3133d20cfb50353c0221943af5796" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8c87a639250aa45e04ba98f138ae8d0d8c6fbcac5c5bb982cf8a7946de31d31e
[INFO] running `Command { std: "docker" "start" "-a" "8c87a639250aa45e04ba98f138ae8d0d8c6fbcac5c5bb982cf8a7946de31d31e", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.158
[INFO] [stderr]    Compiling cc v1.0.4
[INFO] [stderr]    Compiling getrandom v0.2.2
[INFO] [stderr]    Compiling pkg-config v0.3.9
[INFO] [stderr]    Compiling syn v1.0.60
[INFO] [stderr]    Compiling crc32fast v1.2.1
[INFO] [stderr]    Compiling unicode-segmentation v1.7.1
[INFO] [stderr]    Compiling num-integer v0.1.44
[INFO] [stderr]     Checking log v0.4.1
[INFO] [stderr]     Checking unicode-width v0.1.4
[INFO] [stderr]     Checking slab v0.4.2
[INFO] [stderr]    Compiling quote v1.0.9
[INFO] [stderr]    Compiling gcc v0.3.54
[INFO] [stderr]    Compiling error-chain v0.12.4
[INFO] [stderr]     Checking rustc-demangle v0.1.5
[INFO] [stderr]     Checking once_cell v1.5.2
[INFO] [stderr]     Checking same-file v1.0.1
[INFO] [stderr]     Checking thread_local v1.1.3
[INFO] [stderr]     Checking remove_dir_all v0.5.3
[INFO] [stderr]     Checking bit-vec v0.4.4
[INFO] [stderr]     Checking rustc-serialize v0.3.25
[INFO] [stderr]     Checking walkdir v2.0.1
[INFO] [stderr]     Checking bitflags v0.9.1
[INFO] [stderr]     Checking serde v1.0.27
[INFO] [stderr]     Checking regex-syntax v0.6.22
[INFO] [stderr]     Checking fourleaf v0.1.1
[INFO] [stderr]     Checking tiny-keccak v1.4.0
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling heck v0.3.2
[INFO] [stderr]     Checking regex-syntax v0.4.2
[INFO] [stderr]     Checking bit-set v0.4.0
[INFO] [stderr]    Compiling sqlite3-src v0.2.9
[INFO] [stderr]    Compiling backtrace-sys v0.1.16
[INFO] [stderr]    Compiling rust-crypto v0.2.36
[INFO] [stderr]     Checking term_size v0.3.1
[INFO] [stderr]     Checking iovec v0.1.4
[INFO] [stderr]     Checking net2 v0.2.37
[INFO] [stderr]     Checking time v0.1.44
[INFO] [stderr]     Checking rand v0.3.20
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking textwrap v0.11.0
[INFO] [stderr]     Checking inotify-sys v0.1.5
[INFO] [stderr]     Checking filetime v0.2.14
[INFO] [stderr]     Checking chrono v0.4.19
[INFO] [stderr]     Checking sqlite3-sys v0.12.0
[INFO] [stderr]     Checking clap v2.33.3
[INFO] [stderr]     Checking inotify v0.7.1
[INFO] [stderr]     Checking sqlite v0.23.9
[INFO] [stderr]     Checking rand_core v0.6.2
[INFO] [stderr]     Checking rpassword v5.0.1
[INFO] [stderr]     Checking mio v0.6.23
[INFO] [stderr]     Checking nix v0.9.0
[INFO] [stderr]     Checking flate2 v1.0.20
[INFO] [stderr]     Checking num_cpus v1.13.0
[INFO] [stderr]     Checking rand_chacha v0.3.0
[INFO] [stderr]     Checking proptest v0.3.4
[INFO] [stderr]     Checking rand v0.8.3
[INFO] [stderr]     Checking mio-extras v2.0.6
[INFO] [stderr]     Checking notify v4.0.15
[INFO] [stderr]     Checking regex v1.4.3
[INFO] [stderr]     Checking toml v0.4.5
[INFO] [stderr]     Checking tempfile v3.2.0
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]     Checking os_pipe v0.6.0
[INFO] [stderr]    Compiling structopt-derive v0.4.14
[INFO] [stderr]     Checking structopt v0.3.21
[INFO] [stderr]     Checking backtrace v0.3.5
[INFO] [stderr]     Checking ensync v1.0.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition name: `has_error_description_deprecated`
[INFO] [stdout]    --> src/errors.rs:31:1
[INFO] [stdout]     |
[INFO] [stdout]  31 | / error_chain! {
[INFO] [stdout]  32 | |     types {
[INFO] [stdout]  33 | |         Error, ErrorKind, ResultExt, Result;
[INFO] [stdout] ...   |
[INFO] [stdout] 306 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: expected names are: `docsrs`, `feature`, and `test` and 31 more
[INFO] [stdout]     = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]     = help: try referring to `impl_error_chain_processed` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]     = help: the macro `impl_error_chain_processed` may come from an old version of the `error_chain` crate, try updating your dependency with `cargo update -p error_chain`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `has_error_description_deprecated`
[INFO] [stdout]    --> src/errors.rs:31:1
[INFO] [stdout]     |
[INFO] [stdout]  31 | / error_chain! {
[INFO] [stdout]  32 | |     types {
[INFO] [stdout]  33 | |         Error, ErrorKind, ResultExt, Result;
[INFO] [stdout] ...   |
[INFO] [stdout] 306 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: expected names are: `docsrs`, `feature`, and `test` and 31 more
[INFO] [stdout]     = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]     = help: try referring to `impl_error_chain_processed` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]     = help: the macro `impl_error_chain_processed` may come from an old version of the `error_chain` crate, try updating your dependency with `cargo update -p error_chain`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<std::string::String, Infallible>
[INFO] [stdout]    --> src/main.rs:245:5
[INFO] [stdout]     |
[INFO] [stdout] 245 | /     /// Control colourisation of stderr.
[INFO] [stdout] 246 | |     #[structopt(long, alias = "color", default_value = "auto",
[INFO] [stdout] 247 | |                 possible_values = &["auto", "always", "never"])]
[INFO] [stdout] 248 | |     colour: String,
[INFO] [stdout]     | |__________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-D unmustuse-in-always-ok`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<std::string::String, Infallible>
[INFO] [stdout]    --> src/main.rs:250:5
[INFO] [stdout]     |
[INFO] [stdout] 250 | /     /// Control whether the progress spinner is shown.
[INFO] [stdout] 251 | |     #[structopt(long, alias = "spinner", default_value = "auto",
[INFO] [stdout] 252 | |                 possible_values = &["auto", "always", "never"])]
[INFO] [stdout] 253 | |     spin: String,
[INFO] [stdout]     | |________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<std::string::String, Infallible>
[INFO] [stdout]    --> src/main.rs:278:5
[INFO] [stdout]     |
[INFO] [stdout] 278 | /     /// Control what is checked for syncing. "fast" means to only scan
[INFO] [stdout] 279 | |     /// directories that have obviously changed. "clean" causes all directories
[INFO] [stdout] 280 | |     /// to be scanned. "scrub" additionally causes all cached hashes to be
[INFO] [stdout] 281 | |     /// purged, which will make syncing quite slow but can be used to recover
[INFO] [stdout] ...   |
[INFO] [stdout] 285 | |                 possible_values = &["fast", "clean", "scrub", "auto"])]
[INFO] [stdout] 286 | |     strategy: String,
[INFO] [stdout]     | |____________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<std::string::String, Infallible>
[INFO] [stdout]    --> src/main.rs:310:5
[INFO] [stdout]     |
[INFO] [stdout] 310 | /     /// Name for the first key in the key store.
[INFO] [stdout] 311 | |     #[structopt(long, default_value = "initial-key")]
[INFO] [stdout] 312 | |     key_name: String,
[INFO] [stdout]     | |____________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<std::string::String, Infallible>
[INFO] [stdout]    --> src/main.rs:353:5
[INFO] [stdout]     |
[INFO] [stdout] 353 | /     /// The name of the key to add.
[INFO] [stdout] 354 | |     key_name: String,
[INFO] [stdout]     | |____________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<std::string::String, Infallible>
[INFO] [stdout]    --> src/main.rs:401:5
[INFO] [stdout]     |
[INFO] [stdout] 401 | /     /// The name of the key to edit.
[INFO] [stdout] 402 | |     key_name: Option<String>,
[INFO] [stdout]     | |____________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<std::string::String, Infallible>
[INFO] [stdout]    --> src/main.rs:436:5
[INFO] [stdout]     |
[INFO] [stdout] 436 | /     /// The name of the key to delete.
[INFO] [stdout] 437 | |     key_name: String,
[INFO] [stdout]     | |____________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<std::string::String, Infallible>
[INFO] [stdout]    --> src/main.rs:476:5
[INFO] [stdout]     |
[INFO] [stdout] 476 | /     /// The name(s) of the group(s) to create.
[INFO] [stdout] 477 | |     #[structopt(required = true)]
[INFO] [stdout] 478 | |     group: Vec<String>,
[INFO] [stdout]     | |______________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<std::string::String, Infallible>
[INFO] [stdout]    --> src/main.rs:515:5
[INFO] [stdout]     |
[INFO] [stdout] 515 | /     /// The name(s) of the group(s) to grant.
[INFO] [stdout] 516 | |     #[structopt(required = true)]
[INFO] [stdout] 517 | |     group: Vec<String>,
[INFO] [stdout]     | |______________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<std::string::String, Infallible>
[INFO] [stdout]    --> src/main.rs:553:5
[INFO] [stdout]     |
[INFO] [stdout] 553 | /     /// The key from which to remove the listed group(s).
[INFO] [stdout] 554 | |     key_name: String,
[INFO] [stdout]     | |____________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<std::string::String, Infallible>
[INFO] [stdout]    --> src/main.rs:556:5
[INFO] [stdout]     |
[INFO] [stdout] 556 | /     /// The name(s) of the group(s) to remove.
[INFO] [stdout] 557 | |     #[structopt(required = true)]
[INFO] [stdout] 558 | |     group: Vec<String>,
[INFO] [stdout]     | |______________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<std::string::String, Infallible>
[INFO] [stdout]    --> src/main.rs:591:5
[INFO] [stdout]     |
[INFO] [stdout] 591 | /     /// The name(s) of the group(s) to destroy.
[INFO] [stdout] 592 | |     #[structopt(required = true)]
[INFO] [stdout] 593 | |     group: Vec<String>,
[INFO] [stdout]     | |______________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<std::string::String, Infallible>
[INFO] [stdout]    --> src/main.rs:648:5
[INFO] [stdout]     |
[INFO] [stdout] 648 | /     /// UNIX permissions for the new directory.
[INFO] [stdout] 649 | |     #[structopt(short, long, default_value = "0700")]
[INFO] [stdout] 650 | |     mode: String,
[INFO] [stdout]     | |________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/ancestor/replica.rs:165:17
[INFO] [stdout]     |
[INFO] [stdout] 165 |     fn as_entry(&self, dir: i64) -> FileEntry;
[INFO] [stdout]     |                 ^^^^^               ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided 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: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 165 |     fn as_entry(&self, dir: i64) -> FileEntry<'_>;
[INFO] [stdout]     |                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/ancestor/replica.rs:169:17
[INFO] [stdout]     |
[INFO] [stdout] 169 |     fn as_entry(&self, dir: i64) -> FileEntry {
[INFO] [stdout]     |                 ^^^^^               ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 169 |     fn as_entry(&self, dir: i64) -> FileEntry<'_> {
[INFO] [stdout]     |                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/ancestor/replica.rs:206:17
[INFO] [stdout]     |
[INFO] [stdout] 206 |     fn as_entry(&self, dir: i64) -> FileEntry {
[INFO] [stdout]     |                 ^^^^^               ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 206 |     fn as_entry(&self, dir: i64) -> FileEntry<'_> {
[INFO] [stdout]     |                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/posix/dao.rs:98:28
[INFO] [stdout]    |
[INFO] [stdout] 98 |     pub fn iter_clean_dirs(&self) -> Result<CleanDirs> {
[INFO] [stdout]    |                            ^^^^^            ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 98 |     pub fn iter_clean_dirs(&self) -> Result<CleanDirs<'_>> {
[INFO] [stdout]    |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `ensync` (bin "ensync") due to 13 previous errors; 5 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<std::string::String, Infallible>
[INFO] [stdout]    --> src/main.rs:245:5
[INFO] [stdout]     |
[INFO] [stdout] 245 | /     /// Control colourisation of stderr.
[INFO] [stdout] 246 | |     #[structopt(long, alias = "color", default_value = "auto",
[INFO] [stdout] 247 | |                 possible_values = &["auto", "always", "never"])]
[INFO] [stdout] 248 | |     colour: String,
[INFO] [stdout]     | |__________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-D unmustuse-in-always-ok`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<std::string::String, Infallible>
[INFO] [stdout]    --> src/main.rs:250:5
[INFO] [stdout]     |
[INFO] [stdout] 250 | /     /// Control whether the progress spinner is shown.
[INFO] [stdout] 251 | |     #[structopt(long, alias = "spinner", default_value = "auto",
[INFO] [stdout] 252 | |                 possible_values = &["auto", "always", "never"])]
[INFO] [stdout] 253 | |     spin: String,
[INFO] [stdout]     | |________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<std::string::String, Infallible>
[INFO] [stdout]    --> src/main.rs:278:5
[INFO] [stdout]     |
[INFO] [stdout] 278 | /     /// Control what is checked for syncing. "fast" means to only scan
[INFO] [stdout] 279 | |     /// directories that have obviously changed. "clean" causes all directories
[INFO] [stdout] 280 | |     /// to be scanned. "scrub" additionally causes all cached hashes to be
[INFO] [stdout] 281 | |     /// purged, which will make syncing quite slow but can be used to recover
[INFO] [stdout] ...   |
[INFO] [stdout] 285 | |                 possible_values = &["fast", "clean", "scrub", "auto"])]
[INFO] [stdout] 286 | |     strategy: String,
[INFO] [stdout]     | |____________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<std::string::String, Infallible>
[INFO] [stdout]    --> src/main.rs:310:5
[INFO] [stdout]     |
[INFO] [stdout] 310 | /     /// Name for the first key in the key store.
[INFO] [stdout] 311 | |     #[structopt(long, default_value = "initial-key")]
[INFO] [stdout] 312 | |     key_name: String,
[INFO] [stdout]     | |____________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<std::string::String, Infallible>
[INFO] [stdout]    --> src/main.rs:353:5
[INFO] [stdout]     |
[INFO] [stdout] 353 | /     /// The name of the key to add.
[INFO] [stdout] 354 | |     key_name: String,
[INFO] [stdout]     | |____________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<std::string::String, Infallible>
[INFO] [stdout]    --> src/main.rs:401:5
[INFO] [stdout]     |
[INFO] [stdout] 401 | /     /// The name of the key to edit.
[INFO] [stdout] 402 | |     key_name: Option<String>,
[INFO] [stdout]     | |____________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<std::string::String, Infallible>
[INFO] [stdout]    --> src/main.rs:436:5
[INFO] [stdout]     |
[INFO] [stdout] 436 | /     /// The name of the key to delete.
[INFO] [stdout] 437 | |     key_name: String,
[INFO] [stdout]     | |____________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<std::string::String, Infallible>
[INFO] [stdout]    --> src/main.rs:476:5
[INFO] [stdout]     |
[INFO] [stdout] 476 | /     /// The name(s) of the group(s) to create.
[INFO] [stdout] 477 | |     #[structopt(required = true)]
[INFO] [stdout] 478 | |     group: Vec<String>,
[INFO] [stdout]     | |______________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<std::string::String, Infallible>
[INFO] [stdout]    --> src/main.rs:515:5
[INFO] [stdout]     |
[INFO] [stdout] 515 | /     /// The name(s) of the group(s) to grant.
[INFO] [stdout] 516 | |     #[structopt(required = true)]
[INFO] [stdout] 517 | |     group: Vec<String>,
[INFO] [stdout]     | |______________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<std::string::String, Infallible>
[INFO] [stdout]    --> src/main.rs:553:5
[INFO] [stdout]     |
[INFO] [stdout] 553 | /     /// The key from which to remove the listed group(s).
[INFO] [stdout] 554 | |     key_name: String,
[INFO] [stdout]     | |____________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<std::string::String, Infallible>
[INFO] [stdout]    --> src/main.rs:556:5
[INFO] [stdout]     |
[INFO] [stdout] 556 | /     /// The name(s) of the group(s) to remove.
[INFO] [stdout] 557 | |     #[structopt(required = true)]
[INFO] [stdout] 558 | |     group: Vec<String>,
[INFO] [stdout]     | |______________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<std::string::String, Infallible>
[INFO] [stdout]    --> src/main.rs:591:5
[INFO] [stdout]     |
[INFO] [stdout] 591 | /     /// The name(s) of the group(s) to destroy.
[INFO] [stdout] 592 | |     #[structopt(required = true)]
[INFO] [stdout] 593 | |     group: Vec<String>,
[INFO] [stdout]     | |______________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<std::string::String, Infallible>
[INFO] [stdout]    --> src/main.rs:648:5
[INFO] [stdout]     |
[INFO] [stdout] 648 | /     /// UNIX permissions for the new directory.
[INFO] [stdout] 649 | |     #[structopt(short, long, default_value = "0700")]
[INFO] [stdout] 650 | |     mode: String,
[INFO] [stdout]     | |________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/ancestor/replica.rs:165:17
[INFO] [stdout]     |
[INFO] [stdout] 165 |     fn as_entry(&self, dir: i64) -> FileEntry;
[INFO] [stdout]     |                 ^^^^^               ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided 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: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 165 |     fn as_entry(&self, dir: i64) -> FileEntry<'_>;
[INFO] [stdout]     |                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/ancestor/replica.rs:169:17
[INFO] [stdout]     |
[INFO] [stdout] 169 |     fn as_entry(&self, dir: i64) -> FileEntry {
[INFO] [stdout]     |                 ^^^^^               ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 169 |     fn as_entry(&self, dir: i64) -> FileEntry<'_> {
[INFO] [stdout]     |                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/ancestor/replica.rs:206:17
[INFO] [stdout]     |
[INFO] [stdout] 206 |     fn as_entry(&self, dir: i64) -> FileEntry {
[INFO] [stdout]     |                 ^^^^^               ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 206 |     fn as_entry(&self, dir: i64) -> FileEntry<'_> {
[INFO] [stdout]     |                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/memory_replica.rs:239:17
[INFO] [stdout]     |
[INFO] [stdout] 239 |     pub fn data(&self) -> MutexGuard<MemoryReplicaImpl> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 239 |     pub fn data(&self) -> MutexGuard<'_, MemoryReplicaImpl> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/posix/dao.rs:98:28
[INFO] [stdout]    |
[INFO] [stdout] 98 |     pub fn iter_clean_dirs(&self) -> Result<CleanDirs> {
[INFO] [stdout]    |                            ^^^^^            ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 98 |     pub fn iter_clean_dirs(&self) -> Result<CleanDirs<'_>> {
[INFO] [stdout]    |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `ensync` (bin "ensync" test) due to 13 previous errors; 6 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "8c87a639250aa45e04ba98f138ae8d0d8c6fbcac5c5bb982cf8a7946de31d31e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8c87a639250aa45e04ba98f138ae8d0d8c6fbcac5c5bb982cf8a7946de31d31e", kill_on_drop: false }`
[INFO] [stdout] 8c87a639250aa45e04ba98f138ae8d0d8c6fbcac5c5bb982cf8a7946de31d31e
