# rustc version rustc 1.91.0-nightly (ec7c02612 2025-08-05)
# docs.rs version docsrs 0.6.0 (e18d034e 2025-07-29)
# build log [INFO] running `Command { std: "docker" "create" "-v" "/home/cratesfyi/workspace-builder/builds/rusty-machine-0.5.4/target:/opt/rustwide/target:rw,Z" "-v" "/home/cratesfyi/workspace-builder/builds/rusty-machine-0.5.4/source:/opt/rustwide/workdir:ro,Z" "-v" "/home/cratesfyi/workspace-builder/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/home/cratesfyi/workspace-builder/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "DOCS_RS=1" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "6442450944" "--cpus" "6" "--user" "1001:1001" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:ae6f63d130afcfff7f91f5ba9fdb2a74d52830289c6a2ea2d23a94dcfb480a0d" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "rustdoc" "--lib" "-Zrustdoc-map" "--config" "build.rustdocflags=[\"--cfg\", \"docsrs\", \"-Z\", \"unstable-options\", \"--emit=invocation-specific\", \"--resource-suffix\", \"-20250805-1.91.0-nightly-ec7c02612\", \"--static-root-path\", \"/-/rustdoc.static/\", \"--cap-lints\", \"warn\", \"--extern-html-root-takes-precedence\"]" "--offline" "-Zunstable-options" "--config=doc.extern-map.registries.crates-io=\"https://docs.rs/{pkg_name}/{version}/x86_64-unknown-linux-gnu\"" "-Zrustdoc-scrape-examples" "-j6" "--target" "x86_64-unknown-linux-gnu", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 5894f1fb49d83ab6a1e025a02f5f3018e40723d3dec549ae8a4db44d60cb5a53 [INFO] running `Command { std: "docker" "start" "-a" "5894f1fb49d83ab6a1e025a02f5f3018e40723d3dec549ae8a4db44d60cb5a53", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] warning: unused `#[macro_use]` import [INFO] [stderr] --> src/lib.rs:108:1 [INFO] [stderr] | [INFO] [stderr] 108 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/data/transforms/minmax.rs:115:22 [INFO] [stderr] | [INFO] [stderr] 115 | let scales = try!(input_min_max.iter() [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/data/transforms/minmax.rs:140:13 [INFO] [stderr] | [INFO] [stderr] 140 | try!(self.fit(&inputs)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/data/transforms/standardize.rs:97:28 [INFO] [stderr] | [INFO] [stderr] 97 | let variance = try!(inputs.variance(Axes::Row).map_err(|_| { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/data/transforms/standardize.rs:113:13 [INFO] [stderr] | [INFO] [stderr] 113 | try!(self.fit(&inputs)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/learning/gmm.rs:82:27 [INFO] [stderr] | [INFO] [stderr] 82 | let cov_mat = try!(self.initialize_covariances(inputs, reg_value)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/learning/gmm.rs:93:40 [INFO] [stderr] | [INFO] [stderr] 93 | let (weights, log_lik_1) = try!(self.membership_weights(inputs)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/learning/gmm.rs:110:16 [INFO] [stderr] | [INFO] [stderr] 110 | Ok(try!(self.membership_weights(inputs)).0) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/learning/gmm.rs:229:32 [INFO] [stderr] | [INFO] [stderr] 229 | let variance = try!(inputs.variance(Axes::Row)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/learning/gmm.rs:265:33 [INFO] [stderr] | [INFO] [stderr] 265 | let covar_inv = try!(cov.inverse().map_err(Error::from)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/learning/k_means.rs:93:9 [INFO] [stderr] | [INFO] [stderr] 93 | try!(self.init_centroids(inputs)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/learning/k_means.rs:98:36 [INFO] [stderr] | [INFO] [stderr] 98 | let (idx, distances) = try!(self.get_closest_centroids(inputs)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/learning/k_means.rs:194:29 [INFO] [stderr] | [INFO] [stderr] 194 | let centroids = try!(self.init_algorithm.init_centroids(self.k, inputs)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/learning/gp.rs:151:29 [INFO] [stderr] | [INFO] [stderr] 151 | let post_mean = try!(self.ker_mat(inputs, t_data)) * alpha; [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/learning/gp.rs:164:25 [INFO] [stderr] | [INFO] [stderr] 164 | let train_mat = try!((ker_mat + noise_mat).cholesky().map_err(|_| { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/learning/gp.rs:194:36 [INFO] [stderr] | [INFO] [stderr] 194 | let post_mean = mean + try!(self.ker_mat(inputs, t_data)) * alpha; [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/learning/gp.rs:196:28 [INFO] [stderr] | [INFO] [stderr] 196 | let test_mat = try!(self.ker_mat(inputs, t_data)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/learning/gp.rs:205:28 [INFO] [stderr] | [INFO] [stderr] 205 | let post_var = try!(self.ker_mat(inputs, inputs)) - &v_mat * v_mat.transpose(); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/learning/svm.rs:133:27 [INFO] [stderr] | [INFO] [stderr] 133 | let ker_mat = try!(self.ker_mat(&full_inputs, train_inputs)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/learning/naive_bayes.rs:116:25 [INFO] [stderr] | [INFO] [stderr] 116 | let log_probs = try!(self.get_log_probs(inputs)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/learning/naive_bayes.rs:157:25 [INFO] [stderr] | [INFO] [stderr] 157 | let class = try!(NaiveBayes::<T>::find_class(row)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/learning/naive_bayes.rs:173:17 [INFO] [stderr] | [INFO] [stderr] 173 | try!(distr.update_params(&inputs.select_rows(&c), idx)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/learning/naive_bayes.rs:268:19 [INFO] [stderr] | [INFO] [stderr] 268 | let var = try!(data.variance(Axes::Row).map_err(|_| { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/learning/toolkit/kernel.rs:292:9 [INFO] [stderr] | [INFO] [stderr] 292 | (self.ampl * x.exp()) [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 292 - (self.ampl * x.exp()) [INFO] [stderr] 292 + self.ampl * x.exp() [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/learning/toolkit/kernel.rs:354:9 [INFO] [stderr] | [INFO] [stderr] 354 | (self.ampl * x.exp()) [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 354 - (self.ampl * x.exp()) [INFO] [stderr] 354 + self.ampl * x.exp() [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/analysis/cross_validation.rs:70:17 [INFO] [stderr] | [INFO] [stderr] 70 | let _ = try!(model.train(&train_inputs, &train_targets)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/analysis/cross_validation.rs:71:23 [INFO] [stderr] | [INFO] [stderr] 71 | let outputs = try!(model.predict(&test_inputs)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/learning/error.rs:62:88 [INFO] [stderr] | [INFO] [stderr] 62 | Error::new(ErrorKind::LinearAlgebra, <rulinalg::error::Error as error::Error>::description(&e)) [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/learning/error.rs:15:16 [INFO] [stderr] | [INFO] [stderr] 15 | error: Box<error::Error + Send + Sync>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html> [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 15 | error: Box<dyn error::Error + Send + Sync>, [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/learning/error.rs:39:27 [INFO] [stderr] | [INFO] [stderr] 39 | where E: Into<Box<error::Error + Send + Sync>> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html> [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 39 | where E: Into<Box<dyn error::Error + Send + Sync>> [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/learning/error.rs:68:20 [INFO] [stderr] | [INFO] [stderr] 68 | self.error.description() [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/learning/nnet.rs:109:33 [INFO] [stderr] | [INFO] [stderr] 109 | pub fn default(layer_sizes: &[usize]) -> NeuralNet<BCECriterion, StochasticGD> { [INFO] [stderr] | ^^^^^^^^ ------------------------------------- the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 109 | pub fn default(layer_sizes: &[usize]) -> NeuralNet<'_, BCECriterion, StochasticGD> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/learning/nnet.rs:164:28 [INFO] [stderr] | [INFO] [stderr] 164 | pub fn get_net_weights(&self, idx: usize) -> MatrixSlice<f64> { [INFO] [stderr] | ^^^^^ ---------------- the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 164 | pub fn get_net_weights(&self, idx: usize) -> MatrixSlice<'_, f64> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/learning/nnet.rs:182:29 [INFO] [stderr] | [INFO] [stderr] 182 | fn default(layer_sizes: &[usize]) -> BaseNeuralNet<BCECriterion> { [INFO] [stderr] | ^^^^^^^^ --------------------------- the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 182 | fn default(layer_sizes: &[usize]) -> BaseNeuralNet<'_, BCECriterion> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/learning/nnet.rs:190:25 [INFO] [stderr] | [INFO] [stderr] 190 | fn new(layer_sizes: &[usize], criterion: T) -> BaseNeuralNet<T> { [INFO] [stderr] | ^^^^^^^^ ---------------- the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 190 | fn new(layer_sizes: &[usize], criterion: T) -> BaseNeuralNet<'_, T> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/learning/nnet.rs:215:26 [INFO] [stderr] | [INFO] [stderr] 215 | fn get_layer_weights(&self, weights: &[f64], idx: usize) -> MatrixSlice<f64> { [INFO] [stderr] | ^^^^^ the lifetime is elided here ---------------- the same lifetime is hidden here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 215 | fn get_layer_weights(&self, weights: &[f64], idx: usize) -> MatrixSlice<'_, f64> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/learning/nnet.rs:243:24 [INFO] [stderr] | [INFO] [stderr] 243 | fn get_net_weights(&self, idx: usize) -> MatrixSlice<f64> { [INFO] [stderr] | ^^^^^ ---------------- the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 243 | fn get_net_weights(&self, idx: usize) -> MatrixSlice<'_, f64> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/learning/nnet.rs:248:29 [INFO] [stderr] | [INFO] [stderr] 248 | fn get_non_bias_weights(&self, weights: &[f64], idx: usize) -> MatrixSlice<f64> { [INFO] [stderr] | ^^^^^ the lifetime is elided here ---------------- the same lifetime is hidden here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 248 | fn get_non_bias_weights(&self, weights: &[f64], idx: usize) -> MatrixSlice<'_, f64> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: `rusty-machine` (lib) generated 38 warnings (run `cargo fix --lib -p rusty-machine` to apply 4 suggestions) [INFO] [stderr] Scraping rusty-machine v0.5.4 (/opt/rustwide/workdir) [INFO] [stderr] Documenting rusty-machine v0.5.4 (/opt/rustwide/workdir) [INFO] [stderr] warning: unresolved link to `UNSTABLE` [INFO] [stderr] --> src/learning/gp.rs:181:45 [INFO] [stderr] | [INFO] [stderr] 181 | /// Compute the posterior distribution [UNSTABLE] [INFO] [stderr] | ^^^^^^^^ no item named `UNSTABLE` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] = note: `#[warn(rustdoc::broken_intra_doc_links)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `1,0,0` [INFO] [stderr] --> src/learning/naive_bayes.rs:106:29 [INFO] [stderr] | [INFO] [stderr] 106 | /// the input class. e.g. [[1,0,0],[0,0,1]] shows class 1 first, then class 3. [INFO] [stderr] | ^^^^^ no item named `1,0,0` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `0,0,1` [INFO] [stderr] --> src/learning/naive_bayes.rs:106:37 [INFO] [stderr] | [INFO] [stderr] 106 | /// the input class. e.g. [[1,0,0],[0,0,1]] shows class 1 first, then class 3. [INFO] [stderr] | ^^^^^ no item named `0,0,1` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unclosed HTML tag `f64` [INFO] [stderr] --> src/learning/gmm.rs:187:34 [INFO] [stderr] | [INFO] [stderr] 187 | /// Returns an Option<&Matrix<f64>> containing [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(rustdoc::invalid_html_tags)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unclosed HTML tag `f64` [INFO] [stderr] --> src/learning/gmm.rs:196:38 [INFO] [stderr] | [INFO] [stderr] 196 | /// Returns an Option<&Vec<Matrix<f64>>> containing [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `rusty-machine` (lib doc) generated 7 warnings (2 duplicates) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.02s [INFO] [stderr] Generated /opt/rustwide/target/x86_64-unknown-linux-gnu/doc/rusty_machine/index.html [INFO] running `Command { std: "docker" "inspect" "5894f1fb49d83ab6a1e025a02f5f3018e40723d3dec549ae8a4db44d60cb5a53", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5894f1fb49d83ab6a1e025a02f5f3018e40723d3dec549ae8a4db44d60cb5a53", kill_on_drop: false }` [INFO] [stdout] 5894f1fb49d83ab6a1e025a02f5f3018e40723d3dec549ae8a4db44d60cb5a53