[INFO] cloning repository https://github.com/VukoDrakkeinen/katoptron [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/VukoDrakkeinen/katoptron" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FVukoDrakkeinen%2Fkatoptron", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FVukoDrakkeinen%2Fkatoptron'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 21d77361ed975728bd55f2734667b862b60bc53d [INFO] checking VukoDrakkeinen/katoptron against try#a7a572ce3edd6d476191fbfe92c9c1986e009b34 for pr-87190-3 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FVukoDrakkeinen%2Fkatoptron" "/workspace/builds/worker-99/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-99/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/VukoDrakkeinen/katoptron on toolchain a7a572ce3edd6d476191fbfe92c9c1986e009b34 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a7a572ce3edd6d476191fbfe92c9c1986e009b34" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/VukoDrakkeinen/katoptron [INFO] finished tweaking git repo https://github.com/VukoDrakkeinen/katoptron [INFO] tweaked toml for git repo https://github.com/VukoDrakkeinen/katoptron written to /workspace/builds/worker-99/source/Cargo.toml [INFO] crate git repo https://github.com/VukoDrakkeinen/katoptron already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a7a572ce3edd6d476191fbfe92c9c1986e009b34" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-99/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-99/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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+a7a572ce3edd6d476191fbfe92c9c1986e009b34" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] a903c8ad59f6f44c9c8ea46deca7043fcd3007ad628a06d579b04aa03e740732 [INFO] running `Command { std: "docker" "start" "-a" "a903c8ad59f6f44c9c8ea46deca7043fcd3007ad628a06d579b04aa03e740732", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a903c8ad59f6f44c9c8ea46deca7043fcd3007ad628a06d579b04aa03e740732", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a903c8ad59f6f44c9c8ea46deca7043fcd3007ad628a06d579b04aa03e740732", kill_on_drop: false }` [INFO] [stdout] a903c8ad59f6f44c9c8ea46deca7043fcd3007ad628a06d579b04aa03e740732 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-99/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-99/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" "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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+a7a572ce3edd6d476191fbfe92c9c1986e009b34" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4f0c876e00b7df49306bcfbc11cda9cfd83d85e88bfadc0e150e2761739434c4 [INFO] running `Command { std: "docker" "start" "-a" "4f0c876e00b7df49306bcfbc11cda9cfd83d85e88bfadc0e150e2761739434c4", kill_on_drop: false }` [INFO] [stderr] Copying to /tmp/fixit [INFO] [stderr] Running `cargo fix --edition` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] note: Switching to Edition 2021 will enable the use of the version 2 feature resolver in Cargo. [INFO] [stderr] This may cause some dependencies to be built with fewer features enabled than previously. [INFO] [stderr] More information about the resolver changes may be found at https://doc.rust-lang.org/nightly/edition-guide/rust-2021/default-cargo-resolver.html [INFO] [stderr] When building the following dependencies, the given features will no longer be used: [INFO] [stderr] [INFO] [stderr] proc-macro2 v0.4.29: default [INFO] [stderr] syn v0.15.33: extra-traits, visit [INFO] [stderr] syn v0.15.33 (as host dependency): extra-traits [INFO] [stderr] [INFO] [stderr] Compiling proc-macro2 v0.4.29 [INFO] [stderr] Compiling unicode-xid v0.1.0 [INFO] [stderr] Compiling libc v0.2.54 [INFO] [stderr] Compiling syn v0.15.33 [INFO] [stderr] Checking cfg-if v0.1.2 [INFO] [stderr] Compiling cc v1.0.15 [INFO] [stderr] Checking lazy_static v1.3.0 [INFO] [stderr] Compiling unicode-xid v0.0.4 [INFO] [stderr] Compiling pkg-config v0.3.11 [INFO] [stderr] Compiling byteorder v1.3.1 [INFO] [stderr] Compiling quote v0.3.15 [INFO] [stderr] Checking void v1.0.2 [INFO] [stderr] Checking nodrop v0.1.12 [INFO] [stderr] Compiling serde v1.0.90 [INFO] [stderr] Checking scopeguard v0.3.3 [INFO] [stderr] Checking rustc-demangle v0.1.7 [INFO] [stderr] Compiling autocfg v0.1.2 [INFO] [stderr] Checking memoffset v0.2.1 [INFO] [stderr] Checking unicode-width v0.1.4 [INFO] [stderr] Checking bitflags v1.0.3 [INFO] [stderr] Checking ansi_term v0.11.0 [INFO] [stderr] Checking strsim v0.8.0 [INFO] [stderr] Checking vec_map v0.8.0 [INFO] [stderr] Checking textwrap v0.11.0 [INFO] [stderr] Compiling backtrace-sys v0.1.16 [INFO] [stderr] Checking arrayvec v0.4.7 [INFO] [stderr] Compiling proc-macro2 v0.2.3 [INFO] [stderr] Checking unreachable v1.0.0 [INFO] [stderr] Checking crossbeam-utils v0.6.5 [INFO] [stderr] Compiling synom v0.11.3 [INFO] [stderr] Compiling bincode v1.1.3 [INFO] [stderr] Compiling libdbus-sys v0.1.5 [INFO] [stderr] Checking base64 v0.10.1 [INFO] [stderr] Checking atty v0.2.10 [INFO] [stderr] Checking hostname v0.1.5 [INFO] [stderr] Checking dirs v1.0.5 [INFO] [stderr] Checking clap v2.33.0 [INFO] [stderr] Checking smallvec v0.6.3 [INFO] [stderr] Compiling syn v0.11.11 [INFO] [stderr] Compiling quote v0.6.12 [INFO] [stderr] Compiling quote v0.4.2 [INFO] [stderr] Checking crossbeam-epoch v0.7.1 [INFO] [stderr] Checking crossbeam-queue v0.1.2 [INFO] [stderr] Checking crossbeam-deque v0.7.1 [INFO] [stderr] Checking dbus v0.6.4 [INFO] [stderr] Compiling syn v0.12.15 [INFO] [stderr] Checking crossbeam-channel v0.3.8 [INFO] [stderr] Compiling synstructure v0.6.1 [INFO] [stderr] Checking crossbeam v0.7.1 [INFO] [stderr] Compiling display_derive v1.0.0 (https://github.com/withoutboats/display_derive#5d6bac2f) [INFO] [stderr] Checking wstr_macro v0.1.0 (/tmp/fixit/wstr_macro) [INFO] [stderr] Migrating wstr_macro/src/lib.rs from 2015 edition to 2018 [INFO] [stderr] Compiling synstructure v0.7.0 [INFO] [stderr] Compiling serde_derive v1.0.90 [INFO] [stderr] Compiling failure_derive v1.0.0 (https://github.com/rust-lang-nursery/failure/#fa39406f) [INFO] [stderr] Checking failure v1.0.0 (https://github.com/rust-lang-nursery/failure/#fa39406f) [INFO] [stderr] Checking backtrace v0.3.6 [INFO] [stderr] Checking error-chain v0.12.0 [INFO] [stderr] Checking notify-rust v3.5.0 [INFO] [stderr] Checking ron v0.4.2 [INFO] [stderr] Checking katoptron v0.2.0 (/tmp/fixit) [INFO] [stderr] Migrating src/lib.rs from 2018 edition to 2021 [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `katoptron` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/errors.rs [INFO] [stderr] [INFO] [stderr] This likely indicates a bug in either rustc or cargo itself, [INFO] [stderr] and we would appreciate a bug report! You're likely to see [INFO] [stderr] a number of compiler warnings after this message which cargo [INFO] [stderr] attempted to fix but failed. If you could open an issue at [INFO] [stderr] https://github.com/rust-lang/rust/issues [INFO] [stderr] quoting the full output of this command we'd be very appreciative! [INFO] [stderr] Note that you may be able to make some more progress in the near-term [INFO] [stderr] fixing code with the `--broken-code` flag [INFO] [stderr] [INFO] [stderr] The following errors were reported: [INFO] [stderr] error: proc-macro derive panicked [INFO] [stderr] --> src/errors.rs:16:23 [INFO] [stderr] | [INFO] [stderr] 16 | #[derive(Fail, Debug, Display)] [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: message: Failed to parse input to `#[derive(Display)]`: "failed to parse derive input: \"pub enum TxError\\n{\\n #[display(fmt = \\\"Handshake failure\\\")] HandshakeFailure,\\n #[display(fmt = \\\"Incompatible protocol version {}\\\", version)]\\n IncompatibleProtocol { version : u8 },\\n #[display(fmt = \\\"Transmission error\\\")]\\n Generic(#[fail(cause)] Box < dyn Fail >, TxErrorKind),\\n}\"" [INFO] [stderr] [INFO] [stderr] error: proc-macro derive panicked [INFO] [stderr] --> src/errors.rs:48:23 [INFO] [stderr] | [INFO] [stderr] 48 | #[derive(Fail, Debug, Display)] [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: message: Failed to parse input to `#[derive(Display)]`: "failed to parse derive input: \"pub enum RecvError\\n{\\n #[display(fmt = \\\"Garbage data received\\\")] GarbageData,\\n #[display(fmt = \\\"Payload too large\\\")] PayloadTooLarge,\\n #[display(fmt = \\\"Payload deserialization failure\\\")]\\n PayloadDeserializationFailure(#[fail(cause)] bincode :: Error),\\n #[display(fmt = \\\"Receive error\\\")]\\n Generic(#[fail(cause)] Box < dyn Fail >, RecvErrorKind),\\n}\"" [INFO] [stderr] [INFO] [stderr] error: proc-macro derive panicked [INFO] [stderr] --> src/errors.rs:83:23 [INFO] [stderr] | [INFO] [stderr] 83 | #[derive(Fail, Debug, Display)] [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: message: Failed to parse input to `#[derive(Display)]`: "failed to parse derive input: \"pub enum SendError\\n{\\n #[display(fmt = \\\"Payload serialization failure\\\")]\\n PayloadSerializationFailure { #[fail(cause)] cause : bincode :: Error, },\\n #[display(fmt = \\\"Send error\\\")]\\n Generic(#[fail(cause)] Box < dyn Fail >, SendErrorKind),\\n}\"" [INFO] [stderr] [INFO] [stderr] error: proc-macro derive panicked [INFO] [stderr] --> src/errors.rs:110:16 [INFO] [stderr] | [INFO] [stderr] 110 | #[derive(Fail, Display)] [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: message: Failed to parse input to `#[derive(Display)]`: "failed to parse derive input: \"#[display(fmt = \\\"{}: {}\\\", context, inner)] pub struct ErrWithContext < E >\\n{ inner : E, context : Box < dyn Display + Send + Sync + 'static >, }\"" [INFO] [stderr] [INFO] [stderr] error[E0277]: `errors::TxError` doesn't implement `std::fmt::Display` [INFO] [stderr] --> src/errors.rs:16:10 [INFO] [stderr] | [INFO] [stderr] 16 | #[derive(Fail, Debug, Display)] [INFO] [stderr] | ^^^^ `errors::TxError` cannot be formatted with the default formatter [INFO] [stderr] | [INFO] [stderr] = help: the trait `std::fmt::Display` is not implemented for `errors::TxError` [INFO] [stderr] = note: in format strings you may be able to use `{:?}` (or {:#?} for pretty-print) instead [INFO] [stderr] note: required by a bound in `Fail` [INFO] [stderr] --> /opt/rustwide/cargo-home/git/checkouts/failure-3bf9c9326ecc6051/fa39406/failure-1.X/src/lib.rs:98:17 [INFO] [stderr] | [INFO] [stderr] 98 | pub trait Fail: Display + Debug + Send + Sync + 'static { [INFO] [stderr] | ^^^^^^^ required by this bound in `Fail` [INFO] [stderr] = note: this error originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error[E0277]: `errors::RecvError` doesn't implement `std::fmt::Display` [INFO] [stderr] --> src/errors.rs:48:10 [INFO] [stderr] | [INFO] [stderr] 48 | #[derive(Fail, Debug, Display)] [INFO] [stderr] | ^^^^ `errors::RecvError` cannot be formatted with the default formatter [INFO] [stderr] | [INFO] [stderr] = help: the trait `std::fmt::Display` is not implemented for `errors::RecvError` [INFO] [stderr] = note: in format strings you may be able to use `{:?}` (or {:#?} for pretty-print) instead [INFO] [stderr] note: required by a bound in `Fail` [INFO] [stderr] --> /opt/rustwide/cargo-home/git/checkouts/failure-3bf9c9326ecc6051/fa39406/failure-1.X/src/lib.rs:98:17 [INFO] [stderr] | [INFO] [stderr] 98 | pub trait Fail: Display + Debug + Send + Sync + 'static { [INFO] [stderr] | ^^^^^^^ required by this bound in `Fail` [INFO] [stderr] = note: this error originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error[E0277]: `errors::SendError` doesn't implement `std::fmt::Display` [INFO] [stderr] --> src/errors.rs:83:10 [INFO] [stderr] | [INFO] [stderr] 83 | #[derive(Fail, Debug, Display)] [INFO] [stderr] | ^^^^ `errors::SendError` cannot be formatted with the default formatter [INFO] [stderr] | [INFO] [stderr] = help: the trait `std::fmt::Display` is not implemented for `errors::SendError` [INFO] [stderr] = note: in format strings you may be able to use `{:?}` (or {:#?} for pretty-print) instead [INFO] [stderr] note: required by a bound in `Fail` [INFO] [stderr] --> /opt/rustwide/cargo-home/git/checkouts/failure-3bf9c9326ecc6051/fa39406/failure-1.X/src/lib.rs:98:17 [INFO] [stderr] | [INFO] [stderr] 98 | pub trait Fail: Display + Debug + Send + Sync + 'static { [INFO] [stderr] | ^^^^^^^ required by this bound in `Fail` [INFO] [stderr] = note: this error originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error[E0277]: `ErrWithContext` doesn't implement `std::fmt::Display` [INFO] [stderr] --> src/errors.rs:110:10 [INFO] [stderr] | [INFO] [stderr] 110 | #[derive(Fail, Display)] [INFO] [stderr] | ^^^^ `ErrWithContext` cannot be formatted with the default formatter [INFO] [stderr] | [INFO] [stderr] = help: the trait `std::fmt::Display` is not implemented for `ErrWithContext` [INFO] [stderr] = note: in format strings you may be able to use `{:?}` (or {:#?} for pretty-print) instead [INFO] [stderr] note: required by a bound in `Fail` [INFO] [stderr] --> /opt/rustwide/cargo-home/git/checkouts/failure-3bf9c9326ecc6051/fa39406/failure-1.X/src/lib.rs:98:17 [INFO] [stderr] | [INFO] [stderr] 98 | pub trait Fail: Display + Debug + Send + Sync + 'static { [INFO] [stderr] | ^^^^^^^ required by this bound in `Fail` [INFO] [stderr] = note: this error originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: aborting due to 8 previous errors [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0277`. [INFO] [stderr] Original diagnostics will follow. [INFO] [stderr] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:25:29 [INFO] [stdout] | [INFO] [stdout] 25 | Generic(#[fail(cause)] Box, TxErrorKind), [INFO] [stdout] | ^^^^ help: use `dyn`: `dyn Fail` [INFO] [stdout] | [INFO] [stdout] = note: `--force-warn bare-trait-objects` implied by `--force-warn rust-2021-compatibility` [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:60:29 [INFO] [stdout] | [INFO] [stdout] 60 | Generic(#[fail(cause)] Box, RecvErrorKind), [INFO] [stdout] | ^^^^ help: use `dyn`: `dyn Fail` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:92:29 [INFO] [stdout] | [INFO] [stdout] 92 | Generic(#[fail(cause)] Box, SendErrorKind), [INFO] [stdout] | ^^^^ help: use `dyn`: `dyn Fail` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:114:15 [INFO] [stdout] | [INFO] [stdout] 114 | context: Box, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Display + Send + Sync + 'static` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:161:30 [INFO] [stdout] | [INFO] [stdout] 161 | let mut current = self as &Fail; [INFO] [stdout] | ^^^^ help: use `dyn`: `dyn Fail` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:25:29 [INFO] [stdout] | [INFO] [stdout] 25 | Generic(#[fail(cause)] Box, TxErrorKind), [INFO] [stdout] | ^^^^ help: use `dyn`: `dyn Fail` [INFO] [stdout] | [INFO] [stdout] = note: `--force-warn bare-trait-objects` implied by `--force-warn rust-2021-compatibility` [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:60:29 [INFO] [stdout] | [INFO] [stdout] 60 | Generic(#[fail(cause)] Box, RecvErrorKind), [INFO] [stdout] | ^^^^ help: use `dyn`: `dyn Fail` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:92:29 [INFO] [stdout] | [INFO] [stdout] 92 | Generic(#[fail(cause)] Box, SendErrorKind), [INFO] [stdout] | ^^^^ help: use `dyn`: `dyn Fail` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:114:15 [INFO] [stdout] | [INFO] [stdout] 114 | context: Box, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Display + Send + Sync + 'static` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:161:30 [INFO] [stdout] | [INFO] [stdout] 161 | let mut current = self as &Fail; [INFO] [stdout] | ^^^^ help: use `dyn`: `dyn Fail` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Migrating src/recv/main.rs from 2018 edition to 2021 [INFO] [stderr] Migrating src/send/main.rs from 2018 edition to 2021 [INFO] [stdout] error[E0557]: feature has been removed [INFO] [stdout] --> src/recv/main.rs:1:12 [INFO] [stdout] | [INFO] [stdout] 1 | #![feature(main)] [INFO] [stdout] | ^^^^ feature has been removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/recv/main_unix.rs:9:14 [INFO] [stdout] | [INFO] [stdout] 9 | fn args() -> (u16) { [INFO] [stdout] | ^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0601]: `main` function not found in crate `katoptron_recv` [INFO] [stdout] --> src/recv/main.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | / #![feature(main)] [INFO] [stdout] 2 | | [INFO] [stdout] 3 | | mod server; [INFO] [stdout] 4 | | [INFO] [stdout] 5 | | #[cfg(unix)] mod status_notifier; [INFO] [stdout] 6 | | #[cfg(unix)] mod main_unix; [INFO] [stdout] 7 | | #[cfg(windows)] fn main() { compile_error!("katoptron-recv is Unix-only"); } [INFO] [stdout] | |____________________________________________________________________________^ the main function must be defined at the crate level (in `src/recv/main.rs`) [INFO] [stdout] | [INFO] [stdout] note: here is a function named `main` [INFO] [stdout] --> src/recv/main_unix.rs:32:1 [INFO] [stdout] | [INFO] [stdout] 32 | / fn main() { [INFO] [stdout] 33 | | let port = args(); [INFO] [stdout] 34 | | crossbeam::scope(|scope| { [INFO] [stdout] 35 | | let (flashes_sender, flashes_receiver) = channel::bounded(8); [INFO] [stdout] ... | [INFO] [stdout] 45 | | }).unwrap(); [INFO] [stdout] 46 | | } [INFO] [stdout] | |_^ [INFO] [stdout] = note: you have one or more functions named `main` not defined at the crate level [INFO] [stdout] = help: consider moving the `main` function definitions [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 2 previous errors; 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0557, E0601. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0557`. [INFO] [stdout] [INFO] [stdout] error[E0557]: feature has been removed [INFO] [stdout] --> src/recv/main.rs:1:12 [INFO] [stdout] | [INFO] [stdout] 1 | #![feature(main)] [INFO] [stdout] | ^^^^ feature has been removed [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `katoptron` due to 3 previous errors; 1 warning emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/recv/main_unix.rs:9:14 [INFO] [stdout] | [INFO] [stdout] 9 | fn args() -> (u16) { [INFO] [stdout] | ^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0557]: feature has been removed [INFO] [stdout] --> src/send/main.rs:1:12 [INFO] [stdout] | [INFO] [stdout] 1 | #![feature(main)] [INFO] [stdout] | ^^^^ feature has been removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to previous error; 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to previous error [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0557`. [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0557`. [INFO] [stdout] [INFO] [stdout] error[E0557]: feature has been removed [INFO] [stdout] --> src/send/main.rs:1:12 [INFO] [stdout] | [INFO] [stdout] 1 | #![feature(main)] [INFO] [stdout] | ^^^^ feature has been removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0601]: `main` function not found in crate `katoptron_send` [INFO] [stdout] --> src/send/main.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | / #![feature(main)] [INFO] [stdout] 2 | | #![feature(proc_macro_hygiene)] [INFO] [stdout] 3 | | #![feature(integer_atomics)] [INFO] [stdout] 4 | | #![feature(box_syntax)] [INFO] [stdout] ... | [INFO] [stdout] 10 | | //#[cfg(unix)] fn main() { compile_error!("katoptron-send is Windows-only"); } [INFO] [stdout] 11 | | #[cfg(unix)] mod proto_unix; [INFO] [stdout] | |____________________________^ the main function must be defined at the crate level (in `src/send/main.rs`) [INFO] [stdout] | [INFO] [stdout] note: here is a function named `main` [INFO] [stdout] --> src/send/proto_unix.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | / fn main() { [INFO] [stdout] 10 | | let (server_address, _config_path) = cli::args(); [INFO] [stdout] 11 | | let (tx, rx) = channel::bounded(8); [INFO] [stdout] 12 | | [INFO] [stdout] ... | [INFO] [stdout] 25 | | }).unwrap(); [INFO] [stdout] 26 | | } [INFO] [stdout] | |_^ [INFO] [stdout] = note: you have one or more functions named `main` not defined at the crate level [INFO] [stdout] = help: consider moving the `main` function definitions [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 2 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0557, E0601. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0557`. [INFO] [stdout] [INFO] [stderr] error: build failed [INFO] [stderr] error: failed to migrate to next edition [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `cargo fix --edition --allow-no-vcs --allow-dirty --frozen --all --all-targets --message-format=json` (exit status: 101) [INFO] running `Command { std: "docker" "inspect" "4f0c876e00b7df49306bcfbc11cda9cfd83d85e88bfadc0e150e2761739434c4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4f0c876e00b7df49306bcfbc11cda9cfd83d85e88bfadc0e150e2761739434c4", kill_on_drop: false }` [INFO] [stdout] 4f0c876e00b7df49306bcfbc11cda9cfd83d85e88bfadc0e150e2761739434c4