[INFO] crate serde_derive_state_internals 0.4.3 is already in cache [INFO] extracting crate serde_derive_state_internals 0.4.3 into work/ex/clippy-test-run/sources/stable/reg/serde_derive_state_internals/0.4.3 [INFO] extracting crate serde_derive_state_internals 0.4.3 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/serde_derive_state_internals/0.4.3 [INFO] validating manifest of serde_derive_state_internals-0.4.3 on toolchain stable [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of serde_derive_state_internals-0.4.3 on toolchain stable+rustflags=-Dclippy::into_iter_on_array [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing serde_derive_state_internals-0.4.3 [INFO] finished frobbing serde_derive_state_internals-0.4.3 [INFO] frobbed toml for serde_derive_state_internals-0.4.3 written to work/ex/clippy-test-run/sources/stable/reg/serde_derive_state_internals/0.4.3/Cargo.toml [INFO] started frobbing serde_derive_state_internals-0.4.3 [INFO] finished frobbing serde_derive_state_internals-0.4.3 [INFO] frobbed toml for serde_derive_state_internals-0.4.3 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/serde_derive_state_internals/0.4.3/Cargo.toml [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting serde_derive_state_internals-0.4.3 against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-3/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/reg/serde_derive_state_internals/0.4.3:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+stable" "clippy" "--frozen" "--all" "--all-targets"` [INFO] [stdout] cedaf93e65a5067d20c1a3be0aaa5c916e03534e9dbaef4f68bee0d5b29dbfa7 [INFO] running `"docker" "start" "-a" "cedaf93e65a5067d20c1a3be0aaa5c916e03534e9dbaef4f68bee0d5b29dbfa7"` [INFO] [stderr] Checking syn v0.11.11 [INFO] [stderr] Checking serde_derive_state_internals v0.4.3 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ast.rs:77:13 [INFO] [stderr] | [INFO] [stderr] 77 | attrs: attrs, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `attrs` [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ast.rs:77:13 [INFO] [stderr] | [INFO] [stderr] 77 | attrs: attrs, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `attrs` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ast.rs:78:13 [INFO] [stderr] | [INFO] [stderr] 78 | body: body, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `body` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ast.rs:110:21 [INFO] [stderr] | [INFO] [stderr] 110 | attrs: attrs, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `attrs` [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ast.rs:78:13 [INFO] [stderr] | [INFO] [stderr] 78 | body: body, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `body` [INFO] [stderr] | [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ast.rs:111:21 [INFO] [stderr] | [INFO] [stderr] 111 | style: style, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `style` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ast.rs:112:21 [INFO] [stderr] | [INFO] [stderr] 112 | fields: fields, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `fields` [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ast.rs:110:21 [INFO] [stderr] | [INFO] [stderr] 110 | attrs: attrs, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `attrs` [INFO] [stderr] | [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ast.rs:111:21 [INFO] [stderr] | [INFO] [stderr] 111 | style: style, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `style` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/attr.rs:36:13 [INFO] [stderr] | [INFO] [stderr] 36 | cx: cx, [INFO] [stderr] | ^^^^^^ help: replace it with: `cx` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ast.rs:112:21 [INFO] [stderr] | [INFO] [stderr] 112 | fields: fields, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `fields` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/attr.rs:37:13 [INFO] [stderr] | [INFO] [stderr] 37 | name: name, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/attr.rs:36:13 [INFO] [stderr] | [INFO] [stderr] 36 | cx: cx, [INFO] [stderr] | ^^^^^^ help: replace it with: `cx` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/attr.rs:37:13 [INFO] [stderr] | [INFO] [stderr] 37 | name: name, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/attr.rs:505:33 [INFO] [stderr] | [INFO] [stderr] 505 | EnumTag::Internal { tag: tag } [INFO] [stderr] | ^^^^^^^^ help: replace it with: `tag` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/attr.rs:521:17 [INFO] [stderr] | [INFO] [stderr] 521 | tag: tag, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `tag` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/attr.rs:522:17 [INFO] [stderr] | [INFO] [stderr] 522 | content: content, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `content` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/attr.rs:690:13 [INFO] [stderr] | [INFO] [stderr] 690 | ser_renamed: ser_renamed, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `ser_renamed` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/attr.rs:505:33 [INFO] [stderr] | [INFO] [stderr] 505 | EnumTag::Internal { tag: tag } [INFO] [stderr] | ^^^^^^^^ help: replace it with: `tag` [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/attr.rs:691:13 [INFO] [stderr] | [INFO] [stderr] 691 | de_renamed: de_renamed, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `de_renamed` [INFO] [stderr] | [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/attr.rs:521:17 [INFO] [stderr] | [INFO] [stderr] 521 | tag: tag, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `tag` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/attr.rs:522:17 [INFO] [stderr] | [INFO] [stderr] 522 | content: content, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `content` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/attr.rs:690:13 [INFO] [stderr] | [INFO] [stderr] 690 | ser_renamed: ser_renamed, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `ser_renamed` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/attr.rs:691:13 [INFO] [stderr] | [INFO] [stderr] 691 | de_renamed: de_renamed, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `de_renamed` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/attr.rs:1026:13 [INFO] [stderr] | [INFO] [stderr] 1026 | ser_renamed: ser_renamed, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `ser_renamed` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/attr.rs:1027:13 [INFO] [stderr] | [INFO] [stderr] 1027 | de_renamed: de_renamed, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `de_renamed` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/attr.rs:1036:13 [INFO] [stderr] | [INFO] [stderr] 1036 | borrowed_lifetimes: borrowed_lifetimes, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `borrowed_lifetimes` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/attr.rs:1026:13 [INFO] [stderr] | [INFO] [stderr] 1026 | ser_renamed: ser_renamed, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `ser_renamed` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/attr.rs:1027:13 [INFO] [stderr] | [INFO] [stderr] 1027 | de_renamed: de_renamed, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `de_renamed` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/attr.rs:1036:13 [INFO] [stderr] | [INFO] [stderr] 1036 | borrowed_lifetimes: borrowed_lifetimes, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `borrowed_lifetimes` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::ascii::AsciiExt': use inherent methods instead [INFO] [stderr] --> src/case.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use std::ascii::AsciiExt; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(deprecated)] on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::ascii::AsciiExt': use inherent methods instead [INFO] [stderr] --> src/case.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use std::ascii::AsciiExt; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(deprecated)] on by default [INFO] [stderr] [INFO] [stderr] warning: `ref` on an entire `let` pattern is discouraged, take a reference with `&` instead [INFO] [stderr] --> src/ast.rs:61:21 [INFO] [stderr] | [INFO] [stderr] 61 | for ref mut variant in variants { [INFO] [stderr] | ^^^^^^^^^^^^^^^ -------- help: try: `let variant = &mut variants;` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::toplevel_ref_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#toplevel_ref_arg [INFO] [stderr] [INFO] [stderr] warning: `ref` on an entire `let` pattern is discouraged, take a reference with `&` instead [INFO] [stderr] --> src/ast.rs:63:25 [INFO] [stderr] | [INFO] [stderr] 63 | for ref mut field in &mut variant.fields { [INFO] [stderr] | ^^^^^^^^^^^^^ ------------------- help: try: `let field = &mut &mut variant.fields;` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#toplevel_ref_arg [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 44 [INFO] [stderr] --> src/attr.rs:173:5 [INFO] [stderr] | [INFO] [stderr] 173 | / pub fn from_ast(cx: &Ctxt, item: &syn::DeriveInput) -> Self { [INFO] [stderr] 174 | | let mut ser_name = Attr::none(cx, "rename"); [INFO] [stderr] 175 | | let mut de_name = Attr::none(cx, "rename"); [INFO] [stderr] 176 | | let mut deny_unknown_fields = BoolAttr::none(cx, "deny_unknown_fields"); [INFO] [stderr] ... | [INFO] [stderr] 412 | | } [INFO] [stderr] 413 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cyclomatic_complexity)] on by default [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] warning: methods called `from_*` usually take no self; consider choosing a less ambiguous name [INFO] [stderr] --> src/attr.rs:443:22 [INFO] [stderr] | [INFO] [stderr] 443 | pub fn from_type(&self) -> Option<&syn::Ty> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::wrong_self_convention)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stderr] [INFO] [stderr] warning: methods called `into_*` usually take self by value; consider choosing a less ambiguous name [INFO] [stderr] --> src/attr.rs:447:22 [INFO] [stderr] | [INFO] [stderr] 447 | pub fn into_type(&self) -> Option<&syn::Ty> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 49 [INFO] [stderr] --> src/attr.rs:775:5 [INFO] [stderr] | [INFO] [stderr] 775 | / pub fn from_ast(cx: &Ctxt, index: usize, field: &syn::Field, attrs: Option<&Variant>) -> Self { [INFO] [stderr] 776 | | let mut ser_name = Attr::none(cx, "rename"); [INFO] [stderr] 777 | | let mut de_name = Attr::none(cx, "rename"); [INFO] [stderr] 778 | | let mut skip_serializing = BoolAttr::none(cx, "skip_serializing"); [INFO] [stderr] ... | [INFO] [stderr] 1042 | | } [INFO] [stderr] 1043 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] warning: called `cloned().collect()` on a slice to create a `Vec`. Calling `to_vec()` is both faster and more readable [INFO] [stderr] --> src/attr.rs:1172:62 [INFO] [stderr] | [INFO] [stderr] 1172 | List(ref name, ref items) if name == "serde" => Some(items.iter().cloned().collect()), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::iter_cloned_collect)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#iter_cloned_collect [INFO] [stderr] [INFO] [stderr] warning: passing a unit value to a function [INFO] [stderr] --> src/attr.rs:1258:9 [INFO] [stderr] | [INFO] [stderr] 1258 | Err(cx.error(format!("failed to parse borrowed lifetimes: {:?}", string)),) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unit_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unit_arg [INFO] [stderr] help: if you intended to pass a unit value, use a unit literal instead [INFO] [stderr] | [INFO] [stderr] 1258 | Err((),) [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: passing a unit value to a function [INFO] [stderr] --> src/attr.rs:1281:9 [INFO] [stderr] | [INFO] [stderr] 1281 | Err(cx.error(format!("failed to parse borrowed lifetimes: {:?}", string)),) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unit_arg [INFO] [stderr] help: if you intended to pass a unit value, use a unit literal instead [INFO] [stderr] | [INFO] [stderr] 1281 | Err((),) [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: passing a unit value to a function [INFO] [stderr] --> src/attr.rs:1375:13 [INFO] [stderr] | [INFO] [stderr] 1375 | Err(cx.error(format!("field `{}` has no lifetimes to borrow", name)),) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unit_arg [INFO] [stderr] help: if you intended to pass a unit value, use a unit literal instead [INFO] [stderr] | [INFO] [stderr] 1375 | Err((),) [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: `ref` on an entire `let` pattern is discouraged, take a reference with `&` instead [INFO] [stderr] --> src/ast.rs:61:21 [INFO] [stderr] | [INFO] [stderr] 61 | for ref mut variant in variants { [INFO] [stderr] | ^^^^^^^^^^^^^^^ -------- help: try: `let variant = &mut variants;` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::toplevel_ref_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#toplevel_ref_arg [INFO] [stderr] [INFO] [stderr] warning: `ref` on an entire `let` pattern is discouraged, take a reference with `&` instead [INFO] [stderr] --> src/ast.rs:63:25 [INFO] [stderr] | [INFO] [stderr] 63 | for ref mut field in &mut variant.fields { [INFO] [stderr] | ^^^^^^^^^^^^^ ------------------- help: try: `let field = &mut &mut variant.fields;` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#toplevel_ref_arg [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 44 [INFO] [stderr] --> src/attr.rs:173:5 [INFO] [stderr] | [INFO] [stderr] 173 | / pub fn from_ast(cx: &Ctxt, item: &syn::DeriveInput) -> Self { [INFO] [stderr] 174 | | let mut ser_name = Attr::none(cx, "rename"); [INFO] [stderr] 175 | | let mut de_name = Attr::none(cx, "rename"); [INFO] [stderr] 176 | | let mut deny_unknown_fields = BoolAttr::none(cx, "deny_unknown_fields"); [INFO] [stderr] ... | [INFO] [stderr] 412 | | } [INFO] [stderr] 413 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cyclomatic_complexity)] on by default [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] warning: methods called `from_*` usually take no self; consider choosing a less ambiguous name [INFO] [stderr] --> src/attr.rs:443:22 [INFO] [stderr] | [INFO] [stderr] 443 | pub fn from_type(&self) -> Option<&syn::Ty> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::wrong_self_convention)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stderr] [INFO] [stderr] warning: methods called `into_*` usually take self by value; consider choosing a less ambiguous name [INFO] [stderr] --> src/attr.rs:447:22 [INFO] [stderr] | [INFO] [stderr] 447 | pub fn into_type(&self) -> Option<&syn::Ty> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 49 [INFO] [stderr] --> src/attr.rs:775:5 [INFO] [stderr] | [INFO] [stderr] 775 | / pub fn from_ast(cx: &Ctxt, index: usize, field: &syn::Field, attrs: Option<&Variant>) -> Self { [INFO] [stderr] 776 | | let mut ser_name = Attr::none(cx, "rename"); [INFO] [stderr] 777 | | let mut de_name = Attr::none(cx, "rename"); [INFO] [stderr] 778 | | let mut skip_serializing = BoolAttr::none(cx, "skip_serializing"); [INFO] [stderr] ... | [INFO] [stderr] 1042 | | } [INFO] [stderr] 1043 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] warning: called `cloned().collect()` on a slice to create a `Vec`. Calling `to_vec()` is both faster and more readable [INFO] [stderr] --> src/attr.rs:1172:62 [INFO] [stderr] | [INFO] [stderr] 1172 | List(ref name, ref items) if name == "serde" => Some(items.iter().cloned().collect()), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::iter_cloned_collect)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#iter_cloned_collect [INFO] [stderr] [INFO] [stderr] warning: passing a unit value to a function [INFO] [stderr] --> src/attr.rs:1258:9 [INFO] [stderr] | [INFO] [stderr] 1258 | Err(cx.error(format!("failed to parse borrowed lifetimes: {:?}", string)),) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unit_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unit_arg [INFO] [stderr] help: if you intended to pass a unit value, use a unit literal instead [INFO] [stderr] | [INFO] [stderr] 1258 | Err((),) [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: passing a unit value to a function [INFO] [stderr] --> src/attr.rs:1281:9 [INFO] [stderr] | [INFO] [stderr] 1281 | Err(cx.error(format!("failed to parse borrowed lifetimes: {:?}", string)),) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unit_arg [INFO] [stderr] help: if you intended to pass a unit value, use a unit literal instead [INFO] [stderr] | [INFO] [stderr] 1281 | Err((),) [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: passing a unit value to a function [INFO] [stderr] --> src/attr.rs:1375:13 [INFO] [stderr] | [INFO] [stderr] 1375 | Err(cx.error(format!("field `{}` has no lifetimes to borrow", name)),) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unit_arg [INFO] [stderr] help: if you intended to pass a unit value, use a unit literal instead [INFO] [stderr] | [INFO] [stderr] 1375 | Err((),) [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 3.54s [INFO] running `"docker" "inspect" "cedaf93e65a5067d20c1a3be0aaa5c916e03534e9dbaef4f68bee0d5b29dbfa7"` [INFO] running `"docker" "rm" "-f" "cedaf93e65a5067d20c1a3be0aaa5c916e03534e9dbaef4f68bee0d5b29dbfa7"` [INFO] [stdout] cedaf93e65a5067d20c1a3be0aaa5c916e03534e9dbaef4f68bee0d5b29dbfa7