[INFO] fetching crate libblobd 0.1.1...
[INFO] checking libblobd-0.1.1 against c60b92c03ca8a3b101eb9d57f51e2232690638c7 for pr-164148-crater-rollup
[INFO] extracting crate libblobd 0.1.1 into /workspace/builds/worker-2-tc2/source
[INFO] started tweaking crates.io crate libblobd 0.1.1
[INFO] finished tweaking crates.io crate libblobd 0.1.1
[INFO] tweaked toml for crates.io crate libblobd 0.1.1 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate libblobd 0.1.1 on toolchain c60b92c03ca8a3b101eb9d57f51e2232690638c7
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c60b92c03ca8a3b101eb9d57f51e2232690638c7" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c60b92c03ca8a3b101eb9d57f51e2232690638c7" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 94 packages to highest compatible versions
[INFO] [stderr]       Adding dashmap v5.5.3 (available: v6.2.1)
[INFO] [stderr]       Adding flume v0.10.14 (available: v0.12.0)
[INFO] [stderr]       Adding itertools v0.10.5 (available: v0.15.0)
[INFO] [stderr]       Adding num-derive v0.3.3 (available: v0.5.1)
[INFO] [stderr]       Adding off64 v0.3.1 (available: v0.9.0)
[INFO] [stderr]       Adding roaring v0.10.12 (available: v0.11.5)
[INFO] [stderr]       Adding rustc-hash v1.1.0 (available: v2.1.3)
[INFO] [stderr]       Adding seekable-async-file v0.5.3 (available: v0.15.0)
[INFO] [stderr]       Adding signal-future v0.0.1 (available: v0.1.1)
[INFO] [stderr]       Adding strum v0.24.1 (available: v0.28.0)
[INFO] [stderr]       Adding twox-hash v1.6.3 (available: v2.1.5)
[INFO] [stderr]       Adding write-journal v0.4.3 (available: v0.15.2)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c60b92c03ca8a3b101eb9d57f51e2232690638c7" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 81ae54b4dc76f39dbaae8b8126f46d30ccc26daa18769104055829e9f608c0da
[INFO] running `Command { std: "docker" "start" "81ae54b4dc76f39dbaae8b8126f46d30ccc26daa18769104055829e9f608c0da", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "81ae54b4dc76f39dbaae8b8126f46d30ccc26daa18769104055829e9f608c0da", 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" "81ae54b4dc76f39dbaae8b8126f46d30ccc26daa18769104055829e9f608c0da" "/opt/rustwide/cargo-home/bin/cargo" "+c60b92c03ca8a3b101eb9d57f51e2232690638c7" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "81ae54b4dc76f39dbaae8b8126f46d30ccc26daa18769104055829e9f608c0da", 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" "81ae54b4dc76f39dbaae8b8126f46d30ccc26daa18769104055829e9f608c0da" "/opt/rustwide/cargo-home/bin/cargo" "+c60b92c03ca8a3b101eb9d57f51e2232690638c7" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.107
[INFO] [stderr]    Compiling quote v1.0.47
[INFO] [stderr]    Compiling unicode-ident v1.0.27
[INFO] [stderr]    Compiling libc v0.2.191
[INFO] [stderr]     Checking cfg-if v1.0.5
[INFO] [stderr]     Checking pin-project-lite v0.2.17
[INFO] [stderr]     Checking futures-core v0.3.34
[INFO] [stderr]     Checking futures-sink v0.3.34
[INFO] [stderr]    Compiling zerocopy v0.8.63
[INFO] [stderr]     Checking futures-task v0.3.34
[INFO] [stderr]     Checking memchr v2.8.3
[INFO] [stderr]     Checking slab v0.4.12
[INFO] [stderr]    Compiling shlex v2.0.1
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling find-msvc-tools v0.1.14
[INFO] [stderr]     Checking futures-io v0.3.34
[INFO] [stderr]    Compiling off64 v0.3.1
[INFO] [stderr]     Checking scopeguard v1.2.0
[INFO] [stderr]     Checking once_cell v1.21.4
[INFO] [stderr]    Compiling rustversion v1.0.23
[INFO] [stderr]    Compiling autocfg v1.5.1
[INFO] [stderr]     Checking lock_api v0.4.14
[INFO] [stderr]     Checking bytes v1.12.1
[INFO] [stderr]     Checking futures-channel v0.3.34
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling cc v1.8.0
[INFO] [stderr]     Checking arrayvec v0.7.8
[INFO] [stderr]     Checking tracing-core v0.1.36
[INFO] [stderr]     Checking constant_time_eq v0.4.2
[INFO] [stderr]    Compiling heck v0.4.1
[INFO] [stderr]     Checking smallvec v1.16.3
[INFO] [stderr]     Checking signal-future v0.0.1
[INFO] [stderr]     Checking either v1.19.0
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]     Checking iana-time-zone v0.1.65
[INFO] [stderr]     Checking bytemuck v1.25.2
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking static_assertions v1.1.0
[INFO] [stderr]     Checking spin v0.9.9
[INFO] [stderr]     Checking rustc-hash v1.1.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking tokio v1.53.3
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking roaring v0.10.12
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]    Compiling syn v3.0.9
[INFO] [stderr]    Compiling blake3 v1.8.7
[INFO] [stderr]     Checking chrono v0.4.45
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking memmap2 v0.5.10
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking nanorand v0.7.0
[INFO] [stderr]    Compiling strum_macros v0.24.3
[INFO] [stderr]    Compiling num-derive v0.3.3
[INFO] [stderr]     Checking dashmap v5.5.3
[INFO] [stderr]     Checking strum v0.24.1
[INFO] [stderr]    Compiling pin-project-internal v1.1.13
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]    Compiling futures-macro v0.3.34
[INFO] [stderr]     Checking async-stream v0.3.6
[INFO] [stderr]     Checking pin-project v1.1.13
[INFO] [stderr]     Checking flume v0.10.14
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking futures-util v0.3.34
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.8
[INFO] [stderr]     Checking twox-hash v1.6.3
[INFO] [stderr]     Checking futures-executor v0.3.34
[INFO] [stderr]     Checking futures v0.3.34
[INFO] [stderr]     Checking seekable-async-file v0.5.3
[INFO] [stderr]     Checking write-journal v0.4.3
[INFO] [stderr]     Checking libblobd v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/free_list.rs:165:9
[INFO] [stdout]     |
[INFO] [stdout] 165 |     let mut t = self.tiles.get_mut(&no).unwrap();
[INFO] [stdout]     |         ----^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/free_list.rs:165:9
[INFO] [stdout]     |
[INFO] [stdout] 165 |     let mut t = self.tiles.get_mut(&no).unwrap();
[INFO] [stdout]     |         ----^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/incomplete_slots.rs:182:5
[INFO] [stdout]     |
[INFO] [stdout] 182 |     &self,
[INFO] [stdout]     |     ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 185 |   ) -> Option<RwLockReadGuard<IncompleteSlot>> {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden 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] 185 |   ) -> Option<RwLockReadGuard<'_, IncompleteSlot>> {
[INFO] [stdout]     |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/incomplete_slots.rs:194:5
[INFO] [stdout]     |
[INFO] [stdout] 194 |     &self,
[INFO] [stdout]     |     ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 198 |   ) -> Option<RwLockWriteGuard<IncompleteSlot>> {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden 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] 198 |   ) -> Option<RwLockWriteGuard<'_, IncompleteSlot>> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `u16` libblobd
[INFO] [stdout]   --> src/op/create_object.rs:41:38
[INFO] [stdout]    |
[INFO] [stdout] 41 |   let inode_size = INO_SIZE(key_len, tile_count.into());
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> 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: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 41 -   let inode_size = INO_SIZE(key_len, tile_count.into());
[INFO] [stdout] 41 +   let inode_size = INO_SIZE(key_len, tile_count);
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 41 -   let inode_size = INO_SIZE(key_len, tile_count.into());
[INFO] [stdout] 41 +   let inode_size = INO_SIZE(key_len, <u16 as Into<_>>::into(tile_count));
[INFO] [stdout]    |
[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/stream.rs:51:38
[INFO] [stdout]    |
[INFO] [stdout] 51 | #[derive(PartialEq, Eq, Clone, Copy, FromPrimitive)]
[INFO] [stdout]    |                                      ^------------
[INFO] [stdout]    |                                      |
[INFO] [stdout]    |                                      `FromPrimitive` is not local
[INFO] [stdout]    |                                      move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_StreamEventType`
[INFO] [stdout] 52 | #[repr(u8)]
[INFO] [stdout] 53 | pub(crate) enum StreamEventType {
[INFO] [stdout]    |                 --------------- `StreamEventType` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `FromPrimitive` (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/incomplete_slots.rs:182:5
[INFO] [stdout]     |
[INFO] [stdout] 182 |     &self,
[INFO] [stdout]     |     ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 185 |   ) -> Option<RwLockReadGuard<IncompleteSlot>> {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden 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] 185 |   ) -> Option<RwLockReadGuard<'_, IncompleteSlot>> {
[INFO] [stdout]     |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `libblobd` (lib) due to 1 previous error; 4 warnings emitted
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/incomplete_slots.rs:194:5
[INFO] [stdout]     |
[INFO] [stdout] 194 |     &self,
[INFO] [stdout]     |     ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 198 |   ) -> Option<RwLockWriteGuard<IncompleteSlot>> {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden 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] 198 |   ) -> Option<RwLockWriteGuard<'_, IncompleteSlot>> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: useless conversion to the same type: `u16` libblobd
[INFO] [stdout]   --> src/op/create_object.rs:41:38
[INFO] [stdout]    |
[INFO] [stdout] 41 |   let inode_size = INO_SIZE(key_len, tile_count.into());
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> 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: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 41 -   let inode_size = INO_SIZE(key_len, tile_count.into());
[INFO] [stdout] 41 +   let inode_size = INO_SIZE(key_len, tile_count);
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 41 -   let inode_size = INO_SIZE(key_len, tile_count.into());
[INFO] [stdout] 41 +   let inode_size = INO_SIZE(key_len, <u16 as Into<_>>::into(tile_count));
[INFO] [stdout]    |
[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/stream.rs:51:38
[INFO] [stdout]    |
[INFO] [stdout] 51 | #[derive(PartialEq, Eq, Clone, Copy, FromPrimitive)]
[INFO] [stdout]    |                                      ^------------
[INFO] [stdout]    |                                      |
[INFO] [stdout]    |                                      `FromPrimitive` is not local
[INFO] [stdout]    |                                      move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_StreamEventType`
[INFO] [stdout] 52 | #[repr(u8)]
[INFO] [stdout] 53 | pub(crate) enum StreamEventType {
[INFO] [stdout]    |                 --------------- `StreamEventType` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `libblobd` (lib test) due to 1 previous error; 4 warnings emitted
[INFO] [stderr] warning: unused dependency `strum`
[INFO] [stderr]   --> Cargo.toml:40:15
[INFO] [stderr]    |
[INFO] [stderr] 40 | [dependencies.strum]
[INFO] [stderr]    |               ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `strum`
[INFO] [stderr] warning: `libblobd` (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "inspect" "81ae54b4dc76f39dbaae8b8126f46d30ccc26daa18769104055829e9f608c0da", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "81ae54b4dc76f39dbaae8b8126f46d30ccc26daa18769104055829e9f608c0da", kill_on_drop: false }`
[INFO] [stdout] 81ae54b4dc76f39dbaae8b8126f46d30ccc26daa18769104055829e9f608c0da
