[INFO] cloning repository https://github.com/IRONICBo/c_buffer [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/IRONICBo/c_buffer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FIRONICBo%2Fc_buffer", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FIRONICBo%2Fc_buffer'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 0ba8922b96007de3ea09517176ca692a4108fc4f [INFO] testing IRONICBo/c_buffer against try#028592fec99e54cc92def5a2a849c673b066dd93 for pr-146098 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FIRONICBo%2Fc_buffer" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/IRONICBo/c_buffer [INFO] finished tweaking git repo https://github.com/IRONICBo/c_buffer [INFO] tweaked toml for git repo https://github.com/IRONICBo/c_buffer written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/IRONICBo/c_buffer on toolchain 028592fec99e54cc92def5a2a849c673b066dd93 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+028592fec99e54cc92def5a2a849c673b066dd93" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/IRONICBo/c_buffer 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" "+028592fec99e54cc92def5a2a849c673b066dd93" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+028592fec99e54cc92def5a2a849c673b066dd93" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] a3980f2706fd7e6b72e0adb48b0948452edf4da58b366d4a2dc6bcd6cf0c8e1f [INFO] running `Command { std: "docker" "start" "-a" "a3980f2706fd7e6b72e0adb48b0948452edf4da58b366d4a2dc6bcd6cf0c8e1f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a3980f2706fd7e6b72e0adb48b0948452edf4da58b366d4a2dc6bcd6cf0c8e1f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a3980f2706fd7e6b72e0adb48b0948452edf4da58b366d4a2dc6bcd6cf0c8e1f", kill_on_drop: false }` [INFO] [stdout] a3980f2706fd7e6b72e0adb48b0948452edf4da58b366d4a2dc6bcd6cf0c8e1f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+028592fec99e54cc92def5a2a849c673b066dd93" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 9674342f86a9b2d43528fde1033ea6addbf686da55d898274f507f3c1a047578 [INFO] running `Command { std: "docker" "start" "-a" "9674342f86a9b2d43528fde1033ea6addbf686da55d898274f507f3c1a047578", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.86 [INFO] [stderr] Compiling unicode-ident v1.0.13 [INFO] [stderr] Compiling autocfg v1.3.0 [INFO] [stderr] Compiling libc v0.2.158 [INFO] [stderr] Compiling smallvec v1.13.2 [INFO] [stderr] Compiling serde v1.0.210 [INFO] [stderr] Compiling pin-project-lite v0.2.14 [INFO] [stderr] Compiling libm v0.2.8 [INFO] [stderr] Compiling bytes v1.7.1 [INFO] [stderr] Compiling cc v1.1.18 [INFO] [stderr] Compiling target-lexicon v0.12.16 [INFO] [stderr] Compiling bitflags v2.6.0 [INFO] [stderr] Compiling cpufeatures v0.2.14 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling block-padding v0.3.3 [INFO] [stderr] Compiling inout v0.1.3 [INFO] [stderr] Compiling tracing-core v0.1.32 [INFO] [stderr] Compiling futures-io v0.3.30 [INFO] [stderr] Compiling cipher v0.4.4 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling base64ct v1.6.0 [INFO] [stderr] Compiling serde_json v1.0.128 [INFO] [stderr] Compiling log v0.4.22 [INFO] [stderr] Compiling hmac v0.12.1 [INFO] [stderr] Compiling futures-channel v0.3.30 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling pem-rfc7468 v0.7.0 [INFO] [stderr] Compiling futures-task v0.3.30 [INFO] [stderr] Compiling thiserror v1.0.63 [INFO] [stderr] Compiling salsa20 v0.10.2 [INFO] [stderr] Compiling http v0.2.12 [INFO] [stderr] Compiling pbkdf2 v0.12.2 [INFO] [stderr] Compiling quote v1.0.37 [INFO] [stderr] Compiling lock_api v0.4.12 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling syn v2.0.77 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Compiling der v0.7.9 [INFO] [stderr] Compiling sha2 v0.10.8 [INFO] [stderr] Compiling httparse v1.9.4 [INFO] [stderr] Compiling tinyvec v1.8.0 [INFO] [stderr] Compiling indexmap v1.9.3 [INFO] [stderr] Compiling futures-util v0.3.30 [INFO] [stderr] Compiling cbc v0.1.2 [INFO] [stderr] Compiling pyo3-build-config v0.16.6 [INFO] [stderr] Compiling aes v0.8.4 [INFO] [stderr] Compiling rustix v0.38.36 [INFO] [stderr] Compiling fastrand v2.1.1 [INFO] [stderr] Compiling getrandom v0.2.15 [INFO] [stderr] Compiling scrypt v0.11.0 [INFO] [stderr] Compiling time-macros v0.2.18 [INFO] [stderr] Compiling const-random-macro v0.1.16 [INFO] [stderr] Compiling http-body v0.4.6 [INFO] [stderr] Compiling indexmap v2.5.0 [INFO] [stderr] Compiling const-random v0.1.18 [INFO] [stderr] Compiling parking_lot_core v0.9.10 [INFO] [stderr] Compiling socket2 v0.5.7 [INFO] [stderr] Compiling ring v0.17.8 [INFO] [stderr] Compiling mio v1.0.2 [INFO] [stderr] Compiling signal-hook-registry v1.4.2 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling parking_lot v0.12.3 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling spki v0.7.3 [INFO] [stderr] Compiling unicode-normalization v0.1.23 [INFO] [stderr] Compiling os_str_bytes v6.6.1 [INFO] [stderr] Compiling linux-raw-sys v0.4.14 [INFO] [stderr] Compiling pkcs5 v0.7.1 [INFO] [stderr] Compiling hashbrown v0.12.3 [INFO] [stderr] Compiling clap_lex v0.2.4 [INFO] [stderr] Compiling num-bigint v0.4.6 [INFO] [stderr] Compiling num-iter v0.1.45 [INFO] [stderr] Compiling dlv-list v0.5.2 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling idna v0.5.0 [INFO] [stderr] Compiling cbindgen v0.26.0 [INFO] [stderr] Compiling time v0.3.36 [INFO] [stderr] Compiling bitflags v1.3.2 [INFO] [stderr] Compiling base64 v0.22.1 [INFO] [stderr] Compiling anyhow v1.0.87 [INFO] [stderr] Compiling textwrap v0.16.1 [INFO] [stderr] Compiling procfs v0.16.0 [INFO] [stderr] Compiling protobuf v2.28.0 [INFO] [stderr] Compiling termcolor v1.4.1 [INFO] [stderr] Compiling pkcs8 v0.10.2 [INFO] [stderr] Compiling pem v3.0.4 [INFO] [stderr] Compiling pkcs1 v0.7.5 [INFO] [stderr] Compiling clap v3.2.25 [INFO] [stderr] Compiling url v2.5.2 [INFO] [stderr] Compiling rustls-native-certs v0.6.3 [INFO] [stderr] Compiling ordered-multimap v0.7.3 [INFO] [stderr] Compiling signature v2.2.0 [INFO] [stderr] Compiling pyo3-ffi v0.16.6 [INFO] [stderr] Compiling procfs-core v0.16.0 [INFO] [stderr] Compiling memoffset v0.9.1 [INFO] [stderr] Compiling encoding_rs v0.8.34 [INFO] [stderr] Compiling heck v0.4.1 [INFO] [stderr] Compiling cfg_aliases v0.1.1 [INFO] [stderr] Compiling ipnet v2.10.0 [INFO] [stderr] Compiling prometheus v0.13.4 [INFO] [stderr] Compiling iana-time-zone v0.1.60 [INFO] [stderr] Compiling nix v0.28.0 [INFO] [stderr] Compiling chrono v0.4.38 [INFO] [stderr] Compiling rust-ini v0.20.0 [INFO] [stderr] Compiling pyo3 v0.16.6 [INFO] [stderr] Compiling tempfile v3.12.0 [INFO] [stderr] Compiling sha1 v0.10.6 [INFO] [stderr] Compiling futures v0.3.30 [INFO] [stderr] Compiling tracing-log v0.2.0 [INFO] [stderr] Compiling md-5 v0.10.6 [INFO] [stderr] Compiling thread_local v1.1.8 [INFO] [stderr] Compiling flagset v0.4.6 [INFO] [stderr] Compiling xml-rs v0.8.22 [INFO] [stderr] Compiling unindent v0.1.11 [INFO] [stderr] Compiling indoc v1.0.9 [INFO] [stderr] Compiling tracing-subscriber v0.3.18 [INFO] [stderr] Compiling clippy-utilities v0.1.0 [INFO] [stderr] Compiling rustls v0.21.12 [INFO] [stderr] Compiling pyo3-macros-backend v0.16.6 [INFO] [stderr] Compiling serde_derive v1.0.210 [INFO] [stderr] Compiling tokio-macros v2.4.0 [INFO] [stderr] Compiling zerocopy-derive v0.7.35 [INFO] [stderr] Compiling tracing-attributes v0.1.27 [INFO] [stderr] Compiling thiserror-impl v1.0.63 [INFO] [stderr] Compiling pin-project-internal v1.1.5 [INFO] [stderr] Compiling rustls-webpki v0.101.7 [INFO] [stderr] Compiling sct v0.7.1 [INFO] [stderr] Compiling async-trait v0.1.82 [INFO] [stderr] Compiling tokio v1.40.0 [INFO] [stderr] Compiling zerocopy v0.7.35 [INFO] [stderr] Compiling pin-project v1.1.5 [INFO] [stderr] Compiling tracing v0.1.40 [INFO] [stderr] Compiling simple_asn1 v0.6.2 [INFO] [stderr] Compiling ppv-lite86 v0.2.20 [INFO] [stderr] Compiling pyo3-macros v0.16.6 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling num-bigint-dig v0.8.4 [INFO] [stderr] Compiling rsa v0.9.6 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling toml v0.5.11 [INFO] [stderr] Compiling quick-xml v0.31.0 [INFO] [stderr] Compiling quick-xml v0.30.0 [INFO] [stderr] Compiling uuid v1.10.0 [INFO] [stderr] Compiling serde-xml-rs v0.6.0 [INFO] [stderr] Compiling tokio-util v0.7.12 [INFO] [stderr] Compiling tokio-rustls v0.24.1 [INFO] [stderr] Compiling async-compat v0.2.4 [INFO] [stderr] Compiling backon v0.4.4 [INFO] [stderr] Compiling h2 v0.3.26 [INFO] [stderr] Compiling jsonwebtoken v9.3.0 [INFO] [stderr] Compiling hyper v0.14.30 [INFO] [stderr] Compiling datenlord v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Compiling hyper-rustls v0.24.2 [INFO] [stderr] Compiling reqwest v0.11.27 [INFO] [stderr] Compiling reqsign v0.14.9 [INFO] [stderr] Compiling opendal v0.43.0 [INFO] [stdout] warning: unused import: `std::time::SystemTime` [INFO] [stdout] --> src/sdk/c/datenlord.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::time::SystemTime; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `INum` [INFO] [stdout] --> src/sdk/py/datenlord.rs:9:33 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::storage::virtualfs::{INum, VirtualFs}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bytes::BytesMut` [INFO] [stdout] --> src/storage/virtualfs.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use bytes::BytesMut; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bytes::BytesMut` [INFO] [stdout] --> src/storage/localfs.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use bytes::BytesMut; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `abi-7-9` [INFO] [stdout] --> src/storage/fs_util.rs:82:11 [INFO] [stdout] | [INFO] [stdout] 82 | #[cfg(feature = "abi-7-9")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `abi-7-9` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `abi-7-23` [INFO] [stdout] --> src/storage/fs_util.rs:89:11 [INFO] [stdout] | [INFO] [stdout] 89 | #[cfg(feature = "abi-7-23")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `abi-7-23` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `abi-7-23` [INFO] [stdout] --> src/storage/fs_util.rs:306:15 [INFO] [stdout] | [INFO] [stdout] 306 | #[cfg(feature = "abi-7-23")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `abi-7-23` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config_str` [INFO] [stdout] --> src/sdk/c/datenlord.rs:76:9 [INFO] [stdout] | [INFO] [stdout] 76 | let config_str = unsafe { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_config_str` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `recursive` [INFO] [stdout] --> src/sdk/c/datenlord.rs:159:5 [INFO] [stdout] | [INFO] [stdout] 159 | recursive: bool [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 159 | _recursive: bool [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `NEED_CHECK_PERM` [INFO] [stdout] | [INFO] [stdout] 159 - recursive: bool [INFO] [stdout] 159 + storage::fs_util::NEED_CHECK_PERM: bool [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `src` [INFO] [stdout] --> src/sdk/c/datenlord.rs:264:9 [INFO] [stdout] | [INFO] [stdout] 264 | let src = unsafe { CStr::from_ptr(src_file_path).to_str().unwrap_or_default() }; [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_src` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `path` [INFO] [stdout] --> src/sdk/c/datenlord.rs:340:9 [INFO] [stdout] | [INFO] [stdout] 340 | let path = unsafe { CStr::from_ptr(file_path).to_str().unwrap_or_default() }; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `path` [INFO] [stdout] --> src/sdk/c/datenlord.rs:406:9 [INFO] [stdout] | [INFO] [stdout] 406 | let path = unsafe { CStr::from_ptr(file_path).to_str().unwrap_or_default() }; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `recursive` [INFO] [stdout] --> src/sdk/py/datenlord.rs:62:38 [INFO] [stdout] | [INFO] [stdout] 62 | fn deldir(&self, dir_path: &str, recursive: bool) -> PyResult<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 62 | fn deldir(&self, dir_path: &str, _recursive: bool) -> PyResult<()> { [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `NEED_CHECK_PERM` [INFO] [stdout] | [INFO] [stdout] 62 - fn deldir(&self, dir_path: &str, recursive: bool) -> PyResult<()> { [INFO] [stdout] 62 + fn deldir(&self, dir_path: &str, storage::fs_util::NEED_CHECK_PERM: bool) -> PyResult<()> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `size` [INFO] [stdout] --> src/sdk/py/datenlord.rs:131:16 [INFO] [stdout] | [INFO] [stdout] 131 | Ok(size) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `src_file_path` [INFO] [stdout] --> src/sdk/py/datenlord.rs:121:34 [INFO] [stdout] | [INFO] [stdout] 121 | fn copy_to_local_file(&self, src_file_path: &str, local_file_path: &str) -> PyResult<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_src_file_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `local_file_path` [INFO] [stdout] --> src/sdk/py/datenlord.rs:121:55 [INFO] [stdout] | [INFO] [stdout] 121 | fn copy_to_local_file(&self, src_file_path: &str, local_file_path: &str) -> PyResult<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_local_file_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `file_path` [INFO] [stdout] --> src/sdk/py/datenlord.rs:164:20 [INFO] [stdout] | [INFO] [stdout] 164 | fn stat(&self, file_path: &str) -> PyResult<(u64, u32, u32, u32, u32)> { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_file_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `file_path` [INFO] [stdout] --> src/sdk/py/datenlord.rs:187:26 [INFO] [stdout] | [INFO] [stdout] 187 | fn write_file(&self, file_path: &str, content: Vec) -> PyResult<()> { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_file_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `file_path` [INFO] [stdout] --> src/sdk/py/datenlord.rs:202:25 [INFO] [stdout] | [INFO] [stdout] 202 | fn read_file(&self, file_path: &str) -> PyResult> { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_file_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `py` [INFO] [stdout] --> src/sdk/py/datenlord.rs:227:14 [INFO] [stdout] | [INFO] [stdout] 227 | fn datenlord(py: Python, m: &PyModule) -> PyResult<()> { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_py` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ino` [INFO] [stdout] --> src/storage/localfs.rs:98:29 [INFO] [stdout] | [INFO] [stdout] 98 | async fn getattr(&self, ino: u64) -> DatenLordResult<(Duration, FileAttr)> { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 98 | async fn getattr(&self, _ino: u64) -> DatenLordResult<(Duration, FileAttr)> { [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 98 - async fn getattr(&self, ino: u64) -> DatenLordResult<(Duration, FileAttr)> { [INFO] [stdout] 98 + async fn getattr(&self, storage::fs_util::ROOT_ID: u64) -> DatenLordResult<(Duration, FileAttr)> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ino` [INFO] [stdout] --> src/storage/localfs.rs:106:9 [INFO] [stdout] | [INFO] [stdout] 106 | ino: u64, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 106 | _ino: u64, [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 106 - ino: u64, [INFO] [stdout] 106 + storage::fs_util::ROOT_ID: u64, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `param` [INFO] [stdout] --> src/storage/localfs.rs:107:9 [INFO] [stdout] | [INFO] [stdout] 107 | param: SetAttrParam, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ino` [INFO] [stdout] --> src/storage/localfs.rs:112:30 [INFO] [stdout] | [INFO] [stdout] 112 | async fn readlink(&self, ino: u64) -> DatenLordResult> { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 112 | async fn readlink(&self, _ino: u64) -> DatenLordResult> { [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 112 - async fn readlink(&self, ino: u64) -> DatenLordResult> { [INFO] [stdout] 112 + async fn readlink(&self, storage::fs_util::ROOT_ID: u64) -> DatenLordResult> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ino` [INFO] [stdout] --> src/storage/localfs.rs:116:48 [INFO] [stdout] | [INFO] [stdout] 116 | async fn open(&self, _uid: u32, _gid: u32, ino: u64, _flags: u32) -> DatenLordResult { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 116 | async fn open(&self, _uid: u32, _gid: u32, _ino: u64, _flags: u32) -> DatenLordResult { [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 116 - async fn open(&self, _uid: u32, _gid: u32, ino: u64, _flags: u32) -> DatenLordResult { [INFO] [stdout] 116 + async fn open(&self, _uid: u32, _gid: u32, storage::fs_util::ROOT_ID: u64, _flags: u32) -> DatenLordResult { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ino` [INFO] [stdout] --> src/storage/localfs.rs:122:9 [INFO] [stdout] | [INFO] [stdout] 122 | ino: u64, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 122 | _ino: u64, [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 122 - ino: u64, [INFO] [stdout] 122 + storage::fs_util::ROOT_ID: u64, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fh` [INFO] [stdout] --> src/storage/localfs.rs:123:9 [INFO] [stdout] | [INFO] [stdout] 123 | fh: u64, [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 123 | _fh: u64, [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 123 - fh: u64, [INFO] [stdout] 123 + storage::fs_util::ROOT_ID: u64, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `offset` [INFO] [stdout] --> src/storage/localfs.rs:124:9 [INFO] [stdout] | [INFO] [stdout] 124 | offset: u64, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 124 | _offset: u64, [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 124 - offset: u64, [INFO] [stdout] 124 + storage::fs_util::ROOT_ID: u64, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data` [INFO] [stdout] --> src/storage/localfs.rs:139:9 [INFO] [stdout] | [INFO] [stdout] 139 | data: &[u8], [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ino` [INFO] [stdout] --> src/storage/localfs.rs:136:9 [INFO] [stdout] | [INFO] [stdout] 136 | ino: u64, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 136 | _ino: u64, [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 136 - ino: u64, [INFO] [stdout] 136 + storage::fs_util::ROOT_ID: u64, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fh` [INFO] [stdout] --> src/storage/localfs.rs:137:9 [INFO] [stdout] | [INFO] [stdout] 137 | fh: u64, [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 137 | _fh: u64, [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 137 - fh: u64, [INFO] [stdout] 137 + storage::fs_util::ROOT_ID: u64, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `offset` [INFO] [stdout] --> src/storage/localfs.rs:138:9 [INFO] [stdout] | [INFO] [stdout] 138 | offset: i64, [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/storage/localfs.rs:145:65 [INFO] [stdout] | [INFO] [stdout] 145 | async fn unlink(&self, _uid: u32, _gid: u32, _parent: INum, name: &str) -> DatenLordResult<()> { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `path` [INFO] [stdout] --> src/storage/localfs.rs:150:13 [INFO] [stdout] | [INFO] [stdout] 150 | let path = format!("/tmp/{}", param.name); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `param` [INFO] [stdout] --> src/storage/localfs.rs:171:50 [INFO] [stdout] | [INFO] [stdout] 171 | async fn rename(&self, _uid: u32, _gid: u32, param: RenameParam) -> DatenLordResult<()> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ino` [INFO] [stdout] --> src/storage/localfs.rs:177:9 [INFO] [stdout] | [INFO] [stdout] 177 | ino: u64, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 177 | _ino: u64, [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 177 - ino: u64, [INFO] [stdout] 177 + storage::fs_util::ROOT_ID: u64, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fh` [INFO] [stdout] --> src/storage/localfs.rs:178:9 [INFO] [stdout] | [INFO] [stdout] 178 | fh: u64, [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 178 | _fh: u64, [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 178 - fh: u64, [INFO] [stdout] 178 + storage::fs_util::ROOT_ID: u64, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ino` [INFO] [stdout] --> src/storage/localfs.rs:186:50 [INFO] [stdout] | [INFO] [stdout] 186 | async fn statfs(&self, _uid: u32, _gid: u32, ino: u64) -> DatenLordResult { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 186 | async fn statfs(&self, _uid: u32, _gid: u32, _ino: u64) -> DatenLordResult { [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 186 - async fn statfs(&self, _uid: u32, _gid: u32, ino: u64) -> DatenLordResult { [INFO] [stdout] 186 + async fn statfs(&self, _uid: u32, _gid: u32, storage::fs_util::ROOT_ID: u64) -> DatenLordResult { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `uid` [INFO] [stdout] --> src/storage/localfs.rs:211:9 [INFO] [stdout] | [INFO] [stdout] 211 | uid: u32, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_uid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `gid` [INFO] [stdout] --> src/storage/localfs.rs:212:9 [INFO] [stdout] | [INFO] [stdout] 212 | gid: u32, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_gid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ino` [INFO] [stdout] --> src/storage/localfs.rs:213:9 [INFO] [stdout] | [INFO] [stdout] 213 | ino: u64, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 213 | _ino: u64, [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 213 - ino: u64, [INFO] [stdout] 213 + storage::fs_util::ROOT_ID: u64, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fh` [INFO] [stdout] --> src/storage/localfs.rs:214:9 [INFO] [stdout] | [INFO] [stdout] 214 | fh: u64, [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 214 | _fh: u64, [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 214 - fh: u64, [INFO] [stdout] 214 + storage::fs_util::ROOT_ID: u64, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `offset` [INFO] [stdout] --> src/storage/localfs.rs:215:9 [INFO] [stdout] | [INFO] [stdout] 215 | offset: i64, [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `dir_name` [INFO] [stdout] --> src/storage/localfs.rs:225:9 [INFO] [stdout] | [INFO] [stdout] 225 | dir_name: &str, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dir_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `uid` [INFO] [stdout] --> src/storage/localfs.rs:222:9 [INFO] [stdout] | [INFO] [stdout] 222 | uid: u32, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_uid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `gid` [INFO] [stdout] --> src/storage/localfs.rs:223:9 [INFO] [stdout] | [INFO] [stdout] 223 | gid: u32, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_gid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `parent` [INFO] [stdout] --> src/storage/localfs.rs:224:9 [INFO] [stdout] | [INFO] [stdout] 224 | parent: INum, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 224 | _parent: INum, [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 224 - parent: INum, [INFO] [stdout] 224 + storage::fs_util::ROOT_ID: INum, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ino` [INFO] [stdout] --> src/storage/localfs.rs:241:51 [INFO] [stdout] | [INFO] [stdout] 241 | async fn opendir(&self, _uid: u32, _gid: u32, ino: u64, _flags: u32) -> DatenLordResult { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 241 | async fn opendir(&self, _uid: u32, _gid: u32, _ino: u64, _flags: u32) -> DatenLordResult { [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 241 - async fn opendir(&self, _uid: u32, _gid: u32, ino: u64, _flags: u32) -> DatenLordResult { [INFO] [stdout] 241 + async fn opendir(&self, _uid: u32, _gid: u32, storage::fs_util::ROOT_ID: u64, _flags: u32) -> DatenLordResult { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `operator` is never read [INFO] [stdout] --> src/storage/localfs.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct LocalFS { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 15 | operator: Operator, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `LocalFS` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `fileattr_from_metadata` is never used [INFO] [stdout] --> src/storage/localfs.rs:26:8 [INFO] [stdout] | [INFO] [stdout] 18 | impl LocalFS { [INFO] [stdout] | ------------ associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 26 | fn fileattr_from_metadata(metadata: opendal::Metadata, ino: u64) -> FileAttr { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `now` and `setattr_precheck` are never used [INFO] [stdout] --> src/storage/fs_util.rs:183:19 [INFO] [stdout] | [INFO] [stdout] 181 | impl FileAttr { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 182 | /// New a `FileAttr` [INFO] [stdout] 183 | pub(crate) fn now() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 202 | pub(crate) fn setattr_precheck( [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/sdk/py/datenlord.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | #[pymethods] [INFO] [stdout] | ^----------- [INFO] [stdout] | | [INFO] [stdout] | move the `impl` block outside of this static `ITEMS` and up 3 bodies [INFO] [stdout] 18 | impl DatenlordSDK { [INFO] [stdout] | ------------ `DatenlordSDK` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `pymethods` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `pymethods` may come from an old version of the `pyo3_macros` crate, try updating your dependency with `cargo update -p pyo3_macros` [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 attribute macro `pymethods` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 17s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: num-bigint-dig v0.8.4 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2` [INFO] running `Command { std: "docker" "inspect" "9674342f86a9b2d43528fde1033ea6addbf686da55d898274f507f3c1a047578", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9674342f86a9b2d43528fde1033ea6addbf686da55d898274f507f3c1a047578", kill_on_drop: false }` [INFO] [stdout] 9674342f86a9b2d43528fde1033ea6addbf686da55d898274f507f3c1a047578 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+028592fec99e54cc92def5a2a849c673b066dd93" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 46869f0b9ec484093126bc643fac3b39eba7aab0a171fe227d4eb7ae19c010c1 [INFO] running `Command { std: "docker" "start" "-a" "46869f0b9ec484093126bc643fac3b39eba7aab0a171fe227d4eb7ae19c010c1", kill_on_drop: false }` [INFO] [stderr] Compiling datenlord v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::time::SystemTime` [INFO] [stdout] --> src/sdk/c/datenlord.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::time::SystemTime; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `INum` [INFO] [stdout] --> src/sdk/py/datenlord.rs:9:33 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::storage::virtualfs::{INum, VirtualFs}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bytes::BytesMut` [INFO] [stdout] --> src/storage/virtualfs.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use bytes::BytesMut; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bytes::BytesMut` [INFO] [stdout] --> src/storage/localfs.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use bytes::BytesMut; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `abi-7-9` [INFO] [stdout] --> src/storage/fs_util.rs:82:11 [INFO] [stdout] | [INFO] [stdout] 82 | #[cfg(feature = "abi-7-9")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `abi-7-9` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `abi-7-23` [INFO] [stdout] --> src/storage/fs_util.rs:89:11 [INFO] [stdout] | [INFO] [stdout] 89 | #[cfg(feature = "abi-7-23")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `abi-7-23` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `abi-7-23` [INFO] [stdout] --> src/storage/fs_util.rs:306:15 [INFO] [stdout] | [INFO] [stdout] 306 | #[cfg(feature = "abi-7-23")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `abi-7-23` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config_str` [INFO] [stdout] --> src/sdk/c/datenlord.rs:76:9 [INFO] [stdout] | [INFO] [stdout] 76 | let config_str = unsafe { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_config_str` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `recursive` [INFO] [stdout] --> src/sdk/c/datenlord.rs:159:5 [INFO] [stdout] | [INFO] [stdout] 159 | recursive: bool [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 159 | _recursive: bool [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `NEED_CHECK_PERM` [INFO] [stdout] | [INFO] [stdout] 159 - recursive: bool [INFO] [stdout] 159 + storage::fs_util::NEED_CHECK_PERM: bool [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `src` [INFO] [stdout] --> src/sdk/c/datenlord.rs:264:9 [INFO] [stdout] | [INFO] [stdout] 264 | let src = unsafe { CStr::from_ptr(src_file_path).to_str().unwrap_or_default() }; [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_src` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `path` [INFO] [stdout] --> src/sdk/c/datenlord.rs:340:9 [INFO] [stdout] | [INFO] [stdout] 340 | let path = unsafe { CStr::from_ptr(file_path).to_str().unwrap_or_default() }; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `path` [INFO] [stdout] --> src/sdk/c/datenlord.rs:406:9 [INFO] [stdout] | [INFO] [stdout] 406 | let path = unsafe { CStr::from_ptr(file_path).to_str().unwrap_or_default() }; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `recursive` [INFO] [stdout] --> src/sdk/py/datenlord.rs:62:38 [INFO] [stdout] | [INFO] [stdout] 62 | fn deldir(&self, dir_path: &str, recursive: bool) -> PyResult<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 62 | fn deldir(&self, dir_path: &str, _recursive: bool) -> PyResult<()> { [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `NEED_CHECK_PERM` [INFO] [stdout] | [INFO] [stdout] 62 - fn deldir(&self, dir_path: &str, recursive: bool) -> PyResult<()> { [INFO] [stdout] 62 + fn deldir(&self, dir_path: &str, storage::fs_util::NEED_CHECK_PERM: bool) -> PyResult<()> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `size` [INFO] [stdout] --> src/sdk/py/datenlord.rs:131:16 [INFO] [stdout] | [INFO] [stdout] 131 | Ok(size) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `src_file_path` [INFO] [stdout] --> src/sdk/py/datenlord.rs:121:34 [INFO] [stdout] | [INFO] [stdout] 121 | fn copy_to_local_file(&self, src_file_path: &str, local_file_path: &str) -> PyResult<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_src_file_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `local_file_path` [INFO] [stdout] --> src/sdk/py/datenlord.rs:121:55 [INFO] [stdout] | [INFO] [stdout] 121 | fn copy_to_local_file(&self, src_file_path: &str, local_file_path: &str) -> PyResult<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_local_file_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `file_path` [INFO] [stdout] --> src/sdk/py/datenlord.rs:164:20 [INFO] [stdout] | [INFO] [stdout] 164 | fn stat(&self, file_path: &str) -> PyResult<(u64, u32, u32, u32, u32)> { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_file_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `file_path` [INFO] [stdout] --> src/sdk/py/datenlord.rs:187:26 [INFO] [stdout] | [INFO] [stdout] 187 | fn write_file(&self, file_path: &str, content: Vec) -> PyResult<()> { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_file_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `file_path` [INFO] [stdout] --> src/sdk/py/datenlord.rs:202:25 [INFO] [stdout] | [INFO] [stdout] 202 | fn read_file(&self, file_path: &str) -> PyResult> { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_file_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `py` [INFO] [stdout] --> src/sdk/py/datenlord.rs:227:14 [INFO] [stdout] | [INFO] [stdout] 227 | fn datenlord(py: Python, m: &PyModule) -> PyResult<()> { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_py` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ino` [INFO] [stdout] --> src/storage/localfs.rs:98:29 [INFO] [stdout] | [INFO] [stdout] 98 | async fn getattr(&self, ino: u64) -> DatenLordResult<(Duration, FileAttr)> { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 98 | async fn getattr(&self, _ino: u64) -> DatenLordResult<(Duration, FileAttr)> { [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 98 - async fn getattr(&self, ino: u64) -> DatenLordResult<(Duration, FileAttr)> { [INFO] [stdout] 98 + async fn getattr(&self, storage::fs_util::ROOT_ID: u64) -> DatenLordResult<(Duration, FileAttr)> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ino` [INFO] [stdout] --> src/storage/localfs.rs:106:9 [INFO] [stdout] | [INFO] [stdout] 106 | ino: u64, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 106 | _ino: u64, [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 106 - ino: u64, [INFO] [stdout] 106 + storage::fs_util::ROOT_ID: u64, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `param` [INFO] [stdout] --> src/storage/localfs.rs:107:9 [INFO] [stdout] | [INFO] [stdout] 107 | param: SetAttrParam, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ino` [INFO] [stdout] --> src/storage/localfs.rs:112:30 [INFO] [stdout] | [INFO] [stdout] 112 | async fn readlink(&self, ino: u64) -> DatenLordResult> { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 112 | async fn readlink(&self, _ino: u64) -> DatenLordResult> { [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 112 - async fn readlink(&self, ino: u64) -> DatenLordResult> { [INFO] [stdout] 112 + async fn readlink(&self, storage::fs_util::ROOT_ID: u64) -> DatenLordResult> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ino` [INFO] [stdout] --> src/storage/localfs.rs:116:48 [INFO] [stdout] | [INFO] [stdout] 116 | async fn open(&self, _uid: u32, _gid: u32, ino: u64, _flags: u32) -> DatenLordResult { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 116 | async fn open(&self, _uid: u32, _gid: u32, _ino: u64, _flags: u32) -> DatenLordResult { [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 116 - async fn open(&self, _uid: u32, _gid: u32, ino: u64, _flags: u32) -> DatenLordResult { [INFO] [stdout] 116 + async fn open(&self, _uid: u32, _gid: u32, storage::fs_util::ROOT_ID: u64, _flags: u32) -> DatenLordResult { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ino` [INFO] [stdout] --> src/storage/localfs.rs:122:9 [INFO] [stdout] | [INFO] [stdout] 122 | ino: u64, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 122 | _ino: u64, [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 122 - ino: u64, [INFO] [stdout] 122 + storage::fs_util::ROOT_ID: u64, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fh` [INFO] [stdout] --> src/storage/localfs.rs:123:9 [INFO] [stdout] | [INFO] [stdout] 123 | fh: u64, [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 123 | _fh: u64, [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 123 - fh: u64, [INFO] [stdout] 123 + storage::fs_util::ROOT_ID: u64, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `offset` [INFO] [stdout] --> src/storage/localfs.rs:124:9 [INFO] [stdout] | [INFO] [stdout] 124 | offset: u64, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 124 | _offset: u64, [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 124 - offset: u64, [INFO] [stdout] 124 + storage::fs_util::ROOT_ID: u64, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data` [INFO] [stdout] --> src/storage/localfs.rs:139:9 [INFO] [stdout] | [INFO] [stdout] 139 | data: &[u8], [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ino` [INFO] [stdout] --> src/storage/localfs.rs:136:9 [INFO] [stdout] | [INFO] [stdout] 136 | ino: u64, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 136 | _ino: u64, [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 136 - ino: u64, [INFO] [stdout] 136 + storage::fs_util::ROOT_ID: u64, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fh` [INFO] [stdout] --> src/storage/localfs.rs:137:9 [INFO] [stdout] | [INFO] [stdout] 137 | fh: u64, [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 137 | _fh: u64, [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 137 - fh: u64, [INFO] [stdout] 137 + storage::fs_util::ROOT_ID: u64, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `offset` [INFO] [stdout] --> src/storage/localfs.rs:138:9 [INFO] [stdout] | [INFO] [stdout] 138 | offset: i64, [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/storage/localfs.rs:145:65 [INFO] [stdout] | [INFO] [stdout] 145 | async fn unlink(&self, _uid: u32, _gid: u32, _parent: INum, name: &str) -> DatenLordResult<()> { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `path` [INFO] [stdout] --> src/storage/localfs.rs:150:13 [INFO] [stdout] | [INFO] [stdout] 150 | let path = format!("/tmp/{}", param.name); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `param` [INFO] [stdout] --> src/storage/localfs.rs:171:50 [INFO] [stdout] | [INFO] [stdout] 171 | async fn rename(&self, _uid: u32, _gid: u32, param: RenameParam) -> DatenLordResult<()> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ino` [INFO] [stdout] --> src/storage/localfs.rs:177:9 [INFO] [stdout] | [INFO] [stdout] 177 | ino: u64, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 177 | _ino: u64, [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 177 - ino: u64, [INFO] [stdout] 177 + storage::fs_util::ROOT_ID: u64, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fh` [INFO] [stdout] --> src/storage/localfs.rs:178:9 [INFO] [stdout] | [INFO] [stdout] 178 | fh: u64, [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 178 | _fh: u64, [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 178 - fh: u64, [INFO] [stdout] 178 + storage::fs_util::ROOT_ID: u64, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ino` [INFO] [stdout] --> src/storage/localfs.rs:186:50 [INFO] [stdout] | [INFO] [stdout] 186 | async fn statfs(&self, _uid: u32, _gid: u32, ino: u64) -> DatenLordResult { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 186 | async fn statfs(&self, _uid: u32, _gid: u32, _ino: u64) -> DatenLordResult { [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 186 - async fn statfs(&self, _uid: u32, _gid: u32, ino: u64) -> DatenLordResult { [INFO] [stdout] 186 + async fn statfs(&self, _uid: u32, _gid: u32, storage::fs_util::ROOT_ID: u64) -> DatenLordResult { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `uid` [INFO] [stdout] --> src/storage/localfs.rs:211:9 [INFO] [stdout] | [INFO] [stdout] 211 | uid: u32, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_uid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `gid` [INFO] [stdout] --> src/storage/localfs.rs:212:9 [INFO] [stdout] | [INFO] [stdout] 212 | gid: u32, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_gid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ino` [INFO] [stdout] --> src/storage/localfs.rs:213:9 [INFO] [stdout] | [INFO] [stdout] 213 | ino: u64, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 213 | _ino: u64, [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 213 - ino: u64, [INFO] [stdout] 213 + storage::fs_util::ROOT_ID: u64, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fh` [INFO] [stdout] --> src/storage/localfs.rs:214:9 [INFO] [stdout] | [INFO] [stdout] 214 | fh: u64, [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 214 | _fh: u64, [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 214 - fh: u64, [INFO] [stdout] 214 + storage::fs_util::ROOT_ID: u64, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `offset` [INFO] [stdout] --> src/storage/localfs.rs:215:9 [INFO] [stdout] | [INFO] [stdout] 215 | offset: i64, [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `dir_name` [INFO] [stdout] --> src/storage/localfs.rs:225:9 [INFO] [stdout] | [INFO] [stdout] 225 | dir_name: &str, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dir_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `uid` [INFO] [stdout] --> src/storage/localfs.rs:222:9 [INFO] [stdout] | [INFO] [stdout] 222 | uid: u32, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_uid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `gid` [INFO] [stdout] --> src/storage/localfs.rs:223:9 [INFO] [stdout] | [INFO] [stdout] 223 | gid: u32, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_gid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `parent` [INFO] [stdout] --> src/storage/localfs.rs:224:9 [INFO] [stdout] | [INFO] [stdout] 224 | parent: INum, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 224 | _parent: INum, [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 224 - parent: INum, [INFO] [stdout] 224 + storage::fs_util::ROOT_ID: INum, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ino` [INFO] [stdout] --> src/storage/localfs.rs:241:51 [INFO] [stdout] | [INFO] [stdout] 241 | async fn opendir(&self, _uid: u32, _gid: u32, ino: u64, _flags: u32) -> DatenLordResult { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 241 | async fn opendir(&self, _uid: u32, _gid: u32, _ino: u64, _flags: u32) -> DatenLordResult { [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stdout] | [INFO] [stdout] 241 - async fn opendir(&self, _uid: u32, _gid: u32, ino: u64, _flags: u32) -> DatenLordResult { [INFO] [stdout] 241 + async fn opendir(&self, _uid: u32, _gid: u32, storage::fs_util::ROOT_ID: u64, _flags: u32) -> DatenLordResult { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `operator` is never read [INFO] [stdout] --> src/storage/localfs.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct LocalFS { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 15 | operator: Operator, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `LocalFS` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `fileattr_from_metadata` is never used [INFO] [stdout] --> src/storage/localfs.rs:26:8 [INFO] [stdout] | [INFO] [stdout] 18 | impl LocalFS { [INFO] [stdout] | ------------ associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 26 | fn fileattr_from_metadata(metadata: opendal::Metadata, ino: u64) -> FileAttr { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `now` and `setattr_precheck` are never used [INFO] [stdout] --> src/storage/fs_util.rs:183:19 [INFO] [stdout] | [INFO] [stdout] 181 | impl FileAttr { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 182 | /// New a `FileAttr` [INFO] [stdout] 183 | pub(crate) fn now() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 202 | pub(crate) fn setattr_precheck( [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/sdk/py/datenlord.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | #[pymethods] [INFO] [stdout] | ^----------- [INFO] [stdout] | | [INFO] [stdout] | move the `impl` block outside of this static `ITEMS` and up 3 bodies [INFO] [stdout] 18 | impl DatenlordSDK { [INFO] [stdout] | ------------ `DatenlordSDK` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `pymethods` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `pymethods` may come from an old version of the `pyo3_macros` crate, try updating your dependency with `cargo update -p pyo3_macros` [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 attribute macro `pymethods` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1.62s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: num-bigint-dig v0.8.4 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2` [INFO] running `Command { std: "docker" "inspect" "46869f0b9ec484093126bc643fac3b39eba7aab0a171fe227d4eb7ae19c010c1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "46869f0b9ec484093126bc643fac3b39eba7aab0a171fe227d4eb7ae19c010c1", kill_on_drop: false }` [INFO] [stdout] 46869f0b9ec484093126bc643fac3b39eba7aab0a171fe227d4eb7ae19c010c1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+028592fec99e54cc92def5a2a849c673b066dd93" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 23fb6978eeedbd6af9170875b81c5838d985062b0cb44ab40ce20d5393342300 [INFO] running `Command { std: "docker" "start" "-a" "23fb6978eeedbd6af9170875b81c5838d985062b0cb44ab40ce20d5393342300", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `std::time::SystemTime` [INFO] [stderr] --> src/sdk/c/datenlord.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::time::SystemTime; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `INum` [INFO] [stderr] --> src/sdk/py/datenlord.rs:9:33 [INFO] [stderr] | [INFO] [stderr] 9 | use crate::storage::virtualfs::{INum, VirtualFs}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `bytes::BytesMut` [INFO] [stderr] --> src/storage/virtualfs.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use bytes::BytesMut; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `bytes::BytesMut` [INFO] [stderr] --> src/storage/localfs.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use bytes::BytesMut; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `abi-7-9` [INFO] [stderr] --> src/storage/fs_util.rs:82:11 [INFO] [stderr] | [INFO] [stderr] 82 | #[cfg(feature = "abi-7-9")] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stderr] | [INFO] [stderr] = note: no expected values for `feature` [INFO] [stderr] = help: consider adding `abi-7-9` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `abi-7-23` [INFO] [stderr] --> src/storage/fs_util.rs:89:11 [INFO] [stderr] | [INFO] [stderr] 89 | #[cfg(feature = "abi-7-23")] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stderr] | [INFO] [stderr] = note: no expected values for `feature` [INFO] [stderr] = help: consider adding `abi-7-23` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `abi-7-23` [INFO] [stderr] --> src/storage/fs_util.rs:306:15 [INFO] [stderr] | [INFO] [stderr] 306 | #[cfg(feature = "abi-7-23")] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stderr] | [INFO] [stderr] = note: no expected values for `feature` [INFO] [stderr] = help: consider adding `abi-7-23` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unused variable: `config_str` [INFO] [stderr] --> src/sdk/c/datenlord.rs:76:9 [INFO] [stderr] | [INFO] [stderr] 76 | let config_str = unsafe { [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_config_str` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `recursive` [INFO] [stderr] --> src/sdk/c/datenlord.rs:159:5 [INFO] [stderr] | [INFO] [stderr] 159 | recursive: bool [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: if this is intentional, prefix it with an underscore [INFO] [stderr] | [INFO] [stderr] 159 | _recursive: bool [INFO] [stderr] | + [INFO] [stderr] help: you might have meant to pattern match on the similarly named constant `NEED_CHECK_PERM` [INFO] [stderr] | [INFO] [stderr] 159 - recursive: bool [INFO] [stderr] 159 + storage::fs_util::NEED_CHECK_PERM: bool [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused variable: `src` [INFO] [stderr] --> src/sdk/c/datenlord.rs:264:9 [INFO] [stderr] | [INFO] [stderr] 264 | let src = unsafe { CStr::from_ptr(src_file_path).to_str().unwrap_or_default() }; [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_src` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `path` [INFO] [stderr] --> src/sdk/c/datenlord.rs:340:9 [INFO] [stderr] | [INFO] [stderr] 340 | let path = unsafe { CStr::from_ptr(file_path).to_str().unwrap_or_default() }; [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_path` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `path` [INFO] [stderr] --> src/sdk/c/datenlord.rs:406:9 [INFO] [stderr] | [INFO] [stderr] 406 | let path = unsafe { CStr::from_ptr(file_path).to_str().unwrap_or_default() }; [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_path` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `recursive` [INFO] [stderr] --> src/sdk/py/datenlord.rs:62:38 [INFO] [stderr] | [INFO] [stderr] 62 | fn deldir(&self, dir_path: &str, recursive: bool) -> PyResult<()> { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: if this is intentional, prefix it with an underscore [INFO] [stderr] | [INFO] [stderr] 62 | fn deldir(&self, dir_path: &str, _recursive: bool) -> PyResult<()> { [INFO] [stderr] | + [INFO] [stderr] help: you might have meant to pattern match on the similarly named constant `NEED_CHECK_PERM` [INFO] [stderr] | [INFO] [stderr] 62 - fn deldir(&self, dir_path: &str, recursive: bool) -> PyResult<()> { [INFO] [stderr] 62 + fn deldir(&self, dir_path: &str, storage::fs_util::NEED_CHECK_PERM: bool) -> PyResult<()> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused variable: `size` [INFO] [stderr] --> src/sdk/py/datenlord.rs:131:16 [INFO] [stderr] | [INFO] [stderr] 131 | Ok(size) => { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_size` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `src_file_path` [INFO] [stderr] --> src/sdk/py/datenlord.rs:121:34 [INFO] [stderr] | [INFO] [stderr] 121 | fn copy_to_local_file(&self, src_file_path: &str, local_file_path: &str) -> PyResult<()> { [INFO] [stderr] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_src_file_path` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `local_file_path` [INFO] [stderr] --> src/sdk/py/datenlord.rs:121:55 [INFO] [stderr] | [INFO] [stderr] 121 | fn copy_to_local_file(&self, src_file_path: &str, local_file_path: &str) -> PyResult<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_local_file_path` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `file_path` [INFO] [stderr] --> src/sdk/py/datenlord.rs:164:20 [INFO] [stderr] | [INFO] [stderr] 164 | fn stat(&self, file_path: &str) -> PyResult<(u64, u32, u32, u32, u32)> { [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_file_path` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `file_path` [INFO] [stderr] --> src/sdk/py/datenlord.rs:187:26 [INFO] [stderr] | [INFO] [stderr] 187 | fn write_file(&self, file_path: &str, content: Vec) -> PyResult<()> { [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_file_path` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `file_path` [INFO] [stderr] --> src/sdk/py/datenlord.rs:202:25 [INFO] [stderr] | [INFO] [stderr] 202 | fn read_file(&self, file_path: &str) -> PyResult> { [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_file_path` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `py` [INFO] [stderr] --> src/sdk/py/datenlord.rs:227:14 [INFO] [stderr] | [INFO] [stderr] 227 | fn datenlord(py: Python, m: &PyModule) -> PyResult<()> { [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_py` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ino` [INFO] [stderr] --> src/storage/localfs.rs:98:29 [INFO] [stderr] | [INFO] [stderr] 98 | async fn getattr(&self, ino: u64) -> DatenLordResult<(Duration, FileAttr)> { [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] help: if this is intentional, prefix it with an underscore [INFO] [stderr] | [INFO] [stderr] 98 | async fn getattr(&self, _ino: u64) -> DatenLordResult<(Duration, FileAttr)> { [INFO] [stderr] | + [INFO] [stderr] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stderr] | [INFO] [stderr] 98 - async fn getattr(&self, ino: u64) -> DatenLordResult<(Duration, FileAttr)> { [INFO] [stderr] 98 + async fn getattr(&self, storage::fs_util::ROOT_ID: u64) -> DatenLordResult<(Duration, FileAttr)> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ino` [INFO] [stderr] --> src/storage/localfs.rs:106:9 [INFO] [stderr] | [INFO] [stderr] 106 | ino: u64, [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] help: if this is intentional, prefix it with an underscore [INFO] [stderr] | [INFO] [stderr] 106 | _ino: u64, [INFO] [stderr] | + [INFO] [stderr] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stderr] | [INFO] [stderr] 106 - ino: u64, [INFO] [stderr] 106 + storage::fs_util::ROOT_ID: u64, [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused variable: `param` [INFO] [stderr] --> src/storage/localfs.rs:107:9 [INFO] [stderr] | [INFO] [stderr] 107 | param: SetAttrParam, [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_param` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ino` [INFO] [stderr] --> src/storage/localfs.rs:112:30 [INFO] [stderr] | [INFO] [stderr] 112 | async fn readlink(&self, ino: u64) -> DatenLordResult> { [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] help: if this is intentional, prefix it with an underscore [INFO] [stderr] | [INFO] [stderr] 112 | async fn readlink(&self, _ino: u64) -> DatenLordResult> { [INFO] [stderr] | + [INFO] [stderr] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stderr] | [INFO] [stderr] 112 - async fn readlink(&self, ino: u64) -> DatenLordResult> { [INFO] [stderr] 112 + async fn readlink(&self, storage::fs_util::ROOT_ID: u64) -> DatenLordResult> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ino` [INFO] [stderr] --> src/storage/localfs.rs:116:48 [INFO] [stderr] | [INFO] [stderr] 116 | async fn open(&self, _uid: u32, _gid: u32, ino: u64, _flags: u32) -> DatenLordResult { [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] help: if this is intentional, prefix it with an underscore [INFO] [stderr] | [INFO] [stderr] 116 | async fn open(&self, _uid: u32, _gid: u32, _ino: u64, _flags: u32) -> DatenLordResult { [INFO] [stderr] | + [INFO] [stderr] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stderr] | [INFO] [stderr] 116 - async fn open(&self, _uid: u32, _gid: u32, ino: u64, _flags: u32) -> DatenLordResult { [INFO] [stderr] 116 + async fn open(&self, _uid: u32, _gid: u32, storage::fs_util::ROOT_ID: u64, _flags: u32) -> DatenLordResult { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ino` [INFO] [stderr] --> src/storage/localfs.rs:122:9 [INFO] [stderr] | [INFO] [stderr] 122 | ino: u64, [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] help: if this is intentional, prefix it with an underscore [INFO] [stderr] | [INFO] [stderr] 122 | _ino: u64, [INFO] [stderr] | + [INFO] [stderr] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stderr] | [INFO] [stderr] 122 - ino: u64, [INFO] [stderr] 122 + storage::fs_util::ROOT_ID: u64, [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused variable: `fh` [INFO] [stderr] --> src/storage/localfs.rs:123:9 [INFO] [stderr] | [INFO] [stderr] 123 | fh: u64, [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] help: if this is intentional, prefix it with an underscore [INFO] [stderr] | [INFO] [stderr] 123 | _fh: u64, [INFO] [stderr] | + [INFO] [stderr] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stderr] | [INFO] [stderr] 123 - fh: u64, [INFO] [stderr] 123 + storage::fs_util::ROOT_ID: u64, [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused variable: `offset` [INFO] [stderr] --> src/storage/localfs.rs:124:9 [INFO] [stderr] | [INFO] [stderr] 124 | offset: u64, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: if this is intentional, prefix it with an underscore [INFO] [stderr] | [INFO] [stderr] 124 | _offset: u64, [INFO] [stderr] | + [INFO] [stderr] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stderr] | [INFO] [stderr] 124 - offset: u64, [INFO] [stderr] 124 + storage::fs_util::ROOT_ID: u64, [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused variable: `data` [INFO] [stderr] --> src/storage/localfs.rs:139:9 [INFO] [stderr] | [INFO] [stderr] 139 | data: &[u8], [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_data` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ino` [INFO] [stderr] --> src/storage/localfs.rs:136:9 [INFO] [stderr] | [INFO] [stderr] 136 | ino: u64, [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] help: if this is intentional, prefix it with an underscore [INFO] [stderr] | [INFO] [stderr] 136 | _ino: u64, [INFO] [stderr] | + [INFO] [stderr] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stderr] | [INFO] [stderr] 136 - ino: u64, [INFO] [stderr] 136 + storage::fs_util::ROOT_ID: u64, [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused variable: `fh` [INFO] [stderr] --> src/storage/localfs.rs:137:9 [INFO] [stderr] | [INFO] [stderr] 137 | fh: u64, [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] help: if this is intentional, prefix it with an underscore [INFO] [stderr] | [INFO] [stderr] 137 | _fh: u64, [INFO] [stderr] | + [INFO] [stderr] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stderr] | [INFO] [stderr] 137 - fh: u64, [INFO] [stderr] 137 + storage::fs_util::ROOT_ID: u64, [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused variable: `offset` [INFO] [stderr] --> src/storage/localfs.rs:138:9 [INFO] [stderr] | [INFO] [stderr] 138 | offset: i64, [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `name` [INFO] [stderr] --> src/storage/localfs.rs:145:65 [INFO] [stderr] | [INFO] [stderr] 145 | async fn unlink(&self, _uid: u32, _gid: u32, _parent: INum, name: &str) -> DatenLordResult<()> { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `path` [INFO] [stderr] --> src/storage/localfs.rs:150:13 [INFO] [stderr] | [INFO] [stderr] 150 | let path = format!("/tmp/{}", param.name); [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_path` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `param` [INFO] [stderr] --> src/storage/localfs.rs:171:50 [INFO] [stderr] | [INFO] [stderr] 171 | async fn rename(&self, _uid: u32, _gid: u32, param: RenameParam) -> DatenLordResult<()> { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_param` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ino` [INFO] [stderr] --> src/storage/localfs.rs:177:9 [INFO] [stderr] | [INFO] [stderr] 177 | ino: u64, [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] help: if this is intentional, prefix it with an underscore [INFO] [stderr] | [INFO] [stderr] 177 | _ino: u64, [INFO] [stderr] | + [INFO] [stderr] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stderr] | [INFO] [stderr] 177 - ino: u64, [INFO] [stderr] 177 + storage::fs_util::ROOT_ID: u64, [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused variable: `fh` [INFO] [stderr] --> src/storage/localfs.rs:178:9 [INFO] [stderr] | [INFO] [stderr] 178 | fh: u64, [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] help: if this is intentional, prefix it with an underscore [INFO] [stderr] | [INFO] [stderr] 178 | _fh: u64, [INFO] [stderr] | + [INFO] [stderr] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stderr] | [INFO] [stderr] 178 - fh: u64, [INFO] [stderr] 178 + storage::fs_util::ROOT_ID: u64, [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ino` [INFO] [stderr] --> src/storage/localfs.rs:186:50 [INFO] [stderr] | [INFO] [stderr] 186 | async fn statfs(&self, _uid: u32, _gid: u32, ino: u64) -> DatenLordResult { [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] help: if this is intentional, prefix it with an underscore [INFO] [stderr] | [INFO] [stderr] 186 | async fn statfs(&self, _uid: u32, _gid: u32, _ino: u64) -> DatenLordResult { [INFO] [stderr] | + [INFO] [stderr] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stderr] | [INFO] [stderr] 186 - async fn statfs(&self, _uid: u32, _gid: u32, ino: u64) -> DatenLordResult { [INFO] [stderr] 186 + async fn statfs(&self, _uid: u32, _gid: u32, storage::fs_util::ROOT_ID: u64) -> DatenLordResult { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused variable: `uid` [INFO] [stderr] --> src/storage/localfs.rs:211:9 [INFO] [stderr] | [INFO] [stderr] 211 | uid: u32, [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_uid` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `gid` [INFO] [stderr] --> src/storage/localfs.rs:212:9 [INFO] [stderr] | [INFO] [stderr] 212 | gid: u32, [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_gid` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ino` [INFO] [stderr] --> src/storage/localfs.rs:213:9 [INFO] [stderr] | [INFO] [stderr] 213 | ino: u64, [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] help: if this is intentional, prefix it with an underscore [INFO] [stderr] | [INFO] [stderr] 213 | _ino: u64, [INFO] [stderr] | + [INFO] [stderr] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stderr] | [INFO] [stderr] 213 - ino: u64, [INFO] [stderr] 213 + storage::fs_util::ROOT_ID: u64, [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused variable: `fh` [INFO] [stderr] --> src/storage/localfs.rs:214:9 [INFO] [stderr] | [INFO] [stderr] 214 | fh: u64, [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] help: if this is intentional, prefix it with an underscore [INFO] [stderr] | [INFO] [stderr] 214 | _fh: u64, [INFO] [stderr] | + [INFO] [stderr] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stderr] | [INFO] [stderr] 214 - fh: u64, [INFO] [stderr] 214 + storage::fs_util::ROOT_ID: u64, [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused variable: `offset` [INFO] [stderr] --> src/storage/localfs.rs:215:9 [INFO] [stderr] | [INFO] [stderr] 215 | offset: i64, [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `dir_name` [INFO] [stderr] --> src/storage/localfs.rs:225:9 [INFO] [stderr] | [INFO] [stderr] 225 | dir_name: &str, [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dir_name` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `uid` [INFO] [stderr] --> src/storage/localfs.rs:222:9 [INFO] [stderr] | [INFO] [stderr] 222 | uid: u32, [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_uid` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `gid` [INFO] [stderr] --> src/storage/localfs.rs:223:9 [INFO] [stderr] | [INFO] [stderr] 223 | gid: u32, [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_gid` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `parent` [INFO] [stderr] --> src/storage/localfs.rs:224:9 [INFO] [stderr] | [INFO] [stderr] 224 | parent: INum, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: if this is intentional, prefix it with an underscore [INFO] [stderr] | [INFO] [stderr] 224 | _parent: INum, [INFO] [stderr] | + [INFO] [stderr] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stderr] | [INFO] [stderr] 224 - parent: INum, [INFO] [stderr] 224 + storage::fs_util::ROOT_ID: INum, [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ino` [INFO] [stderr] --> src/storage/localfs.rs:241:51 [INFO] [stderr] | [INFO] [stderr] 241 | async fn opendir(&self, _uid: u32, _gid: u32, ino: u64, _flags: u32) -> DatenLordResult { [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] help: if this is intentional, prefix it with an underscore [INFO] [stderr] | [INFO] [stderr] 241 | async fn opendir(&self, _uid: u32, _gid: u32, _ino: u64, _flags: u32) -> DatenLordResult { [INFO] [stderr] | + [INFO] [stderr] help: you might have meant to pattern match on the similarly named constant `ROOT_ID` [INFO] [stderr] | [INFO] [stderr] 241 - async fn opendir(&self, _uid: u32, _gid: u32, ino: u64, _flags: u32) -> DatenLordResult { [INFO] [stderr] 241 + async fn opendir(&self, _uid: u32, _gid: u32, storage::fs_util::ROOT_ID: u64, _flags: u32) -> DatenLordResult { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: field `operator` is never read [INFO] [stderr] --> src/storage/localfs.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 14 | pub struct LocalFS { [INFO] [stderr] | ------- field in this struct [INFO] [stderr] 15 | operator: Operator, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `LocalFS` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: associated function `fileattr_from_metadata` is never used [INFO] [stderr] --> src/storage/localfs.rs:26:8 [INFO] [stderr] | [INFO] [stderr] 18 | impl LocalFS { [INFO] [stderr] | ------------ associated function in this implementation [INFO] [stderr] ... [INFO] [stderr] 26 | fn fileattr_from_metadata(metadata: opendal::Metadata, ino: u64) -> FileAttr { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `now` and `setattr_precheck` are never used [INFO] [stderr] --> src/storage/fs_util.rs:183:19 [INFO] [stderr] | [INFO] [stderr] 181 | impl FileAttr { [INFO] [stderr] | ------------- associated items in this implementation [INFO] [stderr] 182 | /// New a `FileAttr` [INFO] [stderr] 183 | pub(crate) fn now() -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 202 | pub(crate) fn setattr_precheck( [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/sdk/py/datenlord.rs:17:1 [INFO] [stderr] | [INFO] [stderr] 17 | #[pymethods] [INFO] [stderr] | ^----------- [INFO] [stderr] | | [INFO] [stderr] | move the `impl` block outside of this static `ITEMS` and up 3 bodies [INFO] [stderr] 18 | impl DatenlordSDK { [INFO] [stderr] | ------------ `DatenlordSDK` is not local [INFO] [stderr] | [INFO] [stderr] = note: the attribute macro `pymethods` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the attribute macro `pymethods` may come from an old version of the `pyo3_macros` crate, try updating your dependency with `cargo update -p pyo3_macros` [INFO] [stderr] = 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] [stderr] = 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] [stderr] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stderr] = note: this warning originates in the attribute macro `pymethods` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: `datenlord` (lib test) generated 52 warnings (run `cargo fix --lib -p datenlord --tests` to apply 22 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.15s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: num-bigint-dig v0.8.4 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2` [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/datenlord-1f5c97f218ade995) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "23fb6978eeedbd6af9170875b81c5838d985062b0cb44ab40ce20d5393342300", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "23fb6978eeedbd6af9170875b81c5838d985062b0cb44ab40ce20d5393342300", kill_on_drop: false }` [INFO] [stdout] 23fb6978eeedbd6af9170875b81c5838d985062b0cb44ab40ce20d5393342300