visit_diff 0.1.1

Efficiently finding differences between data structures.
Documentation
Build #2403468 2025-08-10 20:44:04
# rustc version
rustc 1.91.0-nightly (ca7750494 2025-08-09)# docs.rs version
docsrs 0.6.0 (e18d034e 2025-07-29)# build log
[INFO] running `Command { std: "docker" "create" "-v" "/home/cratesfyi/workspace-builder/builds/visit_diff-0.1.1/target:/opt/rustwide/target:rw,Z" "-v" "/home/cratesfyi/workspace-builder/builds/visit_diff-0.1.1/source:/opt/rustwide/workdir:ro,Z" "-v" "/home/cratesfyi/workspace-builder/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/home/cratesfyi/workspace-builder/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "DOCS_RS=1" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "6442450944" "--cpus" "6" "--user" "1001:1001" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:ae6f63d130afcfff7f91f5ba9fdb2a74d52830289c6a2ea2d23a94dcfb480a0d" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "rustdoc" "--lib" "-Zrustdoc-map" "--config" "build.rustdocflags=[\"--cfg\", \"docsrs\", \"-Z\", \"unstable-options\", \"--emit=invocation-specific\", \"--resource-suffix\", \"-20250809-1.91.0-nightly-ca7750494\", \"--static-root-path\", \"/-/rustdoc.static/\", \"--cap-lints\", \"warn\", \"--extern-html-root-takes-precedence\"]" "--offline" "-Zunstable-options" "--config=doc.extern-map.registries.crates-io=\"https://docs.rs/{pkg_name}/{version}/x86_64-unknown-linux-gnu\"" "-Zrustdoc-scrape-examples" "-j6" "--target" "x86_64-unknown-linux-gnu", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] 5ee4ec8f62f375fdbfcc7e3646d5df218061a9967724b9576ff0bcb2ee9f3c52
[INFO] running `Command { std: "docker" "start" "-a" "5ee4ec8f62f375fdbfcc7e3646d5df218061a9967724b9576ff0bcb2ee9f3c52", kill_on_drop: false }`
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/lib.rs:305:29
[INFO] [stderr]     |
[INFO] [stderr] 305 |     fn difference(self, a: &Debug, b: &Debug) -> Result<Self::Ok, Self::Err>;
[INFO] [stderr]     |                             ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 305 |     fn difference(self, a: &dyn Debug, b: &Debug) -> Result<Self::Ok, Self::Err>;
[INFO] [stderr]     |                             +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/lib.rs:305:40
[INFO] [stderr]     |
[INFO] [stderr] 305 |     fn difference(self, a: &Debug, b: &Debug) -> Result<Self::Ok, Self::Err>;
[INFO] [stderr]     |                                        ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 305 |     fn difference(self, a: &Debug, b: &dyn Debug) -> Result<Self::Ok, Self::Err>;
[INFO] [stderr]     |                                        +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/lib.rs:309:23
[INFO] [stderr]     |
[INFO] [stderr] 309 |     fn same(self, a: &Debug, b: &Debug) -> Result<Self::Ok, Self::Err>;
[INFO] [stderr]     |                       ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 309 |     fn same(self, a: &dyn Debug, b: &Debug) -> Result<Self::Ok, Self::Err>;
[INFO] [stderr]     |                       +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/lib.rs:309:34
[INFO] [stderr]     |
[INFO] [stderr] 309 |     fn same(self, a: &Debug, b: &Debug) -> Result<Self::Ok, Self::Err>;
[INFO] [stderr]     |                                  ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 309 |     fn same(self, a: &Debug, b: &dyn Debug) -> Result<Self::Ok, Self::Err>;
[INFO] [stderr]     |                                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/debug.rs:25:29
[INFO] [stderr]    |
[INFO] [stderr] 25 |     fn difference(self, a: &Debug, b: &Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]    |                             ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 25 |     fn difference(self, a: &dyn Debug, b: &Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]    |                             +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/debug.rs:25:40
[INFO] [stderr]    |
[INFO] [stderr] 25 |     fn difference(self, a: &Debug, b: &Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]    |                                        ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 25 |     fn difference(self, a: &Debug, b: &dyn Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]    |                                        +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/debug.rs:29:23
[INFO] [stderr]    |
[INFO] [stderr] 29 |     fn same(self, a: &Debug, _: &Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]    |                       ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 29 |     fn same(self, a: &dyn Debug, _: &Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]    |                       +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/debug.rs:29:34
[INFO] [stderr]    |
[INFO] [stderr] 29 |     fn same(self, a: &Debug, _: &Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]    |                                  ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 29 |     fn same(self, a: &Debug, _: &dyn Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]    |                                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/detect.rs:203:29
[INFO] [stderr]     |
[INFO] [stderr] 203 |     fn difference(self, _: &Debug, _: &Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]     |                             ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 203 |     fn difference(self, _: &dyn Debug, _: &Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]     |                             +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/detect.rs:203:40
[INFO] [stderr]     |
[INFO] [stderr] 203 |     fn difference(self, _: &Debug, _: &Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]     |                                        ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 203 |     fn difference(self, _: &Debug, _: &dyn Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]     |                                        +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/detect.rs:207:23
[INFO] [stderr]     |
[INFO] [stderr] 207 |     fn same(self, _: &Debug, _: &Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]     |                       ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 207 |     fn same(self, _: &dyn Debug, _: &Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]     |                       +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/detect.rs:207:34
[INFO] [stderr]     |
[INFO] [stderr] 207 |     fn same(self, _: &Debug, _: &Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]     |                                  ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 207 |     fn same(self, _: &Debug, _: &dyn Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]     |                                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/constant.rs:42:29
[INFO] [stderr]    |
[INFO] [stderr] 42 |     fn difference(self, _: &Debug, _: &Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]    |                             ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 42 |     fn difference(self, _: &dyn Debug, _: &Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]    |                             +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/constant.rs:42:40
[INFO] [stderr]    |
[INFO] [stderr] 42 |     fn difference(self, _: &Debug, _: &Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]    |                                        ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 42 |     fn difference(self, _: &Debug, _: &dyn Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]    |                                        +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/constant.rs:46:23
[INFO] [stderr]    |
[INFO] [stderr] 46 |     fn same(self, _: &Debug, _: &Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]    |                       ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 46 |     fn same(self, _: &dyn Debug, _: &Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]    |                       +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/constant.rs:46:34
[INFO] [stderr]    |
[INFO] [stderr] 46 |     fn same(self, _: &Debug, _: &Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]    |                                  ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 46 |     fn same(self, _: &Debug, _: &dyn Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]    |                                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/unit.rs:20:29
[INFO] [stderr]    |
[INFO] [stderr] 20 |     fn difference(self, _: &Debug, _: &Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]    |                             ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 20 |     fn difference(self, _: &dyn Debug, _: &Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]    |                             +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/unit.rs:20:40
[INFO] [stderr]    |
[INFO] [stderr] 20 |     fn difference(self, _: &Debug, _: &Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]    |                                        ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 20 |     fn difference(self, _: &Debug, _: &dyn Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]    |                                        +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/unit.rs:24:23
[INFO] [stderr]    |
[INFO] [stderr] 24 |     fn same(self, _: &Debug, _: &Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]    |                       ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 24 |     fn same(self, _: &dyn Debug, _: &Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]    |                       +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/unit.rs:24:34
[INFO] [stderr]    |
[INFO] [stderr] 24 |     fn same(self, _: &Debug, _: &Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]    |                                  ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 24 |     fn same(self, _: &Debug, _: &dyn Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]    |                                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/record.rs:115:29
[INFO] [stderr]     |
[INFO] [stderr] 115 |     fn difference(self, a: &Debug, b: &Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]     |                             ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 115 |     fn difference(self, a: &dyn Debug, b: &Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]     |                             +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/record.rs:115:40
[INFO] [stderr]     |
[INFO] [stderr] 115 |     fn difference(self, a: &Debug, b: &Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]     |                                        ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 115 |     fn difference(self, a: &Debug, b: &dyn Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]     |                                        +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/record.rs:119:23
[INFO] [stderr]     |
[INFO] [stderr] 119 |     fn same(self, a: &Debug, b: &Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]     |                       ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 119 |     fn same(self, a: &dyn Debug, b: &Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]     |                       +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/record.rs:119:34
[INFO] [stderr]     |
[INFO] [stderr] 119 |     fn same(self, a: &Debug, b: &Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]     |                                  ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 119 |     fn same(self, a: &Debug, b: &dyn Debug) -> Result<Self::Ok, Self::Err> {
[INFO] [stderr]     |                                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: fields `L` and `R` are never read
[INFO] [stderr]   --> src/debug.rs:86:5
[INFO] [stderr]    |
[INFO] [stderr] 85 | struct DIFF<T, S> {
[INFO] [stderr]    |        ---- fields in this struct
[INFO] [stderr] 86 |     L: T,
[INFO] [stderr]    |     ^
[INFO] [stderr] 87 |     R: S,
[INFO] [stderr]    |     ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `DIFF` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: ambiguous wide pointer comparison, the comparison includes metadata which may not be expected
[INFO] [stderr]    --> src/impls.rs:267:12
[INFO] [stderr]     |
[INFO] [stderr] 267 |         if a != b {
[INFO] [stderr]     |            ^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(ambiguous_wide_pointer_comparisons)]` on by default
[INFO] [stderr] help: use `std::ptr::addr_eq` or untyped pointers to only compare their addresses
[INFO] [stderr]     |
[INFO] [stderr] 267 -         if a != b {
[INFO] [stderr] 267 +         if !std::ptr::addr_eq(*a, *b) {
[INFO] [stderr]     |
[INFO] [stderr] help: use explicit `std::ptr::eq` method to compare metadata and addresses
[INFO] [stderr]     |
[INFO] [stderr] 267 -         if a != b {
[INFO] [stderr] 267 +         if !std::ptr::eq(*a, *b) {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: ambiguous wide pointer comparison, the comparison includes metadata which may not be expected
[INFO] [stderr]    --> src/impls.rs:281:12
[INFO] [stderr]     |
[INFO] [stderr] 281 |         if a != b {
[INFO] [stderr]     |            ^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] help: use `std::ptr::addr_eq` or untyped pointers to only compare their addresses
[INFO] [stderr]     |
[INFO] [stderr] 281 -         if a != b {
[INFO] [stderr] 281 +         if !std::ptr::addr_eq(*a, *b) {
[INFO] [stderr]     |
[INFO] [stderr] help: use explicit `std::ptr::eq` method to compare metadata and addresses
[INFO] [stderr]     |
[INFO] [stderr] 281 -         if a != b {
[INFO] [stderr] 281 +         if !std::ptr::eq(*a, *b) {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: `visit_diff` (lib) generated 27 warnings (run `cargo fix --lib -p visit_diff` to apply 24 suggestions)
[INFO] [stderr]     Scraping visit_diff v0.1.1 (/opt/rustwide/workdir)
[INFO] [stderr]  Documenting visit_diff v0.1.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.70s
[INFO] [stderr]    Generated /opt/rustwide/target/x86_64-unknown-linux-gnu/doc/visit_diff/index.html
[INFO] running `Command { std: "docker" "inspect" "5ee4ec8f62f375fdbfcc7e3646d5df218061a9967724b9576ff0bcb2ee9f3c52", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5ee4ec8f62f375fdbfcc7e3646d5df218061a9967724b9576ff0bcb2ee9f3c52", kill_on_drop: false }`
[INFO] [stdout] 5ee4ec8f62f375fdbfcc7e3646d5df218061a9967724b9576ff0bcb2ee9f3c52