[INFO] fetching crate rpg 0.0.2...
[INFO] testing rpg-0.0.2 against beta-2025-10-28 for beta-1.92-2
[INFO] extracting crate rpg 0.0.2 into /workspace/builds/worker-2-tc2/source
[INFO] started tweaking crates.io crate rpg 0.0.2
[INFO] finished tweaking crates.io crate rpg 0.0.2
[INFO] tweaked toml for crates.io crate rpg 0.0.2 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate rpg 0.0.2 on toolchain beta-2025-10-28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-10-28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-10-28" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 12 packages to latest compatible versions
[INFO] [stderr]       Adding names v0.11.0 (available: v0.14.0)
[INFO] [stderr]       Adding rand v0.3.23 (available: v0.9.2)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-10-28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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" "+beta-2025-10-28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 21a3def5275b0b633ddb5fa8e75669c09f7974a15a2737c56a26907ceb6b39e9
[INFO] running `Command { std: "docker" "start" "-a" "21a3def5275b0b633ddb5fa8e75669c09f7974a15a2737c56a26907ceb6b39e9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "21a3def5275b0b633ddb5fa8e75669c09f7974a15a2737c56a26907ceb6b39e9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "21a3def5275b0b633ddb5fa8e75669c09f7974a15a2737c56a26907ceb6b39e9", kill_on_drop: false }`
[INFO] [stdout] 21a3def5275b0b633ddb5fa8e75669c09f7974a15a2737c56a26907ceb6b39e9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-10-28" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 355c452730a246f039d7f7ddb8434263229681f74b538eaa984c0385155faf58
[INFO] running `Command { std: "docker" "start" "-a" "355c452730a246f039d7f7ddb8434263229681f74b538eaa984c0385155faf58", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling libc v0.2.177
[INFO] [stderr]    Compiling names v0.11.0
[INFO] [stderr]    Compiling rand v0.4.6
[INFO] [stderr]    Compiling rand v0.3.23
[INFO] [stderr]    Compiling rpg v0.0.2 (/opt/rustwide/workdir)
[INFO] [stdout] error: cannot find derive macro `RustcEncodable` in this scope
[INFO] [stdout]  --> src/world/two_dimensional.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(RustcEncodable, RustcDecodable, Clone)]
[INFO] [stdout]   |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `RustcDecodable` in this scope
[INFO] [stdout]  --> src/world/two_dimensional.rs:6:26
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(RustcEncodable, RustcDecodable, Clone)]
[INFO] [stdout]   |                          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `RustcEncodable` in this scope
[INFO] [stdout]   --> src/world/two_dimensional.rs:40:10
[INFO] [stdout]    |
[INFO] [stdout] 40 | #[derive(RustcEncodable, RustcDecodable, Clone)]
[INFO] [stdout]    |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `RustcDecodable` in this scope
[INFO] [stdout]   --> src/world/two_dimensional.rs:40:26
[INFO] [stdout]    |
[INFO] [stdout] 40 | #[derive(RustcEncodable, RustcDecodable, Clone)]
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `RustcEncodable` in this scope
[INFO] [stdout]   --> src/world/two_dimensional.rs:71:10
[INFO] [stdout]    |
[INFO] [stdout] 71 | #[derive(RustcEncodable, RustcDecodable)]
[INFO] [stdout]    |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `RustcDecodable` in this scope
[INFO] [stdout]   --> src/world/two_dimensional.rs:71:26
[INFO] [stdout]    |
[INFO] [stdout] 71 | #[derive(RustcEncodable, RustcDecodable)]
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `RustcEncodable` in this scope
[INFO] [stdout]    --> src/world/two_dimensional.rs:121:10
[INFO] [stdout]     |
[INFO] [stdout] 121 | #[derive(RustcEncodable, RustcDecodable)]
[INFO] [stdout]     |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `RustcDecodable` in this scope
[INFO] [stdout]    --> src/world/two_dimensional.rs:121:26
[INFO] [stdout]     |
[INFO] [stdout] 121 | #[derive(RustcEncodable, RustcDecodable)]
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/item.rs:135:14
[INFO] [stdout]     |
[INFO] [stdout] 135 |             0...250 => {
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/item.rs:138:22
[INFO] [stdout]     |
[INFO] [stdout] 138 |                     0...500 => ItemType::ConsumableFood,
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/item.rs:139:24
[INFO] [stdout]     |
[INFO] [stdout] 139 |                     501...1000 => ItemType::ConsumablePotion,
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/item.rs:143:16
[INFO] [stdout]     |
[INFO] [stdout] 143 |             251...500 => {
[INFO] [stdout]     |                ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/item.rs:146:22
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     0...250 => ItemType::ArmorHead,
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/item.rs:147:24
[INFO] [stdout]     |
[INFO] [stdout] 147 |                     251...500 => ItemType::ArmorChest,
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/item.rs:148:24
[INFO] [stdout]     |
[INFO] [stdout] 148 |                     501...750 => ItemType::ArmorLegs,
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/item.rs:149:24
[INFO] [stdout]     |
[INFO] [stdout] 149 |                     751...1000 => ItemType::ArmorFeet,
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/item.rs:153:16
[INFO] [stdout]     |
[INFO] [stdout] 153 |             501...750 => {
[INFO] [stdout]     |                ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/item.rs:156:22
[INFO] [stdout]     |
[INFO] [stdout] 156 |                     0...333 => ItemType::WeaponHammer,
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/item.rs:157:24
[INFO] [stdout]     |
[INFO] [stdout] 157 |                     334...666 => ItemType::WeaponSword,
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/item.rs:158:24
[INFO] [stdout]     |
[INFO] [stdout] 158 |                     667...1000 => ItemType::WeaponWand,
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/item.rs:162:16
[INFO] [stdout]     |
[INFO] [stdout] 162 |             751...1000 => {
[INFO] [stdout]     |                ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/item.rs:165:22
[INFO] [stdout]     |
[INFO] [stdout] 165 |                     0...500 => ItemType::Usable,
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/item.rs:166:24
[INFO] [stdout]     |
[INFO] [stdout] 166 |                     501...1000 => ItemType::Prop,
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/item.rs:195:14
[INFO] [stdout]     |
[INFO] [stdout] 195 |             0...750 => ItemRarity::Common,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/item.rs:196:16
[INFO] [stdout]     |
[INFO] [stdout] 196 |             751...917 => ItemRarity::Uncommon,
[INFO] [stdout]     |                ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/item.rs:197:16
[INFO] [stdout]     |
[INFO] [stdout] 197 |             918...972 => ItemRarity::Rare,
[INFO] [stdout]     |                ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/item.rs:198:16
[INFO] [stdout]     |
[INFO] [stdout] 198 |             873...979 => ItemRarity::Epic,
[INFO] [stdout]     |                ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/item.rs:199:16
[INFO] [stdout]     |
[INFO] [stdout] 199 |             980...1000 => ItemRarity::Legendary,
[INFO] [stdout]     |                ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/behaviour/custom.rs:6:18
[INFO] [stdout]   |
[INFO] [stdout] 6 |     handler: Box<Fn(Event) -> Event>,
[INFO] [stdout]   |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 6 |     handler: Box<dyn Fn(Event) -> Event>,
[INFO] [stdout]   |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/entity.rs:7:24
[INFO] [stdout]   |
[INFO] [stdout] 7 |     behaviour: Vec<Box<Behaviour>>,
[INFO] [stdout]   |                        ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 7 |     behaviour: Vec<Box<dyn Behaviour>>,
[INFO] [stdout]   |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Campagne: Encodable` is not satisfied
[INFO] [stdout]    --> src/world/two_dimensional.rs:149:43
[INFO] [stdout]     |
[INFO] [stdout] 149 |         let campagne = match json::encode(self) {
[INFO] [stdout]     |                              ------------ ^^^^ unsatisfied trait bound
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Encodable` is not implemented for `Campagne`
[INFO] [stdout]    --> src/world/two_dimensional.rs:122:1
[INFO] [stdout]     |
[INFO] [stdout] 122 | pub struct Campagne {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: the following other types implement trait `Encodable`:
[INFO] [stdout]               &'a T
[INFO] [stdout]               ()
[INFO] [stdout]               (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)
[INFO] [stdout]               (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)
[INFO] [stdout]               (T10, T11)
[INFO] [stdout]               (T11,)
[INFO] [stdout]               (T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)
[INFO] [stdout]               (T3, T4, T5, T6, T7, T8, T9, T10, T11)
[INFO] [stdout]             and 75 others
[INFO] [stdout] note: required by a bound in `rustc_serialize::json::encode`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rustc-serialize-0.3.25/src/json.rs:390:18
[INFO] [stdout]     |
[INFO] [stdout] 390 | pub fn encode<T: ::Encodable>(object: &T) -> EncodeResult<string::String> {
[INFO] [stdout]     |                  ^^^^^^^^^^^ required by this bound in `encode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Campagne: Decodable` is not satisfied
[INFO] [stdout]    --> src/world/two_dimensional.rs:173:15
[INFO] [stdout]     |
[INFO] [stdout] 173 |         match json::decode(s.as_str()) {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Decodable` is not implemented for `Campagne`
[INFO] [stdout]    --> src/world/two_dimensional.rs:122:1
[INFO] [stdout]     |
[INFO] [stdout] 122 | pub struct Campagne {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: the following other types implement trait `Decodable`:
[INFO] [stdout]               ()
[INFO] [stdout]               (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)
[INFO] [stdout]               (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)
[INFO] [stdout]               (T10, T11)
[INFO] [stdout]               (T11,)
[INFO] [stdout]               (T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)
[INFO] [stdout]               (T3, T4, T5, T6, T7, T8, T9, T10, T11)
[INFO] [stdout]               (T4, T5, T6, T7, T8, T9, T10, T11)
[INFO] [stdout]             and 71 others
[INFO] [stdout] note: required by a bound in `rustc_serialize::json::decode`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rustc-serialize-0.3.25/src/json.rs:379:18
[INFO] [stdout]     |
[INFO] [stdout] 379 | pub fn decode<T: ::Decodable>(s: &str) -> DecodeResult<T> {
[INFO] [stdout]     |                  ^^^^^^^^^^^ required by this bound in `decode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rpg` (lib) due to 10 previous errors; 22 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "355c452730a246f039d7f7ddb8434263229681f74b538eaa984c0385155faf58", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "355c452730a246f039d7f7ddb8434263229681f74b538eaa984c0385155faf58", kill_on_drop: false }`
[INFO] [stdout] 355c452730a246f039d7f7ddb8434263229681f74b538eaa984c0385155faf58
