[INFO] cloning repository https://github.com/yandongqiang/section-properties
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/yandongqiang/section-properties" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyandongqiang%2Fsection-properties", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyandongqiang%2Fsection-properties'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 6e49452d6fa6774cbb7fecb882832b645c271533
[INFO] checking yandongqiang/section-properties against f1c52bf13c990fc425c542cc90a0396a87db24ba for pr-164812
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyandongqiang%2Fsection-properties" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/yandongqiang/section-properties
[INFO] finished tweaking git repo https://github.com/yandongqiang/section-properties
[INFO] tweaked toml for git repo https://github.com/yandongqiang/section-properties written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/yandongqiang/section-properties on toolchain f1c52bf13c990fc425c542cc90a0396a87db24ba
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f1c52bf13c990fc425c542cc90a0396a87db24ba" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/yandongqiang/section-properties 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" "+f1c52bf13c990fc425c542cc90a0396a87db24ba" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> crates/structural-analysis/Cargo.toml:10:12
[INFO] [stderr]    |
[INFO] [stderr]  9 | repository = "https://github.com/yandongqiang/section-properties"
[INFO] [stderr]    |              ----------------------------------------------------
[INFO] [stderr] 10 | homepage = "https://github.com/yandongqiang/section-properties"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `structural-analysis` (manifest) generated 1 warning
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> crates/section-properties/Cargo.toml:10:12
[INFO] [stderr]    |
[INFO] [stderr]  9 | repository = "https://github.com/yandongqiang/section-properties"
[INFO] [stderr]    |              ----------------------------------------------------
[INFO] [stderr] 10 | homepage = "https://github.com/yandongqiang/section-properties"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `section-properties` (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:c0af3998e971868164375a7dfb646c9933ddd1a3bdb00fa2041266763dc1eeab" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 5f1984a57dea3f8861091191a99324c0637a0f3e17b8075702ec9cbc88c25bd6
[INFO] running `Command { std: "docker" "start" "5f1984a57dea3f8861091191a99324c0637a0f3e17b8075702ec9cbc88c25bd6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5f1984a57dea3f8861091191a99324c0637a0f3e17b8075702ec9cbc88c25bd6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "5f1984a57dea3f8861091191a99324c0637a0f3e17b8075702ec9cbc88c25bd6" "/opt/rustwide/cargo-home/bin/cargo" "+f1c52bf13c990fc425c542cc90a0396a87db24ba" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5f1984a57dea3f8861091191a99324c0637a0f3e17b8075702ec9cbc88c25bd6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "5f1984a57dea3f8861091191a99324c0637a0f3e17b8075702ec9cbc88c25bd6" "/opt/rustwide/cargo-home/bin/cargo" "+f1c52bf13c990fc425c542cc90a0396a87db24ba" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> crates/structural-analysis/Cargo.toml:10:12
[INFO] [stderr]    |
[INFO] [stderr]  9 | repository = "https://github.com/yandongqiang/section-properties"
[INFO] [stderr]    |              ----------------------------------------------------
[INFO] [stderr] 10 | homepage = "https://github.com/yandongqiang/section-properties"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `structural-analysis` (manifest) generated 1 warning
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> crates/section-properties/Cargo.toml:10:12
[INFO] [stderr]    |
[INFO] [stderr]  9 | repository = "https://github.com/yandongqiang/section-properties"
[INFO] [stderr]    |              ----------------------------------------------------
[INFO] [stderr] 10 | homepage = "https://github.com/yandongqiang/section-properties"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `section-properties` (manifest) generated 1 warning
[INFO] [stderr]    Compiling proc-macro2 v1.0.107
[INFO] [stderr]    Compiling unicode-ident v1.0.26
[INFO] [stderr]    Compiling serde_core v1.0.229
[INFO] [stderr]     Checking memchr v2.8.3
[INFO] [stderr]    Compiling quote v1.0.47
[INFO] [stderr]    Compiling serde_json v1.0.151
[INFO] [stderr]     Checking ryu v1.0.23
[INFO] [stderr]    Compiling libc v0.2.190
[INFO] [stderr]    Compiling winnow v1.0.4
[INFO] [stderr]    Compiling hashbrown v0.17.1
[INFO] [stderr]    Compiling toml_datetime v1.1.2+spec-1.1.0
[INFO] [stderr]     Checking futures-core v0.3.34
[INFO] [stderr]    Compiling cc v1.7.0
[INFO] [stderr]     Checking csv-core v0.1.13
[INFO] [stderr]    Compiling indexmap v2.14.2
[INFO] [stderr]    Compiling crossbeam-utils v0.8.23
[INFO] [stderr]    Compiling syn v3.0.6
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]    Compiling toml_parser v1.1.5+spec-1.1.0
[INFO] [stderr]     Checking futures-io v0.3.34
[INFO] [stderr]    Compiling wayland-backend v0.3.17
[INFO] [stderr]    Compiling toml_edit v0.25.17+spec-1.1.0
[INFO] [stderr]     Checking fastrand v2.5.0
[INFO] [stderr]     Checking csv v1.4.0
[INFO] [stderr]     Checking concurrent-queue v2.5.0
[INFO] [stderr]     Checking event-listener v5.4.2
[INFO] [stderr]    Compiling wayland-scanner v0.31.11
[INFO] [stderr]     Checking event-listener-strategy v0.5.4
[INFO] [stderr]     Checking futures-lite v2.6.1
[INFO] [stderr]    Compiling proc-macro-crate v3.5.0
[INFO] [stderr]     Checking tracing-core v0.1.36
[INFO] [stderr]    Compiling async-io v2.6.0
[INFO] [stderr]     Checking async-channel v2.5.0
[INFO] [stderr]     Checking piper v0.2.5
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking async-lock v3.4.2
[INFO] [stderr]     Checking writeable v0.6.4
[INFO] [stderr]     Checking typenum v1.20.1
[INFO] [stderr]     Checking litemap v0.8.3
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]     Checking blocking v1.7.0
[INFO] [stderr]    Compiling memoffset v0.9.1
[INFO] [stderr]    Compiling icu_properties_data v2.3.0
[INFO] [stderr]    Compiling icu_normalizer_data v2.3.0
[INFO] [stderr]    Compiling static_assertions v1.1.0
[INFO] [stderr]     Checking async-executor v1.14.0
[INFO] [stderr]     Checking async-broadcast v0.7.2
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking ordered-stream v0.2.0
[INFO] [stderr]     Checking futures-sink v0.3.34
[INFO] [stderr]     Checking hex v0.4.3
[INFO] [stderr]     Checking futures-task v0.3.34
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking async-fs v2.2.0
[INFO] [stderr]     Checking wayland-client v0.31.15
[INFO] [stderr]    Compiling nix v0.29.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking ttf-parser v0.25.1
[INFO] [stderr]     Checking rand v0.8.8
[INFO] [stderr]     Checking xdg-home v1.3.0
[INFO] [stderr]     Checking ab_glyph_rasterizer v0.1.10
[INFO] [stderr]     Checking generic-array v0.14.7
[INFO] [stderr]     Checking wayland-csd-frame v0.3.0
[INFO] [stderr]    Compiling synstructure v0.14.0
[INFO] [stderr]    Compiling zvariant_utils v2.1.0
[INFO] [stderr]     Checking form_urlencoded v1.2.2
[INFO] [stderr]     Checking memmap2 v0.9.11
[INFO] [stderr]     Checking crypto-common v0.1.7
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking ahash v0.8.12
[INFO] [stderr]     Checking wayland-protocols v0.32.13
[INFO] [stderr]     Checking sha1 v0.10.7
[INFO] [stderr]     Checking wayland-cursor v0.31.14
[INFO] [stderr]     Checking accesskit v0.16.3
[INFO] [stderr]     Checking x11-dl v2.21.0
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking x11rb v0.13.2
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking immutable-chunkmap v2.1.4
[INFO] [stderr]     Checking owned_ttf_parser v0.25.1
[INFO] [stderr]     Checking ab_glyph v0.2.32
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling enumflags2_derive v0.7.12
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]    Compiling zerofrom-derive v0.1.8
[INFO] [stderr]    Compiling yoke-derive v0.8.4
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]     Checking zerofrom v0.1.8
[INFO] [stderr]    Compiling zerovec-derive v0.11.6
[INFO] [stderr]    Compiling zvariant_derive v4.2.0
[INFO] [stderr]     Checking yoke v0.8.3
[INFO] [stderr]    Compiling displaydoc v0.2.7
[INFO] [stderr]    Compiling bytemuck_derive v1.12.1
[INFO] [stderr]    Compiling futures-macro v0.3.34
[INFO] [stderr]     Checking zerotrie v0.2.5
[INFO] [stderr]    Compiling serde_repr v0.1.21
[INFO] [stderr]    Compiling async-trait v0.1.92
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]    Compiling zbus_macros v4.4.0
[INFO] [stderr]     Checking zerovec v0.11.8
[INFO] [stderr]     Checking calloop v0.13.0
[INFO] [stderr]     Checking calloop-wayland-source v0.3.0
[INFO] [stderr]     Checking futures-util v0.3.34
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]    Compiling winit v0.30.13
[INFO] [stderr]     Checking bytemuck v1.25.2
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking calloop v0.14.5
[INFO] [stderr]     Checking tiny-skia-path v0.11.4
[INFO] [stderr]     Checking tinystr v0.8.4
[INFO] [stderr]     Checking icu_locale_core v2.3.0
[INFO] [stderr]     Checking potential_utf v0.1.6
[INFO] [stderr]     Checking serde v1.0.229
[INFO] [stderr]     Checking icu_collections v2.3.0
[INFO] [stderr]     Checking wayland-protocols-wlr v0.3.12
[INFO] [stderr]     Checking tiny-skia v0.11.4
[INFO] [stderr]     Checking icu_provider v2.3.1
[INFO] [stderr]     Checking section-properties v0.4.0 (/opt/rustwide/workdir/crates/section-properties)
[INFO] [stderr]    Compiling enumflags2 v0.7.12
[INFO] [stderr]    Compiling quick-xml v0.30.0
[INFO] [stderr]     Checking zvariant v4.2.0
[INFO] [stderr]     Checking icu_normalizer v2.3.0
[INFO] [stderr]     Checking icu_properties v2.3.0
[INFO] [stderr]    Compiling zvariant_utils v4.2.0
[INFO] [stderr]     Checking smithay-client-toolkit v0.19.2
[INFO] [stderr]    Compiling zcheapstr v1.1.0
[INFO] [stderr]     Checking emath v0.29.1
[INFO] [stderr]     Checking ecolor v0.29.1
[INFO] [stderr]    Compiling zvariant_derive v5.15.0
[INFO] [stderr]     Checking idna_adapter v1.2.2
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking zbus_names v3.0.0
[INFO] [stderr]     Checking wayland-protocols-plasma v0.3.12
[INFO] [stderr]    Compiling zvariant v5.15.0
[INFO] [stderr]     Checking sctk-adwaita v0.10.1
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking accesskit_consumer v0.24.3
[INFO] [stderr]     Checking zbus_xml v4.0.0
[INFO] [stderr]     Checking zbus v4.4.0
[INFO] [stderr]     Checking structural-analysis v0.1.0 (/opt/rustwide/workdir/crates/structural-analysis)
[INFO] [stderr]    Compiling thiserror-impl v2.0.21
[INFO] [stderr]     Checking zbus-lockstep v0.4.4
[INFO] [stderr]     Checking epaint_default_fonts v0.29.1
[INFO] [stderr]     Checking epaint v0.29.1
[INFO] [stderr]     Checking calloop-wayland-source v0.4.1
[INFO] [stderr]     Checking wayland-protocols-misc v0.3.12
[INFO] [stderr]     Checking thiserror v2.0.21
[INFO] [stderr]     Checking wayland-protocols-experimental v20250721.0.1
[INFO] [stderr]     Checking async-signal v0.2.14
[INFO] [stderr]     Checking rand_core v0.9.5
[INFO] [stderr]    Compiling zbus-lockstep-macros v0.4.4
[INFO] [stderr]    Compiling glutin v0.32.3
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking smithay-client-toolkit v0.20.0
[INFO] [stderr]    Compiling zbus_names v4.3.4
[INFO] [stderr]     Checking async-process v2.5.0
[INFO] [stderr]     Checking egui v0.29.1
[INFO] [stderr]     Checking glutin_glx_sys v0.6.1
[INFO] [stderr]    Compiling async-recursion v1.2.0
[INFO] [stderr]     Checking uuid v1.28.0
[INFO] [stderr]    Compiling zbus_macros v5.19.0
[INFO] [stderr]    Compiling glutin-winit v0.5.0
[INFO] [stderr]     Checking rand v0.9.5
[INFO] [stderr]     Checking smithay-clipboard v0.7.3
[INFO] [stderr]     Checking webbrowser v1.2.4
[INFO] [stderr]     Checking arboard v3.6.1
[INFO] [stderr]     Checking async-net v2.0.0
[INFO] [stderr]     Checking futures-channel v0.3.34
[INFO] [stderr]    Compiling rfd v0.15.4
[INFO] [stderr]     Checking image v0.25.10
[INFO] [stderr]     Checking urlencoding v2.1.3
[INFO] [stderr]     Checking atspi-common v0.6.0
[INFO] [stdout] warning: unused import: `SolverSelection`
[INFO] [stdout]  --> crates/structural-analysis/tests/spring_support.rs:3:36
[INFO] [stdout]   |
[INFO] [stdout] 3 | use section_properties::{Material, SolverSelection};
[INFO] [stdout]   |                                    ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking egui_glow v0.29.1
[INFO] [stderr]     Checking zbus v5.19.0
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]    --> crates/structural-analysis/tests/prescribed_displacement.rs:124:18
[INFO] [stdout]     |
[INFO] [stdout] 124 |     let (frame, [a, b]) = make_fixed_beam();
[INFO] [stdout]     |                  ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]    --> crates/structural-analysis/tests/prescribed_displacement.rs:149:18
[INFO] [stdout]     |
[INFO] [stdout] 149 |     let (frame, [a, b]) = make_fixed_beam();
[INFO] [stdout]     |                  ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]    --> crates/structural-analysis/tests/prescribed_displacement.rs:208:18
[INFO] [stdout]     |
[INFO] [stdout] 208 |     let (frame, [a, b]) = make_fixed_beam();
[INFO] [stdout]     |                  ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]    --> crates/structural-analysis/tests/prescribed_displacement.rs:297:21
[INFO] [stdout]     |
[INFO] [stdout] 297 |     let (frame, [a, b]) = make_fixed_beam();
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]    --> crates/structural-analysis/tests/prescribed_displacement.rs:320:18
[INFO] [stdout]     |
[INFO] [stdout] 320 |     let (frame, [a, b]) = make_cantilever();
[INFO] [stdout]     |                  ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SolverSelection`
[INFO] [stdout]  --> crates/structural-analysis/tests/inclined_roller.rs:3:36
[INFO] [stdout]   |
[INFO] [stdout] 3 | use section_properties::{Material, SolverSelection};
[INFO] [stdout]   |                                    ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MemberHandle` and `NodeHandle`
[INFO] [stdout]  --> crates/structural-analysis/tests/inclined_roller.rs:4:46
[INFO] [stdout]   |
[INFO] [stdout] 4 | use structural_analysis::frame::{FrameModel, MemberHandle, NodeHandle};
[INFO] [stdout]   |                                              ^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EI` is never used
[INFO] [stdout]   --> crates/structural-analysis/tests/inclined_roller.rs:11:7
[INFO] [stdout]    |
[INFO] [stdout] 11 | const EI: f64 = E * I;
[INFO] [stdout]    |       ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `material`
[INFO] [stdout]   --> crates/structural-analysis/tests/beam_fem.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let material = make_steel();
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_material`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `P`
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:215:9
[INFO] [stdout]     |
[INFO] [stdout] 215 |     let P = 1000.0;
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_P`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rx`
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:267:9
[INFO] [stdout]     |
[INFO] [stdout] 267 |     let rx = reactions[0]; // u reaction
[INFO] [stdout]     |         ^^ help: if this is intentional, prefix it with an underscore: `_rx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `L`
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:326:9
[INFO] [stdout]     |
[INFO] [stdout] 326 |     let L = 2.0_f64.sqrt(); // Length = sqrt(2) for 45 deg at unit coords
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_L`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `P`
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:330:9
[INFO] [stdout]     |
[INFO] [stdout] 330 |     let P = 1000.0;
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_P`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `P`
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:394:9
[INFO] [stdout]     |
[INFO] [stdout] 394 |     let P = 1000.0;
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_P`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> crates/structural-analysis/tests/frame3d_end_releases.rs:354:9
[INFO] [stdout]     |
[INFO] [stdout] 354 |     let e = section().E();
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i_loaded`
[INFO] [stdout]    --> crates/structural-analysis/tests/frame3d_end_releases.rs:355:9
[INFO] [stdout]     |
[INFO] [stdout] 355 |     let i_loaded = section().iy(); // local-z load bends about local y
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_i_loaded`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `P`
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:458:9
[INFO] [stdout]     |
[INFO] [stdout] 458 |     let P = 1000.0;
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_P`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `A`
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:523:9
[INFO] [stdout]     |
[INFO] [stdout] 523 |     let A: f64 = 0.02;
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_A`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expected_theta`
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:530:9
[INFO] [stdout]     |
[INFO] [stdout] 530 |     let expected_theta = force * L.powi(2) / (2.0 * E * I);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expected_theta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `P`
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:600:9
[INFO] [stdout]     |
[INFO] [stdout] 600 |     let P = 1000.0;
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_P`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ry`
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:636:9
[INFO] [stdout]     |
[INFO] [stdout] 636 |     let ry = reactions[1]; // v reaction at fixed node
[INFO] [stdout]     |         ^^ help: if this is intentional, prefix it with an underscore: `_ry`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rz`
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:637:9
[INFO] [stdout]     |
[INFO] [stdout] 637 |     let rz = reactions[2]; // θ reaction at fixed node
[INFO] [stdout]     |         ^^ help: if this is intentional, prefix it with an underscore: `_rz`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expected_theta`
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1441:9
[INFO] [stdout]      |
[INFO] [stdout] 1441 |     let expected_theta = q * L.powi(3) / (6.0 * E * I);
[INFO] [stdout]      |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expected_theta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> crates/structural-analysis/tests/frame3d_end_releases.rs:271:9
[INFO] [stdout]     |
[INFO] [stdout] 271 |         m.fix_node(i);
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 271 |         let _ = m.fix_node(i);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> crates/structural-analysis/tests/frame3d_end_releases.rs:272:9
[INFO] [stdout]     |
[INFO] [stdout] 272 |         m.fix_node(j);
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 272 |         let _ = m.fix_node(j);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> crates/structural-analysis/tests/frame3d_end_releases.rs:314:9
[INFO] [stdout]     |
[INFO] [stdout] 314 |         m.fix_node(a);
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 314 |         let _ = m.fix_node(a);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> crates/structural-analysis/tests/frame3d_end_releases.rs:378:5
[INFO] [stdout]     |
[INFO] [stdout] 378 |     m.fix_node(0);
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 378 |     let _ = m.fix_node(0);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> crates/structural-analysis/tests/frame3d_end_releases.rs:379:5
[INFO] [stdout]     |
[INFO] [stdout] 379 |     m.fix_node(1);
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 379 |     let _ = m.fix_node(1);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> crates/structural-analysis/tests/frame3d_end_releases.rs:418:5
[INFO] [stdout]     |
[INFO] [stdout] 418 |     m.fix_node(a);
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 418 |     let _ = m.fix_node(a);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> crates/structural-analysis/tests/frame3d_end_releases.rs:419:5
[INFO] [stdout]     |
[INFO] [stdout] 419 |     m.fix_node(c);
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 419 |     let _ = m.fix_node(c);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expected_theta`
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2066:9
[INFO] [stdout]      |
[INFO] [stdout] 2066 |     let expected_theta = -P * L.powi(2) / (8.0 * E * I);
[INFO] [stdout]      |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expected_theta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `prev_v_error` is assigned to, but never used
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2070:9
[INFO] [stdout]      |
[INFO] [stdout] 2070 |     let mut prev_v_error = f64::INFINITY;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_prev_v_error` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mid_node`
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2090:13
[INFO] [stdout]      |
[INFO] [stdout] 2090 |         let mid_node = n_elem / 2;
[INFO] [stdout]      |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mid_node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `position`
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2091:13
[INFO] [stdout]      |
[INFO] [stdout] 2091 |         let position = 0.5; // midspan of the element containing the midpoint
[INFO] [stdout]      |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `prev_v_error` is never read
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2130:9
[INFO] [stdout]      |
[INFO] [stdout] 2130 |         prev_v_error = v_error;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout]      = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expected_v`
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2311:13
[INFO] [stdout]      |
[INFO] [stdout] 2311 |         let expected_v = (-P * alpha) * L.powi(3) / (3.0 * (200e9 * alpha) * (I * alpha));
[INFO] [stdout]      |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expected_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `L`
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2603:9
[INFO] [stdout]      |
[INFO] [stdout] 2603 |     let L = 1.0;
[INFO] [stdout]      |         ^ help: if this is intentional, prefix it with an underscore: `_L`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `make_beam_model` is never used
[INFO] [stdout]   --> crates/structural-analysis/tests/beam_fem.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn make_beam_model() -> (BeamModel, Material, BeamSection) {
[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 `get_k_entry` is never used
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2042:4
[INFO] [stdout]      |
[INFO] [stdout] 2042 | fn get_k_entry(k: &SparseMatrix, row: usize, col: usize) -> f64 {
[INFO] [stdout]      |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]   --> crates/structural-analysis/tests/beam_fem.rs:63:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |     let E = 200e9;
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]   --> crates/structural-analysis/tests/beam_fem.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |     let A = 0.02;
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]   --> crates/structural-analysis/tests/beam_fem.rs:65:9
[INFO] [stdout]    |
[INFO] [stdout] 65 |     let L = 1.0;
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `EA_L` should have a snake case name
[INFO] [stdout]   --> crates/structural-analysis/tests/beam_fem.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 66 |     let EA_L = E * A / L;
[INFO] [stdout]    |         ^^^^ help: convert the identifier to snake case: `ea_l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]   --> crates/structural-analysis/tests/beam_fem.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 72 |     let I = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `EI_L3` should have a snake case name
[INFO] [stdout]   --> crates/structural-analysis/tests/beam_fem.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 73 |     let EI_L3 = E * I / L.powi(3);
[INFO] [stdout]    |         ^^^^^ help: convert the identifier to snake case: `ei_l3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `EI_L2` should have a snake case name
[INFO] [stdout]   --> crates/structural-analysis/tests/beam_fem.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |     let EI_L2 = E * I / L.powi(2);
[INFO] [stdout]    |         ^^^^^ help: convert the identifier to snake case: `ei_l2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `EI_L` should have a snake case name
[INFO] [stdout]   --> crates/structural-analysis/tests/beam_fem.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 75 |     let EI_L = E * I / L;
[INFO] [stdout]    |         ^^^^ help: convert the identifier to snake case: `ei_l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]   --> crates/structural-analysis/tests/beam_fem.rs:93:9
[INFO] [stdout]    |
[INFO] [stdout] 93 |     let T = element.transformation_matrix(node_i, node_j);
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |     let T = element.transformation_matrix(node_i, node_j);
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:115:9
[INFO] [stdout]     |
[INFO] [stdout] 115 |     let T = element.transformation_matrix(node_i, node_j);
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:184:9
[INFO] [stdout]     |
[INFO] [stdout] 184 |     let L: f64 = 1.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:185:9
[INFO] [stdout]     |
[INFO] [stdout] 185 |     let E: f64 = 200e9;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:186:9
[INFO] [stdout]     |
[INFO] [stdout] 186 |     let A: f64 = 0.01;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:187:9
[INFO] [stdout]     |
[INFO] [stdout] 187 |     let I: f64 = 8.333e-6;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:188:9
[INFO] [stdout]     |
[INFO] [stdout] 188 |     let P: f64 = 1000.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:211:9
[INFO] [stdout]     |
[INFO] [stdout] 211 |     let L = 1.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:212:9
[INFO] [stdout]     |
[INFO] [stdout] 212 |     let E = 200e9;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:213:9
[INFO] [stdout]     |
[INFO] [stdout] 213 |     let A = 0.02;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:214:9
[INFO] [stdout]     |
[INFO] [stdout] 214 |     let I = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:215:9
[INFO] [stdout]     |
[INFO] [stdout] 215 |     let P = 1000.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:280:9
[INFO] [stdout]     |
[INFO] [stdout] 280 |     let L = 1.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:281:9
[INFO] [stdout]     |
[INFO] [stdout] 281 |     let E = 200e9;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:282:9
[INFO] [stdout]     |
[INFO] [stdout] 282 |     let A = 0.02;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:283:9
[INFO] [stdout]     |
[INFO] [stdout] 283 |     let I = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:284:9
[INFO] [stdout]     |
[INFO] [stdout] 284 |     let P = 1000.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:326:9
[INFO] [stdout]     |
[INFO] [stdout] 326 |     let L = 2.0_f64.sqrt(); // Length = sqrt(2) for 45 deg at unit coords
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:327:9
[INFO] [stdout]     |
[INFO] [stdout] 327 |     let E = 200e9;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:328:9
[INFO] [stdout]     |
[INFO] [stdout] 328 |     let A = 0.02;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:329:9
[INFO] [stdout]     |
[INFO] [stdout] 329 |     let I = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:330:9
[INFO] [stdout]     |
[INFO] [stdout] 330 |     let P = 1000.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:358:9
[INFO] [stdout]     |
[INFO] [stdout] 358 |     let L = 1.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:359:9
[INFO] [stdout]     |
[INFO] [stdout] 359 |     let E = 200e9;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:360:9
[INFO] [stdout]     |
[INFO] [stdout] 360 |     let A = 0.02;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:361:9
[INFO] [stdout]     |
[INFO] [stdout] 361 |     let I = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:362:9
[INFO] [stdout]     |
[INFO] [stdout] 362 |     let P = 1000.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:390:9
[INFO] [stdout]     |
[INFO] [stdout] 390 |     let L = 1.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:391:9
[INFO] [stdout]     |
[INFO] [stdout] 391 |     let E = 200e9;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:392:9
[INFO] [stdout]     |
[INFO] [stdout] 392 |     let A = 0.02;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:393:9
[INFO] [stdout]     |
[INFO] [stdout] 393 |     let I = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:394:9
[INFO] [stdout]     |
[INFO] [stdout] 394 |     let P = 1000.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:455:9
[INFO] [stdout]     |
[INFO] [stdout] 455 |     let E = 200e9;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:456:9
[INFO] [stdout]     |
[INFO] [stdout] 456 |     let A = 0.02;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:457:9
[INFO] [stdout]     |
[INFO] [stdout] 457 |     let I = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:458:9
[INFO] [stdout]     |
[INFO] [stdout] 458 |     let P = 1000.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:459:9
[INFO] [stdout]     |
[INFO] [stdout] 459 |     let L = 1.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:521:9
[INFO] [stdout]     |
[INFO] [stdout] 521 |     let L: f64 = 1.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:522:9
[INFO] [stdout]     |
[INFO] [stdout] 522 |     let E: f64 = 200e9;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:523:9
[INFO] [stdout]     |
[INFO] [stdout] 523 |     let A: f64 = 0.02;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:524:9
[INFO] [stdout]     |
[INFO] [stdout] 524 |     let I: f64 = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:525:9
[INFO] [stdout]     |
[INFO] [stdout] 525 |     let P: f64 = 1000.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:596:9
[INFO] [stdout]     |
[INFO] [stdout] 596 |     let L = 1.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:597:9
[INFO] [stdout]     |
[INFO] [stdout] 597 |     let E = 200e9;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:598:9
[INFO] [stdout]     |
[INFO] [stdout] 598 |     let A = 0.02;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:599:9
[INFO] [stdout]     |
[INFO] [stdout] 599 |     let I = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:600:9
[INFO] [stdout]     |
[INFO] [stdout] 600 |     let P = 1000.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:652:9
[INFO] [stdout]     |
[INFO] [stdout] 652 |     let L = 1.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:653:9
[INFO] [stdout]     |
[INFO] [stdout] 653 |     let E = 200e9;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:654:9
[INFO] [stdout]     |
[INFO] [stdout] 654 |     let A = 0.02;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:655:9
[INFO] [stdout]     |
[INFO] [stdout] 655 |     let I = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:698:9
[INFO] [stdout]     |
[INFO] [stdout] 698 |     let L = 1.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:699:9
[INFO] [stdout]     |
[INFO] [stdout] 699 |     let E = 200e9;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:700:9
[INFO] [stdout]     |
[INFO] [stdout] 700 |     let A = 0.02;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:701:9
[INFO] [stdout]     |
[INFO] [stdout] 701 |     let I = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:748:9
[INFO] [stdout]     |
[INFO] [stdout] 748 |     let L = 1.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:749:9
[INFO] [stdout]     |
[INFO] [stdout] 749 |     let E = 200e9;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:750:9
[INFO] [stdout]     |
[INFO] [stdout] 750 |     let A = 0.02;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:751:9
[INFO] [stdout]     |
[INFO] [stdout] 751 |     let I = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/beam_fem.rs:752:9
[INFO] [stdout]     |
[INFO] [stdout] 752 |     let P = 1000.0;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1122:9
[INFO] [stdout]      |
[INFO] [stdout] 1122 |     let L = 1.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1123:9
[INFO] [stdout]      |
[INFO] [stdout] 1123 |     let E = 200e9;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1124:9
[INFO] [stdout]      |
[INFO] [stdout] 1124 |     let A = 0.02;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1125:9
[INFO] [stdout]      |
[INFO] [stdout] 1125 |     let I = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1126:9
[INFO] [stdout]      |
[INFO] [stdout] 1126 |     let P = 1000.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1320:9
[INFO] [stdout]      |
[INFO] [stdout] 1320 |     let T = element.transformation_matrix(node_i, node_j);
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1351:9
[INFO] [stdout]      |
[INFO] [stdout] 1351 |     let L = 1.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1352:9
[INFO] [stdout]      |
[INFO] [stdout] 1352 |     let E = 200e9;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1353:9
[INFO] [stdout]      |
[INFO] [stdout] 1353 |     let A = 0.02;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1354:9
[INFO] [stdout]      |
[INFO] [stdout] 1354 |     let I = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1433:9
[INFO] [stdout]      |
[INFO] [stdout] 1433 |     let L: f64 = 1.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1434:9
[INFO] [stdout]      |
[INFO] [stdout] 1434 |     let E: f64 = 200e9;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1435:9
[INFO] [stdout]      |
[INFO] [stdout] 1435 |     let A: f64 = 0.02;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1436:9
[INFO] [stdout]      |
[INFO] [stdout] 1436 |     let I: f64 = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1507:9
[INFO] [stdout]      |
[INFO] [stdout] 1507 |     let L: f64 = 1.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1508:9
[INFO] [stdout]      |
[INFO] [stdout] 1508 |     let E: f64 = 200e9;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1509:9
[INFO] [stdout]      |
[INFO] [stdout] 1509 |     let A: f64 = 0.02;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1510:9
[INFO] [stdout]      |
[INFO] [stdout] 1510 |     let I: f64 = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1700:9
[INFO] [stdout]      |
[INFO] [stdout] 1700 |     let L = 1.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1701:9
[INFO] [stdout]      |
[INFO] [stdout] 1701 |     let E = 200e9;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1702:9
[INFO] [stdout]      |
[INFO] [stdout] 1702 |     let A = 0.02;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1703:9
[INFO] [stdout]      |
[INFO] [stdout] 1703 |     let I = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1704:9
[INFO] [stdout]      |
[INFO] [stdout] 1704 |     let P = 1000.0; // Downward force
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1772:9
[INFO] [stdout]      |
[INFO] [stdout] 1772 |     let L = 1.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1773:9
[INFO] [stdout]      |
[INFO] [stdout] 1773 |     let E = 200e9;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1774:9
[INFO] [stdout]      |
[INFO] [stdout] 1774 |     let A = 0.02;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1775:9
[INFO] [stdout]      |
[INFO] [stdout] 1775 |     let I = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `M` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1776:9
[INFO] [stdout]      |
[INFO] [stdout] 1776 |     let M = 1000.0; // CCW moment at midspan
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `m`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1835:9
[INFO] [stdout]      |
[INFO] [stdout] 1835 |     let L = 1.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1836:9
[INFO] [stdout]      |
[INFO] [stdout] 1836 |     let E = 200e9;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1837:9
[INFO] [stdout]      |
[INFO] [stdout] 1837 |     let A = 0.02;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1838:9
[INFO] [stdout]      |
[INFO] [stdout] 1838 |     let I = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1839:9
[INFO] [stdout]      |
[INFO] [stdout] 1839 |     let P = 1000.0; // Downward force at midspan
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1885:9
[INFO] [stdout]      |
[INFO] [stdout] 1885 |     let L = 1.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1886:9
[INFO] [stdout]      |
[INFO] [stdout] 1886 |     let E = 200e9;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1887:9
[INFO] [stdout]      |
[INFO] [stdout] 1887 |     let A = 0.02;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1888:9
[INFO] [stdout]      |
[INFO] [stdout] 1888 |     let I = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `M` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1889:9
[INFO] [stdout]      |
[INFO] [stdout] 1889 |     let M = 1000.0; // CCW moment at tip
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `m`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1950:9
[INFO] [stdout]      |
[INFO] [stdout] 1950 |     let L = 1.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1951:9
[INFO] [stdout]      |
[INFO] [stdout] 1951 |     let E = 200e9;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1952:9
[INFO] [stdout]      |
[INFO] [stdout] 1952 |     let A = 0.02;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1953:9
[INFO] [stdout]      |
[INFO] [stdout] 1953 |     let I = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1954:9
[INFO] [stdout]      |
[INFO] [stdout] 1954 |     let P = 1000.0; // Downward force
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1997:9
[INFO] [stdout]      |
[INFO] [stdout] 1997 |     let E = 200e9;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1998:9
[INFO] [stdout]      |
[INFO] [stdout] 1998 |     let A = 0.02;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:1999:9
[INFO] [stdout]      |
[INFO] [stdout] 1999 |     let I = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2000:9
[INFO] [stdout]      |
[INFO] [stdout] 2000 |     let P = 1000.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2057:9
[INFO] [stdout]      |
[INFO] [stdout] 2057 |     let L: f64 = 1.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2058:9
[INFO] [stdout]      |
[INFO] [stdout] 2058 |     let E = 200e9;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2059:9
[INFO] [stdout]      |
[INFO] [stdout] 2059 |     let A = 0.02;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2060:9
[INFO] [stdout]      |
[INFO] [stdout] 2060 |     let I = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2061:9
[INFO] [stdout]      |
[INFO] [stdout] 2061 |     let P = 1000.0; // Downward force at midspan
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2137:9
[INFO] [stdout]      |
[INFO] [stdout] 2137 |     let L = 1.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2138:9
[INFO] [stdout]      |
[INFO] [stdout] 2138 |     let E = 200e9;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2139:9
[INFO] [stdout]      |
[INFO] [stdout] 2139 |     let A = 0.02;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2140:9
[INFO] [stdout]      |
[INFO] [stdout] 2140 |     let I = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2141:9
[INFO] [stdout]      |
[INFO] [stdout] 2141 |     let P = 1000.0; // Downward global force
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2200:9
[INFO] [stdout]      |
[INFO] [stdout] 2200 |     let L = 1.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2201:9
[INFO] [stdout]      |
[INFO] [stdout] 2201 |     let E = 200e9;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2202:9
[INFO] [stdout]      |
[INFO] [stdout] 2202 |     let A = 0.02;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2203:9
[INFO] [stdout]      |
[INFO] [stdout] 2203 |     let I = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2204:9
[INFO] [stdout]      |
[INFO] [stdout] 2204 |     let P = 1000.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `M` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2206:9
[INFO] [stdout]      |
[INFO] [stdout] 2206 |     let M = 200.0; // Applied moment
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `m`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2282:9
[INFO] [stdout]      |
[INFO] [stdout] 2282 |     let L = 1.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2283:9
[INFO] [stdout]      |
[INFO] [stdout] 2283 |     let A = 0.02;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2284:9
[INFO] [stdout]      |
[INFO] [stdout] 2284 |     let I = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2285:9
[INFO] [stdout]      |
[INFO] [stdout] 2285 |     let P = 1000.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2333:9
[INFO] [stdout]      |
[INFO] [stdout] 2333 |     let L = 1.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2334:9
[INFO] [stdout]      |
[INFO] [stdout] 2334 |     let E = 200e9;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2335:9
[INFO] [stdout]      |
[INFO] [stdout] 2335 |     let A = 0.02;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2336:9
[INFO] [stdout]      |
[INFO] [stdout] 2336 |     let I = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2338:9
[INFO] [stdout]      |
[INFO] [stdout] 2338 |     let P = 500.0; // Point load at midspan
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `M` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2339:9
[INFO] [stdout]      |
[INFO] [stdout] 2339 |     let M = 200.0; // Applied moment at tip
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `m`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2400:9
[INFO] [stdout]      |
[INFO] [stdout] 2400 |     let E = 200e9;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2401:9
[INFO] [stdout]      |
[INFO] [stdout] 2401 |     let A = 0.02;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2402:9
[INFO] [stdout]      |
[INFO] [stdout] 2402 |     let I = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2403:9
[INFO] [stdout]      |
[INFO] [stdout] 2403 |     let P = 1000.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2467:9
[INFO] [stdout]      |
[INFO] [stdout] 2467 |     let E = 200e9;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2468:9
[INFO] [stdout]      |
[INFO] [stdout] 2468 |     let A = 0.02;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2469:9
[INFO] [stdout]      |
[INFO] [stdout] 2469 |     let I = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2470:9
[INFO] [stdout]      |
[INFO] [stdout] 2470 |     let P = 1000.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2505:9
[INFO] [stdout]      |
[INFO] [stdout] 2505 |     let E = 200e9;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2506:9
[INFO] [stdout]      |
[INFO] [stdout] 2506 |     let A = 0.02;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2507:9
[INFO] [stdout]      |
[INFO] [stdout] 2507 |     let I = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `M` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2508:9
[INFO] [stdout]      |
[INFO] [stdout] 2508 |     let M = 1000.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `m`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2549:9
[INFO] [stdout]      |
[INFO] [stdout] 2549 |     let E = 200e9;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2550:9
[INFO] [stdout]      |
[INFO] [stdout] 2550 |     let A = 0.02;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2551:9
[INFO] [stdout]      |
[INFO] [stdout] 2551 |     let I = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `M` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2552:9
[INFO] [stdout]      |
[INFO] [stdout] 2552 |     let M = 1000.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `m`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `E` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2600:9
[INFO] [stdout]      |
[INFO] [stdout] 2600 |     let E = 200e9;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2601:9
[INFO] [stdout]      |
[INFO] [stdout] 2601 |     let A = 0.02;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2602:9
[INFO] [stdout]      |
[INFO] [stdout] 2602 |     let I = 0.1 * 0.2_f64.powi(3) / 12.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2603:9
[INFO] [stdout]      |
[INFO] [stdout] 2603 |     let L = 1.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2605:9
[INFO] [stdout]      |
[INFO] [stdout] 2605 |     let P = 1000.0; // point + nodal force magnitude
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `M` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2606:9
[INFO] [stdout]      |
[INFO] [stdout] 2606 |     let M = 200.0; // applied moment
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `m`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2669:9
[INFO] [stdout]      |
[INFO] [stdout] 2669 |     let P = 1000.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `M` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2715:9
[INFO] [stdout]      |
[INFO] [stdout] 2715 |     let M = 1000.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `m`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]     --> crates/structural-analysis/tests/beam_fem.rs:2717:9
[INFO] [stdout]      |
[INFO] [stdout] 2717 |     let L = 1.0;
[INFO] [stdout]      |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MemberHandle` and `NodeHandle`
[INFO] [stdout]  --> crates/structural-analysis/tests/trapezoidal_load.rs:4:46
[INFO] [stdout]   |
[INFO] [stdout] 4 | use structural_analysis::frame::{FrameModel, MemberHandle, NodeHandle};
[INFO] [stdout]   |                                              ^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EI` is never used
[INFO] [stdout]   --> crates/structural-analysis/tests/trapezoidal_load.rs:11:7
[INFO] [stdout]    |
[INFO] [stdout] 11 | const EI: f64 = E * I;
[INFO] [stdout]    |       ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `dV_dx` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/trapezoidal_load.rs:203:9
[INFO] [stdout]     |
[INFO] [stdout] 203 |     let dV_dx = (s_plus.shear - s_minus.shear) / (2.0 * h * l);
[INFO] [stdout]     |         ^^^^^ help: convert the identifier to snake case: `d_v_dx`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `dM_dx` should have a snake case name
[INFO] [stdout]    --> crates/structural-analysis/tests/trapezoidal_load.rs:204:9
[INFO] [stdout]     |
[INFO] [stdout] 204 |     let dM_dx = (s_plus.moment - s_minus.moment) / (2.0 * h * l);
[INFO] [stdout]     |         ^^^^^ help: convert the identifier to snake case: `d_m_dx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Dof`
[INFO] [stdout]  --> crates/structural-analysis/tests/postprocessing.rs:5:41
[INFO] [stdout]   |
[INFO] [stdout] 5 |     BeamModel, BeamSection, BeamSolver, Dof, Envelope, FrameModel, LoadCase, LoadCombination,
[INFO] [stdout]   |                                         ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `rust_F` should have a snake case name
[INFO] [stdout]    --> crates/section-properties/tests/global_matrix_cross_validation.rs:214:9
[INFO] [stdout]     |
[INFO] [stdout] 214 |     let rust_F: Vec<f64> = serde_json::from_value(rust_data["F"].clone()).unwrap();
[INFO] [stdout]     |         ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `rust_f`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `py_F` should have a snake case name
[INFO] [stdout]    --> crates/section-properties/tests/global_matrix_cross_validation.rs:215:9
[INFO] [stdout]     |
[INFO] [stdout] 215 |     let py_F: Vec<f64> = serde_json::from_value(py_data["F"].clone()).unwrap();
[INFO] [stdout]     |         ^^^^ help: convert the identifier to snake case (notice the capitalization): `py_f`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `rust_C` should have a snake case name
[INFO] [stdout]    --> crates/section-properties/tests/global_matrix_cross_validation.rs:216:9
[INFO] [stdout]     |
[INFO] [stdout] 216 |     let rust_C: Vec<f64> = serde_json::from_value(rust_data["C"].clone()).unwrap();
[INFO] [stdout]     |         ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `rust_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `py_C` should have a snake case name
[INFO] [stdout]    --> crates/section-properties/tests/global_matrix_cross_validation.rs:217:9
[INFO] [stdout]     |
[INFO] [stdout] 217 |     let py_C: Vec<f64> = serde_json::from_value(py_data["C"].clone()).unwrap();
[INFO] [stdout]     |         ^^^^ help: convert the identifier to snake case (notice the capitalization): `py_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ChannelSection` and `TeeSection`
[INFO] [stdout]  --> crates/section-properties/tests/warping_regularization_benchmark.rs:9:50
[INFO] [stdout]   |
[INFO] [stdout] 9 | use section_properties::section_library::steel::{ChannelSection, ISection, TeeSection};
[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: `FemWarpingSolution`
[INFO] [stdout]   --> crates/section-properties/tests/warping_fem_diagnostics.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     FemWarpingSolution, WarpingDiagnostics, compute_fem_warping_solution, diagnose_warping_fem,
[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: `section_properties::section::Section`
[INFO] [stdout]   --> crates/section-properties/tests/warping_fem_diagnostics.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use section_properties::section::Section;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FemWarpingSolution`
[INFO] [stdout]  --> crates/section-properties/tests/warping_fem_scale_invariance.rs:9:48
[INFO] [stdout]   |
[INFO] [stdout] 9 | use section_properties::plastic::warping_fem::{FemWarpingSolution, compute_fem_warping_solution};
[INFO] [stdout]   |                                                ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> crates/section-properties/tests/sparse_lu.rs:107:17
[INFO] [stdout]     |
[INFO] [stdout] 107 |             let mut a = SparseMatrix::new(n);
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]    --> crates/section-properties/tests/sparse_lu.rs:107:17
[INFO] [stdout]     |
[INFO] [stdout] 107 |             let mut a = SparseMatrix::new(n);
[INFO] [stdout]     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `assert_rel` is never used
[INFO] [stdout]   --> crates/section-properties/tests/warping_fem_scale_invariance.rs:24:4
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn assert_rel(actual: f64, expected: f64, tol: f64, name: &str) {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ElasticComposite`
[INFO] [stdout]  --> crates/section-properties/tests/material_validation_audit.rs:8:73
[INFO] [stdout]   |
[INFO] [stdout] 8 | use section_properties::composite::{CompositeComponent, CompositeError, ElasticComposite};
[INFO] [stdout]   |                                                                         ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CompoundGeometry` and `Geometry`
[INFO] [stdout]  --> crates/section-properties/tests/python_warping_parity.rs:8:36
[INFO] [stdout]   |
[INFO] [stdout] 8 | use section_properties::geometry::{CompoundGeometry, Geometry};
[INFO] [stdout]   |                                    ^^^^^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]   --> crates/section-properties/tests/python_warping_parity.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     ((a - b).abs() / b.abs())
[INFO] [stdout]    |     ^                       ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 27 -     ((a - b).abs() / b.abs())
[INFO] [stdout] 27 +     (a - b).abs() / b.abs()
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around closure body
[INFO] [stdout]    --> crates/section-properties/tests/smoke_comprehensive.rs:303:38
[INFO] [stdout]     |
[INFO] [stdout] 303 |     let f: Vec<f64> = (0..n).map(|i| ((i % 4) as f64 - 1.5)).collect();
[INFO] [stdout]     |                                      ^                    ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 303 -     let f: Vec<f64> = (0..n).map(|i| ((i % 4) as f64 - 1.5)).collect();
[INFO] [stdout] 303 +     let f: Vec<f64> = (0..n).map(|i| (i % 4) as f64 - 1.5).collect();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `fp`
[INFO] [stdout]    --> crates/section-properties/tests/numerical_verification.rs:172:9
[INFO] [stdout]     |
[INFO] [stdout] 172 |     let fp = sec.frame_properties_full(0.3);
[INFO] [stdout]     |         ^^ help: if this is intentional, prefix it with an underscore: `_fp`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `j_exact`
[INFO] [stdout]    --> crates/section-properties/tests/numerical_verification.rs:179:9
[INFO] [stdout]     |
[INFO] [stdout] 179 |     let j_exact = (b*h.powi(3) - bi*hi.powi(3)) / 3.0  // approximation
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_j_exact`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> crates/section-properties/tests/numerical_verification.rs:433:9
[INFO] [stdout]     |
[INFO] [stdout] 433 |     let mut geom1 = Geometry::from_section(&sec1);
[INFO] [stdout]     |         ----^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expected_c_corner`
[INFO] [stdout]    --> crates/section-properties/tests/tri6_element_validation.rs:166:9
[INFO] [stdout]     |
[INFO] [stdout] 166 |     let expected_c_corner = 0.0;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expected_c_corner`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expected_c_corner`
[INFO] [stdout]    --> crates/section-properties/tests/tri6_element_validation.rs:593:9
[INFO] [stdout]     |
[INFO] [stdout] 593 |     let expected_c_corner = 0.0;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expected_c_corner`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SolverCapabilities`
[INFO] [stdout]   --> crates/section-properties/tests/solver_architecture_correctness.rs:12:28
[INFO] [stdout]    |
[INFO] [stdout] 12 |     solver::{LinearSolver, SolverCapabilities, SolverError, SolverRegistry},
[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 variable: `expected_iy`
[INFO] [stdout]    --> crates/section-properties/tests/analytical_benchmark.rs:315:9
[INFO] [stdout]     |
[INFO] [stdout] 315 |     let expected_iy = std::f64::consts::PI * r.powi(4) / 4.0;
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expected_iy`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `exact_area`
[INFO] [stdout]    --> crates/section-properties/tests/analytical_benchmark.rs:346:9
[INFO] [stdout]     |
[INFO] [stdout] 346 |     let exact_area = std::f64::consts::PI * r * r;
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_exact_area`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ixx_rot`
[INFO] [stdout]    --> crates/section-properties/tests/analytical_benchmark.rs:406:9
[INFO] [stdout]     |
[INFO] [stdout] 406 |     let ixx_rot = area * (b * b + h * h) / 24.0;
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ixx_rot`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ixy_rot`
[INFO] [stdout]    --> crates/section-properties/tests/analytical_benchmark.rs:407:9
[INFO] [stdout]     |
[INFO] [stdout] 407 |     let ixy_rot = area * (h * h - b * b) / 24.0;
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ixy_rot`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `area_expected`
[INFO] [stdout]    --> crates/section-properties/tests/analytical_benchmark.rs:469:9
[INFO] [stdout]     |
[INFO] [stdout] 469 |     let area_expected = 2.0 * b * tf + (h - 2.0 * tf) * tw;
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_area_expected`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A_outer` should have a snake case name
[INFO] [stdout]    --> crates/section-properties/tests/analytical_benchmark.rs:194:9
[INFO] [stdout]     |
[INFO] [stdout] 194 |     let A_outer = b * h;
[INFO] [stdout]     |         ^^^^^^^ help: convert the identifier to snake case: `a_outer`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A_inner` should have a snake case name
[INFO] [stdout]    --> crates/section-properties/tests/analytical_benchmark.rs:195:9
[INFO] [stdout]     |
[INFO] [stdout] 195 |     let A_inner = (b - 2.0 * t) * (h - 2.0 * t);
[INFO] [stdout]     |         ^^^^^^^ help: convert the identifier to snake case: `a_inner`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A_expected` should have a snake case name
[INFO] [stdout]    --> crates/section-properties/tests/analytical_benchmark.rs:196:9
[INFO] [stdout]     |
[INFO] [stdout] 196 |     let A_expected = A_outer - A_inner;
[INFO] [stdout]     |         ^^^^^^^^^^ help: convert the identifier to snake case: `a_expected`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Ixx_outer` should have a snake case name
[INFO] [stdout]    --> crates/section-properties/tests/analytical_benchmark.rs:198:9
[INFO] [stdout]     |
[INFO] [stdout] 198 |     let Ixx_outer = b * h.powi(3) / 12.0;
[INFO] [stdout]     |         ^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `ixx_outer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Ixx_inner` should have a snake case name
[INFO] [stdout]    --> crates/section-properties/tests/analytical_benchmark.rs:199:9
[INFO] [stdout]     |
[INFO] [stdout] 199 |     let Ixx_inner = (b - 2.0 * t) * (h - 2.0 * t).powi(3) / 12.0;
[INFO] [stdout]     |         ^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `ixx_inner`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Ixx_expected` should have a snake case name
[INFO] [stdout]    --> crates/section-properties/tests/analytical_benchmark.rs:200:9
[INFO] [stdout]     |
[INFO] [stdout] 200 |     let Ixx_expected = Ixx_outer - Ixx_inner;
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `ixx_expected`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Iyy_outer` should have a snake case name
[INFO] [stdout]    --> crates/section-properties/tests/analytical_benchmark.rs:202:9
[INFO] [stdout]     |
[INFO] [stdout] 202 |     let Iyy_outer = h * b.powi(3) / 12.0;
[INFO] [stdout]     |         ^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `iyy_outer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Iyy_inner` should have a snake case name
[INFO] [stdout]    --> crates/section-properties/tests/analytical_benchmark.rs:203:9
[INFO] [stdout]     |
[INFO] [stdout] 203 |     let Iyy_inner = (h - 2.0 * t) * (b - 2.0 * t).powi(3) / 12.0;
[INFO] [stdout]     |         ^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `iyy_inner`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Iyy_expected` should have a snake case name
[INFO] [stdout]    --> crates/section-properties/tests/analytical_benchmark.rs:204:9
[INFO] [stdout]     |
[INFO] [stdout] 204 |     let Iyy_expected = Iyy_outer - Iyy_inner;
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `iyy_expected`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R` should have a snake case name
[INFO] [stdout]    --> crates/section-properties/tests/analytical_benchmark.rs:563:9
[INFO] [stdout]     |
[INFO] [stdout] 563 |     let R = 0.1;
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `LinearSolver`
[INFO] [stdout]   --> crates/section-properties/tests/solver_architecture_correctness.rs:12:14
[INFO] [stdout]    |
[INFO] [stdout] 12 |     solver::{LinearSolver, SolverCapabilities, SolverError, SolverRegistry},
[INFO] [stdout]    |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> crates/section-properties/tests/solver_architecture_correctness.rs:136:9
[INFO] [stdout]     |
[INFO] [stdout] 136 |     let mut dense = registry.create("dense").expect("Dense solver not found");
[INFO] [stdout]     |         ----^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> crates/section-properties/tests/solver_architecture_correctness.rs:145:9
[INFO] [stdout]     |
[INFO] [stdout] 145 |     let mut skyline = registry
[INFO] [stdout]     |         ----^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> crates/section-properties/tests/solver_architecture_correctness.rs:156:9
[INFO] [stdout]     |
[INFO] [stdout] 156 |     let mut sparse_lu = registry
[INFO] [stdout]     |         ----^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> crates/section-properties/tests/solver_architecture_correctness.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |     let mut cg = registry.create("cg").expect("CG solver not found");
[INFO] [stdout]     |         ----^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> crates/section-properties/tests/solver_architecture_correctness.rs:176:9
[INFO] [stdout]     |
[INFO] [stdout] 176 |     let mut iccg = registry.create("iccg").expect("ICCG solver not found");
[INFO] [stdout]     |         ----^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking atspi-proxies v0.6.0
[INFO] [stderr]     Checking accesskit_atspi_common v0.9.3
[INFO] [stderr]     Checking ashpd v0.11.1
[INFO] [stderr]     Checking atspi-connection v0.6.0
[INFO] [stderr]     Checking atspi v0.22.0
[INFO] [stderr]     Checking accesskit_unix v0.12.3
[INFO] [stderr]     Checking accesskit_winit v0.22.4
[INFO] [stderr]     Checking egui-winit v0.29.1
[INFO] [stderr]     Checking eframe v0.29.1
[INFO] [stderr]     Checking viewport-poc v0.1.0 (/opt/rustwide/workdir/apps/viewport-poc)
[INFO] [stdout] warning: unused import: `MemberId`
[INFO] [stdout]  --> apps/viewport-poc/tests/perf149.rs:7:29
[INFO] [stdout]   |
[INFO] [stdout] 7 |     edit_model::{EditModel, MemberId, NodalLoadSpec, SupportSpec},
[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 variable: `rz0`
[INFO] [stdout]    --> apps/viewport-poc/tests/phase154_point_loads.rs:488:9
[INFO] [stdout]     |
[INFO] [stdout] 488 |     let rz0 = result.reactions[2];
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_rz0`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rz0`
[INFO] [stdout]    --> apps/viewport-poc/tests/phase154_point_loads.rs:633:9
[INFO] [stdout]     |
[INFO] [stdout] 633 |     let rz0 = result.reactions[2];
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_rz0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]   --> apps/viewport-poc/tests/phase154_point_loads.rs:28:14
[INFO] [stdout]    |
[INFO] [stdout] 28 | fn make_beam(L: f64) -> (EditModel, NodeId, NodeId, MemberId) {
[INFO] [stdout]    |              ^ help: convert the identifier to snake case: `l`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]   --> apps/viewport-poc/tests/phase154_point_loads.rs:37:26
[INFO] [stdout]    |
[INFO] [stdout] 37 | fn make_fixed_fixed_beam(L: f64) -> (EditModel, NodeId, NodeId, MemberId) {
[INFO] [stdout]    |                          ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]   --> apps/viewport-poc/tests/phase154_point_loads.rs:44:20
[INFO] [stdout]    |
[INFO] [stdout] 44 | fn make_cantilever(L: f64) -> (EditModel, NodeId, NodeId, MemberId) {
[INFO] [stdout]    |                    ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]   --> apps/viewport-poc/tests/phase154_point_loads.rs:50:26
[INFO] [stdout]    |
[INFO] [stdout] 50 | fn make_simply_supported(L: f64) -> (EditModel, NodeId, NodeId, MemberId) {
[INFO] [stdout]    |                          ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> apps/viewport-poc/tests/phase152_undo_redo.rs:468:9
[INFO] [stdout]     |
[INFO] [stdout] 468 |     let mut c = make_portal_controller();
[INFO] [stdout]     |         ----^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `load_model` is never used
[INFO] [stdout]   --> apps/viewport-poc/tests/phase152_undo_redo.rs:40:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl Controller {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 40 |     fn load_model(&mut self, name: &str, model: EditModel) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MemberId`
[INFO] [stdout]     --> apps/viewport-poc/src/ui/inspector.rs:2051:40
[INFO] [stdout]      |
[INFO] [stdout] 2051 |         use viewport_poc::edit_model::{MemberId, SupportSpec};
[INFO] [stdout]      |                                        ^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> apps/viewport-poc/src/ui/titlebar.rs:811:9
[INFO] [stdout]     |
[INFO] [stdout] 811 | /         assert_eq!(
[INFO] [stdout] 812 | |             maximize_icon(false),
[INFO] [stdout] 813 | |             icons::window_maximize as icons::IconFn
[INFO] [stdout] 814 | |         );
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]     = note: `#[warn(unpredictable_function_pointer_comparisons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> apps/viewport-poc/src/ui/titlebar.rs:815:9
[INFO] [stdout]     |
[INFO] [stdout] 815 |         assert_eq!(maximize_icon(true), icons::window_restore as icons::IconFn);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> apps/viewport-poc/src/ui/titlebar.rs:816:9
[INFO] [stdout]     |
[INFO] [stdout] 816 |         assert_ne!(maximize_icon(false), maximize_icon(true));
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 01s
[INFO] running `Command { std: "docker" "inspect" "5f1984a57dea3f8861091191a99324c0637a0f3e17b8075702ec9cbc88c25bd6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5f1984a57dea3f8861091191a99324c0637a0f3e17b8075702ec9cbc88c25bd6", kill_on_drop: false }`
[INFO] [stdout] 5f1984a57dea3f8861091191a99324c0637a0f3e17b8075702ec9cbc88c25bd6
