[INFO] fetching crate tenrso-kernels 0.1.0-rc.1...
[INFO] testing tenrso-kernels-0.1.0-rc.1 against 1.97.0-beta.6 for beta-1.98-1
[INFO] extracting crate tenrso-kernels 0.1.0-rc.1 into /workspace/builds/worker-2-tc1/source
[INFO] started tweaking crates.io crate tenrso-kernels 0.1.0-rc.1
[INFO] removed 0 missing examples
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate tenrso-kernels 0.1.0-rc.1
[INFO] tweaked toml for crates.io crate tenrso-kernels 0.1.0-rc.1 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate tenrso-kernels 0.1.0-rc.1 on toolchain 1.97.0-beta.6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate tenrso-kernels 0.1.0-rc.1 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.97.0-beta.6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded tenrso-core v0.1.0-rc.1
[INFO] [stderr]   Downloaded rand_distr v0.5.1
[INFO] [stderr]   Downloaded crossbeam-queue v0.3.12
[INFO] [stderr]   Downloaded oxicode_derive v0.1.0
[INFO] [stderr]   Downloaded crossbeam v0.8.4
[INFO] [stderr]   Downloaded ndarray-rand v0.16.0
[INFO] [stderr]   Downloaded alloca v0.4.0
[INFO] [stderr]   Downloaded criterion-plot v0.8.2
[INFO] [stderr]   Downloaded oxiarc-zstd v0.2.1
[INFO] [stderr]   Downloaded oxiarc-lz4 v0.2.1
[INFO] [stderr]   Downloaded oxiblas-ndarray v0.1.2
[INFO] [stderr]   Downloaded safe_arch v1.0.0
[INFO] [stderr]   Downloaded oxiarc-core v0.2.1
[INFO] [stderr]   Downloaded oxiblas-matrix v0.1.2
[INFO] [stderr]   Downloaded oxiblas-core v0.1.2
[INFO] [stderr]   Downloaded wide v1.1.1
[INFO] [stderr]   Downloaded oxicode v0.1.1
[INFO] [stderr]   Downloaded criterion v0.8.2
[INFO] [stderr]   Downloaded oxiblas-blas v0.1.2
[INFO] [stderr]   Downloaded oxiblas-lapack v0.1.2
[INFO] [stderr]   Downloaded scirs2-linalg v0.3.0
[INFO] [stderr]   Downloaded scirs2-core v0.3.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/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:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] c499679d7dce947a5dd1021ad4d9ebf29ace0ef171635e7d86313e90fbc30cc9
[INFO] running `Command { std: "docker" "start" "c499679d7dce947a5dd1021ad4d9ebf29ace0ef171635e7d86313e90fbc30cc9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c499679d7dce947a5dd1021ad4d9ebf29ace0ef171635e7d86313e90fbc30cc9", 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" "c499679d7dce947a5dd1021ad4d9ebf29ace0ef171635e7d86313e90fbc30cc9" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c499679d7dce947a5dd1021ad4d9ebf29ace0ef171635e7d86313e90fbc30cc9", 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" "c499679d7dce947a5dd1021ad4d9ebf29ace0ef171635e7d86313e90fbc30cc9" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling libm v0.2.16
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling zerocopy v0.8.40
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling matrixmultiply v0.3.10
[INFO] [stderr]    Compiling rawpointer v0.2.1
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling rand_core v0.9.5
[INFO] [stderr]    Compiling scirs2-core v0.3.0
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling num_cpus v1.17.0
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling crossbeam-queue v0.3.12
[INFO] [stderr]    Compiling crossbeam-channel v0.5.15
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling crossbeam v0.8.4
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling approx v0.5.1
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling uuid v1.22.0
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling bytemuck_derive v1.10.2
[INFO] [stderr]    Compiling zerocopy-derive v0.8.40
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling oxicode_derive v0.1.0
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling oxiarc-core v0.2.1
[INFO] [stderr]    Compiling bytemuck v1.25.0
[INFO] [stderr]    Compiling oxiarc-zstd v0.2.1
[INFO] [stderr]    Compiling oxiarc-lz4 v0.2.1
[INFO] [stderr]    Compiling safe_arch v1.0.0
[INFO] [stderr]    Compiling wide v1.1.1
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling oxicode v0.1.1
[INFO] [stderr]    Compiling oxiblas-core v0.1.2
[INFO] [stderr]    Compiling ndarray v0.17.2
[INFO] [stderr]    Compiling oxiblas-matrix v0.1.2
[INFO] [stderr]    Compiling oxiblas-blas v0.1.2
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling rand v0.9.2
[INFO] [stderr]    Compiling oxiblas-lapack v0.1.2
[INFO] [stderr]    Compiling rand_distr v0.5.1
[INFO] [stderr]    Compiling ndarray-rand v0.16.0
[INFO] [stderr]    Compiling oxiblas-ndarray v0.1.2
[INFO] [stderr]    Compiling tenrso-core v0.1.0-rc.1
[INFO] [stderr]    Compiling scirs2-linalg v0.3.0
[INFO] [stderr]    Compiling tenrso-kernels v0.1.0-rc.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 02s
[INFO] running `Command { std: "docker" "inspect" "c499679d7dce947a5dd1021ad4d9ebf29ace0ef171635e7d86313e90fbc30cc9", 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" "c499679d7dce947a5dd1021ad4d9ebf29ace0ef171635e7d86313e90fbc30cc9" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling bitflags v2.11.0
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling alloca v0.4.0
[INFO] [stderr]    Compiling clap_lex v1.0.0
[INFO] [stderr]    Compiling ciborium-io v0.2.2
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling wait-timeout v0.2.1
[INFO] [stderr]    Compiling quick-error v1.2.3
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling bit-vec v0.8.0
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling itertools v0.13.0
[INFO] [stderr]    Compiling clap_builder v4.5.60
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling bit-set v0.8.0
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling rand_xorshift v0.4.0
[INFO] [stderr]    Compiling page_size v0.6.0
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling unarray v0.1.4
[INFO] [stderr]    Compiling tempfile v3.26.0
[INFO] [stderr]    Compiling rusty-fork v0.3.1
[INFO] [stderr]    Compiling criterion-plot v0.8.2
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling proptest v1.10.0
[INFO] [stderr]    Compiling clap v4.5.60
[INFO] [stderr]    Compiling ndarray v0.17.2
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling criterion v0.8.2
[INFO] [stderr]    Compiling ndarray-rand v0.16.0
[INFO] [stderr]    Compiling oxiblas-ndarray v0.1.2
[INFO] [stderr]    Compiling scirs2-core v0.3.0
[INFO] [stderr]    Compiling scirs2-linalg v0.3.0
[INFO] [stderr]    Compiling tenrso-core v0.1.0-rc.1
[INFO] [stderr]    Compiling tenrso-kernels v0.1.0-rc.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2m 04s
[INFO] running `Command { std: "docker" "inspect" "c499679d7dce947a5dd1021ad4d9ebf29ace0ef171635e7d86313e90fbc30cc9", 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" "c499679d7dce947a5dd1021ad4d9ebf29ace0ef171635e7d86313e90fbc30cc9" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.31s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/tenrso_kernels-54e0394e09afc819)
[INFO] [stdout] 
[INFO] [stdout] running 271 tests
[INFO] [stdout] test contractions::tests::test_sum_over_modes_single ... ok
[INFO] [stdout] test contractions::tests::test_contract_tensors_matmul ... ok
[INFO] [stdout] test contractions::tests::test_sum_over_modes_multiple ... ok
[INFO] [stdout] test contractions::tests::test_contract_tensors_3d ... ok
[INFO] [stdout] test contractions::tests::test_tensor_inner_product ... ok
[INFO] [stdout] test contractions::tests::test_tensor_inner_product_ones ... ok
[INFO] [stdout] test contractions::tests::test_sum_over_modes_to_scalar ... ok
[INFO] [stdout] test contractions::tests::test_tensor_trace_3d ... ok
[INFO] [stdout] test contractions::tests::test_contract_error_dimension_mismatch ... ok
[INFO] [stdout] test contractions::tests::test_trace_error_dimension_mismatch ... ok
[INFO] [stdout] test contractions::tests::test_tensor_trace_matrix ... ok
[INFO] [stdout] test error::tests::test_dimension_mismatch_display ... ok
[INFO] [stdout] test error::tests::test_empty_input_display ... ok
[INFO] [stdout] test error::tests::test_incompatible_shapes_display ... ok
[INFO] [stdout] test error::tests::test_invalid_mode_display ... ok
[INFO] [stdout] test hadamard::tests::test_hadamard_basic ... ok
[INFO] [stdout] test hadamard::tests::test_hadamard_identity ... ok
[INFO] [stdout] test hadamard::tests::test_hadamard_inplace ... ok
[INFO] [stdout] test contractions::tests::test_trace_error_same_mode ... ok
[INFO] [stdout] test error::tests::test_invalid_tile_size_display ... ok
[INFO] [stdout] test error::tests::test_rank_mismatch_display ... ok
[INFO] [stdout] test hadamard::tests::test_hadamard_nd ... ok
[INFO] [stdout] test hadamard::tests::test_hadamard_zeros ... ok
[INFO] [stdout] test khatri_rao::blocked_tests::test_khatri_rao_blocked_small_matrix ... ok
[INFO] [stdout] test hadamard::tests::test_hadamard_single_element ... ok
[INFO] [stdout] test khatri_rao::blocked_tests::test_khatri_rao_blocked_matches_standard ... ok
[INFO] [stdout] test khatri_rao::blocked_tests::test_khatri_rao_blocked_various_block_sizes ... ok
[INFO] [stdout] test khatri_rao::tests::test_khatri_rao_basic ... ok
[INFO] [stdout] test hadamard::tests::test_hadamard_large ... ok
[INFO] [stdout] test khatri_rao::tests::test_khatri_rao_different_row_sizes ... ok
[INFO] [stdout] test khatri_rao::tests::test_khatri_rao_identity_pattern ... ok
[INFO] [stdout] test kronecker::tests::test_kronecker_basic ... ok
[INFO] [stdout] test khatri_rao::blocked_tests::test_khatri_rao_blocked_parallel ... ok
[INFO] [stdout] test kronecker::tests::test_kronecker_different_sizes ... ok
[INFO] [stdout] test khatri_rao::tests::test_khatri_rao_single_column ... ok
[INFO] [stdout] test kronecker::tests::test_kronecker_identity ... ok
[INFO] [stdout] test kronecker::tests::test_kronecker_single_element ... ok
[INFO] [stdout] test kronecker::tests::test_kronecker_parallel ... ok
[INFO] [stdout] test khatri_rao::tests::test_khatri_rao_parallel ... ok
[INFO] [stdout] test mttkrp::blocked_tests::test_mttkrp_blocked_small_tensor ... ok
[INFO] [stdout] test mttkrp::blocked_tests::test_mttkrp_blocked_various_tile_sizes ... ok
[INFO] [stdout] test kronecker::tests::test_kronecker_vector ... ok
[INFO] [stdout] test mttkrp::blocked_tests::test_mttkrp_blocked_matches_standard ... ok
[INFO] [stdout] test mttkrp::fused_tests::test_mttkrp_fused_all_modes ... ok
[INFO] [stdout] test mttkrp::blocked_tests::test_mttkrp_blocked_parallel ... ok
[INFO] [stdout] test mttkrp::fused_tests::test_mttkrp_fused_matches_standard ... ok
[INFO] [stdout] test mttkrp::fused_tests::test_mttkrp_fused_debug ... ok
[INFO] [stdout] test mttkrp::fused_tests::test_mttkrp_fused_parallel ... ok
[INFO] [stdout] test mttkrp::fused_tests::test_mttkrp_fused_rank1 ... ok
[INFO] [stdout] test mttkrp::fused_tests::test_mttkrp_fused_small_tensor ... ok
[INFO] [stdout] test mttkrp::fused_tests::test_mttkrp_manual_verification ... ok
[INFO] [stdout] test mttkrp::tests::test_mttkrp_all_modes ... ok
[INFO] [stdout] test mttkrp::tests::test_mttkrp_basic ... ok
[INFO] [stdout] test mttkrp::tests::test_khatri_rao_except_mode ... ok
[INFO] [stdout] test khatri_rao::blocked_tests::test_khatri_rao_blocked_zero_block_size - should panic ... ok
[INFO] [stdout] test khatri_rao::blocked_tests::test_khatri_rao_blocked_mismatched_columns - should panic ... ok
[INFO] [stdout] test mttkrp::tests::test_mttkrp_rank1 ... ok
[INFO] [stdout] test nmode::tests::test_nmode_product_3d ... ok
[INFO] [stdout] test nmode::tests::test_nmode_product_identity ... ok
[INFO] [stdout] test hadamard::tests::test_hadamard_mismatched_shapes - should panic ... ok
[INFO] [stdout] test khatri_rao::tests::test_khatri_rao_mismatched_columns - should panic ... ok
[INFO] [stdout] test nmode::tests::test_nmode_product_mode0 ... ok
[INFO] [stdout] test nmode::tests::test_nmode_product_size_mismatch - should panic ... ok
[INFO] [stdout] test mttkrp::tests::test_mttkrp_invalid_mode - should panic ... ok
[INFO] [stdout] test mttkrp::blocked_tests::test_mttkrp_blocked_zero_tile_size - should panic ... ok
[INFO] [stdout] test nmode::tests::test_unfold_fold_roundtrip ... ok
[INFO] [stdout] test nmode::ttt_tests::test_ttt_3d_contraction ... ok
[INFO] [stdout] test nmode::ttt_tests::test_ttt_identity_contraction ... ok
[INFO] [stdout] test nmode::ttt_tests::test_ttt_matrix_multiplication ... ok
[INFO] [stdout] test nmode::ttt_tests::test_ttt_complete_contraction ... ok
[INFO] [stdout] test nmode::ttt_tests::test_ttt_mismatched_mode_counts - should panic ... ok
[INFO] [stdout] test nmode::ttt_tests::test_ttt_multiple_contractions ... ok
[INFO] [stdout] test nmode::tests::test_nmode_products_seq ... ok
[INFO] [stdout] test nmode::ttt_tests::test_ttt_outer_product ... ok
[INFO] [stdout] test nmode::tucker_tests::test_tucker_operator_dimension_reduction ... ok
[INFO] [stdout] test nmode::tucker_tests::test_tucker_operator_empty ... ok
[INFO] [stdout] test nmode::tests::test_nmode_product_invalid_mode - should panic ... ok
[INFO] [stdout] test nmode::tucker_tests::test_tucker_operator_multiple_modes ... ok
[INFO] [stdout] test nmode::tucker_tests::test_tucker_operator_ordered ... ok
[INFO] [stdout] test nmode::tucker_tests::test_tucker_operator_invalid_mode - should panic ... ok
[INFO] [stdout] test nmode::tucker_tests::test_tucker_reconstruct_3d ... ok
[INFO] [stdout] test nmode::tucker_tests::test_tucker_operator_single_mode ... ok
[INFO] [stdout] test nmode::tucker_tests::test_tucker_reconstruct_identity ... ok
[INFO] [stdout] test nmode::tucker_tests::test_tucker_reconstruct_mismatched_dims - should panic ... ok
[INFO] [stdout] test nmode::tucker_tests::test_tucker_reconstruct_wrong_num_factors - should panic ... ok
[INFO] [stdout] test outer::tests::test_cp_reconstruct_mismatched_ranks - should panic ... ok
[INFO] [stdout] test outer::tests::test_cp_reconstruct_parallel_matches_serial ... ok
[INFO] [stdout] test outer::tests::test_cp_reconstruct_parallel_with_weights ... ok
[INFO] [stdout] test mttkrp::tests::test_mttkrp_mismatched_ranks - should panic ... ok
[INFO] [stdout] test nmode::ttt_tests::test_ttt_invalid_mode - should panic ... ok
[INFO] [stdout] test outer::tests::test_cp_reconstruct_rank2 ... ok
[INFO] [stdout] test outer::tests::test_cp_reconstruct_with_weights ... ok
[INFO] [stdout] test outer::tests::test_outer_product_2 ... ok
[INFO] [stdout] test outer::tests::test_outer_product_3d ... ok
[INFO] [stdout] test outer::tests::test_outer_product_empty - should panic ... ok
[INFO] [stdout] test outer::tests::test_outer_product_single_vector ... ok
[INFO] [stdout] test outer::tests::test_outer_product_weighted ... ok
[INFO] [stdout] test outer::tests::test_flat_to_multi_index ... ok
[INFO] [stdout] test nmode::ttt_tests::test_ttt_unsorted_modes - should panic ... ok
[INFO] [stdout] test nmode::ttt_tests::test_ttt_size_mismatch - should panic ... ok
[INFO] [stdout] test mttkrp::fused_tests::test_mttkrp_fused_invalid_mode - should panic ... ok
[INFO] [stdout] test mttkrp::tests::test_mttkrp_wrong_num_factors - should panic ... ok
[INFO] [stdout] test outer::tests::test_cp_reconstruct_rank1 ... ok
[INFO] [stdout] test outer::tests::test_cp_reconstruct_parallel_high_rank ... ok
[INFO] [stdout] test property_tests::test_covariance_self_equals_variance ... ok
[INFO] [stdout] test property_tests::test_frobenius_norm_properties ... ok
[INFO] [stdout] test property_tests::test_covariance_symmetric ... ok
[INFO] [stdout] test property_tests::test_covariance_bilinearity ... ok
[INFO] [stdout] test property_tests::test_correlation_linear_relationship ... ok
[INFO] [stdout] test property_tests::test_contraction_scalar_mult ... ok
[INFO] [stdout] test property_tests::test_hadamard_associative ... ok
[INFO] [stdout] test property_tests::test_correlation_bounds ... ok
[INFO] [stdout] test property_tests::test_hadamard_dimensions ... ok
[INFO] [stdout] test property_tests::test_correlation_self_is_one ... ok
[INFO] [stdout] test property_tests::test_hadamard_with_zeros ... ok
[INFO] [stdout] test property_tests::test_inner_product_symmetric ... ok
[INFO] [stdout] test property_tests::test_hadamard_distributive ... ok
[INFO] [stdout] test property_tests::test_hadamard_identity ... ok
[INFO] [stdout] test property_tests::test_khatri_rao_column_structure ... ok
[INFO] [stdout] test property_tests::test_khatri_rao_small_values ... ok
[INFO] [stdout] test property_tests::test_hadamard_mixed_signs ... ok
[INFO] [stdout] test property_tests::test_hadamard_commutative ... ok
[INFO] [stdout] test property_tests::test_khatri_rao_parallel_matches_serial ... ok
[INFO] [stdout] test property_tests::test_kronecker_parallel_matches_serial ... ok
[INFO] [stdout] test property_tests::test_correlation_symmetric ... ok
[INFO] [stdout] test property_tests::test_khatri_rao_dimensions ... ok
[INFO] [stdout] test property_tests::test_mean_of_constants ... ok
[INFO] [stdout] test property_tests::test_khatri_rao_with_ones ... ok
[INFO] [stdout] test property_tests::test_khatri_rao_with_zeros ... ok
[INFO] [stdout] test property_tests::test_kronecker_identity_left ... ok
[INFO] [stdout] test property_tests::test_median_constant ... ok
[INFO] [stdout] test property_tests::test_median_bounds ... ok
[INFO] [stdout] test property_tests::test_kurtosis_fisher_pearson_relation ... ok
[INFO] [stdout] test property_tests::test_min_max_bounds ... ok
[INFO] [stdout] test property_tests::test_kurtosis_scale_invariant ... ok
[INFO] [stdout] test property_tests::test_mttkrp_dimensions ... ok
[INFO] [stdout] test property_tests::test_kronecker_with_identity ... ok
[INFO] [stdout] test property_tests::test_mttkrp_normalized_factors ... ok
[INFO] [stdout] test property_tests::test_outer_product_sum_property ... ok
[INFO] [stdout] test property_tests::test_nmode_product_chain ... ok
[INFO] [stdout] test property_tests::test_nmode_product_non_negative ... ok
[INFO] [stdout] test property_tests::test_pnorm_ordering ... ok
[INFO] [stdout] test property_tests::test_mttkrp_ones ... ok
[INFO] [stdout] test property_tests::test_percentile_monotonicity ... ok
[INFO] [stdout] test property_tests::test_moments_translation_invariant ... ok
[INFO] [stdout] test property_tests::test_percentile_properties ... ok
[INFO] [stdout] test property_tests::test_sum_all_modes_equals_total ... ok
[INFO] [stdout] test randomized::tests::test_random_gaussian_shape ... ok
[INFO] [stdout] test randomized::tests::test_random_orthonormal_invalid_dimensions ... ok
[INFO] [stdout] test property_tests::test_skewness_symmetric ... ok
[INFO] [stdout] test property_tests::test_variance_of_constants ... ok
[INFO] [stdout] test randomized::tests::test_random_gaussian_statistics ... ok
[INFO] [stdout] test randomized::tests::test_random_sparse_shape ... ok
[INFO] [stdout] test randomized::tests::test_randomized_range_finder_excessive_rank ... ok
[INFO] [stdout] test property_tests::test_skewness_scale_invariant ... ok
[INFO] [stdout] test randomized::tests::test_randomized_range_finder_shape ... ok
[INFO] [stdout] test property_tests::test_kronecker_dimensions ... ok
[INFO] [stdout] test property_tests::test_nmode_product_identity ... ok
[INFO] [stdout] test reductions::tests::test_correlation_affine_relationship ... ok
[INFO] [stdout] test reductions::tests::test_correlation_bounds ... ok
[INFO] [stdout] test reductions::tests::test_correlation_constant_array ... ok
[INFO] [stdout] test reductions::tests::test_correlation_dimension_mismatch ... ok
[INFO] [stdout] test reductions::tests::test_correlation_perfect_negative ... ok
[INFO] [stdout] test reductions::tests::test_correlation_perfect_positive ... ok
[INFO] [stdout] test reductions::tests::test_correlation_self_is_one ... ok
[INFO] [stdout] test reductions::tests::test_correlation_uncorrelated ... ok
[INFO] [stdout] test reductions::tests::test_covariance_ddof_too_large ... ok
[INFO] [stdout] test reductions::tests::test_covariance_dimension_mismatch ... ok
[INFO] [stdout] test reductions::tests::test_covariance_multiple_modes ... ok
[INFO] [stdout] test reductions::tests::test_covariance_negative_correlation ... ok
[INFO] [stdout] test randomized::tests::test_random_sparse_density ... ok
[INFO] [stdout] test reductions::tests::test_covariance_perfect_correlation ... ok
[INFO] [stdout] test reductions::tests::test_covariance_self_is_variance ... ok
[INFO] [stdout] test reductions::tests::test_frobenius_norm ... ok
[INFO] [stdout] test reductions::tests::test_invalid_mode_error ... ok
[INFO] [stdout] test reductions::tests::test_kurtosis_fisher_vs_pearson ... ok
[INFO] [stdout] test reductions::tests::test_kurtosis_heavy_tails ... ok
[INFO] [stdout] test reductions::tests::test_kurtosis_constant_values ... ok
[INFO] [stdout] test reductions::tests::test_kurtosis_unbiased_sample_size_error ... ok
[INFO] [stdout] test reductions::tests::test_kurtosis_normal_like ... ok
[INFO] [stdout] test reductions::tests::test_mean_3d_tensor ... ok
[INFO] [stdout] test reductions::tests::test_max_along_modes ... ok
[INFO] [stdout] test reductions::tests::test_mean_along_modes ... ok
[INFO] [stdout] test reductions::tests::test_median_along_modes ... ok
[INFO] [stdout] test reductions::tests::test_median_3d_tensor ... ok
[INFO] [stdout] test reductions::tests::test_median_even_elements ... ok
[INFO] [stdout] test reductions::tests::test_percentile_along_modes ... ok
[INFO] [stdout] test reductions::tests::test_min_along_modes ... ok
[INFO] [stdout] test reductions::tests::test_percentile_interpolation ... ok
[INFO] [stdout] test reductions::tests::test_percentile_invalid_range ... ok
[INFO] [stdout] test reductions::tests::test_pnorm_l2 ... ok
[INFO] [stdout] test reductions::tests::test_pnorm_l1 ... ok
[INFO] [stdout] test reductions::tests::test_skewness_left_skewed ... ok
[INFO] [stdout] test reductions::tests::test_skewness_multiple_modes ... ok
[INFO] [stdout] test reductions::tests::test_skewness_symmetric_distribution ... ok
[INFO] [stdout] test reductions::tests::test_skewness_right_skewed ... ok
[INFO] [stdout] test reductions::tests::test_skewness_unbiased_sample_size_error ... ok
[INFO] [stdout] test reductions::tests::test_std_along_modes ... ok
[INFO] [stdout] test reductions::tests::test_sum_along_modes ... ok
[INFO] [stdout] test reductions::tests::test_variance_error_ddof_too_large ... ok
[INFO] [stdout] test tt_ops::tests::test_contract_core_with_v ... ok
[INFO] [stdout] test tt_ops::tests::test_determine_truncation_rank_all_equal ... ok
[INFO] [stdout] test tt_ops::tests::test_determine_truncation_rank_decaying ... ok
[INFO] [stdout] test tt_ops::tests::test_determine_truncation_rank_with_max_rank ... ok
[INFO] [stdout] test tt_ops::tests::test_determine_truncation_rank_zero_values ... ok
[INFO] [stdout] test tt_ops::tests::test_left_orthogonalize_core ... ok
[INFO] [stdout] test reductions::tests::test_variance_along_modes ... ok
[INFO] [stdout] test tt_ops::tests::test_svd_round_combined_constraints ... ignored, Wide matrix QR issue - needs refinement
[INFO] [stdout] test tt_ops::tests::test_right_orthogonalize_core ... ok
[INFO] [stdout] test tt_ops::tests::test_svd_round_max_rank_constraint ... ignored, Wide matrix QR issue - needs refinement
[INFO] [stdout] test tt_ops::tests::test_svd_round_preserves_boundary_ranks ... ignored, Wide matrix QR issue - needs refinement
[INFO] [stdout] test tt_ops::tests::test_svd_round_rank_reduction ... ignored, Full SVD-based rank reduction not yet implemented
[INFO] [stdout] test tt_ops::tests::test_svd_round_single_core_unchanged ... ok
[INFO] [stdout] test tt_ops::tests::test_svd_round_very_small_epsilon ... ignored, Wide matrix QR issue - needs refinement
[INFO] [stdout] test tt_ops::tests::test_svd_truncate_per_bond_ranks ... ignored, Wide matrix QR issue - needs refinement
[INFO] [stdout] test tt_ops::tests::test_tt_dot_orthogonal ... ok
[INFO] [stdout] test tt_ops::tests::test_tt_dot_self ... ok
[INFO] [stdout] test tt_ops::tests::test_tt_left_orthogonalize ... ok
[INFO] [stdout] test tt_ops::tests::test_tt_left_orthogonalize_single_core ... ok
[INFO] [stdout] test randomized::tests::test_random_orthonormal_orthogonality ... ok
[INFO] [stdout] test tt_ops::tests::test_tt_matvec_dimension_mismatch ... ok
[INFO] [stdout] test tt_ops::tests::test_tt_matvec_empty_cores ... ok
[INFO] [stdout] test tt_ops::tests::test_tt_matvec_wrong_core_size ... ok
[INFO] [stdout] test tt_ops::tests::test_tt_matvec_identity ... ok
[INFO] [stdout] test tt_ops::tests::test_tt_norm_ones ... ok
[INFO] [stdout] test tt_ops::tests::test_tt_norm_simple ... ok
[INFO] [stdout] test tt_ops::tests::test_tt_right_orthogonalize ... ok
[INFO] [stdout] test tt_ops::tests::test_tt_orthogonalize_preserves_norm ... ok
[INFO] [stdout] test tt_ops::tests::test_tt_round_empty_cores ... ok
[INFO] [stdout] test tt_ops::tests::test_tt_round_negative_epsilon ... ok
[INFO] [stdout] test tt_ops::tests::test_tt_right_orthogonalize_single_core ... ok
[INFO] [stdout] test tt_ops::tests::test_tt_round_ortho ... ok
[INFO] [stdout] test tt_ops::tests::test_tt_to_vector_empty ... ok
[INFO] [stdout] test tt_ops::tests::test_tt_to_vector_ones ... ok
[INFO] [stdout] test tt_ops::tests::test_tt_to_vector_simple ... ok
[INFO] [stdout] test randomized::tests::test_randomized_range_finder_orthogonality ... ok
[INFO] [stdout] test tt_ops::tests::test_tt_truncate ... ignored, Wide matrix QR handling needs refinement
[INFO] [stdout] test tt_ops::tests::test_validate_tt_cores_invalid_first ... ok
[INFO] [stdout] test tt_ops::tests::test_validate_tt_cores_invalid_last ... ok
[INFO] [stdout] test tt_ops::tests::test_validate_tt_cores_mismatch ... ok
[INFO] [stdout] test tt_ops::tests::test_tt_truncate_wrong_ranks_length ... ok
[INFO] [stdout] test utils::tests::test_approx_equal ... ok
[INFO] [stdout] test tt_ops::tests::test_validate_tt_cores_valid ... ok
[INFO] [stdout] test utils::tests::test_denormalize_factor ... ok
[INFO] [stdout] test utils::tests::test_khatri_rao_batch ... ok
[INFO] [stdout] test utils::tests::test_khatri_rao_batch_empty ... ok
[INFO] [stdout] test utils::tests::test_frobenius_norm ... ok
[INFO] [stdout] test utils::tests::test_mttkrp_all_modes_wrong_num_factors ... ok
[INFO] [stdout] test utils::tests::test_mttkrp_all_modes ... ok
[INFO] [stdout] test utils::tests::test_normalize_denormalize_roundtrip ... ok
[INFO] [stdout] test utils::tests::test_normalize_factor ... ok
[INFO] [stdout] test utils::tests::test_random_matrix_range ... ok
[INFO] [stdout] test utils::tests::test_normalize_factor_zero_column ... ok
[INFO] [stdout] test utils::tests::test_relative_error_different_shapes ... ok
[INFO] [stdout] test utils::tests::test_random_matrix_shape ... ok
[INFO] [stdout] test utils::tests::test_relative_error_identical ... ok
[INFO] [stdout] test utils::tests::test_sparsity_ratio_dense ... ok
[INFO] [stdout] test utils::tests::test_time_operation ... ok
[INFO] [stdout] test utils::tests::test_sparsity_ratio ... ok
[INFO] [stdout] test utils::tests::test_timing_result_new ... ok
[INFO] [stdout] test utils::tests::test_validate_factor_shapes_empty ... ok
[INFO] [stdout] test utils::tests::test_validate_factor_shapes ... ok
[INFO] [stdout] test utils::tests::test_validate_factor_shapes_wrong_mode_size ... ok
[INFO] [stdout] test tt_ops::tests::test_tt_round_with_epsilon ... ok
[INFO] [stdout] test utils::tests::test_validate_factor_shapes_rank_mismatch ... ok
[INFO] [stdout] test utils::tests::test_validate_factor_shapes_wrong_num_factors ... ok
[INFO] [stdout] test randomized::tests::test_random_orthonormal_shape ... ok
[INFO] [stdout] test tt_ops::tests::test_svd_round_epsilon_based ... ok
[INFO] [stdout] test property_tests::test_nmode_product_dimensions ... ok
[INFO] [stdout] test randomized::tests::test_randomized_svd_singular_values_sorted ... ok
[INFO] [stdout] test randomized::tests::test_randomized_svd_shapes ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 264 passed; 0 failed; 7 ignored; 0 measured; 0 filtered out; finished in 5.42s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/integration_tests.rs (/opt/rustwide/target/debug/deps/integration_tests-dec3a6af2a1c70e9)
[INFO] [stdout] 
[INFO] [stdout] running 31 tests
[INFO] [stdout] test test_contraction_workflow_matmul ... ok
[INFO] [stdout] test test_hadamard_with_tensors ... ok
[INFO] [stdout] test test_contraction_chain ... ok
[INFO] [stdout] test test_cp_decomposition_workflow_simulation ... ok
[INFO] [stdout] test test_contraction_with_nmode_product ... ok
[INFO] [stdout] test test_khatri_rao_for_decomposition ... ok
[INFO] [stdout] test test_error_analysis_workflow ... ok
[INFO] [stdout] test test_kronecker_structure ... ok
[INFO] [stdout] test test_inner_product_for_similarity ... ok
[INFO] [stdout] test test_large_hadamard_product ... ok
[INFO] [stdout] test test_large_tensor_pipeline ... ok
[INFO] [stdout] test test_mttkrp_with_factor_matrices ... ok
[INFO] [stdout] test test_nmode_product_with_densend ... ok
[INFO] [stdout] test test_norms_for_convergence_tracking ... ok
[INFO] [stdout] test test_permute_and_nmode ... ok
[INFO] [stdout] test test_pnorm_for_regularization ... ok
[INFO] [stdout] test test_reduction_after_mttkrp ... ok
[INFO] [stdout] test test_reduction_workflow_statistics ... ok
[INFO] [stdout] test test_reshape_and_operations ... ok
[INFO] [stdout] test test_tensor_analysis_pipeline ... ok
[INFO] [stdout] test test_tensor_workflow_basic ... ok
[INFO] [stdout] test test_tucker_decomposition_workflow_simulation ... ok
[INFO] [stdout] test test_unfold_with_kernel_operations ... ok
[INFO] [stdout] test test_validation_workflow ... ok
[INFO] [stdout] test test_large_nmode_product ... ok
[INFO] [stdout] test test_memory_efficiency_streaming ... ok
[INFO] [stdout] test test_mttkrp_large_tensor_100cubed ... ok
[INFO] [stdout] test test_large_tensor_contractions ... ok
[INFO] [stdout] test test_mttkrp_blocked_parallel_large_tensor ... ok
[INFO] [stdout] test test_large_khatri_rao_product ... ok
[INFO] [stdout] test test_large_tensor_reductions ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 31 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 14.82s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests tenrso_kernels
[INFO] [stdout] 
[INFO] [stdout] running 72 tests
[INFO] [stdout] test src/hadamard.rs - hadamard::hadamard_nd (line 93) ... ok
[INFO] [stdout] test src/contractions.rs - contractions::tensor_trace (line 402) ... ok
[INFO] [stdout] test src/khatri_rao.rs - khatri_rao::khatri_rao (line 41) ... ok
[INFO] [stdout] test src/contractions.rs - contractions::contract_tensors (line 53) ... ok
[INFO] [stdout] test src/hadamard.rs - hadamard::hadamard_inplace (line 133) ... ok
[INFO] [stdout] test src/contractions.rs - contractions::tensor_inner_product (line 342) ... ok
[INFO] [stdout] test src/hadamard.rs - hadamard::hadamard (line 40) ... ok
[INFO] [stdout] test src/contractions.rs - contractions::sum_over_modes (line 261) ... ok
[INFO] [stdout] test src/khatri_rao.rs - khatri_rao::khatri_rao_blocked_parallel (line 270) ... ok
[INFO] [stdout] test src/kronecker.rs - kronecker::kronecker (line 44) ... ok
[INFO] [stdout] test src/khatri_rao.rs - khatri_rao::khatri_rao_blocked (line 184) ... ok
[INFO] [stdout] test src/kronecker.rs - kronecker::kronecker_parallel (line 105) ... ok
[INFO] [stdout] test src/khatri_rao.rs - khatri_rao::khatri_rao_parallel (line 108) ... ok
[INFO] [stdout] test src/mttkrp.rs - mttkrp::mttkrp_blocked (line 374) ... ok
[INFO] [stdout] test src/mttkrp.rs - mttkrp::mttkrp (line 56) ... ok
[INFO] [stdout] test src/lib.rs - (line 30) ... ok
[INFO] [stdout] test src/mttkrp.rs - mttkrp::mttkrp_fused (line 766) ... ok
[INFO] [stdout] test src/nmode.rs - nmode::nmode_product (line 52) ... ok
[INFO] [stdout] test src/nmode.rs - nmode::tucker_operator_ordered (line 498) ... ok
[INFO] [stdout] test src/mttkrp.rs - mttkrp::mttkrp_fused_parallel (line 887) ... ok
[INFO] [stdout] test src/nmode.rs - nmode::tensor_tensor_product (line 810) ... ok
[INFO] [stdout] test src/mttkrp.rs - mttkrp::mttkrp_blocked_parallel (line 507) ... ok
[INFO] [stdout] test src/nmode.rs - nmode::nmode_products_seq (line 223) ... ok
[INFO] [stdout] test src/nmode.rs - nmode::tucker_operator (line 420) ... ok
[INFO] [stdout] test src/outer.rs - outer::outer_product (line 95) ... ok
[INFO] [stdout] test src/outer.rs - outer::cp_reconstruct (line 212) ... ok
[INFO] [stdout] test src/outer.rs - outer::outer_product_2 (line 37) ... ok
[INFO] [stdout] test src/outer.rs - outer::outer_product_weighted (line 159) ... ok
[INFO] [stdout] test src/nmode.rs - nmode::tucker_reconstruct (line 558) ... ok
[INFO] [stdout] test src/randomized.rs - randomized (line 43) ... ok
[INFO] [stdout] test src/outer.rs - outer::cp_reconstruct_parallel (line 308) ... ok
[INFO] [stdout] test src/randomized.rs - randomized::random_gaussian (line 96) ... ok
[INFO] [stdout] test src/randomized.rs - randomized::random_sparse (line 149) ... ok
[INFO] [stdout] test src/randomized.rs - randomized::randomized_range_finder (line 275) ... ok
[INFO] [stdout] test src/randomized.rs - randomized::random_orthonormal (line 208) ... ok
[INFO] [stdout] test src/randomized.rs - randomized::randomized_svd (line 359) ... ok
[INFO] [stdout] test src/reductions.rs - reductions::frobenius_norm_tensor (line 360) ... ok
[INFO] [stdout] test src/reductions.rs - reductions::correlation_along_modes (line 1317) ... ok
[INFO] [stdout] test src/reductions.rs - reductions::median_along_modes (line 598) ... ok
[INFO] [stdout] test src/reductions.rs - reductions::covariance_along_modes (line 1167) ... ok
[INFO] [stdout] test src/reductions.rs - reductions::max_along_modes (line 549) ... ok
[INFO] [stdout] test src/reductions.rs - reductions::min_along_modes (line 503) ... ok
[INFO] [stdout] test src/reductions.rs - reductions::mean_along_modes (line 112) ... ok
[INFO] [stdout] test src/reductions.rs - reductions::kurtosis_along_modes (line 935) ... ok
[INFO] [stdout] test src/reductions.rs - reductions::std_along_modes (line 317) ... ok
[INFO] [stdout] test src/reductions.rs - reductions::percentile_along_modes (line 651) ... ok
[INFO] [stdout] test src/tt_ops.rs - tt_ops (line 36) ... ok
[INFO] [stdout] test src/reductions.rs - reductions::variance_along_modes (line 187) ... ok
[INFO] [stdout] test src/reductions.rs - reductions::pnorm_along_modes (line 406) ... ok
[INFO] [stdout] test src/reductions.rs - reductions::skewness_along_modes (line 803) ... ok
[INFO] [stdout] test src/tt_ops.rs - tt_ops::tt_dot (line 809) ... ok
[INFO] [stdout] test src/tt_ops.rs - tt_ops::tt_left_orthogonalize (line 241) ... ok
[INFO] [stdout] test src/reductions.rs - reductions::sum_along_modes (line 62) ... ok
[INFO] [stdout] test src/tt_ops.rs - tt_ops::tt_left_orthogonalize_core (line 97) ... ok
[INFO] [stdout] test src/tt_ops.rs - tt_ops::tt_matvec (line 990) ... ok
[INFO] [stdout] test src/tt_ops.rs - tt_ops::tt_norm (line 696) ... ok
[INFO] [stdout] test src/tt_ops.rs - tt_ops::tt_right_orthogonalize (line 344) ... ok
[INFO] [stdout] test src/tt_ops.rs - tt_ops::tt_truncate (line 619) ... ok
[INFO] [stdout] test src/tt_ops.rs - tt_ops::tt_round (line 538) ... ok
[INFO] [stdout] test src/tt_ops.rs - tt_ops::tt_right_orthogonalize_core (line 149) ... ok
[INFO] [stdout] test src/tt_ops.rs - tt_ops::tt_to_vector (line 895) ... ok
[INFO] [stdout] test src/utils.rs - utils::frobenius_norm (line 100) ... ok
[INFO] [stdout] test src/utils.rs - utils::denormalize_factor (line 448) ... ok
[INFO] [stdout] test src/utils.rs - utils::mttkrp_all_modes (line 263) ... ok
[INFO] [stdout] test src/utils.rs - utils::khatri_rao_batch (line 331) ... ok
[INFO] [stdout] test src/utils.rs - utils::random_matrix (line 218) ... ok
[INFO] [stdout] test src/utils.rs - utils::approx_equal (line 157) ... ok
[INFO] [stdout] test src/utils.rs - utils::sparsity_ratio (line 186) ... ok
[INFO] [stdout] test src/utils.rs - utils::relative_error (line 125) ... ok
[INFO] [stdout] test src/utils.rs - utils::time_operation (line 56) ... ok
[INFO] [stdout] test src/utils.rs - utils::normalize_factor (line 382) ... ok
[INFO] [stdout] test src/utils.rs - utils::validate_factor_shapes (line 502) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 72 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 41.72s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "c499679d7dce947a5dd1021ad4d9ebf29ace0ef171635e7d86313e90fbc30cc9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c499679d7dce947a5dd1021ad4d9ebf29ace0ef171635e7d86313e90fbc30cc9", kill_on_drop: false }`
[INFO] [stdout] c499679d7dce947a5dd1021ad4d9ebf29ace0ef171635e7d86313e90fbc30cc9
