[INFO] fetching crate ocpi-tariffs 0.20.0...
[INFO] checking ocpi-tariffs-0.20.0 against try#4f260f0f20b3133d20cfb50353c0221943af5796+rustflags=-Dunmustuse_in_always_ok for pr-148577
[INFO] extracting crate ocpi-tariffs 0.20.0 into /workspace/builds/worker-7-tc2/source
[INFO] started tweaking crates.io crate ocpi-tariffs 0.20.0
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate ocpi-tariffs 0.20.0
[INFO] tweaked toml for crates.io crate ocpi-tariffs 0.20.0 written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate ocpi-tariffs 0.20.0 on toolchain 4f260f0f20b3133d20cfb50353c0221943af5796
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate ocpi-tariffs 0.20.0 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" "+4f260f0f20b3133d20cfb50353c0221943af5796" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] ab4af264d3aaf00e3d130c37cf64d68d6c85f4c78d5bae0995d9bbb5944bdd0f
[INFO] running `Command { std: "docker" "start" "-a" "ab4af264d3aaf00e3d130c37cf64d68d6c85f4c78d5bae0995d9bbb5944bdd0f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ab4af264d3aaf00e3d130c37cf64d68d6c85f4c78d5bae0995d9bbb5944bdd0f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ab4af264d3aaf00e3d130c37cf64d68d6c85f4c78d5bae0995d9bbb5944bdd0f", kill_on_drop: false }`
[INFO] [stdout] ab4af264d3aaf00e3d130c37cf64d68d6c85f4c78d5bae0995d9bbb5944bdd0f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dunmustuse_in_always_ok" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] cc9281da76bb128274b6eae1b2e434dd26414b63e7dfe629b3c9372a8bd06b73
[INFO] running `Command { std: "docker" "start" "-a" "cc9281da76bb128274b6eae1b2e434dd26414b63e7dfe629b3c9372a8bd06b73", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde_json v1.0.143
[INFO] [stderr]     Checking siphasher v1.0.1
[INFO] [stderr]    Compiling chrono-tz v0.10.4
[INFO] [stderr]    Compiling rust_decimal v1.37.2
[INFO] [stderr]    Compiling ocpi-tariffs v0.20.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling glob v0.3.2
[INFO] [stderr]     Checking arrayvec v0.7.6
[INFO] [stderr]     Checking tracing-core v0.1.33
[INFO] [stderr]     Checking nu-ansi-term v0.50.1
[INFO] [stderr]     Checking json-tools v1.1.3
[INFO] [stderr]     Checking json-strip-comments v1.0.4
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking thread_local v1.1.8
[INFO] [stderr]     Checking assert_matches v1.5.0
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]     Checking phf_shared v0.12.1
[INFO] [stderr]     Checking phf v0.12.1
[INFO] [stderr]     Checking tracing-subscriber v0.3.20
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling tracing-attributes v0.1.28
[INFO] [stderr]    Compiling test-each-codegen v0.3.1
[INFO] [stderr]    Compiling num-derive v0.4.2
[INFO] [stderr]    Compiling rust_decimal_macros v1.37.1
[INFO] [stderr]     Checking test-each v0.3.1
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]     Checking serde v1.0.219
[INFO] [stderr]     Checking chrono v0.4.41
[INFO] [stdout] warning: unused import: `crate::json_schema`
[INFO] [stdout]    --> src/json/schema.rs:218:9
[INFO] [stdout]     |
[INFO] [stdout] 218 |     use crate::json_schema;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `-W unused-imports` implied by `-W unused`
[INFO] [stdout]     = help: to override `-W unused` add `#[allow(unused_imports)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_decimal` is never used
[INFO] [stdout]   --> src/energy.rs:22:19
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl Kwh {
[INFO] [stdout]    | -------- associated function in this implementation
[INFO] [stdout] 22 |     pub(crate) fn from_decimal(d: Decimal) -> Self {
[INFO] [stdout]    |                   ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W dead-code`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `into_element` is never used
[INFO] [stdout]    --> src/json.rs:263:19
[INFO] [stdout]     |
[INFO] [stdout] 249 | impl<'buf> Field<'buf> {
[INFO] [stdout]     | ---------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 263 |     pub(crate) fn into_element(self) -> Element<'buf> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/json/decode.rs:93:16
[INFO] [stdout]    |
[INFO] [stdout] 93 |     HasEscapes(EscapeStr<'buf>),
[INFO] [stdout]    |     ---------- ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 93 -     HasEscapes(EscapeStr<'buf>),
[INFO] [stdout] 93 +     HasEscapes(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/json/decode.rs:99:35
[INFO] [stdout]    |
[INFO] [stdout] 99 | pub(crate) struct EscapeStr<'buf>(&'buf str);
[INFO] [stdout]    |                   ---------       ^^^^^^^^^
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `decode_escapes` and `into_raw` are never used
[INFO] [stdout]    --> src/json/decode.rs:102:19
[INFO] [stdout]     |
[INFO] [stdout] 101 | impl<'buf> EscapeStr<'buf> {
[INFO] [stdout]     | -------------------------- methods in this implementation
[INFO] [stdout] 102 |     pub(crate) fn decode_escapes(
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub(crate) fn into_raw(self) -> &'buf str {
[INFO] [stdout]     |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_decimal` is never used
[INFO] [stdout]    --> src/number.rs:123:19
[INFO] [stdout]     |
[INFO] [stdout] 122 | impl Number {
[INFO] [stdout]     | ----------- associated function in this implementation
[INFO] [stdout] 123 |     pub(crate) fn from_decimal(d: Decimal) -> Self {
[INFO] [stdout]     |                   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CiString` is never constructed
[INFO] [stdout]   --> src/types.rs:73:12
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct CiString<'buf, const BYTE_LEN: usize>(&'buf str);
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `WarningKind` is never used
[INFO] [stdout]   --> src/types.rs:29:14
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub enum WarningKind {
[INFO] [stdout]    |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_kind_vec` is never used
[INFO] [stdout]    --> src/warning.rs:472:19
[INFO] [stdout]     |
[INFO] [stdout] 419 | impl<K: Kind> Set<K> {
[INFO] [stdout]     | -------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 472 |     pub(crate) fn to_kind_vec(&self) -> Vec<&K> {
[INFO] [stdout]     |                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_decimal` is never used
[INFO] [stdout]   --> src/energy.rs:22:19
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl Kwh {
[INFO] [stdout]    | -------- associated function in this implementation
[INFO] [stdout] 22 |     pub(crate) fn from_decimal(d: Decimal) -> Self {
[INFO] [stdout]    |                   ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W dead-code`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `should_guess_version_v221` is never used
[INFO] [stdout]    --> src/guess.rs:383:8
[INFO] [stdout]     |
[INFO] [stdout] 383 |     fn should_guess_version_v221(cdr_json: &str, path: &Path) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `should_guess_version_v211` is never used
[INFO] [stdout]    --> src/guess.rs:419:8
[INFO] [stdout]     |
[INFO] [stdout] 419 |     fn should_guess_version_v211(cdr_json: &str, path: &Path) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `into_element` is never used
[INFO] [stdout]    --> src/json.rs:263:19
[INFO] [stdout]     |
[INFO] [stdout] 249 | impl<'buf> Field<'buf> {
[INFO] [stdout]     | ---------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 263 |     pub(crate) fn into_element(self) -> Element<'buf> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/json/decode.rs:93:16
[INFO] [stdout]    |
[INFO] [stdout] 93 |     HasEscapes(EscapeStr<'buf>),
[INFO] [stdout]    |     ---------- ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 93 -     HasEscapes(EscapeStr<'buf>),
[INFO] [stdout] 93 +     HasEscapes(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/json/decode.rs:99:35
[INFO] [stdout]    |
[INFO] [stdout] 99 | pub(crate) struct EscapeStr<'buf>(&'buf str);
[INFO] [stdout]    |                   ---------       ^^^^^^^^^
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `decode_escapes` and `into_raw` are never used
[INFO] [stdout]    --> src/json/decode.rs:102:19
[INFO] [stdout]     |
[INFO] [stdout] 101 | impl<'buf> EscapeStr<'buf> {
[INFO] [stdout]     | -------------------------- methods in this implementation
[INFO] [stdout] 102 |     pub(crate) fn decode_escapes(
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub(crate) fn into_raw(self) -> &'buf str {
[INFO] [stdout]     |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_real_world` is never used
[INFO] [stdout]   --> src/lint/tariff/v211.rs:64:8
[INFO] [stdout]    |
[INFO] [stdout] 64 |     fn test_real_world(tariff_json: &str, path: &Path) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_units` is never used
[INFO] [stdout]   --> src/lint/tariff/v211.rs:73:8
[INFO] [stdout]    |
[INFO] [stdout] 73 |     fn test_units(tariff_json: &str, path: &Path) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_real_world` is never used
[INFO] [stdout]    --> src/lint/tariff/v221.rs:141:8
[INFO] [stdout]     |
[INFO] [stdout] 141 |     fn test_real_world(tariff_json: &str, path: &Path) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_units` is never used
[INFO] [stdout]    --> src/lint/tariff/v221.rs:150:8
[INFO] [stdout]     |
[INFO] [stdout] 150 |     fn test_units(tariff_json: &str, path: &Path) {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_decimal` is never used
[INFO] [stdout]    --> src/number.rs:123:19
[INFO] [stdout]     |
[INFO] [stdout] 122 | impl Number {
[INFO] [stdout]     | ----------- associated function in this implementation
[INFO] [stdout] 123 |     pub(crate) fn from_decimal(d: Decimal) -> Self {
[INFO] [stdout]     |                   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_price_cdr` is never used
[INFO] [stdout]    --> src/price/v211/cdr.rs:212:8
[INFO] [stdout]     |
[INFO] [stdout] 212 |     fn test_price_cdr(cdr_json: &str, path: &Path) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_parse_tariff` is never used
[INFO] [stdout]    --> src/price/v211/tariff.rs:212:8
[INFO] [stdout]     |
[INFO] [stdout] 212 |     fn test_parse_tariff(tariff: &str, _: &Path) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_price_cdr` is never used
[INFO] [stdout]    --> src/price/v221/cdr.rs:156:8
[INFO] [stdout]     |
[INFO] [stdout] 156 |     fn test_price_cdr(cdr_json: &str, path: &Path) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_parse_tariff` is never used
[INFO] [stdout]    --> src/price/v221/tariff.rs:210:8
[INFO] [stdout]     |
[INFO] [stdout] 210 |     fn test_parse_tariff(tariff: &str, _: &Path) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PRECISION` is never used
[INFO] [stdout]     --> src/price.rs:1070:11
[INFO] [stdout]      |
[INFO] [stdout] 1070 |     const PRECISION: u32 = 2;
[INFO] [stdout]      |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `assert_parse_report` is never used
[INFO] [stdout]     --> src/price.rs:1099:19
[INFO] [stdout]      |
[INFO] [stdout] 1099 |     pub(crate) fn assert_parse_report(
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `assert_price_report` is never used
[INFO] [stdout]     --> src/price.rs:1127:19
[INFO] [stdout]      |
[INFO] [stdout] 1127 |     pub(crate) fn assert_price_report(report: Report, cdr_price_expect: Option<PriceExpect>) {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `unexpected_fields` is never read
[INFO] [stdout]     --> src/price.rs:1316:9
[INFO] [stdout]      |
[INFO] [stdout] 1314 |     pub struct ParseExpect {
[INFO] [stdout]      |                ----------- field in this struct
[INFO] [stdout] 1315 |         #[serde(default)]
[INFO] [stdout] 1316 |         unexpected_fields: Expectation<Vec<String>>,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]     --> src/price.rs:1323:9
[INFO] [stdout]      |
[INFO] [stdout] 1321 |     pub struct PriceExpect {
[INFO] [stdout]      |                ----------- fields in this struct
[INFO] [stdout] 1322 |         #[serde(default)]
[INFO] [stdout] 1323 |         warnings: Expectation<Vec<String>>,
[INFO] [stdout]      |         ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1326 |         unexpected_fields: Expectation<Vec<String>>,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1330 |         tariff_index: Expectation<usize>,
[INFO] [stdout]      |         ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1334 |         tariff_id: Expectation<String>,
[INFO] [stdout]      |         ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1340 |         tariff_reports: Expectation<Vec<TariffReport>>,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1344 |         total_cost: Expectation<Price>,
[INFO] [stdout]      |         ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1348 |         total_fixed_cost: Expectation<Price>,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1352 |         total_time: Expectation<HoursDecimal>,
[INFO] [stdout]      |         ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1356 |         total_time_cost: Expectation<Price>,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1360 |         total_energy: Expectation<Kwh>,
[INFO] [stdout]      |         ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1364 |         total_energy_cost: Expectation<Price>,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1368 |         total_parking_time: Expectation<HoursDecimal>,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1372 |         total_parking_cost: Expectation<Price>,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1376 |         total_reservation_cost: Expectation<Price>,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id` and `unexpected_fields` are never read
[INFO] [stdout]     --> src/price.rs:1381:9
[INFO] [stdout]      |
[INFO] [stdout] 1380 |     pub struct TariffReport {
[INFO] [stdout]      |                ------------ fields in this struct
[INFO] [stdout] 1381 |         id: String,
[INFO] [stdout]      |         ^^
[INFO] [stdout] 1382 |
[INFO] [stdout] 1383 |         unexpected_fields: Vec<String>,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `TariffReport` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `expect_opt_price` and `expect_price` are never used
[INFO] [stdout]     --> src/price.rs:1388:12
[INFO] [stdout]      |
[INFO] [stdout] 1386 |     impl Expectation<Price> {
[INFO] [stdout]      |     ----------------------- methods in this implementation
[INFO] [stdout] 1387 |         #[track_caller]
[INFO] [stdout] 1388 |         fn expect_opt_price(self, field_name: &str, total: &Total<Option<Price>>) {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1426 |         fn expect_price(self, field_name: &str, total: &Total<Price, Option<Price>>) {
[INFO] [stdout]      |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `expect_duration` and `expect_opt_duration` are never used
[INFO] [stdout]     --> src/price.rs:1460:12
[INFO] [stdout]      |
[INFO] [stdout] 1458 |     impl Expectation<HoursDecimal> {
[INFO] [stdout]      |     ------------------------------ methods in this implementation
[INFO] [stdout] 1459 |         #[track_caller]
[INFO] [stdout] 1460 |         fn expect_duration(self, field_name: &str, total: &Total<HoursDecimal>) {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1477 |         fn expect_opt_duration(
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `expect_kwh` is never used
[INFO] [stdout]     --> src/price.rs:1504:12
[INFO] [stdout]      |
[INFO] [stdout] 1502 |     impl Expectation<Kwh> {
[INFO] [stdout]      |     --------------------- method in this implementation
[INFO] [stdout] 1503 |         #[track_caller]
[INFO] [stdout] 1504 |         fn expect_kwh(self, field_name: &str, total: &Total<Kwh>) {
[INFO] [stdout]      |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_parse_v211` is never used
[INFO] [stdout]    --> src/tariff.rs:171:8
[INFO] [stdout]     |
[INFO] [stdout] 171 |     fn test_parse_v211(tariff_json: &str, path: &Path) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_parse_v221` is never used
[INFO] [stdout]    --> src/tariff.rs:180:8
[INFO] [stdout]     |
[INFO] [stdout] 180 |     fn test_parse_v221(tariff_json: &str, path: &Path) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `expect_version` is never used
[INFO] [stdout]    --> src/tariff.rs:186:8
[INFO] [stdout]     |
[INFO] [stdout] 186 |     fn expect_version(tariff_json: &str, path: &Path, expected_version: Version) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `assert_find_or_infer_outcome` is never used
[INFO] [stdout]    --> src/timezone.rs:386:19
[INFO] [stdout]     |
[INFO] [stdout] 386 |     pub(crate) fn assert_find_or_infer_outcome(
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CiString` is never constructed
[INFO] [stdout]   --> src/types.rs:73:12
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct CiString<'buf, const BYTE_LEN: usize>(&'buf str);
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `WarningKind` is never used
[INFO] [stdout]   --> src/types.rs:29:14
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub enum WarningKind {
[INFO] [stdout]    |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_kind_vec` is never used
[INFO] [stdout]    --> src/warning.rs:472:19
[INFO] [stdout]     |
[INFO] [stdout] 419 | impl<K: Kind> Set<K> {
[INFO] [stdout]     | -------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 472 |     pub(crate) fn to_kind_vec(&self) -> Vec<&K> {
[INFO] [stdout]     |                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `elem_id` is never used
[INFO] [stdout]    --> src/warning.rs:644:23
[INFO] [stdout]     |
[INFO] [stdout] 643 |     impl<K: Kind> Warning<K> {
[INFO] [stdout]     |     ------------------------ method in this implementation
[INFO] [stdout] 644 |         pub(crate) fn elem_id(&self) -> Option<json::ElemId> {
[INFO] [stdout]     |                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `AsDecimal` is never used
[INFO] [stdout]    --> src/lib.rs:295:15
[INFO] [stdout]     |
[INFO] [stdout] 295 |     pub trait AsDecimal {
[INFO] [stdout]     |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `DecimalPartialEq` is never used
[INFO] [stdout]    --> src/lib.rs:300:15
[INFO] [stdout]     |
[INFO] [stdout] 300 |     pub trait DecimalPartialEq<Rhs = Self> {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `into_option` is never used
[INFO] [stdout]    --> src/lib.rs:398:16
[INFO] [stdout]     |
[INFO] [stdout] 393 | /     impl<T> ExpectValue<T>
[INFO] [stdout] 394 | |     where
[INFO] [stdout] 395 | |         T: fmt::Debug,
[INFO] [stdout]     | |______________________- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 398 |           pub fn into_option(self) -> Option<T> {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<number::Number, Infallible>
[INFO] [stdout]    --> src/lib.rs:510:27
[INFO] [stdout]     |
[INFO] [stdout] 510 |         let num: Number = dec!(0.1234).try_into().unwrap();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-D unmustuse-in-always-ok`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<number::Number, Infallible>
[INFO] [stdout]    --> src/lib.rs:517:27
[INFO] [stdout]     |
[INFO] [stdout] 517 |         let num: Number = dec!(37.1234).try_into().unwrap();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<number::Number, Infallible>
[INFO] [stdout]    --> src/lib.rs:524:27
[INFO] [stdout]     |
[INFO] [stdout] 524 |         let num: Number = dec!(0).try_into().unwrap();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `ocpi-tariffs` (lib test) due to 3 previous errors; 37 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "cc9281da76bb128274b6eae1b2e434dd26414b63e7dfe629b3c9372a8bd06b73", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cc9281da76bb128274b6eae1b2e434dd26414b63e7dfe629b3c9372a8bd06b73", kill_on_drop: false }`
[INFO] [stdout] cc9281da76bb128274b6eae1b2e434dd26414b63e7dfe629b3c9372a8bd06b73
