[INFO] cloning repository https://github.com/killercup/trpl-ebook [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/killercup/trpl-ebook" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkillercup%2Ftrpl-ebook", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkillercup%2Ftrpl-ebook'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] f612176b8de6326239b5181cdf48988948e0fea7 [INFO] testing killercup/trpl-ebook against 1.60.0 for beta-1.61-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkillercup%2Ftrpl-ebook" "/workspace/builds/worker-13/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-13/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/killercup/trpl-ebook on toolchain 1.60.0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/killercup/trpl-ebook [INFO] finished tweaking git repo https://github.com/killercup/trpl-ebook [INFO] tweaked toml for git repo https://github.com/killercup/trpl-ebook written to /workspace/builds/worker-13/source/Cargo.toml [INFO] crate git repo https://github.com/killercup/trpl-ebook already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating git repository `https://github.com/Manishearth/rust-clippy.git` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded toml v0.1.30 [INFO] [stderr] Downloaded regex v0.1.77 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 22cc157293d6dc77a1776544a9fbaa38d22fee3174d7ce249caa80195097e52a [INFO] running `Command { std: "docker" "start" "-a" "22cc157293d6dc77a1776544a9fbaa38d22fee3174d7ce249caa80195097e52a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "22cc157293d6dc77a1776544a9fbaa38d22fee3174d7ce249caa80195097e52a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "22cc157293d6dc77a1776544a9fbaa38d22fee3174d7ce249caa80195097e52a", kill_on_drop: false }` [INFO] [stdout] 22cc157293d6dc77a1776544a9fbaa38d22fee3174d7ce249caa80195097e52a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ce9a0bd9647d139ed41293c1e52f2356de5511d0b10bd0009333a9d7bd8c71e0 [INFO] running `Command { std: "docker" "start" "-a" "ce9a0bd9647d139ed41293c1e52f2356de5511d0b10bd0009333a9d7bd8c71e0", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling winapi-build v0.1.1 [INFO] [stderr] Compiling libc v0.2.16 [INFO] [stderr] Compiling winapi v0.2.8 [INFO] [stderr] Compiling utf8-ranges v0.1.3 [INFO] [stderr] Compiling regex-syntax v0.3.5 [INFO] [stderr] Compiling strsim v0.5.1 [INFO] [stderr] Compiling lazy_static v0.2.1 [INFO] [stderr] Compiling rustc-serialize v0.3.24 [INFO] [stderr] Compiling memchr v0.1.11 [INFO] [stderr] Compiling kernel32-sys v0.2.2 [INFO] [stderr] Compiling aho-corasick v0.5.3 [INFO] [stderr] Compiling thread-id v2.0.0 [INFO] [stderr] Compiling thread_local v0.2.7 [INFO] [stderr] Compiling regex v0.1.77 [INFO] [stderr] Compiling docopt v0.6.86 [INFO] [stderr] Compiling compile-trpl v0.1.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: use of deprecated macro `RustcDecodable`: rustc-serialize is deprecated and no longer supported [INFO] [stdout] --> src/main.rs:34:17 [INFO] [stdout] | [INFO] [stdout] 34 | #[derive(Debug, RustcDecodable)] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/helpers/file.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | try!(file.read_to_string(&mut buffer)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/helpers/file.rs:7:20 [INFO] [stdout] | [INFO] [stdout] 7 | let mut file = try!(File::open(path)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/helpers/file.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | try!(file.write_all(input.as_bytes())); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/helpers/file.rs:14:20 [INFO] [stdout] | [INFO] [stdout] 14 | let mut file = try!(File::create(&Path::new(name))); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/helpers/normalize.rs:43:14 [INFO] [stdout] | [INFO] [stdout] 43 | output = try!(break_code_blocks(&input, 87, "↳ ")); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/helpers/normalize.rs:44:14 [INFO] [stdout] | [INFO] [stdout] 44 | output = try!(normalize_code_start(&output)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/helpers/normalize.rs:45:14 [INFO] [stdout] | [INFO] [stdout] 45 | output = try!(normalize_links(&output)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/helpers/normalize.rs:46:14 [INFO] [stdout] | [INFO] [stdout] 46 | output = try!(normalize_math(&output)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/helpers/shell_pipe.rs:59:5 [INFO] [stdout] | [INFO] [stdout] 59 | try!(stdout.read_to_string(&mut output)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/helpers/shell_pipe.rs:43:19 [INFO] [stdout] | [INFO] [stdout] 43 | let process = try!( [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/helpers/shell_pipe.rs:53:9 [INFO] [stdout] | [INFO] [stdout] 53 | try!(stdin.write_all(input.as_bytes())); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/helpers/shell_pipe.rs:52:46 [INFO] [stdout] | [INFO] [stdout] 52 | let mut stdin: process::ChildStdin = try!(process.stdin.ok_or(CommandError::StdIn)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/helpers/shell_pipe.rs:58:44 [INFO] [stdout] | [INFO] [stdout] 58 | let mut stdout: process::ChildStdout = try!(process.stdout.ok_or(CommandError::StdOut)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/index.rs:17:17 [INFO] [stdout] | [INFO] [stdout] 17 | let files = try!(fs::read_dir(&Path::new(path))) [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/index.rs:43:17 [INFO] [stdout] | [INFO] [stdout] 43 | let files = try!(list_file_groups(path)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/markdown.rs:69:15 [INFO] [stdout] | [INFO] [stdout] 69 | let toc = try!(file::get_file_content(&src_path.join("SUMMARY.md"))); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/markdown.rs:79:20 [INFO] [stdout] | [INFO] [stdout] 79 | let file = try!(file::get_file_content(&src_path.join("README.md"))); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/markdown.rs:80:27 [INFO] [stdout] | [INFO] [stdout] 80 | let mut content = try!(adjust_header_level::adjust_header_level(&file, 1)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/markdown.rs:81:19 [INFO] [stdout] | [INFO] [stdout] 81 | content = try!(remove_file_title::remove_file_title(&content)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/markdown.rs:82:19 [INFO] [stdout] | [INFO] [stdout] 82 | content = try!(adjust_reference_names::adjust_reference_name(&content, "readme")); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/markdown.rs:83:19 [INFO] [stdout] | [INFO] [stdout] 83 | content = try!(normalize::normalize(&content)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/markdown.rs:94:20 [INFO] [stdout] | [INFO] [stdout] 94 | let file = try!(file::get_file_content(&src_path.join(&chapter.file))); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/markdown.rs:96:27 [INFO] [stdout] | [INFO] [stdout] 96 | let mut content = try!(adjust_header_level::adjust_header_level(&file, 3)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/markdown.rs:97:19 [INFO] [stdout] | [INFO] [stdout] 97 | content = try!(remove_file_title::remove_file_title(&content)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/markdown.rs:98:19 [INFO] [stdout] | [INFO] [stdout] 98 | content = try!(adjust_reference_names::adjust_reference_name(&content, &chapter.file)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/markdown.rs:99:19 [INFO] [stdout] | [INFO] [stdout] 99 | content = try!(normalize::normalize(&content)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/pandoc.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | try!(run(&opts, &book)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/mod.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | try!(helpers::file::write_string_to_file(&book, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/mod.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | try!(save_as(&book, prefix, "html", options::HTML)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/mod.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | try!(save_as(&book, prefix, "epub", options::EPUB)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/mod.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | try!(save_as(&cc_book, prefix, "tex", options::LATEX)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/mod.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | try!(save_as(&plain_book, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/mod.rs:38:5 [INFO] [stdout] | [INFO] [stdout] 38 | try!(save_as(&plain_book, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/mod.rs:15:21 [INFO] [stdout] | [INFO] [stdout] 15 | let meta_data = try!(helpers::file::get_file_content(meta_file)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/mod.rs:17:16 [INFO] [stdout] | [INFO] [stdout] 17 | let book = try!(markdown::to_single_file(src_path, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated trait `std::ascii::AsciiExt`: use inherent methods instead [INFO] [stdout] --> src/convert_book/index.rs:5:17 [INFO] [stdout] | [INFO] [stdout] 5 | use std::ascii::AsciiExt; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated trait `std::ascii::AsciiExt`: use inherent methods instead [INFO] [stdout] --> src/convert_book/pandoc.rs:2:17 [INFO] [stdout] | [INFO] [stdout] 2 | use std::ascii::AsciiExt; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/convert_book/mod.rs:14:86 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn render_book(prefix: &str, src_path: &Path, meta_file: &str) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 14 - pub fn render_book(prefix: &str, src_path: &Path, meta_file: &str) -> Result<(), Box> { [INFO] [stdout] 14 + pub fn render_book(prefix: &str, src_path: &Path, meta_file: &str) -> Result<(), Box> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/helpers/adjust_header_level.rs:9:88 [INFO] [stdout] | [INFO] [stdout] 9 | pub fn adjust_header_level(input: &str, base_level: HeaderLevel) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 9 - pub fn adjust_header_level(input: &str, base_level: HeaderLevel) -> Result> { [INFO] [stdout] 9 + pub fn adjust_header_level(input: &str, base_level: HeaderLevel) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/helpers/adjust_reference_names.rs:6:79 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn adjust_reference_name(input: &str, prefix: &str) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 6 - pub fn adjust_reference_name(input: &str, prefix: &str) -> Result> { [INFO] [stdout] 6 + pub fn adjust_reference_name(input: &str, prefix: &str) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/helpers/file.rs:6:72 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn get_file_content>(path: P) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 6 - pub fn get_file_content>(path: P) -> Result> { [INFO] [stdout] 6 + pub fn get_file_content>(path: P) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/helpers/file.rs:13:72 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn write_string_to_file(input: &str, name: &str) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 13 - pub fn write_string_to_file(input: &str, name: &str) -> Result<(), Box> { [INFO] [stdout] 13 + pub fn write_string_to_file(input: &str, name: &str) -> Result<(), Box> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/helpers/line_breaks.rs:3:85 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn break_long_line(line: &str, max_len: usize, sep: &str) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 3 - pub fn break_long_line(line: &str, max_len: usize, sep: &str) -> Result> { [INFO] [stdout] 3 + pub fn break_long_line(line: &str, max_len: usize, sep: &str) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/helpers/normalize.rs:6:55 [INFO] [stdout] | [INFO] [stdout] 6 | fn normalize_links(input: &str) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 6 - fn normalize_links(input: &str) -> Result> { [INFO] [stdout] 6 + fn normalize_links(input: &str) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/helpers/normalize.rs:34:54 [INFO] [stdout] | [INFO] [stdout] 34 | fn normalize_math(input: &str) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 34 - fn normalize_math(input: &str) -> Result> { [INFO] [stdout] 34 + fn normalize_math(input: &str) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/helpers/normalize.rs:40:53 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn normalize(input: &str) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 40 - pub fn normalize(input: &str) -> Result> { [INFO] [stdout] 40 + pub fn normalize(input: &str) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/helpers/normalize_code_blocks.rs:8:88 [INFO] [stdout] | [INFO] [stdout] 8 | pub fn break_code_blocks(input: &str, max_len: usize, sep: &str) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 8 - pub fn break_code_blocks(input: &str, max_len: usize, sep: &str) -> Result> { [INFO] [stdout] 8 + pub fn break_code_blocks(input: &str, max_len: usize, sep: &str) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/helpers/normalize_code_blocks.rs:29:64 [INFO] [stdout] | [INFO] [stdout] 29 | pub fn normalize_code_start(input: &str) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 29 - pub fn normalize_code_start(input: &str) -> Result> { [INFO] [stdout] 29 + pub fn normalize_code_start(input: &str) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/helpers/remove_file_title.rs:4:61 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn remove_file_title(input: &str) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 4 - pub fn remove_file_title(input: &str) -> Result> { [INFO] [stdout] 4 + pub fn remove_file_title(input: &str) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/helpers/shell_pipe.rs:31:74 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn run(command: &str, args: &str, input: &str) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 31 - pub fn run(command: &str, args: &str, input: &str) -> Result> { [INFO] [stdout] 31 + pub fn run(command: &str, args: &str, input: &str) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/convert_book/index.rs:14:60 [INFO] [stdout] | [INFO] [stdout] 14 | fn list_file_groups(path: &str) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 14 - fn list_file_groups(path: &str) -> Result> { [INFO] [stdout] 14 + fn list_file_groups(path: &str) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/convert_book/index.rs:40:55 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn render_index(path: &str) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 40 - pub fn render_index(path: &str) -> Result> { [INFO] [stdout] 40 + pub fn render_index(path: &str) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/convert_book/markdown.rs:66:74 [INFO] [stdout] | [INFO] [stdout] 66 | pub fn to_single_file(src_path: &Path, meta: &str) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 66 - pub fn to_single_file(src_path: &Path, meta: &str) -> Result> { [INFO] [stdout] 66 + pub fn to_single_file(src_path: &Path, meta: &str) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/convert_book/pandoc.rs:7:59 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn run(args: &str, input: &str) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 7 - pub fn run(args: &str, input: &str) -> Result> { [INFO] [stdout] 7 + pub fn run(args: &str, input: &str) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/convert_book/pandoc.rs:11:86 [INFO] [stdout] | [INFO] [stdout] 11 | pub fn save_as(book: &str, prefix: &str, format: &str, opts: &str) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 11 - pub fn save_as(book: &str, prefix: &str, format: &str, opts: &str) -> Result<(), Box> { [INFO] [stdout] 11 + pub fn save_as(book: &str, prefix: &str, format: &str, opts: &str) -> Result<(), Box> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ascii::AsciiExt` [INFO] [stdout] --> src/convert_book/index.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::ascii::AsciiExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ascii::AsciiExt` [INFO] [stdout] --> src/convert_book/pandoc.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::ascii::AsciiExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 58 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1m 59s [INFO] running `Command { std: "docker" "inspect" "ce9a0bd9647d139ed41293c1e52f2356de5511d0b10bd0009333a9d7bd8c71e0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ce9a0bd9647d139ed41293c1e52f2356de5511d0b10bd0009333a9d7bd8c71e0", kill_on_drop: false }` [INFO] [stdout] ce9a0bd9647d139ed41293c1e52f2356de5511d0b10bd0009333a9d7bd8c71e0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] fae0fcaa555931d33cdaf0d1f56f917c63b106bef868a56505e782332018a07e [INFO] running `Command { std: "docker" "start" "-a" "fae0fcaa555931d33cdaf0d1f56f917c63b106bef868a56505e782332018a07e", kill_on_drop: false }` [INFO] [stderr] Compiling compile-trpl v0.1.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: use of deprecated macro `RustcDecodable`: rustc-serialize is deprecated and no longer supported [INFO] [stdout] --> src/main.rs:34:17 [INFO] [stdout] | [INFO] [stdout] 34 | #[derive(Debug, RustcDecodable)] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/helpers/file.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | try!(file.read_to_string(&mut buffer)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/helpers/file.rs:7:20 [INFO] [stdout] | [INFO] [stdout] 7 | let mut file = try!(File::open(path)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/helpers/file.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | try!(file.write_all(input.as_bytes())); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/helpers/file.rs:14:20 [INFO] [stdout] | [INFO] [stdout] 14 | let mut file = try!(File::create(&Path::new(name))); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/helpers/normalize.rs:43:14 [INFO] [stdout] | [INFO] [stdout] 43 | output = try!(break_code_blocks(&input, 87, "↳ ")); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/helpers/normalize.rs:44:14 [INFO] [stdout] | [INFO] [stdout] 44 | output = try!(normalize_code_start(&output)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/helpers/normalize.rs:45:14 [INFO] [stdout] | [INFO] [stdout] 45 | output = try!(normalize_links(&output)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/helpers/normalize.rs:46:14 [INFO] [stdout] | [INFO] [stdout] 46 | output = try!(normalize_math(&output)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/helpers/shell_pipe.rs:59:5 [INFO] [stdout] | [INFO] [stdout] 59 | try!(stdout.read_to_string(&mut output)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/helpers/shell_pipe.rs:43:19 [INFO] [stdout] | [INFO] [stdout] 43 | let process = try!( [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/helpers/shell_pipe.rs:53:9 [INFO] [stdout] | [INFO] [stdout] 53 | try!(stdin.write_all(input.as_bytes())); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/helpers/shell_pipe.rs:52:46 [INFO] [stdout] | [INFO] [stdout] 52 | let mut stdin: process::ChildStdin = try!(process.stdin.ok_or(CommandError::StdIn)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/helpers/shell_pipe.rs:58:44 [INFO] [stdout] | [INFO] [stdout] 58 | let mut stdout: process::ChildStdout = try!(process.stdout.ok_or(CommandError::StdOut)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/index.rs:17:17 [INFO] [stdout] | [INFO] [stdout] 17 | let files = try!(fs::read_dir(&Path::new(path))) [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/index.rs:43:17 [INFO] [stdout] | [INFO] [stdout] 43 | let files = try!(list_file_groups(path)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/markdown.rs:69:15 [INFO] [stdout] | [INFO] [stdout] 69 | let toc = try!(file::get_file_content(&src_path.join("SUMMARY.md"))); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/markdown.rs:79:20 [INFO] [stdout] | [INFO] [stdout] 79 | let file = try!(file::get_file_content(&src_path.join("README.md"))); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/markdown.rs:80:27 [INFO] [stdout] | [INFO] [stdout] 80 | let mut content = try!(adjust_header_level::adjust_header_level(&file, 1)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/markdown.rs:81:19 [INFO] [stdout] | [INFO] [stdout] 81 | content = try!(remove_file_title::remove_file_title(&content)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/markdown.rs:82:19 [INFO] [stdout] | [INFO] [stdout] 82 | content = try!(adjust_reference_names::adjust_reference_name(&content, "readme")); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/markdown.rs:83:19 [INFO] [stdout] | [INFO] [stdout] 83 | content = try!(normalize::normalize(&content)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/markdown.rs:94:20 [INFO] [stdout] | [INFO] [stdout] 94 | let file = try!(file::get_file_content(&src_path.join(&chapter.file))); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/markdown.rs:96:27 [INFO] [stdout] | [INFO] [stdout] 96 | let mut content = try!(adjust_header_level::adjust_header_level(&file, 3)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/markdown.rs:97:19 [INFO] [stdout] | [INFO] [stdout] 97 | content = try!(remove_file_title::remove_file_title(&content)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/markdown.rs:98:19 [INFO] [stdout] | [INFO] [stdout] 98 | content = try!(adjust_reference_names::adjust_reference_name(&content, &chapter.file)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/markdown.rs:99:19 [INFO] [stdout] | [INFO] [stdout] 99 | content = try!(normalize::normalize(&content)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/pandoc.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | try!(run(&opts, &book)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/mod.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | try!(helpers::file::write_string_to_file(&book, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/mod.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | try!(save_as(&book, prefix, "html", options::HTML)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/mod.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | try!(save_as(&book, prefix, "epub", options::EPUB)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/mod.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | try!(save_as(&cc_book, prefix, "tex", options::LATEX)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/mod.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | try!(save_as(&plain_book, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/mod.rs:38:5 [INFO] [stdout] | [INFO] [stdout] 38 | try!(save_as(&plain_book, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/mod.rs:15:21 [INFO] [stdout] | [INFO] [stdout] 15 | let meta_data = try!(helpers::file::get_file_content(meta_file)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/convert_book/mod.rs:17:16 [INFO] [stdout] | [INFO] [stdout] 17 | let book = try!(markdown::to_single_file(src_path, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated trait `std::ascii::AsciiExt`: use inherent methods instead [INFO] [stdout] --> src/convert_book/index.rs:5:17 [INFO] [stdout] | [INFO] [stdout] 5 | use std::ascii::AsciiExt; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated trait `std::ascii::AsciiExt`: use inherent methods instead [INFO] [stdout] --> src/convert_book/pandoc.rs:2:17 [INFO] [stdout] | [INFO] [stdout] 2 | use std::ascii::AsciiExt; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/convert_book/mod.rs:14:86 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn render_book(prefix: &str, src_path: &Path, meta_file: &str) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 14 - pub fn render_book(prefix: &str, src_path: &Path, meta_file: &str) -> Result<(), Box> { [INFO] [stdout] 14 + pub fn render_book(prefix: &str, src_path: &Path, meta_file: &str) -> Result<(), Box> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/helpers/adjust_header_level.rs:9:88 [INFO] [stdout] | [INFO] [stdout] 9 | pub fn adjust_header_level(input: &str, base_level: HeaderLevel) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 9 - pub fn adjust_header_level(input: &str, base_level: HeaderLevel) -> Result> { [INFO] [stdout] 9 + pub fn adjust_header_level(input: &str, base_level: HeaderLevel) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/helpers/adjust_reference_names.rs:6:79 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn adjust_reference_name(input: &str, prefix: &str) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 6 - pub fn adjust_reference_name(input: &str, prefix: &str) -> Result> { [INFO] [stdout] 6 + pub fn adjust_reference_name(input: &str, prefix: &str) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/helpers/file.rs:6:72 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn get_file_content>(path: P) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 6 - pub fn get_file_content>(path: P) -> Result> { [INFO] [stdout] 6 + pub fn get_file_content>(path: P) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/helpers/file.rs:13:72 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn write_string_to_file(input: &str, name: &str) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 13 - pub fn write_string_to_file(input: &str, name: &str) -> Result<(), Box> { [INFO] [stdout] 13 + pub fn write_string_to_file(input: &str, name: &str) -> Result<(), Box> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/helpers/line_breaks.rs:3:85 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn break_long_line(line: &str, max_len: usize, sep: &str) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 3 - pub fn break_long_line(line: &str, max_len: usize, sep: &str) -> Result> { [INFO] [stdout] 3 + pub fn break_long_line(line: &str, max_len: usize, sep: &str) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/helpers/normalize.rs:6:55 [INFO] [stdout] | [INFO] [stdout] 6 | fn normalize_links(input: &str) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 6 - fn normalize_links(input: &str) -> Result> { [INFO] [stdout] 6 + fn normalize_links(input: &str) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/helpers/normalize.rs:34:54 [INFO] [stdout] | [INFO] [stdout] 34 | fn normalize_math(input: &str) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 34 - fn normalize_math(input: &str) -> Result> { [INFO] [stdout] 34 + fn normalize_math(input: &str) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/helpers/normalize.rs:40:53 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn normalize(input: &str) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 40 - pub fn normalize(input: &str) -> Result> { [INFO] [stdout] 40 + pub fn normalize(input: &str) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/helpers/normalize_code_blocks.rs:8:88 [INFO] [stdout] | [INFO] [stdout] 8 | pub fn break_code_blocks(input: &str, max_len: usize, sep: &str) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 8 - pub fn break_code_blocks(input: &str, max_len: usize, sep: &str) -> Result> { [INFO] [stdout] 8 + pub fn break_code_blocks(input: &str, max_len: usize, sep: &str) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/helpers/normalize_code_blocks.rs:29:64 [INFO] [stdout] | [INFO] [stdout] 29 | pub fn normalize_code_start(input: &str) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 29 - pub fn normalize_code_start(input: &str) -> Result> { [INFO] [stdout] 29 + pub fn normalize_code_start(input: &str) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/helpers/remove_file_title.rs:4:61 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn remove_file_title(input: &str) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 4 - pub fn remove_file_title(input: &str) -> Result> { [INFO] [stdout] 4 + pub fn remove_file_title(input: &str) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/helpers/shell_pipe.rs:31:74 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn run(command: &str, args: &str, input: &str) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 31 - pub fn run(command: &str, args: &str, input: &str) -> Result> { [INFO] [stdout] 31 + pub fn run(command: &str, args: &str, input: &str) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/convert_book/index.rs:14:60 [INFO] [stdout] | [INFO] [stdout] 14 | fn list_file_groups(path: &str) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 14 - fn list_file_groups(path: &str) -> Result> { [INFO] [stdout] 14 + fn list_file_groups(path: &str) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/convert_book/index.rs:40:55 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn render_index(path: &str) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 40 - pub fn render_index(path: &str) -> Result> { [INFO] [stdout] 40 + pub fn render_index(path: &str) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/convert_book/markdown.rs:66:74 [INFO] [stdout] | [INFO] [stdout] 66 | pub fn to_single_file(src_path: &Path, meta: &str) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 66 - pub fn to_single_file(src_path: &Path, meta: &str) -> Result> { [INFO] [stdout] 66 + pub fn to_single_file(src_path: &Path, meta: &str) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/convert_book/pandoc.rs:7:59 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn run(args: &str, input: &str) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 7 - pub fn run(args: &str, input: &str) -> Result> { [INFO] [stdout] 7 + pub fn run(args: &str, input: &str) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/convert_book/pandoc.rs:11:86 [INFO] [stdout] | [INFO] [stdout] 11 | pub fn save_as(book: &str, prefix: &str, format: &str, opts: &str) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 11 - pub fn save_as(book: &str, prefix: &str, format: &str, opts: &str) -> Result<(), Box> { [INFO] [stdout] 11 + pub fn save_as(book: &str, prefix: &str, format: &str, opts: &str) -> Result<(), Box> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ascii::AsciiExt` [INFO] [stdout] --> src/convert_book/index.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::ascii::AsciiExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ascii::AsciiExt` [INFO] [stdout] --> src/convert_book/pandoc.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::ascii::AsciiExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 58 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 1.22s [INFO] running `Command { std: "docker" "inspect" "fae0fcaa555931d33cdaf0d1f56f917c63b106bef868a56505e782332018a07e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "fae0fcaa555931d33cdaf0d1f56f917c63b106bef868a56505e782332018a07e", kill_on_drop: false }` [INFO] [stdout] fae0fcaa555931d33cdaf0d1f56f917c63b106bef868a56505e782332018a07e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] b17eafcd95f42aefefbc15be1741e6b607cb52acf1425da46796187c136f7359 [INFO] running `Command { std: "docker" "start" "-a" "b17eafcd95f42aefefbc15be1741e6b607cb52acf1425da46796187c136f7359", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] warning: use of deprecated macro `RustcDecodable`: rustc-serialize is deprecated and no longer supported [INFO] [stderr] --> src/main.rs:34:17 [INFO] [stderr] | [INFO] [stderr] 34 | #[derive(Debug, RustcDecodable)] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/helpers/file.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | try!(file.read_to_string(&mut buffer)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/helpers/file.rs:7:20 [INFO] [stderr] | [INFO] [stderr] 7 | let mut file = try!(File::open(path)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/helpers/file.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | try!(file.write_all(input.as_bytes())); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/helpers/file.rs:14:20 [INFO] [stderr] | [INFO] [stderr] 14 | let mut file = try!(File::create(&Path::new(name))); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/helpers/normalize.rs:43:14 [INFO] [stderr] | [INFO] [stderr] 43 | output = try!(break_code_blocks(&input, 87, "↳ ")); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/helpers/normalize.rs:44:14 [INFO] [stderr] | [INFO] [stderr] 44 | output = try!(normalize_code_start(&output)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/helpers/normalize.rs:45:14 [INFO] [stderr] | [INFO] [stderr] 45 | output = try!(normalize_links(&output)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/helpers/normalize.rs:46:14 [INFO] [stderr] | [INFO] [stderr] 46 | output = try!(normalize_math(&output)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/helpers/shell_pipe.rs:59:5 [INFO] [stderr] | [INFO] [stderr] 59 | try!(stdout.read_to_string(&mut output)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/helpers/shell_pipe.rs:43:19 [INFO] [stderr] | [INFO] [stderr] 43 | let process = try!( [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/helpers/shell_pipe.rs:53:9 [INFO] [stderr] | [INFO] [stderr] 53 | try!(stdin.write_all(input.as_bytes())); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/helpers/shell_pipe.rs:52:46 [INFO] [stderr] | [INFO] [stderr] 52 | let mut stdin: process::ChildStdin = try!(process.stdin.ok_or(CommandError::StdIn)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/helpers/shell_pipe.rs:58:44 [INFO] [stderr] | [INFO] [stderr] 58 | let mut stdout: process::ChildStdout = try!(process.stdout.ok_or(CommandError::StdOut)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/convert_book/index.rs:17:17 [INFO] [stderr] | [INFO] [stderr] 17 | let files = try!(fs::read_dir(&Path::new(path))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/convert_book/index.rs:43:17 [INFO] [stderr] | [INFO] [stderr] 43 | let files = try!(list_file_groups(path)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/convert_book/markdown.rs:69:15 [INFO] [stderr] | [INFO] [stderr] 69 | let toc = try!(file::get_file_content(&src_path.join("SUMMARY.md"))); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/convert_book/markdown.rs:79:20 [INFO] [stderr] | [INFO] [stderr] 79 | let file = try!(file::get_file_content(&src_path.join("README.md"))); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/convert_book/markdown.rs:80:27 [INFO] [stderr] | [INFO] [stderr] 80 | let mut content = try!(adjust_header_level::adjust_header_level(&file, 1)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/convert_book/markdown.rs:81:19 [INFO] [stderr] | [INFO] [stderr] 81 | content = try!(remove_file_title::remove_file_title(&content)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/convert_book/markdown.rs:82:19 [INFO] [stderr] | [INFO] [stderr] 82 | content = try!(adjust_reference_names::adjust_reference_name(&content, "readme")); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/convert_book/markdown.rs:83:19 [INFO] [stderr] | [INFO] [stderr] 83 | content = try!(normalize::normalize(&content)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/convert_book/markdown.rs:94:20 [INFO] [stderr] | [INFO] [stderr] 94 | let file = try!(file::get_file_content(&src_path.join(&chapter.file))); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/convert_book/markdown.rs:96:27 [INFO] [stderr] | [INFO] [stderr] 96 | let mut content = try!(adjust_header_level::adjust_header_level(&file, 3)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/convert_book/markdown.rs:97:19 [INFO] [stderr] | [INFO] [stderr] 97 | content = try!(remove_file_title::remove_file_title(&content)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/convert_book/markdown.rs:98:19 [INFO] [stderr] | [INFO] [stderr] 98 | content = try!(adjust_reference_names::adjust_reference_name(&content, &chapter.file)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/convert_book/markdown.rs:99:19 [INFO] [stderr] | [INFO] [stderr] 99 | content = try!(normalize::normalize(&content)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/convert_book/pandoc.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | try!(run(&opts, &book)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/convert_book/mod.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | try!(helpers::file::write_string_to_file(&book, [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/convert_book/mod.rs:27:5 [INFO] [stderr] | [INFO] [stderr] 27 | try!(save_as(&book, prefix, "html", options::HTML)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/convert_book/mod.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | try!(save_as(&book, prefix, "epub", options::EPUB)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/convert_book/mod.rs:31:5 [INFO] [stderr] | [INFO] [stderr] 31 | try!(save_as(&cc_book, prefix, "tex", options::LATEX)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/convert_book/mod.rs:34:5 [INFO] [stderr] | [INFO] [stderr] 34 | try!(save_as(&plain_book, [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/convert_book/mod.rs:38:5 [INFO] [stderr] | [INFO] [stderr] 38 | try!(save_as(&plain_book, [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/convert_book/mod.rs:15:21 [INFO] [stderr] | [INFO] [stderr] 15 | let meta_data = try!(helpers::file::get_file_content(meta_file)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/convert_book/mod.rs:17:16 [INFO] [stderr] | [INFO] [stderr] 17 | let book = try!(markdown::to_single_file(src_path, [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated trait `std::ascii::AsciiExt`: use inherent methods instead [INFO] [stderr] --> src/convert_book/index.rs:5:17 [INFO] [stderr] | [INFO] [stderr] 5 | use std::ascii::AsciiExt; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated trait `std::ascii::AsciiExt`: use inherent methods instead [INFO] [stderr] --> src/convert_book/pandoc.rs:2:17 [INFO] [stderr] | [INFO] [stderr] 2 | use std::ascii::AsciiExt; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/convert_book/mod.rs:14:86 [INFO] [stderr] | [INFO] [stderr] 14 | pub fn render_book(prefix: &str, src_path: &Path, meta_file: &str) -> Result<(), Box> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 14 - pub fn render_book(prefix: &str, src_path: &Path, meta_file: &str) -> Result<(), Box> { [INFO] [stderr] 14 + pub fn render_book(prefix: &str, src_path: &Path, meta_file: &str) -> Result<(), Box> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/helpers/adjust_header_level.rs:9:88 [INFO] [stderr] | [INFO] [stderr] 9 | pub fn adjust_header_level(input: &str, base_level: HeaderLevel) -> Result> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 9 - pub fn adjust_header_level(input: &str, base_level: HeaderLevel) -> Result> { [INFO] [stderr] 9 + pub fn adjust_header_level(input: &str, base_level: HeaderLevel) -> Result> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/helpers/adjust_reference_names.rs:6:79 [INFO] [stderr] | [INFO] [stderr] 6 | pub fn adjust_reference_name(input: &str, prefix: &str) -> Result> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 6 - pub fn adjust_reference_name(input: &str, prefix: &str) -> Result> { [INFO] [stderr] 6 + pub fn adjust_reference_name(input: &str, prefix: &str) -> Result> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/helpers/file.rs:6:72 [INFO] [stderr] | [INFO] [stderr] 6 | pub fn get_file_content>(path: P) -> Result> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 6 - pub fn get_file_content>(path: P) -> Result> { [INFO] [stderr] 6 + pub fn get_file_content>(path: P) -> Result> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/helpers/file.rs:13:72 [INFO] [stderr] | [INFO] [stderr] 13 | pub fn write_string_to_file(input: &str, name: &str) -> Result<(), Box> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 13 - pub fn write_string_to_file(input: &str, name: &str) -> Result<(), Box> { [INFO] [stderr] 13 + pub fn write_string_to_file(input: &str, name: &str) -> Result<(), Box> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/helpers/line_breaks.rs:3:85 [INFO] [stderr] | [INFO] [stderr] 3 | pub fn break_long_line(line: &str, max_len: usize, sep: &str) -> Result> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 3 - pub fn break_long_line(line: &str, max_len: usize, sep: &str) -> Result> { [INFO] [stderr] 3 + pub fn break_long_line(line: &str, max_len: usize, sep: &str) -> Result> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/helpers/normalize.rs:6:55 [INFO] [stderr] | [INFO] [stderr] 6 | fn normalize_links(input: &str) -> Result> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 6 - fn normalize_links(input: &str) -> Result> { [INFO] [stderr] 6 + fn normalize_links(input: &str) -> Result> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/helpers/normalize.rs:34:54 [INFO] [stderr] | [INFO] [stderr] 34 | fn normalize_math(input: &str) -> Result> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 34 - fn normalize_math(input: &str) -> Result> { [INFO] [stderr] 34 + fn normalize_math(input: &str) -> Result> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/helpers/normalize.rs:40:53 [INFO] [stderr] | [INFO] [stderr] 40 | pub fn normalize(input: &str) -> Result> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 40 - pub fn normalize(input: &str) -> Result> { [INFO] [stderr] 40 + pub fn normalize(input: &str) -> Result> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/helpers/normalize_code_blocks.rs:8:88 [INFO] [stderr] | [INFO] [stderr] 8 | pub fn break_code_blocks(input: &str, max_len: usize, sep: &str) -> Result> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 8 - pub fn break_code_blocks(input: &str, max_len: usize, sep: &str) -> Result> { [INFO] [stderr] 8 + pub fn break_code_blocks(input: &str, max_len: usize, sep: &str) -> Result> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/helpers/normalize_code_blocks.rs:29:64 [INFO] [stderr] | [INFO] [stderr] 29 | pub fn normalize_code_start(input: &str) -> Result> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 29 - pub fn normalize_code_start(input: &str) -> Result> { [INFO] [stderr] 29 + pub fn normalize_code_start(input: &str) -> Result> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/helpers/remove_file_title.rs:4:61 [INFO] [stderr] | [INFO] [stderr] 4 | pub fn remove_file_title(input: &str) -> Result> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 4 - pub fn remove_file_title(input: &str) -> Result> { [INFO] [stderr] 4 + pub fn remove_file_title(input: &str) -> Result> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/helpers/shell_pipe.rs:31:74 [INFO] [stderr] | [INFO] [stderr] 31 | pub fn run(command: &str, args: &str, input: &str) -> Result> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 31 - pub fn run(command: &str, args: &str, input: &str) -> Result> { [INFO] [stderr] 31 + pub fn run(command: &str, args: &str, input: &str) -> Result> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/convert_book/index.rs:14:60 [INFO] [stderr] | [INFO] [stderr] 14 | fn list_file_groups(path: &str) -> Result> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 14 - fn list_file_groups(path: &str) -> Result> { [INFO] [stderr] 14 + fn list_file_groups(path: &str) -> Result> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/convert_book/index.rs:40:55 [INFO] [stderr] | [INFO] [stderr] 40 | pub fn render_index(path: &str) -> Result> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 40 - pub fn render_index(path: &str) -> Result> { [INFO] [stderr] 40 + pub fn render_index(path: &str) -> Result> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/convert_book/markdown.rs:66:74 [INFO] [stderr] | [INFO] [stderr] 66 | pub fn to_single_file(src_path: &Path, meta: &str) -> Result> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 66 - pub fn to_single_file(src_path: &Path, meta: &str) -> Result> { [INFO] [stderr] 66 + pub fn to_single_file(src_path: &Path, meta: &str) -> Result> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/convert_book/pandoc.rs:7:59 [INFO] [stderr] | [INFO] [stderr] 7 | pub fn run(args: &str, input: &str) -> Result> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 7 - pub fn run(args: &str, input: &str) -> Result> { [INFO] [stderr] 7 + pub fn run(args: &str, input: &str) -> Result> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/convert_book/pandoc.rs:11:86 [INFO] [stderr] | [INFO] [stderr] 11 | pub fn save_as(book: &str, prefix: &str, format: &str, opts: &str) -> Result<(), Box> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 11 - pub fn save_as(book: &str, prefix: &str, format: &str, opts: &str) -> Result<(), Box> { [INFO] [stderr] 11 + pub fn save_as(book: &str, prefix: &str, format: &str, opts: &str) -> Result<(), Box> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ascii::AsciiExt` [INFO] [stderr] --> src/convert_book/index.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use std::ascii::AsciiExt; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ascii::AsciiExt` [INFO] [stderr] --> src/convert_book/pandoc.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::ascii::AsciiExt; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `compile-trpl` (bin "compile-trpl" test) generated 58 warnings [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 24.31s [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/compile_trpl-da412226390b4798) [INFO] [stdout] [INFO] [stdout] running 9 tests [INFO] [stdout] test convert_book::pandoc::dry_run ... ignored [INFO] [stdout] test helpers::adjust_header_level::header_level_calculation ... ok [INFO] [stdout] test helpers::line_breaks::break_long_lines ... ok [INFO] [stdout] test helpers::normalize_code_blocks::code_block_breaking ... ok [INFO] [stdout] test helpers::shell_pipe::dry_run ... ok [INFO] [stdout] test helpers::normalize_code_blocks::code_block_starts ... ok [INFO] [stdout] test helpers::remove_emojis::emoji_removal ... ok [INFO] [stdout] test helpers::convert_checkmarks::checkmark_conversion ... ok [INFO] [stdout] test helpers::adjust_reference_names::reference_renamer ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 8 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "b17eafcd95f42aefefbc15be1741e6b607cb52acf1425da46796187c136f7359", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b17eafcd95f42aefefbc15be1741e6b607cb52acf1425da46796187c136f7359", kill_on_drop: false }` [INFO] [stdout] b17eafcd95f42aefefbc15be1741e6b607cb52acf1425da46796187c136f7359