[INFO] fetching crate ruda-optim 0.21.66...
[INFO] testing ruda-optim-0.21.66 against 1.100.0-beta.1+cargoflags=--release for beta-release-1.100-2
[INFO] extracting crate ruda-optim 0.21.66 into /workspace/builds/worker-1-tc2/source
[INFO] started tweaking crates.io crate ruda-optim 0.21.66
[INFO] removed 0 missing examples
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate ruda-optim 0.21.66
[INFO] tweaked toml for crates.io crate ruda-optim 0.21.66 written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate ruda-optim 0.21.66 on toolchain 1.100.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate ruda-optim 0.21.66 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" "+1.100.0-beta.1" "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/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 30020d9057394ed3d1d65dd9fc3d0845e450bbe076fa89691115559f932ea3c6
[INFO] running `Command { std: "docker" "start" "30020d9057394ed3d1d65dd9fc3d0845e450bbe076fa89691115559f932ea3c6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "30020d9057394ed3d1d65dd9fc3d0845e450bbe076fa89691115559f932ea3c6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "30020d9057394ed3d1d65dd9fc3d0845e450bbe076fa89691115559f932ea3c6" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "30020d9057394ed3d1d65dd9fc3d0845e450bbe076fa89691115559f932ea3c6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "30020d9057394ed3d1d65dd9fc3d0845e450bbe076fa89691115559f932ea3c6" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling zerocopy-derive v0.8.56
[INFO] [stderr]    Compiling cpufeatures v0.3.1
[INFO] [stderr]    Compiling portable-atomic v1.15.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling derive-new v0.7.0
[INFO] [stderr]    Compiling thiserror v2.0.20
[INFO] [stderr]    Compiling smallvec v1.15.2
[INFO] [stderr]    Compiling object v0.37.3
[INFO] [stderr]    Compiling toml_parser v1.1.3+spec-1.1.0
[INFO] [stderr]    Compiling ruda-core v0.1.10
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]    Compiling bytemuck v1.25.2
[INFO] [stderr]    Compiling darling_core v0.21.3
[INFO] [stderr]    Compiling toml_datetime v1.1.1+spec-1.1.0
[INFO] [stderr]    Compiling nom v8.0.0
[INFO] [stderr]    Compiling chacha20 v0.10.2
[INFO] [stderr]    Compiling fastrand v2.5.0
[INFO] [stderr]    Compiling futures-core v0.3.34
[INFO] [stderr]    Compiling serde_bytes v0.11.19
[INFO] [stderr]    Compiling embassy-futures v0.1.2
[INFO] [stderr]    Compiling oneshot v0.2.1
[INFO] [stderr]    Compiling crc32fast v1.5.1
[INFO] [stderr]    Compiling futures-lite v2.6.1
[INFO] [stderr]    Compiling aho-corasick v1.1.5
[INFO] [stderr]    Compiling regex-syntax v0.8.11
[INFO] [stderr]    Compiling rand v0.10.2
[INFO] [stderr]    Compiling serde_json v1.0.151
[INFO] [stderr]    Compiling ruda-model-codegen v0.21.1
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling miniz_oxide v0.9.1
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling toml v1.1.4+spec-1.1.0
[INFO] [stderr]    Compiling spin v0.10.1
[INFO] [stderr]    Compiling unty v0.0.4
[INFO] [stderr]    Compiling colored v3.1.1
[INFO] [stderr]    Compiling rand_distr v0.6.0
[INFO] [stderr]    Compiling rmp v0.8.15
[INFO] [stderr]    Compiling bincode v2.0.1
[INFO] [stderr]    Compiling flate2 v1.1.10
[INFO] [stderr]    Compiling data-encoding v2.11.1
[INFO] [stderr]    Compiling rmp-serde v1.3.1
[INFO] [stderr]    Compiling uuid v1.26.0
[INFO] [stderr]    Compiling zerocopy v0.8.56
[INFO] [stderr]    Compiling derive_more v2.1.1
[INFO] [stderr]    Compiling ruda-model-macros v0.21.1
[INFO] [stderr]    Compiling regex-automata v0.4.18
[INFO] [stderr]    Compiling darling_macro v0.21.3
[INFO] [stderr]    Compiling darling v0.21.3
[INFO] [stderr]    Compiling enumset_derive v0.15.0
[INFO] [stderr]    Compiling tynm v0.2.0
[INFO] [stderr]    Compiling enumset v1.1.14
[INFO] [stderr]    Compiling backtrace v0.3.76
[INFO] [stderr]    Compiling regex v1.13.1
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling ruDNN v0.1.97
[INFO] [stderr]    Compiling ruda-tensor-config v0.21.8
[INFO] [stderr]    Compiling ruda-tensor v0.21.70
[INFO] [stderr]    Compiling ruda-model v0.21.59
[INFO] [stderr]    Compiling ruda-optim v0.21.66 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `alloc::vec`
[INFO] [stdout]  --> src/optim/lbfgs/line_search.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use alloc::vec;
[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: `recovery::*`
[INFO] [stdout]   --> src/optim/muon/grouped/fully_sharded.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use recovery::*;
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/optim/fully_sharded_accum/weighted.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub fn state(&self) -> &FullyShardedAccumulationState {self.continuation.state()}
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:2:9
[INFO] [stdout]    |
[INFO] [stdout]  2 | #![warn(missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/optim/fully_sharded_accum/weighted.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub fn global_weight(&self) -> Tensor<B::InnerBackend,1> {self.global_weight.clone()}
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/optim/fully_sharded_accum/hybrid_norm.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub parameter:ParamId,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/optim/fully_sharded_accum/hybrid_norm.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub logical_shape:Vec<usize>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/optim/fully_sharded_accum/hybrid_norm.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub shard_rank:u32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/optim/fully_sharded_accum/hybrid_norm.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub shard_world:u32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/optim/fully_sharded_accum/hybrid_norm.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub replicas:u32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/optim/fully_sharded_accum/placement.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub parameter:ParamId,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/optim/fully_sharded_accum/placement.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub logical_shape:Vec<usize>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/optim/fully_sharded_accum/placement.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub rank:u32,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/optim/fully_sharded_accum/placement.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub world_size:u32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/optim/fully_sharded_accum/migration.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub target:FullyShardedParameterPlacement,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/optim/fully_sharded_accum/migration.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub source_records:Vec<usize>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/optim/fully_sharded_accum/migration.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn new(target:FullyShardedParameterPlacement,source_records:Vec<usize>) -> Self {Self {target,source_records}}
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/optim/fully_sharded_elementwise/migration.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub target:FullyShardedParameterPlacement,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/optim/fully_sharded_elementwise/migration.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub source_records:Vec<usize>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/optim/fully_sharded_elementwise/migration.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn new(target:FullyShardedParameterPlacement,source_records:Vec<usize>) -> Self {Self {target,source_records}}
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/optim/fully_sharded_elementwise/recovery.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub module:M,
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/optim/fully_sharded_elementwise/recovery.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub gradients:GradientsParams,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/optim/fully_sharded_elementwise/recovery.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub error:FullyShardedElementwiseError<E>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/optim/choice.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     Left(L),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/optim/choice.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     Right(R),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/optim/choice.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 |     Left(L),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/optim/choice.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     Right(R),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/optim/choice/native_records.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 | /     pub fn wrap_right_record<B>(record:AdaptorRecord<R,B>) -> AdaptorRecord<Self,B>
[INFO] [stdout] 39 | |     where B:AutodiffBackend,L:SimpleOptimizer<B::InnerBackend>,R:SimpleOptimizer<B::InnerBackend> {
[INFO] [stdout]    | |_________________________________________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/optim/choice/native_records.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 | /     pub fn try_unwrap_right_record<B>(record:AdaptorRecord<Self,B>) -> Result<AdaptorRecord<R,B>,AdaptorRecord<Self,B>>
[INFO] [stdout] 49 | |     where B:AutodiffBackend,L:SimpleOptimizer<B::InnerBackend>,R:SimpleOptimizer<B::InnerBackend> {
[INFO] [stdout]    | |_________________________________________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/optim/choice/native_records.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 58 | /     pub fn wrap_right_records<B>(records:HashMap<ParamId,AdaptorRecord<R,B>>) -> HashMap<ParamId,AdaptorRecord<Self,B>>
[INFO] [stdout] 59 | |     where B:AutodiffBackend,L:SimpleOptimizer<B::InnerBackend>,R:SimpleOptimizer<B::InnerBackend> {
[INFO] [stdout]    | |_________________________________________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/optim/choice/native_records.rs:73:5
[INFO] [stdout]    |
[INFO] [stdout] 73 | /     pub fn try_unwrap_right_records<B>(records:HashMap<ParamId,AdaptorRecord<Self,B>>)
[INFO] [stdout] 74 | |         -> Result<HashMap<ParamId,AdaptorRecord<R,B>>,HashMap<ParamId,AdaptorRecord<Self,B>>>
[INFO] [stdout] 75 | |     where B:AutodiffBackend,L:SimpleOptimizer<B::InnerBackend>,R:SimpleOptimizer<B::InnerBackend> {
[INFO] [stdout]    | |_________________________________________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]   --> src/optim/muon/grouped.rs:27:21
[INFO] [stdout]    |
[INFO] [stdout] 27 | type MuonRecords<B: AutodiffBackend> = HashMap<ParamId, AdaptorRecord<Muon<<B as AutodiffBackend>::InnerBackend>, B>>;
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^ will not be checked at usage sites of the type alias
[INFO] [stdout]    |
[INFO] [stdout]    = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]            see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]    = note: `#[warn(type_alias_bounds)]` on by default
[INFO] [stdout] help: remove this bound
[INFO] [stdout]    |
[INFO] [stdout] 27 - type MuonRecords<B: AutodiffBackend> = HashMap<ParamId, AdaptorRecord<Muon<<B as AutodiffBackend>::InnerBackend>, B>>;
[INFO] [stdout] 27 + type MuonRecords<B> = HashMap<ParamId, AdaptorRecord<Muon<<B as AutodiffBackend>::InnerBackend>, B>>;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]   --> src/optim/muon/grouped.rs:28:21
[INFO] [stdout]    |
[INFO] [stdout] 28 | type AdamRecords<B: AutodiffBackend> = HashMap<ParamId, AdaptorRecord<AdamW, B>>;
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^ will not be checked at usage sites of the type alias
[INFO] [stdout]    |
[INFO] [stdout]    = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]            see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout] help: remove this bound
[INFO] [stdout]    |
[INFO] [stdout] 28 - type AdamRecords<B: AutodiffBackend> = HashMap<ParamId, AdaptorRecord<AdamW, B>>;
[INFO] [stdout] 28 + type AdamRecords<B> = HashMap<ParamId, AdaptorRecord<AdamW, B>>;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]   --> src/optim/muon/grouped/sharded.rs:16:22
[INFO] [stdout]    |
[INFO] [stdout] 16 | type ShardRecords<B: AutodiffBackend> = HashMap<ParamId,MuonShardedState<<B as AutodiffBackend>::InnerBackend>>;
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^ will not be checked at usage sites of the type alias
[INFO] [stdout]    |
[INFO] [stdout]    = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]            see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout] help: remove this bound
[INFO] [stdout]    |
[INFO] [stdout] 16 - type ShardRecords<B: AutodiffBackend> = HashMap<ParamId,MuonShardedState<<B as AutodiffBackend>::InnerBackend>>;
[INFO] [stdout] 16 + type ShardRecords<B> = HashMap<ParamId,MuonShardedState<<B as AutodiffBackend>::InnerBackend>>;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]  --> src/optim/muon/grouped/sharded/master.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | type Masters<B: AutodiffBackend> = HashMap<ParamId,Fp32MasterState<<B as AutodiffBackend>::InnerBackend,2,MuonShardedState<<B as Auto...
[INFO] [stdout]   |                 ^^^^^^^^^^^^^^^ will not be checked at usage sites of the type alias
[INFO] [stdout]   |
[INFO] [stdout]   = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]           see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout] help: remove this bound
[INFO] [stdout]   |
[INFO] [stdout] 8 - type Masters<B: AutodiffBackend> = HashMap<ParamId,Fp32MasterState<<B as AutodiffBackend>::InnerBackend,2,MuonShardedState<<B as AutodiffBackend>::InnerBackend>>>;
[INFO] [stdout] 8 + type Masters<B> = HashMap<ParamId,Fp32MasterState<<B as AutodiffBackend>::InnerBackend,2,MuonShardedState<<B as AutodiffBackend>::InnerBackend>>>;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]  --> src/optim/muon/grouped/sharded/master.rs:9:21
[INFO] [stdout]   |
[INFO] [stdout] 9 | type AdamMasters<B: AutodiffBackend> = HashMap<ParamId,AdaptorRecord<Fp32MasterOptimizer<AdamW>,B>>;
[INFO] [stdout]   |                     ^^^^^^^^^^^^^^^ will not be checked at usage sites of the type alias
[INFO] [stdout]   |
[INFO] [stdout]   = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]           see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout] help: remove this bound
[INFO] [stdout]   |
[INFO] [stdout] 9 - type AdamMasters<B: AutodiffBackend> = HashMap<ParamId,AdaptorRecord<Fp32MasterOptimizer<AdamW>,B>>;
[INFO] [stdout] 9 + type AdamMasters<B> = HashMap<ParamId,AdaptorRecord<Fp32MasterOptimizer<AdamW>,B>>;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]   --> src/optim/muon/grouped/fully_sharded.rs:14:15
[INFO] [stdout]    |
[INFO] [stdout] 14 | type States<B:AutodiffBackend> = HashMap<ParamId,FullyShardedMuonAdamWState<<B as AutodiffBackend>::InnerBackend>>;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^ will not be checked at usage sites of the type alias
[INFO] [stdout]    |
[INFO] [stdout]    = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]            see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout] help: remove this bound
[INFO] [stdout]    |
[INFO] [stdout] 14 - type States<B:AutodiffBackend> = HashMap<ParamId,FullyShardedMuonAdamWState<<B as AutodiffBackend>::InnerBackend>>;
[INFO] [stdout] 14 + type States<B> = HashMap<ParamId,FullyShardedMuonAdamWState<<B as AutodiffBackend>::InnerBackend>>;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]  --> src/optim/simple/adaptor/grouped.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     Configuration(&'static str),
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/optim/simple/adaptor/grouped.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     UnknownParameter(u64),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/optim/simple/adaptor/grouped.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     State(&'static str),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/optim/simple/adaptor/grouped.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 84 |     pub fn groups(&self) -> &[OptimizerAdaptor<O,M,B>] {&self.groups}
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/optim/simple/adaptor/grouped.rs:85:5
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub fn group_for(&self,parameter:ParamId) -> Option<usize> {self.routes.get(&parameter).copied()}
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/optim/simple/adaptor/grouped.rs:86:5
[INFO] [stdout]    |
[INFO] [stdout] 86 |     pub fn state_parameter_count(&self) -> usize {self.groups.iter().map(|group|group.records.len()).sum()}
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]  --> src/optim/simple/adaptor/placement.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     UnknownParameter(u64),
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/optim/simple/adaptor/placement.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     ParameterRank {parameter:u64,recorded:usize,actual:usize},
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/optim/simple/adaptor/placement.rs:10:20
[INFO] [stdout]    |
[INFO] [stdout] 10 |     ParameterRank {parameter:u64,recorded:usize,actual:usize},
[INFO] [stdout]    |                    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/optim/simple/adaptor/placement.rs:10:34
[INFO] [stdout]    |
[INFO] [stdout] 10 |     ParameterRank {parameter:u64,recorded:usize,actual:usize},
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/optim/simple/adaptor/placement.rs:10:49
[INFO] [stdout]    |
[INFO] [stdout] 10 |     ParameterRank {parameter:u64,recorded:usize,actual:usize},
[INFO] [stdout]    |                                                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/optim/simple/adaptor/placement.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     AliasPlacement(u64),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/optim/simple/adaptor/placement.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     Group(GroupedOptimizerError),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/training/model_state/groups/fully_sharded.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 42 | /     pub async fn capture_fully_sharded_weighted_async(model:&M,model_state:R,groups:G,scheduler:&S,
[INFO] [stdout] 43 | |         accumulator:&FullyShardedWeightedGradientsAccumulator<M,B>,state:U)
[INFO] [stdout] 44 | |         -> Result<ModelGroupTrainingRecord<B,M,S,R,G,(FullyShardedWeightedAccumulationContract<B>,U)>,RecorderError> {
[INFO] [stdout]    | |____________________________________________________________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 1m 04s
[INFO] running `Command { std: "docker" "inspect" "30020d9057394ed3d1d65dd9fc3d0845e450bbe076fa89691115559f932ea3c6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "30020d9057394ed3d1d65dd9fc3d0845e450bbe076fa89691115559f932ea3c6" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]    Compiling syn v3.0.4
[INFO] [stderr]    Compiling futures-lite v2.6.1
[INFO] [stderr]    Compiling indexmap v2.14.1
[INFO] [stderr]    Compiling rstest_macros v0.26.1
[INFO] [stderr]    Compiling regex-automata v0.4.18
[INFO] [stderr]    Compiling relative-path v1.9.3
[INFO] [stderr]    Compiling futures-timer v3.0.4
[INFO] [stderr]    Compiling toml_edit v0.25.13+spec-1.1.0
[INFO] [stderr]    Compiling proc-macro-crate v3.5.0
[INFO] [stderr]    Compiling regex v1.13.1
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]    Compiling bytemuck_derive v1.12.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.20
[INFO] [stderr]    Compiling futures-macro v0.3.34
[INFO] [stderr]    Compiling bytemuck v1.25.2
[INFO] [stderr]    Compiling futures-util v0.3.34
[INFO] [stderr]    Compiling thiserror v2.0.20
[INFO] [stderr]    Compiling darling_core v0.21.3
[INFO] [stderr]    Compiling zerocopy-derive v0.8.56
[INFO] [stderr]    Compiling derive-new v0.7.0
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]    Compiling ruda-model-codegen v0.21.1
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]    Compiling zerocopy v0.8.56
[INFO] [stderr]    Compiling smallvec v1.15.2
[INFO] [stderr]    Compiling bincode v2.0.1
[INFO] [stderr]    Compiling rmp-serde v1.3.1
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling derive_more v2.1.1
[INFO] [stderr]    Compiling ruda-model-macros v0.21.1
[INFO] [stderr]    Compiling darling_macro v0.21.3
[INFO] [stderr]    Compiling darling v0.21.3
[INFO] [stderr]    Compiling enumset_derive v0.15.0
[INFO] [stderr]    Compiling rstest v0.26.1
[INFO] [stderr]    Compiling enumset v1.1.14
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling ruda-core v0.1.10
[INFO] [stderr]    Compiling ruDNN v0.1.97
[INFO] [stderr]    Compiling ruda-tensor-config v0.21.8
[INFO] [stderr]    Compiling ruda-tensor v0.21.70
[INFO] [stderr]    Compiling ruda-model v0.21.59
[INFO] [stderr]    Compiling ruda-optim v0.21.66 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `alloc::vec`
[INFO] [stdout]  --> src/optim/lbfgs/line_search.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use alloc::vec;
[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: `recovery::*`
[INFO] [stdout]   --> src/optim/muon/grouped/fully_sharded.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use recovery::*;
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `ruda_nn`
[INFO] [stdout]    --> src/optim/adagrad.rs:198:9
[INFO] [stdout]     |
[INFO] [stdout] 198 |     use ruda_nn::{Linear, LinearConfig, LinearRecord};
[INFO] [stdout]     |         ^^^^^^^ use of unresolved module or unlinked crate `ruda_nn`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `ruda_nn`, use `cargo add ruda_nn` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `ruda_nn`
[INFO] [stdout]    --> src/optim/adam.rs:236:9
[INFO] [stdout]     |
[INFO] [stdout] 236 |     use ruda_nn::{Linear, LinearConfig, LinearRecord};
[INFO] [stdout]     |         ^^^^^^^ use of unresolved module or unlinked crate `ruda_nn`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `ruda_nn`, use `cargo add ruda_nn` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `ruda_nn`
[INFO] [stdout]    --> src/optim/adamw.rs:249:9
[INFO] [stdout]     |
[INFO] [stdout] 249 |     use ruda_nn::{Linear, LinearConfig, LinearRecord};
[INFO] [stdout]     |         ^^^^^^^ use of unresolved module or unlinked crate `ruda_nn`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `ruda_nn`, use `cargo add ruda_nn` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `ruda_nn`
[INFO] [stdout]    --> src/optim/adan.rs:236:9
[INFO] [stdout]     |
[INFO] [stdout] 236 |     use ruda_nn::{Linear, LinearConfig, LinearRecord};
[INFO] [stdout]     |         ^^^^^^^ use of unresolved module or unlinked crate `ruda_nn`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `ruda_nn`, use `cargo add ruda_nn` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `ruda_nn`
[INFO] [stdout]    --> src/optim/grad_accum.rs:170:9
[INFO] [stdout]     |
[INFO] [stdout] 170 |     use ruda_nn::{Linear, LinearConfig};
[INFO] [stdout]     |         ^^^^^^^ use of unresolved module or unlinked crate `ruda_nn`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `ruda_nn`, use `cargo add ruda_nn` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `ruda_nn`
[INFO] [stdout]    --> src/optim/fp32_master.rs:196:9
[INFO] [stdout]     |
[INFO] [stdout] 196 |     use ruda_nn::LinearConfig;
[INFO] [stdout]     |         ^^^^^^^ use of unresolved module or unlinked crate `ruda_nn`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `ruda_nn`, use `cargo add ruda_nn` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `ruda_nn`
[INFO] [stdout]    --> src/optim/grads.rs:231:9
[INFO] [stdout]     |
[INFO] [stdout] 231 |     use ruda_nn::{Linear, LinearConfig};
[INFO] [stdout]     |         ^^^^^^^ use of unresolved module or unlinked crate `ruda_nn`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `ruda_nn`, use `cargo add ruda_nn` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `ruda_nn`
[INFO] [stdout]  --> src/optim/lbfgs/tests.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use ruda_nn::{Linear, LinearConfig, LinearRecord};
[INFO] [stdout]   |     ^^^^^^^ use of unresolved module or unlinked crate `ruda_nn`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `ruda_nn`, use `cargo add ruda_nn` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `ruda_nn`
[INFO] [stdout]  --> src/optim/muon/tests.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ruda_nn::{Linear, LinearConfig, LinearRecord};
[INFO] [stdout]   |     ^^^^^^^ use of unresolved module or unlinked crate `ruda_nn`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `ruda_nn`, use `cargo add ruda_nn` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `ruda_nn`
[INFO] [stdout]    --> src/optim/rmsprop.rs:365:9
[INFO] [stdout]     |
[INFO] [stdout] 365 |     use ruda_nn::{Linear, LinearConfig, LinearRecord};
[INFO] [stdout]     |         ^^^^^^^ use of unresolved module or unlinked crate `ruda_nn`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `ruda_nn`, use `cargo add ruda_nn` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `ruda_nn`
[INFO] [stdout]    --> src/optim/sgd.rs:118:9
[INFO] [stdout]     |
[INFO] [stdout] 118 |     use ruda_nn::{Linear, LinearConfig};
[INFO] [stdout]     |         ^^^^^^^ use of unresolved module or unlinked crate `ruda_nn`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `ruda_nn`, use `cargo add ruda_nn` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `ruda_nn`
[INFO] [stdout]  --> src/training/tests.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ruda_nn::Linear;
[INFO] [stdout]   |     ^^^^^^^ use of unresolved module or unlinked crate `ruda_nn`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `ruda_nn`, use `cargo add ruda_nn` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `ruda_nn` in this scope
[INFO] [stdout]    --> src/optim/lbfgs/tests.rs:165:20
[INFO] [stdout]     |
[INFO] [stdout] 165 |         let loss = ruda_nn::loss::MseLoss::new().forward(
[INFO] [stdout]     |                    ^^^^^^^ use of unresolved module or unlinked crate `ruda_nn`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `ruda_nn`, use `cargo add ruda_nn` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `ruda_nn` in this scope
[INFO] [stdout]    --> src/optim/lbfgs/tests.rs:168:13
[INFO] [stdout]     |
[INFO] [stdout] 168 |             ruda_nn::loss::Reduction::Sum,
[INFO] [stdout]     |             ^^^^^^^ use of unresolved module or unlinked crate `ruda_nn`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `ruda_nn`, use `cargo add ruda_nn` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `ruda_nn` in this scope
[INFO] [stdout]    --> src/optim/lbfgs/tests.rs:206:20
[INFO] [stdout]     |
[INFO] [stdout] 206 |         let loss = ruda_nn::loss::MseLoss::new().forward(
[INFO] [stdout]     |                    ^^^^^^^ use of unresolved module or unlinked crate `ruda_nn`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `ruda_nn`, use `cargo add ruda_nn` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `ruda_nn` in this scope
[INFO] [stdout]    --> src/optim/lbfgs/tests.rs:209:13
[INFO] [stdout]     |
[INFO] [stdout] 209 |             ruda_nn::loss::Reduction::Sum,
[INFO] [stdout]     |             ^^^^^^^ use of unresolved module or unlinked crate `ruda_nn`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `ruda_nn`, use `cargo add ruda_nn` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `alloc::vec`
[INFO] [stdout]  --> src/optim/lbfgs/line_search.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use alloc::vec;
[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: `recovery::*`
[INFO] [stdout]   --> src/optim/muon/grouped/fully_sharded.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use recovery::*;
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/optim/fully_sharded_accum/weighted.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub fn state(&self) -> &FullyShardedAccumulationState {self.continuation.state()}
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:2:9
[INFO] [stdout]    |
[INFO] [stdout]  2 | #![warn(missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/optim/fully_sharded_accum/weighted.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub fn global_weight(&self) -> Tensor<B::InnerBackend,1> {self.global_weight.clone()}
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/optim/fully_sharded_accum/hybrid_norm.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub parameter:ParamId,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/optim/fully_sharded_accum/hybrid_norm.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub logical_shape:Vec<usize>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/optim/fully_sharded_accum/hybrid_norm.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub shard_rank:u32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/optim/fully_sharded_accum/hybrid_norm.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub shard_world:u32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/optim/fully_sharded_accum/hybrid_norm.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub replicas:u32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/optim/fully_sharded_accum/placement.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub parameter:ParamId,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/optim/fully_sharded_accum/placement.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub logical_shape:Vec<usize>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/optim/fully_sharded_accum/placement.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub rank:u32,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/optim/fully_sharded_accum/placement.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub world_size:u32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/optim/fully_sharded_accum/migration.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub target:FullyShardedParameterPlacement,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/optim/fully_sharded_accum/migration.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub source_records:Vec<usize>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/optim/fully_sharded_accum/migration.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn new(target:FullyShardedParameterPlacement,source_records:Vec<usize>) -> Self {Self {target,source_records}}
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/optim/fully_sharded_elementwise/migration.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub target:FullyShardedParameterPlacement,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/optim/fully_sharded_elementwise/migration.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub source_records:Vec<usize>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/optim/fully_sharded_elementwise/migration.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn new(target:FullyShardedParameterPlacement,source_records:Vec<usize>) -> Self {Self {target,source_records}}
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/optim/fully_sharded_elementwise/recovery.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub module:M,
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/optim/fully_sharded_elementwise/recovery.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub gradients:GradientsParams,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/optim/fully_sharded_elementwise/recovery.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub error:FullyShardedElementwiseError<E>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/optim/choice.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     Left(L),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/optim/choice.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     Right(R),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/optim/choice.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 |     Left(L),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/optim/choice.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     Right(R),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/optim/choice/native_records.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 | /     pub fn wrap_right_record<B>(record:AdaptorRecord<R,B>) -> AdaptorRecord<Self,B>
[INFO] [stdout] 39 | |     where B:AutodiffBackend,L:SimpleOptimizer<B::InnerBackend>,R:SimpleOptimizer<B::InnerBackend> {
[INFO] [stdout]    | |_________________________________________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/optim/choice/native_records.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 | /     pub fn try_unwrap_right_record<B>(record:AdaptorRecord<Self,B>) -> Result<AdaptorRecord<R,B>,AdaptorRecord<Self,B>>
[INFO] [stdout] 49 | |     where B:AutodiffBackend,L:SimpleOptimizer<B::InnerBackend>,R:SimpleOptimizer<B::InnerBackend> {
[INFO] [stdout]    | |_________________________________________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/optim/choice/native_records.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 58 | /     pub fn wrap_right_records<B>(records:HashMap<ParamId,AdaptorRecord<R,B>>) -> HashMap<ParamId,AdaptorRecord<Self,B>>
[INFO] [stdout] 59 | |     where B:AutodiffBackend,L:SimpleOptimizer<B::InnerBackend>,R:SimpleOptimizer<B::InnerBackend> {
[INFO] [stdout]    | |_________________________________________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/optim/choice/native_records.rs:73:5
[INFO] [stdout]    |
[INFO] [stdout] 73 | /     pub fn try_unwrap_right_records<B>(records:HashMap<ParamId,AdaptorRecord<Self,B>>)
[INFO] [stdout] 74 | |         -> Result<HashMap<ParamId,AdaptorRecord<R,B>>,HashMap<ParamId,AdaptorRecord<Self,B>>>
[INFO] [stdout] 75 | |     where B:AutodiffBackend,L:SimpleOptimizer<B::InnerBackend>,R:SimpleOptimizer<B::InnerBackend> {
[INFO] [stdout]    | |_________________________________________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]   --> src/optim/muon/grouped.rs:27:21
[INFO] [stdout]    |
[INFO] [stdout] 27 | type MuonRecords<B: AutodiffBackend> = HashMap<ParamId, AdaptorRecord<Muon<<B as AutodiffBackend>::InnerBackend>, B>>;
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^ will not be checked at usage sites of the type alias
[INFO] [stdout]    |
[INFO] [stdout]    = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]            see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]    = note: `#[warn(type_alias_bounds)]` on by default
[INFO] [stdout] help: remove this bound
[INFO] [stdout]    |
[INFO] [stdout] 27 - type MuonRecords<B: AutodiffBackend> = HashMap<ParamId, AdaptorRecord<Muon<<B as AutodiffBackend>::InnerBackend>, B>>;
[INFO] [stdout] 27 + type MuonRecords<B> = HashMap<ParamId, AdaptorRecord<Muon<<B as AutodiffBackend>::InnerBackend>, B>>;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]   --> src/optim/muon/grouped.rs:28:21
[INFO] [stdout]    |
[INFO] [stdout] 28 | type AdamRecords<B: AutodiffBackend> = HashMap<ParamId, AdaptorRecord<AdamW, B>>;
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^ will not be checked at usage sites of the type alias
[INFO] [stdout]    |
[INFO] [stdout]    = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]            see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout] help: remove this bound
[INFO] [stdout]    |
[INFO] [stdout] 28 - type AdamRecords<B: AutodiffBackend> = HashMap<ParamId, AdaptorRecord<AdamW, B>>;
[INFO] [stdout] 28 + type AdamRecords<B> = HashMap<ParamId, AdaptorRecord<AdamW, B>>;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]   --> src/optim/muon/grouped/sharded.rs:16:22
[INFO] [stdout]    |
[INFO] [stdout] 16 | type ShardRecords<B: AutodiffBackend> = HashMap<ParamId,MuonShardedState<<B as AutodiffBackend>::InnerBackend>>;
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^ will not be checked at usage sites of the type alias
[INFO] [stdout]    |
[INFO] [stdout]    = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]            see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout] help: remove this bound
[INFO] [stdout]    |
[INFO] [stdout] 16 - type ShardRecords<B: AutodiffBackend> = HashMap<ParamId,MuonShardedState<<B as AutodiffBackend>::InnerBackend>>;
[INFO] [stdout] 16 + type ShardRecords<B> = HashMap<ParamId,MuonShardedState<<B as AutodiffBackend>::InnerBackend>>;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]  --> src/optim/muon/grouped/sharded/master.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | type Masters<B: AutodiffBackend> = HashMap<ParamId,Fp32MasterState<<B as AutodiffBackend>::InnerBackend,2,MuonShardedState<<B as Auto...
[INFO] [stdout]   |                 ^^^^^^^^^^^^^^^ will not be checked at usage sites of the type alias
[INFO] [stdout]   |
[INFO] [stdout]   = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]           see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout] help: remove this bound
[INFO] [stdout]   |
[INFO] [stdout] 8 - type Masters<B: AutodiffBackend> = HashMap<ParamId,Fp32MasterState<<B as AutodiffBackend>::InnerBackend,2,MuonShardedState<<B as AutodiffBackend>::InnerBackend>>>;
[INFO] [stdout] 8 + type Masters<B> = HashMap<ParamId,Fp32MasterState<<B as AutodiffBackend>::InnerBackend,2,MuonShardedState<<B as AutodiffBackend>::InnerBackend>>>;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]  --> src/optim/muon/grouped/sharded/master.rs:9:21
[INFO] [stdout]   |
[INFO] [stdout] 9 | type AdamMasters<B: AutodiffBackend> = HashMap<ParamId,AdaptorRecord<Fp32MasterOptimizer<AdamW>,B>>;
[INFO] [stdout]   |                     ^^^^^^^^^^^^^^^ will not be checked at usage sites of the type alias
[INFO] [stdout]   |
[INFO] [stdout]   = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]           see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout] help: remove this bound
[INFO] [stdout]   |
[INFO] [stdout] 9 - type AdamMasters<B: AutodiffBackend> = HashMap<ParamId,AdaptorRecord<Fp32MasterOptimizer<AdamW>,B>>;
[INFO] [stdout] 9 + type AdamMasters<B> = HashMap<ParamId,AdaptorRecord<Fp32MasterOptimizer<AdamW>,B>>;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]   --> src/optim/muon/grouped/fully_sharded.rs:14:15
[INFO] [stdout]    |
[INFO] [stdout] 14 | type States<B:AutodiffBackend> = HashMap<ParamId,FullyShardedMuonAdamWState<<B as AutodiffBackend>::InnerBackend>>;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^ will not be checked at usage sites of the type alias
[INFO] [stdout]    |
[INFO] [stdout]    = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]            see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout] help: remove this bound
[INFO] [stdout]    |
[INFO] [stdout] 14 - type States<B:AutodiffBackend> = HashMap<ParamId,FullyShardedMuonAdamWState<<B as AutodiffBackend>::InnerBackend>>;
[INFO] [stdout] 14 + type States<B> = HashMap<ParamId,FullyShardedMuonAdamWState<<B as AutodiffBackend>::InnerBackend>>;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]  --> src/optim/simple/adaptor/grouped.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     Configuration(&'static str),
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/optim/simple/adaptor/grouped.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     UnknownParameter(u64),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/optim/simple/adaptor/grouped.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     State(&'static str),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/optim/simple/adaptor/grouped.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 84 |     pub fn groups(&self) -> &[OptimizerAdaptor<O,M,B>] {&self.groups}
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/optim/simple/adaptor/grouped.rs:85:5
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub fn group_for(&self,parameter:ParamId) -> Option<usize> {self.routes.get(&parameter).copied()}
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/optim/simple/adaptor/grouped.rs:86:5
[INFO] [stdout]    |
[INFO] [stdout] 86 |     pub fn state_parameter_count(&self) -> usize {self.groups.iter().map(|group|group.records.len()).sum()}
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]  --> src/optim/simple/adaptor/placement.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     UnknownParameter(u64),
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/optim/simple/adaptor/placement.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     ParameterRank {parameter:u64,recorded:usize,actual:usize},
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/optim/simple/adaptor/placement.rs:10:20
[INFO] [stdout]    |
[INFO] [stdout] 10 |     ParameterRank {parameter:u64,recorded:usize,actual:usize},
[INFO] [stdout]    |                    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/optim/simple/adaptor/placement.rs:10:34
[INFO] [stdout]    |
[INFO] [stdout] 10 |     ParameterRank {parameter:u64,recorded:usize,actual:usize},
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/optim/simple/adaptor/placement.rs:10:49
[INFO] [stdout]    |
[INFO] [stdout] 10 |     ParameterRank {parameter:u64,recorded:usize,actual:usize},
[INFO] [stdout]    |                                                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/optim/simple/adaptor/placement.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     AliasPlacement(u64),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/optim/simple/adaptor/placement.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     Group(GroupedOptimizerError),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/training/model_state/groups/fully_sharded.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 42 | /     pub async fn capture_fully_sharded_weighted_async(model:&M,model_state:R,groups:G,scheduler:&S,
[INFO] [stdout] 43 | |         accumulator:&FullyShardedWeightedGradientsAccumulator<M,B>,state:U)
[INFO] [stdout] 44 | |         -> Result<ModelGroupTrainingRecord<B,M,S,R,G,(FullyShardedWeightedAccumulationContract<B>,U)>,RecorderError> {
[INFO] [stdout]    | |____________________________________________________________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `ruda_autodiff`
[INFO] [stdout]  --> examples/muon_training.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ruda_autodiff::Autodiff;
[INFO] [stdout]   |     ^^^^^^^^^^^^^ use of unresolved module or unlinked crate `ruda_autodiff`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `ruda_autodiff`, use `cargo add ruda_autodiff` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `ruda_nn`
[INFO] [stdout]  --> examples/muon_training.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ruda_nn::{Linear, LinearConfig};
[INFO] [stdout]   |     ^^^^^^^ use of unresolved module or unlinked crate `ruda_nn`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `ruda_nn`, use `cargo add ruda_nn` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `ruda_tensor_host` in this scope
[INFO] [stdout]   --> examples/muon_training.rs:15:14
[INFO] [stdout]    |
[INFO] [stdout] 15 | type Inner = ruda_tensor_host::Host;
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `ruda_tensor_host`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `ruda_tensor_host`, use `cargo add ruda_tensor_host` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `ruda-optim` (example "muon-training") due to 3 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0433]: cannot find module or crate `ruda_tensor_host` in this scope
[INFO] [stdout]   --> src/lib.rs:50:24
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub type TestBackend = ruda_tensor_host::Host;
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `ruda_tensor_host`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `ruda_tensor_host`, use `cargo add ruda_tensor_host` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `ruda_autodiff` in this scope
[INFO] [stdout]   --> src/lib.rs:70:32
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub type TestAutodiffBackend = ruda_autodiff::Autodiff<TestBackend>;
[INFO] [stdout]    |                                ^^^^^^^^^^^^^ use of unresolved module or unlinked crate `ruda_autodiff`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `ruda_autodiff`, use `cargo add ruda_autodiff` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `ruda-optim` (lib test) due to 18 previous errors; 2 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "30020d9057394ed3d1d65dd9fc3d0845e450bbe076fa89691115559f932ea3c6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "30020d9057394ed3d1d65dd9fc3d0845e450bbe076fa89691115559f932ea3c6", kill_on_drop: false }`
[INFO] [stdout] 30020d9057394ed3d1d65dd9fc3d0845e450bbe076fa89691115559f932ea3c6
