[INFO] fetching crate smtpd 0.1.0...
[INFO] testing smtpd-0.1.0 against try#db823df02fd0c2cf67b43025ac3fef3f2d743245 for pr-150681
[INFO] extracting crate smtpd 0.1.0 into /workspace/builds/worker-4-tc2/source
[INFO] started tweaking crates.io crate smtpd 0.1.0
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate smtpd 0.1.0
[INFO] tweaked toml for crates.io crate smtpd 0.1.0 written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate smtpd 0.1.0 on toolchain db823df02fd0c2cf67b43025ac3fef3f2d743245
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate smtpd 0.1.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 0a9c07c122ebde48846a74535ac644bec809ac2a1089d014e76b1684bc01d4d9
[INFO] running `Command { std: "docker" "start" "-a" "0a9c07c122ebde48846a74535ac644bec809ac2a1089d014e76b1684bc01d4d9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0a9c07c122ebde48846a74535ac644bec809ac2a1089d014e76b1684bc01d4d9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0a9c07c122ebde48846a74535ac644bec809ac2a1089d014e76b1684bc01d4d9", kill_on_drop: false }`
[INFO] [stdout] 0a9c07c122ebde48846a74535ac644bec809ac2a1089d014e76b1684bc01d4d9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] dac5d0481e8c5dc33865506c3bd1084f54ecdee072a0175f4b563492a243497b
[INFO] running `Command { std: "docker" "start" "-a" "dac5d0481e8c5dc33865506c3bd1084f54ecdee072a0175f4b563492a243497b", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.176
[INFO] [stderr]    Compiling litemap v0.8.0
[INFO] [stderr]    Compiling writeable v0.6.1
[INFO] [stderr]    Compiling icu_normalizer_data v2.0.0
[INFO] [stderr]    Compiling icu_properties_data v2.0.1
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling unicode-normalization v0.1.24
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling unicode-bidi v0.3.18
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]    Compiling regex-syntax v0.8.6
[INFO] [stderr]    Compiling ipnet v2.11.0
[INFO] [stderr]    Compiling linked-hash-map v0.5.6
[INFO] [stderr]    Compiling lru-cache v0.1.2
[INFO] [stderr]    Compiling resolv-conf v0.7.5
[INFO] [stderr]    Compiling idna v0.4.0
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling parking_lot_core v0.9.11
[INFO] [stderr]    Compiling mio v1.0.4
[INFO] [stderr]    Compiling socket2 v0.6.0
[INFO] [stderr]    Compiling signal-hook-registry v1.4.6
[INFO] [stderr]    Compiling hostname v0.4.1
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling parking_lot v0.12.4
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling regex-automata v0.4.11
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.0
[INFO] [stderr]    Compiling zerovec-derive v0.11.1
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tracing-attributes v0.1.30
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling enum-as-inner v0.6.1
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling regex v1.11.3
[INFO] [stderr]    Compiling tokio v1.47.1
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling tracing v0.1.41
[INFO] [stderr]    Compiling yoke v0.8.0
[INFO] [stderr]    Compiling zerovec v0.11.4
[INFO] [stderr]    Compiling zerotrie v0.2.2
[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 icu_provider v2.0.0
[INFO] [stderr]    Compiling icu_properties v2.0.1
[INFO] [stderr]    Compiling icu_normalizer v2.0.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 trust-dns-proto v0.23.2
[INFO] [stderr]    Compiling trust-dns-resolver v0.23.2
[INFO] [stderr]    Compiling smtpd v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 27.46s
[INFO] running `Command { std: "docker" "inspect" "dac5d0481e8c5dc33865506c3bd1084f54ecdee072a0175f4b563492a243497b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "dac5d0481e8c5dc33865506c3bd1084f54ecdee072a0175f4b563492a243497b", kill_on_drop: false }`
[INFO] [stdout] dac5d0481e8c5dc33865506c3bd1084f54ecdee072a0175f4b563492a243497b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ede55a283580466df78315381a007359cea7498dcecb814b5e81def4fef99dcb
[INFO] running `Command { std: "docker" "start" "-a" "ede55a283580466df78315381a007359cea7498dcecb814b5e81def4fef99dcb", kill_on_drop: false }`
[INFO] [stderr]    Compiling smtpd v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.63s
[INFO] running `Command { std: "docker" "inspect" "ede55a283580466df78315381a007359cea7498dcecb814b5e81def4fef99dcb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ede55a283580466df78315381a007359cea7498dcecb814b5e81def4fef99dcb", kill_on_drop: false }`
[INFO] [stdout] ede55a283580466df78315381a007359cea7498dcecb814b5e81def4fef99dcb
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 471283431d8cca3cf0c9faa96a2c2b9dbb13fe69bacc3c4f33b901fda75661fe
[INFO] running `Command { std: "docker" "start" "-a" "471283431d8cca3cf0c9faa96a2c2b9dbb13fe69bacc3c4f33b901fda75661fe", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.15s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/smtpd-22a9c7086cbd6bdc)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests smtpd
[INFO] [stdout] 
[INFO] [stdout] running 14 tests
[INFO] [stdout] test src/lib.rs - get_auth_data (line 748) - compile ... FAILED
[INFO] [stdout] test src/core/handler.rs - core::handler::SmtpHandlerFactory (line 150) ... FAILED
[INFO] [stdout] test src/lib.rs - handle_mail_cmd (line 938) - compile ... FAILED
[INFO] [stdout] test src/core.rs - core::SmtpConfig (line 26) ... FAILED
[INFO] [stdout] test src/core/auth.rs - core::auth::AuthData (line 61) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 16) - compile ... ok
[INFO] [stdout] test src/core/tls.rs - core::tls::TlsMode (line 154) ... FAILED
[INFO] [stdout] test src/lib.rs - start_server (line 129) ... FAILED
[INFO] [stdout] test src/core/handler.rs - core::handler::SmtpHandler (line 16) ... FAILED
[INFO] [stdout] test src/core/tls.rs - core::tls::TlsConfig (line 24) ... FAILED
[INFO] [stdout] test src/core/handler.rs - core::handler::SmtpHandler (line 97) ... FAILED
[INFO] [stdout] test src/lib.rs - SmtpServer (line 166) ... FAILED
[INFO] [stdout] test src/core/tls.rs - core::tls::TlsConfig (line 40) ... FAILED
[INFO] [stdout] test src/core/error.rs - core::error::Error (line 32) ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/lib.rs - get_auth_data (line 748) stdout ----
[INFO] [stdout] error[E0603]: struct `StreamController` is private
[INFO] [stdout]    --> src/lib.rs:750:22
[INFO] [stdout]     |
[INFO] [stdout] 750 | use smtpd::{Session, StreamController, get_auth_data};
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^ private struct
[INFO] [stdout]     |
[INFO] [stdout] note: the struct `StreamController` is defined here
[INFO] [stdout]    --> src/lib.rs:105:5
[INFO] [stdout]     |
[INFO] [stdout] 105 | use crate::core::stream::StreamController;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: function `get_auth_data` is private
[INFO] [stdout]    --> src/lib.rs:750:40
[INFO] [stdout]     |
[INFO] [stdout] 750 | use smtpd::{Session, StreamController, get_auth_data};
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^ private function
[INFO] [stdout]     |
[INFO] [stdout] note: the function `get_auth_data` is defined here
[INFO] [stdout]    --> src/lib.rs:756:1
[INFO] [stdout]     |
[INFO] [stdout] 756 | / async fn get_auth_data<'a>(
[INFO] [stdout] 757 | |     args: Option<&str>,
[INFO] [stdout] 758 | |     session: &mut Session<'a>,
[INFO] [stdout] 759 | |     controller: &mut StreamController,
[INFO] [stdout] 760 | | ) -> std::result::Result<AuthData, CoreError> {
[INFO] [stdout]     | |_____________________________________________^
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the `?` operator can only be used in an async function that returns `Result` or `Option` (or another type that implements `FromResidual`)
[INFO] [stdout]    --> src/lib.rs:753:73
[INFO] [stdout]     |
[INFO] [stdout] 751 |   async fn example(mut session: Session<'_>, mut controller: StreamController) {
[INFO] [stdout]     |  ______________________________________________________________________________-
[INFO] [stdout] 752 | | let args = Some("PLAIN dGVzdAB0ZXN0ADEyMw=="); // example base64-encoded credentials
[INFO] [stdout] 753 | | let auth_data = get_auth_data(args, &mut session, &mut controller).await?;
[INFO] [stdout]     | |                                                                         ^ cannot use the `?` operator in an async function that returns `()`
[INFO] [stdout] 754 | | // `auth_data` now contains username and password
[INFO] [stdout] 755 | | }
[INFO] [stdout]     | |_- this function should return `Result` or `Option` to accept `?`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0603.
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/core/handler.rs - core::handler::SmtpHandlerFactory (line 150) stdout ----
[INFO] [stdout] error[E0277]: the trait bound `MyHandler: SmtpHandler` is not satisfied
[INFO] [stdout]    --> src/core/handler.rs:158:20
[INFO] [stdout]     |
[INFO] [stdout] 158 |     type Handler = MyHandler;
[INFO] [stdout]     |                    ^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `SmtpHandler` is not implemented for `MyHandler`
[INFO] [stdout]    --> src/core/handler.rs:154:1
[INFO] [stdout]     |
[INFO] [stdout] 154 | struct MyHandler;
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `smtpd::SmtpHandlerFactory::Handler`
[INFO] [stdout]    --> src/core/handler.rs:165:19
[INFO] [stdout]     |
[INFO] [stdout] 165 |     type Handler: SmtpHandler + 'static;
[INFO] [stdout]     |                   ^^^^^^^^^^^ required by this bound in `SmtpHandlerFactory::Handler`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0277`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - handle_mail_cmd (line 938) stdout ----
[INFO] [stdout] error[E0603]: struct `StreamController` is private
[INFO] [stdout]    --> src/lib.rs:940:22
[INFO] [stdout]     |
[INFO] [stdout] 940 | use smtpd::{Session, StreamController, handle_mail_cmd};
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^ private struct
[INFO] [stdout]     |
[INFO] [stdout] note: the struct `StreamController` is defined here
[INFO] [stdout]    --> src/lib.rs:105:5
[INFO] [stdout]     |
[INFO] [stdout] 105 | use crate::core::stream::StreamController;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: function `handle_mail_cmd` is private
[INFO] [stdout]    --> src/lib.rs:940:40
[INFO] [stdout]     |
[INFO] [stdout] 940 | use smtpd::{Session, StreamController, handle_mail_cmd};
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^ private function
[INFO] [stdout]     |
[INFO] [stdout] note: the function `handle_mail_cmd` is defined here
[INFO] [stdout]    --> src/lib.rs:945:1
[INFO] [stdout]     |
[INFO] [stdout] 945 | / async fn handle_mail_cmd<'a>(
[INFO] [stdout] 946 | |     args: Option<&str>,
[INFO] [stdout] 947 | |     session: &mut Session<'a>,
[INFO] [stdout] 948 | |     controller: &mut StreamController,
[INFO] [stdout] 949 | | ) -> std::result::Result<(), CoreError> {
[INFO] [stdout]     | |_______________________________________^
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the `?` operator can only be used in an async function that returns `Result` or `Option` (or another type that implements `FromResidual`)
[INFO] [stdout]    --> src/lib.rs:943:59
[INFO] [stdout]     |
[INFO] [stdout] 941 |   async fn example(mut session: Session<'_>, mut controller: StreamController) {
[INFO] [stdout]     |  ______________________________________________________________________________-
[INFO] [stdout] 942 | | let args = Some("FROM:<alice@example.com> SIZE=1024");
[INFO] [stdout] 943 | | handle_mail_cmd(args, &mut session, &mut controller).await?;
[INFO] [stdout]     | |                                                           ^ cannot use the `?` operator in an async function that returns `()`
[INFO] [stdout] 944 | | }
[INFO] [stdout]     | |_- this function should return `Result` or `Option` to accept `?`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0603.
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/core.rs - core::SmtpConfig (line 26) stdout ----
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `MyHandlerFactory` in this scope
[INFO] [stdout]   --> src/core.rs:39:19
[INFO] [stdout]    |
[INFO] [stdout] 39 |     let factory = MyHandlerFactory {};
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0422`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/core/auth.rs - core::auth::AuthData (line 61) stdout ----
[INFO] [stdout] error[E0195]: lifetime parameters or bounds on method `handle_auth` do not match the trait declaration
[INFO] [stdout]    --> src/core/auth.rs:68:19
[INFO] [stdout]     |
[INFO] [stdout]  68 |     fn handle_auth(
[INFO] [stdout]     |                   ^ lifetimes do not match method in trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/handler.rs:113:1
[INFO] [stdout]     |
[INFO] [stdout] 113 | #[async_trait::async_trait]
[INFO] [stdout]     | --------------------------- lifetimes in impl do not match this method in trait
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0195`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/core/tls.rs - core::tls::TlsMode (line 154) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `smtpd::Identity`
[INFO] [stdout]    --> src/core/tls.rs:156:33
[INFO] [stdout]     |
[INFO] [stdout] 156 | use smtpd::{TlsMode, TlsConfig, Identity};
[INFO] [stdout]     |                                 ^^^^^^^^ no `Identity` in the root
[INFO] [stdout]     |
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]    --> src/lib.rs:113:21
[INFO] [stdout]     |
[INFO] [stdout] 112 | #[cfg(feature = "native-tls-backend")]
[INFO] [stdout]     |       ------------------------------ the item is gated behind the `native-tls-backend` feature
[INFO] [stdout] 113 | pub use native_tls::Identity;
[INFO] [stdout]     |                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `NativeTls` found for enum `TlsConfig` in the current scope
[INFO] [stdout]    --> src/core/tls.rs:159:29
[INFO] [stdout]     |
[INFO] [stdout] 159 | let tls_config = TlsConfig::NativeTls(Identity::default());
[INFO] [stdout]     |                             ^^^^^^^^^ variant or associated item not found in `TlsConfig`
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Explicit` found for enum `TlsMode` in the current scope
[INFO] [stdout]    --> src/core/tls.rs:160:21
[INFO] [stdout]     |
[INFO] [stdout] 160 | let mode = TlsMode::Explicit(tls_config);
[INFO] [stdout]     |                     ^^^^^^^^ variant or associated item not found in `TlsMode`
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Required` found for enum `TlsMode` in the current scope
[INFO] [stdout]    --> src/core/tls.rs:163:30
[INFO] [stdout]     |
[INFO] [stdout] 163 | let required_mode = TlsMode::Required(tls_config.clone());
[INFO] [stdout]     |                              ^^^^^^^^ variant or associated item not found in `TlsMode`
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Implicit` found for enum `TlsMode` in the current scope
[INFO] [stdout]    --> src/core/tls.rs:166:30
[INFO] [stdout]     |
[INFO] [stdout] 166 | let implicit_mode = TlsMode::Implicit(tls_config);
[INFO] [stdout]     |                              ^^^^^^^^ variant or associated item not found in `TlsMode`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 5 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - start_server (line 129) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `smtpd::MyHandlerFactory`
[INFO] [stdout]    --> src/lib.rs:131:49
[INFO] [stdout]     |
[INFO] [stdout] 131 | use smtpd::{start_server, SmtpConfig, AuthMach, MyHandlerFactory};
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 no `MyHandlerFactory` in the root
[INFO] [stdout]     |                                                 help: a similar name exists in the module: `SmtpHandlerFactory`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/core/handler.rs - core::handler::SmtpHandler (line 16) stdout ----
[INFO] [stdout] error[E0195]: lifetime parameters or bounds on method `handle_auth` do not match the trait declaration
[INFO] [stdout]    --> src/core/handler.rs:26:14
[INFO] [stdout]     |
[INFO] [stdout]  26 |       async fn handle_auth(
[INFO] [stdout]     |  ______________^
[INFO] [stdout]  27 | |         &mut self,
[INFO] [stdout]  28 | |         _session: &Session,
[INFO] [stdout]  29 | |         data: &AuthData,
[INFO] [stdout]  30 | |     ) -> Result {
[INFO] [stdout]     | |_____^ lifetimes do not match method in trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/handler.rs:113:1
[INFO] [stdout]     |
[INFO] [stdout] 113 |   #[async_trait::async_trait]
[INFO] [stdout]     |   --------------------------- lifetimes in impl do not match this method in trait
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `auth_failed` found for enum `smtpd::Response` in the current scope
[INFO] [stdout]   --> src/core/handler.rs:39:39
[INFO] [stdout]    |
[INFO] [stdout] 39 |         Err(Error::Response(Response::auth_failed("Invalid credentials")))
[INFO] [stdout]    |                                       ^^^^^^^^^^^ variant or associated item not found in `smtpd::Response`
[INFO] [stdout]    |
[INFO] [stdout] note: if you're trying to build a new `smtpd::Response` consider using one of the following associated functions:
[INFO] [stdout]       smtpd::Response::new
[INFO] [stdout]       smtpd::Response::ok
[INFO] [stdout]       smtpd::Response::info
[INFO] [stdout]       smtpd::Response::reject
[INFO] [stdout]       and 4 others
[INFO] [stdout]   --> src/core/response.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 58 | /     pub fn new(
[INFO] [stdout] 59 | |         status: usize,
[INFO] [stdout] 60 | |         message: impl Into<Cow<'static, str>>,
[INFO] [stdout] 61 | |         rfc: impl Into<Option<Cow<'static, str>>>,
[INFO] [stdout] 62 | |     ) -> Self {
[INFO] [stdout]    | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 70 |       pub fn ok(message: impl Into<Cow<'static, str>>) -> Self {
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |       pub fn info(message: impl Into<Cow<'static, str>>) -> Self {
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 78 |       pub fn reject(message: impl Into<Cow<'static, str>>) -> Self {
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `invalid_recipient` found for enum `smtpd::Response` in the current scope
[INFO] [stdout]   --> src/core/handler.rs:50:43
[INFO] [stdout]    |
[INFO] [stdout] 50 |             Err(Error::Response(Response::invalid_recipient(
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^ variant or associated item not found in `smtpd::Response`
[INFO] [stdout]    |
[INFO] [stdout] note: if you're trying to build a new `smtpd::Response` consider using one of the following associated functions:
[INFO] [stdout]       smtpd::Response::new
[INFO] [stdout]       smtpd::Response::ok
[INFO] [stdout]       smtpd::Response::info
[INFO] [stdout]       smtpd::Response::reject
[INFO] [stdout]       and 4 others
[INFO] [stdout]   --> src/core/response.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 58 | /     pub fn new(
[INFO] [stdout] 59 | |         status: usize,
[INFO] [stdout] 60 | |         message: impl Into<Cow<'static, str>>,
[INFO] [stdout] 61 | |         rfc: impl Into<Option<Cow<'static, str>>>,
[INFO] [stdout] 62 | |     ) -> Self {
[INFO] [stdout]    | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 70 |       pub fn ok(message: impl Into<Cow<'static, str>>) -> Self {
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |       pub fn info(message: impl Into<Cow<'static, str>>) -> Self {
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 78 |       pub fn reject(message: impl Into<Cow<'static, str>>) -> Self {
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/core/handler.rs:72:30
[INFO] [stdout]    |
[INFO] [stdout] 72 |         MyHandler { user_id: 0, account_id: 0 }
[INFO] [stdout]    |                              ^ expected `Option<usize>`, found integer
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected enum `Option<usize>`
[INFO] [stdout]               found type `{integer}`
[INFO] [stdout] help: try wrapping the expression in `Some`
[INFO] [stdout]    |
[INFO] [stdout] 72 |         MyHandler { user_id: Some(0), account_id: 0 }
[INFO] [stdout]    |                              +++++ +
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `MyHandler` has no field named `account_id`
[INFO] [stdout]   --> src/core/handler.rs:72:33
[INFO] [stdout]    |
[INFO] [stdout] 72 |         MyHandler { user_id: 0, account_id: 0 }
[INFO] [stdout]    |                                 ^^^^^^^^^^ `MyHandler` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: all struct fields are already assigned
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 5 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0195, E0308, E0560, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0195`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/core/tls.rs - core::tls::TlsConfig (line 24) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `smtpd::Identity`
[INFO] [stdout]    --> src/core/tls.rs:26:13
[INFO] [stdout]     |
[INFO] [stdout]  26 | use smtpd::{Identity, TlsConfig, TlsMode, SmtpConfig, AuthMach};
[INFO] [stdout]     |             ^^^^^^^^ no `Identity` in the root
[INFO] [stdout]     |
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]    --> src/lib.rs:113:21
[INFO] [stdout]     |
[INFO] [stdout] 112 | #[cfg(feature = "native-tls-backend")]
[INFO] [stdout]     |       ------------------------------ the item is gated behind the `native-tls-backend` feature
[INFO] [stdout] 113 | pub use native_tls::Identity;
[INFO] [stdout]     |                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `NativeTls` found for enum `TlsConfig` in the current scope
[INFO] [stdout]   --> src/core/tls.rs:29:29
[INFO] [stdout]    |
[INFO] [stdout] 29 | let tls_config = TlsConfig::NativeTls(identity);
[INFO] [stdout]    |                             ^^^^^^^^^ variant or associated item not found in `TlsConfig`
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Required` found for enum `TlsMode` in the current scope
[INFO] [stdout]   --> src/core/tls.rs:34:24
[INFO] [stdout]    |
[INFO] [stdout] 34 |     tls_mode: TlsMode::Required(tls_config),
[INFO] [stdout]    |                        ^^^^^^^^ variant or associated item not found in `TlsMode`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/core/handler.rs - core::handler::SmtpHandler (line 97) stdout ----
[INFO] [stdout] error[E0277]: the trait bound `MyHandler: SmtpHandler` is not satisfied
[INFO] [stdout]    --> src/core/handler.rs:106:20
[INFO] [stdout]     |
[INFO] [stdout] 106 |     type Handler = MyHandler;
[INFO] [stdout]     |                    ^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `SmtpHandler` is not implemented for `MyHandler`
[INFO] [stdout]    --> src/core/handler.rs:101:1
[INFO] [stdout]     |
[INFO] [stdout] 101 | struct MyHandler { user_id: Option<usize> }
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `smtpd::SmtpHandlerFactory::Handler`
[INFO] [stdout]    --> src/core/handler.rs:165:19
[INFO] [stdout]     |
[INFO] [stdout] 165 |     type Handler: SmtpHandler + 'static;
[INFO] [stdout]     |                   ^^^^^^^^^^^ required by this bound in `SmtpHandlerFactory::Handler`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0277`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - SmtpServer (line 166) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `smtpd::MyHandlerFactory`
[INFO] [stdout]    --> src/lib.rs:168:51
[INFO] [stdout]     |
[INFO] [stdout] 168 | use smtpd::{SmtpServer, start_server, SmtpConfig, MyHandlerFactory};
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   no `MyHandlerFactory` in the root
[INFO] [stdout]     |                                                   help: a similar name exists in the module: `SmtpHandlerFactory`
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]    --> src/lib.rs:177:31
[INFO] [stdout]     |
[INFO] [stdout] 167 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_166_0() {
[INFO] [stdout]     |                                      ----------------------------------- this is not `async`
[INFO] [stdout] ...
[INFO] [stdout] 177 | start_server(config, factory).await?;
[INFO] [stdout]     |                               ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0728.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/core/tls.rs - core::tls::TlsConfig (line 40) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `smtpd::ServerConfig`
[INFO] [stdout]    --> src/core/tls.rs:42:13
[INFO] [stdout]     |
[INFO] [stdout]  42 | use smtpd::{ServerConfig, TlsConfig, TlsMode, SmtpConfig, AuthMach};
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             no `ServerConfig` in the root
[INFO] [stdout]     |             help: a similar name exists in the module: `ResolverConfig`
[INFO] [stdout]     |
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]    --> src/lib.rs:116:17
[INFO] [stdout]     |
[INFO] [stdout] 115 | #[cfg(feature = "rustls-backend")]
[INFO] [stdout]     |       -------------------------- the item is gated behind the `rustls-backend` feature
[INFO] [stdout] 116 | pub use rustls::ServerConfig;
[INFO] [stdout]     |                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Rustls` found for enum `TlsConfig` in the current scope
[INFO] [stdout]   --> src/core/tls.rs:45:29
[INFO] [stdout]    |
[INFO] [stdout] 45 | let tls_config = TlsConfig::Rustls(rustls_config);
[INFO] [stdout]    |                             ^^^^^^ variant or associated item not found in `TlsConfig`
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Required` found for enum `TlsMode` in the current scope
[INFO] [stdout]   --> src/core/tls.rs:50:24
[INFO] [stdout]    |
[INFO] [stdout] 50 |     tls_mode: TlsMode::Required(tls_config),
[INFO] [stdout]    |                        ^^^^^^^^ variant or associated item not found in `TlsMode`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/core.rs - core::SmtpConfig (line 26)
[INFO] [stdout]     src/core/auth.rs - core::auth::AuthData (line 61)
[INFO] [stdout]     src/core/handler.rs - core::handler::SmtpHandler (line 16)
[INFO] [stdout]     src/core/handler.rs - core::handler::SmtpHandler (line 97)
[INFO] [stdout]     src/core/handler.rs - core::handler::SmtpHandlerFactory (line 150)
[INFO] [stdout]     src/core/tls.rs - core::tls::TlsConfig (line 24)
[INFO] [stdout]     src/core/tls.rs - core::tls::TlsConfig (line 40)
[INFO] [stdout]     src/core/tls.rs - core::tls::TlsMode (line 154)
[INFO] [stdout]     src/lib.rs - SmtpServer (line 166)
[INFO] [stdout]     src/lib.rs - get_auth_data (line 748)
[INFO] [stdout]     src/lib.rs - handle_mail_cmd (line 938)
[INFO] [stdout]     src/lib.rs - start_server (line 129)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 2 passed; 12 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.72s
[INFO] [stdout] 
[INFO] [stdout] all doctests ran in 1.51s; merged doctests compilation took 0.79s
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] running `Command { std: "docker" "inspect" "471283431d8cca3cf0c9faa96a2c2b9dbb13fe69bacc3c4f33b901fda75661fe", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "471283431d8cca3cf0c9faa96a2c2b9dbb13fe69bacc3c4f33b901fda75661fe", kill_on_drop: false }`
[INFO] [stdout] 471283431d8cca3cf0c9faa96a2c2b9dbb13fe69bacc3c4f33b901fda75661fe
