[INFO] cloning repository https://github.com/livioribeiro/rust-tiny-http
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/livioribeiro/rust-tiny-http" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flivioribeiro%2Frust-tiny-http", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flivioribeiro%2Frust-tiny-http'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 927a94f8762f279f689680a6be0f5da89b8df72f
[INFO] testing livioribeiro/rust-tiny-http against beta-2020-07-24 for beta-1.46-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flivioribeiro%2Frust-tiny-http" "/workspace/builds/worker-4/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/livioribeiro/rust-tiny-http on toolchain beta-2020-07-24
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-07-24" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/livioribeiro/rust-tiny-http
[INFO] finished tweaking git repo https://github.com/livioribeiro/rust-tiny-http
[INFO] tweaked toml for git repo https://github.com/livioribeiro/rust-tiny-http written to /workspace/builds/worker-4/source/Cargo.toml
[INFO] crate git repo https://github.com/livioribeiro/rust-tiny-http already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-07-24" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: An explicit [[bin]] section is specified in Cargo.toml which currently
[INFO] [stderr] disables Cargo from automatically inferring other binary targets.
[INFO] [stderr] This inference behavior will change in the Rust 2018 edition and the following
[INFO] [stderr] files will be included as a binary target:
[INFO] [stderr]
[INFO] [stderr] * /workspace/builds/worker-4/source/src/main.rs
[INFO] [stderr]
[INFO] [stderr] This is likely to break cargo build or cargo test as these files may not be
[INFO] [stderr] ready to be compiled as a binary target today. You can future-proof yourself
[INFO] [stderr] and disable this warning by adding `autobins = false` to your [package]
[INFO] [stderr] section. You may also move the files to a location where Cargo would not
[INFO] [stderr] automatically infer them to be a target, such as in subfolders.
[INFO] [stderr]
[INFO] [stderr] For more information on this warning you can consult
[INFO] [stderr] https://github.com/rust-lang/cargo/issues/5330
[INFO] [stderr] warning: path `/workspace/builds/worker-4/source/src/main.rs` was erroneously implicitly accepted for binary `server-bin`,
[INFO] [stderr] please set bin.path in Cargo.toml
[INFO] [stderr] error: the lock file /workspace/builds/worker-4/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 `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-07-24" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-07-24" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: An explicit [[bin]] section is specified in Cargo.toml which currently
[INFO] [stderr] disables Cargo from automatically inferring other binary targets.
[INFO] [stderr] This inference behavior will change in the Rust 2018 edition and the following
[INFO] [stderr] files will be included as a binary target:
[INFO] [stderr]
[INFO] [stderr] * /workspace/builds/worker-4/source/src/main.rs
[INFO] [stderr]
[INFO] [stderr] This is likely to break cargo build or cargo test as these files may not be
[INFO] [stderr] ready to be compiled as a binary target today. You can future-proof yourself
[INFO] [stderr] and disable this warning by adding `autobins = false` to your [package]
[INFO] [stderr] section. You may also move the files to a location where Cargo would not
[INFO] [stderr] automatically infer them to be a target, such as in subfolders.
[INFO] [stderr]
[INFO] [stderr] For more information on this warning you can consult
[INFO] [stderr] https://github.com/rust-lang/cargo/issues/5330
[INFO] [stderr] warning: path `/workspace/builds/worker-4/source/src/main.rs` was erroneously implicitly accepted for binary `server-bin`,
[INFO] [stderr] please set bin.path in Cargo.toml
[INFO] [stderr] Downloading crates ...
[INFO] [stderr] Downloaded threadpool v0.1.4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/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_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env@sha256:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-07-24" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2a44e4203a5a82d7a5699e9f8806985b54a7ebbe6cc07b75bd94f0fc96995ee2
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "2a44e4203a5a82d7a5699e9f8806985b54a7ebbe6cc07b75bd94f0fc96995ee2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2a44e4203a5a82d7a5699e9f8806985b54a7ebbe6cc07b75bd94f0fc96995ee2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2a44e4203a5a82d7a5699e9f8806985b54a7ebbe6cc07b75bd94f0fc96995ee2", kill_on_drop: false }`
[INFO] [stdout] 2a44e4203a5a82d7a5699e9f8806985b54a7ebbe6cc07b75bd94f0fc96995ee2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/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@sha256:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-07-24" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] f1d00ab6308c3386ce100647e9721c0cb056676b2f1495edb905504f4eeda315
[INFO] running `Command { std: "docker" "start" "-a" "f1d00ab6308c3386ce100647e9721c0cb056676b2f1495edb905504f4eeda315", kill_on_drop: false }`
[INFO] [stderr] warning: An explicit [[bin]] section is specified in Cargo.toml which currently
[INFO] [stderr] disables Cargo from automatically inferring other binary targets.
[INFO] [stderr] This inference behavior will change in the Rust 2018 edition and the following
[INFO] [stderr] files will be included as a binary target:
[INFO] [stderr]
[INFO] [stderr] * /opt/rustwide/workdir/src/main.rs
[INFO] [stderr]
[INFO] [stderr] This is likely to break cargo build or cargo test as these files may not be
[INFO] [stderr] ready to be compiled as a binary target today. You can future-proof yourself
[INFO] [stderr] and disable this warning by adding `autobins = false` to your [package]
[INFO] [stderr] section. You may also move the files to a location where Cargo would not
[INFO] [stderr] automatically infer them to be a target, such as in subfolders.
[INFO] [stderr]
[INFO] [stderr] For more information on this warning you can consult
[INFO] [stderr] https://github.com/rust-lang/cargo/issues/5330
[INFO] [stderr] warning: path `/opt/rustwide/workdir/src/main.rs` was erroneously implicitly accepted for binary `server-bin`,
[INFO] [stderr] please set bin.path in Cargo.toml
[INFO] [stderr] Compiling argparse v0.2.2
[INFO] [stderr] Compiling threadpool v0.1.4
[INFO] [stderr] Compiling conduit-mime-types v0.7.3
[INFO] [stderr] Compiling memchr v0.1.11
[INFO] [stderr] Compiling uuid v0.1.18
[INFO] [stderr] Compiling thread-id v2.0.0
[INFO] [stderr] Compiling thread_local v0.2.7
[INFO] [stderr] Compiling aho-corasick v0.5.3
[INFO] [stderr] Compiling url v0.2.38
[INFO] [stderr] Compiling regex v0.1.80
[INFO] [stderr] Compiling http-server v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:50:24
[INFO] [stdout] |
[INFO] [stdout] 50 | let metadata = try!(fs::metadata(&resource));
[INFO] [stdout] | ^^^
[INFO] [stdout] |
[INFO] [stdout] = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:56:21
[INFO] [stdout] |
[INFO] [stdout] 56 | let mut f = try!(File::open(&resource));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:63:13
[INFO] [stdout] |
[INFO] [stdout] 63 | try!(io::copy(&mut f, res));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:64:13
[INFO] [stdout] |
[INFO] [stdout] 64 | try!(res.flush());
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:72:13
[INFO] [stdout] |
[INFO] [stdout] 72 | try!(res.write("404 - Not Found".as_bytes()));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:73:13
[INFO] [stdout] |
[INFO] [stdout] 73 | try!(res.flush());
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:81:13
[INFO] [stdout] |
[INFO] [stdout] 81 | try!(res.write(format!("{} - {}", status, description).as_bytes()));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:82:13
[INFO] [stdout] |
[INFO] [stdout] 82 | try!(res.flush());
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:142:13
[INFO] [stdout] |
[INFO] [stdout] 142 | try!(res.write("
".as_bytes()));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:147:32
[INFO] [stdout] |
[INFO] [stdout] 147 | let metadata = try!(fs::metadata(Path::new(&resource).join(&name)));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:160:17
[INFO] [stdout] |
[INFO] [stdout] 160 | try!(res.write(format!("- {1}
", path, name).as_bytes()));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:162:13
[INFO] [stdout] |
[INFO] [stdout] 162 | try!(res.write("
".as_bytes()));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:163:13
[INFO] [stdout] |
[INFO] [stdout] 163 | try!(res.flush());
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/parser.rs:50:26
[INFO] [stdout] |
[INFO] [stdout] 50 | let bytes_read = try!(buf_reader.read_line(&mut request_line));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/parser.rs:56:9
[INFO] [stdout] |
[INFO] [stdout] 56 | try!(self.handler.on_message_begin());
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/parser.rs:65:17
[INFO] [stdout] |
[INFO] [stdout] 65 | try!(self.handler.on_method(method));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/parser.rs:70:17
[INFO] [stdout] |
[INFO] [stdout] 70 | try!(self.handler.on_url(&url));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/parser.rs:75:25
[INFO] [stdout] |
[INFO] [stdout] 75 | try!(self.handler.on_query(&query));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/parser.rs:81:17
[INFO] [stdout] |
[INFO] [stdout] 81 | try!(self.handler.on_http_version(version));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/parser.rs:110:21
[INFO] [stdout] |
[INFO] [stdout] 110 | try!(self.handler.on_header(field, values));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/response.rs:21:22
[INFO] [stdout] |
[INFO] [stdout] 21 | let stream = try!(stream.try_clone());
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/response.rs:88:9
[INFO] [stdout] |
[INFO] [stdout] 88 | try!(self.stream.write(status_line.as_bytes()));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/response.rs:90:9
[INFO] [stdout] |
[INFO] [stdout] 90 | try!(self.stream.write(format!("{}", self.headers.to_string()).as_bytes()));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/response.rs:91:9
[INFO] [stdout] |
[INFO] [stdout] 91 | try!(self.stream.write(b"\r\n"));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/response.rs:94:9
[INFO] [stdout] |
[INFO] [stdout] 94 | try!(self.stream.get_mut().shutdown(Shutdown::Both));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout] --> src/handler.rs:1:5
[INFO] [stdout] |
[INFO] [stdout] 1 | use std::error::Error;
[INFO] [stdout] | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] |
[INFO] [stdout] = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout] --> src/parser.rs:46:72
[INFO] [stdout] |
[INFO] [stdout] 46 | pub fn parse(&mut self, stream: &mut R) -> Result<(), Box> {
[INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stdout] |
[INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout] --> src/request.rs:81:46
[INFO] [stdout] |
[INFO] [stdout] 81 | pub fn body<'a>(&'a mut self) -> &'a mut Read {
[INFO] [stdout] | ^^^^ help: use `dyn`: `dyn Read`
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout] --> src/response.rs:20:68
[INFO] [stdout] |
[INFO] [stdout] 20 | pub fn from_stream(stream: &TcpStream) -> Result> {
[INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout] --> src/server.rs:109:38
[INFO] [stdout] |
[INFO] [stdout] 109 | pub fn start(&self, handler: Box) {
[INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Handler + Send + Sync`
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout] --> src/headers.rs:27:17
[INFO] [stdout] |
[INFO] [stdout] 27 | let mut vec = self.data.entry(name.trim().to_owned()).or_insert(Vec::::new());
[INFO] [stdout] | ----^^^
[INFO] [stdout] | |
[INFO] [stdout] | help: remove this `mut`
[INFO] [stdout] |
[INFO] [stdout] = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout] --> src/headers.rs:35:13
[INFO] [stdout] |
[INFO] [stdout] 35 | let mut vec = self.data.entry(name.to_owned()).or_insert(Vec::::new());
[INFO] [stdout] | ----^^^
[INFO] [stdout] | |
[INFO] [stdout] | help: remove this `mut`
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout] --> src/query.rs:29:21
[INFO] [stdout] |
[INFO] [stdout] 29 | let mut query_vec = data.entry(key.to_owned()).or_insert(Vec::new());
[INFO] [stdout] | ----^^^^^^^^^
[INFO] [stdout] | |
[INFO] [stdout] | help: remove this `mut`
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: 33 warnings emitted
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout] --> src/main.rs:27:22
[INFO] [stdout] |
[INFO] [stdout] 27 | let handler: Box;
[INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Handler + Send + Sync`
[INFO] [stdout] |
[INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'std::env::home_dir': This function's behavior is unexpected and probably not what you want. Consider using a crate from crates.io instead.
[INFO] [stdout] --> src/main.rs:25:16
[INFO] [stdout] |
[INFO] [stdout] 25 | let path = env::home_dir().unwrap();
[INFO] [stdout] | ^^^^^^^^^^^^^
[INFO] [stdout] |
[INFO] [stdout] = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 15.57s
[INFO] running `Command { std: "docker" "inspect" "f1d00ab6308c3386ce100647e9721c0cb056676b2f1495edb905504f4eeda315", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f1d00ab6308c3386ce100647e9721c0cb056676b2f1495edb905504f4eeda315", kill_on_drop: false }`
[INFO] [stdout] f1d00ab6308c3386ce100647e9721c0cb056676b2f1495edb905504f4eeda315
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/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@sha256:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-07-24" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 39e40bdb29b80d0c84071bf1727effe2ef882134166e888b867e616a1f5a808a
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "39e40bdb29b80d0c84071bf1727effe2ef882134166e888b867e616a1f5a808a", kill_on_drop: false }`
[INFO] [stderr] warning: An explicit [[bin]] section is specified in Cargo.toml which currently
[INFO] [stderr] disables Cargo from automatically inferring other binary targets.
[INFO] [stderr] This inference behavior will change in the Rust 2018 edition and the following
[INFO] [stderr] files will be included as a binary target:
[INFO] [stderr]
[INFO] [stderr] * /opt/rustwide/workdir/src/main.rs
[INFO] [stderr]
[INFO] [stderr] This is likely to break cargo build or cargo test as these files may not be
[INFO] [stderr] ready to be compiled as a binary target today. You can future-proof yourself
[INFO] [stderr] and disable this warning by adding `autobins = false` to your [package]
[INFO] [stderr] section. You may also move the files to a location where Cargo would not
[INFO] [stderr] automatically infer them to be a target, such as in subfolders.
[INFO] [stderr]
[INFO] [stderr] For more information on this warning you can consult
[INFO] [stderr] https://github.com/rust-lang/cargo/issues/5330
[INFO] [stderr] warning: path `/opt/rustwide/workdir/src/main.rs` was erroneously implicitly accepted for binary `server-bin`,
[INFO] [stderr] please set bin.path in Cargo.toml
[INFO] [stderr] Compiling http-server v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:50:24
[INFO] [stdout] |
[INFO] [stdout] 50 | let metadata = try!(fs::metadata(&resource));
[INFO] [stdout] | ^^^
[INFO] [stdout] |
[INFO] [stdout] = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:56:21
[INFO] [stdout] |
[INFO] [stdout] 56 | let mut f = try!(File::open(&resource));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:63:13
[INFO] [stdout] |
[INFO] [stdout] 63 | try!(io::copy(&mut f, res));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:64:13
[INFO] [stdout] |
[INFO] [stdout] 64 | try!(res.flush());
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:72:13
[INFO] [stdout] |
[INFO] [stdout] 72 | try!(res.write("404 - Not Found".as_bytes()));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:73:13
[INFO] [stdout] |
[INFO] [stdout] 73 | try!(res.flush());
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:81:13
[INFO] [stdout] |
[INFO] [stdout] 81 | try!(res.write(format!("{} - {}", status, description).as_bytes()));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:82:13
[INFO] [stdout] |
[INFO] [stdout] 82 | try!(res.flush());
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:142:13
[INFO] [stdout] |
[INFO] [stdout] 142 | try!(res.write("".as_bytes()));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:147:32
[INFO] [stdout] |
[INFO] [stdout] 147 | let metadata = try!(fs::metadata(Path::new(&resource).join(&name)));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:160:17
[INFO] [stdout] |
[INFO] [stdout] 160 | try!(res.write(format!("- {1}
", path, name).as_bytes()));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:162:13
[INFO] [stdout] |
[INFO] [stdout] 162 | try!(res.write("
".as_bytes()));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:163:13
[INFO] [stdout] |
[INFO] [stdout] 163 | try!(res.flush());
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/parser.rs:50:26
[INFO] [stdout] |
[INFO] [stdout] 50 | let bytes_read = try!(buf_reader.read_line(&mut request_line));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/parser.rs:56:9
[INFO] [stdout] |
[INFO] [stdout] 56 | try!(self.handler.on_message_begin());
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/parser.rs:65:17
[INFO] [stdout] |
[INFO] [stdout] 65 | try!(self.handler.on_method(method));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/parser.rs:70:17
[INFO] [stdout] |
[INFO] [stdout] 70 | try!(self.handler.on_url(&url));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/parser.rs:75:25
[INFO] [stdout] |
[INFO] [stdout] 75 | try!(self.handler.on_query(&query));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/parser.rs:81:17
[INFO] [stdout] |
[INFO] [stdout] 81 | try!(self.handler.on_http_version(version));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/parser.rs:110:21
[INFO] [stdout] |
[INFO] [stdout] 110 | try!(self.handler.on_header(field, values));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/response.rs:21:22
[INFO] [stdout] |
[INFO] [stdout] 21 | let stream = try!(stream.try_clone());
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/response.rs:88:9
[INFO] [stdout] |
[INFO] [stdout] 88 | try!(self.stream.write(status_line.as_bytes()));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/response.rs:90:9
[INFO] [stdout] |
[INFO] [stdout] 90 | try!(self.stream.write(format!("{}", self.headers.to_string()).as_bytes()));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/response.rs:91:9
[INFO] [stdout] |
[INFO] [stdout] 91 | try!(self.stream.write(b"\r\n"));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/response.rs:94:9
[INFO] [stdout] |
[INFO] [stdout] 94 | try!(self.stream.get_mut().shutdown(Shutdown::Both));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout] --> src/handler.rs:1:5
[INFO] [stdout] |
[INFO] [stdout] 1 | use std::error::Error;
[INFO] [stdout] | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] |
[INFO] [stdout] = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout] --> src/parser.rs:46:72
[INFO] [stdout] |
[INFO] [stdout] 46 | pub fn parse(&mut self, stream: &mut R) -> Result<(), Box> {
[INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stdout] |
[INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout] --> src/request.rs:81:46
[INFO] [stdout] |
[INFO] [stdout] 81 | pub fn body<'a>(&'a mut self) -> &'a mut Read {
[INFO] [stdout] | ^^^^ help: use `dyn`: `dyn Read`
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout] --> src/response.rs:20:68
[INFO] [stdout] |
[INFO] [stdout] 20 | pub fn from_stream(stream: &TcpStream) -> Result> {
[INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout] --> src/server.rs:109:38
[INFO] [stdout] |
[INFO] [stdout] 109 | pub fn start(&self, handler: Box) {
[INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Handler + Send + Sync`
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout] --> src/headers.rs:27:17
[INFO] [stdout] |
[INFO] [stdout] 27 | let mut vec = self.data.entry(name.trim().to_owned()).or_insert(Vec::::new());
[INFO] [stdout] | ----^^^
[INFO] [stdout] | |
[INFO] [stdout] | help: remove this `mut`
[INFO] [stdout] |
[INFO] [stdout] = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout] --> src/headers.rs:35:13
[INFO] [stdout] |
[INFO] [stdout] 35 | let mut vec = self.data.entry(name.to_owned()).or_insert(Vec::::new());
[INFO] [stdout] | ----^^^
[INFO] [stdout] | |
[INFO] [stdout] | help: remove this `mut`
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout] --> src/query.rs:29:21
[INFO] [stdout] |
[INFO] [stdout] 29 | let mut query_vec = data.entry(key.to_owned()).or_insert(Vec::new());
[INFO] [stdout] | ----^^^^^^^^^
[INFO] [stdout] | |
[INFO] [stdout] | help: remove this `mut`
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: 33 warnings emitted
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:50:24
[INFO] [stdout] |
[INFO] [stdout] 50 | let metadata = try!(fs::metadata(&resource));
[INFO] [stdout] | ^^^
[INFO] [stdout] |
[INFO] [stdout] = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:56:21
[INFO] [stdout] |
[INFO] [stdout] 56 | let mut f = try!(File::open(&resource));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:63:13
[INFO] [stdout] |
[INFO] [stdout] 63 | try!(io::copy(&mut f, res));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:64:13
[INFO] [stdout] |
[INFO] [stdout] 64 | try!(res.flush());
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:72:13
[INFO] [stdout] |
[INFO] [stdout] 72 | try!(res.write("404 - Not Found".as_bytes()));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:73:13
[INFO] [stdout] |
[INFO] [stdout] 73 | try!(res.flush());
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:81:13
[INFO] [stdout] |
[INFO] [stdout] 81 | try!(res.write(format!("{} - {}", status, description).as_bytes()));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:82:13
[INFO] [stdout] |
[INFO] [stdout] 82 | try!(res.flush());
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:142:13
[INFO] [stdout] |
[INFO] [stdout] 142 | try!(res.write("".as_bytes()));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:147:32
[INFO] [stdout] |
[INFO] [stdout] 147 | let metadata = try!(fs::metadata(Path::new(&resource).join(&name)));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:160:17
[INFO] [stdout] |
[INFO] [stdout] 160 | try!(res.write(format!("- {1}
", path, name).as_bytes()));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:162:13
[INFO] [stdout] |
[INFO] [stdout] 162 | try!(res.write("
".as_bytes()));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/handler.rs:163:13
[INFO] [stdout] |
[INFO] [stdout] 163 | try!(res.flush());
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/parser.rs:50:26
[INFO] [stdout] |
[INFO] [stdout] 50 | let bytes_read = try!(buf_reader.read_line(&mut request_line));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/parser.rs:56:9
[INFO] [stdout] |
[INFO] [stdout] 56 | try!(self.handler.on_message_begin());
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/parser.rs:65:17
[INFO] [stdout] |
[INFO] [stdout] 65 | try!(self.handler.on_method(method));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/parser.rs:70:17
[INFO] [stdout] |
[INFO] [stdout] 70 | try!(self.handler.on_url(&url));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/parser.rs:75:25
[INFO] [stdout] |
[INFO] [stdout] 75 | try!(self.handler.on_query(&query));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/parser.rs:81:17
[INFO] [stdout] |
[INFO] [stdout] 81 | try!(self.handler.on_http_version(version));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/parser.rs:110:21
[INFO] [stdout] |
[INFO] [stdout] 110 | try!(self.handler.on_header(field, values));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/response.rs:21:22
[INFO] [stdout] |
[INFO] [stdout] 21 | let stream = try!(stream.try_clone());
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/response.rs:88:9
[INFO] [stdout] |
[INFO] [stdout] 88 | try!(self.stream.write(status_line.as_bytes()));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/response.rs:90:9
[INFO] [stdout] |
[INFO] [stdout] 90 | try!(self.stream.write(format!("{}", self.headers.to_string()).as_bytes()));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/response.rs:91:9
[INFO] [stdout] |
[INFO] [stdout] 91 | try!(self.stream.write(b"\r\n"));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stdout] --> src/response.rs:94:9
[INFO] [stdout] |
[INFO] [stdout] 94 | try!(self.stream.get_mut().shutdown(Shutdown::Both));
[INFO] [stdout] | ^^^
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout] --> src/handler.rs:1:5
[INFO] [stdout] |
[INFO] [stdout] 1 | use std::error::Error;
[INFO] [stdout] | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] |
[INFO] [stdout] = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout] --> src/parser.rs:46:72
[INFO] [stdout] |
[INFO] [stdout] 46 | pub fn parse(&mut self, stream: &mut R) -> Result<(), Box> {
[INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stdout] |
[INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout] --> src/request.rs:81:46
[INFO] [stdout] |
[INFO] [stdout] 81 | pub fn body<'a>(&'a mut self) -> &'a mut Read {
[INFO] [stdout] | ^^^^ help: use `dyn`: `dyn Read`
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout] --> src/response.rs:20:68
[INFO] [stdout] |
[INFO] [stdout] 20 | pub fn from_stream(stream: &TcpStream) -> Result> {
[INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout] --> src/server.rs:109:38
[INFO] [stdout] |
[INFO] [stdout] 109 | pub fn start(&self, handler: Box) {
[INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Handler + Send + Sync`
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout] --> src/headers.rs:27:17
[INFO] [stdout] |
[INFO] [stdout] 27 | let mut vec = self.data.entry(name.trim().to_owned()).or_insert(Vec::::new());
[INFO] [stdout] | ----^^^
[INFO] [stdout] | |
[INFO] [stdout] | help: remove this `mut`
[INFO] [stdout] |
[INFO] [stdout] = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout] --> src/headers.rs:35:13
[INFO] [stdout] |
[INFO] [stdout] 35 | let mut vec = self.data.entry(name.to_owned()).or_insert(Vec::::new());
[INFO] [stdout] | ----^^^
[INFO] [stdout] | |
[INFO] [stdout] | help: remove this `mut`
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout] --> src/query.rs:29:21
[INFO] [stdout] |
[INFO] [stdout] 29 | let mut query_vec = data.entry(key.to_owned()).or_insert(Vec::new());
[INFO] [stdout] | ----^^^^^^^^^
[INFO] [stdout] | |
[INFO] [stdout] | help: remove this `mut`
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: 33 warnings emitted
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.95s
[INFO] running `Command { std: "docker" "inspect" "39e40bdb29b80d0c84071bf1727effe2ef882134166e888b867e616a1f5a808a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "39e40bdb29b80d0c84071bf1727effe2ef882134166e888b867e616a1f5a808a", kill_on_drop: false }`
[INFO] [stdout] 39e40bdb29b80d0c84071bf1727effe2ef882134166e888b867e616a1f5a808a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/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@sha256:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-07-24" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 2ef3809d244d40b8950c05b8a22ed5c860090f039080d7d24077aa95ff53a636
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "2ef3809d244d40b8950c05b8a22ed5c860090f039080d7d24077aa95ff53a636", kill_on_drop: false }`
[INFO] [stderr] warning: An explicit [[bin]] section is specified in Cargo.toml which currently
[INFO] [stderr] disables Cargo from automatically inferring other binary targets.
[INFO] [stderr] This inference behavior will change in the Rust 2018 edition and the following
[INFO] [stderr] files will be included as a binary target:
[INFO] [stderr]
[INFO] [stderr] * /opt/rustwide/workdir/src/main.rs
[INFO] [stderr]
[INFO] [stderr] This is likely to break cargo build or cargo test as these files may not be
[INFO] [stderr] ready to be compiled as a binary target today. You can future-proof yourself
[INFO] [stderr] and disable this warning by adding `autobins = false` to your [package]
[INFO] [stderr] section. You may also move the files to a location where Cargo would not
[INFO] [stderr] automatically infer them to be a target, such as in subfolders.
[INFO] [stderr]
[INFO] [stderr] For more information on this warning you can consult
[INFO] [stderr] https://github.com/rust-lang/cargo/issues/5330
[INFO] [stderr] warning: path `/opt/rustwide/workdir/src/main.rs` was erroneously implicitly accepted for binary `server-bin`,
[INFO] [stderr] please set bin.path in Cargo.toml
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/handler.rs:50:24
[INFO] [stderr] |
[INFO] [stderr] 50 | let metadata = try!(fs::metadata(&resource));
[INFO] [stderr] | ^^^
[INFO] [stderr] |
[INFO] [stderr] = note: `#[warn(deprecated)]` on by default
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/handler.rs:56:21
[INFO] [stderr] |
[INFO] [stderr] 56 | let mut f = try!(File::open(&resource));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/handler.rs:63:13
[INFO] [stderr] |
[INFO] [stderr] 63 | try!(io::copy(&mut f, res));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/handler.rs:64:13
[INFO] [stderr] |
[INFO] [stderr] 64 | try!(res.flush());
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/handler.rs:50:24
[INFO] [stderr] |
[INFO] [stderr] 50 | let metadata = try!(fs::metadata(&resource));
[INFO] [stderr] | ^^^
[INFO] [stderr] |
[INFO] [stderr] = note: `#[warn(deprecated)]` on by default
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/handler.rs:56:21
[INFO] [stderr] |
[INFO] [stderr] 56 | let mut f = try!(File::open(&resource));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/handler.rs:63:13
[INFO] [stderr] |
[INFO] [stderr] 63 | try!(io::copy(&mut f, res));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/handler.rs:64:13
[INFO] [stderr] |
[INFO] [stderr] 64 | try!(res.flush());
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/handler.rs:72:13
[INFO] [stderr] |
[INFO] [stderr] 72 | try!(res.write("404 - Not Found".as_bytes()));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/handler.rs:73:13
[INFO] [stderr] |
[INFO] [stderr] 73 | try!(res.flush());
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/handler.rs:81:13
[INFO] [stderr] |
[INFO] [stderr] 81 | try!(res.write(format!("{} - {}", status, description).as_bytes()));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/handler.rs:82:13
[INFO] [stderr] |
[INFO] [stderr] 82 | try!(res.flush());
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/handler.rs:142:13
[INFO] [stderr] |
[INFO] [stderr] 142 | try!(res.write("".as_bytes()));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/handler.rs:147:32
[INFO] [stderr] |
[INFO] [stderr] 147 | let metadata = try!(fs::metadata(Path::new(&resource).join(&name)));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/handler.rs:160:17
[INFO] [stderr] |
[INFO] [stderr] 160 | try!(res.write(format!("- {1}
", path, name).as_bytes()));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/handler.rs:162:13
[INFO] [stderr] |
[INFO] [stderr] 162 | try!(res.write("
".as_bytes()));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/handler.rs:163:13
[INFO] [stderr] |
[INFO] [stderr] 163 | try!(res.flush());
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/parser.rs:50:26
[INFO] [stderr] |
[INFO] [stderr] 50 | let bytes_read = try!(buf_reader.read_line(&mut request_line));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/parser.rs:56:9
[INFO] [stderr] |
[INFO] [stderr] 56 | try!(self.handler.on_message_begin());
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/parser.rs:65:17
[INFO] [stderr] |
[INFO] [stderr] 65 | try!(self.handler.on_method(method));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/parser.rs:70:17
[INFO] [stderr] |
[INFO] [stderr] 70 | try!(self.handler.on_url(&url));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/parser.rs:75:25
[INFO] [stderr] |
[INFO] [stderr] 75 | try!(self.handler.on_query(&query));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/parser.rs:81:17
[INFO] [stderr] |
[INFO] [stderr] 81 | try!(self.handler.on_http_version(version));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/parser.rs:110:21
[INFO] [stderr] |
[INFO] [stderr] 110 | try!(self.handler.on_header(field, values));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/handler.rs:72:13
[INFO] [stderr] |
[INFO] [stderr] 72 | try!(res.write("404 - Not Found".as_bytes()));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/handler.rs:73:13
[INFO] [stderr] |
[INFO] [stderr] 73 | try!(res.flush());
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/handler.rs:81:13
[INFO] [stderr] |
[INFO] [stderr] 81 | try!(res.write(format!("{} - {}", status, description).as_bytes()));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/handler.rs:82:13
[INFO] [stderr] |
[INFO] [stderr] 82 | try!(res.flush());
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/handler.rs:142:13
[INFO] [stderr] |
[INFO] [stderr] 142 | try!(res.write("".as_bytes()));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/handler.rs:147:32
[INFO] [stderr] |
[INFO] [stderr] 147 | let metadata = try!(fs::metadata(Path::new(&resource).join(&name)));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/handler.rs:160:17
[INFO] [stderr] |
[INFO] [stderr] 160 | try!(res.write(format!("- {1}
", path, name).as_bytes()));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/handler.rs:162:13
[INFO] [stderr] |
[INFO] [stderr] 162 | try!(res.write("
".as_bytes()));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/handler.rs:163:13
[INFO] [stderr] |
[INFO] [stderr] 163 | try!(res.flush());
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/parser.rs:50:26
[INFO] [stderr] |
[INFO] [stderr] 50 | let bytes_read = try!(buf_reader.read_line(&mut request_line));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/parser.rs:56:9
[INFO] [stderr] |
[INFO] [stderr] 56 | try!(self.handler.on_message_begin());
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/parser.rs:65:17
[INFO] [stderr] |
[INFO] [stderr] 65 | try!(self.handler.on_method(method));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/parser.rs:70:17
[INFO] [stderr] |
[INFO] [stderr] 70 | try!(self.handler.on_url(&url));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/parser.rs:75:25
[INFO] [stderr] |
[INFO] [stderr] 75 | try!(self.handler.on_query(&query));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/parser.rs:81:17
[INFO] [stderr] |
[INFO] [stderr] 81 | try!(self.handler.on_http_version(version));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/parser.rs:110:21
[INFO] [stderr] |
[INFO] [stderr] 110 | try!(self.handler.on_header(field, values));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/response.rs:21:22
[INFO] [stderr] |
[INFO] [stderr] 21 | let stream = try!(stream.try_clone());
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/response.rs:88:9
[INFO] [stderr] |
[INFO] [stderr] 88 | try!(self.stream.write(status_line.as_bytes()));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/response.rs:90:9
[INFO] [stderr] |
[INFO] [stderr] 90 | try!(self.stream.write(format!("{}", self.headers.to_string()).as_bytes()));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/response.rs:91:9
[INFO] [stderr] |
[INFO] [stderr] 91 | try!(self.stream.write(b"\r\n"));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/response.rs:94:9
[INFO] [stderr] |
[INFO] [stderr] 94 | try!(self.stream.get_mut().shutdown(Shutdown::Both));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: unused import: `std::error::Error`
[INFO] [stderr] --> src/handler.rs:1:5
[INFO] [stderr] |
[INFO] [stderr] 1 | use std::error::Error;
[INFO] [stderr] | ^^^^^^^^^^^^^^^^^
[INFO] [stderr] |
[INFO] [stderr] = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr]
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr] --> src/parser.rs:46:72
[INFO] [stderr] |
[INFO] [stderr] 46 | pub fn parse(&mut self, stream: &mut R) -> Result<(), Box> {
[INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error`
[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/request.rs:81:46
[INFO] [stderr] |
[INFO] [stderr] 81 | pub fn body<'a>(&'a mut self) -> &'a mut Read {
[INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read`
[INFO] [stderr]
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr] --> src/response.rs:20:68
[INFO] [stderr] |
[INFO] [stderr] 20 | pub fn from_stream(stream: &TcpStream) -> Result> {
[INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stderr]
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr] --> src/server.rs:109:38
[INFO] [stderr] |
[INFO] [stderr] 109 | pub fn start(&self, handler: Box) {
[INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Handler + Send + Sync`
[INFO] [stderr]
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr] --> src/headers.rs:27:17
[INFO] [stderr] |
[INFO] [stderr] 27 | let mut vec = self.data.entry(name.trim().to_owned()).or_insert(Vec::::new());
[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/headers.rs:35:13
[INFO] [stderr] |
[INFO] [stderr] 35 | let mut vec = self.data.entry(name.to_owned()).or_insert(Vec::::new());
[INFO] [stderr] | ----^^^
[INFO] [stderr] | |
[INFO] [stderr] | help: remove this `mut`
[INFO] [stderr]
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr] --> src/query.rs:29:21
[INFO] [stderr] |
[INFO] [stderr] 29 | let mut query_vec = data.entry(key.to_owned()).or_insert(Vec::new());
[INFO] [stderr] | ----^^^^^^^^^
[INFO] [stderr] | |
[INFO] [stderr] | help: remove this `mut`
[INFO] [stderr]
[INFO] [stderr] warning: 33 warnings emitted
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/response.rs:21:22
[INFO] [stderr] |
[INFO] [stderr] 21 | let stream = try!(stream.try_clone());
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/response.rs:88:9
[INFO] [stderr] |
[INFO] [stderr] 88 | try!(self.stream.write(status_line.as_bytes()));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/response.rs:90:9
[INFO] [stderr] |
[INFO] [stderr] 90 | try!(self.stream.write(format!("{}", self.headers.to_string()).as_bytes()));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/response.rs:91:9
[INFO] [stderr] |
[INFO] [stderr] 91 | try!(self.stream.write(b"\r\n"));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr] --> src/response.rs:94:9
[INFO] [stderr] |
[INFO] [stderr] 94 | try!(self.stream.get_mut().shutdown(Shutdown::Both));
[INFO] [stderr] | ^^^
[INFO] [stderr]
[INFO] [stderr] warning: unused import: `std::error::Error`
[INFO] [stderr] --> src/handler.rs:1:5
[INFO] [stderr] |
[INFO] [stderr] 1 | use std::error::Error;
[INFO] [stderr] | ^^^^^^^^^^^^^^^^^
[INFO] [stderr] |
[INFO] [stderr] = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr]
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr] --> src/parser.rs:46:72
[INFO] [stderr] |
[INFO] [stderr] 46 | pub fn parse(&mut self, stream: &mut R) -> Result<(), Box> {
[INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error`
[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/request.rs:81:46
[INFO] [stderr] |
[INFO] [stderr] 81 | pub fn body<'a>(&'a mut self) -> &'a mut Read {
[INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read`
[INFO] [stderr]
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr] --> src/response.rs:20:68
[INFO] [stderr] |
[INFO] [stderr] 20 | pub fn from_stream(stream: &TcpStream) -> Result> {
[INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stderr]
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr] --> src/server.rs:109:38
[INFO] [stderr] |
[INFO] [stderr] 109 | pub fn start(&self, handler: Box) {
[INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Handler + Send + Sync`
[INFO] [stderr]
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr] --> src/headers.rs:27:17
[INFO] [stderr] |
[INFO] [stderr] 27 | let mut vec = self.data.entry(name.trim().to_owned()).or_insert(Vec::::new());
[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/headers.rs:35:13
[INFO] [stderr] |
[INFO] [stderr] 35 | let mut vec = self.data.entry(name.to_owned()).or_insert(Vec::::new());
[INFO] [stderr] | ----^^^
[INFO] [stderr] | |
[INFO] [stderr] | help: remove this `mut`
[INFO] [stderr]
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr] --> src/query.rs:29:21
[INFO] [stderr] |
[INFO] [stderr] 29 | let mut query_vec = data.entry(key.to_owned()).or_insert(Vec::new());
[INFO] [stderr] | ----^^^^^^^^^
[INFO] [stderr] | |
[INFO] [stderr] | help: remove this `mut`
[INFO] [stderr]
[INFO] [stderr] warning: 33 warnings emitted
[INFO] [stderr]
[INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.10s
[INFO] [stderr] Running /opt/rustwide/target/debug/deps/http_server-999166b4e760a665
[INFO] [stdout]
[INFO] [stdout] running 0 tests
[INFO] [stdout]
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
[INFO] [stdout]
[INFO] [stderr] Doc-tests http-server
[INFO] [stdout]
[INFO] [stdout] running 1 test
[INFO] [stdout] test src/server.rs - server::HttpServer (line 75) ... ok
[INFO] [stdout]
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
[INFO] [stdout]
[INFO] running `Command { std: "docker" "inspect" "2ef3809d244d40b8950c05b8a22ed5c860090f039080d7d24077aa95ff53a636", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2ef3809d244d40b8950c05b8a22ed5c860090f039080d7d24077aa95ff53a636", kill_on_drop: false }`
[INFO] [stdout] 2ef3809d244d40b8950c05b8a22ed5c860090f039080d7d24077aa95ff53a636