[INFO] cloning repository https://github.com/dandavison/wormhole
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/dandavison/wormhole" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdandavison%2Fwormhole", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdandavison%2Fwormhole'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] ed41a47b05be400de26fc0006f76b595e28fac91
[INFO] checking dandavison/wormhole against try#4f260f0f20b3133d20cfb50353c0221943af5796+rustflags=-Dunmustuse_in_always_ok for pr-148577
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdandavison%2Fwormhole" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/dandavison/wormhole
[INFO] finished tweaking git repo https://github.com/dandavison/wormhole
[INFO] tweaked toml for git repo https://github.com/dandavison/wormhole written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/dandavison/wormhole 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 git repo https://github.com/dandavison/wormhole 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-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 44a2f4545f826b96f8b99593abff1abb3a85593732aa802bf4b40a18796d9b09
[INFO] running `Command { std: "docker" "start" "-a" "44a2f4545f826b96f8b99593abff1abb3a85593732aa802bf4b40a18796d9b09", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "44a2f4545f826b96f8b99593abff1abb3a85593732aa802bf4b40a18796d9b09", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "44a2f4545f826b96f8b99593abff1abb3a85593732aa802bf4b40a18796d9b09", kill_on_drop: false }`
[INFO] [stdout] 44a2f4545f826b96f8b99593abff1abb3a85593732aa802bf4b40a18796d9b09
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -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] 7dab845909f311bd9b7237d5740645f8d01973df003385773860c7d4e36b517e
[INFO] running `Command { std: "docker" "start" "-a" "7dab845909f311bd9b7237d5740645f8d01973df003385773860c7d4e36b517e", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.1.0
[INFO] [stderr]    Compiling libc v0.2.147
[INFO] [stderr]    Compiling proc-macro2 v1.0.66
[INFO] [stderr]    Compiling unicode-ident v1.0.11
[INFO] [stderr]    Compiling futures-core v0.3.28
[INFO] [stderr]     Checking pin-project-lite v0.2.10
[INFO] [stderr]    Compiling parking_lot_core v0.9.8
[INFO] [stderr]     Checking bytes v1.4.0
[INFO] [stderr]     Checking smallvec v1.11.0
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]     Checking once_cell v1.18.0
[INFO] [stderr]     Checking itoa v1.0.9
[INFO] [stderr]    Compiling futures-task v0.3.28
[INFO] [stderr]    Compiling futures-util v0.3.28
[INFO] [stderr]     Checking tinyvec_macros v0.1.1
[INFO] [stderr]    Compiling futures-channel v0.3.28
[INFO] [stderr]     Checking hashbrown v0.12.3
[INFO] [stderr]     Checking tinyvec v1.6.0
[INFO] [stderr]     Checking tracing-core v0.1.31
[INFO] [stderr]     Checking futures-sink v0.3.28
[INFO] [stderr]    Compiling httparse v1.8.0
[INFO] [stderr]    Compiling serde v1.0.179
[INFO] [stderr]     Checking percent-encoding v2.3.0
[INFO] [stderr]     Checking option-ext v0.2.0
[INFO] [stderr]     Checking regex-syntax v0.7.4
[INFO] [stderr]     Checking try-lock v0.2.4
[INFO] [stderr]    Compiling serde_derive v1.0.179
[INFO] [stderr]     Checking unicode-bidi v0.3.13
[INFO] [stderr]    Compiling serde_json v1.0.109
[INFO] [stderr]     Checking http v0.2.9
[INFO] [stderr]    Compiling lock_api v0.4.10
[INFO] [stderr]    Compiling tokio v1.29.1
[INFO] [stderr]    Compiling slab v0.4.8
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]     Checking tracing v0.1.37
[INFO] [stderr]     Checking want v0.3.1
[INFO] [stderr]     Checking form_urlencoded v1.2.0
[INFO] [stderr]     Checking tower-service v0.3.2
[INFO] [stderr]     Checking httpdate v1.0.2
[INFO] [stderr]     Checking ryu v1.0.18
[INFO] [stderr]     Checking either v1.9.0
[INFO] [stderr]     Checking equivalent v1.0.1
[INFO] [stderr]     Checking hashbrown v0.14.0
[INFO] [stderr]    Compiling quote v1.0.32
[INFO] [stderr]     Checking itertools v0.11.0
[INFO] [stderr]     Checking unicode-normalization v0.1.22
[INFO] [stderr]    Compiling syn v2.0.27
[INFO] [stderr]     Checking aho-corasick v1.0.2
[INFO] [stderr]     Checking http-body v0.4.5
[INFO] [stderr]     Checking indexmap v2.0.0
[INFO] [stderr]     Checking signal-hook-registry v1.4.1
[INFO] [stderr]     Checking socket2 v0.4.9
[INFO] [stderr]     Checking num_cpus v1.16.0
[INFO] [stderr]     Checking mio v0.8.8
[INFO] [stderr]     Checking dirs-sys v0.4.1
[INFO] [stderr]     Checking parking_lot v0.12.1
[INFO] [stderr]     Checking idna v0.4.0
[INFO] [stderr]     Checking dirs v5.0.1
[INFO] [stderr]     Checking url v2.4.0
[INFO] [stderr]     Checking regex-automata v0.3.3
[INFO] [stderr]    Compiling tokio-macros v2.1.0
[INFO] [stderr]     Checking regex v1.9.1
[INFO] [stderr]     Checking tokio-util v0.7.8
[INFO] [stderr]     Checking h2 v0.3.20
[INFO] [stderr]     Checking hyper v0.14.27
[INFO] [stderr]     Checking wormhole v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: this type will no longer be must used: Result<hyper::service::util::ServiceFn<fn(hyper::Request<Body>) -> impl Future<Output = Result<Response<Body>, Infallible>> {service}, Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:35:39
[INFO] [stdout]    |
[INFO] [stdout] 35 |         make_service_fn(|_conn| async { Ok::<_, Infallible>(service_fn(wormhole::service)) });
[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: Result<hyper::service::util::ServiceFn<fn(hyper::Request<Body>) -> impl Future<Output = Result<Response<Body>, Infallible>> {service}, Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:35:41
[INFO] [stdout]    |
[INFO] [stdout] 35 |         make_service_fn(|_conn| async { Ok::<_, Infallible>(service_fn(wormhole::service)) });
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:32:80
[INFO] [stdout]    |
[INFO] [stdout] 32 |   pub async fn service(req: Request<Body>) -> Result<Response<Body>, Infallible> {
[INFO] [stdout]    |  ________________________________________________________________________________^
[INFO] [stdout] 33 | |     let uri = req.uri();
[INFO] [stdout] 34 | |     let path = uri.path().to_string();
[INFO] [stdout] 35 | |     if &path == "/favicon.ico" {
[INFO] [stdout] ...  |
[INFO] [stdout] 81 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:32:80
[INFO] [stdout]    |
[INFO] [stdout] 32 |   pub async fn service(req: Request<Body>) -> Result<Response<Body>, Infallible> {
[INFO] [stdout]    |  ________________________________________________________________________________^
[INFO] [stdout] 33 | |     let uri = req.uri();
[INFO] [stdout] 34 | |     let path = uri.path().to_string();
[INFO] [stdout] 35 | |     if &path == "/favicon.ico" {
[INFO] [stdout] ...  |
[INFO] [stdout] 81 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:36:16
[INFO] [stdout]    |
[INFO] [stdout] 36 |         return Ok(Response::new(Body::from("")));
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 42 | /     if &path == "/list-projects/" {
[INFO] [stdout] 43 | |         Ok(endpoints::list_projects())
[INFO] [stdout] 44 | |     } else if let Some(path) = path.strip_prefix("/add-project/") {
[INFO] [stdout] ...  |
[INFO] [stdout] 80 | |     }
[INFO] [stdout]    | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:42:35
[INFO] [stdout]    |
[INFO] [stdout] 42 |       if &path == "/list-projects/" {
[INFO] [stdout]    |  ___________________________________^
[INFO] [stdout] 43 | |         Ok(endpoints::list_projects())
[INFO] [stdout] 44 | |     } else if let Some(path) = path.strip_prefix("/add-project/") {
[INFO] [stdout]    | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 43 |         Ok(endpoints::list_projects())
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:44:12
[INFO] [stdout]    |
[INFO] [stdout] 44 |       } else if let Some(path) = path.strip_prefix("/add-project/") {
[INFO] [stdout]    |  ____________^
[INFO] [stdout] 45 | |         // An absolute path must have a double slash: /add-project//Users/me/file.rs
[INFO] [stdout] 46 | |         Ok(endpoints::add_project(&path.trim(), params.names))
[INFO] [stdout] 47 | |     } else if let Some(name) = path.strip_prefix("/remove-project/") {
[INFO] [stdout] ...  |
[INFO] [stdout] 80 | |     }
[INFO] [stdout]    | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:44:67
[INFO] [stdout]    |
[INFO] [stdout] 44 |       } else if let Some(path) = path.strip_prefix("/add-project/") {
[INFO] [stdout]    |  ___________________________________________________________________^
[INFO] [stdout] 45 | |         // An absolute path must have a double slash: /add-project//Users/me/file.rs
[INFO] [stdout] 46 | |         Ok(endpoints::add_project(&path.trim(), params.names))
[INFO] [stdout] 47 | |     } else if let Some(name) = path.strip_prefix("/remove-project/") {
[INFO] [stdout]    | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 46 |         Ok(endpoints::add_project(&path.trim(), params.names))
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:47:12
[INFO] [stdout]    |
[INFO] [stdout] 47 |       } else if let Some(name) = path.strip_prefix("/remove-project/") {
[INFO] [stdout]    |  ____________^
[INFO] [stdout] 48 | |         Ok(endpoints::remove_project(&name.trim()))
[INFO] [stdout] 49 | |     } else if let Some(name) = path.strip_prefix("/open-project/") {
[INFO] [stdout] 50 | |         Ok(endpoints::open_project(&name.trim()))
[INFO] [stdout] ...  |
[INFO] [stdout] 80 | |     }
[INFO] [stdout]    | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:47:70
[INFO] [stdout]    |
[INFO] [stdout] 47 |       } else if let Some(name) = path.strip_prefix("/remove-project/") {
[INFO] [stdout]    |  ______________________________________________________________________^
[INFO] [stdout] 48 | |         Ok(endpoints::remove_project(&name.trim()))
[INFO] [stdout] 49 | |     } else if let Some(name) = path.strip_prefix("/open-project/") {
[INFO] [stdout]    | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |         Ok(endpoints::remove_project(&name.trim()))
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:49:12
[INFO] [stdout]    |
[INFO] [stdout] 49 |       } else if let Some(name) = path.strip_prefix("/open-project/") {
[INFO] [stdout]    |  ____________^
[INFO] [stdout] 50 | |         Ok(endpoints::open_project(&name.trim()))
[INFO] [stdout] 51 | |     } else if let Some(name) = path.strip_prefix("/close-project/") {
[INFO] [stdout] 52 | |         Ok(endpoints::close_project(&name.trim()))
[INFO] [stdout] ...  |
[INFO] [stdout] 80 | |     }
[INFO] [stdout]    | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:49:68
[INFO] [stdout]    |
[INFO] [stdout] 49 |       } else if let Some(name) = path.strip_prefix("/open-project/") {
[INFO] [stdout]    |  ____________________________________________________________________^
[INFO] [stdout] 50 | |         Ok(endpoints::open_project(&name.trim()))
[INFO] [stdout] 51 | |     } else if let Some(name) = path.strip_prefix("/close-project/") {
[INFO] [stdout]    | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Ok(endpoints::open_project(&name.trim()))
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:51:12
[INFO] [stdout]    |
[INFO] [stdout] 51 |       } else if let Some(name) = path.strip_prefix("/close-project/") {
[INFO] [stdout]    |  ____________^
[INFO] [stdout] 52 | |         Ok(endpoints::close_project(&name.trim()))
[INFO] [stdout] 53 | |     } else {
[INFO] [stdout] ...  |
[INFO] [stdout] 80 | |     }
[INFO] [stdout]    | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:51:69
[INFO] [stdout]    |
[INFO] [stdout] 51 |       } else if let Some(name) = path.strip_prefix("/close-project/") {
[INFO] [stdout]    |  _____________________________________________________________________^
[INFO] [stdout] 52 | |         Ok(endpoints::close_project(&name.trim()))
[INFO] [stdout] 53 | |     } else {
[INFO] [stdout]    | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |         Ok(endpoints::close_project(&name.trim()))
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:53:12
[INFO] [stdout]    |
[INFO] [stdout] 53 |       } else {
[INFO] [stdout]    |  ____________^
[INFO] [stdout] ...  |
[INFO] [stdout] 80 | |     }
[INFO] [stdout]    | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 62 | /         if let Some((Some(project_path), mutation, land_in)) =
[INFO] [stdout] 63 | |             determine_requested_operation(&path, params.line, params.land_in)
[INFO] [stdout] 64 | |         {
[INFO] [stdout] 65 | |             thread::spawn(move || project_path.open(mutation, land_in));
[INFO] [stdout] ...  |
[INFO] [stdout] 78 | |             return Ok(response);
[INFO] [stdout] 79 | |         }
[INFO] [stdout]    | |_________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 | /         {
[INFO] [stdout] 65 | |             thread::spawn(move || project_path.open(mutation, land_in));
[INFO] [stdout] 66 | |             Ok(Response::new(Body::from("Sent into wormhole.")))
[INFO] [stdout] 67 | |         } else {
[INFO] [stdout]    | |_________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             Ok(Response::new(Body::from("Sent into wormhole.")))
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:78:20
[INFO] [stdout]    |
[INFO] [stdout] 78 |             return Ok(response);
[INFO] [stdout]    |                    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `wormhole` (bin "wormhole" test) due to 25 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: this type will no longer be must used: Result<hyper::service::util::ServiceFn<fn(hyper::Request<Body>) -> impl Future<Output = Result<Response<Body>, Infallible>> {service}, Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:35:39
[INFO] [stdout]    |
[INFO] [stdout] 35 |         make_service_fn(|_conn| async { Ok::<_, Infallible>(service_fn(wormhole::service)) });
[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: Result<hyper::service::util::ServiceFn<fn(hyper::Request<Body>) -> impl Future<Output = Result<Response<Body>, Infallible>> {service}, Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:35:41
[INFO] [stdout]    |
[INFO] [stdout] 35 |         make_service_fn(|_conn| async { Ok::<_, Infallible>(service_fn(wormhole::service)) });
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:32:80
[INFO] [stdout]    |
[INFO] [stdout] 32 |   pub async fn service(req: Request<Body>) -> Result<Response<Body>, Infallible> {
[INFO] [stdout]    |  ________________________________________________________________________________^
[INFO] [stdout] 33 | |     let uri = req.uri();
[INFO] [stdout] 34 | |     let path = uri.path().to_string();
[INFO] [stdout] 35 | |     if &path == "/favicon.ico" {
[INFO] [stdout] ...  |
[INFO] [stdout] 81 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:32:80
[INFO] [stdout]    |
[INFO] [stdout] 32 |   pub async fn service(req: Request<Body>) -> Result<Response<Body>, Infallible> {
[INFO] [stdout]    |  ________________________________________________________________________________^
[INFO] [stdout] 33 | |     let uri = req.uri();
[INFO] [stdout] 34 | |     let path = uri.path().to_string();
[INFO] [stdout] 35 | |     if &path == "/favicon.ico" {
[INFO] [stdout] ...  |
[INFO] [stdout] 81 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:36:16
[INFO] [stdout]    |
[INFO] [stdout] 36 |         return Ok(Response::new(Body::from("")));
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 42 | /     if &path == "/list-projects/" {
[INFO] [stdout] 43 | |         Ok(endpoints::list_projects())
[INFO] [stdout] 44 | |     } else if let Some(path) = path.strip_prefix("/add-project/") {
[INFO] [stdout] ...  |
[INFO] [stdout] 80 | |     }
[INFO] [stdout]    | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:42:35
[INFO] [stdout]    |
[INFO] [stdout] 42 |       if &path == "/list-projects/" {
[INFO] [stdout]    |  ___________________________________^
[INFO] [stdout] 43 | |         Ok(endpoints::list_projects())
[INFO] [stdout] 44 | |     } else if let Some(path) = path.strip_prefix("/add-project/") {
[INFO] [stdout]    | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 43 |         Ok(endpoints::list_projects())
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:44:12
[INFO] [stdout]    |
[INFO] [stdout] 44 |       } else if let Some(path) = path.strip_prefix("/add-project/") {
[INFO] [stdout]    |  ____________^
[INFO] [stdout] 45 | |         // An absolute path must have a double slash: /add-project//Users/me/file.rs
[INFO] [stdout] 46 | |         Ok(endpoints::add_project(&path.trim(), params.names))
[INFO] [stdout] 47 | |     } else if let Some(name) = path.strip_prefix("/remove-project/") {
[INFO] [stdout] ...  |
[INFO] [stdout] 80 | |     }
[INFO] [stdout]    | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:44:67
[INFO] [stdout]    |
[INFO] [stdout] 44 |       } else if let Some(path) = path.strip_prefix("/add-project/") {
[INFO] [stdout]    |  ___________________________________________________________________^
[INFO] [stdout] 45 | |         // An absolute path must have a double slash: /add-project//Users/me/file.rs
[INFO] [stdout] 46 | |         Ok(endpoints::add_project(&path.trim(), params.names))
[INFO] [stdout] 47 | |     } else if let Some(name) = path.strip_prefix("/remove-project/") {
[INFO] [stdout]    | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 46 |         Ok(endpoints::add_project(&path.trim(), params.names))
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:47:12
[INFO] [stdout]    |
[INFO] [stdout] 47 |       } else if let Some(name) = path.strip_prefix("/remove-project/") {
[INFO] [stdout]    |  ____________^
[INFO] [stdout] 48 | |         Ok(endpoints::remove_project(&name.trim()))
[INFO] [stdout] 49 | |     } else if let Some(name) = path.strip_prefix("/open-project/") {
[INFO] [stdout] 50 | |         Ok(endpoints::open_project(&name.trim()))
[INFO] [stdout] ...  |
[INFO] [stdout] 80 | |     }
[INFO] [stdout]    | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:47:70
[INFO] [stdout]    |
[INFO] [stdout] 47 |       } else if let Some(name) = path.strip_prefix("/remove-project/") {
[INFO] [stdout]    |  ______________________________________________________________________^
[INFO] [stdout] 48 | |         Ok(endpoints::remove_project(&name.trim()))
[INFO] [stdout] 49 | |     } else if let Some(name) = path.strip_prefix("/open-project/") {
[INFO] [stdout]    | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |         Ok(endpoints::remove_project(&name.trim()))
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:49:12
[INFO] [stdout]    |
[INFO] [stdout] 49 |       } else if let Some(name) = path.strip_prefix("/open-project/") {
[INFO] [stdout]    |  ____________^
[INFO] [stdout] 50 | |         Ok(endpoints::open_project(&name.trim()))
[INFO] [stdout] 51 | |     } else if let Some(name) = path.strip_prefix("/close-project/") {
[INFO] [stdout] 52 | |         Ok(endpoints::close_project(&name.trim()))
[INFO] [stdout] ...  |
[INFO] [stdout] 80 | |     }
[INFO] [stdout]    | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:49:68
[INFO] [stdout]    |
[INFO] [stdout] 49 |       } else if let Some(name) = path.strip_prefix("/open-project/") {
[INFO] [stdout]    |  ____________________________________________________________________^
[INFO] [stdout] 50 | |         Ok(endpoints::open_project(&name.trim()))
[INFO] [stdout] 51 | |     } else if let Some(name) = path.strip_prefix("/close-project/") {
[INFO] [stdout]    | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Ok(endpoints::open_project(&name.trim()))
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:51:12
[INFO] [stdout]    |
[INFO] [stdout] 51 |       } else if let Some(name) = path.strip_prefix("/close-project/") {
[INFO] [stdout]    |  ____________^
[INFO] [stdout] 52 | |         Ok(endpoints::close_project(&name.trim()))
[INFO] [stdout] 53 | |     } else {
[INFO] [stdout] ...  |
[INFO] [stdout] 80 | |     }
[INFO] [stdout]    | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:51:69
[INFO] [stdout]    |
[INFO] [stdout] 51 |       } else if let Some(name) = path.strip_prefix("/close-project/") {
[INFO] [stdout]    |  _____________________________________________________________________^
[INFO] [stdout] 52 | |         Ok(endpoints::close_project(&name.trim()))
[INFO] [stdout] 53 | |     } else {
[INFO] [stdout]    | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |         Ok(endpoints::close_project(&name.trim()))
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:53:12
[INFO] [stdout]    |
[INFO] [stdout] 53 |       } else {
[INFO] [stdout]    |  ____________^
[INFO] [stdout] ...  |
[INFO] [stdout] 80 | |     }
[INFO] [stdout]    | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 62 | /         if let Some((Some(project_path), mutation, land_in)) =
[INFO] [stdout] 63 | |             determine_requested_operation(&path, params.line, params.land_in)
[INFO] [stdout] 64 | |         {
[INFO] [stdout] 65 | |             thread::spawn(move || project_path.open(mutation, land_in));
[INFO] [stdout] ...  |
[INFO] [stdout] 78 | |             return Ok(response);
[INFO] [stdout] 79 | |         }
[INFO] [stdout]    | |_________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 | /         {
[INFO] [stdout] 65 | |             thread::spawn(move || project_path.open(mutation, land_in));
[INFO] [stdout] 66 | |             Ok(Response::new(Body::from("Sent into wormhole.")))
[INFO] [stdout] 67 | |         } else {
[INFO] [stdout]    | |_________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             Ok(Response::new(Body::from("Sent into wormhole.")))
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/wormhole.rs:78:20
[INFO] [stdout]    |
[INFO] [stdout] 78 |             return Ok(response);
[INFO] [stdout]    |                    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `wormhole` (bin "wormhole") due to 25 previous errors
[INFO] running `Command { std: "docker" "inspect" "7dab845909f311bd9b7237d5740645f8d01973df003385773860c7d4e36b517e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7dab845909f311bd9b7237d5740645f8d01973df003385773860c7d4e36b517e", kill_on_drop: false }`
[INFO] [stdout] 7dab845909f311bd9b7237d5740645f8d01973df003385773860c7d4e36b517e
