[INFO] cloning repository https://github.com/TheToddmeister/wwn_data_sources
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/TheToddmeister/wwn_data_sources" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTheToddmeister%2Fwwn_data_sources", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTheToddmeister%2Fwwn_data_sources'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 04e0f332340410fe548ba8cdf220d1e943600070
[INFO] testing TheToddmeister/wwn_data_sources against 1.76.0 for beta-1.77-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTheToddmeister%2Fwwn_data_sources" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/TheToddmeister/wwn_data_sources on toolchain 1.76.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.76.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/TheToddmeister/wwn_data_sources
[INFO] finished tweaking git repo https://github.com/TheToddmeister/wwn_data_sources
[INFO] tweaked toml for git repo https://github.com/TheToddmeister/wwn_data_sources written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/TheToddmeister/wwn_data_sources already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.76.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded console-api v0.6.0
[INFO] [stderr]   Downloaded enum-display v0.1.4
[INFO] [stderr]   Downloaded haversine v0.2.1
[INFO] [stderr]   Downloaded console-subscriber v0.2.0
[INFO] [stderr]   Downloaded csv-async v1.2.6
[INFO] [stderr]   Downloaded enum-display-macro v0.1.4
[INFO] [stderr]   Downloaded serde_string_enum v0.2.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c3a56ba433dd7c35a044ec30c960be02872eb940a28fd6f291dd5e115ca82543
[INFO] running `Command { std: "docker" "start" "-a" "c3a56ba433dd7c35a044ec30c960be02872eb940a28fd6f291dd5e115ca82543", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c3a56ba433dd7c35a044ec30c960be02872eb940a28fd6f291dd5e115ca82543", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c3a56ba433dd7c35a044ec30c960be02872eb940a28fd6f291dd5e115ca82543", kill_on_drop: false }`
[INFO] [stdout] c3a56ba433dd7c35a044ec30c960be02872eb940a28fd6f291dd5e115ca82543
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fb7fe978b7fc0e5155ca5fe8fb652b0201cc63443d8b68cd51008215607ab038
[INFO] running `Command { std: "docker" "start" "-a" "fb7fe978b7fc0e5155ca5fe8fb652b0201cc63443d8b68cd51008215607ab038", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.78
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling libc v0.2.153
[INFO] [stderr]    Compiling pin-project-lite v0.2.13
[INFO] [stderr]    Compiling memchr v2.7.1
[INFO] [stderr]    Compiling bytes v1.5.0
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling futures-core v0.3.30
[INFO] [stderr]    Compiling itoa v1.0.10
[INFO] [stderr]    Compiling pkg-config v0.3.29
[INFO] [stderr]    Compiling serde v1.0.193
[INFO] [stderr]    Compiling futures-sink v0.3.30
[INFO] [stderr]    Compiling once_cell v1.19.0
[INFO] [stderr]    Compiling vcpkg v0.2.15
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling futures-task v0.3.30
[INFO] [stderr]    Compiling futures-io v0.3.30
[INFO] [stderr]    Compiling pin-utils v0.1.0
[INFO] [stderr]    Compiling openssl v0.10.63
[INFO] [stderr]    Compiling futures-channel v0.3.30
[INFO] [stderr]    Compiling num-traits v0.2.17
[INFO] [stderr]    Compiling tinyvec_macros v0.1.1
[INFO] [stderr]    Compiling tracing-core v0.1.32
[INFO] [stderr]    Compiling strsim v0.10.0
[INFO] [stderr]    Compiling hashbrown v0.14.3
[INFO] [stderr]    Compiling equivalent v1.0.1
[INFO] [stderr]    Compiling httparse v1.8.0
[INFO] [stderr]    Compiling ident_case v1.0.1
[INFO] [stderr]    Compiling ryu v1.0.16
[INFO] [stderr]    Compiling bitflags v2.4.2
[INFO] [stderr]    Compiling tinyvec v1.6.0
[INFO] [stderr]    Compiling http v0.2.11
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling serde_json v1.0.108
[INFO] [stderr]    Compiling try-lock v0.2.5
[INFO] [stderr]    Compiling percent-encoding v2.3.1
[INFO] [stderr]    Compiling log v0.4.20
[INFO] [stderr]    Compiling siphasher v0.3.11
[INFO] [stderr]    Compiling form_urlencoded v1.2.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling want v0.3.1
[INFO] [stderr]    Compiling quote v1.0.35
[INFO] [stderr]    Compiling indexmap v2.2.2
[INFO] [stderr]    Compiling phf_shared v0.11.2
[INFO] [stderr]    Compiling unicase v2.7.0
[INFO] [stderr]    Compiling httpdate v1.0.3
[INFO] [stderr]    Compiling gimli v0.28.1
[INFO] [stderr]    Compiling syn v2.0.48
[INFO] [stderr]    Compiling unicode-bidi v0.3.15
[INFO] [stderr]    Compiling cc v1.0.83
[INFO] [stderr]    Compiling mio v0.8.10
[INFO] [stderr]    Compiling num_cpus v1.16.0
[INFO] [stderr]    Compiling socket2 v0.5.5
[INFO] [stderr]    Compiling unicode-segmentation v1.11.0
[INFO] [stderr]    Compiling adler v1.0.2
[INFO] [stderr]    Compiling http-body v0.4.6
[INFO] [stderr]    Compiling unicode-normalization v0.1.22
[INFO] [stderr]    Compiling tower-service v0.3.2
[INFO] [stderr]    Compiling phf_generator v0.11.2
[INFO] [stderr]    Compiling miniz_oxide v0.7.2
[INFO] [stderr]    Compiling object v0.32.2
[INFO] [stderr]    Compiling tokio v1.36.0
[INFO] [stderr]    Compiling convert_case v0.6.0
[INFO] [stderr]    Compiling anyhow v1.0.79
[INFO] [stderr]    Compiling thiserror v1.0.56
[INFO] [stderr]    Compiling base64 v0.21.7
[INFO] [stderr]    Compiling idna v0.5.0
[INFO] [stderr]    Compiling rustc-demangle v0.1.23
[INFO] [stderr]    Compiling iana-time-zone v0.1.60
[INFO] [stderr]    Compiling regex-automata v0.4.5
[INFO] [stderr]    Compiling rustls-pemfile v1.0.4
[INFO] [stderr]    Compiling csv-core v0.1.11
[INFO] [stderr]    Compiling encoding_rs v0.8.33
[INFO] [stderr]    Compiling either v1.9.0
[INFO] [stderr]    Compiling mime v0.3.17
[INFO] [stderr]    Compiling ipnet v2.9.0
[INFO] [stderr]    Compiling sync_wrapper v0.1.2
[INFO] [stderr]    Compiling itertools v0.12.1
[INFO] [stderr]    Compiling ordered-float v4.2.0
[INFO] [stderr]    Compiling url v2.5.0
[INFO] [stderr]    Compiling http v1.0.0
[INFO] [stderr]    Compiling haversine v0.2.1
[INFO] [stderr]    Compiling openssl-sys v0.9.99
[INFO] [stderr]    Compiling backtrace v0.3.69
[INFO] [stderr]    Compiling native-tls v0.2.11
[INFO] [stderr]    Compiling addr2line v0.21.0
[INFO] [stderr]    Compiling darling_core v0.20.5
[INFO] [stderr]    Compiling enum-display-macro v0.1.4
[INFO] [stderr]    Compiling serde_derive v1.0.193
[INFO] [stderr]    Compiling futures-macro v0.3.30
[INFO] [stderr]    Compiling tracing-attributes v0.1.27
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.56
[INFO] [stderr]    Compiling phf_macros v0.11.2
[INFO] [stderr]    Compiling serde_string_enum v0.2.1
[INFO] [stderr]    Compiling enum-display v0.1.4
[INFO] [stderr]    Compiling tokio-stream v0.1.14
[INFO] [stderr]    Compiling futures-util v0.3.30
[INFO] [stderr]    Compiling darling_macro v0.20.5
[INFO] [stderr]    Compiling tracing v0.1.40
[INFO] [stderr]    Compiling tokio-util v0.7.10
[INFO] [stderr]    Compiling darling v0.20.5
[INFO] [stderr]    Compiling serde_with_macros v3.4.0
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling h2 v0.3.24
[INFO] [stderr]    Compiling futures-executor v0.3.30
[INFO] [stderr]    Compiling futures v0.3.30
[INFO] [stderr]    Compiling bstr v1.9.0
[INFO] [stderr]    Compiling chrono v0.4.33
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling phf v0.11.2
[INFO] [stderr]    Compiling csv-async v1.2.6
[INFO] [stderr]    Compiling hyper v0.14.28
[INFO] [stderr]    Compiling serde_with v3.4.0
[INFO] [stderr]    Compiling hyper-tls v0.5.0
[INFO] [stderr]    Compiling reqwest v0.11.24
[INFO] [stderr]    Compiling wwn-data-sources v1.0.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/lib.rs:1:22
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FixedOffset`
[INFO] [stdout]  --> src/lib.rs:2:24
[INFO] [stdout]   |
[INFO] [stdout] 2 | use chrono::{DateTime, FixedOffset, NaiveDate, Utc};
[INFO] [stdout]   |                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Lazy`
[INFO] [stdout]  --> src/lib.rs:3:33
[INFO] [stdout]   |
[INFO] [stdout] 3 | use futures::future::{join_all, Lazy};
[INFO] [stdout]   |                                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `canada`, `nve`
[INFO] [stdout]  --> src/lib.rs:7:22
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::sources::{canada, nve};
[INFO] [stdout]   |                      ^^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::geo::location::Location`
[INFO] [stdout]  --> src/lib.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::geo::location::Location;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::sources::canada::CanadaClient`
[INFO] [stdout]   --> src/lib.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::sources::canada::CanadaClient;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `NaiveDateTime`
[INFO] [stdout]  --> src/internal/observation.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use chrono::{DateTime, NaiveDateTime, Utc};
[INFO] [stdout]   |                        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `canada`, `nve`, `uk`
[INFO] [stdout]  --> src/internal/observation.rs:3:22
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::sources::{uk, nve, canada};
[INFO] [stdout]   |                      ^^  ^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Deref`
[INFO] [stdout]  --> src/internal/station.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::ops::Deref;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::data_mapping::*`
[INFO] [stdout]  --> src/internal/station.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::data_mapping::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Duration`
[INFO] [stdout]  --> src/internal/timeseries.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use chrono::{DateTime, Duration, FixedOffset, Utc};
[INFO] [stdout]   |                        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures::future::join_all`
[INFO] [stdout]  --> src/internal/timeseries.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use futures::future::join_all;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ParseError`
[INFO] [stdout]  --> src/internal/timeseries.rs:5:53
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::Error::{DataSourceParameterMappingError, ParseError};
[INFO] [stdout]   |                                                     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::internal`
[INFO] [stdout]  --> src/internal/timeseries.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::internal;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ValidatedObservation`
[INFO] [stdout]  --> src/internal/timeseries.rs:8:49
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::internal::observation::{Observation, ValidatedObservation};
[INFO] [stdout]   |                                                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Display`
[INFO] [stdout]  --> src/serde/deserializor.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::Display;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/serde/deserializor.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FixedOffset`
[INFO] [stdout]  --> src/serde/deserializor.rs:3:24
[INFO] [stdout]   |
[INFO] [stdout] 3 | use chrono::{DateTime, FixedOffset, NaiveDateTime, Utc};
[INFO] [stdout]   |                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `reqwest::header::InvalidHeaderValue`
[INFO] [stdout]  --> src/serde/deserializor.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use reqwest::header::InvalidHeaderValue;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `de::Error`
[INFO] [stdout]  --> src/serde/deserializor.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 | use serde::{de::Error, Deserialize, Deserializer};
[INFO] [stdout]   |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HttpError`
[INFO] [stdout]  --> src/serde/deserializor.rs:7:27
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::{data_mapping, HttpError};
[INFO] [stdout]   |                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `serde` should have an upper camel case name
[INFO] [stdout]   --> src/serde/deserializor.rs:14:1
[INFO] [stdout]    |
[INFO] [stdout] 14 | serde(#[from] serde_json::Error),
[INFO] [stdout]    | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Serde`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/sources/nve/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde::Serialize`
[INFO] [stdout]  --> src/sources/nve/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde::Serialize;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `internal`
[INFO] [stdout]  --> src/sources/nve/mod.rs:7:43
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::{handle_http_response_not_200, internal, Result};
[INFO] [stdout]   |                                           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `convert_aktiv_to_bool`
[INFO] [stdout]  --> src/sources/nve/station.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     convert_aktiv_to_bool,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::BufRead`
[INFO] [stdout]  --> src/sources/smih/observation_data.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::io::BufRead;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `NVE`
[INFO] [stdout]  --> src/sources/uk/mod.rs:6:35
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::data_mapping::Origin::{NVE, UKGOV};
[INFO] [stdout]   |                                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `chrono::NaiveDate`
[INFO] [stdout]  --> src/sources/uk/station.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use chrono::NaiveDate;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `formats::PreferOne`
[INFO] [stdout]  --> src/sources/uk/station.rs:5:60
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde_with:: {serde_as, OneOrMany, formats::PreferMany,formats::PreferOne};
[INFO] [stdout]   |                                                            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::data_mapping::ParameterDefinitions`
[INFO] [stdout]  --> src/sources/uk/station.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::data_mapping::ParameterDefinitions;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `convert_active_to_bool`
[INFO] [stdout]  --> src/sources/uk/station.rs:7:34
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::serde::deserializor::{convert_active_to_bool};
[INFO] [stdout]   |                                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `observation`, `station`
[INFO] [stdout]  --> src/sources/uk/station.rs:8:26
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::sources::uk::{observation, station};
[INFO] [stdout]   |                          ^^^^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DateTime`, `Utc`
[INFO] [stdout]  --> src/sources/uk/observation.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use chrono::{DateTime, NaiveDate, NaiveDateTime, Utc};
[INFO] [stdout]   |              ^^^^^^^^                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_with`
[INFO] [stdout]  --> src/sources/uk/observation.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use serde_with;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]  --> src/sources/canada/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use itertools::Itertools;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DateTime`, `FixedOffset`, `NaiveDate`, `Utc`
[INFO] [stdout]  --> src/sources/canada/observations.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use chrono::{DateTime, FixedOffset, NaiveDate, NaiveDateTime, Utc};
[INFO] [stdout]   |              ^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/data_mapping.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_with::SerializeDisplay`
[INFO] [stdout]  --> src/data_mapping.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use serde_with::SerializeDisplay;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PUT_IN` should have an upper camel case name
[INFO] [stdout]    --> src/data_mapping.rs:137:5
[INFO] [stdout]     |
[INFO] [stdout] 137 |     PUT_IN,
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to upper camel case: `PutIn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `TAKE_OUT` should have an upper camel case name
[INFO] [stdout]    --> src/data_mapping.rs:138:5
[INFO] [stdout]     |
[INFO] [stdout] 138 |     TAKE_OUT,
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to upper camel case: `TakeOut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/geo/location.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::any::Any`
[INFO] [stdout]  --> src/geo/position.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::any::Any;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::geo::location::Location`
[INFO] [stdout]  --> src/geo/position.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::geo::location::Location;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `serde` should have an upper camel case name
[INFO] [stdout]    --> src/lib.rs:151:5
[INFO] [stdout]     |
[INFO] [stdout] 151 |     serde(#[from] serde_json::Error),
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Serde`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `request` should have an upper camel case name
[INFO] [stdout]    --> src/lib.rs:153:5
[INFO] [stdout]     |
[INFO] [stdout] 153 |     request(#[from] reqwest::Error),
[INFO] [stdout]     |     ^^^^^^^ help: convert the identifier to upper camel case: `Request`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/sources/smih/observation_data.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     let mut rdr = AsyncReaderBuilder::new()
[INFO] [stdout]    |         ----^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parameter`
[INFO] [stdout]   --> src/sources/canada/mod.rs:43:13
[INFO] [stdout]    |
[INFO] [stdout] 43 |         let parameter = ParameterDefinitions::to_canada_id(parameter)?;
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_parameter`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures::FutureExt`
[INFO] [stdout]  --> src/internal/station.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use futures::FutureExt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/geo/position.rs:20:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |         let mut r: f64 = 0.0 + kilometers;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `convert_aktiv_to_bool` is never used
[INFO] [stdout]   --> src/serde/deserializor.rs:52:10
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub   fn convert_aktiv_to_bool<'de, D>(deserializer: D) -> Result<bool, D::Error>
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `deserialize_smih_station_observation` is never used
[INFO] [stdout]   --> src/sources/smih/observation_data.rs:16:10
[INFO] [stdout]    |
[INFO] [stdout] 16 | async fn deserialize_smih_station_observation<>(csv_text: &str) ->Result<Vec<HistoricObservation>, Box<dyn std::error::Error>>{
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `convert_option_zulutime_string_to_UTC` should have a snake case name
[INFO] [stdout]   --> src/serde/deserializor.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub  fn convert_option_zulutime_string_to_UTC<'de, D>(deserializer: D) -> Result<Option<DateTime<Utc>>, D::Error>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `convert_option_zulutime_string_to_utc`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `convert_ISO8601_to_naive_datetime` should have a snake case name
[INFO] [stdout]   --> src/serde/deserializor.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub  fn convert_ISO8601_to_naive_datetime<'de, D>(deserializer: D) -> Result<NaiveDateTime, D::Error>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `convert_iso8601_to_naive_datetime`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `stationId` should have a snake case name
[INFO] [stdout]   --> src/sources/nve/post_struct.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub stationId: &'p str,
[INFO] [stdout]    |         ^^^^^^^^^ help: convert the identifier to snake case: `station_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `resolutionTime` should have a snake case name
[INFO] [stdout]   --> src/sources/nve/post_struct.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub resolutionTime: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `resolution_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `referenceTime` should have a snake case name
[INFO] [stdout]   --> src/sources/nve/post_struct.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub referenceTime: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^ help: convert the identifier to snake case: `reference_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `referenceTime` should have a snake case name
[INFO] [stdout]   --> src/sources/nve/post_struct.rs:37:17
[INFO] [stdout]    |
[INFO] [stdout] 37 |             let referenceTime = format!("{lower_time}/{upper_time}");
[INFO] [stdout]    |                 ^^^^^^^^^^^^^ help: convert the identifier to snake case: `reference_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `riverName` should have a snake case name
[INFO] [stdout]   --> src/sources/nve/station.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     riverName: String,
[INFO] [stdout]    |     ^^^^^^^^^ help: convert the identifier to snake case: `river_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 59 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 13.79s
[INFO] running `Command { std: "docker" "inspect" "fb7fe978b7fc0e5155ca5fe8fb652b0201cc63443d8b68cd51008215607ab038", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fb7fe978b7fc0e5155ca5fe8fb652b0201cc63443d8b68cd51008215607ab038", kill_on_drop: false }`
[INFO] [stdout] fb7fe978b7fc0e5155ca5fe8fb652b0201cc63443d8b68cd51008215607ab038
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9cf0cc68ab69f8584f78651ee996ea8caeea5e15523c4975c8c63ff44d2ae891
[INFO] running `Command { std: "docker" "start" "-a" "9cf0cc68ab69f8584f78651ee996ea8caeea5e15523c4975c8c63ff44d2ae891", kill_on_drop: false }`
[INFO] [stderr]    Compiling parking_lot_core v0.9.9
[INFO] [stderr]    Compiling smallvec v1.13.1
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling lock_api v0.4.11
[INFO] [stderr]    Compiling tracing-core v0.1.32
[INFO] [stderr]    Compiling signal-hook-registry v1.4.1
[INFO] [stderr]    Compiling rustversion v1.0.14
[INFO] [stderr]    Compiling tokio-macros v2.2.0
[INFO] [stderr]    Compiling getrandom v0.2.12
[INFO] [stderr]    Compiling num-traits v0.2.17
[INFO] [stderr]    Compiling log v0.4.20
[INFO] [stderr]    Compiling anyhow v1.0.79
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling async-trait v0.1.77
[INFO] [stderr]    Compiling regex-syntax v0.8.2
[INFO] [stderr]    Compiling either v1.9.0
[INFO] [stderr]    Compiling miniz_oxide v0.7.2
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling itertools v0.11.0
[INFO] [stderr]    Compiling pin-project-internal v1.1.4
[INFO] [stderr]    Compiling tower-layer v0.3.2
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling crc32fast v1.3.2
[INFO] [stderr]    Compiling tracing v0.1.40
[INFO] [stderr]    Compiling parking_lot v0.12.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling native-tls v0.2.11
[INFO] [stderr]    Compiling async-stream-impl v0.3.5
[INFO] [stderr]    Compiling regex-syntax v0.6.29
[INFO] [stderr]    Compiling matchit v0.7.3
[INFO] [stderr]    Compiling crossbeam-utils v0.8.19
[INFO] [stderr]    Compiling overload v0.1.1
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling backtrace v0.3.69
[INFO] [stderr]    Compiling flate2 v1.0.28
[INFO] [stderr]    Compiling nu-ansi-term v0.46.0
[INFO] [stderr]    Compiling tokio v1.36.0
[INFO] [stderr]    Compiling sharded-slab v0.1.7
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling axum-core v0.3.4
[INFO] [stderr]    Compiling axum v0.6.20
[INFO] [stderr]    Compiling chrono v0.4.33
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling thread_local v1.1.7
[INFO] [stderr]    Compiling async-stream v0.3.5
[INFO] [stderr]    Compiling regex-automata v0.4.5
[INFO] [stderr]    Compiling prost-derive v0.12.3
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling crossbeam-channel v0.5.11
[INFO] [stderr]    Compiling ordered-float v4.2.0
[INFO] [stderr]    Compiling humantime v2.1.0
[INFO] [stderr]    Compiling pin-project v1.1.4
[INFO] [stderr]    Compiling regex-automata v0.1.10
[INFO] [stderr]    Compiling serde_with v3.4.0
[INFO] [stderr]    Compiling hdrhistogram v7.5.4
[INFO] [stderr]    Compiling prost v0.12.3
[INFO] [stderr]    Compiling matchers v0.1.0
[INFO] [stderr]    Compiling prost-types v0.12.3
[INFO] [stderr]    Compiling regex v1.10.3
[INFO] [stderr]    Compiling bstr v1.9.0
[INFO] [stderr]    Compiling tracing-subscriber v0.3.18
[INFO] [stderr]    Compiling tokio-util v0.7.10
[INFO] [stderr]    Compiling tokio-stream v0.1.14
[INFO] [stderr]    Compiling tokio-io-timeout v1.2.0
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling csv-async v1.2.6
[INFO] [stderr]    Compiling h2 v0.3.24
[INFO] [stderr]    Compiling tower v0.4.13
[INFO] [stderr]    Compiling hyper v0.14.28
[INFO] [stderr]    Compiling hyper-timeout v0.4.1
[INFO] [stderr]    Compiling hyper-tls v0.5.0
[INFO] [stderr]    Compiling reqwest v0.11.24
[INFO] [stderr]    Compiling wwn-data-sources v1.0.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/lib.rs:1:22
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FixedOffset`
[INFO] [stdout]  --> src/lib.rs:2:24
[INFO] [stdout]   |
[INFO] [stdout] 2 | use chrono::{DateTime, FixedOffset, NaiveDate, Utc};
[INFO] [stdout]   |                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Lazy`
[INFO] [stdout]  --> src/lib.rs:3:33
[INFO] [stdout]   |
[INFO] [stdout] 3 | use futures::future::{join_all, Lazy};
[INFO] [stdout]   |                                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `canada`, `nve`
[INFO] [stdout]  --> src/lib.rs:7:22
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::sources::{canada, nve};
[INFO] [stdout]   |                      ^^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::geo::location::Location`
[INFO] [stdout]  --> src/lib.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::geo::location::Location;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::sources::canada::CanadaClient`
[INFO] [stdout]   --> src/lib.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::sources::canada::CanadaClient;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `NaiveDateTime`
[INFO] [stdout]  --> src/internal/observation.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use chrono::{DateTime, NaiveDateTime, Utc};
[INFO] [stdout]   |                        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `canada`, `nve`, `uk`
[INFO] [stdout]  --> src/internal/observation.rs:3:22
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::sources::{uk, nve, canada};
[INFO] [stdout]   |                      ^^  ^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Deref`
[INFO] [stdout]  --> src/internal/station.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::ops::Deref;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::data_mapping::*`
[INFO] [stdout]  --> src/internal/station.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::data_mapping::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Duration`
[INFO] [stdout]  --> src/internal/timeseries.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use chrono::{DateTime, Duration, FixedOffset, Utc};
[INFO] [stdout]   |                        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures::future::join_all`
[INFO] [stdout]  --> src/internal/timeseries.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use futures::future::join_all;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ParseError`
[INFO] [stdout]  --> src/internal/timeseries.rs:5:53
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::Error::{DataSourceParameterMappingError, ParseError};
[INFO] [stdout]   |                                                     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::internal`
[INFO] [stdout]  --> src/internal/timeseries.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::internal;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ValidatedObservation`
[INFO] [stdout]  --> src/internal/timeseries.rs:8:49
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::internal::observation::{Observation, ValidatedObservation};
[INFO] [stdout]   |                                                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Display`
[INFO] [stdout]  --> src/serde/deserializor.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::Display;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/serde/deserializor.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FixedOffset`
[INFO] [stdout]  --> src/serde/deserializor.rs:3:24
[INFO] [stdout]   |
[INFO] [stdout] 3 | use chrono::{DateTime, FixedOffset, NaiveDateTime, Utc};
[INFO] [stdout]   |                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `reqwest::header::InvalidHeaderValue`
[INFO] [stdout]  --> src/serde/deserializor.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use reqwest::header::InvalidHeaderValue;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `de::Error`
[INFO] [stdout]  --> src/serde/deserializor.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 | use serde::{de::Error, Deserialize, Deserializer};
[INFO] [stdout]   |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HttpError`
[INFO] [stdout]  --> src/serde/deserializor.rs:7:27
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::{data_mapping, HttpError};
[INFO] [stdout]   |                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `serde` should have an upper camel case name
[INFO] [stdout]   --> src/serde/deserializor.rs:14:1
[INFO] [stdout]    |
[INFO] [stdout] 14 | serde(#[from] serde_json::Error),
[INFO] [stdout]    | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Serde`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/sources/nve/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde::Serialize`
[INFO] [stdout]  --> src/sources/nve/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde::Serialize;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `internal`
[INFO] [stdout]  --> src/sources/nve/mod.rs:7:43
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::{handle_http_response_not_200, internal, Result};
[INFO] [stdout]   |                                           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `convert_aktiv_to_bool`
[INFO] [stdout]  --> src/sources/nve/station.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     convert_aktiv_to_bool,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::BufRead`
[INFO] [stdout]  --> src/sources/smih/observation_data.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::io::BufRead;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `NVE`
[INFO] [stdout]  --> src/sources/uk/mod.rs:6:35
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::data_mapping::Origin::{NVE, UKGOV};
[INFO] [stdout]   |                                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `chrono::NaiveDate`
[INFO] [stdout]  --> src/sources/uk/station.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use chrono::NaiveDate;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `formats::PreferOne`
[INFO] [stdout]  --> src/sources/uk/station.rs:5:60
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde_with:: {serde_as, OneOrMany, formats::PreferMany,formats::PreferOne};
[INFO] [stdout]   |                                                            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::data_mapping::ParameterDefinitions`
[INFO] [stdout]  --> src/sources/uk/station.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::data_mapping::ParameterDefinitions;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `convert_active_to_bool`
[INFO] [stdout]  --> src/sources/uk/station.rs:7:34
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::serde::deserializor::{convert_active_to_bool};
[INFO] [stdout]   |                                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `observation`, `station`
[INFO] [stdout]  --> src/sources/uk/station.rs:8:26
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::sources::uk::{observation, station};
[INFO] [stdout]   |                          ^^^^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DateTime`, `Utc`
[INFO] [stdout]  --> src/sources/uk/observation.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use chrono::{DateTime, NaiveDate, NaiveDateTime, Utc};
[INFO] [stdout]   |              ^^^^^^^^                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_with`
[INFO] [stdout]  --> src/sources/uk/observation.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use serde_with;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]  --> src/sources/canada/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use itertools::Itertools;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DateTime`, `FixedOffset`, `NaiveDate`, `Utc`
[INFO] [stdout]  --> src/sources/canada/observations.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use chrono::{DateTime, FixedOffset, NaiveDate, NaiveDateTime, Utc};
[INFO] [stdout]   |              ^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/data_mapping.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_with::SerializeDisplay`
[INFO] [stdout]  --> src/data_mapping.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use serde_with::SerializeDisplay;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PUT_IN` should have an upper camel case name
[INFO] [stdout]    --> src/data_mapping.rs:137:5
[INFO] [stdout]     |
[INFO] [stdout] 137 |     PUT_IN,
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to upper camel case: `PutIn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `TAKE_OUT` should have an upper camel case name
[INFO] [stdout]    --> src/data_mapping.rs:138:5
[INFO] [stdout]     |
[INFO] [stdout] 138 |     TAKE_OUT,
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to upper camel case: `TakeOut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/geo/location.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::any::Any`
[INFO] [stdout]  --> src/geo/position.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::any::Any;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::geo::location::Location`
[INFO] [stdout]  --> src/geo/position.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::geo::location::Location;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `serde` should have an upper camel case name
[INFO] [stdout]    --> src/lib.rs:151:5
[INFO] [stdout]     |
[INFO] [stdout] 151 |     serde(#[from] serde_json::Error),
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Serde`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `request` should have an upper camel case name
[INFO] [stdout]    --> src/lib.rs:153:5
[INFO] [stdout]     |
[INFO] [stdout] 153 |     request(#[from] reqwest::Error),
[INFO] [stdout]     |     ^^^^^^^ help: convert the identifier to upper camel case: `Request`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/sources/smih/observation_data.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     let mut rdr = AsyncReaderBuilder::new()
[INFO] [stdout]    |         ----^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parameter`
[INFO] [stdout]   --> src/sources/canada/mod.rs:43:13
[INFO] [stdout]    |
[INFO] [stdout] 43 |         let parameter = ParameterDefinitions::to_canada_id(parameter)?;
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_parameter`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures::FutureExt`
[INFO] [stdout]  --> src/internal/station.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use futures::FutureExt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/geo/position.rs:20:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |         let mut r: f64 = 0.0 + kilometers;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling tonic v0.10.2
[INFO] [stdout] warning: function `convert_aktiv_to_bool` is never used
[INFO] [stdout]   --> src/serde/deserializor.rs:52:10
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub   fn convert_aktiv_to_bool<'de, D>(deserializer: D) -> Result<bool, D::Error>
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `deserialize_smih_station_observation` is never used
[INFO] [stdout]   --> src/sources/smih/observation_data.rs:16:10
[INFO] [stdout]    |
[INFO] [stdout] 16 | async fn deserialize_smih_station_observation<>(csv_text: &str) ->Result<Vec<HistoricObservation>, Box<dyn std::error::Error>>{
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `convert_option_zulutime_string_to_UTC` should have a snake case name
[INFO] [stdout]   --> src/serde/deserializor.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub  fn convert_option_zulutime_string_to_UTC<'de, D>(deserializer: D) -> Result<Option<DateTime<Utc>>, D::Error>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `convert_option_zulutime_string_to_utc`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `convert_ISO8601_to_naive_datetime` should have a snake case name
[INFO] [stdout]   --> src/serde/deserializor.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub  fn convert_ISO8601_to_naive_datetime<'de, D>(deserializer: D) -> Result<NaiveDateTime, D::Error>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `convert_iso8601_to_naive_datetime`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `stationId` should have a snake case name
[INFO] [stdout]   --> src/sources/nve/post_struct.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub stationId: &'p str,
[INFO] [stdout]    |         ^^^^^^^^^ help: convert the identifier to snake case: `station_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `resolutionTime` should have a snake case name
[INFO] [stdout]   --> src/sources/nve/post_struct.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub resolutionTime: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `resolution_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `referenceTime` should have a snake case name
[INFO] [stdout]   --> src/sources/nve/post_struct.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub referenceTime: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^ help: convert the identifier to snake case: `reference_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `referenceTime` should have a snake case name
[INFO] [stdout]   --> src/sources/nve/post_struct.rs:37:17
[INFO] [stdout]    |
[INFO] [stdout] 37 |             let referenceTime = format!("{lower_time}/{upper_time}");
[INFO] [stdout]    |                 ^^^^^^^^^^^^^ help: convert the identifier to snake case: `reference_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `riverName` should have a snake case name
[INFO] [stdout]   --> src/sources/nve/station.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     riverName: String,
[INFO] [stdout]    |     ^^^^^^^^^ help: convert the identifier to snake case: `river_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 59 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling console-api v0.6.0
[INFO] [stderr]    Compiling console-subscriber v0.2.0
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/lib.rs:1:22
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FixedOffset`
[INFO] [stdout]  --> src/lib.rs:2:24
[INFO] [stdout]   |
[INFO] [stdout] 2 | use chrono::{DateTime, FixedOffset, NaiveDate, Utc};
[INFO] [stdout]   |                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Lazy`
[INFO] [stdout]  --> src/lib.rs:3:33
[INFO] [stdout]   |
[INFO] [stdout] 3 | use futures::future::{join_all, Lazy};
[INFO] [stdout]   |                                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `canada`
[INFO] [stdout]  --> src/lib.rs:7:22
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::sources::{canada, nve};
[INFO] [stdout]   |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::geo::location::Location`
[INFO] [stdout]  --> src/lib.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::geo::location::Location;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::sources::canada::CanadaClient`
[INFO] [stdout]   --> src/lib.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::sources::canada::CanadaClient;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `NaiveDateTime`
[INFO] [stdout]  --> src/internal/observation.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use chrono::{DateTime, NaiveDateTime, Utc};
[INFO] [stdout]   |                        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `canada`, `nve`, `uk`
[INFO] [stdout]  --> src/internal/observation.rs:3:22
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::sources::{uk, nve, canada};
[INFO] [stdout]   |                      ^^  ^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Deref`
[INFO] [stdout]  --> src/internal/station.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::ops::Deref;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::data_mapping::*`
[INFO] [stdout]  --> src/internal/station.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::data_mapping::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Duration`
[INFO] [stdout]  --> src/internal/timeseries.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use chrono::{DateTime, Duration, FixedOffset, Utc};
[INFO] [stdout]   |                        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures::future::join_all`
[INFO] [stdout]  --> src/internal/timeseries.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use futures::future::join_all;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ParseError`
[INFO] [stdout]  --> src/internal/timeseries.rs:5:53
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::Error::{DataSourceParameterMappingError, ParseError};
[INFO] [stdout]   |                                                     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::internal`
[INFO] [stdout]  --> src/internal/timeseries.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::internal;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ValidatedObservation`
[INFO] [stdout]  --> src/internal/timeseries.rs:8:49
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::internal::observation::{Observation, ValidatedObservation};
[INFO] [stdout]   |                                                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Display`
[INFO] [stdout]  --> src/serde/deserializor.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::Display;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/serde/deserializor.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FixedOffset`
[INFO] [stdout]  --> src/serde/deserializor.rs:3:24
[INFO] [stdout]   |
[INFO] [stdout] 3 | use chrono::{DateTime, FixedOffset, NaiveDateTime, Utc};
[INFO] [stdout]   |                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `reqwest::header::InvalidHeaderValue`
[INFO] [stdout]  --> src/serde/deserializor.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use reqwest::header::InvalidHeaderValue;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `de::Error`
[INFO] [stdout]  --> src/serde/deserializor.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 | use serde::{de::Error, Deserialize, Deserializer};
[INFO] [stdout]   |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HttpError`
[INFO] [stdout]  --> src/serde/deserializor.rs:7:27
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::{data_mapping, HttpError};
[INFO] [stdout]   |                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `serde` should have an upper camel case name
[INFO] [stdout]   --> src/serde/deserializor.rs:14:1
[INFO] [stdout]    |
[INFO] [stdout] 14 | serde(#[from] serde_json::Error),
[INFO] [stdout]    | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Serde`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/sources/nve/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde::Serialize`
[INFO] [stdout]  --> src/sources/nve/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde::Serialize;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `internal`
[INFO] [stdout]  --> src/sources/nve/mod.rs:7:43
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::{handle_http_response_not_200, internal, Result};
[INFO] [stdout]   |                                           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]   --> src/sources/nve/observation.rs:44:17
[INFO] [stdout]    |
[INFO] [stdout] 44 |     use serde::{self};
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::sources::nve`
[INFO] [stdout]   --> src/sources/nve/observation.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |     use crate::sources::nve;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `convert_aktiv_to_bool`
[INFO] [stdout]  --> src/sources/nve/station.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     convert_aktiv_to_bool,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::BufRead`
[INFO] [stdout]  --> src/sources/smih/observation_data.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::io::BufRead;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio`
[INFO] [stdout]   --> src/sources/smih/observation_data.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |     use tokio;
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `NVE`
[INFO] [stdout]  --> src/sources/uk/mod.rs:6:35
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::data_mapping::Origin::{NVE, UKGOV};
[INFO] [stdout]   |                                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `formats::PreferOne`
[INFO] [stdout]  --> src/sources/uk/station.rs:5:60
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde_with:: {serde_as, OneOrMany, formats::PreferMany,formats::PreferOne};
[INFO] [stdout]   |                                                            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `convert_active_to_bool`
[INFO] [stdout]  --> src/sources/uk/station.rs:7:34
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::serde::deserializor::{convert_active_to_bool};
[INFO] [stdout]   |                                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DateTime`, `NaiveDateTime`, `Utc`
[INFO] [stdout]    --> src/sources/uk/station.rs:140:18
[INFO] [stdout]     |
[INFO] [stdout] 140 |     use chrono::{DateTime, NaiveDateTime, Utc};
[INFO] [stdout]     |                  ^^^^^^^^  ^^^^^^^^^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Deserialize`
[INFO] [stdout]    --> src/sources/uk/station.rs:141:23
[INFO] [stdout]     |
[INFO] [stdout] 141 |     use serde::{self, Deserialize};
[INFO] [stdout]     |                       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DateTime`, `Utc`
[INFO] [stdout]  --> src/sources/uk/observation.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use chrono::{DateTime, NaiveDate, NaiveDateTime, Utc};
[INFO] [stdout]   |              ^^^^^^^^                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_with`
[INFO] [stdout]  --> src/sources/uk/observation.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use serde_with;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]  --> src/sources/canada/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use itertools::Itertools;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `internal`
[INFO] [stdout]   --> src/sources/canada/station_list.rs:27:34
[INFO] [stdout]    |
[INFO] [stdout] 27 |     use crate::{_read_file, geo, internal};
[INFO] [stdout]    |                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]   --> src/sources/canada/station_list.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 29 |     use super::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]   --> src/sources/canada/stations.rs:48:17
[INFO] [stdout]    |
[INFO] [stdout] 48 |     use serde::{self};
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::data_mapping::ParameterDefinitions`
[INFO] [stdout]   --> src/sources/canada/stations.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 51 |     use crate::data_mapping::ParameterDefinitions;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nve`
[INFO] [stdout]   --> src/sources/canada/stations.rs:52:34
[INFO] [stdout]    |
[INFO] [stdout] 52 |     use crate::sources::{canada, nve};
[INFO] [stdout]    |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]   --> src/sources/canada/stations.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |     use super::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DateTime`, `FixedOffset`, `NaiveDate`, `Utc`
[INFO] [stdout]  --> src/sources/canada/observations.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use chrono::{DateTime, FixedOffset, NaiveDate, NaiveDateTime, Utc};
[INFO] [stdout]   |              ^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]   --> src/sources/canada/observations.rs:34:17
[INFO] [stdout]    |
[INFO] [stdout] 34 |     use serde::{self};
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `canada`, `nve`
[INFO] [stdout]   --> src/sources/canada/observations.rs:38:26
[INFO] [stdout]    |
[INFO] [stdout] 38 |     use crate::sources::{canada, nve};
[INFO] [stdout]    |                          ^^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/data_mapping.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_with::SerializeDisplay`
[INFO] [stdout]  --> src/data_mapping.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use serde_with::SerializeDisplay;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PUT_IN` should have an upper camel case name
[INFO] [stdout]    --> src/data_mapping.rs:137:5
[INFO] [stdout]     |
[INFO] [stdout] 137 |     PUT_IN,
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to upper camel case: `PutIn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `TAKE_OUT` should have an upper camel case name
[INFO] [stdout]    --> src/data_mapping.rs:138:5
[INFO] [stdout]     |
[INFO] [stdout] 138 |     TAKE_OUT,
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to upper camel case: `TakeOut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/geo/location.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::any::Any`
[INFO] [stdout]  --> src/geo/position.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::any::Any;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::geo::location::Location`
[INFO] [stdout]  --> src/geo/position.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::geo::location::Location;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `serde` should have an upper camel case name
[INFO] [stdout]    --> src/lib.rs:151:5
[INFO] [stdout]     |
[INFO] [stdout] 151 |     serde(#[from] serde_json::Error),
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Serde`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `request` should have an upper camel case name
[INFO] [stdout]    --> src/lib.rs:153:5
[INFO] [stdout]     |
[INFO] [stdout] 153 |     request(#[from] reqwest::Error),
[INFO] [stdout]     |     ^^^^^^^ help: convert the identifier to upper camel case: `Request`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/sources/smih/observation_data.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     let mut rdr = AsyncReaderBuilder::new()
[INFO] [stdout]    |         ----^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parameter`
[INFO] [stdout]   --> src/sources/canada/mod.rs:43:13
[INFO] [stdout]    |
[INFO] [stdout] 43 |         let parameter = ParameterDefinitions::to_canada_id(parameter)?;
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_parameter`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures::FutureExt`
[INFO] [stdout]  --> src/internal/station.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use futures::FutureExt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `internal_station`
[INFO] [stdout]    --> src/internal/station.rs:176:13
[INFO] [stdout]     |
[INFO] [stdout] 176 |         let internal_station = Station::from_nve(daum);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_internal_station`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `internal_station`
[INFO] [stdout]    --> src/internal/station.rs:184:13
[INFO] [stdout]     |
[INFO] [stdout] 184 |         let internal_station = Station::from_ukgov(item).unwrap();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_internal_station`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> src/sources/nve/observation.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |         let a=false;
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `internal_observation`
[INFO] [stdout]   --> src/sources/nve/observation.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |         let internal_observation = internal::timeseries::TimeSeries::from_nve(daum,).unwrap();
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_internal_observation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `river_name`
[INFO] [stdout]    --> src/sources/nve/station.rs:173:13
[INFO] [stdout]     |
[INFO] [stdout] 173 |         let river_name = &root.data.get(0).unwrap().river_name;
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_river_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rootDate`
[INFO] [stdout]    --> src/sources/nve/station.rs:174:13
[INFO] [stdout]     |
[INFO] [stdout] 174 |         let rootDate = root.query_time;
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rootDate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `river_name`
[INFO] [stdout]    --> src/sources/nve/station.rs:181:13
[INFO] [stdout]     |
[INFO] [stdout] 181 |         let river_name = &root.data.get(0).unwrap().river_name;
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_river_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rootDate`
[INFO] [stdout]    --> src/sources/nve/station.rs:182:13
[INFO] [stdout]     |
[INFO] [stdout] 182 |         let rootDate = root.query_time;
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rootDate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `start_date`
[INFO] [stdout]    --> src/sources/uk/station.rs:182:13
[INFO] [stdout]     |
[INFO] [stdout] 182 |         let start_date = NaiveDate::from_ymd_opt(2022, 10, 11).unwrap().and_hms_opt(00, 00, 01).unwrap().and_utc();
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_start_date`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `end_date`
[INFO] [stdout]    --> src/sources/uk/station.rs:183:13
[INFO] [stdout]     |
[INFO] [stdout] 183 |         let end_date = NaiveDate::from_ymd_opt(2022, 10, 11).unwrap().and_hms_opt(00, 00, 01).unwrap().and_utc();
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_end_date`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `inter`
[INFO] [stdout]    --> src/sources/uk/station.rs:184:13
[INFO] [stdout]     |
[INFO] [stdout] 184 |         let inter = TimeSeries::from_ukgov(&data, station_id, &parameter_id);
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_inter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `internal`
[INFO] [stdout]   --> src/sources/canada/station_list.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 38 |         let internal = geo::location::Location::location_from_canada_station_list(&root.message);
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_internal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `internal`
[INFO] [stdout]   --> src/sources/canada/stations.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |         let internal = internal::station::Station::from_canada(&root);
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_internal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `internal`
[INFO] [stdout]   --> src/sources/canada/observations.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |         let internal = internal::timeseries::TimeSeries::from_canada(&root, "asasa", &ParameterDefinitions::FLOW);
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_internal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/geo/position.rs:20:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |         let mut r: f64 = 0.0 + kilometers;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `canada_secrets`
[INFO] [stdout]   --> src/e2etest.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 |         let canada_secrets = ["-NqDv9JB1h5ON__8LwyK".to_string()].to_vec();//Not really secret
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_canada_secrets`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> src/e2etest.rs:15:13
[INFO] [stdout]    |
[INFO] [stdout] 15 |         let a = client.get_all_static_uk_data().await.unwrap();
[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]   --> src/e2etest.rs:16:13
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let b = client.get_all_static_nve_data().await.unwrap();
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `convert_aktiv_to_bool` is never used
[INFO] [stdout]   --> src/serde/deserializor.rs:52:10
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub   fn convert_aktiv_to_bool<'de, D>(deserializer: D) -> Result<bool, D::Error>
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_test_observation` is never used
[INFO] [stdout]   --> src/sources/nve/observation.rs:50:8
[INFO] [stdout]    |
[INFO] [stdout] 50 |     fn read_test_observation()->String{
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `deserialize_smih_station_observation` is never used
[INFO] [stdout]   --> src/sources/smih/observation_data.rs:16:10
[INFO] [stdout]    |
[INFO] [stdout] 16 | async fn deserialize_smih_station_observation<>(csv_text: &str) ->Result<Vec<HistoricObservation>, Box<dyn std::error::Error>>{
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: module `Tests` should have a snake case name
[INFO] [stdout]    --> src/internal/station.rs:164:5
[INFO] [stdout]     |
[INFO] [stdout] 164 | mod Tests {
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to snake case: `tests`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `convert_option_zulutime_string_to_UTC` should have a snake case name
[INFO] [stdout]   --> src/serde/deserializor.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub  fn convert_option_zulutime_string_to_UTC<'de, D>(deserializer: D) -> Result<Option<DateTime<Utc>>, D::Error>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `convert_option_zulutime_string_to_utc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `convert_ISO8601_to_naive_datetime` should have a snake case name
[INFO] [stdout]   --> src/serde/deserializor.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub  fn convert_ISO8601_to_naive_datetime<'de, D>(deserializer: D) -> Result<NaiveDateTime, D::Error>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `convert_iso8601_to_naive_datetime`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `stationId` should have a snake case name
[INFO] [stdout]   --> src/sources/nve/post_struct.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub stationId: &'p str,
[INFO] [stdout]    |         ^^^^^^^^^ help: convert the identifier to snake case: `station_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `resolutionTime` should have a snake case name
[INFO] [stdout]   --> src/sources/nve/post_struct.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub resolutionTime: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `resolution_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `referenceTime` should have a snake case name
[INFO] [stdout]   --> src/sources/nve/post_struct.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub referenceTime: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^ help: convert the identifier to snake case: `reference_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `referenceTime` should have a snake case name
[INFO] [stdout]   --> src/sources/nve/post_struct.rs:37:17
[INFO] [stdout]    |
[INFO] [stdout] 37 |             let referenceTime = format!("{lower_time}/{upper_time}");
[INFO] [stdout]    |                 ^^^^^^^^^^^^^ help: convert the identifier to snake case: `reference_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `riverName` should have a snake case name
[INFO] [stdout]   --> src/sources/nve/station.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     riverName: String,
[INFO] [stdout]    |     ^^^^^^^^^ help: convert the identifier to snake case: `river_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: module `Tests` should have a snake case name
[INFO] [stdout]    --> src/sources/nve/station.rs:162:5
[INFO] [stdout]     |
[INFO] [stdout] 162 | mod Tests {
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to snake case: `tests`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `rootDate` should have a snake case name
[INFO] [stdout]    --> src/sources/nve/station.rs:174:13
[INFO] [stdout]     |
[INFO] [stdout] 174 |         let rootDate = root.query_time;
[INFO] [stdout]     |             ^^^^^^^^ help: convert the identifier to snake case: `root_date`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `rootDate` should have a snake case name
[INFO] [stdout]    --> src/sources/nve/station.rs:182:13
[INFO] [stdout]     |
[INFO] [stdout] 182 |         let rootDate = root.query_time;
[INFO] [stdout]     |             ^^^^^^^^ help: convert the identifier to snake case: `root_date`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 91 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 19.73s
[INFO] running `Command { std: "docker" "inspect" "9cf0cc68ab69f8584f78651ee996ea8caeea5e15523c4975c8c63ff44d2ae891", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9cf0cc68ab69f8584f78651ee996ea8caeea5e15523c4975c8c63ff44d2ae891", kill_on_drop: false }`
[INFO] [stdout] 9cf0cc68ab69f8584f78651ee996ea8caeea5e15523c4975c8c63ff44d2ae891
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] d9ae944bbf3c5b86d5f2bb5df544eee404ec6d42e9f10839439be995d63d1666
[INFO] running `Command { std: "docker" "start" "-a" "d9ae944bbf3c5b86d5f2bb5df544eee404ec6d42e9f10839439be995d63d1666", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `Mutex`
[INFO] [stderr]  --> src/lib.rs:1:22
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::sync::{Arc, Mutex};
[INFO] [stderr]   |                      ^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `FixedOffset`
[INFO] [stderr]  --> src/lib.rs:2:24
[INFO] [stderr]   |
[INFO] [stderr] 2 | use chrono::{DateTime, FixedOffset, NaiveDate, Utc};
[INFO] [stderr]   |                        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Lazy`
[INFO] [stderr]  --> src/lib.rs:3:33
[INFO] [stderr]   |
[INFO] [stderr] 3 | use futures::future::{join_all, Lazy};
[INFO] [stderr]   |                                 ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `canada`, `nve`
[INFO] [stderr]  --> src/lib.rs:7:22
[INFO] [stderr]   |
[INFO] [stderr] 7 | use crate::sources::{canada, nve};
[INFO] [stderr]   |                      ^^^^^^  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::geo::location::Location`
[INFO] [stderr]  --> src/lib.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use crate::geo::location::Location;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::sources::canada::CanadaClient`
[INFO] [stderr]   --> src/lib.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 11 | use crate::sources::canada::CanadaClient;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `NaiveDateTime`
[INFO] [stderr]  --> src/internal/observation.rs:1:24
[INFO] [stderr]   |
[INFO] [stderr] 1 | use chrono::{DateTime, NaiveDateTime, Utc};
[INFO] [stderr]   |                        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `canada`, `nve`, `uk`
[INFO] [stderr]  --> src/internal/observation.rs:3:22
[INFO] [stderr]   |
[INFO] [stderr] 3 | use crate::sources::{uk, nve, canada};
[INFO] [stderr]   |                      ^^  ^^^  ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::ops::Deref`
[INFO] [stderr]  --> src/internal/station.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::ops::Deref;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::data_mapping::*`
[INFO] [stderr]  --> src/internal/station.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use crate::data_mapping::*;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Duration`
[INFO] [stderr]  --> src/internal/timeseries.rs:1:24
[INFO] [stderr]   |
[INFO] [stderr] 1 | use chrono::{DateTime, Duration, FixedOffset, Utc};
[INFO] [stderr]   |                        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `futures::future::join_all`
[INFO] [stderr]  --> src/internal/timeseries.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use futures::future::join_all;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `ParseError`
[INFO] [stderr]  --> src/internal/timeseries.rs:5:53
[INFO] [stderr]   |
[INFO] [stderr] 5 | use crate::Error::{DataSourceParameterMappingError, ParseError};
[INFO] [stderr]   |                                                     ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::internal`
[INFO] [stderr]  --> src/internal/timeseries.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use crate::internal;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `ValidatedObservation`
[INFO] [stderr]  --> src/internal/timeseries.rs:8:49
[INFO] [stderr]   |
[INFO] [stderr] 8 | use crate::internal::observation::{Observation, ValidatedObservation};
[INFO] [stderr]   |                                                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::fmt::Display`
[INFO] [stderr]  --> src/serde/deserializor.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::fmt::Display;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::str::FromStr`
[INFO] [stderr]  --> src/serde/deserializor.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::str::FromStr;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `FixedOffset`
[INFO] [stderr]  --> src/serde/deserializor.rs:3:24
[INFO] [stderr]   |
[INFO] [stderr] 3 | use chrono::{DateTime, FixedOffset, NaiveDateTime, Utc};
[INFO] [stderr]   |                        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `reqwest::header::InvalidHeaderValue`
[INFO] [stderr]  --> src/serde/deserializor.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use reqwest::header::InvalidHeaderValue;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `de::Error`
[INFO] [stderr]  --> src/serde/deserializor.rs:6:13
[INFO] [stderr]   |
[INFO] [stderr] 6 | use serde::{de::Error, Deserialize, Deserializer};
[INFO] [stderr]   |             ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `HttpError`
[INFO] [stderr]  --> src/serde/deserializor.rs:7:27
[INFO] [stderr]   |
[INFO] [stderr] 7 | use crate::{data_mapping, HttpError};
[INFO] [stderr]   |                           ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variant `serde` should have an upper camel case name
[INFO] [stderr]   --> src/serde/deserializor.rs:14:1
[INFO] [stderr]    |
[INFO] [stderr] 14 | serde(#[from] serde_json::Error),
[INFO] [stderr]    | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Serde`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::sync::Arc`
[INFO] [stderr]  --> src/sources/nve/mod.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::sync::Arc;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `serde::Serialize`
[INFO] [stderr]  --> src/sources/nve/mod.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use serde::Serialize;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `internal`
[INFO] [stderr]  --> src/sources/nve/mod.rs:7:43
[INFO] [stderr]   |
[INFO] [stderr] 7 | use crate::{handle_http_response_not_200, internal, Result};
[INFO] [stderr]   |                                           ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `convert_aktiv_to_bool`
[INFO] [stderr]  --> src/sources/nve/station.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 |     convert_aktiv_to_bool,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::io::BufRead`
[INFO] [stderr]  --> src/sources/smih/observation_data.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::io::BufRead;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `NVE`
[INFO] [stderr]  --> src/sources/uk/mod.rs:6:35
[INFO] [stderr]   |
[INFO] [stderr] 6 | use crate::data_mapping::Origin::{NVE, UKGOV};
[INFO] [stderr]   |                                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `chrono::NaiveDate`
[INFO] [stderr]  --> src/sources/uk/station.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use chrono::NaiveDate;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `formats::PreferOne`
[INFO] [stderr]  --> src/sources/uk/station.rs:5:60
[INFO] [stderr]   |
[INFO] [stderr] 5 | use serde_with:: {serde_as, OneOrMany, formats::PreferMany,formats::PreferOne};
[INFO] [stderr]   |                                                            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::data_mapping::ParameterDefinitions`
[INFO] [stderr]  --> src/sources/uk/station.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use crate::data_mapping::ParameterDefinitions;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `convert_active_to_bool`
[INFO] [stderr]  --> src/sources/uk/station.rs:7:34
[INFO] [stderr]   |
[INFO] [stderr] 7 | use crate::serde::deserializor::{convert_active_to_bool};
[INFO] [stderr]   |                                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `observation`, `station`
[INFO] [stderr]  --> src/sources/uk/station.rs:8:26
[INFO] [stderr]   |
[INFO] [stderr] 8 | use crate::sources::uk::{observation, station};
[INFO] [stderr]   |                          ^^^^^^^^^^^  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `DateTime`, `Utc`
[INFO] [stderr]  --> src/sources/uk/observation.rs:1:14
[INFO] [stderr]   |
[INFO] [stderr] 1 | use chrono::{DateTime, NaiveDate, NaiveDateTime, Utc};
[INFO] [stderr]   |              ^^^^^^^^                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `serde_with`
[INFO] [stderr]  --> src/sources/uk/observation.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use serde_with;
[INFO] [stderr]   |     ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `itertools::Itertools`
[INFO] [stderr]  --> src/sources/canada/mod.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use itertools::Itertools;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `DateTime`, `FixedOffset`, `NaiveDate`, `Utc`
[INFO] [stderr]  --> src/sources/canada/observations.rs:1:14
[INFO] [stderr]   |
[INFO] [stderr] 1 | use chrono::{DateTime, FixedOffset, NaiveDate, NaiveDateTime, Utc};
[INFO] [stderr]   |              ^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::str::FromStr`
[INFO] [stderr]  --> src/data_mapping.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::str::FromStr;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `serde_with::SerializeDisplay`
[INFO] [stderr]  --> src/data_mapping.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use serde_with::SerializeDisplay;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variant `PUT_IN` should have an upper camel case name
[INFO] [stderr]    --> src/data_mapping.rs:137:5
[INFO] [stderr]     |
[INFO] [stderr] 137 |     PUT_IN,
[INFO] [stderr]     |     ^^^^^^ help: convert the identifier to upper camel case: `PutIn`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `TAKE_OUT` should have an upper camel case name
[INFO] [stderr]    --> src/data_mapping.rs:138:5
[INFO] [stderr]     |
[INFO] [stderr] 138 |     TAKE_OUT,
[INFO] [stderr]     |     ^^^^^^^^ help: convert the identifier to upper camel case: `TakeOut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::str::FromStr`
[INFO] [stderr]  --> src/geo/location.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::str::FromStr;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::any::Any`
[INFO] [stderr]  --> src/geo/position.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::any::Any;
[INFO] [stderr]   |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::geo::location::Location`
[INFO] [stderr]  --> src/geo/position.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use crate::geo::location::Location;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variant `serde` should have an upper camel case name
[INFO] [stderr]    --> src/lib.rs:151:5
[INFO] [stderr]     |
[INFO] [stderr] 151 |     serde(#[from] serde_json::Error),
[INFO] [stderr]     |     ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Serde`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `request` should have an upper camel case name
[INFO] [stderr]    --> src/lib.rs:153:5
[INFO] [stderr]     |
[INFO] [stderr] 153 |     request(#[from] reqwest::Error),
[INFO] [stderr]     |     ^^^^^^^ help: convert the identifier to upper camel case: `Request`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/sources/smih/observation_data.rs:19:9
[INFO] [stderr]    |
[INFO] [stderr] 19 |     let mut rdr = AsyncReaderBuilder::new()
[INFO] [stderr]    |         ----^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `parameter`
[INFO] [stderr]   --> src/sources/canada/mod.rs:43:13
[INFO] [stderr]    |
[INFO] [stderr] 43 |         let parameter = ParameterDefinitions::to_canada_id(parameter)?;
[INFO] [stderr]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_parameter`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `futures::FutureExt`
[INFO] [stderr]  --> src/internal/station.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use futures::FutureExt;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/geo/position.rs:20:13
[INFO] [stderr]    |
[INFO] [stderr] 20 |         let mut r: f64 = 0.0 + kilometers;
[INFO] [stderr]    |             ----^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: function `convert_aktiv_to_bool` is never used
[INFO] [stderr]   --> src/serde/deserializor.rs:52:10
[INFO] [stderr]    |
[INFO] [stderr] 52 | pub   fn convert_aktiv_to_bool<'de, D>(deserializer: D) -> Result<bool, D::Error>
[INFO] [stderr]    |          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `deserialize_smih_station_observation` is never used
[INFO] [stderr]   --> src/sources/smih/observation_data.rs:16:10
[INFO] [stderr]    |
[INFO] [stderr] 16 | async fn deserialize_smih_station_observation<>(csv_text: &str) ->Result<Vec<HistoricObservation>, Box<dyn std::error::Error>>{
[INFO] [stderr]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `convert_option_zulutime_string_to_UTC` should have a snake case name
[INFO] [stderr]   --> src/serde/deserializor.rs:26:9
[INFO] [stderr]    |
[INFO] [stderr] 26 | pub  fn convert_option_zulutime_string_to_UTC<'de, D>(deserializer: D) -> Result<Option<DateTime<Utc>>, D::Error>
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `convert_option_zulutime_string_to_utc`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `convert_ISO8601_to_naive_datetime` should have a snake case name
[INFO] [stderr]   --> src/serde/deserializor.rs:43:9
[INFO] [stderr]    |
[INFO] [stderr] 43 | pub  fn convert_ISO8601_to_naive_datetime<'de, D>(deserializer: D) -> Result<NaiveDateTime, D::Error>
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `convert_iso8601_to_naive_datetime`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `stationId` should have a snake case name
[INFO] [stderr]   --> src/sources/nve/post_struct.rs:10:9
[INFO] [stderr]    |
[INFO] [stderr] 10 |     pub stationId: &'p str,
[INFO] [stderr]    |         ^^^^^^^^^ help: convert the identifier to snake case: `station_id`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `resolutionTime` should have a snake case name
[INFO] [stderr]   --> src/sources/nve/post_struct.rs:12:9
[INFO] [stderr]    |
[INFO] [stderr] 12 |     pub resolutionTime: String,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `resolution_time`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `referenceTime` should have a snake case name
[INFO] [stderr]   --> src/sources/nve/post_struct.rs:13:9
[INFO] [stderr]    |
[INFO] [stderr] 13 |     pub referenceTime: String,
[INFO] [stderr]    |         ^^^^^^^^^^^^^ help: convert the identifier to snake case: `reference_time`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `referenceTime` should have a snake case name
[INFO] [stderr]   --> src/sources/nve/post_struct.rs:37:17
[INFO] [stderr]    |
[INFO] [stderr] 37 |             let referenceTime = format!("{lower_time}/{upper_time}");
[INFO] [stderr]    |                 ^^^^^^^^^^^^^ help: convert the identifier to snake case: `reference_time`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `riverName` should have a snake case name
[INFO] [stderr]   --> src/sources/nve/station.rs:15:5
[INFO] [stderr]    |
[INFO] [stderr] 15 |     riverName: String,
[INFO] [stderr]    |     ^^^^^^^^^ help: convert the identifier to snake case: `river_name`
[INFO] [stderr] 
[INFO] [stderr] warning: `wwn-data-sources` (lib) generated 59 warnings (run `cargo fix --lib -p wwn-data-sources` to apply 44 suggestions)
[INFO] [stderr] warning: unused import: `canada`
[INFO] [stderr]  --> src/lib.rs:7:22
[INFO] [stderr]   |
[INFO] [stderr] 7 | use crate::sources::{canada, nve};
[INFO] [stderr]   |                      ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `self`
[INFO] [stderr]   --> src/sources/nve/observation.rs:44:17
[INFO] [stderr]    |
[INFO] [stderr] 44 |     use serde::{self};
[INFO] [stderr]    |                 ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::sources::nve`
[INFO] [stderr]   --> src/sources/nve/observation.rs:47:9
[INFO] [stderr]    |
[INFO] [stderr] 47 |     use crate::sources::nve;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tokio`
[INFO] [stderr]   --> src/sources/smih/observation_data.rs:34:9
[INFO] [stderr]    |
[INFO] [stderr] 34 |     use tokio;
[INFO] [stderr]    |         ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `DateTime`, `NaiveDateTime`, `Utc`
[INFO] [stderr]    --> src/sources/uk/station.rs:140:18
[INFO] [stderr]     |
[INFO] [stderr] 140 |     use chrono::{DateTime, NaiveDateTime, Utc};
[INFO] [stderr]     |                  ^^^^^^^^  ^^^^^^^^^^^^^  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Deserialize`
[INFO] [stderr]    --> src/sources/uk/station.rs:141:23
[INFO] [stderr]     |
[INFO] [stderr] 141 |     use serde::{self, Deserialize};
[INFO] [stderr]     |                       ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `internal`
[INFO] [stderr]   --> src/sources/canada/station_list.rs:27:34
[INFO] [stderr]    |
[INFO] [stderr] 27 |     use crate::{_read_file, geo, internal};
[INFO] [stderr]    |                                  ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::*`
[INFO] [stderr]   --> src/sources/canada/station_list.rs:29:9
[INFO] [stderr]    |
[INFO] [stderr] 29 |     use super::*;
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `self`
[INFO] [stderr]   --> src/sources/canada/stations.rs:48:17
[INFO] [stderr]    |
[INFO] [stderr] 48 |     use serde::{self};
[INFO] [stderr]    |                 ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::data_mapping::ParameterDefinitions`
[INFO] [stderr]   --> src/sources/canada/stations.rs:51:9
[INFO] [stderr]    |
[INFO] [stderr] 51 |     use crate::data_mapping::ParameterDefinitions;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `nve`
[INFO] [stderr]   --> src/sources/canada/stations.rs:52:34
[INFO] [stderr]    |
[INFO] [stderr] 52 |     use crate::sources::{canada, nve};
[INFO] [stderr]    |                                  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::*`
[INFO] [stderr]   --> src/sources/canada/stations.rs:53:9
[INFO] [stderr]    |
[INFO] [stderr] 53 |     use super::*;
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `self`
[INFO] [stderr]   --> src/sources/canada/observations.rs:34:17
[INFO] [stderr]    |
[INFO] [stderr] 34 |     use serde::{self};
[INFO] [stderr]    |                 ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `canada`, `nve`
[INFO] [stderr]   --> src/sources/canada/observations.rs:38:26
[INFO] [stderr]    |
[INFO] [stderr] 38 |     use crate::sources::{canada, nve};
[INFO] [stderr]    |                          ^^^^^^  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `internal_station`
[INFO] [stderr]    --> src/internal/station.rs:176:13
[INFO] [stderr]     |
[INFO] [stderr] 176 |         let internal_station = Station::from_nve(daum);
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_internal_station`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `internal_station`
[INFO] [stderr]    --> src/internal/station.rs:184:13
[INFO] [stderr]     |
[INFO] [stderr] 184 |         let internal_station = Station::from_ukgov(item).unwrap();
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_internal_station`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `a`
[INFO] [stderr]   --> src/sources/nve/observation.rs:58:13
[INFO] [stderr]    |
[INFO] [stderr] 58 |         let a=false;
[INFO] [stderr]    |             ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `internal_observation`
[INFO] [stderr]   --> src/sources/nve/observation.rs:63:13
[INFO] [stderr]    |
[INFO] [stderr] 63 |         let internal_observation = internal::timeseries::TimeSeries::from_nve(daum,).unwrap();
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_internal_observation`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `river_name`
[INFO] [stderr]    --> src/sources/nve/station.rs:173:13
[INFO] [stderr]     |
[INFO] [stderr] 173 |         let river_name = &root.data.get(0).unwrap().river_name;
[INFO] [stderr]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_river_name`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `rootDate`
[INFO] [stderr]    --> src/sources/nve/station.rs:174:13
[INFO] [stderr]     |
[INFO] [stderr] 174 |         let rootDate = root.query_time;
[INFO] [stderr]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rootDate`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `river_name`
[INFO] [stderr]    --> src/sources/nve/station.rs:181:13
[INFO] [stderr]     |
[INFO] [stderr] 181 |         let river_name = &root.data.get(0).unwrap().river_name;
[INFO] [stderr]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_river_name`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `rootDate`
[INFO] [stderr]    --> src/sources/nve/station.rs:182:13
[INFO] [stderr]     |
[INFO] [stderr] 182 |         let rootDate = root.query_time;
[INFO] [stderr]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rootDate`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `start_date`
[INFO] [stderr]    --> src/sources/uk/station.rs:182:13
[INFO] [stderr]     |
[INFO] [stderr] 182 |         let start_date = NaiveDate::from_ymd_opt(2022, 10, 11).unwrap().and_hms_opt(00, 00, 01).unwrap().and_utc();
[INFO] [stderr]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_start_date`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `end_date`
[INFO] [stderr]    --> src/sources/uk/station.rs:183:13
[INFO] [stderr]     |
[INFO] [stderr] 183 |         let end_date = NaiveDate::from_ymd_opt(2022, 10, 11).unwrap().and_hms_opt(00, 00, 01).unwrap().and_utc();
[INFO] [stderr]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_end_date`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `inter`
[INFO] [stderr]    --> src/sources/uk/station.rs:184:13
[INFO] [stderr]     |
[INFO] [stderr] 184 |         let inter = TimeSeries::from_ukgov(&data, station_id, &parameter_id);
[INFO] [stderr]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_inter`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `internal`
[INFO] [stderr]   --> src/sources/canada/station_list.rs:38:13
[INFO] [stderr]    |
[INFO] [stderr] 38 |         let internal = geo::location::Location::location_from_canada_station_list(&root.message);
[INFO] [stderr]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_internal`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `internal`
[INFO] [stderr]   --> src/sources/canada/stations.rs:61:13
[INFO] [stderr]    |
[INFO] [stderr] 61 |         let internal = internal::station::Station::from_canada(&root);
[INFO] [stderr]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_internal`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `internal`
[INFO] [stderr]   --> src/sources/canada/observations.rs:47:13
[INFO] [stderr]    |
[INFO] [stderr] 47 |         let internal = internal::timeseries::TimeSeries::from_canada(&root, "asasa", &ParameterDefinitions::FLOW);
[INFO] [stderr]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_internal`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `canada_secrets`
[INFO] [stderr]   --> src/e2etest.rs:12:13
[INFO] [stderr]    |
[INFO] [stderr] 12 |         let canada_secrets = ["-NqDv9JB1h5ON__8LwyK".to_string()].to_vec();//Not really secret
[INFO] [stderr]    |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_canada_secrets`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `a`
[INFO] [stderr]   --> src/e2etest.rs:15:13
[INFO] [stderr]    |
[INFO] [stderr] 15 |         let a = client.get_all_static_uk_data().await.unwrap();
[INFO] [stderr]    |             ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `b`
[INFO] [stderr]   --> src/e2etest.rs:16:13
[INFO] [stderr]    |
[INFO] [stderr] 16 |         let b = client.get_all_static_nve_data().await.unwrap();
[INFO] [stderr]    |             ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stderr] 
[INFO] [stderr] warning: function `read_test_observation` is never used
[INFO] [stderr]   --> src/sources/nve/observation.rs:50:8
[INFO] [stderr]    |
[INFO] [stderr] 50 |     fn read_test_observation()->String{
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: module `Tests` should have a snake case name
[INFO] [stderr]    --> src/internal/station.rs:164:5
[INFO] [stderr]     |
[INFO] [stderr] 164 | mod Tests {
[INFO] [stderr]     |     ^^^^^ help: convert the identifier to snake case: `tests`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(non_snake_case)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `convert_option_zulutime_string_to_UTC` should have a snake case name
[INFO] [stderr]   --> src/serde/deserializor.rs:26:9
[INFO] [stderr]    |
[INFO] [stderr] 26 | pub  fn convert_option_zulutime_string_to_UTC<'de, D>(deserializer: D) -> Result<Option<DateTime<Utc>>, D::Error>
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `convert_option_zulutime_string_to_utc`
[INFO] [stderr] 
[INFO] [stderr] warning: module `Tests` should have a snake case name
[INFO] [stderr]    --> src/sources/nve/station.rs:162:5
[INFO] [stderr]     |
[INFO] [stderr] 162 | mod Tests {
[INFO] [stderr]     |     ^^^^^ help: convert the identifier to snake case: `tests`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `rootDate` should have a snake case name
[INFO] [stderr]    --> src/sources/nve/station.rs:174:13
[INFO] [stderr]     |
[INFO] [stderr] 174 |         let rootDate = root.query_time;
[INFO] [stderr]     |             ^^^^^^^^ help: convert the identifier to snake case: `root_date`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `rootDate` should have a snake case name
[INFO] [stderr]    --> src/sources/nve/station.rs:182:13
[INFO] [stderr]     |
[INFO] [stderr] 182 |         let rootDate = root.query_time;
[INFO] [stderr]     |             ^^^^^^^^ help: convert the identifier to snake case: `root_date`
[INFO] [stderr] 
[INFO] [stderr] warning: `wwn-data-sources` (lib test) generated 91 warnings (54 duplicates) (run `cargo fix --lib -p wwn-data-sources --tests` to apply 31 suggestions)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.12s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/wwn_data_sources-414d6f0bbebcb4ac)
[INFO] [stdout] 
[INFO] [stdout] running 14 tests
[INFO] [stdout] test e2etest::test::test_end_to_end_observation_shared_simple_client ... ignored
[INFO] [stdout] test sources::nve::observation::tests::test_observation_deserializsation ... ok
[INFO] [stdout] test sources::canada::stations::test::test_station_deserializsation ... ok
[INFO] [stdout] test internal::station::Tests::ukgov_build_internal_station ... ok
[INFO] [stdout] test internal::station::Tests::nve_build_internal_station ... ok
[INFO] [stdout] test sources::nve::station::Tests::test_deserialize_single_stations ... ok
[INFO] [stdout] test sources::uk::station::tests::test_deserialize_station_observation ... ok
[INFO] [stdout] test sources::uk::station::tests::test_deserialize_station_observation_to_internal ... ok
[INFO] [stdout] test sources::canada::observations::test::test_observation_deserializsation ... ok
[INFO] [stdout] test sources::canada::station_list::tests::deserialize_stationlist ... FAILED
[INFO] [stdout] test sources::uk::station::tests::test_deserialize_all_station_information ... ok
[INFO] [stdout] test sources::nve::station::Tests::test_deserialize_all_stations ... ok
[INFO] [stdout] test sources::nve::station::Tests::test_deserialize_all_stations_to_internal ... ok
[INFO] [stdout] test sources::uk::station::tests::test_deserialize_all_stations_to_internal ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- sources::canada::station_list::tests::deserialize_stationlist stdout ----
[INFO] [stdout] thread 'sources::canada::station_list::tests::deserialize_stationlist' panicked at src/sources/canada/station_list.rs:35:78:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: Error("trailing characters", line: 23810, column: 2)
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x55ff09835386 - std::backtrace_rs::backtrace::libunwind::trace::hbee8a7973eeb6c93
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/../../backtrace/src/backtrace/libunwind.rs:104:5
[INFO] [stdout]    1:     0x55ff09835386 - std::backtrace_rs::backtrace::trace_unsynchronized::hc8ac75eea3aa6899
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x55ff09835386 - std::sys_common::backtrace::_print_fmt::hc7f3e3b5298b1083
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:68:5
[INFO] [stdout]    3:     0x55ff09835386 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hbb235daedd7c6190
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:44:22
[INFO] [stdout]    4:     0x55ff09862d30 - core::fmt::rt::Argument::fmt::h76c38a80d925a410
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/fmt/rt.rs:142:9
[INFO] [stdout]    5:     0x55ff09862d30 - core::fmt::write::h3ed6aeaa977c8e45
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/fmt/mod.rs:1120:17
[INFO] [stdout]    6:     0x55ff098321bf - std::io::Write::write_fmt::h1299aa7741865f2b
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/io/mod.rs:1810:15
[INFO] [stdout]    7:     0x55ff09835164 - std::sys_common::backtrace::_print::h5d645a07e0fcfdbb
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:47:5
[INFO] [stdout]    8:     0x55ff09835164 - std::sys_common::backtrace::print::h85035a511aafe7a8
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:34:9
[INFO] [stdout]    9:     0x55ff09836ed7 - std::panicking::default_hook::{{closure}}::hcce8cea212785a25
[INFO] [stdout]   10:     0x55ff09836bbd - std::panicking::default_hook::hf5fcb0f213fe709a
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:289:9
[INFO] [stdout]   11:     0x55ff093a1657 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h60265c2dfa87ee34
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/alloc/src/boxed.rs:2029:9
[INFO] [stdout]   12:     0x55ff093a1657 - test::test_main::{{closure}}::h77865bd3127078c6
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:138:21
[INFO] [stdout]   13:     0x55ff098374f6 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hbc5ccf4eb663e1e5
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/alloc/src/boxed.rs:2029:9
[INFO] [stdout]   14:     0x55ff098374f6 - std::panicking::rust_panic_with_hook::h095fccf1dc9379ee
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:783:13
[INFO] [stdout]   15:     0x55ff09837242 - std::panicking::begin_panic_handler::{{closure}}::h032ba12139b353db
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:657:13
[INFO] [stdout]   16:     0x55ff09835886 - std::sys_common::backtrace::__rust_end_short_backtrace::h9259bc2ff8fd0f76
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:171:18
[INFO] [stdout]   17:     0x55ff09836fa0 - rust_begin_unwind
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:645:5
[INFO] [stdout]   18:     0x55ff0922d5e5 - core::panicking::panic_fmt::h784f20a50eaab275
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/panicking.rs:72:14
[INFO] [stdout]   19:     0x55ff0922dc23 - core::result::unwrap_failed::h03d8a5018196e1cd
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/result.rs:1649:5
[INFO] [stdout]   20:     0x55ff093375d6 - core::result::Result<T,E>::unwrap::h304fbdea58ea1626
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/result.rs:1073:23
[INFO] [stdout]   21:     0x55ff0932af6d - wwn_data_sources::sources::canada::station_list::tests::deserialize_stationlist::{{closure}}::h514507b729a23cf8
[INFO] [stdout]                                at /opt/rustwide/workdir/src/sources/canada/station_list.rs:35:20
[INFO] [stdout]   22:     0x55ff09338528 - <core::pin::Pin<P> as core::future::future::Future>::poll::hf3aef38c2d71d5f7
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/future/future.rs:124:9
[INFO] [stdout]   23:     0x55ff093384cb - <core::pin::Pin<P> as core::future::future::Future>::poll::h43a80606956f6b02
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/future/future.rs:124:9
[INFO] [stdout]   24:     0x55ff09311564 - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::{{closure}}::{{closure}}::h68d8e8a180c1275b
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.36.0/src/runtime/scheduler/current_thread/mod.rs:659:57
[INFO] [stdout]   25:     0x55ff0931149a - tokio::runtime::coop::with_budget::hf9a9638e955693a8
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.36.0/src/runtime/coop.rs:107:5
[INFO] [stdout]   26:     0x55ff0931149a - tokio::runtime::coop::budget::h9d72ae85f41dc90c
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.36.0/src/runtime/coop.rs:73:5
[INFO] [stdout]   27:     0x55ff0931149a - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::{{closure}}::h9452b92ddd1cbf76
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.36.0/src/runtime/scheduler/current_thread/mod.rs:659:25
[INFO] [stdout]   28:     0x55ff0931011c - tokio::runtime::scheduler::current_thread::Context::enter::ha713dfd6b638244e
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.36.0/src/runtime/scheduler/current_thread/mod.rs:404:19
[INFO] [stdout]   29:     0x55ff09310c8e - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::hb8543b586219b59a
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.36.0/src/runtime/scheduler/current_thread/mod.rs:658:36
[INFO] [stdout]   30:     0x55ff0931099b - tokio::runtime::scheduler::current_thread::CoreGuard::enter::{{closure}}::he3d7e1bec133dfd0
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.36.0/src/runtime/scheduler/current_thread/mod.rs:737:68
[INFO] [stdout]   31:     0x55ff093422cb - tokio::runtime::context::scoped::Scoped<T>::set::hebbad590382e3350
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.36.0/src/runtime/context/scoped.rs:40:9
[INFO] [stdout]   32:     0x55ff0934e749 - tokio::runtime::context::set_scheduler::{{closure}}::h66af3156cd6c46de
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.36.0/src/runtime/context.rs:176:26
[INFO] [stdout]   33:     0x55ff09362536 - std::thread::local::LocalKey<T>::try_with::h6162dbc31ac0e0f9
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/thread/local.rs:270:16
[INFO] [stdout]   34:     0x55ff0936207a - std::thread::local::LocalKey<T>::with::h7c8692fb473ffa7b
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/thread/local.rs:246:9
[INFO] [stdout]   35:     0x55ff0934e6fd - tokio::runtime::context::set_scheduler::h630450f438999868
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.36.0/src/runtime/context.rs:176:9
[INFO] [stdout]   36:     0x55ff09310730 - tokio::runtime::scheduler::current_thread::CoreGuard::enter::hc9fc7ede094ddf5f
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.36.0/src/runtime/scheduler/current_thread/mod.rs:737:27
[INFO] [stdout]   37:     0x55ff093109cd - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::h73cf24d40ba417ab
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.36.0/src/runtime/scheduler/current_thread/mod.rs:646:19
[INFO] [stdout]   38:     0x55ff0930f8fd - tokio::runtime::scheduler::current_thread::CurrentThread::block_on::{{closure}}::h1157f65e7514df98
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.36.0/src/runtime/scheduler/current_thread/mod.rs:175:28
[INFO] [stdout]   39:     0x55ff0934265a - tokio::runtime::context::runtime::enter_runtime::hb7e08aa9cf2b5dcc
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.36.0/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   40:     0x55ff0930f80e - tokio::runtime::scheduler::current_thread::CurrentThread::block_on::h44b9aeea8aa58d6c
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.36.0/src/runtime/scheduler/current_thread/mod.rs:167:9
[INFO] [stdout]   41:     0x55ff092fcaad - tokio::runtime::runtime::Runtime::block_on::haf085151550649e2
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.36.0/src/runtime/runtime.rs:348:47
[INFO] [stdout]   42:     0x55ff0932ac5c - wwn_data_sources::sources::canada::station_list::tests::deserialize_stationlist::h4d73e50c96fe05c5
[INFO] [stdout]                                at /opt/rustwide/workdir/src/sources/canada/station_list.rs:38:9
[INFO] [stdout]   43:     0x55ff0932aae7 - wwn_data_sources::sources::canada::station_list::tests::deserialize_stationlist::{{closure}}::h0c5a76b1a6f5176b
[INFO] [stdout]                                at /opt/rustwide/workdir/src/sources/canada/station_list.rs:32:43
[INFO] [stdout]   44:     0x55ff09350db6 - core::ops::function::FnOnce::call_once::hf448c402112a00e7
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x55ff093a6f2f - core::ops::function::FnOnce::call_once::h8dc6907944022cf6
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   46:     0x55ff093a6f2f - test::__rust_begin_short_backtrace::haae1a87433f1efb3
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:627:18
[INFO] [stdout]   47:     0x55ff093a5cb1 - test::run_test_in_process::{{closure}}::h8c7decfa7c14e152
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:650:60
[INFO] [stdout]   48:     0x55ff093a5cb1 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h19e6ff056d9d21e9
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   49:     0x55ff093a5cb1 - std::panicking::try::do_call::h89c848fcaa37c035
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:552:40
[INFO] [stdout]   50:     0x55ff093a5cb1 - std::panicking::try::h57ab3dc74e2839b8
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:516:19
[INFO] [stdout]   51:     0x55ff093a5cb1 - std::panic::catch_unwind::hfb6a1b1abc120fb9
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panic.rs:142:14
[INFO] [stdout]   52:     0x55ff093a5cb1 - test::run_test_in_process::h5ae2f9875edd562d
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:650:27
[INFO] [stdout]   53:     0x55ff093a5cb1 - test::run_test::{{closure}}::h35d7300d8928a067
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:573:43
[INFO] [stdout]   54:     0x55ff0936cfe6 - test::run_test::{{closure}}::h7525ced405d23d1b
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:601:41
[INFO] [stdout]   55:     0x55ff0936cfe6 - std::sys_common::backtrace::__rust_begin_short_backtrace::h4e7db78ce05afad8
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:155:18
[INFO] [stdout]   56:     0x55ff09372047 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hcfbcb64f1a1b3482
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/thread/mod.rs:529:17
[INFO] [stdout]   57:     0x55ff09372047 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h9d89c5c4108bd689
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   58:     0x55ff09372047 - std::panicking::try::do_call::h8a4869bc94ec50c9
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:552:40
[INFO] [stdout]   59:     0x55ff09372047 - std::panicking::try::h9a576f20ff81ac30
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:516:19
[INFO] [stdout]   60:     0x55ff09372047 - std::panic::catch_unwind::hbcb4e3f860ef9830
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panic.rs:142:14
[INFO] [stdout]   61:     0x55ff09372047 - std::thread::Builder::spawn_unchecked_::{{closure}}::h93c79a6be1505948
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/thread/mod.rs:528:30
[INFO] [stdout]   62:     0x55ff09372047 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h426d96740c81bdaf
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   63:     0x55ff0983c2b5 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h12de4fc57affb195
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/alloc/src/boxed.rs:2015:9
[INFO] [stdout]   64:     0x55ff0983c2b5 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h3c619f45059d5cf1
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/alloc/src/boxed.rs:2015:9
[INFO] [stdout]   65:     0x55ff0983c2b5 - std::sys::unix::thread::Thread::new::thread_start::hbac657605e4b7389
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys/unix/thread.rs:108:17
[INFO] [stdout]   66:     0x7ff4e1980ac3 - <unknown>
[INFO] [stdout]   67:     0x7ff4e1a11bf4 - __clone
[INFO] [stdout]   68:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     sources::canada::station_list::tests::deserialize_stationlist
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 12 passed; 1 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.30s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] running `Command { std: "docker" "inspect" "d9ae944bbf3c5b86d5f2bb5df544eee404ec6d42e9f10839439be995d63d1666", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d9ae944bbf3c5b86d5f2bb5df544eee404ec6d42e9f10839439be995d63d1666", kill_on_drop: false }`
[INFO] [stdout] d9ae944bbf3c5b86d5f2bb5df544eee404ec6d42e9f10839439be995d63d1666
