[INFO] cloning repository https://github.com/maghoff/sausagewiki [INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/maghoff/sausagewiki" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmaghoff%2Fsausagewiki"` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmaghoff%2Fsausagewiki'... [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] fef213f9f3ab2bd33e4f4d93a96965c05621c598 [INFO] testing maghoff/sausagewiki against beta-2020-06-03 for beta-1.45-1 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmaghoff%2Fsausagewiki" "/workspace/builds/worker-3/source"` [INFO] [stderr] Cloning into '/workspace/builds/worker-3/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/maghoff/sausagewiki on toolchain beta-2020-06-03 [INFO] running `"/workspace/cargo-home/bin/cargo" "+beta-2020-06-03" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking git repo https://github.com/maghoff/sausagewiki [INFO] removed workspace from git repo https://github.com/maghoff/sausagewiki [INFO] removed path dependency codegen from git repo https://github.com/maghoff/sausagewiki [INFO] finished tweaking git repo https://github.com/maghoff/sausagewiki [INFO] tweaked toml for git repo https://github.com/maghoff/sausagewiki written to /workspace/builds/worker-3/source/Cargo.toml [INFO] crate git repo https://github.com/maghoff/sausagewiki already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+beta-2020-06-03" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] [stderr] warning: dependency (codegen) specified without providing a local path, Git repository, or version to use. This will be considered an error in future versions [INFO] [stderr] Updating crates.io index [INFO] [stderr] Updating git repository `https://github.com/maghoff/pulldown-cmark.git` [INFO] [stderr] error: the lock file /workspace/builds/worker-3/source/Cargo.lock needs to be updated but --locked was passed to prevent this [INFO] [stderr] If you want to try to generate the lock file without accessing the network, use the --offline flag. [INFO] the lockfile is outdated, regenerating it [INFO] running `"/workspace/cargo-home/bin/cargo" "+beta-2020-06-03" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] [stderr] Updating git repository `https://github.com/maghoff/pulldown-cmark.git` [INFO] running `"/workspace/cargo-home/bin/cargo" "+beta-2020-06-03" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] [stderr] warning: dependency (codegen) specified without providing a local path, Git repository, or version to use. This will be considered an error in future versions [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded titlecase v0.10.0 [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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=warn" "-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" "+beta-2020-06-03" "build" "--frozen"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] b9efaf9be44e2237af6e757829d16bd316811f9a5bc38932c2d7f7ece3945501 [INFO] running `"docker" "start" "-a" "b9efaf9be44e2237af6e757829d16bd316811f9a5bc38932c2d7f7ece3945501"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] warning: dependency (codegen) specified without providing a local path, Git repository, or version to use. This will be considered an error in future versions [INFO] [stderr] Compiling futures v0.1.29 [INFO] [stderr] Compiling scopeguard v1.1.0 [INFO] [stderr] Compiling maybe-uninit v2.0.0 [INFO] [stderr] Compiling proc-macro2 v1.0.18 [INFO] [stderr] Compiling syn v1.0.30 [INFO] [stderr] Compiling cc v1.0.54 [INFO] [stderr] Compiling smallvec v1.4.0 [INFO] [stderr] Compiling fnv v1.0.7 [INFO] [stderr] Compiling quote v0.3.15 [INFO] [stderr] Compiling unicode-xid v0.0.4 [INFO] [stderr] Compiling memchr v2.3.3 [INFO] [stderr] Compiling serde v1.0.111 [INFO] [stderr] Compiling ryu v1.0.5 [INFO] [stderr] Compiling scoped-tls v0.1.2 [INFO] [stderr] Compiling same-file v0.1.3 [INFO] [stderr] Compiling smallvec v0.2.1 [INFO] [stderr] Compiling take v0.1.0 [INFO] [stderr] Compiling either v1.5.3 [INFO] [stderr] Compiling slab v0.3.0 [INFO] [stderr] Compiling pulldown-cmark v0.1.2 (https://github.com/maghoff/pulldown-cmark.git#e5dea36c) [INFO] [stderr] Compiling try-lock v0.1.0 [INFO] [stderr] Compiling nom v2.2.1 [INFO] [stderr] Compiling bitflags v0.9.1 [INFO] [stderr] Compiling deunicode v0.4.3 [INFO] [stderr] Compiling seahash v3.0.7 [INFO] [stderr] Compiling diff v0.1.12 [INFO] [stderr] Compiling crossbeam-utils v0.7.2 [INFO] [stderr] Compiling memoffset v0.5.4 [INFO] [stderr] Compiling crossbeam-epoch v0.8.2 [INFO] [stderr] Compiling indexmap v1.4.0 [INFO] [stderr] Compiling unicase v2.6.0 [INFO] [stderr] Compiling lock_api v0.3.4 [INFO] [stderr] Compiling synom v0.11.3 [INFO] [stderr] Compiling walkdir v1.0.7 [INFO] [stderr] Compiling rand_core v0.3.1 [INFO] [stderr] Compiling syn v0.10.8 [INFO] [stderr] Compiling itertools v0.6.5 [INFO] [stderr] Compiling unicode-normalization v0.1.12 [INFO] [stderr] Compiling slug v0.1.4 [INFO] [stderr] Compiling syn v0.11.11 [INFO] [stderr] Compiling iovec v0.1.4 [INFO] [stderr] Compiling time v0.1.43 [INFO] [stderr] Compiling num_cpus v1.13.0 [INFO] [stderr] Compiling net2 v0.2.34 [INFO] [stderr] Compiling parking_lot_core v0.7.2 [INFO] [stderr] Compiling rand v0.4.6 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling rand v0.5.6 [INFO] [stderr] Compiling parking_lot_core v0.6.2 [INFO] [stderr] Compiling parking_lot v0.9.0 [INFO] [stderr] Compiling base64 v0.9.3 [INFO] [stderr] Compiling bytes v0.4.12 [INFO] [stderr] Compiling bart v0.1.4 [INFO] [stderr] Compiling aho-corasick v0.6.10 [INFO] [stderr] Compiling mio v0.6.22 [INFO] [stderr] Compiling parking_lot v0.10.2 [INFO] [stderr] Compiling clap v2.33.1 [INFO] [stderr] Compiling smallvec v0.6.13 [INFO] [stderr] Compiling idna v0.1.5 [INFO] [stderr] Compiling libsqlite3-sys v0.9.3 [INFO] [stderr] Compiling rand v0.3.23 [INFO] [stderr] Compiling tokio-sync v0.1.8 [INFO] [stderr] Compiling tokio-service v0.1.0 [INFO] [stderr] Compiling want v0.0.4 [INFO] [stderr] Compiling relay v0.1.1 [INFO] [stderr] Compiling futures-cpupool v0.1.8 [INFO] [stderr] Compiling tokio-io v0.1.13 [INFO] [stderr] Compiling tokio-executor v0.1.10 [INFO] [stderr] Compiling crossbeam-queue v0.2.2 [INFO] [stderr] Compiling codegen v0.1.3 [INFO] [stderr] Compiling quote v1.0.6 [INFO] [stderr] Compiling scheduled-thread-pool v0.2.4 [INFO] [stderr] Compiling regex v0.2.11 [INFO] [stderr] Compiling chrono v0.4.11 [INFO] [stderr] Compiling mio-uds v0.6.8 [INFO] [stderr] Compiling url v1.7.2 [INFO] [stderr] Compiling tokio-timer v0.2.13 [INFO] [stderr] Compiling tokio-current-thread v0.1.7 [INFO] [stderr] Compiling r2d2 v0.8.8 [INFO] [stderr] Compiling tokio-codec v0.1.2 [INFO] [stderr] Compiling crossbeam-deque v0.7.3 [INFO] [stderr] Compiling bart_derive v0.1.4 [INFO] [stderr] Compiling tokio-threadpool v0.1.18 [INFO] [stderr] Compiling tokio-reactor v0.1.12 [INFO] [stderr] Compiling tokio-tcp v0.1.4 [INFO] [stderr] Compiling tokio-udp v0.1.6 [INFO] [stderr] Compiling tokio-uds v0.2.6 [INFO] [stderr] Compiling titlecase v0.10.0 [INFO] [stderr] Compiling tokio-fs v0.1.7 [INFO] [stderr] Compiling tokio v0.1.22 [INFO] [stderr] Compiling tokio-core v0.1.17 [INFO] [stderr] Compiling tokio-proto v0.1.1 [INFO] [stderr] Compiling hyper v0.11.27 [INFO] [stderr] Compiling serde_json v1.0.53 [INFO] [stderr] Compiling serde_plain v0.3.0 [INFO] [stderr] Compiling serde_urlencoded v0.5.5 [INFO] [stderr] Compiling diesel_derives v1.4.1 [INFO] [stderr] Compiling serde_derive v1.0.111 [INFO] [stderr] Compiling diesel v1.4.4 [INFO] [stderr] Compiling migrations_internals v1.4.1 [INFO] [stderr] Compiling infer_schema_internals v1.4.0 [INFO] [stderr] Compiling r2d2-diesel v1.0.0 [INFO] [stderr] Compiling migrations_macros v1.4.2 [INFO] [stderr] Compiling infer_schema_macros v1.4.0 [INFO] [stderr] Compiling diesel_infer_schema v1.4.0 [INFO] [stderr] Compiling diesel_migrations v1.4.0 [INFO] [stderr] Compiling sausagewiki v0.1.0-dev (/opt/rustwide/workdir) [INFO] [stderr] warning: unnecessary parentheses around type [INFO] [stderr] --> build.rs:37:44 [INFO] [stderr] | [INFO] [stderr] 37 | diesel::expression::sql_literal::sql::<(diesel::sql_types::Integer)>("PRAGMA foreign_keys = ON") [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: 1 warning emitted [INFO] [stderr] [INFO] [stderr] error: cannot find derive macro `StaticResource` in this scope [INFO] [stderr] --> src/assets.rs:8:14 [INFO] [stderr] | [INFO] [stderr] 8 | #[derive(StaticResource)] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: cannot find attribute `filename` in this scope [INFO] [stderr] --> src/assets.rs:9:7 [INFO] [stderr] | [INFO] [stderr] 9 | #[filename = "assets/themes.css"] [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: cannot find attribute `mime` in this scope [INFO] [stderr] --> src/assets.rs:10:7 [INFO] [stderr] | [INFO] [stderr] 10 | #[mime = "text/css"] [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error: cannot find derive macro `StaticResource` in this scope [INFO] [stderr] --> src/assets.rs:13:14 [INFO] [stderr] | [INFO] [stderr] 13 | #[derive(StaticResource)] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: cannot find attribute `filename` in this scope [INFO] [stderr] --> src/assets.rs:14:7 [INFO] [stderr] | [INFO] [stderr] 14 | #[filename = "assets/style.css"] [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: cannot find attribute `mime` in this scope [INFO] [stderr] --> src/assets.rs:15:7 [INFO] [stderr] | [INFO] [stderr] 15 | #[mime = "text/css"] [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error: cannot find derive macro `StaticResource` in this scope [INFO] [stderr] --> src/assets.rs:18:14 [INFO] [stderr] | [INFO] [stderr] 18 | #[derive(StaticResource)] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: cannot find attribute `filename` in this scope [INFO] [stderr] --> src/assets.rs:19:7 [INFO] [stderr] | [INFO] [stderr] 19 | #[filename = "assets/script.js"] [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: cannot find attribute `mime` in this scope [INFO] [stderr] --> src/assets.rs:20:7 [INFO] [stderr] | [INFO] [stderr] 20 | #[mime = "application/javascript"] [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error: cannot find derive macro `StaticResource` in this scope [INFO] [stderr] --> src/assets.rs:23:14 [INFO] [stderr] | [INFO] [stderr] 23 | #[derive(StaticResource)] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: cannot find attribute `filename` in this scope [INFO] [stderr] --> src/assets.rs:24:7 [INFO] [stderr] | [INFO] [stderr] 24 | #[filename = "assets/search.js"] [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: cannot find attribute `mime` in this scope [INFO] [stderr] --> src/assets.rs:25:7 [INFO] [stderr] | [INFO] [stderr] 25 | #[mime = "application/javascript"] [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error: cannot find derive macro `Licenses` in this scope [INFO] [stderr] --> src/resources/about_resource.rs:11:10 [INFO] [stderr] | [INFO] [stderr] 11 | #[derive(Licenses)] [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `LICENSE_INFOS` in this scope [INFO] [stderr] --> src/resources/about_resource.rs:88:33 [INFO] [stderr] | [INFO] [stderr] 88 | deps: &*LICENSE_INFOS [INFO] [stderr] | ^^^^^^^^^^^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: unused `#[macro_use]` import [INFO] [stderr] --> src/lib.rs:12:1 [INFO] [stderr] | [INFO] [stderr] 12 | #[macro_use] extern crate codegen; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `futures::Future` [INFO] [stderr] --> src/assets.rs:4:9 [INFO] [stderr] | [INFO] [stderr] 4 | use futures::Future; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `ResponseFuture` [INFO] [stderr] --> src/assets.rs:5:25 [INFO] [stderr] | [INFO] [stderr] 5 | use web::{Resource, ResponseFuture}; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/assets.rs:35:28 [INFO] [stderr] | [INFO] [stderr] 35 | type BoxResource = Box; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Resource + Sync + Send` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/assets.rs:36:27 [INFO] [stderr] | [INFO] [stderr] 36 | type ResourceFn = Box BoxResource + Sync + Send>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn() -> BoxResource + Sync + Send` [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around type [INFO] [stderr] --> src/db.rs:24:15 [INFO] [stderr] | [INFO] [stderr] 24 | sql::<(Integer)>("PRAGMA foreign_keys = ON") [INFO] [stderr] | ^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/db.rs:42:116 [INFO] [stderr] | [INFO] [stderr] 42 | pub fn create_pool>(connection_string: S) -> Result>, Box<::std::error::Error>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn (::std::error::Error)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/resources/pagination.rs:11:35 [INFO] [stderr] | [INFO] [stderr] 11 | write!(f, "{}", (self as &error::Error).description()) [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/resources/changes_resource.rs:21:24 [INFO] [stderr] | [INFO] [stderr] 21 | type BoxResource = Box; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Resource + Sync + Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/resources/changes_resource.rs:100:54 [INFO] [stderr] | [INFO] [stderr] 100 | pub fn lookup(&self, query: Option<&str>) -> Box, Error=::web::Error>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future, Error=::web::Error>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/resources/changes_resource.rs:157:32 [INFO] [stderr] | [INFO] [stderr] 157 | })) as Box, Error=::web::Error>> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future, Error=::web::Error>` [INFO] [stderr] [INFO] [stderr] warning: the item `Iterator` is imported redundantly [INFO] [stderr] --> src/resources/changes_resource.rs:297:21 [INFO] [stderr] | [INFO] [stderr] 297 | use std::iter::Iterator; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/resources/diff_resource.rs:21:24 [INFO] [stderr] | [INFO] [stderr] 21 | type BoxResource = Box; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Resource + Sync + Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/resources/diff_resource.rs:51:71 [INFO] [stderr] | [INFO] [stderr] 51 | pub fn lookup(&self, article_id: u32, query: Option<&str>) -> Box, Error=::web::Error>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future, Error=::web::Error>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/resources/search_resource.rs:17:24 [INFO] [stderr] | [INFO] [stderr] 17 | type BoxResource = Box; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Resource + Sync + Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/site.rs:96:59 [INFO] [stderr] | [INFO] [stderr] 96 | fn internal_server_error(base: Option<&str>, err: Box<::std::error::Error + Send + Sync>) -> Response { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ::std::error::Error + Send + Sync` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/site.rs:124:23 [INFO] [stderr] | [INFO] [stderr] 124 | type Future = Box>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn futures::Future` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/state.rs:21:22 [INFO] [stderr] | [INFO] [stderr] 21 | pub type Error = Box; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn std::error::Error + Send + Sync` [INFO] [stderr] [INFO] [stderr] warning: the item `article_revisions` is imported redundantly [INFO] [stderr] --> src/state.rs:84:9 [INFO] [stderr] | [INFO] [stderr] 12 | use schema::*; [INFO] [stderr] | --------- the item `article_revisions` is already imported here [INFO] [stderr] ... [INFO] [stderr] 84 | use schema::article_revisions; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the item `article_revisions` is imported redundantly [INFO] [stderr] --> src/state.rs:116:13 [INFO] [stderr] | [INFO] [stderr] 12 | use schema::*; [INFO] [stderr] | --------- the item `article_revisions` is already imported here [INFO] [stderr] ... [INFO] [stderr] 116 | use schema::article_revisions; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the item `article_revisions` is imported redundantly [INFO] [stderr] --> src/state.rs:127:13 [INFO] [stderr] | [INFO] [stderr] 12 | use schema::*; [INFO] [stderr] | --------- the item `article_revisions` is already imported here [INFO] [stderr] ... [INFO] [stderr] 127 | use schema::article_revisions; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the item `article_revisions` is imported redundantly [INFO] [stderr] --> src/state.rs:162:13 [INFO] [stderr] | [INFO] [stderr] 12 | use schema::*; [INFO] [stderr] | --------- the item `article_revisions` is already imported here [INFO] [stderr] ... [INFO] [stderr] 162 | use schema::article_revisions; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the item `article_revisions` is imported redundantly [INFO] [stderr] --> src/state.rs:181:17 [INFO] [stderr] | [INFO] [stderr] 12 | use schema::*; [INFO] [stderr] | --------- the item `article_revisions` is already imported here [INFO] [stderr] ... [INFO] [stderr] 181 | use schema::article_revisions; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the item `article_revisions` is imported redundantly [INFO] [stderr] --> src/state.rs:282:17 [INFO] [stderr] | [INFO] [stderr] 12 | use schema::*; [INFO] [stderr] | --------- the item `article_revisions` is already imported here [INFO] [stderr] ... [INFO] [stderr] 282 | use schema::article_revisions; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around type [INFO] [stderr] --> src/state.rs:360:23 [INFO] [stderr] | [INFO] [stderr] 360 | sql::<(diesel::sql_types::Integer)>("INSERT INTO articles VALUES (null)") [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around type [INFO] [stderr] --> src/state.rs:362:23 [INFO] [stderr] | [INFO] [stderr] 362 | sql::<(diesel::sql_types::Integer)>("SELECT LAST_INSERT_ROWID()") [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/web/resource.rs:11:22 [INFO] [stderr] | [INFO] [stderr] 11 | pub type Error = Box; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn std::error::Error + Send + Sync` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/web/resource.rs:12:31 [INFO] [stderr] | [INFO] [stderr] 12 | pub type ResponseFuture = Box>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn futures::Future` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/wiki_lookup.rs:17:24 [INFO] [stderr] | [INFO] [stderr] 17 | type BoxResource = Box; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Resource + Sync + Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/wiki_lookup.rs:18:23 [INFO] [stderr] | [INFO] [stderr] 18 | type ResourceFn = Box BoxResource + Sync + Send>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn() -> BoxResource + Sync + Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/wiki_lookup.rs:58:43 [INFO] [stderr] | [INFO] [stderr] 58 | FutureResult, Box<::std::error::Error + Send + Sync>> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ::std::error::Error + Send + Sync` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/wiki_lookup.rs:77:43 [INFO] [stderr] | [INFO] [stderr] 77 | FutureResult, Box<::std::error::Error + Send + Sync>> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ::std::error::Error + Send + Sync` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/wiki_lookup.rs:252:22 [INFO] [stderr] | [INFO] [stderr] 252 | type Error = Box<::std::error::Error + Send + Sync>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ::std::error::Error + Send + Sync` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/wiki_lookup.rs:253:23 [INFO] [stderr] | [INFO] [stderr] 253 | type Future = Box, Error = Self::Error>>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future, Error = Self::Error>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:55:105 [INFO] [stderr] | [INFO] [stderr] 55 | pub fn main(db_file: String, bind_host: IpAddr, bind_port: u16, trust_identity: bool) -> Result<(), Box> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn std::error::Error` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::sync::ONCE_INIT': the `new` function is now preferred [INFO] [stderr] --> src/assets.rs:37:5 [INFO] [stderr] | [INFO] [stderr] 37 | / lazy_static! { [INFO] [stderr] 38 | | pub static ref ASSETS_MAP: HashMap<&'static str, ResourceFn> = hashmap!{ [INFO] [stderr] 39 | | // The CSS should be built to a single CSS file at compile time [INFO] [stderr] 40 | | ThemesCss::resource_name() => [INFO] [stderr] ... | [INFO] [stderr] 51 | | }; [INFO] [stderr] 52 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::sync::ONCE_INIT': the `new` function is now preferred [INFO] [stderr] --> src/build_config.rs:13:1 [INFO] [stderr] | [INFO] [stderr] 13 | / lazy_static! { [INFO] [stderr] 14 | | pub static ref VERSION: String = || -> String { [INFO] [stderr] 15 | | let mut components = Vec::::new(); [INFO] [stderr] 16 | | [INFO] [stderr] ... | [INFO] [stderr] 56 | | format!("{}/{}", PROJECT_NAME, VERSION.as_str()); [INFO] [stderr] 57 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::sync::ONCE_INIT': the `new` function is now preferred [INFO] [stderr] --> src/build_config.rs:13:1 [INFO] [stderr] | [INFO] [stderr] 13 | / lazy_static! { [INFO] [stderr] 14 | | pub static ref VERSION: String = || -> String { [INFO] [stderr] 15 | | let mut components = Vec::::new(); [INFO] [stderr] 16 | | [INFO] [stderr] ... | [INFO] [stderr] 56 | | format!("{}/{}", PROJECT_NAME, VERSION.as_str()); [INFO] [stderr] 57 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::sync::ONCE_INIT': the `new` function is now preferred [INFO] [stderr] --> src/mimes.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | / lazy_static! { [INFO] [stderr] 4 | | pub static ref TEXT_HTML: mime::Mime = "text/html;charset=utf-8".parse().unwrap(); [INFO] [stderr] 5 | | pub static ref TEXT_PLAIN: mime::Mime = "text/plain;charset=utf-8".parse().unwrap(); [INFO] [stderr] 6 | | pub static ref APPLICATION_JSON: mime::Mime = "application/json".parse().unwrap(); [INFO] [stderr] 7 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::sync::ONCE_INIT': the `new` function is now preferred [INFO] [stderr] --> src/mimes.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | / lazy_static! { [INFO] [stderr] 4 | | pub static ref TEXT_HTML: mime::Mime = "text/html;charset=utf-8".parse().unwrap(); [INFO] [stderr] 5 | | pub static ref TEXT_PLAIN: mime::Mime = "text/plain;charset=utf-8".parse().unwrap(); [INFO] [stderr] 6 | | pub static ref APPLICATION_JSON: mime::Mime = "application/json".parse().unwrap(); [INFO] [stderr] 7 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::sync::ONCE_INIT': the `new` function is now preferred [INFO] [stderr] --> src/mimes.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | / lazy_static! { [INFO] [stderr] 4 | | pub static ref TEXT_HTML: mime::Mime = "text/html;charset=utf-8".parse().unwrap(); [INFO] [stderr] 5 | | pub static ref TEXT_PLAIN: mime::Mime = "text/plain;charset=utf-8".parse().unwrap(); [INFO] [stderr] 6 | | pub static ref APPLICATION_JSON: mime::Mime = "application/json".parse().unwrap(); [INFO] [stderr] 7 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::sync::ONCE_INIT': the `new` function is now preferred [INFO] [stderr] --> src/site.rs:18:1 [INFO] [stderr] | [INFO] [stderr] 18 | / lazy_static! { [INFO] [stderr] 19 | | static ref TEXT_HTML: mime::Mime = "text/html;charset=utf-8".parse().unwrap(); [INFO] [stderr] 20 | | static ref SERVER: Server = [INFO] [stderr] 21 | | Server::new(build_config::HTTP_SERVER.as_str()); [INFO] [stderr] 22 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::sync::ONCE_INIT': the `new` function is now preferred [INFO] [stderr] --> src/site.rs:18:1 [INFO] [stderr] | [INFO] [stderr] 18 | / lazy_static! { [INFO] [stderr] 19 | | static ref TEXT_HTML: mime::Mime = "text/html;charset=utf-8".parse().unwrap(); [INFO] [stderr] 20 | | static ref SERVER: Server = [INFO] [stderr] 21 | | Server::new(build_config::HTTP_SERVER.as_str()); [INFO] [stderr] 22 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::sync::ONCE_INIT': the `new` function is now preferred [INFO] [stderr] --> src/web/resource.rs:7:1 [INFO] [stderr] | [INFO] [stderr] 7 | / lazy_static! { [INFO] [stderr] 8 | | static ref TEXT_PLAIN: mime::Mime = "text/plain;charset=utf-8".parse().unwrap(); [INFO] [stderr] 9 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::sync::ONCE_INIT': the `new` function is now preferred [INFO] [stderr] --> src/wiki_lookup.rs:20:1 [INFO] [stderr] | [INFO] [stderr] 20 | / lazy_static! { [INFO] [stderr] 21 | | static ref LICENSES_MAP: HashMap<&'static str, ResourceFn> = hashmap!{ [INFO] [stderr] 22 | | "bsd-3-clause" => Box::new(|| Box::new( [INFO] [stderr] 23 | | HtmlResource::new(Some("../"), "The 3-Clause BSD License", include_str!("licenses/bsd-3-clause.html")) [INFO] [stderr] ... | [INFO] [stderr] 37 | | }; [INFO] [stderr] 38 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error[E0599]: no function or associated item named `resource_name` found for struct `assets::static_assets::ThemesCss` in the current scope [INFO] [stderr] --> src/assets.rs:40:24 [INFO] [stderr] | [INFO] [stderr] 11 | pub struct ThemesCss; [INFO] [stderr] | --------------------- function or associated item `resource_name` not found for this [INFO] [stderr] ... [INFO] [stderr] 40 | ThemesCss::resource_name() => [INFO] [stderr] | ^^^^^^^^^^^^^ function or associated item not found in `assets::static_assets::ThemesCss` [INFO] [stderr] [INFO] [stderr] error[E0599]: no function or associated item named `resource_name` found for struct `assets::static_assets::StyleCss` in the current scope [INFO] [stderr] --> src/assets.rs:43:23 [INFO] [stderr] | [INFO] [stderr] 16 | pub struct StyleCss; [INFO] [stderr] | -------------------- function or associated item `resource_name` not found for this [INFO] [stderr] ... [INFO] [stderr] 43 | StyleCss::resource_name() => [INFO] [stderr] | ^^^^^^^^^^^^^ function or associated item not found in `assets::static_assets::StyleCss` [INFO] [stderr] [INFO] [stderr] error[E0599]: no function or associated item named `resource_name` found for struct `assets::static_assets::ScriptJs` in the current scope [INFO] [stderr] --> src/assets.rs:46:23 [INFO] [stderr] | [INFO] [stderr] 21 | pub struct ScriptJs; [INFO] [stderr] | -------------------- function or associated item `resource_name` not found for this [INFO] [stderr] ... [INFO] [stderr] 46 | ScriptJs::resource_name() => [INFO] [stderr] | ^^^^^^^^^^^^^ function or associated item not found in `assets::static_assets::ScriptJs` [INFO] [stderr] [INFO] [stderr] error[E0599]: no function or associated item named `resource_name` found for struct `assets::static_assets::SearchJs` in the current scope [INFO] [stderr] --> src/assets.rs:49:23 [INFO] [stderr] | [INFO] [stderr] 26 | pub struct SearchJs; [INFO] [stderr] | -------------------- function or associated item `resource_name` not found for this [INFO] [stderr] ... [INFO] [stderr] 49 | SearchJs::resource_name() => [INFO] [stderr] | ^^^^^^^^^^^^^ function or associated item not found in `assets::static_assets::SearchJs` [INFO] [stderr] [INFO] [stderr] error[E0277]: the trait bound `assets::static_assets::ThemesCss: web::resource::Resource` is not satisfied [INFO] [stderr] --> src/assets.rs:41:29 [INFO] [stderr] | [INFO] [stderr] 41 | Box::new(|| Box::new(ThemesCss) as BoxResource) as ResourceFn, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ the trait `web::resource::Resource` is not implemented for `assets::static_assets::ThemesCss` [INFO] [stderr] | [INFO] [stderr] = note: required for the cast to the object type `dyn web::resource::Resource + std::marker::Send + std::marker::Sync` [INFO] [stderr] [INFO] [stderr] error[E0277]: the trait bound `assets::static_assets::StyleCss: web::resource::Resource` is not satisfied [INFO] [stderr] --> src/assets.rs:44:29 [INFO] [stderr] | [INFO] [stderr] 44 | Box::new(|| Box::new(StyleCss) as BoxResource) as ResourceFn, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ the trait `web::resource::Resource` is not implemented for `assets::static_assets::StyleCss` [INFO] [stderr] | [INFO] [stderr] = note: required for the cast to the object type `dyn web::resource::Resource + std::marker::Send + std::marker::Sync` [INFO] [stderr] [INFO] [stderr] error[E0277]: the trait bound `assets::static_assets::ScriptJs: web::resource::Resource` is not satisfied [INFO] [stderr] --> src/assets.rs:47:29 [INFO] [stderr] | [INFO] [stderr] 47 | Box::new(|| Box::new(ScriptJs) as BoxResource) as ResourceFn, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ the trait `web::resource::Resource` is not implemented for `assets::static_assets::ScriptJs` [INFO] [stderr] | [INFO] [stderr] = note: required for the cast to the object type `dyn web::resource::Resource + std::marker::Send + std::marker::Sync` [INFO] [stderr] [INFO] [stderr] error[E0277]: the trait bound `assets::static_assets::SearchJs: web::resource::Resource` is not satisfied [INFO] [stderr] --> src/assets.rs:50:29 [INFO] [stderr] | [INFO] [stderr] 50 | Box::new(|| Box::new(SearchJs) as BoxResource) as ResourceFn, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ the trait `web::resource::Resource` is not implemented for `assets::static_assets::SearchJs` [INFO] [stderr] | [INFO] [stderr] = note: required for the cast to the object type `dyn web::resource::Resource + std::marker::Send + std::marker::Sync` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/resources/pagination.rs:11:49 [INFO] [stderr] | [INFO] [stderr] 11 | write!(f, "{}", (self as &error::Error).description()) [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0599]: no function or associated item named `resource_name` found for struct `assets::static_assets::ScriptJs` in the current scope [INFO] [stderr] --> src/resources/article_resource.rs:40:19 [INFO] [stderr] | [INFO] [stderr] 40 | ScriptJs::resource_name() [INFO] [stderr] | ^^^^^^^^^^^^^ function or associated item not found in `assets::static_assets::ScriptJs` [INFO] [stderr] | [INFO] [stderr] ::: src/assets.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | pub struct ScriptJs; [INFO] [stderr] | -------------------- function or associated item `resource_name` not found for this [INFO] [stderr] [INFO] [stderr] error[E0599]: no function or associated item named `resource_name` found for struct `assets::static_assets::ScriptJs` in the current scope [INFO] [stderr] --> src/resources/new_article_resource.rs:83:27 [INFO] [stderr] | [INFO] [stderr] 83 | ScriptJs::resource_name() [INFO] [stderr] | ^^^^^^^^^^^^^ function or associated item not found in `assets::static_assets::ScriptJs` [INFO] [stderr] | [INFO] [stderr] ::: src/assets.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | pub struct ScriptJs; [INFO] [stderr] | -------------------- function or associated item `resource_name` not found for this [INFO] [stderr] [INFO] [stderr] error[E0599]: no function or associated item named `resource_name` found for struct `assets::static_assets::ThemesCss` in the current scope [INFO] [stderr] --> src/site.rs:36:51 [INFO] [stderr] | [INFO] [stderr] 36 | pub fn themes_css(&self) -> &str { ThemesCss::resource_name() } [INFO] [stderr] | ^^^^^^^^^^^^^ function or associated item not found in `assets::static_assets::ThemesCss` [INFO] [stderr] | [INFO] [stderr] ::: src/assets.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | pub struct ThemesCss; [INFO] [stderr] | --------------------- function or associated item `resource_name` not found for this [INFO] [stderr] [INFO] [stderr] error[E0599]: no function or associated item named `resource_name` found for struct `assets::static_assets::StyleCss` in the current scope [INFO] [stderr] --> src/site.rs:37:49 [INFO] [stderr] | [INFO] [stderr] 37 | pub fn style_css(&self) -> &str { StyleCss::resource_name() } [INFO] [stderr] | ^^^^^^^^^^^^^ function or associated item not found in `assets::static_assets::StyleCss` [INFO] [stderr] | [INFO] [stderr] ::: src/assets.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | pub struct StyleCss; [INFO] [stderr] | -------------------- function or associated item `resource_name` not found for this [INFO] [stderr] [INFO] [stderr] error[E0599]: no function or associated item named `resource_name` found for struct `assets::static_assets::SearchJs` in the current scope [INFO] [stderr] --> src/site.rs:38:49 [INFO] [stderr] | [INFO] [stderr] 38 | pub fn search_js(&self) -> &str { SearchJs::resource_name() } [INFO] [stderr] | ^^^^^^^^^^^^^ function or associated item not found in `assets::static_assets::SearchJs` [INFO] [stderr] | [INFO] [stderr] ::: src/assets.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 26 | pub struct SearchJs; [INFO] [stderr] | -------------------- function or associated item `resource_name` not found for this [INFO] [stderr] [INFO] [stderr] error: aborting due to 27 previous errors; 46 warnings emitted [INFO] [stderr] [INFO] [stderr] Some errors have detailed explanations: E0277, E0425, E0599. [INFO] [stderr] For more information about an error, try `rustc --explain E0277`. [INFO] [stderr] error: could not compile `sausagewiki`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "b9efaf9be44e2237af6e757829d16bd316811f9a5bc38932c2d7f7ece3945501"` [INFO] running `"docker" "rm" "-f" "b9efaf9be44e2237af6e757829d16bd316811f9a5bc38932c2d7f7ece3945501"` [INFO] [stdout] b9efaf9be44e2237af6e757829d16bd316811f9a5bc38932c2d7f7ece3945501