[INFO] cloning repository https://github.com/bonedaddy/pmm [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/bonedaddy/pmm" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbonedaddy%2Fpmm", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbonedaddy%2Fpmm'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] eb2b475e0155dea1a12ce43426f6012a6a2ac0ba [INFO] testing bonedaddy/pmm against master#cdb45c87e2cd43495379f7e867e3cc15dcee9f93 for pr-145838-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbonedaddy%2Fpmm" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/bonedaddy/pmm [INFO] finished tweaking git repo https://github.com/bonedaddy/pmm [INFO] tweaked toml for git repo https://github.com/bonedaddy/pmm written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/bonedaddy/pmm on toolchain cdb45c87e2cd43495379f7e867e3cc15dcee9f93 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/bonedaddy/pmm 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" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded cfasttext-sys v0.7.8 [INFO] [stderr] Downloaded fasttext v0.7.8 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 26d7c2d9a4bde9a6753107a263773ee61ada674492877d640357ff42f5e57a88 [INFO] running `Command { std: "docker" "start" "-a" "26d7c2d9a4bde9a6753107a263773ee61ada674492877d640357ff42f5e57a88", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "26d7c2d9a4bde9a6753107a263773ee61ada674492877d640357ff42f5e57a88", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "26d7c2d9a4bde9a6753107a263773ee61ada674492877d640357ff42f5e57a88", kill_on_drop: false }` [INFO] [stdout] 26d7c2d9a4bde9a6753107a263773ee61ada674492877d640357ff42f5e57a88 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 73cee8302a15b21783e571ecbccf4c7635427237d5b227ff1c348b6a4c1dce44 [INFO] running `Command { std: "docker" "start" "-a" "73cee8302a15b21783e571ecbccf4c7635427237d5b227ff1c348b6a4c1dce44", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.171 [INFO] [stderr] Compiling smallvec v1.14.0 [INFO] [stderr] Compiling once_cell v1.21.1 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Compiling cc v1.2.17 [INFO] [stderr] Compiling log v0.4.26 [INFO] [stderr] Compiling openssl v0.10.71 [INFO] [stderr] Compiling futures-task v0.3.31 [INFO] [stderr] Compiling indexmap v2.8.0 [INFO] [stderr] Compiling regex-automata v0.4.9 [INFO] [stderr] Compiling clap_builder v4.5.32 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling tracing-core v0.1.33 [INFO] [stderr] Compiling thread_local v1.1.8 [INFO] [stderr] Compiling syn v2.0.100 [INFO] [stderr] Compiling tracing-log v0.2.0 [INFO] [stderr] Compiling parking_lot_core v0.9.10 [INFO] [stderr] Compiling socket2 v0.5.8 [INFO] [stderr] Compiling mio v1.0.3 [INFO] [stderr] Compiling signal-hook-registry v1.4.2 [INFO] [stderr] Compiling openssl-sys v0.9.106 [INFO] [stderr] Compiling cfasttext-sys v0.7.8 [INFO] [stderr] Compiling parking_lot v0.12.3 [INFO] [stderr] Compiling native-tls v0.2.14 [INFO] [stderr] Compiling regex v1.11.1 [INFO] [stderr] Compiling synstructure v0.13.1 [INFO] [stderr] Compiling zerovec-derive v0.10.3 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling icu_provider_macros v1.5.0 [INFO] [stderr] Compiling tokio-macros v2.5.0 [INFO] [stderr] Compiling tracing-attributes v0.1.28 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling clap_derive v4.5.32 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.7.5 [INFO] [stderr] Compiling tokio v1.44.1 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling yoke v0.7.5 [INFO] [stderr] Compiling tracing v0.1.41 [INFO] [stderr] Compiling zerovec v0.10.4 [INFO] [stderr] Compiling clap v4.5.32 [INFO] [stderr] Compiling tinystr v0.7.6 [INFO] [stderr] Compiling icu_collections v1.5.0 [INFO] [stderr] Compiling icu_locid v1.5.0 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Compiling icu_provider v1.5.0 [INFO] [stderr] Compiling icu_locid_transform v1.5.0 [INFO] [stderr] Compiling icu_properties v1.5.1 [INFO] [stderr] Compiling tokio-util v0.7.14 [INFO] [stderr] Compiling tokio-native-tls v0.3.1 [INFO] [stderr] Compiling h2 v0.3.26 [INFO] [stderr] Compiling icu_normalizer v1.5.0 [INFO] [stderr] Compiling serde_json v1.0.140 [INFO] [stderr] Compiling tracing-serde v0.2.0 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling idna_adapter v1.2.0 [INFO] [stderr] Compiling idna v1.0.3 [INFO] [stderr] Compiling tracing-subscriber v0.3.19 [INFO] [stderr] Compiling url v2.5.4 [INFO] [stderr] Compiling hyper v0.14.32 [INFO] [stderr] Compiling hyper-tls v0.5.0 [INFO] [stderr] Compiling fasttext v0.7.8 [INFO] [stderr] Compiling reqwest v0.11.27 [INFO] [stderr] Compiling plex-media-manager v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `HashMap` and `HashSet` [INFO] [stdout] --> src/main.rs:6:19 [INFO] [stdout] | [INFO] [stdout] 6 | collections::{HashMap, HashSet}, [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: `Args` [INFO] [stdout] --> src/embedding_model.rs:1:16 [INFO] [stdout] | [INFO] [stdout] 1 | use fasttext::{Args, FastText}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around pattern [INFO] [stdout] --> src/embedding_model.rs:128:21 [INFO] [stdout] | [INFO] [stdout] 128 | for ((&e1, &e2)) in embeddings[i].iter().zip(centroid.iter()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 128 - for ((&e1, &e2)) in embeddings[i].iter().zip(centroid.iter()) { [INFO] [stdout] 128 + for (&e1, &e2) in embeddings[i].iter().zip(centroid.iter()) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:86:13 [INFO] [stdout] | [INFO] [stdout] 86 | let mut client_builder = Client::builder().timeout(std::time::Duration::from_secs(30)); [INFO] [stdout] | ----^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `terms` [INFO] [stdout] --> src/main.rs:1304:13 [INFO] [stdout] | [INFO] [stdout] 1304 | terms, [INFO] [stdout] | ^^^^^ help: try ignoring the field: `terms: _` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `PlexCollectionManager` is more private than the item `auto_categorize_by_clustering` [INFO] [stdout] --> src/embedding_model.rs:218:1 [INFO] [stdout] | [INFO] [stdout] 218 | / pub async fn auto_categorize_by_clustering( [INFO] [stdout] 219 | | manager: &mut crate::PlexCollectionManager, [INFO] [stdout] 220 | | library_id: &str, [INFO] [stdout] 221 | | base_path: &str, [INFO] [stdout] ... | [INFO] [stdout] 226 | | similarity_threshold: f32, // New parameter to control minimum similarity [INFO] [stdout] 227 | | ) -> Result<(), Box> { [INFO] [stdout] | |_______________________________^ function `auto_categorize_by_clustering` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `PlexCollectionManager` is only usable at visibility `pub(crate)` [INFO] [stdout] --> src/main.rs:77:1 [INFO] [stdout] | [INFO] [stdout] 77 | struct PlexCollectionManager { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `PlexCollectionManager` is more private than the item `tag_by_fasttext` [INFO] [stdout] --> src/embedding_model.rs:376:1 [INFO] [stdout] | [INFO] [stdout] 376 | / pub async fn tag_by_fasttext( [INFO] [stdout] 377 | | manager: &mut crate::PlexCollectionManager, [INFO] [stdout] 378 | | library_id: &str, [INFO] [stdout] 379 | | base_path: &str, [INFO] [stdout] ... | [INFO] [stdout] 383 | | model_path: &str, [INFO] [stdout] 384 | | ) -> Result<(), Box> { [INFO] [stdout] | |_______________________________^ function `tag_by_fasttext` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `PlexCollectionManager` is only usable at visibility `pub(crate)` [INFO] [stdout] --> src/main.rs:77:1 [INFO] [stdout] | [INFO] [stdout] 77 | struct PlexCollectionManager { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_items_in_library` and `find_similar_directories` are never used [INFO] [stdout] --> src/main.rs:170:14 [INFO] [stdout] | [INFO] [stdout] 84 | impl PlexCollectionManager { [INFO] [stdout] | -------------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 170 | async fn get_items_in_library( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 644 | async fn find_similar_directories( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `dimension` is never read [INFO] [stdout] --> src/embedding_model.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct FastTextEmbedding { [INFO] [stdout] | ----------------- field in this struct [INFO] [stdout] 7 | model: FastText, [INFO] [stdout] 8 | dimension: usize, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `path` is never read [INFO] [stdout] --> src/embedding_model.rs:79:5 [INFO] [stdout] | [INFO] [stdout] 77 | struct DirectoryEmbedding { [INFO] [stdout] | ------------------ field in this struct [INFO] [stdout] 78 | name: String, [INFO] [stdout] 79 | path: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DirectoryEmbedding` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 55.11s [INFO] running `Command { std: "docker" "inspect" "73cee8302a15b21783e571ecbccf4c7635427237d5b227ff1c348b6a4c1dce44", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "73cee8302a15b21783e571ecbccf4c7635427237d5b227ff1c348b6a4c1dce44", kill_on_drop: false }` [INFO] [stdout] 73cee8302a15b21783e571ecbccf4c7635427237d5b227ff1c348b6a4c1dce44 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 7622dff5db31c2fd73fce7a65a715ce2bcc385b4eabbe1b9370affb5f2b63281 [INFO] running `Command { std: "docker" "start" "-a" "7622dff5db31c2fd73fce7a65a715ce2bcc385b4eabbe1b9370affb5f2b63281", kill_on_drop: false }` [INFO] [stderr] Compiling plex-media-manager v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `HashMap` and `HashSet` [INFO] [stdout] --> src/main.rs:6:19 [INFO] [stdout] | [INFO] [stdout] 6 | collections::{HashMap, HashSet}, [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: `Args` [INFO] [stdout] --> src/embedding_model.rs:1:16 [INFO] [stdout] | [INFO] [stdout] 1 | use fasttext::{Args, FastText}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around pattern [INFO] [stdout] --> src/embedding_model.rs:128:21 [INFO] [stdout] | [INFO] [stdout] 128 | for ((&e1, &e2)) in embeddings[i].iter().zip(centroid.iter()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 128 - for ((&e1, &e2)) in embeddings[i].iter().zip(centroid.iter()) { [INFO] [stdout] 128 + for (&e1, &e2) in embeddings[i].iter().zip(centroid.iter()) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:86:13 [INFO] [stdout] | [INFO] [stdout] 86 | let mut client_builder = Client::builder().timeout(std::time::Duration::from_secs(30)); [INFO] [stdout] | ----^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `terms` [INFO] [stdout] --> src/main.rs:1304:13 [INFO] [stdout] | [INFO] [stdout] 1304 | terms, [INFO] [stdout] | ^^^^^ help: try ignoring the field: `terms: _` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `PlexCollectionManager` is more private than the item `auto_categorize_by_clustering` [INFO] [stdout] --> src/embedding_model.rs:218:1 [INFO] [stdout] | [INFO] [stdout] 218 | / pub async fn auto_categorize_by_clustering( [INFO] [stdout] 219 | | manager: &mut crate::PlexCollectionManager, [INFO] [stdout] 220 | | library_id: &str, [INFO] [stdout] 221 | | base_path: &str, [INFO] [stdout] ... | [INFO] [stdout] 226 | | similarity_threshold: f32, // New parameter to control minimum similarity [INFO] [stdout] 227 | | ) -> Result<(), Box> { [INFO] [stdout] | |_______________________________^ function `auto_categorize_by_clustering` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `PlexCollectionManager` is only usable at visibility `pub(crate)` [INFO] [stdout] --> src/main.rs:77:1 [INFO] [stdout] | [INFO] [stdout] 77 | struct PlexCollectionManager { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `PlexCollectionManager` is more private than the item `tag_by_fasttext` [INFO] [stdout] --> src/embedding_model.rs:376:1 [INFO] [stdout] | [INFO] [stdout] 376 | / pub async fn tag_by_fasttext( [INFO] [stdout] 377 | | manager: &mut crate::PlexCollectionManager, [INFO] [stdout] 378 | | library_id: &str, [INFO] [stdout] 379 | | base_path: &str, [INFO] [stdout] ... | [INFO] [stdout] 383 | | model_path: &str, [INFO] [stdout] 384 | | ) -> Result<(), Box> { [INFO] [stdout] | |_______________________________^ function `tag_by_fasttext` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `PlexCollectionManager` is only usable at visibility `pub(crate)` [INFO] [stdout] --> src/main.rs:77:1 [INFO] [stdout] | [INFO] [stdout] 77 | struct PlexCollectionManager { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_items_in_library` and `find_similar_directories` are never used [INFO] [stdout] --> src/main.rs:170:14 [INFO] [stdout] | [INFO] [stdout] 84 | impl PlexCollectionManager { [INFO] [stdout] | -------------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 170 | async fn get_items_in_library( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 644 | async fn find_similar_directories( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `dimension` is never read [INFO] [stdout] --> src/embedding_model.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct FastTextEmbedding { [INFO] [stdout] | ----------------- field in this struct [INFO] [stdout] 7 | model: FastText, [INFO] [stdout] 8 | dimension: usize, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `path` is never read [INFO] [stdout] --> src/embedding_model.rs:79:5 [INFO] [stdout] | [INFO] [stdout] 77 | struct DirectoryEmbedding { [INFO] [stdout] | ------------------ field in this struct [INFO] [stdout] 78 | name: String, [INFO] [stdout] 79 | path: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DirectoryEmbedding` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1.45s [INFO] running `Command { std: "docker" "inspect" "7622dff5db31c2fd73fce7a65a715ce2bcc385b4eabbe1b9370affb5f2b63281", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7622dff5db31c2fd73fce7a65a715ce2bcc385b4eabbe1b9370affb5f2b63281", kill_on_drop: false }` [INFO] [stdout] 7622dff5db31c2fd73fce7a65a715ce2bcc385b4eabbe1b9370affb5f2b63281 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 716ab2132f398501214d64a809a5dc484f0016a7fbe6026a1642c1e6254e24d2 [INFO] running `Command { std: "docker" "start" "-a" "716ab2132f398501214d64a809a5dc484f0016a7fbe6026a1642c1e6254e24d2", kill_on_drop: false }` [INFO] [stderr] warning: unused imports: `HashMap` and `HashSet` [INFO] [stderr] --> src/main.rs:6:19 [INFO] [stderr] | [INFO] [stderr] 6 | collections::{HashMap, HashSet}, [INFO] [stderr] | ^^^^^^^ ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `Args` [INFO] [stderr] --> src/embedding_model.rs:1:16 [INFO] [stderr] | [INFO] [stderr] 1 | use fasttext::{Args, FastText}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around pattern [INFO] [stderr] --> src/embedding_model.rs:128:21 [INFO] [stderr] | [INFO] [stderr] 128 | for ((&e1, &e2)) in embeddings[i].iter().zip(centroid.iter()) { [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 128 - for ((&e1, &e2)) in embeddings[i].iter().zip(centroid.iter()) { [INFO] [stderr] 128 + for (&e1, &e2) in embeddings[i].iter().zip(centroid.iter()) { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:86:13 [INFO] [stderr] | [INFO] [stderr] 86 | let mut client_builder = Client::builder().timeout(std::time::Duration::from_secs(30)); [INFO] [stderr] | ----^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `terms` [INFO] [stderr] --> src/main.rs:1304:13 [INFO] [stderr] | [INFO] [stderr] 1304 | terms, [INFO] [stderr] | ^^^^^ help: try ignoring the field: `terms: _` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: type `PlexCollectionManager` is more private than the item `auto_categorize_by_clustering` [INFO] [stderr] --> src/embedding_model.rs:218:1 [INFO] [stderr] | [INFO] [stderr] 218 | / pub async fn auto_categorize_by_clustering( [INFO] [stderr] 219 | | manager: &mut crate::PlexCollectionManager, [INFO] [stderr] 220 | | library_id: &str, [INFO] [stderr] 221 | | base_path: &str, [INFO] [stderr] ... | [INFO] [stderr] 226 | | similarity_threshold: f32, // New parameter to control minimum similarity [INFO] [stderr] 227 | | ) -> Result<(), Box> { [INFO] [stderr] | |_______________________________^ function `auto_categorize_by_clustering` is reachable at visibility `pub` [INFO] [stderr] | [INFO] [stderr] note: but type `PlexCollectionManager` is only usable at visibility `pub(crate)` [INFO] [stderr] --> src/main.rs:77:1 [INFO] [stderr] | [INFO] [stderr] 77 | struct PlexCollectionManager { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: `#[warn(private_interfaces)]` on by default [INFO] [stderr] [INFO] [stderr] warning: type `PlexCollectionManager` is more private than the item `tag_by_fasttext` [INFO] [stderr] --> src/embedding_model.rs:376:1 [INFO] [stderr] | [INFO] [stderr] 376 | / pub async fn tag_by_fasttext( [INFO] [stderr] 377 | | manager: &mut crate::PlexCollectionManager, [INFO] [stderr] 378 | | library_id: &str, [INFO] [stderr] 379 | | base_path: &str, [INFO] [stderr] ... | [INFO] [stderr] 383 | | model_path: &str, [INFO] [stderr] 384 | | ) -> Result<(), Box> { [INFO] [stderr] | |_______________________________^ function `tag_by_fasttext` is reachable at visibility `pub` [INFO] [stderr] | [INFO] [stderr] note: but type `PlexCollectionManager` is only usable at visibility `pub(crate)` [INFO] [stderr] --> src/main.rs:77:1 [INFO] [stderr] | [INFO] [stderr] 77 | struct PlexCollectionManager { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `get_items_in_library` and `find_similar_directories` are never used [INFO] [stderr] --> src/main.rs:170:14 [INFO] [stderr] | [INFO] [stderr] 84 | impl PlexCollectionManager { [INFO] [stderr] | -------------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 170 | async fn get_items_in_library( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 644 | async fn find_similar_directories( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: field `dimension` is never read [INFO] [stderr] --> src/embedding_model.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 6 | pub struct FastTextEmbedding { [INFO] [stderr] | ----------------- field in this struct [INFO] [stderr] 7 | model: FastText, [INFO] [stderr] 8 | dimension: usize, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `path` is never read [INFO] [stderr] --> src/embedding_model.rs:79:5 [INFO] [stderr] | [INFO] [stderr] 77 | struct DirectoryEmbedding { [INFO] [stderr] | ------------------ field in this struct [INFO] [stderr] 78 | name: String, [INFO] [stderr] 79 | path: String, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `DirectoryEmbedding` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: `plex-media-manager` (bin "plex-media-manager" test) generated 10 warnings (run `cargo fix --bin "plex-media-manager" --tests` to apply 4 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.18s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/plex_media_manager-6bec137d36a49040) [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" "716ab2132f398501214d64a809a5dc484f0016a7fbe6026a1642c1e6254e24d2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "716ab2132f398501214d64a809a5dc484f0016a7fbe6026a1642c1e6254e24d2", kill_on_drop: false }` [INFO] [stdout] 716ab2132f398501214d64a809a5dc484f0016a7fbe6026a1642c1e6254e24d2