[INFO] cloning repository https://github.com/arlopurcell/esytheism [INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/arlopurcell/esytheism" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Farlopurcell%2Fesytheism"` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Farlopurcell%2Fesytheism'... [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] d4d855bc4b4021459fe3ec4bc2b087155399334e [INFO] checking arlopurcell/esytheism against master#2748a9fd93dd1a00a4521f4f16de5befbf77f6cd for pr-62262-1 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Farlopurcell%2Fesytheism" "/workspace/builds/worker-12/source"` [INFO] [stderr] Cloning into '/workspace/builds/worker-12/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/arlopurcell/esytheism on toolchain 2748a9fd93dd1a00a4521f4f16de5befbf77f6cd [INFO] running `"/workspace/cargo-home/bin/cargo" "+2748a9fd93dd1a00a4521f4f16de5befbf77f6cd" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking git repo https://github.com/arlopurcell/esytheism [INFO] finished tweaking git repo https://github.com/arlopurcell/esytheism [INFO] tweaked toml for git repo https://github.com/arlopurcell/esytheism written to /workspace/builds/worker-12/source/Cargo.toml [INFO] crate git repo https://github.com/arlopurcell/esytheism already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+2748a9fd93dd1a00a4521f4f16de5befbf77f6cd" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/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" "MAP_USER_ID=0" "-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" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+2748a9fd93dd1a00a4521f4f16de5befbf77f6cd" "check" "--frozen" "--all" "--all-targets"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 1cf5ad98e363b64d68b622652528395864c476491560fc982eb7c82647f06c4e [INFO] running `"docker" "start" "-a" "1cf5ad98e363b64d68b622652528395864c476491560fc982eb7c82647f06c4e"` [INFO] [stderr] Compiling proc-macro2 v0.4.27 [INFO] [stderr] Checking rand_os v0.1.3 [INFO] [stderr] Checking rusttype v0.7.5 [INFO] [stderr] Checking generic-array v0.12.0 [INFO] [stderr] Checking alga v0.8.2 [INFO] [stderr] Checking rayon-core v1.4.1 [INFO] [stderr] Checking rodio v0.8.1 [INFO] [stderr] Checking rand v0.6.5 [INFO] [stderr] Checking andrew v0.2.1 [INFO] [stderr] Checking rayon v1.0.3 [INFO] [stderr] Compiling quote v0.6.12 [INFO] [stderr] Compiling syn v0.15.30 [INFO] [stderr] Compiling wayland-scanner v0.21.12 [INFO] [stderr] Checking parking_lot_core v0.4.0 [INFO] [stderr] Checking nalgebra v0.17.3 [INFO] [stderr] Checking parking_lot v0.7.1 [INFO] [stderr] Compiling wayland-client v0.21.12 [INFO] [stderr] Compiling wayland-protocols v0.21.12 [INFO] [stderr] Checking jpeg-decoder v0.1.15 [INFO] [stderr] Compiling synstructure v0.10.1 [INFO] [stderr] Compiling euclid_macros v0.1.0 [INFO] [stderr] Compiling failure_derive v0.1.5 [INFO] [stderr] Compiling num-derive v0.2.4 [INFO] [stderr] Compiling serde_derive v1.0.90 [INFO] [stderr] Checking smithay-client-toolkit v0.4.5 [INFO] [stderr] Checking failure v0.1.5 [INFO] [stderr] Checking euclid v0.19.8 [INFO] [stderr] Checking xmlparser v0.3.0 [INFO] [stderr] Checking tiff v0.2.2 [INFO] [stderr] Checking lyon_geom v0.12.4 [INFO] [stderr] Checking svgparser v0.8.1 [INFO] [stderr] Checking image v0.21.0 [INFO] [stderr] Checking lyon_path v0.13.1 [INFO] [stderr] Checking lyon_svg v0.13.0 [INFO] [stderr] Checking lyon_algorithms v0.13.1 [INFO] [stderr] Checking lyon_tessellation v0.13.1 [INFO] [stderr] Checking lyon_extra v0.13.0 [INFO] [stderr] Checking serde v1.0.90 [INFO] [stderr] Checking winit v0.19.1 [INFO] [stderr] Checking lyon v0.13.1 [INFO] [stderr] Checking glutin v0.20.0 [INFO] [stderr] Checking serde_json v1.0.39 [INFO] [stderr] Checking ncollide2d v0.18.4 [INFO] [stderr] Checking quicksilver v0.3.11 [INFO] [stderr] Checking esytheism v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused imports: `Distribution`, `Normal`, `Uniform` [INFO] [stderr] --> src/gamestate.rs:1:27 [INFO] [stderr] | [INFO] [stderr] 1 | use rand::distributions::{Distribution, Normal, Uniform}; [INFO] [stderr] | ^^^^^^^^^^^^ ^^^^^^ ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Asset`, `Background::Col`, `Background::Img`, `ButtonState`, `Circle`, `Color`, `Event`, `FontStyle`, `Font`, `Image`, `Key`, `Rectangle`, `Result`, `Settings`, `Window`, `run` [INFO] [stderr] --> src/gamestate.rs:5:12 [INFO] [stderr] | [INFO] [stderr] 5 | geom::{Circle, Rectangle, Vector}, [INFO] [stderr] | ^^^^^^ ^^^^^^^^^ [INFO] [stderr] 6 | graphics::{Background::Col, Background::Img, Color, Font, FontStyle, Image}, [INFO] [stderr] | ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^ ^^^^ ^^^^^^^^^ ^^^^^ [INFO] [stderr] 7 | input::{ButtonState, Key}, [INFO] [stderr] | ^^^^^^^^^^^ ^^^ [INFO] [stderr] 8 | lifecycle::{run, Asset, Event, Settings, State, Window}, [INFO] [stderr] | ^^^ ^^^^^ ^^^^^ ^^^^^^^^ ^^^^^^ [INFO] [stderr] 9 | load_file, Future, Result, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashMap` [INFO] [stderr] --> src/gamestate.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use std::collections::HashMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::fs::File` [INFO] [stderr] --> src/gamestate.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | use std::fs::File; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::prelude::*` [INFO] [stderr] --> src/gamestate.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use std::io::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::BufReader` [INFO] [stderr] --> src/gamestate.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use std::io::BufReader; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::num::Wrapping` [INFO] [stderr] --> src/gamestate.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | use std::num::Wrapping; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::u32` [INFO] [stderr] --> src/gamestate.rs:19:5 [INFO] [stderr] | [INFO] [stderr] 19 | use std::u32; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rand::prelude::*` [INFO] [stderr] --> src/gamestate.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | use rand::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Inventory` [INFO] [stderr] --> src/human.rs:2:19 [INFO] [stderr] | [INFO] [stderr] 2 | use crate::item::{Inventory, Item, ItemMessage}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::plant::Crop` [INFO] [stderr] --> src/human.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use crate::plant::Crop; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `channel` [INFO] [stderr] --> src/item.rs:2:23 [INFO] [stderr] | [INFO] [stderr] 2 | use std::sync::mpsc::{channel, Receiver, Sender}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Inventory` [INFO] [stderr] --> src/plant.rs:5:19 [INFO] [stderr] | [INFO] [stderr] 5 | use crate::item::{Inventory, Item, ItemMessage}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Distribution`, `Normal`, `Uniform` [INFO] [stderr] --> src/main.rs:9:27 [INFO] [stderr] | [INFO] [stderr] 9 | use rand::distributions::{Distribution, Normal, Uniform}; [INFO] [stderr] | ^^^^^^^^^^^^ ^^^^^^ ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Circle`, `Future`, `Image`, `Transform`, `View`, `load_file` [INFO] [stderr] --> src/main.rs:13:12 [INFO] [stderr] | [INFO] [stderr] 13 | geom::{Circle, Rectangle, Vector, Transform}, [INFO] [stderr] | ^^^^^^ ^^^^^^^^^ [INFO] [stderr] 14 | graphics::{Background::Col, Background::Img, Color, Font, FontStyle, Image, View}, [INFO] [stderr] | ^^^^^ ^^^^ [INFO] [stderr] ... [INFO] [stderr] 17 | load_file, Future, Result, [INFO] [stderr] | ^^^^^^^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashMap` [INFO] [stderr] --> src/main.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | use std::collections::HashMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::fs::File` [INFO] [stderr] --> src/main.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | use std::fs::File; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::prelude::*` [INFO] [stderr] --> src/main.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | use std::io::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::BufReader` [INFO] [stderr] --> src/main.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 23 | use std::io::BufReader; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::num::Wrapping` [INFO] [stderr] --> src/main.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | use std::num::Wrapping; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Receiver`, `Sender`, `channel` [INFO] [stderr] --> src/main.rs:25:23 [INFO] [stderr] | [INFO] [stderr] 25 | use std::sync::mpsc::{channel, Receiver, Sender}; [INFO] [stderr] | ^^^^^^^ ^^^^^^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rand::prelude::*` [INFO] [stderr] --> src/main.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | use rand::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Geography` [INFO] [stderr] --> src/main.rs:32:24 [INFO] [stderr] | [INFO] [stderr] 32 | use crate::geography::{Geography, TilePoint}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Human`, `Job`, `Mind` [INFO] [stderr] --> src/main.rs:33:20 [INFO] [stderr] | [INFO] [stderr] 33 | use crate::human::{Human, Job, Mind}; [INFO] [stderr] | ^^^^^ ^^^ ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Inventory`, `ItemMessage`, `Item` [INFO] [stderr] --> src/main.rs:34:19 [INFO] [stderr] | [INFO] [stderr] 34 | use crate::item::{Inventory, Item, ItemMessage}; [INFO] [stderr] | ^^^^^^^^^ ^^^^ ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::plant::Crop` [INFO] [stderr] --> src/main.rs:35:5 [INFO] [stderr] | [INFO] [stderr] 35 | use crate::plant::Crop; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::weather::Weather` [INFO] [stderr] --> src/main.rs:36:5 [INFO] [stderr] | [INFO] [stderr] 36 | use crate::weather::Weather; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Container`, `Time`, `World` [INFO] [stderr] --> src/main.rs:37:20 [INFO] [stderr] | [INFO] [stderr] 37 | use crate::world::{Container, Time, World}; [INFO] [stderr] | ^^^^^^^^^ ^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Distribution`, `Normal`, `Uniform` [INFO] [stderr] --> src/gamestate.rs:1:27 [INFO] [stderr] | [INFO] [stderr] 1 | use rand::distributions::{Distribution, Normal, Uniform}; [INFO] [stderr] | ^^^^^^^^^^^^ ^^^^^^ ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Asset`, `Background::Col`, `Background::Img`, `ButtonState`, `Circle`, `Color`, `Event`, `FontStyle`, `Font`, `Image`, `Key`, `Rectangle`, `Result`, `Settings`, `Window`, `run` [INFO] [stderr] --> src/gamestate.rs:5:12 [INFO] [stderr] | [INFO] [stderr] 5 | geom::{Circle, Rectangle, Vector}, [INFO] [stderr] | ^^^^^^ ^^^^^^^^^ [INFO] [stderr] 6 | graphics::{Background::Col, Background::Img, Color, Font, FontStyle, Image}, [INFO] [stderr] | ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^ ^^^^ ^^^^^^^^^ ^^^^^ [INFO] [stderr] 7 | input::{ButtonState, Key}, [INFO] [stderr] | ^^^^^^^^^^^ ^^^ [INFO] [stderr] 8 | lifecycle::{run, Asset, Event, Settings, State, Window}, [INFO] [stderr] | ^^^ ^^^^^ ^^^^^ ^^^^^^^^ ^^^^^^ [INFO] [stderr] 9 | load_file, Future, Result, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashMap` [INFO] [stderr] --> src/gamestate.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use std::collections::HashMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::fs::File` [INFO] [stderr] --> src/gamestate.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | use std::fs::File; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::prelude::*` [INFO] [stderr] --> src/gamestate.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use std::io::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::BufReader` [INFO] [stderr] --> src/gamestate.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use std::io::BufReader; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::num::Wrapping` [INFO] [stderr] --> src/gamestate.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | use std::num::Wrapping; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::u32` [INFO] [stderr] --> src/gamestate.rs:19:5 [INFO] [stderr] | [INFO] [stderr] 19 | use std::u32; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rand::prelude::*` [INFO] [stderr] --> src/gamestate.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | use rand::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Inventory` [INFO] [stderr] --> src/human.rs:2:19 [INFO] [stderr] | [INFO] [stderr] 2 | use crate::item::{Inventory, Item, ItemMessage}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::plant::Crop` [INFO] [stderr] --> src/human.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use crate::plant::Crop; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `channel` [INFO] [stderr] --> src/item.rs:2:23 [INFO] [stderr] | [INFO] [stderr] 2 | use std::sync::mpsc::{channel, Receiver, Sender}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Inventory` [INFO] [stderr] --> src/plant.rs:5:19 [INFO] [stderr] | [INFO] [stderr] 5 | use crate::item::{Inventory, Item, ItemMessage}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Distribution`, `Normal`, `Uniform` [INFO] [stderr] --> src/main.rs:9:27 [INFO] [stderr] | [INFO] [stderr] 9 | use rand::distributions::{Distribution, Normal, Uniform}; [INFO] [stderr] | ^^^^^^^^^^^^ ^^^^^^ ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Circle`, `Future`, `Image`, `Transform`, `View`, `load_file` [INFO] [stderr] --> src/main.rs:13:12 [INFO] [stderr] | [INFO] [stderr] 13 | geom::{Circle, Rectangle, Vector, Transform}, [INFO] [stderr] | ^^^^^^ ^^^^^^^^^ [INFO] [stderr] 14 | graphics::{Background::Col, Background::Img, Color, Font, FontStyle, Image, View}, [INFO] [stderr] | ^^^^^ ^^^^ [INFO] [stderr] ... [INFO] [stderr] 17 | load_file, Future, Result, [INFO] [stderr] | ^^^^^^^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashMap` [INFO] [stderr] --> src/main.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | use std::collections::HashMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::fs::File` [INFO] [stderr] --> src/main.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | use std::fs::File; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::prelude::*` [INFO] [stderr] --> src/main.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | use std::io::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::BufReader` [INFO] [stderr] --> src/main.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 23 | use std::io::BufReader; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::num::Wrapping` [INFO] [stderr] --> src/main.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | use std::num::Wrapping; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Receiver`, `Sender`, `channel` [INFO] [stderr] --> src/main.rs:25:23 [INFO] [stderr] | [INFO] [stderr] 25 | use std::sync::mpsc::{channel, Receiver, Sender}; [INFO] [stderr] | ^^^^^^^ ^^^^^^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rand::prelude::*` [INFO] [stderr] --> src/main.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | use rand::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Geography` [INFO] [stderr] --> src/main.rs:32:24 [INFO] [stderr] | [INFO] [stderr] 32 | use crate::geography::{Geography, TilePoint}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Human`, `Job`, `Mind` [INFO] [stderr] --> src/main.rs:33:20 [INFO] [stderr] | [INFO] [stderr] 33 | use crate::human::{Human, Job, Mind}; [INFO] [stderr] | ^^^^^ ^^^ ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Inventory`, `ItemMessage`, `Item` [INFO] [stderr] --> src/main.rs:34:19 [INFO] [stderr] | [INFO] [stderr] 34 | use crate::item::{Inventory, Item, ItemMessage}; [INFO] [stderr] | ^^^^^^^^^ ^^^^ ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::plant::Crop` [INFO] [stderr] --> src/main.rs:35:5 [INFO] [stderr] | [INFO] [stderr] 35 | use crate::plant::Crop; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::weather::Weather` [INFO] [stderr] --> src/main.rs:36:5 [INFO] [stderr] | [INFO] [stderr] 36 | use crate::weather::Weather; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Container`, `Time`, `World` [INFO] [stderr] --> src/main.rs:37:20 [INFO] [stderr] | [INFO] [stderr] 37 | use crate::world::{Container, Time, World}; [INFO] [stderr] | ^^^^^^^^^ ^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `State` [INFO] [stderr] --> src/gamestate.rs:8:46 [INFO] [stderr] | [INFO] [stderr] 8 | lifecycle::{run, Asset, Event, Settings, State, Window}, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rayon::prelude` [INFO] [stderr] --> src/main.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use rayon::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `human_loc` [INFO] [stderr] --> src/main.rs:104:21 [INFO] [stderr] | [INFO] [stderr] 104 | let human_loc = TilePoint::from_vector(&self.game_state.world.humans[0].location); [INFO] [stderr] | ^^^^^^^^^ help: consider prefixing with an underscore: `_human_loc` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/gamestate.rs:59:13 [INFO] [stderr] | [INFO] [stderr] 59 | let mut crop = Crop::new(Vector::new(29.5, 16.5), gs.create_inventory(10.0)); [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/gamestate.rs:72:13 [INFO] [stderr] | [INFO] [stderr] 72 | let mut food_box = Container { [INFO] [stderr] | ----^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Money` [INFO] [stderr] --> src/item.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | Money, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Container` [INFO] [stderr] --> src/main.rs:58:5 [INFO] [stderr] | [INFO] [stderr] 58 | Container(usize), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/main.rs:204:13 [INFO] [stderr] | [INFO] [stderr] 204 | / self.font.execute(|font| { [INFO] [stderr] 205 | | window.draw(&Rectangle::new(((SCREEN_SIZE.x - 400.0) / 2.0, SCREEN_SIZE.y - 50.0), (400, 50)), Col(Color::BLACK)); [INFO] [stderr] 206 | | let style = FontStyle::new(48.0, Color::WHITE); [INFO] [stderr] 207 | | let text = format!("state: {}", mind.state()); [INFO] [stderr] ... | [INFO] [stderr] 213 | | Ok(()) [INFO] [stderr] 214 | | }); [INFO] [stderr] | |_______________^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/main.rs:218:9 [INFO] [stderr] | [INFO] [stderr] 218 | / self.font.execute(|font| { [INFO] [stderr] 219 | | window.draw(&Rectangle::new((SCREEN_SIZE.x - 230.0, 0), (230, 20)), Col(Color::BLACK)); [INFO] [stderr] 220 | | let style = FontStyle::new(18.0, Color::WHITE); [INFO] [stderr] 221 | | let time_img = font.render(&world_time.date_string(), &style).unwrap(); [INFO] [stderr] ... | [INFO] [stderr] 226 | | Ok(()) [INFO] [stderr] 227 | | }); [INFO] [stderr] | |___________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/main.rs:254:13 [INFO] [stderr] | [INFO] [stderr] 254 | / self.font.execute(|font| { [INFO] [stderr] 255 | | let style = FontStyle::new(14.0, Color::WHITE); [INFO] [stderr] 256 | | for (index, line) in lines.iter().enumerate() { [INFO] [stderr] 257 | | let text_img = font.render(&line, &style).unwrap(); [INFO] [stderr] ... | [INFO] [stderr] 263 | | Ok(()) [INFO] [stderr] 264 | | }); [INFO] [stderr] | |_______________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/human.rs:408:25 [INFO] [stderr] | [INFO] [stderr] 408 | / inventory_senders[human.inventory_id] [INFO] [stderr] 409 | | .send(ItemMessage::Remove(Item::Food, 1)); [INFO] [stderr] | |______________________________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/human.rs:414:29 [INFO] [stderr] | [INFO] [stderr] 414 | / ... inventory_senders[target_inventory_id].send(ItemMessage::Take( [INFO] [stderr] 415 | | ... Item::Food, [INFO] [stderr] 416 | | ... self.meal_size.min(human.hunger as u32), [INFO] [stderr] 417 | | ... human.inventory_id, [INFO] [stderr] 418 | | ... )); [INFO] [stderr] | |_________________________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/human.rs:433:37 [INFO] [stderr] | [INFO] [stderr] 433 | / ... inventory_senders[target_inventory_id].send(ItemMessage::Take( [INFO] [stderr] 434 | | ... Item::Food, [INFO] [stderr] 435 | | ... 50, [INFO] [stderr] 436 | | ... human.inventory_id, [INFO] [stderr] 437 | | ... )); // TODO calculate remaining capacity in think/perceive and use that [INFO] [stderr] | |_________________________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/human.rs:445:33 [INFO] [stderr] | [INFO] [stderr] 445 | / ... inventory_senders[human.inventory_id].send(ItemMessage::Transfer( [INFO] [stderr] 446 | | ... human.inventory_id, [INFO] [stderr] 447 | | ... Item::Food, [INFO] [stderr] 448 | | ... 100, [INFO] [stderr] 449 | | ... target_inventory_id, [INFO] [stderr] 450 | | ... )); // TODO is this the best way to give all? [INFO] [stderr] | |_________________________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/plant.rs:24:9 [INFO] [stderr] | [INFO] [stderr] 24 | sender.send(ItemMessage::GiveOrDrop(Item::Water, rain)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/plant.rs:29:13 [INFO] [stderr] | [INFO] [stderr] 29 | / sender.send(ItemMessage::Trade( [INFO] [stderr] 30 | | (Item::Food, 1), [INFO] [stderr] 31 | | (Item::Water, 1), [INFO] [stderr] 32 | | self.inventory_id, [INFO] [stderr] 33 | | )); [INFO] [stderr] | |_______________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused import: `State` [INFO] [stderr] --> src/gamestate.rs:8:46 [INFO] [stderr] | [INFO] [stderr] 8 | lifecycle::{run, Asset, Event, Settings, State, Window}, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rayon::prelude` [INFO] [stderr] --> src/main.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use rayon::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `human_loc` [INFO] [stderr] --> src/main.rs:104:21 [INFO] [stderr] | [INFO] [stderr] 104 | let human_loc = TilePoint::from_vector(&self.game_state.world.humans[0].location); [INFO] [stderr] | ^^^^^^^^^ help: consider prefixing with an underscore: `_human_loc` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/gamestate.rs:59:13 [INFO] [stderr] | [INFO] [stderr] 59 | let mut crop = Crop::new(Vector::new(29.5, 16.5), gs.create_inventory(10.0)); [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/gamestate.rs:72:13 [INFO] [stderr] | [INFO] [stderr] 72 | let mut food_box = Container { [INFO] [stderr] | ----^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Money` [INFO] [stderr] --> src/item.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | Money, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Container` [INFO] [stderr] --> src/main.rs:58:5 [INFO] [stderr] | [INFO] [stderr] 58 | Container(usize), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/main.rs:204:13 [INFO] [stderr] | [INFO] [stderr] 204 | / self.font.execute(|font| { [INFO] [stderr] 205 | | window.draw(&Rectangle::new(((SCREEN_SIZE.x - 400.0) / 2.0, SCREEN_SIZE.y - 50.0), (400, 50)), Col(Color::BLACK)); [INFO] [stderr] 206 | | let style = FontStyle::new(48.0, Color::WHITE); [INFO] [stderr] 207 | | let text = format!("state: {}", mind.state()); [INFO] [stderr] ... | [INFO] [stderr] 213 | | Ok(()) [INFO] [stderr] 214 | | }); [INFO] [stderr] | |_______________^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/main.rs:218:9 [INFO] [stderr] | [INFO] [stderr] 218 | / self.font.execute(|font| { [INFO] [stderr] 219 | | window.draw(&Rectangle::new((SCREEN_SIZE.x - 230.0, 0), (230, 20)), Col(Color::BLACK)); [INFO] [stderr] 220 | | let style = FontStyle::new(18.0, Color::WHITE); [INFO] [stderr] 221 | | let time_img = font.render(&world_time.date_string(), &style).unwrap(); [INFO] [stderr] ... | [INFO] [stderr] 226 | | Ok(()) [INFO] [stderr] 227 | | }); [INFO] [stderr] | |___________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/main.rs:254:13 [INFO] [stderr] | [INFO] [stderr] 254 | / self.font.execute(|font| { [INFO] [stderr] 255 | | let style = FontStyle::new(14.0, Color::WHITE); [INFO] [stderr] 256 | | for (index, line) in lines.iter().enumerate() { [INFO] [stderr] 257 | | let text_img = font.render(&line, &style).unwrap(); [INFO] [stderr] ... | [INFO] [stderr] 263 | | Ok(()) [INFO] [stderr] 264 | | }); [INFO] [stderr] | |_______________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/human.rs:408:25 [INFO] [stderr] | [INFO] [stderr] 408 | / inventory_senders[human.inventory_id] [INFO] [stderr] 409 | | .send(ItemMessage::Remove(Item::Food, 1)); [INFO] [stderr] | |______________________________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/human.rs:414:29 [INFO] [stderr] | [INFO] [stderr] 414 | / ... inventory_senders[target_inventory_id].send(ItemMessage::Take( [INFO] [stderr] 415 | | ... Item::Food, [INFO] [stderr] 416 | | ... self.meal_size.min(human.hunger as u32), [INFO] [stderr] 417 | | ... human.inventory_id, [INFO] [stderr] 418 | | ... )); [INFO] [stderr] | |_________________________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/human.rs:433:37 [INFO] [stderr] | [INFO] [stderr] 433 | / ... inventory_senders[target_inventory_id].send(ItemMessage::Take( [INFO] [stderr] 434 | | ... Item::Food, [INFO] [stderr] 435 | | ... 50, [INFO] [stderr] 436 | | ... human.inventory_id, [INFO] [stderr] 437 | | ... )); // TODO calculate remaining capacity in think/perceive and use that [INFO] [stderr] | |_________________________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/human.rs:445:33 [INFO] [stderr] | [INFO] [stderr] 445 | / ... inventory_senders[human.inventory_id].send(ItemMessage::Transfer( [INFO] [stderr] 446 | | ... human.inventory_id, [INFO] [stderr] 447 | | ... Item::Food, [INFO] [stderr] 448 | | ... 100, [INFO] [stderr] 449 | | ... target_inventory_id, [INFO] [stderr] 450 | | ... )); // TODO is this the best way to give all? [INFO] [stderr] | |_________________________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/plant.rs:24:9 [INFO] [stderr] | [INFO] [stderr] 24 | sender.send(ItemMessage::GiveOrDrop(Item::Water, rain)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/plant.rs:29:13 [INFO] [stderr] | [INFO] [stderr] 29 | / sender.send(ItemMessage::Trade( [INFO] [stderr] 30 | | (Item::Food, 1), [INFO] [stderr] 31 | | (Item::Water, 1), [INFO] [stderr] 32 | | self.inventory_id, [INFO] [stderr] 33 | | )); [INFO] [stderr] | |_______________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 3m 04s [INFO] running `"docker" "inspect" "1cf5ad98e363b64d68b622652528395864c476491560fc982eb7c82647f06c4e"` [INFO] running `"docker" "rm" "-f" "1cf5ad98e363b64d68b622652528395864c476491560fc982eb7c82647f06c4e"` [INFO] [stdout] 1cf5ad98e363b64d68b622652528395864c476491560fc982eb7c82647f06c4e