[INFO] cloning repository https://github.com/morintd/newsletter-rust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/morintd/newsletter-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmorintd%2Fnewsletter-rust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmorintd%2Fnewsletter-rust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 1a81f257db4483e0b110835ff186d395b6940059
[INFO] testing morintd/newsletter-rust against try#9f93af291970322f4f1c6315ccde4d7078201159 for pr-146098-6
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmorintd%2Fnewsletter-rust" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-0-tc2/source/.cargo/config.toml
[INFO] started tweaking git repo https://github.com/morintd/newsletter-rust
[INFO] finished tweaking git repo https://github.com/morintd/newsletter-rust
[INFO] tweaked toml for git repo https://github.com/morintd/newsletter-rust written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/morintd/newsletter-rust on toolchain 9f93af291970322f4f1c6315ccde4d7078201159
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9f93af291970322f4f1c6315ccde4d7078201159" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/morintd/newsletter-rust 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" "+9f93af291970322f4f1c6315ccde4d7078201159" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+9f93af291970322f4f1c6315ccde4d7078201159" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a17b06363ea336dbbbe084e7c35dfc74b6ba2735a07ce000820c5def53aeab6e
[INFO] running `Command { std: "docker" "start" "-a" "a17b06363ea336dbbbe084e7c35dfc74b6ba2735a07ce000820c5def53aeab6e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a17b06363ea336dbbbe084e7c35dfc74b6ba2735a07ce000820c5def53aeab6e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a17b06363ea336dbbbe084e7c35dfc74b6ba2735a07ce000820c5def53aeab6e", kill_on_drop: false }`
[INFO] [stdout] a17b06363ea336dbbbe084e7c35dfc74b6ba2735a07ce000820c5def53aeab6e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+9f93af291970322f4f1c6315ccde4d7078201159" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3d84e41dc5d3ac10d02cb690fb5c891a932846232d10db5768d73e571b44b8cf
[INFO] running `Command { std: "docker" "start" "-a" "3d84e41dc5d3ac10d02cb690fb5c891a932846232d10db5768d73e571b44b8cf", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.176
[INFO] [stderr]    Compiling proc-macro2 v1.0.101
[INFO] [stderr]    Compiling find-msvc-tools v0.1.3
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling getrandom v0.3.3
[INFO] [stderr]    Compiling deranged v0.5.4
[INFO] [stderr]    Compiling time-macros v0.2.24
[INFO] [stderr]    Compiling libloading v0.8.8
[INFO] [stderr]    Compiling dunce v1.0.5
[INFO] [stderr]    Compiling futures-task v0.3.31
[INFO] [stderr]    Compiling fs_extra v1.3.0
[INFO] [stderr]    Compiling unicode-normalization v0.1.24
[INFO] [stderr]    Compiling pq-sys v0.6.3
[INFO] [stderr]    Compiling diesel_derives v2.3.3
[INFO] [stderr]    Compiling unicode-properties v0.1.3
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling unicode-bidi v0.3.18
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling tracing v0.1.41
[INFO] [stderr]    Compiling sync_wrapper v1.0.2
[INFO] [stderr]    Compiling siphasher v1.0.1
[INFO] [stderr]    Compiling fallible-iterator v0.2.0
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling aws-lc-rs v1.14.1
[INFO] [stderr]    Compiling regex-syntax v0.8.6
[INFO] [stderr]    Compiling downcast-rs v2.0.2
[INFO] [stderr]    Compiling serde_path_to_error v0.1.20
[INFO] [stderr]    Compiling phf_shared v0.13.1
[INFO] [stderr]    Compiling axum-core v0.5.5
[INFO] [stderr]    Compiling base64ct v1.8.0
[INFO] [stderr]    Compiling untrusted v0.7.1
[INFO] [stderr]    Compiling stringprep v0.1.5
[INFO] [stderr]    Compiling phf v0.13.1
[INFO] [stderr]    Compiling whoami v1.6.1
[INFO] [stderr]    Compiling scoped-futures v0.1.4
[INFO] [stderr]    Compiling unidecode v0.3.0
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling anymap2 v0.13.0
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling signature v2.2.0
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling md-5 v0.10.6
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling hmac v0.12.1
[INFO] [stderr]    Compiling blake2 v0.10.6
[INFO] [stderr]    Compiling slugify v0.1.0
[INFO] [stderr]    Compiling quote v1.0.41
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling signal-hook-registry v1.4.6
[INFO] [stderr]    Compiling socket2 v0.6.0
[INFO] [stderr]    Compiling mio v1.0.4
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling num_cpus v1.17.0
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling cc v1.2.40
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling rand_core v0.9.3
[INFO] [stderr]    Compiling uuid v1.18.1
[INFO] [stderr]    Compiling password-hash v0.5.0
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling regex-automata v0.4.11
[INFO] [stderr]    Compiling argon2 v0.5.3
[INFO] [stderr]    Compiling rand v0.9.2
[INFO] [stderr]    Compiling postgres-protocol v0.6.9
[INFO] [stderr]    Compiling cmake v0.1.54
[INFO] [stderr]    Compiling openssl-sys v0.9.109
[INFO] [stderr]    Compiling pq-src v0.3.10+libpq-18.0
[INFO] [stderr]    Compiling aws-lc-sys v0.32.2
[INFO] [stderr]    Compiling postgres-types v0.2.10
[INFO] [stderr]    Compiling regex v1.11.3
[INFO] [stderr]    Compiling shaku_derive v0.6.1
[INFO] [stderr]    Compiling darling_core v0.21.3
[INFO] [stderr]    Compiling diesel_table_macro_syntax v0.3.0
[INFO] [stderr]    Compiling shaku v0.6.2
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v2.0.17
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling axum-macros v0.5.0
[INFO] [stderr]    Compiling googletest_macro v0.14.2
[INFO] [stderr]    Compiling tokio v1.47.1
[INFO] [stderr]    Compiling googletest v0.14.2
[INFO] [stderr]    Compiling thiserror v2.0.17
[INFO] [stderr]    Compiling darling_macro v0.21.3
[INFO] [stderr]    Compiling darling v0.21.3
[INFO] [stderr]    Compiling dsl_auto_type v0.2.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling time v0.3.44
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling simple_asn1 v0.6.3
[INFO] [stderr]    Compiling cookie v0.18.1
[INFO] [stderr]    Compiling deadpool-runtime v0.1.4
[INFO] [stderr]    Compiling hyper v1.7.0
[INFO] [stderr]    Compiling tokio-util v0.7.16
[INFO] [stderr]    Compiling tower v0.5.2
[INFO] [stderr]    Compiling deadpool v0.12.3
[INFO] [stderr]    Compiling deadpool-sync v0.1.4
[INFO] [stderr]    Compiling tokio-postgres v0.7.14
[INFO] [stderr]    Compiling hyper-util v0.1.17
[INFO] [stderr]    Compiling axum v0.8.6
[INFO] [stderr]    Compiling diesel v2.3.2
[INFO] [stderr]    Compiling jsonwebtoken v10.0.0
[INFO] [stderr]    Compiling axum-extra v0.10.3
[INFO] [stderr]    Compiling diesel-async v0.7.3
[INFO] [stderr]    Compiling deadpool-diesel v0.6.1
[INFO] [stderr]    Compiling newsletter v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `DieselEventRepository` and `EventController`
[INFO] [stdout]   --> src/core/app_state.rs:11:13
[INFO] [stdout]    |
[INFO] [stdout] 11 |     event::{DieselEventRepository, EventController, LocalEventDispatcher},
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/event/infrastructure/event_services.rs:73:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |             EventPayload::ArticleUpdated(payload) => {
[INFO] [stdout]    |             ------------------------------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 73 |             _ => Err(EventError::NoHandlerFound(event)),
[INFO] [stdout]    |             ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/article/infrastructure/article_adapters.rs:145:21
[INFO] [stdout]     |
[INFO] [stdout] 145 | /                     diesel::update(articles::table.filter(articles::id.eq(&article_model.id)))
[INFO] [stdout] 146 | |                         .set((
[INFO] [stdout] 147 | |                             articles::content.eq(article_model.content),
[INFO] [stdout] 148 | |                             articles::title.eq(article_model.title),
[INFO] [stdout] ...   |
[INFO] [stdout] 155 | |                         .await
[INFO] [stdout] 156 | |                         .map_err(|e| ArticleError::Unknown(e.to_string()));
[INFO] [stdout]     | |__________________________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 145 |                     let _ = diesel::update(articles::table.filter(articles::id.eq(&article_model.id)))
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DieselEventRepository` and `EventController`
[INFO] [stdout]   --> src/core/app_state.rs:11:13
[INFO] [stdout]    |
[INFO] [stdout] 11 |     event::{DieselEventRepository, EventController, LocalEventDispatcher},
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/event/infrastructure/event_services.rs:73:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |             EventPayload::ArticleUpdated(payload) => {
[INFO] [stdout]    |             ------------------------------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 73 |             _ => Err(EventError::NoHandlerFound(event)),
[INFO] [stdout]    |             ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `InMemoryArticleRepository` is never constructed
[INFO] [stdout]   --> src/article/infrastructure/article_adapters.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct InMemoryArticleRepository {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/article/infrastructure/article_adapters.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl InMemoryArticleRepository {
[INFO] [stdout]    | ------------------------------ associated function in this implementation
[INFO] [stdout] 19 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PlainTextAuthRepository` is never constructed
[INFO] [stdout]  --> src/auth/infrastructure/adapters/auth_repository.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct PlainTextAuthRepository {}
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/auth/infrastructure/adapters/auth_repository.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl PlainTextAuthRepository {
[INFO] [stdout]    | ---------------------------- associated function in this implementation
[INFO] [stdout] 12 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `code` is never used
[INFO] [stdout]  --> src/common/business/common_errors.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | impl CommonError {
[INFO] [stdout]   | ---------------- method in this implementation
[INFO] [stdout] 8 |     pub fn code(&self) -> String {
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `IncrementalIDGenerator` is never constructed
[INFO] [stdout]   --> src/common/infrastructure/common_adapters.rs:36:12
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub struct IncrementalIDGenerator {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/common/infrastructure/common_adapters.rs:41:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | impl IncrementalIDGenerator {
[INFO] [stdout]    | --------------------------- associated function in this implementation
[INFO] [stdout] 41 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CloneSlugGenerator` is never constructed
[INFO] [stdout]   --> src/common/infrastructure/common_adapters.rs:68:12
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub struct CloneSlugGenerator {}
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/common/infrastructure/common_adapters.rs:71:12
[INFO] [stdout]    |
[INFO] [stdout] 70 | impl CloneSlugGenerator {
[INFO] [stdout]    | ----------------------- associated function in this implementation
[INFO] [stdout] 71 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FakeHashService` is never constructed
[INFO] [stdout]   --> src/common/infrastructure/common_adapters.rs:82:12
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub struct FakeHashService {}
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/common/infrastructure/common_adapters.rs:85:12
[INFO] [stdout]    |
[INFO] [stdout] 84 | impl FakeHashService {
[INFO] [stdout]    | -------------------- associated function in this implementation
[INFO] [stdout] 85 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `InMemoryUnitOfWork` is never constructed
[INFO] [stdout]    --> src/common/infrastructure/common_adapters.rs:129:12
[INFO] [stdout]     |
[INFO] [stdout] 129 | pub struct InMemoryUnitOfWork {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/common/infrastructure/common_adapters.rs:135:12
[INFO] [stdout]     |
[INFO] [stdout] 134 | impl InMemoryUnitOfWork {
[INFO] [stdout]     | ----------------------- associated function in this implementation
[INFO] [stdout] 135 |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `delete`, `empty`, and `find_all` are never used
[INFO] [stdout]   --> src/event/business/events_ports.rs:7:14
[INFO] [stdout]    |
[INFO] [stdout]  6 | pub trait EventRepository: Send + Sync {
[INFO] [stdout]    |           --------------- methods in this trait
[INFO] [stdout]  7 |     async fn delete(&self, event: &Event) -> Result<(), EventError>;
[INFO] [stdout]    |              ^^^^^^
[INFO] [stdout]  8 |     async fn create(&self, event: &Event) -> Result<(), EventError>;
[INFO] [stdout]  9 |     async fn empty(&self) -> Result<(), EventError>;
[INFO] [stdout]    |              ^^^^^
[INFO] [stdout] 10 |     async fn find_all(&self) -> Result<Vec<Event>, EventError>;
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `InMemoryEventRepository` is never constructed
[INFO] [stdout]   --> src/event/infrastructure/event_adapters.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct InMemoryEventRepository {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/event/infrastructure/event_adapters.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl InMemoryEventRepository {
[INFO] [stdout]    | ---------------------------- associated function in this implementation
[INFO] [stdout] 20 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `find_by_id` is never used
[INFO] [stdout]   --> src/user/business/user_use_cases.rs:24:14
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub trait UserRepository: Send + Sync {
[INFO] [stdout]    |           -------------- method in this trait
[INFO] [stdout] 24 |     async fn find_by_id(&self, id: &str) -> Result<Option<User>, UserError>;
[INFO] [stdout]    |              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `InMemoryUserRepository` is never constructed
[INFO] [stdout]   --> src/user/infrastructure/user_adapters.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct InMemoryUserRepository {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/user/infrastructure/user_adapters.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl InMemoryUserRepository {
[INFO] [stdout]    | --------------------------- associated function in this implementation
[INFO] [stdout] 17 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/article/infrastructure/article_adapters.rs:145:21
[INFO] [stdout]     |
[INFO] [stdout] 145 | /                     diesel::update(articles::table.filter(articles::id.eq(&article_model.id)))
[INFO] [stdout] 146 | |                         .set((
[INFO] [stdout] 147 | |                             articles::content.eq(article_model.content),
[INFO] [stdout] 148 | |                             articles::title.eq(article_model.title),
[INFO] [stdout] ...   |
[INFO] [stdout] 155 | |                         .await
[INFO] [stdout] 156 | |                         .map_err(|e| ArticleError::Unknown(e.to_string()));
[INFO] [stdout]     | |__________________________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 145 |                     let _ = diesel::update(articles::table.filter(articles::id.eq(&article_model.id)))
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 53s
[INFO] running `Command { std: "docker" "inspect" "3d84e41dc5d3ac10d02cb690fb5c891a932846232d10db5768d73e571b44b8cf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3d84e41dc5d3ac10d02cb690fb5c891a932846232d10db5768d73e571b44b8cf", kill_on_drop: false }`
[INFO] [stdout] 3d84e41dc5d3ac10d02cb690fb5c891a932846232d10db5768d73e571b44b8cf
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+9f93af291970322f4f1c6315ccde4d7078201159" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f31e92269dc7c3b19c563b8077377cb6a59697a776758ac0f387a38d3add7f07
[INFO] running `Command { std: "docker" "start" "-a" "f31e92269dc7c3b19c563b8077377cb6a59697a776758ac0f387a38d3add7f07", kill_on_drop: false }`
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.1
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling tokio-util v0.7.16
[INFO] [stderr]    Compiling tower v0.5.2
[INFO] [stderr]    Compiling openssl v0.10.73
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]    Compiling axum-core v0.5.5
[INFO] [stderr]    Compiling rustls-pki-types v1.12.0
[INFO] [stderr]    Compiling encoding_rs v0.8.35
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.0
[INFO] [stderr]    Compiling h2 v0.4.12
[INFO] [stderr]    Compiling tokio-postgres v0.7.14
[INFO] [stderr]    Compiling tower-http v0.6.6
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling yoke v0.8.0
[INFO] [stderr]    Compiling zerovec v0.11.4
[INFO] [stderr]    Compiling zerotrie v0.2.2
[INFO] [stderr]    Compiling diesel-async v0.7.3
[INFO] [stderr]    Compiling tinystr v0.8.1
[INFO] [stderr]    Compiling potential_utf v0.1.3
[INFO] [stderr]    Compiling icu_collections v2.0.0
[INFO] [stderr]    Compiling icu_locale_core v2.0.0
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling icu_provider v2.0.0
[INFO] [stderr]    Compiling icu_normalizer v2.0.0
[INFO] [stderr]    Compiling icu_properties v2.0.1
[INFO] [stderr]    Compiling hyper v1.7.0
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.7
[INFO] [stderr]    Compiling hyper-util v0.1.17
[INFO] [stderr]    Compiling axum v0.8.6
[INFO] [stderr]    Compiling hyper-tls v0.6.0
[INFO] [stderr]    Compiling reqwest v0.12.24
[INFO] [stderr]    Compiling axum-extra v0.10.3
[INFO] [stderr]    Compiling newsletter v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `DieselEventRepository` and `EventController`
[INFO] [stdout]   --> src/core/app_state.rs:11:13
[INFO] [stdout]    |
[INFO] [stdout] 11 |     event::{DieselEventRepository, EventController, LocalEventDispatcher},
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DieselEventRepository` and `EventController`
[INFO] [stdout]   --> src/core/app_state.rs:11:13
[INFO] [stdout]    |
[INFO] [stdout] 11 |     event::{DieselEventRepository, EventController, LocalEventDispatcher},
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/event/infrastructure/event_services.rs:73:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |             EventPayload::ArticleUpdated(payload) => {
[INFO] [stdout]    |             ------------------------------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 73 |             _ => Err(EventError::NoHandlerFound(event)),
[INFO] [stdout]    |             ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/event/infrastructure/event_services.rs:73:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |             EventPayload::ArticleUpdated(payload) => {
[INFO] [stdout]    |             ------------------------------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 73 |             _ => Err(EventError::NoHandlerFound(event)),
[INFO] [stdout]    |             ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/article/infrastructure/article_adapters.rs:145:21
[INFO] [stdout]     |
[INFO] [stdout] 145 | /                     diesel::update(articles::table.filter(articles::id.eq(&article_model.id)))
[INFO] [stdout] 146 | |                         .set((
[INFO] [stdout] 147 | |                             articles::content.eq(article_model.content),
[INFO] [stdout] 148 | |                             articles::title.eq(article_model.title),
[INFO] [stdout] ...   |
[INFO] [stdout] 155 | |                         .await
[INFO] [stdout] 156 | |                         .map_err(|e| ArticleError::Unknown(e.to_string()));
[INFO] [stdout]     | |__________________________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 145 |                     let _ = diesel::update(articles::table.filter(articles::id.eq(&article_model.id)))
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/article/infrastructure/article_adapters.rs:145:21
[INFO] [stdout]     |
[INFO] [stdout] 145 | /                     diesel::update(articles::table.filter(articles::id.eq(&article_model.id)))
[INFO] [stdout] 146 | |                         .set((
[INFO] [stdout] 147 | |                             articles::content.eq(article_model.content),
[INFO] [stdout] 148 | |                             articles::title.eq(article_model.title),
[INFO] [stdout] ...   |
[INFO] [stdout] 155 | |                         .await
[INFO] [stdout] 156 | |                         .map_err(|e| ArticleError::Unknown(e.to_string()));
[INFO] [stdout]     | |__________________________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 145 |                     let _ = diesel::update(articles::table.filter(articles::id.eq(&article_model.id)))
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DieselEventRepository` and `EventController`
[INFO] [stdout]   --> src/core/app_state.rs:11:13
[INFO] [stdout]    |
[INFO] [stdout] 11 |     event::{DieselEventRepository, EventController, LocalEventDispatcher},
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DieselEventRepository` and `EventController`
[INFO] [stdout]   --> src/core/app_state.rs:11:13
[INFO] [stdout]    |
[INFO] [stdout] 11 |     event::{DieselEventRepository, EventController, LocalEventDispatcher},
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/event/infrastructure/event_services.rs:73:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |             EventPayload::ArticleUpdated(payload) => {
[INFO] [stdout]    |             ------------------------------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 73 |             _ => Err(EventError::NoHandlerFound(event)),
[INFO] [stdout]    |             ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/event/infrastructure/event_services.rs:73:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |             EventPayload::ArticleUpdated(payload) => {
[INFO] [stdout]    |             ------------------------------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 73 |             _ => Err(EventError::NoHandlerFound(event)),
[INFO] [stdout]    |             ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `InMemoryArticleRepository` is never constructed
[INFO] [stdout]   --> src/article/infrastructure/article_adapters.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct InMemoryArticleRepository {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/article/infrastructure/article_adapters.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl InMemoryArticleRepository {
[INFO] [stdout]    | ------------------------------ associated function in this implementation
[INFO] [stdout] 19 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PlainTextAuthRepository` is never constructed
[INFO] [stdout]  --> src/auth/infrastructure/adapters/auth_repository.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct PlainTextAuthRepository {}
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/auth/infrastructure/adapters/auth_repository.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl PlainTextAuthRepository {
[INFO] [stdout]    | ---------------------------- associated function in this implementation
[INFO] [stdout] 12 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `code` is never used
[INFO] [stdout]  --> src/common/business/common_errors.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | impl CommonError {
[INFO] [stdout]   | ---------------- method in this implementation
[INFO] [stdout] 8 |     pub fn code(&self) -> String {
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `IncrementalIDGenerator` is never constructed
[INFO] [stdout]   --> src/common/infrastructure/common_adapters.rs:36:12
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub struct IncrementalIDGenerator {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/common/infrastructure/common_adapters.rs:41:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | impl IncrementalIDGenerator {
[INFO] [stdout]    | --------------------------- associated function in this implementation
[INFO] [stdout] 41 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CloneSlugGenerator` is never constructed
[INFO] [stdout]   --> src/common/infrastructure/common_adapters.rs:68:12
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub struct CloneSlugGenerator {}
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/common/infrastructure/common_adapters.rs:71:12
[INFO] [stdout]    |
[INFO] [stdout] 70 | impl CloneSlugGenerator {
[INFO] [stdout]    | ----------------------- associated function in this implementation
[INFO] [stdout] 71 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FakeHashService` is never constructed
[INFO] [stdout]   --> src/common/infrastructure/common_adapters.rs:82:12
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub struct FakeHashService {}
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/common/infrastructure/common_adapters.rs:85:12
[INFO] [stdout]    |
[INFO] [stdout] 84 | impl FakeHashService {
[INFO] [stdout]    | -------------------- associated function in this implementation
[INFO] [stdout] 85 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `InMemoryUnitOfWork` is never constructed
[INFO] [stdout]    --> src/common/infrastructure/common_adapters.rs:129:12
[INFO] [stdout]     |
[INFO] [stdout] 129 | pub struct InMemoryUnitOfWork {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/common/infrastructure/common_adapters.rs:135:12
[INFO] [stdout]     |
[INFO] [stdout] 134 | impl InMemoryUnitOfWork {
[INFO] [stdout]     | ----------------------- associated function in this implementation
[INFO] [stdout] 135 |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `delete`, `empty`, and `find_all` are never used
[INFO] [stdout]   --> src/event/business/events_ports.rs:7:14
[INFO] [stdout]    |
[INFO] [stdout]  6 | pub trait EventRepository: Send + Sync {
[INFO] [stdout]    |           --------------- methods in this trait
[INFO] [stdout]  7 |     async fn delete(&self, event: &Event) -> Result<(), EventError>;
[INFO] [stdout]    |              ^^^^^^
[INFO] [stdout]  8 |     async fn create(&self, event: &Event) -> Result<(), EventError>;
[INFO] [stdout]  9 |     async fn empty(&self) -> Result<(), EventError>;
[INFO] [stdout]    |              ^^^^^
[INFO] [stdout] 10 |     async fn find_all(&self) -> Result<Vec<Event>, EventError>;
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `InMemoryEventRepository` is never constructed
[INFO] [stdout]   --> src/event/infrastructure/event_adapters.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct InMemoryEventRepository {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/event/infrastructure/event_adapters.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl InMemoryEventRepository {
[INFO] [stdout]    | ---------------------------- associated function in this implementation
[INFO] [stdout] 20 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `find_by_id` is never used
[INFO] [stdout]   --> src/user/business/user_use_cases.rs:24:14
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub trait UserRepository: Send + Sync {
[INFO] [stdout]    |           -------------- method in this trait
[INFO] [stdout] 24 |     async fn find_by_id(&self, id: &str) -> Result<Option<User>, UserError>;
[INFO] [stdout]    |              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `InMemoryUserRepository` is never constructed
[INFO] [stdout]   --> src/user/infrastructure/user_adapters.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct InMemoryUserRepository {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/user/infrastructure/user_adapters.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl InMemoryUserRepository {
[INFO] [stdout]    | --------------------------- associated function in this implementation
[INFO] [stdout] 17 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/article/infrastructure/article_adapters.rs:145:21
[INFO] [stdout]     |
[INFO] [stdout] 145 | /                     diesel::update(articles::table.filter(articles::id.eq(&article_model.id)))
[INFO] [stdout] 146 | |                         .set((
[INFO] [stdout] 147 | |                             articles::content.eq(article_model.content),
[INFO] [stdout] 148 | |                             articles::title.eq(article_model.title),
[INFO] [stdout] ...   |
[INFO] [stdout] 155 | |                         .await
[INFO] [stdout] 156 | |                         .map_err(|e| ArticleError::Unknown(e.to_string()));
[INFO] [stdout]     | |__________________________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 145 |                     let _ = diesel::update(articles::table.filter(articles::id.eq(&article_model.id)))
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `code` is never used
[INFO] [stdout]  --> src/common/business/common_errors.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | impl CommonError {
[INFO] [stdout]   | ---------------- method in this implementation
[INFO] [stdout] 8 |     pub fn code(&self) -> String {
[INFO] [stdout]   |            ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `delete` and `empty` are never used
[INFO] [stdout]  --> src/event/business/events_ports.rs:7:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub trait EventRepository: Send + Sync {
[INFO] [stdout]   |           --------------- methods in this trait
[INFO] [stdout] 7 |     async fn delete(&self, event: &Event) -> Result<(), EventError>;
[INFO] [stdout]   |              ^^^^^^
[INFO] [stdout] 8 |     async fn create(&self, event: &Event) -> Result<(), EventError>;
[INFO] [stdout] 9 |     async fn empty(&self) -> Result<(), EventError>;
[INFO] [stdout]   |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/article/infrastructure/article_adapters.rs:145:21
[INFO] [stdout]     |
[INFO] [stdout] 145 | /                     diesel::update(articles::table.filter(articles::id.eq(&article_model.id)))
[INFO] [stdout] 146 | |                         .set((
[INFO] [stdout] 147 | |                             articles::content.eq(article_model.content),
[INFO] [stdout] 148 | |                             articles::title.eq(article_model.title),
[INFO] [stdout] ...   |
[INFO] [stdout] 155 | |                         .await
[INFO] [stdout] 156 | |                         .map_err(|e| ArticleError::Unknown(e.to_string()));
[INFO] [stdout]     | |__________________________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 145 |                     let _ = diesel::update(articles::table.filter(articles::id.eq(&article_model.id)))
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 51.54s
[INFO] running `Command { std: "docker" "inspect" "f31e92269dc7c3b19c563b8077377cb6a59697a776758ac0f387a38d3add7f07", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f31e92269dc7c3b19c563b8077377cb6a59697a776758ac0f387a38d3add7f07", kill_on_drop: false }`
[INFO] [stdout] f31e92269dc7c3b19c563b8077377cb6a59697a776758ac0f387a38d3add7f07
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+9f93af291970322f4f1c6315ccde4d7078201159" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] d3f3e832b0b69160358037aa184d7688e862337ed23b9825c8612692fe2f084e
[INFO] running `Command { std: "docker" "start" "-a" "d3f3e832b0b69160358037aa184d7688e862337ed23b9825c8612692fe2f084e", kill_on_drop: false }`
[INFO] [stderr] warning: unused imports: `DieselEventRepository` and `EventController`
[INFO] [stderr]   --> src/core/app_state.rs:11:13
[INFO] [stderr]    |
[INFO] [stderr] 11 |     event::{DieselEventRepository, EventController, LocalEventDispatcher},
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]   --> src/event/infrastructure/event_services.rs:73:13
[INFO] [stderr]    |
[INFO] [stderr] 70 |             EventPayload::ArticleUpdated(payload) => {
[INFO] [stderr]    |             ------------------------------------- matches all the relevant values
[INFO] [stderr] ...
[INFO] [stderr] 73 |             _ => Err(EventError::NoHandlerFound(event)),
[INFO] [stderr]    |             ^ no value can reach this
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/article/infrastructure/article_adapters.rs:145:21
[INFO] [stderr]     |
[INFO] [stderr] 145 | /                     diesel::update(articles::table.filter(articles::id.eq(&article_model.id)))
[INFO] [stderr] 146 | |                         .set((
[INFO] [stderr] 147 | |                             articles::content.eq(article_model.content),
[INFO] [stderr] 148 | |                             articles::title.eq(article_model.title),
[INFO] [stderr] ...   |
[INFO] [stderr] 155 | |                         .await
[INFO] [stderr] 156 | |                         .map_err(|e| ArticleError::Unknown(e.to_string()));
[INFO] [stderr]     | |__________________________________________________________________________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 145 |                     let _ = diesel::update(articles::table.filter(articles::id.eq(&article_model.id)))
[INFO] [stderr]     |                     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `newsletter` (lib) generated 3 warnings (run `cargo fix --lib -p newsletter` to apply 1 suggestion)
[INFO] [stderr] warning: struct `InMemoryArticleRepository` is never constructed
[INFO] [stderr]   --> src/article/infrastructure/article_adapters.rs:14:12
[INFO] [stderr]    |
[INFO] [stderr] 14 | pub struct InMemoryArticleRepository {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/article/infrastructure/article_adapters.rs:19:12
[INFO] [stderr]    |
[INFO] [stderr] 18 | impl InMemoryArticleRepository {
[INFO] [stderr]    | ------------------------------ associated function in this implementation
[INFO] [stderr] 19 |     pub fn new() -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `PlainTextAuthRepository` is never constructed
[INFO] [stderr]  --> src/auth/infrastructure/adapters/auth_repository.rs:9:12
[INFO] [stderr]   |
[INFO] [stderr] 9 | pub struct PlainTextAuthRepository {}
[INFO] [stderr]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/auth/infrastructure/adapters/auth_repository.rs:12:12
[INFO] [stderr]    |
[INFO] [stderr] 11 | impl PlainTextAuthRepository {
[INFO] [stderr]    | ---------------------------- associated function in this implementation
[INFO] [stderr] 12 |     pub fn new() -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `code` is never used
[INFO] [stderr]  --> src/common/business/common_errors.rs:8:12
[INFO] [stderr]   |
[INFO] [stderr] 7 | impl CommonError {
[INFO] [stderr]   | ---------------- method in this implementation
[INFO] [stderr] 8 |     pub fn code(&self) -> String {
[INFO] [stderr]   |            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `IncrementalIDGenerator` is never constructed
[INFO] [stderr]   --> src/common/infrastructure/common_adapters.rs:36:12
[INFO] [stderr]    |
[INFO] [stderr] 36 | pub struct IncrementalIDGenerator {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/common/infrastructure/common_adapters.rs:41:12
[INFO] [stderr]    |
[INFO] [stderr] 40 | impl IncrementalIDGenerator {
[INFO] [stderr]    | --------------------------- associated function in this implementation
[INFO] [stderr] 41 |     pub fn new() -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `CloneSlugGenerator` is never constructed
[INFO] [stderr]   --> src/common/infrastructure/common_adapters.rs:68:12
[INFO] [stderr]    |
[INFO] [stderr] 68 | pub struct CloneSlugGenerator {}
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/common/infrastructure/common_adapters.rs:71:12
[INFO] [stderr]    |
[INFO] [stderr] 70 | impl CloneSlugGenerator {
[INFO] [stderr]    | ----------------------- associated function in this implementation
[INFO] [stderr] 71 |     pub fn new() -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `FakeHashService` is never constructed
[INFO] [stderr]   --> src/common/infrastructure/common_adapters.rs:82:12
[INFO] [stderr]    |
[INFO] [stderr] 82 | pub struct FakeHashService {}
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/common/infrastructure/common_adapters.rs:85:12
[INFO] [stderr]    |
[INFO] [stderr] 84 | impl FakeHashService {
[INFO] [stderr]    | -------------------- associated function in this implementation
[INFO] [stderr] 85 |     pub fn new() -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `InMemoryUnitOfWork` is never constructed
[INFO] [stderr]    --> src/common/infrastructure/common_adapters.rs:129:12
[INFO] [stderr]     |
[INFO] [stderr] 129 | pub struct InMemoryUnitOfWork {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]    --> src/common/infrastructure/common_adapters.rs:135:12
[INFO] [stderr]     |
[INFO] [stderr] 134 | impl InMemoryUnitOfWork {
[INFO] [stderr]     | ----------------------- associated function in this implementation
[INFO] [stderr] 135 |     pub fn new(
[INFO] [stderr]     |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `delete`, `empty`, and `find_all` are never used
[INFO] [stderr]   --> src/event/business/events_ports.rs:7:14
[INFO] [stderr]    |
[INFO] [stderr]  6 | pub trait EventRepository: Send + Sync {
[INFO] [stderr]    |           --------------- methods in this trait
[INFO] [stderr]  7 |     async fn delete(&self, event: &Event) -> Result<(), EventError>;
[INFO] [stderr]    |              ^^^^^^
[INFO] [stderr]  8 |     async fn create(&self, event: &Event) -> Result<(), EventError>;
[INFO] [stderr]  9 |     async fn empty(&self) -> Result<(), EventError>;
[INFO] [stderr]    |              ^^^^^
[INFO] [stderr] 10 |     async fn find_all(&self) -> Result<Vec<Event>, EventError>;
[INFO] [stderr]    |              ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `InMemoryEventRepository` is never constructed
[INFO] [stderr]   --> src/event/infrastructure/event_adapters.rs:15:12
[INFO] [stderr]    |
[INFO] [stderr] 15 | pub struct InMemoryEventRepository {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/event/infrastructure/event_adapters.rs:20:12
[INFO] [stderr]    |
[INFO] [stderr] 19 | impl InMemoryEventRepository {
[INFO] [stderr]    | ---------------------------- associated function in this implementation
[INFO] [stderr] 20 |     pub fn new() -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `find_by_id` is never used
[INFO] [stderr]   --> src/user/business/user_use_cases.rs:24:14
[INFO] [stderr]    |
[INFO] [stderr] 23 | pub trait UserRepository: Send + Sync {
[INFO] [stderr]    |           -------------- method in this trait
[INFO] [stderr] 24 |     async fn find_by_id(&self, id: &str) -> Result<Option<User>, UserError>;
[INFO] [stderr]    |              ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `InMemoryUserRepository` is never constructed
[INFO] [stderr]   --> src/user/infrastructure/user_adapters.rs:12:12
[INFO] [stderr]    |
[INFO] [stderr] 12 | pub struct InMemoryUserRepository {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/user/infrastructure/user_adapters.rs:17:12
[INFO] [stderr]    |
[INFO] [stderr] 16 | impl InMemoryUserRepository {
[INFO] [stderr]    | --------------------------- associated function in this implementation
[INFO] [stderr] 17 |     pub fn new() -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `newsletter` (bin "newsletter") generated 22 warnings (3 duplicates)
[INFO] [stderr] warning: method `code` is never used
[INFO] [stderr]  --> src/common/business/common_errors.rs:8:12
[INFO] [stderr]   |
[INFO] [stderr] 7 | impl CommonError {
[INFO] [stderr]   | ---------------- method in this implementation
[INFO] [stderr] 8 |     pub fn code(&self) -> String {
[INFO] [stderr]   |            ^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: methods `delete` and `empty` are never used
[INFO] [stderr]  --> src/event/business/events_ports.rs:7:14
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub trait EventRepository: Send + Sync {
[INFO] [stderr]   |           --------------- methods in this trait
[INFO] [stderr] 7 |     async fn delete(&self, event: &Event) -> Result<(), EventError>;
[INFO] [stderr]   |              ^^^^^^
[INFO] [stderr] 8 |     async fn create(&self, event: &Event) -> Result<(), EventError>;
[INFO] [stderr] 9 |     async fn empty(&self) -> Result<(), EventError>;
[INFO] [stderr]   |              ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `newsletter` (bin "newsletter" test) generated 5 warnings (3 duplicates)
[INFO] [stderr] warning: `newsletter` (lib test) generated 3 warnings (3 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.42s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/newsletter-f053eb7955ba24f6)
[INFO] [stdout] 
[INFO] [stdout] running 26 tests
[INFO] [stdout] test article::business::commands::update_article::tests::it_should_return_an_error_if_article_not_found ... ok
[INFO] [stdout] test article::business::commands::create_article::tests::it_should_return_an_error_if_the_article_already_exists ... ok
[INFO] [stdout] test article::business::commands::create_article::tests::it_should_return_an_error_if_the_user_is_not_an_admin ... ok
[INFO] [stdout] test article::business::commands::update_article::tests::on_success::it_should_create_an_event_when_article_is_updated ... ok
[INFO] [stdout] test article::business::commands::update_article::tests::on_success::it_should_update_article_content ... ok
[INFO] [stdout] test article::business::commands::create_article::tests::on_success::it_should_create_an_article ... ok
[INFO] [stdout] test article::business::commands::update_article::tests::on_success::it_should_update_article_title ... ok
[INFO] [stdout] test article::business::commands::create_article::tests::on_success::it_should_return_id_and_slug ... ok
[INFO] [stdout] test auth::business::use_cases::login::tests::on_success::it_should_return_a_valid_refresh_token ... ok
[INFO] [stdout] test auth::business::use_cases::refresh_token::tests::it_should_return_an_error_if_the_refresh_token_is_invalid ... ok
[INFO] [stdout] test auth::business::use_cases::refresh_token::tests::it_should_return_an_error_if_the_user_does_not_exist ... ok
[INFO] [stdout] test auth::business::use_cases::refresh_token::tests::on_success::it_should_return_a_user_and_tokens ... ok
[INFO] [stdout] test auth::business::use_cases::login::tests::on_success::it_should_return_a_valid_access_token ... ok
[INFO] [stdout] test auth::business::use_cases::refresh_token::tests::on_success::it_should_return_a_valid_refresh_token ... ok
[INFO] [stdout] test auth::business::use_cases::login::tests::it_should_return_an_error_if_the_password_is_incorrect ... ok
[INFO] [stdout] test auth::business::use_cases::login::tests::on_success::it_should_return_a_user_and_tokens ... ok
[INFO] [stdout] test article::business::commands::update_article::tests::on_success::it_should_update_both_title_and_content ... ok
[INFO] [stdout] test auth::business::use_cases::refresh_token::tests::on_success::it_should_update_the_user_refresh_token ... ok
[INFO] [stdout] test auth::business::use_cases::register::tests::on_success::it_should_persist_the_user ... ok
[INFO] [stdout] test auth::business::use_cases::register::tests::it_should_return_an_error_if_the_user_already_exists ... ok
[INFO] [stdout] test auth::business::use_cases::register::tests::on_success::it_should_return_a_valid_access_token ... ok
[INFO] [stdout] test auth::business::use_cases::register::tests::on_success::it_should_return_a_user_and_tokens ... ok
[INFO] [stdout] test auth::business::use_cases::register::tests::on_success::it_should_return_a_valid_refresh_token ... ok
[INFO] [stdout] test auth::business::use_cases::refresh_token::tests::on_success::it_should_return_a_valid_access_token ... ok
[INFO] [stdout] test article::business::commands::update_article::tests::it_should_return_an_error_if_the_user_is_not_an_admin ... ok
[INFO] [stdout] test article::business::commands::update_article::tests::on_success::it_should_return_ok_on_successful_update ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 26 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/newsletter-20675ca3363e3e6d)
[INFO] [stdout] 
[INFO] [stdout] running 26 tests
[INFO] [stdout] test article::business::commands::create_article::tests::it_should_return_an_error_if_the_user_is_not_an_admin ... ok
[INFO] [stdout] test article::business::commands::create_article::tests::on_success::it_should_return_id_and_slug ... ok
[INFO] [stdout] test article::business::commands::create_article::tests::it_should_return_an_error_if_the_article_already_exists ... ok
[INFO] [stdout] test article::business::commands::update_article::tests::it_should_return_an_error_if_article_not_found ... ok
[INFO] [stdout] test article::business::commands::update_article::tests::it_should_return_an_error_if_the_user_is_not_an_admin ... ok
[INFO] [stdout] test article::business::commands::update_article::tests::on_success::it_should_create_an_event_when_article_is_updated ... ok
[INFO] [stdout] test article::business::commands::create_article::tests::on_success::it_should_create_an_article ... ok
[INFO] [stdout] test article::business::commands::update_article::tests::on_success::it_should_return_ok_on_successful_update ... ok
[INFO] [stdout] test article::business::commands::update_article::tests::on_success::it_should_update_article_title ... ok
[INFO] [stdout] test auth::business::use_cases::login::tests::on_success::it_should_return_a_user_and_tokens ... ok
[INFO] [stdout] test auth::business::use_cases::login::tests::it_should_return_an_error_if_the_password_is_incorrect ... ok
[INFO] [stdout] test auth::business::use_cases::refresh_token::tests::it_should_return_an_error_if_the_user_does_not_exist ... ok
[INFO] [stdout] test auth::business::use_cases::login::tests::on_success::it_should_return_a_valid_refresh_token ... ok
[INFO] [stdout] test article::business::commands::update_article::tests::on_success::it_should_update_both_title_and_content ... ok
[INFO] [stdout] test auth::business::use_cases::login::tests::on_success::it_should_return_a_valid_access_token ... ok
[INFO] [stdout] test auth::business::use_cases::refresh_token::tests::on_success::it_should_return_a_user_and_tokens ... ok
[INFO] [stdout] test auth::business::use_cases::refresh_token::tests::on_success::it_should_return_a_valid_refresh_token ... ok
[INFO] [stdout] test auth::business::use_cases::register::tests::it_should_return_an_error_if_the_user_already_exists ... ok
[INFO] [stdout] test auth::business::use_cases::register::tests::on_success::it_should_return_a_valid_access_token ... ok
[INFO] [stdout] test auth::business::use_cases::refresh_token::tests::on_success::it_should_return_a_valid_access_token ... ok
[INFO] [stdout] test auth::business::use_cases::refresh_token::tests::on_success::it_should_update_the_user_refresh_token ... ok
[INFO] [stdout] test auth::business::use_cases::register::tests::on_success::it_should_return_a_user_and_tokens ... ok
[INFO] [stdout] test auth::business::use_cases::register::tests::on_success::it_should_return_a_valid_refresh_token ... ok
[INFO] [stdout] test auth::business::use_cases::register::tests::on_success::it_should_persist_the_user ... ok
[INFO] [stdout] test article::business::commands::update_article::tests::on_success::it_should_update_article_content ... ok
[INFO] [stderr]      Running tests/mod.rs (/opt/rustwide/target/debug/deps/mod-b3e43f77bbb24d1e)
[INFO] [stdout] test auth::business::use_cases::refresh_token::tests::it_should_return_an_error_if_the_refresh_token_is_invalid ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 26 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test specs::auth::login_test::should_login_user ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- specs::auth::login_test::should_login_user stdout ----
[INFO] [stdout] Error initializing config: environment variable not found
[INFO] [stdout] 
[INFO] [stdout] thread 'specs::auth::login_test::should_login_user' (78) panicked at tests/helpers/server.rs:20:37:
[INFO] [stdout] Failed to get app state: NotPresent
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5f7ba0415122 - std::backtrace_rs::backtrace::libunwind::trace::h16affffe904e891e
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5f7ba0415122 - std::backtrace_rs::backtrace::trace_unsynchronized::h5c14b13373ed4150
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5f7ba0415122 - std::sys::backtrace::_print_fmt::hcbb507f162c816cc
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x5f7ba0415122 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h8be9aa933f14675f
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x5f7ba0427ecf - core::fmt::rt::Argument::fmt::h30ed739d33467c3a
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x5f7ba0427ecf - core::fmt::write::hfd0efbb002ac7eea
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x5f7ba03e0d73 - std::io::default_write_fmt::hd6d24501f2d7f8d3
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5f7ba03e0d73 - std::io::Write::write_fmt::h79eca2f72fc24111
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x5f7ba03edd72 - std::sys::backtrace::BacktraceLock::print::hf2554f6030d393f7
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x5f7ba03f2dcf - std::panicking::default_hook::{{closure}}::h8873121c56335b01
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x5f7ba03f2c61 - std::panicking::default_hook::hbafefc2d196267a2
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x5f7b9fa4474e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::ha834d5846f91b30b
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/alloc/src/boxed.rs:2099:9
[INFO] [stdout]   12:     0x5f7b9fa4474e - test::test_main_with_exit_callback::{{closure}}::h63c167737eecb025
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5f7ba03f348f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hbf9b0f7a281291fd
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/alloc/src/boxed.rs:2099:9
[INFO] [stdout]   14:     0x5f7ba03f348f - std::panicking::panic_with_hook::h9f5b09d5adc1a745
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x5f7ba03f323a - std::panicking::panic_handler::{{closure}}::h08111e483bdf6a89
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x5f7ba03edea9 - std::sys::backtrace::__rust_end_short_backtrace::h1b86e3414ecbbe8d
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x5f7ba03d546d - __rustc[b292c645e8102103]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x5f7ba0431460 - core::panicking::panic_fmt::h31cc490ecc8cc1fa
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5f7ba04303e6 - core::result::unwrap_failed::he05762ef9e6bdf9c
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/core/src/result.rs:1862:5
[INFO] [stdout]   20:     0x5f7b9fa11a94 - core::result::Result<T,E>::expect::hce4a1931069b3e2f
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/core/src/result.rs:1185:23
[INFO] [stdout]   21:     0x5f7b9fa17902 - mod::helpers::server::TestServer::init::{{closure}}::h70e23c3a852d68a3
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/helpers/server.rs:20:37
[INFO] [stdout]   22:     0x5f7b9fa10581 - mod::specs::auth::login_test::should_login_user::{{closure}}::h53af24a287b9d723
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/specs/auth/login_test.rs:8:37
[INFO] [stdout]   23:     0x5f7b9fa14632 - <core::pin::Pin<P> as core::future::future::Future>::poll::h60f95ae8dfce771c
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/core/src/future/future.rs:133:9
[INFO] [stdout]   24:     0x5f7b9fa146ad - <core::pin::Pin<P> as core::future::future::Future>::poll::h95760bdd51e39b1e
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/core/src/future/future.rs:133:9
[INFO] [stdout]   25:     0x5f7b9fa2007d - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::{{closure}}::{{closure}}::h930ebb080670e2ef
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/current_thread/mod.rs:742:70
[INFO] [stdout]   26:     0x5f7b9fa1fe3b - tokio::task::coop::with_budget::h3645e84aefb2cd9b
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/task/coop/mod.rs:167:5
[INFO] [stdout]   27:     0x5f7b9fa1fe3b - tokio::task::coop::budget::he88ec8431bfe64c0
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/task/coop/mod.rs:133:5
[INFO] [stdout]   28:     0x5f7b9fa1fe3b - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::{{closure}}::h4bcde669b84722c9
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/current_thread/mod.rs:742:25
[INFO] [stdout]   29:     0x5f7b9fa1d460 - tokio::runtime::scheduler::current_thread::Context::enter::hd4193cd80bd46361
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/current_thread/mod.rs:432:19
[INFO] [stdout]   30:     0x5f7b9fa1ea5d - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::hdc3c52c62516b60a
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/current_thread/mod.rs:741:44
[INFO] [stdout]   31:     0x5f7b9fa1e704 - tokio::runtime::scheduler::current_thread::CoreGuard::enter::{{closure}}::h01ba01a502286464
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/current_thread/mod.rs:829:68
[INFO] [stdout]   32:     0x5f7b9fa23f0b - tokio::runtime::context::scoped::Scoped<T>::set::h337c90384312603e
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context/scoped.rs:40:9
[INFO] [stdout]   33:     0x5f7b9fa12869 - tokio::runtime::context::set_scheduler::{{closure}}::h67e192e3318fa315
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context.rs:176:38
[INFO] [stdout]   34:     0x5f7b9fa220c2 - std::thread::local::LocalKey<T>::try_with::h2fa10ada3738e0d8
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/std/src/thread/local.rs:508:12
[INFO] [stdout]   35:     0x5f7b9fa21e8e - std::thread::local::LocalKey<T>::with::hcd551a0eea242932
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/std/src/thread/local.rs:472:20
[INFO] [stdout]   36:     0x5f7b9fa127dd - tokio::runtime::context::set_scheduler::h4a38b9f68fac1ce8
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context.rs:176:17
[INFO] [stdout]   37:     0x5f7b9fa1e090 - tokio::runtime::scheduler::current_thread::CoreGuard::enter::h25c31dcbad9aeecc
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/current_thread/mod.rs:829:27
[INFO] [stdout]   38:     0x5f7b9fa1e743 - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::h0bd02c339832bb38
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/current_thread/mod.rs:729:24
[INFO] [stdout]   39:     0x5f7b9fa1ca30 - tokio::runtime::scheduler::current_thread::CurrentThread::block_on::{{closure}}::hc2b9610fcb6471b5
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/current_thread/mod.rs:200:33
[INFO] [stdout]   40:     0x5f7b9fa12cd0 - tokio::runtime::context::runtime::enter_runtime::hba95557b6240ba3f
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   41:     0x5f7b9fa1c3f1 - tokio::runtime::scheduler::current_thread::CurrentThread::block_on::h2fad02563c86657e
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/current_thread/mod.rs:188:9
[INFO] [stdout]   42:     0x5f7b9fa1bfe4 - tokio::runtime::runtime::Runtime::block_on_inner::h911a6b1664d50c62
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/runtime.rs:356:52
[INFO] [stdout]   43:     0x5f7b9fa1c2bc - tokio::runtime::runtime::Runtime::block_on::h35e71915bc5faf59
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/runtime.rs:330:18
[INFO] [stdout]   44:     0x5f7b9fa10353 - mod::specs::auth::login_test::should_login_user::hd3fb394f29973d32
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/specs/auth/login_test.rs:30:6
[INFO] [stdout]   45:     0x5f7b9fa11017 - mod::specs::auth::login_test::should_login_user::{{closure}}::hf8dd0562e9058b0d
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/specs/auth/login_test.rs:7:29
[INFO] [stdout]   46:     0x5f7b9fa22f56 - core::ops::function::FnOnce::call_once::h360957b8ed5ee4fa
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   47:     0x5f7b9fa4454b - core::ops::function::FnOnce::call_once::h2b2de5fdd23aab3e
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   48:     0x5f7b9fa4454b - test::__rust_begin_short_backtrace::he551dd004770be01
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/test/src/lib.rs:663:18
[INFO] [stdout]   49:     0x5f7b9fa585ad - test::run_test_in_process::{{closure}}::h5f0b44080a35ed87
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/test/src/lib.rs:686:74
[INFO] [stdout]   50:     0x5f7b9fa585ad - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4dbf65d14893ecf5
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   51:     0x5f7b9fa585ad - std::panicking::catch_unwind::do_call::hc37c563b8a006285
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/std/src/panicking.rs:590:40
[INFO] [stdout]   52:     0x5f7b9fa585ad - std::panicking::catch_unwind::h616b6e2e7a27f612
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/std/src/panicking.rs:553:19
[INFO] [stdout]   53:     0x5f7b9fa585ad - std::panic::catch_unwind::h1e788dd57758e6d8
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/std/src/panic.rs:359:14
[INFO] [stdout]   54:     0x5f7b9fa585ad - test::run_test_in_process::hf073c2764f29f8ad
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/test/src/lib.rs:686:27
[INFO] [stdout]   55:     0x5f7b9fa585ad - test::run_test::{{closure}}::h3dc46b7a0c340fa6
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/test/src/lib.rs:607:43
[INFO] [stdout]   56:     0x5f7b9fa31af4 - test::run_test::{{closure}}::h6a4da3c57ef4505f
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/test/src/lib.rs:637:41
[INFO] [stdout]   57:     0x5f7b9fa31af4 - std::sys::backtrace::__rust_begin_short_backtrace::hfd8e44bc311a5d57
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   58:     0x5f7b9fa3534a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h57c4ddec344fe24c
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   59:     0x5f7b9fa3534a - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hd7cbe09591f06dfb
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   60:     0x5f7b9fa3534a - std::panicking::catch_unwind::do_call::hdcd076e8e993dfbc
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/std/src/panicking.rs:590:40
[INFO] [stdout]   61:     0x5f7b9fa3534a - std::panicking::catch_unwind::h8f9f675f3756eab1
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/std/src/panicking.rs:553:19
[INFO] [stdout]   62:     0x5f7b9fa3534a - std::panic::catch_unwind::he8f74a93abeceb9b
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/std/src/panic.rs:359:14
[INFO] [stdout]   63:     0x5f7b9fa3534a - std::thread::Builder::spawn_unchecked_::{{closure}}::he43db13a2caa41d5
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   64:     0x5f7b9fa3534a - core::ops::function::FnOnce::call_once{{vtable.shim}}::h8f3531a7e0d83514
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   65:     0x5f7ba03e92af - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h6ff05134d80ef20e
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/alloc/src/boxed.rs:2085:9
[INFO] [stdout]   66:     0x5f7ba03e92af - std::sys::thread::unix::Thread::new::thread_start::h9a4a41a076a486e0
[INFO] [stdout]                                at /rustc/9f93af291970322f4f1c6315ccde4d7078201159/library/std/src/sys/thread/unix.rs:124:17
[INFO] [stdout]   67:     0x7d4a999d8aa4 - <unknown>
[INFO] [stdout]   68:     0x7d4a99a65a64 - clone
[INFO] [stdout]   69:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     specs::auth::login_test::should_login_user
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.10s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--test mod`
[INFO] running `Command { std: "docker" "inspect" "d3f3e832b0b69160358037aa184d7688e862337ed23b9825c8612692fe2f084e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d3f3e832b0b69160358037aa184d7688e862337ed23b9825c8612692fe2f084e", kill_on_drop: false }`
[INFO] [stdout] d3f3e832b0b69160358037aa184d7688e862337ed23b9825c8612692fe2f084e
