[INFO] cloning repository https://github.com/Myrannas/yata-impl [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Myrannas/yata-impl" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMyrannas%2Fyata-impl", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMyrannas%2Fyata-impl'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 9ef461e96759f274668887d413d1cf1801665f0c [INFO] checking Myrannas/yata-impl/9ef461e96759f274668887d413d1cf1801665f0c against try#4d98531622e1718ae0bc3c7a1ab9cd8938428452+rustflags=-Dtail_expr_drop_order for pr-129604 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMyrannas%2Fyata-impl" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Myrannas/yata-impl on toolchain 4d98531622e1718ae0bc3c7a1ab9cd8938428452 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Myrannas/yata-impl [INFO] finished tweaking git repo https://github.com/Myrannas/yata-impl [INFO] tweaked toml for git repo https://github.com/Myrannas/yata-impl written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/Myrannas/yata-impl 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" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] a7b2103ff3c25de787a6ef45362d8084d998d2ffcc95d5aed9f16a7e70f430ef [INFO] running `Command { std: "docker" "start" "-a" "a7b2103ff3c25de787a6ef45362d8084d998d2ffcc95d5aed9f16a7e70f430ef", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a7b2103ff3c25de787a6ef45362d8084d998d2ffcc95d5aed9f16a7e70f430ef", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a7b2103ff3c25de787a6ef45362d8084d998d2ffcc95d5aed9f16a7e70f430ef", kill_on_drop: false }` [INFO] [stdout] a7b2103ff3c25de787a6ef45362d8084d998d2ffcc95d5aed9f16a7e70f430ef [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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 -Dtail_expr_drop_order" "-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 2df86877a87028cf0ae4d988f0b0250f0195bb9a3776df8efc2ae21ecafe3e53 [INFO] running `Command { std: "docker" "start" "-a" "2df86877a87028cf0ae4d988f0b0250f0195bb9a3776df8efc2ae21ecafe3e53", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.121 [INFO] [stderr] Compiling virtue v0.0.7 [INFO] [stderr] Checking ppv-lite86 v0.2.16 [INFO] [stderr] Compiling bincode_derive v2.0.0-rc.1 [INFO] [stderr] Checking getrandom v0.1.16 [INFO] [stderr] Checking rand_core v0.5.1 [INFO] [stderr] Checking bincode v2.0.0-rc.1 [INFO] [stderr] Checking rand_chacha v0.2.2 [INFO] [stderr] Checking rand v0.7.3 [INFO] [stderr] Checking yata-impl v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::ops::Add` [INFO] [stdout] --> src/block.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::ops::Add; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Clock` [INFO] [stdout] --> src/store.rs:2:42 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::document::{BlockId, ClientId, Clock}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bincode::de::Decoder` [INFO] [stdout] --> src/update.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use bincode::de::Decoder; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bincode::enc::Encoder` [INFO] [stdout] --> src/update.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use bincode::enc::Encoder; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `DecodeError` and `EncodeError` [INFO] [stdout] --> src/update.rs:10:22 [INFO] [stdout] | [INFO] [stdout] 10 | use bincode::error::{DecodeError, EncodeError}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Add` [INFO] [stdout] --> src/block.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::ops::Add; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Clock` [INFO] [stdout] --> src/store.rs:2:42 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::document::{BlockId, ClientId, Clock}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bincode::de::Decoder` [INFO] [stdout] --> src/update.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use bincode::de::Decoder; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bincode::enc::Encoder` [INFO] [stdout] --> src/update.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use bincode::enc::Encoder; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `DecodeError` and `EncodeError` [INFO] [stdout] --> src/update.rs:10:22 [INFO] [stdout] | [INFO] [stdout] 10 | use bincode::error::{DecodeError, EncodeError}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::block::Block` [INFO] [stdout] --> src/update.rs:286:9 [INFO] [stdout] | [INFO] [stdout] 286 | use crate::block::Block; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `deleted` [INFO] [stdout] --> src/delete_set.rs:34:43 [INFO] [stdout] | [INFO] [stdout] 34 | ... .map(|Block { deleted, id, .. }| (*id, 1)) [INFO] [stdout] | ^^^^^^^- [INFO] [stdout] | | [INFO] [stdout] | help: try removing the field [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cid` [INFO] [stdout] --> src/update.rs:241:20 [INFO] [stdout] | [INFO] [stdout] 241 | .map(|(cid, range)| range.clone()) [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `deleted` [INFO] [stdout] --> src/delete_set.rs:34:43 [INFO] [stdout] | [INFO] [stdout] 34 | ... .map(|Block { deleted, id, .. }| (*id, 1)) [INFO] [stdout] | ^^^^^^^- [INFO] [stdout] | | [INFO] [stdout] | help: try removing the field [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `delete` is never used [INFO] [stdout] --> src/block.rs:42:19 [INFO] [stdout] | [INFO] [stdout] 41 | impl Block { [INFO] [stdout] | ----------------------- method in this implementation [INFO] [stdout] 42 | pub(crate) fn delete(&mut self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `with_value`, `with_value_and_right`, `merge_with_right`, and `split_at` are never used [INFO] [stdout] --> src/block.rs:51:12 [INFO] [stdout] | [INFO] [stdout] 50 | impl Block { [INFO] [stdout] | ---------------------- associated items in this implementation [INFO] [stdout] 51 | pub fn with_value(id: Clock, left: Option, value: T) -> Block { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 64 | pub fn with_value_and_right( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 82 | pub fn merge_with_right(mut self, next: Block) -> Block { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | pub fn split_at(self, client_id: ClientId, index: Clock) -> (Block, Block) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `apply`, `from`, and `empty` are never used [INFO] [stdout] --> src/delete_set.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl DeleteSet { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 12 | pub fn apply(&self, document: &mut Document) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | pub fn from(document: &Document) -> DeleteSet { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn empty() -> DeleteSet { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `ClockVector` is never used [INFO] [stdout] --> src/document.rs:10:10 [INFO] [stdout] | [INFO] [stdout] 10 | pub type ClockVector = HashMap; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/document.rs:19:12 [INFO] [stdout] | [INFO] [stdout] 18 | impl BlockId { [INFO] [stdout] | ------------ associated function in this implementation [INFO] [stdout] 19 | pub fn new(client_id: ClientId, clock: Clock) -> BlockId { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Document` is never constructed [INFO] [stdout] --> src/document.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 25 | pub struct Document { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Document` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `with_client_id` and `new` are never used [INFO] [stdout] --> src/document.rs:33:19 [INFO] [stdout] | [INFO] [stdout] 32 | impl Document { [INFO] [stdout] | ------------------------- associated functions in this implementation [INFO] [stdout] 33 | pub(crate) fn with_client_id(client_id: u64) -> Document { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn new() -> Document { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `start`, `end`, and `client_id` are never read [INFO] [stdout] --> src/store.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Store { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] 8 | start: Option, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 9 | end: Option, [INFO] [stdout] | ^^^ [INFO] [stdout] 10 | client_id: u64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Store` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `block` and `block_id` are never read [INFO] [stdout] --> src/store.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct BlockWithClientId<'a, T: Item> { [INFO] [stdout] | ----------------- fields in this struct [INFO] [stdout] 15 | block: &'a Block, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 16 | block_id: BlockId, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `integrate` and `find_insertion_point` are never used [INFO] [stdout] --> src/store.rs:20:19 [INFO] [stdout] | [INFO] [stdout] 19 | impl Store { [INFO] [stdout] | ---------------------- methods in this implementation [INFO] [stdout] 20 | pub(crate) fn integrate(&mut self, client_id: ClientId, blocks: Vec>) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 69 | fn find_insertion_point( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/store.rs:112:12 [INFO] [stdout] | [INFO] [stdout] 111 | impl Store { [INFO] [stdout] | ---------------------- associated items in this implementation [INFO] [stdout] 112 | pub fn new(client_id: u64) -> Store { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 121 | pub fn append(&mut self, value: T) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 125 | pub fn insert(&mut self, index: usize, value: T) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 136 | pub fn delete_range(&mut self, index: usize, count: usize) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 149 | pub fn delete(&mut self, index: usize) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 153 | fn add_block(&mut self, previous: Option, next: Option, value: T) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 203 | pub fn iter_blocks(&self) -> impl Iterator> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 211 | fn iter_live_blocks(&self) -> impl Iterator> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 220 | pub fn iter_blocks_with_offset( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 231 | pub fn iter_values(&self) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StoreIterator` is never constructed [INFO] [stdout] --> src/store.rs:237:8 [INFO] [stdout] | [INFO] [stdout] 237 | struct StoreIterator<'a, T: Item> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `merge` is never used [INFO] [stdout] --> src/update.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 18 | impl Content { [INFO] [stdout] | ------------------------ method in this implementation [INFO] [stdout] 19 | fn merge(self, other: Self) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `MergeResult` is never used [INFO] [stdout] --> src/update.rs:34:6 [INFO] [stdout] | [INFO] [stdout] 34 | enum MergeResult { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `hydrate`, `from_block`, `with_value`, `length`, and `try_merge` are never used [INFO] [stdout] --> src/update.rs:47:8 [INFO] [stdout] | [INFO] [stdout] 46 | impl UpdateBlock { [INFO] [stdout] | ---------------------------- associated items in this implementation [INFO] [stdout] 47 | fn hydrate(self, id: Clock) -> Block { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 65 | fn from_block(block: &Block) -> UpdateBlock { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 79 | fn with_value(left: Option, right: Option, value: T) -> UpdateBlock { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | fn length(&self) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 94 | fn try_merge( [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ValidationError` is never used [INFO] [stdout] --> src/update.rs:143:6 [INFO] [stdout] | [INFO] [stdout] 143 | enum ValidationError { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/update.rs:150:12 [INFO] [stdout] | [INFO] [stdout] 149 | impl Update { [INFO] [stdout] | ----------------------- associated items in this implementation [INFO] [stdout] 150 | pub fn from_document(document: &Document) -> Update { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 172 | pub fn apply(self, document: &mut Document) -> Result<(), ()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 195 | pub(crate) fn from_blocks( [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 209 | fn validate(&self) -> Result<(), ValidationError> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 237 | fn get_version_range(&self, client_id: ClientId) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 244 | fn does_clock_exist(&self, block: Option) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 258 | fn compact(self) -> Self { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/block.rs:112:13 [INFO] [stdout] | [INFO] [stdout] 99 | pub fn split_at(self, client_id: ClientId, index: Clock) -> (Block, Block) { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 100 | let (left_value, right_value) = if self.deleted { [INFO] [stdout] | ---------- ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 112 | / Block { [INFO] [stdout] 113 | | id: self.id, [INFO] [stdout] 114 | | origin_left: self.origin_left, [INFO] [stdout] 115 | | origin_right: self.origin_right, [INFO] [stdout] ... | [INFO] [stdout] 120 | | deleted: self.deleted, [INFO] [stdout] 121 | | }, [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/block.rs:122:13 [INFO] [stdout] | [INFO] [stdout] 99 | pub fn split_at(self, client_id: ClientId, index: Clock) -> (Block, Block) { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 100 | let (left_value, right_value) = if self.deleted { [INFO] [stdout] | ---------- ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 122 | / Block { [INFO] [stdout] 123 | | id: self.id + index, [INFO] [stdout] 124 | | origin_left: left_block_id, [INFO] [stdout] 125 | | origin_right: self.origin_right, [INFO] [stdout] ... | [INFO] [stdout] 130 | | deleted: self.deleted, [INFO] [stdout] 131 | | }, [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cid` [INFO] [stdout] --> src/update.rs:241:20 [INFO] [stdout] | [INFO] [stdout] 241 | .map(|(cid, range)| range.clone()) [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/update.rs:20:15 [INFO] [stdout] | [INFO] [stdout] 19 | fn merge(self, other: Self) -> Self { [INFO] [stdout] | ---- ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 20 | match (self, other) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/update.rs:83:20 [INFO] [stdout] | [INFO] [stdout] 79 | fn with_value(left: Option, right: Option, value: T) -> UpdateBlock { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 83 | value: Content::Value(vec![value]), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/update.rs:130:20 [INFO] [stdout] | [INFO] [stdout] 126 | fn from(block: Block) -> Self { [INFO] [stdout] | --------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 130 | value: Content::Value(block.value), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/update.rs:156:51 [INFO] [stdout] | [INFO] [stdout] 156 | (*client_id, block.iter().map(|u| u.clone().into()).collect()) [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `size` [INFO] [stdout] --> src/update.rs:470:30 [INFO] [stdout] | [INFO] [stdout] 470 | let (decoded_update, size): (Update, usize) = [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 6 previous errors; 24 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `with_value`, `merge_with_right`, and `split_at` are never used [INFO] [stdout] --> src/block.rs:51:12 [INFO] [stdout] | [INFO] [stdout] 50 | impl Block { [INFO] [stdout] | ---------------------- associated items in this implementation [INFO] [stdout] 51 | pub fn with_value(id: Clock, left: Option, value: T) -> Block { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 82 | pub fn merge_with_right(mut self, next: Block) -> Block { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | pub fn split_at(self, client_id: ClientId, index: Clock) -> (Block, Block) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `apply` is never used [INFO] [stdout] --> src/delete_set.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl DeleteSet { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] 12 | pub fn apply(&self, document: &mut Document) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `clock` is never read [INFO] [stdout] --> src/document.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 25 | pub struct Document { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 26 | clock: Clock, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Document` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `delete` is never used [INFO] [stdout] --> src/store.rs:149:12 [INFO] [stdout] | [INFO] [stdout] 111 | impl Store { [INFO] [stdout] | ---------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 149 | pub fn delete(&mut self, index: usize) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `merge` is never used [INFO] [stdout] --> src/update.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 18 | impl Content { [INFO] [stdout] | ------------------------ method in this implementation [INFO] [stdout] 19 | fn merge(self, other: Self) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `MergeResult` is never used [INFO] [stdout] --> src/update.rs:34:6 [INFO] [stdout] | [INFO] [stdout] 34 | enum MergeResult { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from_block`, `length`, and `try_merge` are never used [INFO] [stdout] --> src/update.rs:65:8 [INFO] [stdout] | [INFO] [stdout] 46 | impl UpdateBlock { [INFO] [stdout] | ---------------------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 65 | fn from_block(block: &Block) -> UpdateBlock { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | fn length(&self) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 94 | fn try_merge( [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `compact` is never used [INFO] [stdout] --> src/update.rs:258:8 [INFO] [stdout] | [INFO] [stdout] 149 | impl Update { [INFO] [stdout] | ----------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 258 | fn compact(self) -> Self { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/block.rs:112:13 [INFO] [stdout] | [INFO] [stdout] 99 | pub fn split_at(self, client_id: ClientId, index: Clock) -> (Block, Block) { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 100 | let (left_value, right_value) = if self.deleted { [INFO] [stdout] | ---------- ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 112 | / Block { [INFO] [stdout] 113 | | id: self.id, [INFO] [stdout] 114 | | origin_left: self.origin_left, [INFO] [stdout] 115 | | origin_right: self.origin_right, [INFO] [stdout] ... | [INFO] [stdout] 120 | | deleted: self.deleted, [INFO] [stdout] 121 | | }, [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/block.rs:122:13 [INFO] [stdout] | [INFO] [stdout] 99 | pub fn split_at(self, client_id: ClientId, index: Clock) -> (Block, Block) { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 100 | let (left_value, right_value) = if self.deleted { [INFO] [stdout] | ---------- ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 122 | / Block { [INFO] [stdout] 123 | | id: self.id + index, [INFO] [stdout] 124 | | origin_left: left_block_id, [INFO] [stdout] 125 | | origin_right: self.origin_right, [INFO] [stdout] ... | [INFO] [stdout] 130 | | deleted: self.deleted, [INFO] [stdout] 131 | | }, [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `yata-impl` (bin "yata-impl") due to 7 previous errors; 24 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/update.rs:20:15 [INFO] [stdout] | [INFO] [stdout] 19 | fn merge(self, other: Self) -> Self { [INFO] [stdout] | ---- ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 20 | match (self, other) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/update.rs:83:20 [INFO] [stdout] | [INFO] [stdout] 79 | fn with_value(left: Option, right: Option, value: T) -> UpdateBlock { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 83 | value: Content::Value(vec![value]), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/update.rs:130:20 [INFO] [stdout] | [INFO] [stdout] 126 | fn from(block: Block) -> Self { [INFO] [stdout] | --------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 130 | value: Content::Value(block.value), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/update.rs:156:51 [INFO] [stdout] | [INFO] [stdout] 156 | (*client_id, block.iter().map(|u| u.clone().into()).collect()) [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/update.rs:317:9 [INFO] [stdout] | [INFO] [stdout] 317 | update.apply(&mut doc2); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 317 | let _ = update.apply(&mut doc2); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/update.rs:345:9 [INFO] [stdout] | [INFO] [stdout] 345 | update.apply(&mut doc2); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 345 | let _ = update.apply(&mut doc2); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 6 previous errors; 19 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `yata-impl` (bin "yata-impl" test) due to 7 previous errors; 19 warnings emitted [INFO] running `Command { std: "docker" "inspect" "2df86877a87028cf0ae4d988f0b0250f0195bb9a3776df8efc2ae21ecafe3e53", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2df86877a87028cf0ae4d988f0b0250f0195bb9a3776df8efc2ae21ecafe3e53", kill_on_drop: false }` [INFO] [stdout] 2df86877a87028cf0ae4d988f0b0250f0195bb9a3776df8efc2ae21ecafe3e53