[INFO] cloning repository https://github.com/dpc/tagwiki [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/dpc/tagwiki" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdpc%2Ftagwiki", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdpc%2Ftagwiki'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 440a0d1601b335b5a3758586ee2f55d8e13e8a67 [INFO] checking dpc/tagwiki against try#21cad1f647cfd05a566220f933edd88a53e50bcf for pr-129249-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdpc%2Ftagwiki" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/dpc/tagwiki [INFO] finished tweaking git repo https://github.com/dpc/tagwiki [INFO] tweaked toml for git repo https://github.com/dpc/tagwiki written to /workspace/builds/worker-4-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/dpc/tagwiki on toolchain 21cad1f647cfd05a566220f933edd88a53e50bcf [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+21cad1f647cfd05a566220f933edd88a53e50bcf" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/dpc/tagwiki 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" "+21cad1f647cfd05a566220f933edd88a53e50bcf" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3e793bdf10248eb2ddbd6b0faebed8155c11b4589982e2893733958d93e8d540" "sleep" "infinity", kill_on_drop: false }` [INFO] [stdout] 74532b876b1ac671c18a71a7b51b71f071805679e9d002417d78b5bbee46a5b5 [INFO] running `Command { std: "docker" "start" "74532b876b1ac671c18a71a7b51b71f071805679e9d002417d78b5bbee46a5b5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "74532b876b1ac671c18a71a7b51b71f071805679e9d002417d78b5bbee46a5b5" "/opt/rustwide/cargo-home/bin/cargo" "+21cad1f647cfd05a566220f933edd88a53e50bcf" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "74532b876b1ac671c18a71a7b51b71f071805679e9d002417d78b5bbee46a5b5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "74532b876b1ac671c18a71a7b51b71f071805679e9d002417d78b5bbee46a5b5" "/opt/rustwide/cargo-home/bin/cargo" "+21cad1f647cfd05a566220f933edd88a53e50bcf" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.69 [INFO] [stderr] Compiling proc-macro2 v1.0.9 [INFO] [stderr] Compiling syn v1.0.16 [INFO] [stderr] Compiling typenum v1.12.0 [INFO] [stderr] Checking smallvec v1.4.0 [INFO] [stderr] Compiling generic-array v0.14.4 [INFO] [stderr] Compiling proc-macro-error-attr v0.4.11 [INFO] [stderr] Compiling serde v1.0.106 [INFO] [stderr] Checking unicode-width v0.1.7 [INFO] [stderr] Compiling num-traits v0.2.11 [INFO] [stderr] Compiling proc-macro-error v0.4.11 [INFO] [stderr] Compiling ryu v1.0.4 [INFO] [stderr] Compiling num-integer v0.1.42 [INFO] [stderr] Compiling unicode-segmentation v1.6.0 [INFO] [stderr] Compiling anyhow v1.0.26 [INFO] [stderr] Compiling pulldown-cmark v0.7.1 [INFO] [stderr] Checking unicode-normalization v0.1.12 [INFO] [stderr] Checking subtle v2.2.3 [INFO] [stderr] Checking textwrap v0.11.0 [INFO] [stderr] Checking getopts v0.2.21 [INFO] [stderr] Checking regex-syntax v0.6.17 [INFO] [stderr] Checking env_logger v0.7.1 [INFO] [stderr] Checking itertools v0.4.19 [INFO] [stderr] Checking horrorshow v0.8.3 [INFO] [stderr] Checking hex v0.4.2 [INFO] [stderr] Compiling heck v0.3.1 [INFO] [stderr] Checking getrandom v0.1.14 [INFO] [stderr] Checking iovec v0.1.4 [INFO] [stderr] Checking net2 v0.2.33 [INFO] [stderr] Checking time v0.1.43 [INFO] [stderr] Checking rand_os v0.1.3 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking clap v2.33.0 [INFO] [stderr] Checking rand v0.6.5 [INFO] [stderr] Checking mio v0.6.21 [INFO] [stderr] Checking idna v0.2.0 [INFO] [stderr] Checking rand_core v0.5.1 [INFO] [stderr] Compiling quote v1.0.3 [INFO] [stderr] Checking rand_chacha v0.2.2 [INFO] [stderr] Checking rand v0.7.3 [INFO] [stderr] Checking chrono v0.4.11 [INFO] [stderr] Checking url v2.1.1 [INFO] [stderr] Checking generic-array v0.12.3 [INFO] [stderr] Checking block-buffer v0.7.3 [INFO] [stderr] Checking digest v0.8.1 [INFO] [stderr] Compiling phf_generator v0.7.24 [INFO] [stderr] Compiling phf_codegen v0.7.24 [INFO] [stderr] Checking sha-1 v0.8.2 [INFO] [stderr] Compiling mime_guess v1.8.8 [INFO] [stderr] Checking headers v0.3.2 [INFO] [stderr] Checking digest v0.9.0 [INFO] [stderr] Checking crypto-mac v0.8.0 [INFO] [stderr] Checking tempfile v3.1.0 [INFO] [stderr] Checking tungstenite v0.10.1 [INFO] [stderr] Checking blake2 v0.9.0 [INFO] [stderr] Checking regex v1.3.7 [INFO] [stderr] Checking serde_urlencoded v0.6.1 [INFO] [stderr] Checking serde_json v1.0.52 [INFO] [stderr] Checking multipart v0.16.1 [INFO] [stderr] Compiling syn-mid v0.5.0 [INFO] [stderr] Compiling futures-macro v0.3.4 [INFO] [stderr] Compiling tokio-macros v0.2.5 [INFO] [stderr] Compiling pin-project-internal v0.4.9 [INFO] [stderr] Compiling serde_derive v1.0.107 [INFO] [stderr] Compiling async-trait v0.1.30 [INFO] [stderr] Checking tokio v0.2.20 [INFO] [stderr] Compiling structopt-derive v0.4.4 [INFO] [stderr] Checking futures-util v0.3.4 [INFO] [stderr] Checking pin-project v0.4.9 [INFO] [stderr] Checking structopt v0.3.11 [INFO] [stderr] Checking tokio-util v0.3.1 [INFO] [stderr] Checking futures-executor v0.3.4 [INFO] [stderr] Checking h2 v0.2.4 [INFO] [stderr] Checking futures v0.3.4 [INFO] [stderr] Checking tokio-tungstenite v0.10.1 [INFO] [stderr] Checking hyper v0.13.5 [INFO] [stderr] Checking warp v0.2.2 [INFO] [stderr] Checking tagwiki v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `InMemoryStore` [INFO] [stdout] --> src/page.rs:9:17 [INFO] [stdout] | [INFO] [stdout] 9 | pub use store::{InMemoryStore, Store, StoreMut}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `InMemoryStore` [INFO] [stdout] --> src/page.rs:9:17 [INFO] [stdout] | [INFO] [stdout] 9 | pub use store::{InMemoryStore, Store, StoreMut}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/main.rs:26:21 [INFO] [stdout] | [INFO] [stdout] 26 | struct RejectAnyhow(anyhow::Error); [INFO] [stdout] | ------------ ^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] = note: `RejectAnyhow` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `source` is never read [INFO] [stdout] --> src/page.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct Parsed { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 27 | pub source: Source, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Parsed` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: useless conversion to the same type: `&str` [INFO] [stdout] --> src/main.rs:171:75 [INFO] [stdout] | [INFO] [stdout] 171 | _ => return Ok(Box::new(warp_temporary_redirect_to_get_method(".".into()))), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors [INFO] [stdout] = note: you can instead use the fully-qualified path `<&str as Into<&str>::into(val) to avoid triggering this lint [INFO] [stdout] = note: `#[deny(self_type_conversion)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:62:10 [INFO] [stdout] | [INFO] [stdout] 62 | #[derive(Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_GetParams` [INFO] [stdout] 63 | struct GetParams { [INFO] [stdout] | --------- `GetParams` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:69:10 [INFO] [stdout] | [INFO] [stdout] 69 | #[derive(Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_PostForm` [INFO] [stdout] 70 | struct PostForm { [INFO] [stdout] | -------- `PostForm` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/page.rs:194:15 [INFO] [stdout] | [INFO] [stdout] 194 | pub fn id(&self) -> IdRef { [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] 194 | pub fn id(&self) -> IdRef<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `tagwiki` (bin "tagwiki" test) due to 1 previous error; 6 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/main.rs:26:21 [INFO] [stdout] | [INFO] [stdout] 26 | struct RejectAnyhow(anyhow::Error); [INFO] [stdout] | ------------ ^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] = note: `RejectAnyhow` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `source` is never read [INFO] [stdout] --> src/page.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct Parsed { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 27 | pub source: Source, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Parsed` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: useless conversion to the same type: `&str` [INFO] [stdout] --> src/main.rs:171:75 [INFO] [stdout] | [INFO] [stdout] 171 | _ => return Ok(Box::new(warp_temporary_redirect_to_get_method(".".into()))), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors [INFO] [stdout] = note: you can instead use the fully-qualified path `<&str as Into<&str>::into(val) to avoid triggering this lint [INFO] [stdout] = note: `#[deny(self_type_conversion)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:62:10 [INFO] [stdout] | [INFO] [stdout] 62 | #[derive(Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_GetParams` [INFO] [stdout] 63 | struct GetParams { [INFO] [stdout] | --------- `GetParams` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:69:10 [INFO] [stdout] | [INFO] [stdout] 69 | #[derive(Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_PostForm` [INFO] [stdout] 70 | struct PostForm { [INFO] [stdout] | -------- `PostForm` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/page.rs:194:15 [INFO] [stdout] | [INFO] [stdout] 194 | pub fn id(&self) -> IdRef { [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] 194 | pub fn id(&self) -> IdRef<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `tagwiki` (bin "tagwiki") due to 1 previous error; 6 warnings emitted [INFO] running `Command { std: "docker" "inspect" "74532b876b1ac671c18a71a7b51b71f071805679e9d002417d78b5bbee46a5b5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "74532b876b1ac671c18a71a7b51b71f071805679e9d002417d78b5bbee46a5b5", kill_on_drop: false }` [INFO] [stdout] 74532b876b1ac671c18a71a7b51b71f071805679e9d002417d78b5bbee46a5b5