[INFO] fetching crate office-rs 0.1.1...
[INFO] testing office-rs-0.1.1 against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-7
[INFO] extracting crate office-rs 0.1.1 into /workspace/builds/worker-2-tc1/source
[INFO] started tweaking crates.io crate office-rs 0.1.1
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate office-rs 0.1.1
[INFO] tweaked toml for crates.io crate office-rs 0.1.1 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate office-rs 0.1.1 on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate office-rs 0.1.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" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded ppmd-rust v1.2.1
[INFO] [stderr]   Downloaded liblzma v0.4.2
[INFO] [stderr]   Downloaded zip v4.3.0
[INFO] [stderr]   Downloaded libbz2-rs-sys v0.2.1
[INFO] [stderr]   Downloaded deflate64 v0.1.9
[INFO] [stderr]   Downloaded quick-xml v0.38.0
[INFO] [stderr]   Downloaded liblzma-sys v0.4.4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 057f81429f0991e5cb70b0603df6d04ab93e26ed3e7e40c2941d7cd47ba6c918
[INFO] running `Command { std: "docker" "start" "-a" "057f81429f0991e5cb70b0603df6d04ab93e26ed3e7e40c2941d7cd47ba6c918", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "057f81429f0991e5cb70b0603df6d04ab93e26ed3e7e40c2941d7cd47ba6c918", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "057f81429f0991e5cb70b0603df6d04ab93e26ed3e7e40c2941d7cd47ba6c918", kill_on_drop: false }`
[INFO] [stdout] 057f81429f0991e5cb70b0603df6d04ab93e26ed3e7e40c2941d7cd47ba6c918
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9a45d22e64322cc673bac982b9321ceefa9d8a74125e9c637381cfcf00ce689f
[INFO] running `Command { std: "docker" "start" "-a" "9a45d22e64322cc673bac982b9321ceefa9d8a74125e9c637381cfcf00ce689f", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.174
[INFO] [stderr]    Compiling cfg-if v1.0.1
[INFO] [stderr]    Compiling powerfmt v0.2.0
[INFO] [stderr]    Compiling memchr v2.7.5
[INFO] [stderr]    Compiling bumpalo v3.19.0
[INFO] [stderr]    Compiling simd-adler32 v0.3.7
[INFO] [stderr]    Compiling num-conv v0.1.0
[INFO] [stderr]    Compiling serde_json v1.0.141
[INFO] [stderr]    Compiling time-core v0.1.4
[INFO] [stderr]    Compiling libbz2-rs-sys v0.2.1
[INFO] [stderr]    Compiling hashbrown v0.15.4
[INFO] [stderr]    Compiling deflate64 v0.1.9
[INFO] [stderr]    Compiling syn v2.0.104
[INFO] [stderr]    Compiling inout v0.1.4
[INFO] [stderr]    Compiling ppmd-rust v1.2.1
[INFO] [stderr]    Compiling hmac v0.12.1
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling cipher v0.4.4
[INFO] [stderr]    Compiling pbkdf2 v0.12.2
[INFO] [stderr]    Compiling sha1 v0.10.6
[INFO] [stderr]    Compiling constant_time_eq v0.3.1
[INFO] [stderr]    Compiling flate2 v1.1.2
[INFO] [stderr]    Compiling aes v0.8.4
[INFO] [stderr]    Compiling deranged v0.4.0
[INFO] [stderr]    Compiling zopfli v0.8.2
[INFO] [stderr]    Compiling bzip2 v0.6.0
[INFO] [stderr]    Compiling time v0.3.41
[INFO] [stderr]    Compiling indexmap v2.10.0
[INFO] [stderr]    Compiling quick-xml v0.38.0
[INFO] [stderr]    Compiling jobserver v0.1.33
[INFO] [stderr]    Compiling getrandom v0.3.3
[INFO] [stderr]    Compiling cc v1.2.30
[INFO] [stderr]    Compiling zstd-sys v2.0.15+zstd.1.5.7
[INFO] [stderr]    Compiling liblzma-sys v0.4.4
[INFO] [stderr]    Compiling liblzma v0.4.2
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling zeroize_derive v1.4.2
[INFO] [stderr]    Compiling thiserror-impl v2.0.12
[INFO] [stderr]    Compiling zeroize v1.8.1
[INFO] [stderr]    Compiling thiserror v2.0.12
[INFO] [stderr]    Compiling zstd-safe v7.2.4
[INFO] [stderr]    Compiling zstd v0.13.3
[INFO] [stderr]    Compiling zip v4.3.0
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling chrono v0.4.41
[INFO] [stderr]    Compiling office-rs v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around closure body
[INFO] [stdout]    --> src/common/xml_utils.rs:367:30
[INFO] [stdout]     |
[INFO] [stdout] 367 |         name.chars().all(|c| (c.is_alphanumeric() || c == '_' || c == '-' || c == '.'))
[INFO] [stdout]     |                              ^                                                       ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 367 -         name.chars().all(|c| (c.is_alphanumeric() || c == '_' || c == '-' || c == '.'))
[INFO] [stdout] 367 +         name.chars().all(|c| c.is_alphanumeric() || c == '_' || c == '-' || c == '.')
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ErrorMonitor` and `ErrorStats`
[INFO] [stdout]   --> src/error/mod.rs:18:30
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::error::monitor::{ ErrorMonitor, ErrorStats };
[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: `crate::OfficeError`
[INFO] [stdout]  --> src/error/code.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::OfficeError;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `CellReference`
[INFO] [stdout]  --> src/xlsx/formulas/formula_calculator.rs:6:26
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::xlsx::cell::{ CellReference, CellValue };
[INFO] [stdout]   |                          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `CellValue`
[INFO] [stdout]  --> src/xlsx/formulas/formula_manager.rs:6:41
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::xlsx::cell::{ CellReference, CellValue };
[INFO] [stdout]   |                                         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CellType` and `WorksheetProperties`
[INFO] [stdout]   --> src/xlsx/reader.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     CellType,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     WorksheetProperties,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/xlsx/reader.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `xml::*`
[INFO] [stdout]  --> src/xlsx/styles/mod.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub use xml::*;
[INFO] [stdout]   |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/error/mod.rs:353:17
[INFO] [stdout]     |
[INFO] [stdout] 352 |                 todo!("Implement fallback logic");
[INFO] [stdout]     |                 --------------------------------- any code following this expression is unreachable
[INFO] [stdout] 353 |                 Ok(())
[INFO] [stdout]     |                 ^^^^^^ unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `error`
[INFO] [stdout]   --> src/error/monitor.rs:88:44
[INFO] [stdout]    |
[INFO] [stdout] 88 |     pub async fn record_error_async(&self, error: &OfficeError) {
[INFO] [stdout]    |                                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_error`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `category`
[INFO] [stdout]    --> src/error/monitor.rs:107:39
[INFO] [stdout]     |
[INFO] [stdout] 107 |     pub fn set_error_threshold(&self, category: ErrorCategory, threshold: u64) {
[INFO] [stdout]     |                                       ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_category`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `threshold`
[INFO] [stdout]    --> src/error/monitor.rs:107:64
[INFO] [stdout]     |
[INFO] [stdout] 107 |     pub fn set_error_threshold(&self, category: ErrorCategory, threshold: u64) {
[INFO] [stdout]     |                                                                ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_threshold`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `duration`
[INFO] [stdout]    --> src/error/monitor.rs:131:34
[INFO] [stdout]     |
[INFO] [stdout] 131 |     pub fn analyze_trends(&self, duration: Duration) -> TrendAnalysis {
[INFO] [stdout]     |                                  ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_duration`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `error`
[INFO] [stdout]    --> src/error/monitor.rs:137:35
[INFO] [stdout]     |
[INFO] [stdout] 137 |     pub fn generate_report(&self, error: &OfficeError) -> ErrorReport {
[INFO] [stdout]     |                                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_error`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `format`
[INFO] [stdout]    --> src/error/monitor.rs:143:39
[INFO] [stdout]     |
[INFO] [stdout] 143 |     pub fn export_stats_report(&self, format: ReportFormat) -> Vec<u8> {
[INFO] [stdout]     |                                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_format`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/xlsx/formulas/formula_calculator.rs:70:30
[INFO] [stdout]    |
[INFO] [stdout] 70 |             CellValue::Error(e) => FormulaValue::Error(FormulaError::ValueError),
[INFO] [stdout]    |                              ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `properties`
[INFO] [stdout]   --> src/xlsx/reader.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |         let properties = self.parse_workbook_properties(workbook_xml)?;
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_properties`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `total_uncompressed_size` is never read
[INFO] [stdout]    --> src/common/zip_utils.rs:138:5
[INFO] [stdout]     |
[INFO] [stdout] 134 | pub struct ZipReader<R: Read + Seek> {
[INFO] [stdout]     |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 138 |     total_uncompressed_size: u64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `timestamp`, `error`, `stack_trace`, `system_info`, and `context` are never read
[INFO] [stdout]   --> src/error/monitor.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct ErrorReport {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 20 |     timestamp: SystemTime,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 21 |     error: OfficeError,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 22 |     stack_trace: String,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 23 |     system_info: SystemInfo,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 24 |     context: ErrorContext,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `cache` is never read
[INFO] [stdout]    --> src/xlsx/formulas/mod.rs:165:5
[INFO] [stdout]     |
[INFO] [stdout] 159 | pub struct FormulaCalculator {
[INFO] [stdout]     |            ----------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 165 |     cache: HashMap<String, FormulaValue>,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_calculation_order` is never used
[INFO] [stdout]    --> src/xlsx/formulas/formula_manager.rs:121:8
[INFO] [stdout]     |
[INFO] [stdout]  23 | impl FormulaManager {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 121 |     fn get_calculation_order(&self) -> Result<Vec<CellReference>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `fgColor` should have a snake case name
[INFO] [stdout]    --> src/xlsx/styles/xml.rs:146:21
[INFO] [stdout]     |
[INFO] [stdout] 146 |             let mut fgColor = XmlElement::new("fgColor");
[INFO] [stdout]     |                     ^^^^^^^ help: convert the identifier to snake case: `fg_color`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `bgColor` should have a snake case name
[INFO] [stdout]    --> src/xlsx/styles/xml.rs:153:21
[INFO] [stdout]     |
[INFO] [stdout] 153 |             let mut bgColor = XmlElement::new("bgColor");
[INFO] [stdout]     |                     ^^^^^^^ help: convert the identifier to snake case: `bg_color`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 28.76s
[INFO] running `Command { std: "docker" "inspect" "9a45d22e64322cc673bac982b9321ceefa9d8a74125e9c637381cfcf00ce689f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9a45d22e64322cc673bac982b9321ceefa9d8a74125e9c637381cfcf00ce689f", kill_on_drop: false }`
[INFO] [stdout] 9a45d22e64322cc673bac982b9321ceefa9d8a74125e9c637381cfcf00ce689f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c0022604e91156d263364cf1ac5dce503a8bf63462341318619d77fdcc961e60
[INFO] running `Command { std: "docker" "start" "-a" "c0022604e91156d263364cf1ac5dce503a8bf63462341318619d77fdcc961e60", kill_on_drop: false }`
[INFO] [stderr]    Compiling office-rs v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around closure body
[INFO] [stdout]    --> src/common/xml_utils.rs:367:30
[INFO] [stdout]     |
[INFO] [stdout] 367 |         name.chars().all(|c| (c.is_alphanumeric() || c == '_' || c == '-' || c == '.'))
[INFO] [stdout]     |                              ^                                                       ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 367 -         name.chars().all(|c| (c.is_alphanumeric() || c == '_' || c == '-' || c == '.'))
[INFO] [stdout] 367 +         name.chars().all(|c| c.is_alphanumeric() || c == '_' || c == '-' || c == '.')
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ErrorMonitor` and `ErrorStats`
[INFO] [stdout]   --> src/error/mod.rs:18:30
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::error::monitor::{ ErrorMonitor, ErrorStats };
[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: `crate::OfficeError`
[INFO] [stdout]  --> src/error/code.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::OfficeError;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `CellReference`
[INFO] [stdout]  --> src/xlsx/formulas/formula_calculator.rs:6:26
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::xlsx::cell::{ CellReference, CellValue };
[INFO] [stdout]   |                          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `CellValue`
[INFO] [stdout]  --> src/xlsx/formulas/formula_manager.rs:6:41
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::xlsx::cell::{ CellReference, CellValue };
[INFO] [stdout]   |                                         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CellType` and `WorksheetProperties`
[INFO] [stdout]   --> src/xlsx/reader.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     CellType,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     WorksheetProperties,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/xlsx/reader.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `xml::*`
[INFO] [stdout]  --> src/xlsx/styles/mod.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub use xml::*;
[INFO] [stdout]   |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/error/mod.rs:353:17
[INFO] [stdout]     |
[INFO] [stdout] 352 |                 todo!("Implement fallback logic");
[INFO] [stdout]     |                 --------------------------------- any code following this expression is unreachable
[INFO] [stdout] 353 |                 Ok(())
[INFO] [stdout]     |                 ^^^^^^ unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `error`
[INFO] [stdout]   --> src/error/monitor.rs:88:44
[INFO] [stdout]    |
[INFO] [stdout] 88 |     pub async fn record_error_async(&self, error: &OfficeError) {
[INFO] [stdout]    |                                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_error`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `category`
[INFO] [stdout]    --> src/error/monitor.rs:107:39
[INFO] [stdout]     |
[INFO] [stdout] 107 |     pub fn set_error_threshold(&self, category: ErrorCategory, threshold: u64) {
[INFO] [stdout]     |                                       ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_category`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `threshold`
[INFO] [stdout]    --> src/error/monitor.rs:107:64
[INFO] [stdout]     |
[INFO] [stdout] 107 |     pub fn set_error_threshold(&self, category: ErrorCategory, threshold: u64) {
[INFO] [stdout]     |                                                                ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_threshold`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `duration`
[INFO] [stdout]    --> src/error/monitor.rs:131:34
[INFO] [stdout]     |
[INFO] [stdout] 131 |     pub fn analyze_trends(&self, duration: Duration) -> TrendAnalysis {
[INFO] [stdout]     |                                  ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_duration`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `error`
[INFO] [stdout]    --> src/error/monitor.rs:137:35
[INFO] [stdout]     |
[INFO] [stdout] 137 |     pub fn generate_report(&self, error: &OfficeError) -> ErrorReport {
[INFO] [stdout]     |                                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_error`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `format`
[INFO] [stdout]    --> src/error/monitor.rs:143:39
[INFO] [stdout]     |
[INFO] [stdout] 143 |     pub fn export_stats_report(&self, format: ReportFormat) -> Vec<u8> {
[INFO] [stdout]     |                                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_format`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/xlsx/formulas/formula_calculator.rs:70:30
[INFO] [stdout]    |
[INFO] [stdout] 70 |             CellValue::Error(e) => FormulaValue::Error(FormulaError::ValueError),
[INFO] [stdout]    |                              ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `properties`
[INFO] [stdout]   --> src/xlsx/reader.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |         let properties = self.parse_workbook_properties(workbook_xml)?;
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_properties`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `total_uncompressed_size` is never read
[INFO] [stdout]    --> src/common/zip_utils.rs:138:5
[INFO] [stdout]     |
[INFO] [stdout] 134 | pub struct ZipReader<R: Read + Seek> {
[INFO] [stdout]     |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 138 |     total_uncompressed_size: u64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `timestamp`, `error`, `stack_trace`, `system_info`, and `context` are never read
[INFO] [stdout]   --> src/error/monitor.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct ErrorReport {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 20 |     timestamp: SystemTime,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 21 |     error: OfficeError,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 22 |     stack_trace: String,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 23 |     system_info: SystemInfo,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 24 |     context: ErrorContext,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `cache` is never read
[INFO] [stdout]    --> src/xlsx/formulas/mod.rs:165:5
[INFO] [stdout]     |
[INFO] [stdout] 159 | pub struct FormulaCalculator {
[INFO] [stdout]     |            ----------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 165 |     cache: HashMap<String, FormulaValue>,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_calculation_order` is never used
[INFO] [stdout]    --> src/xlsx/formulas/formula_manager.rs:121:8
[INFO] [stdout]     |
[INFO] [stdout]  23 | impl FormulaManager {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 121 |     fn get_calculation_order(&self) -> Result<Vec<CellReference>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `fgColor` should have a snake case name
[INFO] [stdout]    --> src/xlsx/styles/xml.rs:146:21
[INFO] [stdout]     |
[INFO] [stdout] 146 |             let mut fgColor = XmlElement::new("fgColor");
[INFO] [stdout]     |                     ^^^^^^^ help: convert the identifier to snake case: `fg_color`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `bgColor` should have a snake case name
[INFO] [stdout]    --> src/xlsx/styles/xml.rs:153:21
[INFO] [stdout]     |
[INFO] [stdout] 153 |             let mut bgColor = XmlElement::new("bgColor");
[INFO] [stdout]     |                     ^^^^^^^ help: convert the identifier to snake case: `bg_color`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around closure body
[INFO] [stdout]    --> src/common/xml_utils.rs:367:30
[INFO] [stdout]     |
[INFO] [stdout] 367 |         name.chars().all(|c| (c.is_alphanumeric() || c == '_' || c == '-' || c == '.'))
[INFO] [stdout]     |                              ^                                                       ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 367 -         name.chars().all(|c| (c.is_alphanumeric() || c == '_' || c == '-' || c == '.'))
[INFO] [stdout] 367 +         name.chars().all(|c| c.is_alphanumeric() || c == '_' || c == '-' || c == '.')
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Cursor`
[INFO] [stdout]    --> src/common/zip_utils.rs:693:9
[INFO] [stdout]     |
[INFO] [stdout] 693 |     use std::io::Cursor;
[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 imports: `ErrorMonitor` and `ErrorStats`
[INFO] [stdout]   --> src/error/mod.rs:18:30
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::error::monitor::{ ErrorMonitor, ErrorStats };
[INFO] [stdout]    |                              ^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::OfficeError`
[INFO] [stdout]  --> src/error/code.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::OfficeError;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `CellValue`
[INFO] [stdout]  --> src/xlsx/formulas/formula_manager.rs:6:41
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::xlsx::cell::{ CellReference, CellValue };
[INFO] [stdout]   |                                         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CellType` and `WorksheetProperties`
[INFO] [stdout]   --> src/xlsx/reader.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     CellType,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     WorksheetProperties,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/xlsx/reader.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `xml::*`
[INFO] [stdout]  --> src/xlsx/styles/mod.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub use xml::*;
[INFO] [stdout]   |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::xlsx::cell::CellReference`
[INFO] [stdout]    --> src/xlsx/worksheet.rs:313:9
[INFO] [stdout]     |
[INFO] [stdout] 313 |     use crate::xlsx::cell::CellReference;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/error/mod.rs:353:17
[INFO] [stdout]     |
[INFO] [stdout] 352 |                 todo!("Implement fallback logic");
[INFO] [stdout]     |                 --------------------------------- any code following this expression is unreachable
[INFO] [stdout] 353 |                 Ok(())
[INFO] [stdout]     |                 ^^^^^^ unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `error`
[INFO] [stdout]   --> src/error/monitor.rs:88:44
[INFO] [stdout]    |
[INFO] [stdout] 88 |     pub async fn record_error_async(&self, error: &OfficeError) {
[INFO] [stdout]    |                                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_error`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `category`
[INFO] [stdout]    --> src/error/monitor.rs:107:39
[INFO] [stdout]     |
[INFO] [stdout] 107 |     pub fn set_error_threshold(&self, category: ErrorCategory, threshold: u64) {
[INFO] [stdout]     |                                       ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_category`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `threshold`
[INFO] [stdout]    --> src/error/monitor.rs:107:64
[INFO] [stdout]     |
[INFO] [stdout] 107 |     pub fn set_error_threshold(&self, category: ErrorCategory, threshold: u64) {
[INFO] [stdout]     |                                                                ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_threshold`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `duration`
[INFO] [stdout]    --> src/error/monitor.rs:131:34
[INFO] [stdout]     |
[INFO] [stdout] 131 |     pub fn analyze_trends(&self, duration: Duration) -> TrendAnalysis {
[INFO] [stdout]     |                                  ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_duration`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `error`
[INFO] [stdout]    --> src/error/monitor.rs:137:35
[INFO] [stdout]     |
[INFO] [stdout] 137 |     pub fn generate_report(&self, error: &OfficeError) -> ErrorReport {
[INFO] [stdout]     |                                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_error`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `format`
[INFO] [stdout]    --> src/error/monitor.rs:143:39
[INFO] [stdout]     |
[INFO] [stdout] 143 |     pub fn export_stats_report(&self, format: ReportFormat) -> Vec<u8> {
[INFO] [stdout]     |                                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_format`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/xlsx/formulas/formula_calculator.rs:70:30
[INFO] [stdout]    |
[INFO] [stdout] 70 |             CellValue::Error(e) => FormulaValue::Error(FormulaError::ValueError),
[INFO] [stdout]    |                              ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/xlsx/formulas/formula_calculator.rs:950:13
[INFO] [stdout]     |
[INFO] [stdout] 950 |         let mut calculator = FormulaCalculator::new(provider);
[INFO] [stdout]     |             ----^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/xlsx/formulas/formula_calculator.rs:965:13
[INFO] [stdout]     |
[INFO] [stdout] 965 |         let mut calculator = FormulaCalculator::new(provider);
[INFO] [stdout]     |             ----^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/xlsx/formulas/formula_calculator.rs:980:13
[INFO] [stdout]     |
[INFO] [stdout] 980 |         let mut calculator = FormulaCalculator::new(provider);
[INFO] [stdout]     |             ----^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `properties`
[INFO] [stdout]   --> src/xlsx/reader.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |         let properties = self.parse_workbook_properties(workbook_xml)?;
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_properties`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `total_uncompressed_size` is never read
[INFO] [stdout]    --> src/common/zip_utils.rs:138:5
[INFO] [stdout]     |
[INFO] [stdout] 134 | pub struct ZipReader<R: Read + Seek> {
[INFO] [stdout]     |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 138 |     total_uncompressed_size: u64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `timestamp`, `error`, `stack_trace`, `system_info`, and `context` are never read
[INFO] [stdout]   --> src/error/monitor.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct ErrorReport {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 20 |     timestamp: SystemTime,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 21 |     error: OfficeError,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 22 |     stack_trace: String,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 23 |     system_info: SystemInfo,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 24 |     context: ErrorContext,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `cache` is never read
[INFO] [stdout]    --> src/xlsx/formulas/mod.rs:165:5
[INFO] [stdout]     |
[INFO] [stdout] 159 | pub struct FormulaCalculator {
[INFO] [stdout]     |            ----------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 165 |     cache: HashMap<String, FormulaValue>,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_calculation_order` is never used
[INFO] [stdout]    --> src/xlsx/formulas/formula_manager.rs:121:8
[INFO] [stdout]     |
[INFO] [stdout]  23 | impl FormulaManager {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 121 |     fn get_calculation_order(&self) -> Result<Vec<CellReference>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `shared_strings` and `shared_strings_map` are never read
[INFO] [stdout]    --> src/xlsx/writer.rs:504:9
[INFO] [stdout]     |
[INFO] [stdout] 503 |     struct TestXlsxWriter {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout] 504 |         shared_strings: Vec<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 505 |         shared_strings_map: HashMap<String, usize>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `fgColor` should have a snake case name
[INFO] [stdout]    --> src/xlsx/styles/xml.rs:146:21
[INFO] [stdout]     |
[INFO] [stdout] 146 |             let mut fgColor = XmlElement::new("fgColor");
[INFO] [stdout]     |                     ^^^^^^^ help: convert the identifier to snake case: `fg_color`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `bgColor` should have a snake case name
[INFO] [stdout]    --> src/xlsx/styles/xml.rs:153:21
[INFO] [stdout]     |
[INFO] [stdout] 153 |             let mut bgColor = XmlElement::new("bgColor");
[INFO] [stdout]     |                     ^^^^^^^ help: convert the identifier to snake case: `bg_color`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 4.31s
[INFO] running `Command { std: "docker" "inspect" "c0022604e91156d263364cf1ac5dce503a8bf63462341318619d77fdcc961e60", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c0022604e91156d263364cf1ac5dce503a8bf63462341318619d77fdcc961e60", kill_on_drop: false }`
[INFO] [stdout] c0022604e91156d263364cf1ac5dce503a8bf63462341318619d77fdcc961e60
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] a6a75d0fb44eaaaa57ce2b94b65f42affff9c9f9b596d8e978a5e7b32451c9f4
[INFO] running `Command { std: "docker" "start" "-a" "a6a75d0fb44eaaaa57ce2b94b65f42affff9c9f9b596d8e978a5e7b32451c9f4", kill_on_drop: false }`
[INFO] [stderr] warning: unnecessary parentheses around closure body
[INFO] [stderr]    --> src/common/xml_utils.rs:367:30
[INFO] [stderr]     |
[INFO] [stderr] 367 |         name.chars().all(|c| (c.is_alphanumeric() || c == '_' || c == '-' || c == '.'))
[INFO] [stderr]     |                              ^                                                       ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 367 -         name.chars().all(|c| (c.is_alphanumeric() || c == '_' || c == '-' || c == '.'))
[INFO] [stderr] 367 +         name.chars().all(|c| c.is_alphanumeric() || c == '_' || c == '-' || c == '.')
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `ErrorMonitor` and `ErrorStats`
[INFO] [stderr]   --> src/error/mod.rs:18:30
[INFO] [stderr]    |
[INFO] [stderr] 18 | use crate::error::monitor::{ ErrorMonitor, ErrorStats };
[INFO] [stderr]    |                              ^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::OfficeError`
[INFO] [stderr]  --> src/error/code.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use crate::OfficeError;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `CellReference`
[INFO] [stderr]  --> src/xlsx/formulas/formula_calculator.rs:6:26
[INFO] [stderr]   |
[INFO] [stderr] 6 | use crate::xlsx::cell::{ CellReference, CellValue };
[INFO] [stderr]   |                          ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `CellValue`
[INFO] [stderr]  --> src/xlsx/formulas/formula_manager.rs:6:41
[INFO] [stderr]   |
[INFO] [stderr] 6 | use crate::xlsx::cell::{ CellReference, CellValue };
[INFO] [stderr]   |                                         ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `CellType` and `WorksheetProperties`
[INFO] [stderr]   --> src/xlsx/reader.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 12 |     CellType,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 17 |     WorksheetProperties,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashMap`
[INFO] [stderr]   --> src/xlsx/reader.rs:19:5
[INFO] [stderr]    |
[INFO] [stderr] 19 | use std::collections::HashMap;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `xml::*`
[INFO] [stderr]  --> src/xlsx/styles/mod.rs:3:9
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub use xml::*;
[INFO] [stderr]   |         ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable expression
[INFO] [stderr]    --> src/error/mod.rs:353:17
[INFO] [stderr]     |
[INFO] [stderr] 352 |                 todo!("Implement fallback logic");
[INFO] [stderr]     |                 --------------------------------- any code following this expression is unreachable
[INFO] [stderr] 353 |                 Ok(())
[INFO] [stderr]     |                 ^^^^^^ unreachable expression
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `error`
[INFO] [stderr]   --> src/error/monitor.rs:88:44
[INFO] [stderr]    |
[INFO] [stderr] 88 |     pub async fn record_error_async(&self, error: &OfficeError) {
[INFO] [stderr]    |                                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_error`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `category`
[INFO] [stderr]    --> src/error/monitor.rs:107:39
[INFO] [stderr]     |
[INFO] [stderr] 107 |     pub fn set_error_threshold(&self, category: ErrorCategory, threshold: u64) {
[INFO] [stderr]     |                                       ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_category`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `threshold`
[INFO] [stderr]    --> src/error/monitor.rs:107:64
[INFO] [stderr]     |
[INFO] [stderr] 107 |     pub fn set_error_threshold(&self, category: ErrorCategory, threshold: u64) {
[INFO] [stderr]     |                                                                ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_threshold`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `duration`
[INFO] [stderr]    --> src/error/monitor.rs:131:34
[INFO] [stderr]     |
[INFO] [stderr] 131 |     pub fn analyze_trends(&self, duration: Duration) -> TrendAnalysis {
[INFO] [stderr]     |                                  ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_duration`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `error`
[INFO] [stderr]    --> src/error/monitor.rs:137:35
[INFO] [stderr]     |
[INFO] [stderr] 137 |     pub fn generate_report(&self, error: &OfficeError) -> ErrorReport {
[INFO] [stderr]     |                                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_error`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `format`
[INFO] [stderr]    --> src/error/monitor.rs:143:39
[INFO] [stderr]     |
[INFO] [stderr] 143 |     pub fn export_stats_report(&self, format: ReportFormat) -> Vec<u8> {
[INFO] [stderr]     |                                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_format`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]   --> src/xlsx/formulas/formula_calculator.rs:70:30
[INFO] [stderr]    |
[INFO] [stderr] 70 |             CellValue::Error(e) => FormulaValue::Error(FormulaError::ValueError),
[INFO] [stderr]    |                              ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `properties`
[INFO] [stderr]   --> src/xlsx/reader.rs:66:13
[INFO] [stderr]    |
[INFO] [stderr] 66 |         let properties = self.parse_workbook_properties(workbook_xml)?;
[INFO] [stderr]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_properties`
[INFO] [stderr] 
[INFO] [stderr] warning: field `total_uncompressed_size` is never read
[INFO] [stderr]    --> src/common/zip_utils.rs:138:5
[INFO] [stderr]     |
[INFO] [stderr] 134 | pub struct ZipReader<R: Read + Seek> {
[INFO] [stderr]     |            --------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 138 |     total_uncompressed_size: u64,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: fields `timestamp`, `error`, `stack_trace`, `system_info`, and `context` are never read
[INFO] [stderr]   --> src/error/monitor.rs:20:5
[INFO] [stderr]    |
[INFO] [stderr] 19 | pub struct ErrorReport {
[INFO] [stderr]    |            ----------- fields in this struct
[INFO] [stderr] 20 |     timestamp: SystemTime,
[INFO] [stderr]    |     ^^^^^^^^^
[INFO] [stderr] 21 |     error: OfficeError,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 22 |     stack_trace: String,
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr] 23 |     system_info: SystemInfo,
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr] 24 |     context: ErrorContext,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `cache` is never read
[INFO] [stderr]    --> src/xlsx/formulas/mod.rs:165:5
[INFO] [stderr]     |
[INFO] [stderr] 159 | pub struct FormulaCalculator {
[INFO] [stderr]     |            ----------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 165 |     cache: HashMap<String, FormulaValue>,
[INFO] [stderr]     |     ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `get_calculation_order` is never used
[INFO] [stderr]    --> src/xlsx/formulas/formula_manager.rs:121:8
[INFO] [stderr]     |
[INFO] [stderr]  23 | impl FormulaManager {
[INFO] [stderr]     | ------------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 121 |     fn get_calculation_order(&self) -> Result<Vec<CellReference>> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable `fgColor` should have a snake case name
[INFO] [stderr]    --> src/xlsx/styles/xml.rs:146:21
[INFO] [stderr]     |
[INFO] [stderr] 146 |             let mut fgColor = XmlElement::new("fgColor");
[INFO] [stderr]     |                     ^^^^^^^ help: convert the identifier to snake case: `fg_color`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable `bgColor` should have a snake case name
[INFO] [stderr]    --> src/xlsx/styles/xml.rs:153:21
[INFO] [stderr]     |
[INFO] [stderr] 153 |             let mut bgColor = XmlElement::new("bgColor");
[INFO] [stderr]     |                     ^^^^^^^ help: convert the identifier to snake case: `bg_color`
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::io::Cursor`
[INFO] [stderr]    --> src/common/zip_utils.rs:693:9
[INFO] [stderr]     |
[INFO] [stderr] 693 |     use std::io::Cursor;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `ErrorMonitor` and `ErrorStats`
[INFO] [stderr]   --> src/error/mod.rs:18:30
[INFO] [stderr]    |
[INFO] [stderr] 18 | use crate::error::monitor::{ ErrorMonitor, ErrorStats };
[INFO] [stderr]    |                              ^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::xlsx::cell::CellReference`
[INFO] [stderr]    --> src/xlsx/worksheet.rs:313:9
[INFO] [stderr]     |
[INFO] [stderr] 313 |     use crate::xlsx::cell::CellReference;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/xlsx/formulas/formula_calculator.rs:950:13
[INFO] [stderr]     |
[INFO] [stderr] 950 |         let mut calculator = FormulaCalculator::new(provider);
[INFO] [stderr]     |             ----^^^^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/xlsx/formulas/formula_calculator.rs:965:13
[INFO] [stderr]     |
[INFO] [stderr] 965 |         let mut calculator = FormulaCalculator::new(provider);
[INFO] [stderr]     |             ----^^^^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/xlsx/formulas/formula_calculator.rs:980:13
[INFO] [stderr]     |
[INFO] [stderr] 980 |         let mut calculator = FormulaCalculator::new(provider);
[INFO] [stderr]     |             ----^^^^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: fields `shared_strings` and `shared_strings_map` are never read
[INFO] [stderr]    --> src/xlsx/writer.rs:504:9
[INFO] [stderr]     |
[INFO] [stderr] 503 |     struct TestXlsxWriter {
[INFO] [stderr]     |            -------------- fields in this struct
[INFO] [stderr] 504 |         shared_strings: Vec<String>,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^
[INFO] [stderr] 505 |         shared_strings_map: HashMap<String, usize>,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `office-rs` (lib) generated 23 warnings (run `cargo fix --lib -p office-rs` to apply 16 suggestions)
[INFO] [stderr] warning: `office-rs` (lib test) generated 28 warnings (21 duplicates) (run `cargo fix --lib -p office-rs --tests` to apply 6 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.12s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/office_rs-c8dc0be71d69c7be)
[INFO] [stdout] 
[INFO] [stdout] running 64 tests
[INFO] [stdout] test common::tests::test_mime_type_detection ... ok
[INFO] [stdout] test common::types::tests::test_color_enum ... ok
[INFO] [stdout] test common::types::tests::test_font_size ... ok
[INFO] [stdout] test common::tests::test_path_normalization ... ok
[INFO] [stdout] test common::types::tests::test_page_size ... ok
[INFO] [stdout] test common::types::tests::test_length_unit_conversion ... ok
[INFO] [stdout] test common::types::tests::test_rgb_color ... ok
[INFO] [stdout] test common::types::tests::test_line_spacing ... ok
[INFO] [stdout] test common::types::tests::test_list_style ... ok
[INFO] [stdout] test common::types::tests::test_margin ... ok
[INFO] [stdout] test common::xml_utils::tests::test_xml_generation ... ok
[INFO] [stdout] test common::zip_utils::tests::test_zip_entry ... ok
[INFO] [stdout] test xlsx::cell::tests::test_cell_value_conversion ... ok
[INFO] [stdout] test xlsx::formulas::formula_calculator::tests::test_binary_operations ... ok
[INFO] [stdout] test tests::it_works ... ok
[INFO] [stdout] test common::xml_utils::tests::test_xml_parsing ... ok
[INFO] [stdout] test xlsx::formulas::formula_manager::tests::test_cache_manager ... ok
[INFO] [stdout] test xlsx::formulas::formula_calculator::tests::test_if_function ... ok
[INFO] [stdout] test xlsx::formulas::formula_manager::tests::test_formula_manager_dependencies ... ok
[INFO] [stdout] test common::types::tests::test_underline_style ... ok
[INFO] [stdout] test xlsx::formulas::formula_calculator::tests::test_sum_function ... ok
[INFO] [stdout] test xlsx::cell::tests::test_cell_reference_a1 ... ok
[INFO] [stdout] test common::xml_utils::tests::test_namespace_manager ... ok
[INFO] [stdout] test xlsx::formulas::tests::test_case_insensitive_boolean_constants ... ok
[INFO] [stdout] test xlsx::formulas::formula_calculator::tests::test_factorial ... ok
[INFO] [stdout] test xlsx::formulas::tests::test_compound_operators ... ok
[INFO] [stdout] test xlsx::formulas::tests::test_boolean_constants ... ok
[INFO] [stdout] test xlsx::formulas::tests::test_formula_value_conversions ... ok
[INFO] [stdout] test xlsx::formulas::tests::test_parse_cell_reference ... ok
[INFO] [stdout] test xlsx::formulas::tests::test_parse_function_call ... ok
[INFO] [stdout] test xlsx::formulas::tests::test_operator_spacing ... ok
[INFO] [stdout] test xlsx::formulas::tests::test_parse_simple_addition ... ok
[INFO] [stdout] test xlsx::formulas::formula_manager::tests::test_profiler ... ok
[INFO] [stdout] test xlsx::formulas::tests::test_is_cell_reference ... ok
[INFO] [stdout] test xlsx::formulas::tests::test_invalid_operator_combinations ... ok
[INFO] [stdout] test xlsx::formulas::tests::test_logical_and_operator ... ok
[INFO] [stdout] test xlsx::formulas::tests::test_tokenize_simple ... ok
[INFO] [stdout] test xlsx::formulas::tests::test_logical_or_operator ... ok
[INFO] [stdout] test common::types::tests::test_rgba_color ... ok
[INFO] [stdout] test common::types::tests::test_font_style ... ok
[INFO] [stdout] test xlsx::formulas::tests::test_mixed_logical_operations ... ok
[INFO] [stdout] test common::zip_utils::tests::test_memory_zip_creation ... ok
[INFO] [stdout] test xlsx::reader::tests::test_parse_cell_reference ... ok
[INFO] [stdout] test xlsx::styles::tests::test_color_constants ... ok
[INFO] [stdout] test xlsx::styles::tests::test_color_transparency ... ok
[INFO] [stdout] test xlsx::styles::tests::test_style_manager ... ok
[INFO] [stdout] test xlsx::workbook::tests::test_shared_strings ... ok
[INFO] [stdout] test xlsx::formulas::formula_manager::tests::test_formula_storage ... ok
[INFO] [stdout] test xlsx::workbook::tests::test_worksheet_management ... ok
[INFO] [stdout] test xlsx::styles::xml::tests::test_styles_xml ... ok
[INFO] [stdout] test xlsx::worksheet::tests::test_shared_strings ... ok
[INFO] [stdout] test xlsx::workbook::tests::test_worksheet_operations ... ok
[INFO] [stdout] test xlsx::workbook::tests::test_workbook_basic_operations ... ok
[INFO] [stdout] test xlsx::writer::tests::test_cell_reference ... ok
[INFO] [stdout] test xlsx::worksheet::tests::test_worksheet_a1_reference ... ok
[INFO] [stdout] test xlsx::worksheet::tests::test_worksheet_basic_operations ... ok
[INFO] [stdout] test xlsx::reader::tests::test_parse_cell_value ... ok
[INFO] [stdout] test xlsx::writer::tests::test_shared_strings_collection ... ok
[INFO] [stdout] test xlsx::styles::tests::test_color_components ... ok
[INFO] [stdout] test xlsx::workbook::tests::test_worksheet_api ... ok
[INFO] [stdout] test xlsx::styles::tests::test_invalid_color ... ok
[INFO] [stdout] test xlsx::styles::tests::test_color_creation ... ok
[INFO] [stdout] test xlsx::styles::xml::tests::test_font_xml ... ok
[INFO] [stdout] test common::tests::test_document_type_detection ... ok
[INFO] [stderr]      Running tests/formula_arithmetic_tests.rs (/opt/rustwide/target/debug/deps/formula_arithmetic_tests-b9e627ad2c696765)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 64 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.13s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 10 tests
[INFO] [stdout] test test_error_handling ... ok
[INFO] [stdout] test test_division ... ok
[INFO] [stdout] test test_addition ... ok
[INFO] [stdout] test test_power ... ok
[INFO] [stdout] test test_operator_precedence ... ok
[INFO] [stdout] test test_unary_operators ... ok
[INFO] [stdout] test test_multi_operators ... ok
[INFO] [stdout] test test_type_conversions ... ok
[INFO] [stdout] test test_subtraction ... ok
[INFO] [stdout] test test_multiplication ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests office_rs
[INFO] [stderr] warning: unnecessary parentheses around closure body
[INFO] [stderr]    --> src/common/xml_utils.rs:367:30
[INFO] [stderr]     |
[INFO] [stderr] 367 |         name.chars().all(|c| (c.is_alphanumeric() || c == '_' || c == '-' || c == '.'))
[INFO] [stderr]     |                              ^                                                       ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 367 -         name.chars().all(|c| (c.is_alphanumeric() || c == '_' || c == '-' || c == '.'))
[INFO] [stderr] 367 +         name.chars().all(|c| c.is_alphanumeric() || c == '_' || c == '-' || c == '.')
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: 1 warning emitted
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "a6a75d0fb44eaaaa57ce2b94b65f42affff9c9f9b596d8e978a5e7b32451c9f4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a6a75d0fb44eaaaa57ce2b94b65f42affff9c9f9b596d8e978a5e7b32451c9f4", kill_on_drop: false }`
[INFO] [stdout] a6a75d0fb44eaaaa57ce2b94b65f42affff9c9f9b596d8e978a5e7b32451c9f4
