[INFO] fetching crate thales 0.2.1...
[INFO] testing thales-0.2.1 against try#db823df02fd0c2cf67b43025ac3fef3f2d743245 for pr-150681
[INFO] extracting crate thales 0.2.1 into /workspace/builds/worker-2-tc2/source
[INFO] started tweaking crates.io crate thales 0.2.1
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate thales 0.2.1
[INFO] tweaked toml for crates.io crate thales 0.2.1 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate thales 0.2.1 on toolchain db823df02fd0c2cf67b43025ac3fef3f2d743245
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate thales 0.2.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" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 93ba2be3958053def49de88a843646d51a2ca69de9c29520b65aed6acbbe5e75
[INFO] running `Command { std: "docker" "start" "-a" "93ba2be3958053def49de88a843646d51a2ca69de9c29520b65aed6acbbe5e75", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "93ba2be3958053def49de88a843646d51a2ca69de9c29520b65aed6acbbe5e75", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "93ba2be3958053def49de88a843646d51a2ca69de9c29520b65aed6acbbe5e75", kill_on_drop: false }`
[INFO] [stdout] 93ba2be3958053def49de88a843646d51a2ca69de9c29520b65aed6acbbe5e75
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5d78ae07dcbc432a27b1fc40646af9fd19640b044fb310f922fa081960e119f6
[INFO] running `Command { std: "docker" "start" "-a" "5d78ae07dcbc432a27b1fc40646af9fd19640b044fb310f922fa081960e119f6", kill_on_drop: false }`
[INFO] [stderr]    Compiling unicode-ident v1.0.22
[INFO] [stderr]    Compiling proc-macro2 v1.0.103
[INFO] [stderr]    Compiling quote v1.0.42
[INFO] [stderr]    Compiling autocfg v1.5.0
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]    Compiling libc v0.2.178
[INFO] [stderr]    Compiling shlex v1.3.0
[INFO] [stderr]    Compiling find-msvc-tools v0.1.5
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling memchr v2.7.6
[INFO] [stderr]    Compiling cc v1.2.49
[INFO] [stderr]    Compiling zerocopy v0.8.31
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling object v0.32.2
[INFO] [stderr]    Compiling rustix v1.1.2
[INFO] [stderr]    Compiling linux-raw-sys v0.11.0
[INFO] [stderr]    Compiling syn v2.0.111
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling paste v1.0.15
[INFO] [stderr]    Compiling bitflags v2.10.0
[INFO] [stderr]    Compiling bytemuck v1.24.0
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling anyhow v1.0.100
[INFO] [stderr]    Compiling fastrand v2.3.0
[INFO] [stderr]    Compiling safe_arch v0.7.4
[INFO] [stderr]    Compiling stacker v0.1.22
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling matrixmultiply v0.3.10
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]    Compiling wide v0.7.33
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling swift-bridge-ir v0.1.58
[INFO] [stderr]    Compiling ar_archive_writer v0.2.0
[INFO] [stderr]    Compiling tempfile v3.23.0
[INFO] [stderr]    Compiling num-rational v0.4.2
[INFO] [stderr]    Compiling approx v0.5.1
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling psm v0.1.28
[INFO] [stderr]    Compiling equivalent v1.0.2
[INFO] [stderr]    Compiling rawpointer v0.2.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling allocator-api2 v0.2.21
[INFO] [stderr]    Compiling chumsky v1.0.0-alpha.8
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]    Compiling foldhash v0.1.5
[INFO] [stderr]    Compiling nalgebra-macros v0.2.2
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling simba v0.9.1
[INFO] [stderr]    Compiling rand_xoshiro v0.6.0
[INFO] [stderr]    Compiling num-iter v0.1.45
[INFO] [stderr]    Compiling instant v0.1.13
[INFO] [stderr]    Compiling unicode-segmentation v1.12.0
[INFO] [stderr]    Compiling itoa v1.0.15
[INFO] [stderr]    Compiling argmin-math v0.4.0
[INFO] [stderr]    Compiling ryu v1.0.20
[INFO] [stderr]    Compiling argmin v0.10.0
[INFO] [stderr]    Compiling swift-bridge-build v0.1.58
[INFO] [stderr]    Compiling num v0.4.3
[INFO] [stderr]    Compiling fasteval v0.2.4
[INFO] [stderr]    Compiling swift-bridge-macro v0.1.58
[INFO] [stderr]    Compiling thales v0.2.1 (/opt/rustwide/workdir)
[INFO] [stderr] warning: thales@0.2.1: Swift bridge output: /opt/rustwide/target/debug/build/thales-11470112216f874b/out
[INFO] [stderr]    Compiling swift-bridge v0.1.58
[INFO] [stderr]    Compiling nalgebra v0.33.2
[INFO] [stdout] warning: unused import: `BinaryOp`
[INFO] [stdout]   --> src/trigonometric.rs:29:18
[INFO] [stdout]    |
[INFO] [stdout] 29 | use crate::ast::{BinaryOp, Expression, Function, UnaryOp};
[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: `std::collections::HashMap`
[INFO] [stdout]   --> src/ode.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/latex.rs:545:25
[INFO] [stdout]     |
[INFO] [stdout] 545 |                         _ => LaTeXParseError::InvalidExpression {
[INFO] [stdout]     |                         ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/latex.rs:545:25
[INFO] [stdout]     |
[INFO] [stdout] 520 |                         chumsky::error::RichReason::ExpectedFound { found, .. } => match found {
[INFO] [stdout]     |                         ------------------------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 527 |                         chumsky::error::RichReason::Custom(msg) => {
[INFO] [stdout]     |                         --------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 545 |                         _ => LaTeXParseError::InvalidExpression {
[INFO] [stdout]     |                         ^ collectively making this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/parser.rs:704:25
[INFO] [stdout]     |
[INFO] [stdout] 704 |                         _ => ParseError::InvalidExpression {
[INFO] [stdout]     |                         ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/parser.rs:704:25
[INFO] [stdout]     |
[INFO] [stdout] 693 |                         chumsky::error::RichReason::ExpectedFound { found, .. } => match found {
[INFO] [stdout]     |                         ------------------------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 700 |                         chumsky::error::RichReason::Custom(msg) => ParseError::InvalidExpression {
[INFO] [stdout]     |                         --------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 704 |                         _ => ParseError::InvalidExpression {
[INFO] [stdout]     |                         ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/parser.rs:834:25
[INFO] [stdout]     |
[INFO] [stdout] 834 |                         _ => ParseError::InvalidExpression {
[INFO] [stdout]     |                         ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/parser.rs:834:25
[INFO] [stdout]     |
[INFO] [stdout] 823 |                         chumsky::error::RichReason::ExpectedFound { found, .. } => match found {
[INFO] [stdout]     |                         ------------------------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 830 |                         chumsky::error::RichReason::Custom(msg) => ParseError::InvalidExpression {
[INFO] [stdout]     |                         --------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 834 |                         _ => ParseError::InvalidExpression {
[INFO] [stdout]     |                         ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/pattern.rs:246:41
[INFO] [stdout]     |
[INFO] [stdout] 246 |             if let Expression::Variable(v) = expr {
[INFO] [stdout]     |                                         ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]    --> src/solver.rs:645:5
[INFO] [stdout]     |
[INFO] [stdout] 645 |     path: &mut ResolutionPathBuilder,
[INFO] [stdout]     |     ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]     --> src/solver.rs:1767:30
[INFO] [stdout]      |
[INFO] [stdout] 1767 |         Expression::Variable(v) => {
[INFO] [stdout]      |                              ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]     --> src/solver.rs:2454:24
[INFO] [stdout]      |
[INFO] [stdout] 2454 |             if let Err(e) = Self::validate_trig_domain(value, &func) {
[INFO] [stdout]      |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]     --> src/solver.rs:2473:24
[INFO] [stdout]      |
[INFO] [stdout] 2473 |             if let Err(e) = Self::validate_trig_domain(value, &func) {
[INFO] [stdout]      |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]     --> src/solver.rs:2492:24
[INFO] [stdout]      |
[INFO] [stdout] 2492 |             if let Err(e) = Self::validate_trig_domain(value, &func) {
[INFO] [stdout]      |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]     --> src/solver.rs:2511:24
[INFO] [stdout]      |
[INFO] [stdout] 2511 |             if let Err(e) = Self::validate_trig_domain(value, &func) {
[INFO] [stdout]      |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x_var`
[INFO] [stdout]    --> src/ode.rs:412:5
[INFO] [stdout]     |
[INFO] [stdout] 412 |     x_var: &str,
[INFO] [stdout]     |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_x_var`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/equation_system.rs:835:27
[INFO] [stdout]     |
[INFO] [stdout] 835 |             Self::Numeric(v) => None,
[INFO] [stdout]     |                           ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `known`
[INFO] [stdout]     --> src/equation_system.rs:1179:13
[INFO] [stdout]      |
[INFO] [stdout] 1179 |         let known = context.known_variable_names();
[INFO] [stdout]      |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_known`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `info`
[INFO] [stdout]     --> src/equation_system.rs:1247:47
[INFO] [stdout]      |
[INFO] [stdout] 1247 | ...                   EquationType::ODE(info) => SolveMethod::ODE {
[INFO] [stdout]      |                                         ^^^^ help: if this is intentional, prefix it with an underscore: `_info`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `equation`
[INFO] [stdout]     --> src/equation_system.rs:1509:9
[INFO] [stdout]      |
[INFO] [stdout] 1509 |         equation: &Equation,
[INFO] [stdout]      |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_equation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `equation`
[INFO] [stdout]     --> src/equation_system.rs:1524:9
[INFO] [stdout]      |
[INFO] [stdout] 1524 |         equation: &Equation,
[INFO] [stdout]      |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_equation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]    --> src/numerical.rs:545:5
[INFO] [stdout]     |
[INFO] [stdout] 544 | pub struct SecantMethod {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] 545 |     config: NumericalConfig,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SecantMethod` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]    --> src/numerical.rs:849:5
[INFO] [stdout]     |
[INFO] [stdout] 848 | pub struct BrentsMethod {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] 849 |     config: NumericalConfig,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `BrentsMethod` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `config` and `learning_rate` are never read
[INFO] [stdout]    --> src/numerical.rs:886:5
[INFO] [stdout]     |
[INFO] [stdout] 885 | pub struct GradientDescent {
[INFO] [stdout]     |            --------------- fields in this struct
[INFO] [stdout] 886 |     config: NumericalConfig,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 887 |     learning_rate: f64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `GradientDescent` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]    --> src/numerical.rs:920:5
[INFO] [stdout]     |
[INFO] [stdout] 919 | pub struct LevenbergMarquardt {
[INFO] [stdout]     |            ------------------ field in this struct
[INFO] [stdout] 920 |     config: NumericalConfig,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `LevenbergMarquardt` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_derivative_fd` is never used
[INFO] [stdout]     --> src/numerical.rs:1220:4
[INFO] [stdout]      |
[INFO] [stdout] 1220 | fn compute_derivative_fd(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `collect_terms` is never used
[INFO] [stdout]    --> src/solver.rs:528:4
[INFO] [stdout]     |
[INFO] [stdout] 528 | fn collect_terms(expr: &Expression, var: &str) -> (Vec<Expression>, Vec<Expression>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `collect_terms_recursive` is never used
[INFO] [stdout]    --> src/solver.rs:537:4
[INFO] [stdout]     |
[INFO] [stdout] 537 | fn collect_terms_recursive(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `combine_with_add` is never used
[INFO] [stdout]    --> src/solver.rs:566:4
[INFO] [stdout]     |
[INFO] [stdout] 566 | fn combine_with_add(terms: Vec<Expression>) -> Expression {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_linear_equation` is never used
[INFO] [stdout]     --> src/solver.rs:1026:4
[INFO] [stdout]      |
[INFO] [stdout] 1026 | fn is_linear_equation(expr: &Expression) -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/ast.rs:555:1
[INFO] [stdout]     |
[INFO] [stdout] 555 | pub enum Expression {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:373:9
[INFO] [stdout]     |
[INFO] [stdout] 373 | #![warn(missing_docs)]
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/matrix.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |         operation: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/matrix.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |         expected: (usize, usize),
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/matrix.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |         got: (usize, usize),
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/matrix.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |         row: usize,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/matrix.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |         col: usize,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/matrix.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 |         rows: usize,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/matrix.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 51 |         cols: usize,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/equation_system.rs:713:11
[INFO] [stdout]     |
[INFO] [stdout] 713 |     ODE { method: String },
[INFO] [stdout]     |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/equation_system.rs:862:22
[INFO] [stdout]     |
[INFO] [stdout] 862 |     SelectEquation { reason: String },
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/equation_system.rs:865:9
[INFO] [stdout]     |
[INFO] [stdout] 865 |         variable: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/equation_system.rs:866:9
[INFO] [stdout]     |
[INFO] [stdout] 866 |         method: SolveMethod,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/equation_system.rs:870:9
[INFO] [stdout]     |
[INFO] [stdout] 870 |         variable: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/equation_system.rs:871:9
[INFO] [stdout]     |
[INFO] [stdout] 871 |         into_equations: Vec<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/equation_system.rs:874:22
[INFO] [stdout]     |
[INFO] [stdout] 874 |     VerifySolution { variable: String },
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/equation_system.rs:912:9
[INFO] [stdout]     |
[INFO] [stdout] 912 |         known_so_far: HashMap<String, Expression>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 43s
[INFO] running `Command { std: "docker" "inspect" "5d78ae07dcbc432a27b1fc40646af9fd19640b044fb310f922fa081960e119f6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5d78ae07dcbc432a27b1fc40646af9fd19640b044fb310f922fa081960e119f6", kill_on_drop: false }`
[INFO] [stdout] 5d78ae07dcbc432a27b1fc40646af9fd19640b044fb310f922fa081960e119f6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 954cc03d57da1cb6f8f4013b3c0f67a4ff4d4bee0031cb0544e9aff4cd15cc99
[INFO] running `Command { std: "docker" "start" "-a" "954cc03d57da1cb6f8f4013b3c0f67a4ff4d4bee0031cb0544e9aff4cd15cc99", kill_on_drop: false }`
[INFO] [stderr]    Compiling zerocopy v0.8.31
[INFO] [stderr]    Compiling linux-raw-sys v0.11.0
[INFO] [stderr]    Compiling bitflags v2.10.0
[INFO] [stderr]    Compiling rustix v1.1.2
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling zerocopy-derive v0.8.31
[INFO] [stderr]    Compiling fastrand v2.3.0
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling rand_core v0.9.3
[INFO] [stderr]    Compiling regex-syntax v0.8.8
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling clap_lex v0.7.6
[INFO] [stderr]    Compiling ciborium-io v0.2.2
[INFO] [stderr]    Compiling anstyle v1.0.13
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling clap_builder v4.5.53
[INFO] [stderr]    Compiling wait-timeout v0.2.1
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling bit-vec v0.8.0
[INFO] [stderr]    Compiling quick-error v1.2.3
[INFO] [stderr]    Compiling tempfile v3.23.0
[INFO] [stderr]    Compiling swift-bridge-build v0.1.58
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling regex-automata v0.4.13
[INFO] [stderr]    Compiling rusty-fork v0.3.1
[INFO] [stderr]    Compiling thales v0.2.1 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr] warning: thales@0.2.1: Swift bridge output: /opt/rustwide/target/debug/build/thales-e31d49ec619d8c24/out
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling bit-set v0.8.0
[INFO] [stderr]    Compiling clap v4.5.53
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]    Compiling rand v0.9.2
[INFO] [stderr]    Compiling rand_xorshift v0.4.0
[INFO] [stderr]    Compiling is-terminal v0.4.17
[INFO] [stderr]    Compiling unarray v0.1.4
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling regex v1.12.2
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling proptest v1.9.0
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stderr]    Compiling argmin-math v0.4.0
[INFO] [stderr]    Compiling argmin v0.10.0
[INFO] [stdout] warning: unused import: `BinaryOp`
[INFO] [stdout]   --> src/trigonometric.rs:29:18
[INFO] [stdout]    |
[INFO] [stdout] 29 | use crate::ast::{BinaryOp, Expression, Function, UnaryOp};
[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: `std::collections::HashMap`
[INFO] [stdout]   --> src/ode.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_rational::Rational64`
[INFO] [stdout]     --> src/integration.rs:2241:9
[INFO] [stdout]      |
[INFO] [stdout] 2241 |     use num_rational::Rational64;
[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: `std::collections::HashMap`
[INFO] [stdout]   --> src/ode.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/latex.rs:545:25
[INFO] [stdout]     |
[INFO] [stdout] 545 |                         _ => LaTeXParseError::InvalidExpression {
[INFO] [stdout]     |                         ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/latex.rs:545:25
[INFO] [stdout]     |
[INFO] [stdout] 520 |                         chumsky::error::RichReason::ExpectedFound { found, .. } => match found {
[INFO] [stdout]     |                         ------------------------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 527 |                         chumsky::error::RichReason::Custom(msg) => {
[INFO] [stdout]     |                         --------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 545 |                         _ => LaTeXParseError::InvalidExpression {
[INFO] [stdout]     |                         ^ collectively making this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/parser.rs:704:25
[INFO] [stdout]     |
[INFO] [stdout] 704 |                         _ => ParseError::InvalidExpression {
[INFO] [stdout]     |                         ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/parser.rs:704:25
[INFO] [stdout]     |
[INFO] [stdout] 693 |                         chumsky::error::RichReason::ExpectedFound { found, .. } => match found {
[INFO] [stdout]     |                         ------------------------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 700 |                         chumsky::error::RichReason::Custom(msg) => ParseError::InvalidExpression {
[INFO] [stdout]     |                         --------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 704 |                         _ => ParseError::InvalidExpression {
[INFO] [stdout]     |                         ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/parser.rs:834:25
[INFO] [stdout]     |
[INFO] [stdout] 834 |                         _ => ParseError::InvalidExpression {
[INFO] [stdout]     |                         ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/parser.rs:834:25
[INFO] [stdout]     |
[INFO] [stdout] 823 |                         chumsky::error::RichReason::ExpectedFound { found, .. } => match found {
[INFO] [stdout]     |                         ------------------------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 830 |                         chumsky::error::RichReason::Custom(msg) => ParseError::InvalidExpression {
[INFO] [stdout]     |                         --------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 834 |                         _ => ParseError::InvalidExpression {
[INFO] [stdout]     |                         ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/pattern.rs:246:41
[INFO] [stdout]     |
[INFO] [stdout] 246 |             if let Expression::Variable(v) = expr {
[INFO] [stdout]     |                                         ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]    --> src/solver.rs:645:5
[INFO] [stdout]     |
[INFO] [stdout] 645 |     path: &mut ResolutionPathBuilder,
[INFO] [stdout]     |     ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]     --> src/solver.rs:1767:30
[INFO] [stdout]      |
[INFO] [stdout] 1767 |         Expression::Variable(v) => {
[INFO] [stdout]      |                              ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]     --> src/solver.rs:2454:24
[INFO] [stdout]      |
[INFO] [stdout] 2454 |             if let Err(e) = Self::validate_trig_domain(value, &func) {
[INFO] [stdout]      |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]     --> src/solver.rs:2473:24
[INFO] [stdout]      |
[INFO] [stdout] 2473 |             if let Err(e) = Self::validate_trig_domain(value, &func) {
[INFO] [stdout]      |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]     --> src/solver.rs:2492:24
[INFO] [stdout]      |
[INFO] [stdout] 2492 |             if let Err(e) = Self::validate_trig_domain(value, &func) {
[INFO] [stdout]      |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]     --> src/solver.rs:2511:24
[INFO] [stdout]      |
[INFO] [stdout] 2511 |             if let Err(e) = Self::validate_trig_domain(value, &func) {
[INFO] [stdout]      |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x_var`
[INFO] [stdout]    --> src/ode.rs:412:5
[INFO] [stdout]     |
[INFO] [stdout] 412 |     x_var: &str,
[INFO] [stdout]     |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_x_var`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/equation_system.rs:835:27
[INFO] [stdout]     |
[INFO] [stdout] 835 |             Self::Numeric(v) => None,
[INFO] [stdout]     |                           ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `known`
[INFO] [stdout]     --> src/equation_system.rs:1179:13
[INFO] [stdout]      |
[INFO] [stdout] 1179 |         let known = context.known_variable_names();
[INFO] [stdout]      |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_known`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `info`
[INFO] [stdout]     --> src/equation_system.rs:1247:47
[INFO] [stdout]      |
[INFO] [stdout] 1247 | ...                   EquationType::ODE(info) => SolveMethod::ODE {
[INFO] [stdout]      |                                         ^^^^ help: if this is intentional, prefix it with an underscore: `_info`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `equation`
[INFO] [stdout]     --> src/equation_system.rs:1509:9
[INFO] [stdout]      |
[INFO] [stdout] 1509 |         equation: &Equation,
[INFO] [stdout]      |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_equation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `equation`
[INFO] [stdout]     --> src/equation_system.rs:1524:9
[INFO] [stdout]      |
[INFO] [stdout] 1524 |         equation: &Equation,
[INFO] [stdout]      |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_equation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]    --> src/numerical.rs:545:5
[INFO] [stdout]     |
[INFO] [stdout] 544 | pub struct SecantMethod {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] 545 |     config: NumericalConfig,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SecantMethod` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]    --> src/numerical.rs:849:5
[INFO] [stdout]     |
[INFO] [stdout] 848 | pub struct BrentsMethod {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] 849 |     config: NumericalConfig,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `BrentsMethod` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `config` and `learning_rate` are never read
[INFO] [stdout]    --> src/numerical.rs:886:5
[INFO] [stdout]     |
[INFO] [stdout] 885 | pub struct GradientDescent {
[INFO] [stdout]     |            --------------- fields in this struct
[INFO] [stdout] 886 |     config: NumericalConfig,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 887 |     learning_rate: f64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `GradientDescent` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]    --> src/numerical.rs:920:5
[INFO] [stdout]     |
[INFO] [stdout] 919 | pub struct LevenbergMarquardt {
[INFO] [stdout]     |            ------------------ field in this struct
[INFO] [stdout] 920 |     config: NumericalConfig,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `LevenbergMarquardt` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_derivative_fd` is never used
[INFO] [stdout]     --> src/numerical.rs:1220:4
[INFO] [stdout]      |
[INFO] [stdout] 1220 | fn compute_derivative_fd(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `collect_terms` is never used
[INFO] [stdout]    --> src/solver.rs:528:4
[INFO] [stdout]     |
[INFO] [stdout] 528 | fn collect_terms(expr: &Expression, var: &str) -> (Vec<Expression>, Vec<Expression>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `collect_terms_recursive` is never used
[INFO] [stdout]    --> src/solver.rs:537:4
[INFO] [stdout]     |
[INFO] [stdout] 537 | fn collect_terms_recursive(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `combine_with_add` is never used
[INFO] [stdout]    --> src/solver.rs:566:4
[INFO] [stdout]     |
[INFO] [stdout] 566 | fn combine_with_add(terms: Vec<Expression>) -> Expression {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_linear_equation` is never used
[INFO] [stdout]     --> src/solver.rs:1026:4
[INFO] [stdout]      |
[INFO] [stdout] 1026 | fn is_linear_equation(expr: &Expression) -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/ast.rs:555:1
[INFO] [stdout]     |
[INFO] [stdout] 555 | pub enum Expression {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:373:9
[INFO] [stdout]     |
[INFO] [stdout] 373 | #![warn(missing_docs)]
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/matrix.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |         operation: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/matrix.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |         expected: (usize, usize),
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/matrix.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |         got: (usize, usize),
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/matrix.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |         row: usize,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/matrix.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |         col: usize,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/matrix.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 |         rows: usize,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/matrix.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 51 |         cols: usize,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/equation_system.rs:713:11
[INFO] [stdout]     |
[INFO] [stdout] 713 |     ODE { method: String },
[INFO] [stdout]     |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/equation_system.rs:862:22
[INFO] [stdout]     |
[INFO] [stdout] 862 |     SelectEquation { reason: String },
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/equation_system.rs:865:9
[INFO] [stdout]     |
[INFO] [stdout] 865 |         variable: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/equation_system.rs:866:9
[INFO] [stdout]     |
[INFO] [stdout] 866 |         method: SolveMethod,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/equation_system.rs:870:9
[INFO] [stdout]     |
[INFO] [stdout] 870 |         variable: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/equation_system.rs:871:9
[INFO] [stdout]     |
[INFO] [stdout] 871 |         into_equations: Vec<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/equation_system.rs:874:22
[INFO] [stdout]     |
[INFO] [stdout] 874 |     VerifySolution { variable: String },
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/equation_system.rs:912:9
[INFO] [stdout]     |
[INFO] [stdout] 912 |         known_so_far: HashMap<String, Expression>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/latex.rs:545:25
[INFO] [stdout]     |
[INFO] [stdout] 545 |                         _ => LaTeXParseError::InvalidExpression {
[INFO] [stdout]     |                         ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/latex.rs:545:25
[INFO] [stdout]     |
[INFO] [stdout] 520 |                         chumsky::error::RichReason::ExpectedFound { found, .. } => match found {
[INFO] [stdout]     |                         ------------------------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 527 |                         chumsky::error::RichReason::Custom(msg) => {
[INFO] [stdout]     |                         --------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 545 |                         _ => LaTeXParseError::InvalidExpression {
[INFO] [stdout]     |                         ^ collectively making this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/parser.rs:704:25
[INFO] [stdout]     |
[INFO] [stdout] 704 |                         _ => ParseError::InvalidExpression {
[INFO] [stdout]     |                         ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/parser.rs:704:25
[INFO] [stdout]     |
[INFO] [stdout] 693 |                         chumsky::error::RichReason::ExpectedFound { found, .. } => match found {
[INFO] [stdout]     |                         ------------------------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 700 |                         chumsky::error::RichReason::Custom(msg) => ParseError::InvalidExpression {
[INFO] [stdout]     |                         --------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 704 |                         _ => ParseError::InvalidExpression {
[INFO] [stdout]     |                         ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/parser.rs:834:25
[INFO] [stdout]     |
[INFO] [stdout] 834 |                         _ => ParseError::InvalidExpression {
[INFO] [stdout]     |                         ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/parser.rs:834:25
[INFO] [stdout]     |
[INFO] [stdout] 823 |                         chumsky::error::RichReason::ExpectedFound { found, .. } => match found {
[INFO] [stdout]     |                         ------------------------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 830 |                         chumsky::error::RichReason::Custom(msg) => ParseError::InvalidExpression {
[INFO] [stdout]     |                         --------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 834 |                         _ => ParseError::InvalidExpression {
[INFO] [stdout]     |                         ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/pattern.rs:246:41
[INFO] [stdout]     |
[INFO] [stdout] 246 |             if let Expression::Variable(v) = expr {
[INFO] [stdout]     |                                         ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]    --> src/solver.rs:645:5
[INFO] [stdout]     |
[INFO] [stdout] 645 |     path: &mut ResolutionPathBuilder,
[INFO] [stdout]     |     ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]     --> src/solver.rs:1767:30
[INFO] [stdout]      |
[INFO] [stdout] 1767 |         Expression::Variable(v) => {
[INFO] [stdout]      |                              ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]     --> src/solver.rs:2454:24
[INFO] [stdout]      |
[INFO] [stdout] 2454 |             if let Err(e) = Self::validate_trig_domain(value, &func) {
[INFO] [stdout]      |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]     --> src/solver.rs:2473:24
[INFO] [stdout]      |
[INFO] [stdout] 2473 |             if let Err(e) = Self::validate_trig_domain(value, &func) {
[INFO] [stdout]      |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]     --> src/solver.rs:2492:24
[INFO] [stdout]      |
[INFO] [stdout] 2492 |             if let Err(e) = Self::validate_trig_domain(value, &func) {
[INFO] [stdout]      |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]     --> src/solver.rs:2511:24
[INFO] [stdout]      |
[INFO] [stdout] 2511 |             if let Err(e) = Self::validate_trig_domain(value, &func) {
[INFO] [stdout]      |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x_var`
[INFO] [stdout]    --> src/ode.rs:412:5
[INFO] [stdout]     |
[INFO] [stdout] 412 |     x_var: &str,
[INFO] [stdout]     |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_x_var`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `root`
[INFO] [stdout]     --> src/partial_fractions.rs:1313:60
[INFO] [stdout]      |
[INFO] [stdout] 1313 |                 PartialFractionTerm::Linear { coefficient, root, power } => {
[INFO] [stdout]      |                                                            ^^^^ help: try ignoring the field: `root: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/equation_system.rs:835:27
[INFO] [stdout]     |
[INFO] [stdout] 835 |             Self::Numeric(v) => None,
[INFO] [stdout]     |                           ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `known`
[INFO] [stdout]     --> src/equation_system.rs:1179:13
[INFO] [stdout]      |
[INFO] [stdout] 1179 |         let known = context.known_variable_names();
[INFO] [stdout]      |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_known`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `info`
[INFO] [stdout]     --> src/equation_system.rs:1247:47
[INFO] [stdout]      |
[INFO] [stdout] 1247 | ...                   EquationType::ODE(info) => SolveMethod::ODE {
[INFO] [stdout]      |                                         ^^^^ help: if this is intentional, prefix it with an underscore: `_info`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `equation`
[INFO] [stdout]     --> src/equation_system.rs:1509:9
[INFO] [stdout]      |
[INFO] [stdout] 1509 |         equation: &Equation,
[INFO] [stdout]      |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_equation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `equation`
[INFO] [stdout]     --> src/equation_system.rs:1524:9
[INFO] [stdout]      |
[INFO] [stdout] 1524 |         equation: &Equation,
[INFO] [stdout]      |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_equation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]    --> src/numerical.rs:545:5
[INFO] [stdout]     |
[INFO] [stdout] 544 | pub struct SecantMethod {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] 545 |     config: NumericalConfig,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SecantMethod` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]    --> src/numerical.rs:849:5
[INFO] [stdout]     |
[INFO] [stdout] 848 | pub struct BrentsMethod {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] 849 |     config: NumericalConfig,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `BrentsMethod` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `config` and `learning_rate` are never read
[INFO] [stdout]    --> src/numerical.rs:886:5
[INFO] [stdout]     |
[INFO] [stdout] 885 | pub struct GradientDescent {
[INFO] [stdout]     |            --------------- fields in this struct
[INFO] [stdout] 886 |     config: NumericalConfig,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 887 |     learning_rate: f64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `GradientDescent` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]    --> src/numerical.rs:920:5
[INFO] [stdout]     |
[INFO] [stdout] 919 | pub struct LevenbergMarquardt {
[INFO] [stdout]     |            ------------------ field in this struct
[INFO] [stdout] 920 |     config: NumericalConfig,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `LevenbergMarquardt` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_derivative_fd` is never used
[INFO] [stdout]     --> src/numerical.rs:1220:4
[INFO] [stdout]      |
[INFO] [stdout] 1220 | fn compute_derivative_fd(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `collect_terms` is never used
[INFO] [stdout]    --> src/solver.rs:528:4
[INFO] [stdout]     |
[INFO] [stdout] 528 | fn collect_terms(expr: &Expression, var: &str) -> (Vec<Expression>, Vec<Expression>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `collect_terms_recursive` is never used
[INFO] [stdout]    --> src/solver.rs:537:4
[INFO] [stdout]     |
[INFO] [stdout] 537 | fn collect_terms_recursive(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `combine_with_add` is never used
[INFO] [stdout]    --> src/solver.rs:566:4
[INFO] [stdout]     |
[INFO] [stdout] 566 | fn combine_with_add(terms: Vec<Expression>) -> Expression {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_linear_equation` is never used
[INFO] [stdout]     --> src/solver.rs:1026:4
[INFO] [stdout]      |
[INFO] [stdout] 1026 | fn is_linear_equation(expr: &Expression) -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `div` is never used
[INFO] [stdout]    --> src/ode.rs:838:8
[INFO] [stdout]     |
[INFO] [stdout] 838 |     fn div(left: Expression, right: Expression) -> Expression {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/ast.rs:555:1
[INFO] [stdout]     |
[INFO] [stdout] 555 | pub enum Expression {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:373:9
[INFO] [stdout]     |
[INFO] [stdout] 373 | #![warn(missing_docs)]
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/matrix.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |         operation: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/matrix.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |         expected: (usize, usize),
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/matrix.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |         got: (usize, usize),
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/matrix.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |         row: usize,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/matrix.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |         col: usize,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/matrix.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 |         rows: usize,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/matrix.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 51 |         cols: usize,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/equation_system.rs:713:11
[INFO] [stdout]     |
[INFO] [stdout] 713 |     ODE { method: String },
[INFO] [stdout]     |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/equation_system.rs:862:22
[INFO] [stdout]     |
[INFO] [stdout] 862 |     SelectEquation { reason: String },
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/equation_system.rs:865:9
[INFO] [stdout]     |
[INFO] [stdout] 865 |         variable: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/equation_system.rs:866:9
[INFO] [stdout]     |
[INFO] [stdout] 866 |         method: SolveMethod,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/equation_system.rs:870:9
[INFO] [stdout]     |
[INFO] [stdout] 870 |         variable: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/equation_system.rs:871:9
[INFO] [stdout]     |
[INFO] [stdout] 871 |         into_equations: Vec<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/equation_system.rs:874:22
[INFO] [stdout]     |
[INFO] [stdout] 874 |     VerifySolution { variable: String },
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/equation_system.rs:912:9
[INFO] [stdout]     |
[INFO] [stdout] 912 |         known_so_far: HashMap<String, Expression>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]   --> tests/integration_tests.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |     use super::*;
[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: `super::*`
[INFO] [stdout]    --> tests/integration_tests.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 129 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `div` is never used
[INFO] [stdout]   --> tests/transcendental_solver_tests.rs:44:4
[INFO] [stdout]    |
[INFO] [stdout] 44 | fn div(left: Expression, right: Expression) -> Expression {
[INFO] [stdout]    |    ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `float` is never used
[INFO] [stdout]   --> tests/solver_tests.rs:22:4
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn float(x: f64) -> Expression {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 52s
[INFO] running `Command { std: "docker" "inspect" "954cc03d57da1cb6f8f4013b3c0f67a4ff4d4bee0031cb0544e9aff4cd15cc99", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "954cc03d57da1cb6f8f4013b3c0f67a4ff4d4bee0031cb0544e9aff4cd15cc99", kill_on_drop: false }`
[INFO] [stdout] 954cc03d57da1cb6f8f4013b3c0f67a4ff4d4bee0031cb0544e9aff4cd15cc99
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 1cde855e5ab678be8ccf945d585731210d70228b9b4830127af5def102403ecd
[INFO] running `Command { std: "docker" "start" "-a" "1cde855e5ab678be8ccf945d585731210d70228b9b4830127af5def102403ecd", kill_on_drop: false }`
[INFO] [stderr] warning: thales@0.2.1: Swift bridge output: /opt/rustwide/target/debug/build/thales-e31d49ec619d8c24/out
[INFO] [stderr] warning: unused import: `BinaryOp`
[INFO] [stderr]   --> src/trigonometric.rs:29:18
[INFO] [stderr]    |
[INFO] [stderr] 29 | use crate::ast::{BinaryOp, Expression, Function, UnaryOp};
[INFO] [stderr]    |                  ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashMap`
[INFO] [stderr]   --> src/ode.rs:27:5
[INFO] [stderr]    |
[INFO] [stderr] 27 | use std::collections::HashMap;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]    --> src/latex.rs:545:25
[INFO] [stderr]     |
[INFO] [stderr] 545 |                         _ => LaTeXParseError::InvalidExpression {
[INFO] [stderr]     |                         ^ no value can reach this
[INFO] [stderr]     |
[INFO] [stderr] note: multiple earlier patterns match some of the same values
[INFO] [stderr]    --> src/latex.rs:545:25
[INFO] [stderr]     |
[INFO] [stderr] 520 |                         chumsky::error::RichReason::ExpectedFound { found, .. } => match found {
[INFO] [stderr]     |                         ------------------------------------------------------- matches some of the same values
[INFO] [stderr] ...
[INFO] [stderr] 527 |                         chumsky::error::RichReason::Custom(msg) => {
[INFO] [stderr]     |                         --------------------------------------- matches some of the same values
[INFO] [stderr] ...
[INFO] [stderr] 545 |                         _ => LaTeXParseError::InvalidExpression {
[INFO] [stderr]     |                         ^ collectively making this unreachable
[INFO] [stderr]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]    --> src/parser.rs:704:25
[INFO] [stderr]     |
[INFO] [stderr] 704 |                         _ => ParseError::InvalidExpression {
[INFO] [stderr]     |                         ^ no value can reach this
[INFO] [stderr]     |
[INFO] [stderr] note: multiple earlier patterns match some of the same values
[INFO] [stderr]    --> src/parser.rs:704:25
[INFO] [stderr]     |
[INFO] [stderr] 693 |                         chumsky::error::RichReason::ExpectedFound { found, .. } => match found {
[INFO] [stderr]     |                         ------------------------------------------------------- matches some of the same values
[INFO] [stderr] ...
[INFO] [stderr] 700 |                         chumsky::error::RichReason::Custom(msg) => ParseError::InvalidExpression {
[INFO] [stderr]     |                         --------------------------------------- matches some of the same values
[INFO] [stderr] ...
[INFO] [stderr] 704 |                         _ => ParseError::InvalidExpression {
[INFO] [stderr]     |                         ^ collectively making this unreachable
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]    --> src/parser.rs:834:25
[INFO] [stderr]     |
[INFO] [stderr] 834 |                         _ => ParseError::InvalidExpression {
[INFO] [stderr]     |                         ^ no value can reach this
[INFO] [stderr]     |
[INFO] [stderr] note: multiple earlier patterns match some of the same values
[INFO] [stderr]    --> src/parser.rs:834:25
[INFO] [stderr]     |
[INFO] [stderr] 823 |                         chumsky::error::RichReason::ExpectedFound { found, .. } => match found {
[INFO] [stderr]     |                         ------------------------------------------------------- matches some of the same values
[INFO] [stderr] ...
[INFO] [stderr] 830 |                         chumsky::error::RichReason::Custom(msg) => ParseError::InvalidExpression {
[INFO] [stderr]     |                         --------------------------------------- matches some of the same values
[INFO] [stderr] ...
[INFO] [stderr] 834 |                         _ => ParseError::InvalidExpression {
[INFO] [stderr]     |                         ^ collectively making this unreachable
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `v`
[INFO] [stderr]    --> src/pattern.rs:246:41
[INFO] [stderr]     |
[INFO] [stderr] 246 |             if let Expression::Variable(v) = expr {
[INFO] [stderr]     |                                         ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `path`
[INFO] [stderr]    --> src/solver.rs:645:5
[INFO] [stderr]     |
[INFO] [stderr] 645 |     path: &mut ResolutionPathBuilder,
[INFO] [stderr]     |     ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `v`
[INFO] [stderr]     --> src/solver.rs:1767:30
[INFO] [stderr]      |
[INFO] [stderr] 1767 |         Expression::Variable(v) => {
[INFO] [stderr]      |                              ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]     --> src/solver.rs:2454:24
[INFO] [stderr]      |
[INFO] [stderr] 2454 |             if let Err(e) = Self::validate_trig_domain(value, &func) {
[INFO] [stderr]      |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]     --> src/solver.rs:2473:24
[INFO] [stderr]      |
[INFO] [stderr] 2473 |             if let Err(e) = Self::validate_trig_domain(value, &func) {
[INFO] [stderr]      |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]     --> src/solver.rs:2492:24
[INFO] [stderr]      |
[INFO] [stderr] 2492 |             if let Err(e) = Self::validate_trig_domain(value, &func) {
[INFO] [stderr]      |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]     --> src/solver.rs:2511:24
[INFO] [stderr]      |
[INFO] [stderr] 2511 |             if let Err(e) = Self::validate_trig_domain(value, &func) {
[INFO] [stderr]      |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `x_var`
[INFO] [stderr]    --> src/ode.rs:412:5
[INFO] [stderr]     |
[INFO] [stderr] 412 |     x_var: &str,
[INFO] [stderr]     |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_x_var`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `v`
[INFO] [stderr]    --> src/equation_system.rs:835:27
[INFO] [stderr]     |
[INFO] [stderr] 835 |             Self::Numeric(v) => None,
[INFO] [stderr]     |                           ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `known`
[INFO] [stderr]     --> src/equation_system.rs:1179:13
[INFO] [stderr]      |
[INFO] [stderr] 1179 |         let known = context.known_variable_names();
[INFO] [stderr]      |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_known`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `info`
[INFO] [stderr]     --> src/equation_system.rs:1247:47
[INFO] [stderr]      |
[INFO] [stderr] 1247 | ...                   EquationType::ODE(info) => SolveMethod::ODE {
[INFO] [stderr]      |                                         ^^^^ help: if this is intentional, prefix it with an underscore: `_info`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `equation`
[INFO] [stderr]     --> src/equation_system.rs:1509:9
[INFO] [stderr]      |
[INFO] [stderr] 1509 |         equation: &Equation,
[INFO] [stderr]      |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_equation`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `equation`
[INFO] [stderr]     --> src/equation_system.rs:1524:9
[INFO] [stderr]      |
[INFO] [stderr] 1524 |         equation: &Equation,
[INFO] [stderr]      |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_equation`
[INFO] [stderr] 
[INFO] [stderr] warning: field `config` is never read
[INFO] [stderr]    --> src/numerical.rs:545:5
[INFO] [stderr]     |
[INFO] [stderr] 544 | pub struct SecantMethod {
[INFO] [stderr]     |            ------------ field in this struct
[INFO] [stderr] 545 |     config: NumericalConfig,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `SecantMethod` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `config` is never read
[INFO] [stderr]    --> src/numerical.rs:849:5
[INFO] [stderr]     |
[INFO] [stderr] 848 | pub struct BrentsMethod {
[INFO] [stderr]     |            ------------ field in this struct
[INFO] [stderr] 849 |     config: NumericalConfig,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `BrentsMethod` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `config` and `learning_rate` are never read
[INFO] [stderr]    --> src/numerical.rs:886:5
[INFO] [stderr]     |
[INFO] [stderr] 885 | pub struct GradientDescent {
[INFO] [stderr]     |            --------------- fields in this struct
[INFO] [stderr] 886 |     config: NumericalConfig,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr] 887 |     learning_rate: f64,
[INFO] [stderr]     |     ^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `GradientDescent` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `config` is never read
[INFO] [stderr]    --> src/numerical.rs:920:5
[INFO] [stderr]     |
[INFO] [stderr] 919 | pub struct LevenbergMarquardt {
[INFO] [stderr]     |            ------------------ field in this struct
[INFO] [stderr] 920 |     config: NumericalConfig,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `LevenbergMarquardt` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: function `compute_derivative_fd` is never used
[INFO] [stderr]     --> src/numerical.rs:1220:4
[INFO] [stderr]      |
[INFO] [stderr] 1220 | fn compute_derivative_fd(
[INFO] [stderr]      |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `collect_terms` is never used
[INFO] [stderr]    --> src/solver.rs:528:4
[INFO] [stderr]     |
[INFO] [stderr] 528 | fn collect_terms(expr: &Expression, var: &str) -> (Vec<Expression>, Vec<Expression>) {
[INFO] [stderr]     |    ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `collect_terms_recursive` is never used
[INFO] [stderr]    --> src/solver.rs:537:4
[INFO] [stderr]     |
[INFO] [stderr] 537 | fn collect_terms_recursive(
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `combine_with_add` is never used
[INFO] [stderr]    --> src/solver.rs:566:4
[INFO] [stderr]     |
[INFO] [stderr] 566 | fn combine_with_add(terms: Vec<Expression>) -> Expression {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `is_linear_equation` is never used
[INFO] [stderr]     --> src/solver.rs:1026:4
[INFO] [stderr]      |
[INFO] [stderr] 1026 | fn is_linear_equation(expr: &Expression) -> bool {
[INFO] [stderr]      |    ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an enum
[INFO] [stderr]    --> src/ast.rs:555:1
[INFO] [stderr]     |
[INFO] [stderr] 555 | pub enum Expression {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]    --> src/lib.rs:373:9
[INFO] [stderr]     |
[INFO] [stderr] 373 | #![warn(missing_docs)]
[INFO] [stderr]     |         ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/matrix.rs:38:9
[INFO] [stderr]    |
[INFO] [stderr] 38 |         operation: String,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/matrix.rs:39:9
[INFO] [stderr]    |
[INFO] [stderr] 39 |         expected: (usize, usize),
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/matrix.rs:40:9
[INFO] [stderr]    |
[INFO] [stderr] 40 |         got: (usize, usize),
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/matrix.rs:48:9
[INFO] [stderr]    |
[INFO] [stderr] 48 |         row: usize,
[INFO] [stderr]    |         ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/matrix.rs:49:9
[INFO] [stderr]    |
[INFO] [stderr] 49 |         col: usize,
[INFO] [stderr]    |         ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/matrix.rs:50:9
[INFO] [stderr]    |
[INFO] [stderr] 50 |         rows: usize,
[INFO] [stderr]    |         ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/matrix.rs:51:9
[INFO] [stderr]    |
[INFO] [stderr] 51 |         cols: usize,
[INFO] [stderr]    |         ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/equation_system.rs:713:11
[INFO] [stderr]     |
[INFO] [stderr] 713 |     ODE { method: String },
[INFO] [stderr]     |           ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/equation_system.rs:862:22
[INFO] [stderr]     |
[INFO] [stderr] 862 |     SelectEquation { reason: String },
[INFO] [stderr]     |                      ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/equation_system.rs:865:9
[INFO] [stderr]     |
[INFO] [stderr] 865 |         variable: String,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/equation_system.rs:866:9
[INFO] [stderr]     |
[INFO] [stderr] 866 |         method: SolveMethod,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/equation_system.rs:870:9
[INFO] [stderr]     |
[INFO] [stderr] 870 |         variable: String,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/equation_system.rs:871:9
[INFO] [stderr]     |
[INFO] [stderr] 871 |         into_equations: Vec<String>,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/equation_system.rs:874:22
[INFO] [stderr]     |
[INFO] [stderr] 874 |     VerifySolution { variable: String },
[INFO] [stderr]     |                      ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/equation_system.rs:912:9
[INFO] [stderr]     |
[INFO] [stderr] 912 |         known_so_far: HashMap<String, Expression>,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `thales` (lib) generated 43 warnings (run `cargo fix --lib -p thales` to apply 15 suggestions)
[INFO] [stderr] warning: function `float` is never used
[INFO] [stderr]   --> tests/solver_tests.rs:22:4
[INFO] [stderr]    |
[INFO] [stderr] 22 | fn float(x: f64) -> Expression {
[INFO] [stderr]    |    ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `num_rational::Rational64`
[INFO] [stderr]     --> src/integration.rs:2241:9
[INFO] [stderr]      |
[INFO] [stderr] 2241 |     use num_rational::Rational64;
[INFO] [stderr]      |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `root`
[INFO] [stderr]     --> src/partial_fractions.rs:1313:60
[INFO] [stderr]      |
[INFO] [stderr] 1313 |                 PartialFractionTerm::Linear { coefficient, root, power } => {
[INFO] [stderr]      |                                                            ^^^^ help: try ignoring the field: `root: _`
[INFO] [stderr] 
[INFO] [stderr] warning: function `div` is never used
[INFO] [stderr]    --> src/ode.rs:838:8
[INFO] [stderr]     |
[INFO] [stderr] 838 |     fn div(left: Expression, right: Expression) -> Expression {
[INFO] [stderr]     |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::*`
[INFO] [stderr]   --> tests/integration_tests.rs:23:9
[INFO] [stderr]    |
[INFO] [stderr] 23 |     use super::*;
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::*`
[INFO] [stderr]    --> tests/integration_tests.rs:129:9
[INFO] [stderr]     |
[INFO] [stderr] 129 |     use super::*;
[INFO] [stderr]     |         ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `div` is never used
[INFO] [stderr]   --> tests/transcendental_solver_tests.rs:44:4
[INFO] [stderr]    |
[INFO] [stderr] 44 | fn div(left: Expression, right: Expression) -> Expression {
[INFO] [stderr]    |    ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `thales` (test "solver_tests") generated 1 warning
[INFO] [stderr] warning: `thales` (lib test) generated 45 warnings (42 duplicates) (run `cargo fix --lib -p thales --tests` to apply 2 suggestions)
[INFO] [stderr] warning: `thales` (test "integration_tests") generated 2 warnings (run `cargo fix --test "integration_tests" -p thales` to apply 2 suggestions)
[INFO] [stderr] warning: `thales` (test "transcendental_solver_tests") generated 1 warning
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.26s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/thales-773d4b1c9e71a58d)
[INFO] [stdout] 
[INFO] [stdout] running 224 tests
[INFO] [stdout] test equation_system::tests::test_equation_system_creation ... ok
[INFO] [stdout] test equation_system::tests::test_dependency_graph ... ok
[INFO] [stdout] test equation_system::tests::test_chained_equations ... ok
[INFO] [stdout] test equation_system::tests::test_quadratic_in_system ... ok
[INFO] [stdout] test equation_system::tests::test_context_builder ... ok
[INFO] [stdout] test inequality::tests::test_all_reals_solution ... ok
[INFO] [stdout] test equation_system::tests::test_find_solvable ... ok
[INFO] [stdout] test equation_system::tests::test_resolution_path ... ok
[INFO] [stdout] test inequality::tests::test_linear_flip_sign ... ok
[INFO] [stdout] test inequality::tests::test_quadratic_less_than ... ok
[INFO] [stdout] test inequality::tests::test_system_intersection ... ok
[INFO] [stdout] test integration::tests::test_check_same_up_to_constant ... ok
[INFO] [stdout] test equation_system::tests::test_simple_linear_system ... ok
[INFO] [stdout] test integration::tests::test_choose_u_and_dv ... ok
[INFO] [stdout] test integration::tests::test_combine_factors ... ok
[INFO] [stdout] test integration::tests::test_definite_integral_cos ... ok
[INFO] [stdout] test integration::tests::test_definite_integral_exp ... ok
[INFO] [stdout] test integration::tests::test_definite_integral_odd_function ... ok
[INFO] [stdout] test integration::tests::test_definite_integral_polynomial ... ok
[INFO] [stdout] test integration::tests::test_definite_integral_sin ... ok
[INFO] [stdout] test integration::tests::test_definite_integral_symbolic_upper_bound ... ok
[INFO] [stdout] test integration::tests::test_definite_integral_with_fallback ... ok
[INFO] [stdout] test integration::tests::test_definite_integral_with_steps ... ok
[INFO] [stdout] test integration::tests::test_definite_integral_x_squared ... ok
[INFO] [stdout] test integration::tests::test_differentiate_integral_equals_original ... ok
[INFO] [stdout] test integration::tests::test_expressions_equivalent ... ok
[INFO] [stdout] test integration::tests::test_extract_factors ... ok
[INFO] [stdout] test integration::tests::test_extract_inner_function ... ok
[INFO] [stdout] test integration::tests::test_integrate_by_parts_ln_x ... ok
[INFO] [stdout] test integration::tests::test_improper_integral_convergent ... ok
[INFO] [stdout] test integration::tests::test_integrate_by_parts_with_steps ... ok
[INFO] [stdout] test integration::tests::test_integrate_by_parts_x_exp ... ok
[INFO] [stdout] test integration::tests::test_integrate_by_parts_x_sin ... ok
[INFO] [stdout] test equation_system::tests::test_insufficient_equations ... ok
[INFO] [stdout] test integration::tests::test_integrate_by_parts_x_squared_exp ... ok
[INFO] [stdout] test integration::tests::test_integrate_by_substitution_exp ... ok
[INFO] [stdout] test inequality::tests::test_linear_greater_than ... ok
[INFO] [stdout] test inequality::tests::test_no_solution ... ok
[INFO] [stdout] test inequality::tests::test_quadratic_greater_equal ... ok
[INFO] [stdout] test integration::tests::test_integrate_by_substitution_linear ... ok
[INFO] [stdout] test integration::tests::test_integrate_constant ... ok
[INFO] [stdout] test integration::tests::test_integrate_cos ... ok
[INFO] [stdout] test integration::tests::test_integrate_exp ... ok
[INFO] [stdout] test integration::tests::test_integrate_polynomial ... ok
[INFO] [stdout] test integration::tests::test_integrate_constant_multiple ... ok
[INFO] [stdout] test integration::tests::test_integrate_linear_sin ... ok
[INFO] [stdout] test integration::tests::test_integrate_sin ... ok
[INFO] [stdout] test integration::tests::test_integrate_reciprocal ... ok
[INFO] [stdout] test integration::tests::test_integrate_sum ... ok
[INFO] [stdout] test integration::tests::test_integrate_with_substitution_steps ... ok
[INFO] [stdout] test integration::tests::test_integrate_x ... ok
[INFO] [stdout] test integration::tests::test_integrate_x_power_negative_one ... ok
[INFO] [stdout] test integration::tests::test_is_one ... ok
[INFO] [stdout] test integration::tests::test_integrate_x_squared ... ok
[INFO] [stdout] test integration::tests::test_numerical_integrate_complex ... ok
[INFO] [stdout] test integration::tests::test_numerical_integrate_simple ... ok
[INFO] [stdout] test integration::tests::test_substitute_variable ... ok
[INFO] [stdout] test integration::tests::test_tabular_integration_x_exp ... ok
[INFO] [stdout] test integration::tests::test_tabular_integration_x_squared_exp ... ok
[INFO] [stdout] test integration::tests::test_tabular_integration_x_sin ... ok
[INFO] [stdout] test latex::tests::test_parse_addition ... ok
[INFO] [stdout] test equation_system::tests::test_equation_system_variables ... ok
[INFO] [stdout] test latex::tests::test_parse_equation ... ok
[INFO] [stdout] test latex::tests::test_parse_cdot ... ok
[INFO] [stdout] test latex::tests::test_parse_complex_frac ... ok
[INFO] [stdout] test latex::tests::test_parse_float ... ok
[INFO] [stdout] test latex::tests::test_parse_greek_pi ... ok
[INFO] [stdout] test latex::tests::test_parse_frac ... ok
[INFO] [stdout] test latex::tests::test_parse_greek_theta ... ok
[INFO] [stdout] test latex::tests::test_parse_nth_root ... ok
[INFO] [stdout] test latex::tests::test_parse_implicit_mul ... ok
[INFO] [stdout] test equation_system::tests::test_solution_value_conversion ... ok
[INFO] [stdout] test latex::tests::test_parse_negation ... ok
[INFO] [stdout] test latex::tests::test_parse_number ... ok
[INFO] [stdout] test latex::tests::test_parse_power ... ok
[INFO] [stdout] test latex::tests::test_parse_sin ... ok
[INFO] [stdout] test latex::tests::test_parse_subtraction ... ok
[INFO] [stdout] test latex::tests::test_parse_sqrt ... ok
[INFO] [stdout] test latex::tests::test_parse_power_braced ... ok
[INFO] [stdout] test latex::tests::test_parse_times ... ok
[INFO] [stdout] test limits::tests::test_indeterminate_0_over_0 ... ok
[INFO] [stdout] test limits::tests::test_constant_limit ... ok
[INFO] [stdout] test limits::tests::test_direct_substitution ... ok
[INFO] [stdout] test limits::tests::test_lhopital_sinx_over_x ... ok
[INFO] [stdout] test integration::tests::test_is_polynomial_like ... ok
[INFO] [stdout] test integration::tests::test_liate_priority ... ok
[INFO] [stdout] test limits::tests::test_lhopital_1_minus_cosx_over_x2 ... ok
[INFO] [stdout] test latex::tests::test_parse_variable ... ok
[INFO] [stdout] test limits::tests::test_lhopital_exp_minus_1_over_x ... ok
[INFO] [stdout] test limits::tests::test_limit_at_infinity_rational ... ok
[INFO] [stdout] test limits::tests::test_lhopital_tanx_over_x ... ok
[INFO] [stdout] test limits::tests::test_lhopital_x2_over_expx_infinity ... ok
[INFO] [stdout] test limits::tests::test_lhopital_max_iterations ... ok
[INFO] [stdout] test limits::tests::test_lhopital_lnx_over_x_infinity ... ok
[INFO] [stdout] test limits::tests::test_limit_polynomial_infinity ... ok
[INFO] [stdout] test limits::tests::test_linear_limit ... ok
[INFO] [stdout] test limits::tests::test_one_sided_limits ... ok
[INFO] [stdout] test limits::tests::test_sinx_over_x ... ok
[INFO] [stdout] test limits::tests::test_trig_limit ... ok
[INFO] [stdout] test matrix::tests::test_addition ... ok
[INFO] [stdout] test matrix::tests::test_addition_dimension_check ... ok
[INFO] [stdout] test matrix::tests::test_adjugate_2x2 ... ok
[INFO] [stdout] test matrix::tests::test_characteristic_polynomial_2x2 ... ok
[INFO] [stdout] test matrix::tests::test_characteristic_polynomial_non_square ... ok
[INFO] [stdout] test matrix::tests::test_determinant_2x2 ... ok
[INFO] [stdout] test matrix::tests::test_determinant_3x3 ... ok
[INFO] [stdout] test matrix::tests::test_determinant_3x3_nonzero ... ok
[INFO] [stdout] test matrix::tests::test_determinant_identity ... ok
[INFO] [stdout] test matrix::tests::test_determinant_non_square ... ok
[INFO] [stdout] test matrix::tests::test_determinant_symbolic ... ok
[INFO] [stdout] test matrix::tests::test_diagonal_matrix ... ok
[INFO] [stdout] test matrix::tests::test_eigenpairs ... ok
[INFO] [stdout] test matrix::tests::test_eigenvalues_2x2_symmetric ... ok
[INFO] [stdout] test matrix::tests::test_double_transpose ... ok
[INFO] [stdout] test matrix::tests::test_eigenvalues_3x3 ... ok
[INFO] [stdout] test matrix::tests::test_eigenvalues_diagonal ... ok
[INFO] [stdout] test matrix::tests::test_eigenvalues_identity ... ok
[INFO] [stdout] test matrix::tests::test_eigenvalues_non_square ... ok
[INFO] [stdout] test matrix::tests::test_eigenvector_2x2 ... ok
[INFO] [stdout] test matrix::tests::test_identity_matrix ... ok
[INFO] [stdout] test matrix::tests::test_inverse_2x2 ... ok
[INFO] [stdout] test matrix::tests::test_inverse_singular_matrix ... ok
[INFO] [stdout] test matrix::tests::test_inverse_3x3 ... ok
[INFO] [stdout] test matrix::tests::test_inverse_identity ... ok
[INFO] [stdout] test matrix::tests::test_is_singular ... ok
[INFO] [stdout] test matrix::tests::test_is_diagonalizable_identity ... ok
[INFO] [stdout] test matrix::tests::test_latex_output ... ok
[INFO] [stdout] test matrix::tests::test_matrix_creation ... ok
[INFO] [stdout] test matrix::tests::test_scalar_multiplication ... ok
[INFO] [stdout] test matrix::tests::test_submatrix ... ok
[INFO] [stdout] test matrix::tests::test_symbolic_matrix ... ok
[INFO] [stdout] test matrix::tests::test_trace ... ok
[INFO] [stdout] test matrix::tests::test_transpose ... ok
[INFO] [stdout] test matrix::tests::test_transpose_multiplication_property ... ok
[INFO] [stdout] test matrix::tests::test_zero_matrix ... ok
[INFO] [stdout] test matrix::tests::test_matrix_multiplication ... ok
[INFO] [stdout] test ode::tests::test_extract_linear_coefficients ... ok
[INFO] [stdout] test ode::tests::test_is_linear ... ok
[INFO] [stdout] test ode::tests::test_is_separable ... ok
[INFO] [stdout] test ode::tests::test_solve_ivp ... ok
[INFO] [stdout] test ode::tests::test_solve_linear_simple ... ok
[INFO] [stdout] test ode::tests::test_solve_separable_xy ... ok
[INFO] [stdout] test ode::tests::test_solve_separable_simple ... ok
[INFO] [stdout] test ode::tests::test_substitute_var ... ok
[INFO] [stdout] test ode::tests::test_try_separate_constant ... ok
[INFO] [stdout] test ode::tests::test_try_separate_only_x ... ok
[INFO] [stdout] test ode::tests::test_try_separate_only_y ... ok
[INFO] [stdout] test partial_fractions::tests::test_decompose_x_times_x_minus_1 ... ok
[INFO] [stdout] test ode::tests::test_try_separate_simple_product ... ok
[INFO] [stdout] test ode::tests::test_try_solve_implicit_ln_y ... ok
[INFO] [stdout] test partial_fractions::tests::test_decompose_simple ... ok
[INFO] [stdout] test partial_fractions::tests::test_extract_coefficients ... ok
[INFO] [stdout] test partial_fractions::tests::test_is_polynomial ... ok
[INFO] [stdout] test partial_fractions::tests::test_find_polynomial_roots_quadratic ... ok
[INFO] [stdout] test partial_fractions::tests::test_polynomial_degree ... ok
[INFO] [stdout] test partial_fractions::tests::test_is_rational_function ... ok
[INFO] [stdout] test partial_fractions::tests::test_linear_term_higher_power_integration ... ok
[INFO] [stdout] test partial_fractions::tests::test_linear_term_integration ... ok
[INFO] [stdout] test pattern::tests::test_additive_identity_rule ... ok
[INFO] [stdout] test pattern::tests::test_exact_matching ... ok
[INFO] [stdout] test pattern::tests::test_apply_pattern ... ok
[INFO] [stdout] test pattern::tests::test_commutativity ... ok
[INFO] [stdout] test pattern::tests::test_fixpoint_simplification ... ok
[INFO] [stdout] test pattern::tests::test_multiplicative_zero_rule ... ok
[INFO] [stdout] test pattern::tests::test_nested_matching ... ok
[INFO] [stdout] test pattern::tests::test_power_rules ... ok
[INFO] [stdout] test pattern::tests::test_recursive_rule_application ... ok
[INFO] [stdout] test partial_fractions::tests::test_find_polynomial_roots_linear ... ok
[INFO] [stdout] test pattern::tests::test_wildcard_matching ... ok
[INFO] [stdout] test precision::tests::test_arbitrary_precision_rational ... ok
[INFO] [stdout] test precision::tests::test_complex_arithmetic ... ok
[INFO] [stdout] test precision::tests::test_complex_from_sqrt_negative ... ok
[INFO] [stdout] test partial_fractions::tests::test_irreducible_quadratic ... ok
[INFO] [stdout] test pattern::tests::test_same_wildcard_must_match_same_expr ... ok
[INFO] [stdout] test precision::tests::test_fixed_decimal_precision ... ok
[INFO] [stdout] test precision::tests::test_infinity_handling ... ok
[INFO] [stdout] test precision::tests::test_rounding_modes ... ok
[INFO] [stdout] test precision::tests::test_significant_figures ... ok
[INFO] [stdout] test precision::tests::test_sqrt_2_precision ... ok
[INFO] [stdout] test precision::tests::test_complex_not_allowed ... ok
[INFO] [stdout] test precision::tests::test_division_by_zero ... ok
[INFO] [stdout] test precision::tests::test_overflow_handling ... ok
[INFO] [stdout] test resolution_path::tests::test_describe_latex ... ok
[INFO] [stdout] test resolution_path::tests::test_empty_path_statistics ... ok
[INFO] [stdout] test resolution_path::tests::test_escape_latex_text ... ok
[INFO] [stdout] test precision::tests::test_variable_evaluation ... ok
[INFO] [stdout] test resolution_path::tests::test_is_key_operation ... ok
[INFO] [stdout] test resolution_path::tests::test_statistics_calculus ... ok
[INFO] [stdout] test resolution_path::tests::test_statistics_matrix ... ok
[INFO] [stdout] test resolution_path::tests::test_operation_category ... ok
[INFO] [stdout] test precision::tests::test_undefined_variable ... ok
[INFO] [stdout] test resolution_path::tests::test_to_json ... ok
[INFO] [stdout] test resolution_path::tests::test_statistics ... ok
[INFO] [stdout] test resolution_path::tests::test_operation_counts_default ... ok
[INFO] [stdout] test resolution_path::tests::test_to_text_detailed ... ok
[INFO] [stdout] test resolution_path::tests::test_unique_operations_count ... ok
[INFO] [stdout] test resolution_path::tests::test_to_text_minimal ... ok
[INFO] [stdout] test resolution_path::tests::test_to_latex_standard ... ok
[INFO] [stdout] test resolution_path::tests::test_to_text_standard ... ok
[INFO] [stdout] test resolution_path::tests::test_verbosity_default ... ok
[INFO] [stdout] test solver::system_solver_tests::test_2x2_unique_solution ... ok
[INFO] [stdout] test solver::system_solver_tests::test_cramers_rule_2x2 ... ok
[INFO] [stdout] test solver::system_solver_tests::test_2x2_with_coefficients ... ok
[INFO] [stdout] test solver::system_solver_tests::test_3x3_unique_solution ... ok
[INFO] [stdout] test solver::system_solver_tests::test_linear_system_struct ... ok
[INFO] [stdout] test trigonometric::tests::test_double_angle_cos_difference ... ok
[INFO] [stdout] test solver::system_solver_tests::test_overdetermined_consistent ... ok
[INFO] [stdout] test trigonometric::tests::test_double_angle_sin_product ... ok
[INFO] [stdout] test trigonometric::tests::test_parity_cos_negative ... ok
[INFO] [stdout] test trigonometric::tests::test_parity_sin_negative ... ok
[INFO] [stdout] test trigonometric::tests::test_inverse_sin_arcsin ... ok
[INFO] [stdout] test trigonometric::tests::test_product_sin_sin_to_squared ... ok
[INFO] [stdout] test trigonometric::tests::test_one_plus_tan_squared ... ok
[INFO] [stdout] test solver::system_solver_tests::test_inconsistent_system ... ok
[INFO] [stdout] test solver::system_solver_tests::test_underdetermined_system ... ok
[INFO] [stdout] test matrix::tests::test_is_diagonalizable_symmetric ... ok
[INFO] [stdout] test trigonometric::tests::test_pythagorean_one_minus_cos_squared ... ok
[INFO] [stdout] test trigonometric::tests::test_special_cos_zero ... ok
[INFO] [stdout] test trigonometric::tests::test_pythagorean_cos_sin_squared ... ok
[INFO] [stdout] test trigonometric::tests::test_special_sin_zero ... ok
[INFO] [stdout] test trigonometric::tests::test_pythagorean_one_minus_sin_squared ... ok
[INFO] [stdout] test trigonometric::tests::test_pythagorean_sin_cos_squared ... ok
[INFO] [stdout] test trigonometric::tests::test_quotient_sin_over_cos ... ok
[INFO] [stderr]      Running tests/ast_tests.rs (/opt/rustwide/target/debug/deps/ast_tests-7e35c9f196e1a858)
[INFO] [stdout] test trigonometric::tests::test_simplify_with_steps ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 224 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 70 tests
[INFO] [stdout] test test_ast_construction_binary_add ... ok
[INFO] [stdout] test test_ast_construction_variable ... ok
[INFO] [stdout] test test_ast_construction_complex_expression ... ok
[INFO] [stdout] test test_ast_construction_float ... ok
[INFO] [stdout] test test_differentiate_constant_e ... ok
[INFO] [stdout] test test_contains_variable_false ... ok
[INFO] [stdout] test test_contains_variable_in_expression ... ok
[INFO] [stdout] test test_constant_in_expression_e_to_x ... ok
[INFO] [stdout] test test_contains_variable_true ... ok
[INFO] [stdout] test test_constant_in_expression_2_pi_r ... ok
[INFO] [stdout] test test_differentiate_constant_i ... ok
[INFO] [stdout] test test_ast_construction_integer ... ok
[INFO] [stdout] test test_display_negation ... ok
[INFO] [stdout] test test_display_operator_precedence_add_mul ... ok
[INFO] [stdout] test test_display_operator_precedence_mul_add ... ok
[INFO] [stdout] test test_display_absolute_value ... ok
[INFO] [stdout] test test_display_function_call ... ok
[INFO] [stdout] test test_differentiate_constant_pi ... ok
[INFO] [stdout] test test_display_power ... ok
[INFO] [stdout] test test_display_function_call_multiple_args ... ok
[INFO] [stdout] test test_evaluate_constant_e ... ok
[INFO] [stdout] test test_evaluate_constant_pi ... ok
[INFO] [stdout] test test_evaluate_constant_i_returns_none ... ok
[INFO] [stdout] test test_equation_creation ... ok
[INFO] [stdout] test test_evaluate_abs ... ok
[INFO] [stdout] test test_evaluate_add ... ok
[INFO] [stdout] test test_evaluate_complex_expression ... ok
[INFO] [stdout] test test_evaluate_div ... ok
[INFO] [stdout] test test_evaluate_div_by_zero ... ok
[INFO] [stdout] test test_evaluate_power ... ok
[INFO] [stdout] test test_evaluate_float ... ok
[INFO] [stdout] test test_evaluate_sqrt ... ok
[INFO] [stdout] test test_evaluate_sin ... ok
[INFO] [stdout] test test_evaluate_missing_variable ... ok
[INFO] [stdout] test test_evaluate_mul ... ok
[INFO] [stdout] test test_evaluate_negation ... ok
[INFO] [stdout] test test_evaluate_integer ... ok
[INFO] [stdout] test test_expression_constant_pi_display ... ok
[INFO] [stdout] test test_evaluate_variable_missing ... ok
[INFO] [stdout] test test_evaluate_variable_present ... ok
[INFO] [stdout] test test_expression_constant_clone ... ok
[INFO] [stdout] test test_expression_constant_e_display ... ok
[INFO] [stdout] test test_expression_constant_i_display ... ok
[INFO] [stdout] test test_evaluate_sub ... ok
[INFO] [stdout] test test_fold_count_nodes ... ok
[INFO] [stdout] test test_helper_constructor_euler ... ok
[INFO] [stdout] test test_simplify_add_zero_left ... ok
[INFO] [stdout] test test_simplify_add_zero_right ... ok
[INFO] [stdout] test test_helper_constructor_i ... ok
[INFO] [stdout] test test_helper_constructor_pi ... ok
[INFO] [stdout] test test_map_double_values ... ok
[INFO] [stdout] test test_simplify_div_one ... ok
[INFO] [stdout] test test_simplify_double_negation ... ok
[INFO] [stdout] test test_simplify_mul_one_left ... ok
[INFO] [stdout] test test_simplify_mul_one_right ... ok
[INFO] [stdout] test test_simplify_mul_zero_left ... ok
[INFO] [stdout] test test_simplify_mul_zero_right ... ok
[INFO] [stdout] test test_simplify_nested ... ok
[INFO] [stdout] test test_simplify_power_one ... ok
[INFO] [stdout] test test_simplify_power_zero ... ok
[INFO] [stdout] test test_simplify_sub_zero ... ok
[INFO] [stdout] test test_symbolic_constant_clone ... ok
[INFO] [stdout] test test_symbolic_constant_e_display ... ok
[INFO] [stdout] test test_symbolic_constant_equality ... ok
[INFO] [stdout] test test_symbolic_constant_i_display ... ok
[INFO] [stdout] test test_symbolic_constant_pi_display ... ok
[INFO] [stdout] test test_variable_extraction_duplicate ... ok
[INFO] [stdout] test test_variable_extraction_multiple ... ok
[INFO] [stdout] test test_variable_extraction_none ... ok
[INFO] [stdout] test test_variable_extraction_single ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 70 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 40 tests
[INFO] [stdout] test basic_derivatives::test_constant_derivative ... ok
[INFO] [stdout] test basic_derivatives::test_power_rule_general ... ok
[INFO] [stdout] test basic_derivatives::test_difference_rule ... ok
[INFO] [stdout] test basic_derivatives::test_power_rule_fractional ... ok
[INFO] [stdout] test basic_derivatives::test_different_variable_derivative ... ok
[INFO] [stdout] test basic_derivatives::test_power_rule_simple ... ok
[INFO] [stdout] test basic_derivatives::test_sum_rule ... ok
[INFO] [stdout] test chain_rule::test_chain_rule_power ... ok
[INFO] [stdout] test basic_derivatives::test_variable_derivative ... ok
[INFO] [stdout] test chain_rule::test_chain_rule_nested_power ... ok
[INFO] [stdout] test exp_log_derivatives::test_exp_chain_rule ... ok
[INFO] [stdout] test edge_cases::test_derivative_complex_expression ... ok
[INFO] [stderr]      Running tests/derivative_tests.rs (/opt/rustwide/target/debug/deps/derivative_tests-2e3bd84ea2dae741)
[INFO] [stdout] test exp_log_derivatives::test_exponential_base ... ok
[INFO] [stdout] test edge_cases::test_derivative_of_negation ... ok
[INFO] [stdout] test exp_log_derivatives::test_exp_derivative ... ok
[INFO] [stdout] test edge_cases::test_derivative_with_multiple_variables ... ok
[INFO] [stdout] test exp_log_derivatives::test_ln_chain_rule ... ok
[INFO] [stdout] test exp_log_derivatives::test_ln_derivative ... ok
[INFO] [stdout] test edge_cases::test_derivative_of_constant_times_variable ... ok
[INFO] [stdout] test exp_log_derivatives::test_log10_derivative ... ok
[INFO] [stdout] test numerical_comparison::test_symbolic_vs_numerical_exp ... ok
[INFO] [stdout] test numerical_comparison::test_symbolic_vs_numerical_trig ... ok
[INFO] [stdout] test numerical_comparison::test_symbolic_vs_numerical_polynomial ... ok
[INFO] [stdout] test partial_derivatives::test_partial_derivative_multivariable ... ok
[INFO] [stdout] test product_quotient_rules::test_quotient_rule_complex ... ok
[INFO] [stdout] test partial_derivatives::test_compute_all_partial_derivatives ... ok
[INFO] [stdout] test numerical_comparison::test_symbolic_vs_numerical_quotient ... ok
[INFO] [stdout] test partial_derivatives::test_partial_derivative_simple ... ok
[INFO] [stdout] test partial_derivatives::test_partial_derivative_pythagorean ... ok
[INFO] [stdout] test sqrt_derivatives::test_sqrt_derivative ... ok
[INFO] [stdout] test trig_derivatives::test_asin_derivative ... ok
[INFO] [stdout] test product_quotient_rules::test_product_rule ... ok
[INFO] [stdout] test product_quotient_rules::test_product_rule_with_constants ... ok
[INFO] [stdout] test sqrt_derivatives::test_cbrt_derivative ... ok
[INFO] [stdout] test trig_derivatives::test_atan_derivative ... ok
[INFO] [stdout] test product_quotient_rules::test_quotient_rule ... ok
[INFO] [stdout] test trig_derivatives::test_sin_chain_rule ... ok
[INFO] [stdout] test trig_derivatives::test_cos_derivative ... ok
[INFO] [stdout] test trig_derivatives::test_sin_derivative ... ok
[INFO] [stdout] test trig_derivatives::test_tan_derivative ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 40 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/integration_tests.rs (/opt/rustwide/target/debug/deps/integration_tests-aeac7cdc925cf8b2)
[INFO] [stdout] 
[INFO] [stdout] running 19 tests
[INFO] [stdout] test dimension_tests::test_unit_conversion ... ignored
[INFO] [stdout] test numerical_tests::test_numerical_root_finding ... ignored
[INFO] [stdout] test parser_tests::test_parse_complex_equation ... ignored
[INFO] [stdout] test parser_tests::test_parse_expression_with_functions ... ignored
[INFO] [stdout] test parser_tests::test_parse_simple_equation ... ignored
[INFO] [stdout] test dimension_tests::test_base_dimension_creation ... ok
[INFO] [stdout] test dimension_tests::test_dimensionless_quantity ... ok
[INFO] [stdout] test resolution_path_tests::test_empty_resolution_path ... ok
[INFO] [stdout] test solver_tests::test_solve_linear_equation ... ignored
[INFO] [stdout] test solver_tests::test_solve_quadratic_equation ... ignored
[INFO] [stdout] test transform_tests::test_cartesian_to_spherical_conversion ... ok
[INFO] [stdout] test resolution_path_tests::test_resolution_path_builder ... ok
[INFO] [stdout] test transform_tests::test_cartesian_to_polar_conversion ... ok
[INFO] [stdout] test transform_tests::test_coordinate_round_trip ... ok
[INFO] [stdout] test transform_tests::test_polar_to_cartesian_conversion ... ok
[INFO] [stdout] test test_ffi_support ... ok
[INFO] [stdout] test property_tests::test_cartesian_polar_round_trip ... ok
[INFO] [stdout] test property_tests::test_cartesian_magnitude ... ok
[INFO] [stdout] test test_library_version ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- test_library_version stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'test_library_version' (361) panicked at tests/integration_tests.rs:12:5:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: "0.2.1"
[INFO] [stdout]  right: "0.2.0"
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5a3c4ed6b532 - std[3f03f8b59f91bef1]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5a3c4ed6b532 - std[3f03f8b59f91bef1]::backtrace_rs::backtrace::trace_unsynchronized::<std[3f03f8b59f91bef1]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5a3c4ed6b532 - std[3f03f8b59f91bef1]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5a3c4ed6b532 - <<std[3f03f8b59f91bef1]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[585f66e14d78f9ba]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5a3c4ed815ea - <core[585f66e14d78f9ba]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5a3c4ed815ea - core[585f66e14d78f9ba]::fmt::write
[INFO] [stdout]    6:     0x5a3c4ed70796 - std[3f03f8b59f91bef1]::io::default_write_fmt::<alloc[15e7b27aba85d2e2]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5a3c4ed70796 - <alloc[15e7b27aba85d2e2]::vec::Vec<u8> as std[3f03f8b59f91bef1]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5a3c4ed48b6f - <std[3f03f8b59f91bef1]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5a3c4ed48b6f - std[3f03f8b59f91bef1]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5a3c4ed63699 - std[3f03f8b59f91bef1]::panicking::default_hook
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5a3c4ebc4b3e - <alloc[15e7b27aba85d2e2]::boxed::Box<dyn for<'a, 'b> core[585f66e14d78f9ba]::ops::function::Fn<(&'a std[3f03f8b59f91bef1]::panic::PanicHookInfo<'b>,), Output = ()> + core[585f66e14d78f9ba]::marker::Sync + core[585f66e14d78f9ba]::marker::Send> as core[585f66e14d78f9ba]::ops::function::Fn<(&std[3f03f8b59f91bef1]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5a3c4ebc4b3e - test[30224e0cb089acd2]::test_main_with_exit_callback::<test[30224e0cb089acd2]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5a3c4ed63902 - <alloc[15e7b27aba85d2e2]::boxed::Box<dyn for<'a, 'b> core[585f66e14d78f9ba]::ops::function::Fn<(&'a std[3f03f8b59f91bef1]::panic::PanicHookInfo<'b>,), Output = ()> + core[585f66e14d78f9ba]::marker::Sync + core[585f66e14d78f9ba]::marker::Send> as core[585f66e14d78f9ba]::ops::function::Fn<(&std[3f03f8b59f91bef1]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5a3c4ed63902 - std[3f03f8b59f91bef1]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5a3c4ed48c28 - std[3f03f8b59f91bef1]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5a3c4ed3dd09 - std[3f03f8b59f91bef1]::sys::backtrace::__rust_end_short_backtrace::<std[3f03f8b59f91bef1]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5a3c4ed49a7d - __rustc[caa99d26c7bae192]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5a3c4ed81d2c - core[585f66e14d78f9ba]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5a3c4ed81be3 - core[585f66e14d78f9ba]::panicking::assert_failed_inner
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/panicking.rs:439:17
[INFO] [stdout]   20:     0x5a3c4eba9eb2 - core[585f66e14d78f9ba]::panicking::assert_failed::<&str, &str>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/panicking.rs:394:5
[INFO] [stdout]   21:     0x5a3c4ebb2659 - integration_tests[35f1860d34ac7fe6]::test_library_version
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/integration_tests.rs:12:5
[INFO] [stdout]   22:     0x5a3c4ebb2317 - integration_tests[35f1860d34ac7fe6]::test_library_version::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/integration_tests.rs:9:26
[INFO] [stdout]   23:     0x5a3c4ebac8d6 - <integration_tests[35f1860d34ac7fe6]::test_library_version::{closure#0} as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x5a3c4ebb8eeb - <fn() -> core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String> as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x5a3c4ebb8eeb - test[30224e0cb089acd2]::__rust_begin_short_backtrace::<core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>, fn() -> core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:663:18
[INFO] [stdout]   26:     0x5a3c4ebc574a - test[30224e0cb089acd2]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:686:74
[INFO] [stdout]   27:     0x5a3c4ebc574a - <core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<test[30224e0cb089acd2]::run_test_in_process::{closure#0}> as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   28:     0x5a3c4ebc574a - std[3f03f8b59f91bef1]::panicking::catch_unwind::do_call::<core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<test[30224e0cb089acd2]::run_test_in_process::{closure#0}>, core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x5a3c4ebc574a - std[3f03f8b59f91bef1]::panicking::catch_unwind::<core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>, core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<test[30224e0cb089acd2]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x5a3c4ebc574a - std[3f03f8b59f91bef1]::panic::catch_unwind::<core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<test[30224e0cb089acd2]::run_test_in_process::{closure#0}>, core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x5a3c4ebc574a - test[30224e0cb089acd2]::run_test_in_process
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:686:27
[INFO] [stdout]   32:     0x5a3c4ebc574a - test[30224e0cb089acd2]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:607:43
[INFO] [stdout]   33:     0x5a3c4ebbfc14 - test[30224e0cb089acd2]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:637:41
[INFO] [stdout]   34:     0x5a3c4ebbfc14 - std[3f03f8b59f91bef1]::sys::backtrace::__rust_begin_short_backtrace::<test[30224e0cb089acd2]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x5a3c4ebc8242 - std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked::<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   36:     0x5a3c4ebc8242 - <core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   37:     0x5a3c4ebc8242 - std[3f03f8b59f91bef1]::panicking::catch_unwind::do_call::<core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:581:40
[INFO] [stdout]   38:     0x5a3c4ebc8242 - std[3f03f8b59f91bef1]::panicking::catch_unwind::<(), core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x5a3c4ebc8242 - std[3f03f8b59f91bef1]::panic::catch_unwind::<core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x5a3c4ebc8242 - std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked::<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   41:     0x5a3c4ebc8242 - <std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1} as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x5a3c4ed6adcf - <alloc[15e7b27aba85d2e2]::boxed::Box<dyn core[585f66e14d78f9ba]::ops::function::FnOnce<(), Output = ()> + core[585f66e14d78f9ba]::marker::Send> as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   43:     0x5a3c4ed6adcf - <std[3f03f8b59f91bef1]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   44:     0x77b3726e3aa4 - <unknown>
[INFO] [stdout]   45:     0x77b372770a64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     test_library_version
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 11 passed; 1 failed; 7 ignored; 0 measured; 0 filtered out; finished in 0.10s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--test integration_tests`
[INFO] running `Command { std: "docker" "inspect" "1cde855e5ab678be8ccf945d585731210d70228b9b4830127af5def102403ecd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1cde855e5ab678be8ccf945d585731210d70228b9b4830127af5def102403ecd", kill_on_drop: false }`
[INFO] [stdout] 1cde855e5ab678be8ccf945d585731210d70228b9b4830127af5def102403ecd
