[INFO] fetching crate dtl 0.0.2... [INFO] testing dtl-0.0.2 against beta-2022-04-10 for beta-1.61-1 [INFO] extracting crate dtl 0.0.2 into /workspace/builds/worker-102/source [INFO] validating manifest of crates.io crate dtl 0.0.2 on toolchain beta-2022-04-10 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-04-10" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate dtl 0.0.2 [INFO] finished tweaking crates.io crate dtl 0.0.2 [INFO] tweaked toml for crates.io crate dtl 0.0.2 written to /workspace/builds/worker-102/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-04-10" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-04-10" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-102/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-102/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" "+beta-2022-04-10" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 8d6a2af2197e89112c413287589635084aaa1a29832f49f15ca355e4f8fb9114 [INFO] running `Command { std: "docker" "start" "-a" "8d6a2af2197e89112c413287589635084aaa1a29832f49f15ca355e4f8fb9114", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "8d6a2af2197e89112c413287589635084aaa1a29832f49f15ca355e4f8fb9114", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8d6a2af2197e89112c413287589635084aaa1a29832f49f15ca355e4f8fb9114", kill_on_drop: false }` [INFO] [stdout] 8d6a2af2197e89112c413287589635084aaa1a29832f49f15ca355e4f8fb9114 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-102/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-102/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" "+beta-2022-04-10" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d12f7c6bbb204714d90a08dc9d15865872905e82fce0cb0513433b464edc15f9 [INFO] running `Command { std: "docker" "start" "-a" "d12f7c6bbb204714d90a08dc9d15865872905e82fce0cb0513433b464edc15f9", kill_on_drop: false }` [INFO] [stderr] Compiling mopa v0.2.2 [INFO] [stderr] Compiling dtl v0.0.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/ast/variable_node.rs:38:33 [INFO] [stdout] | [INFO] [stdout] 38 | Ok(VariableNode { expr: try!(FilterExpression::new(&token.content, filters)) }) [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/ast/mod.rs:92:22 [INFO] [stdout] | [INFO] [stdout] 92 | fn render(&self, &Context, &mut Vec) -> String; [INFO] [stdout] | ^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Context` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(anonymous_parameters)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/ast/mod.rs:92:32 [INFO] [stdout] | [INFO] [stdout] 92 | fn render(&self, &Context, &mut Vec) -> String; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut Vec` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/ast/mod.rs:96:12 [INFO] [stdout] | [INFO] [stdout] 96 | let res = try!(parse(&mut tokens.iter(), Vec::new(), compiler)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/ast/mod.rs:112:31 [INFO] [stdout] | [INFO] [stdout] 112 | let tmp = try!(VariableNode::new(tkn, &compiler.filters)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/filter/mod.rs:47:20 [INFO] [stdout] | [INFO] [stdout] 47 | let filter = try!(FilterNode::from_expression(filter_expr, storage)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/tags/block.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 33 | let res = try!(parse(iter, vec!("endblock"), compiler)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/tags/comment.rs:32:2 [INFO] [stdout] | [INFO] [stdout] 32 | try!(parse(iter, vec!("endcomment"), compiler)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/tags/include.rs:39:16 [INFO] [stdout] | [INFO] [stdout] 39 | let name = try!(match count { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/tags/include.rs:44:20 [INFO] [stdout] | [INFO] [stdout] 44 | let template = try!(compiler.compile_file(Path::new(&name))); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/tags/include.rs:50:16 [INFO] [stdout] | [INFO] [stdout] 50 | let name = try!(words.next().ok_or(Error::new(ErrorKind::Other, "`include` must contain name"))).to_string(); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/tags/include.rs:51:19 [INFO] [stdout] | [INFO] [stdout] 51 | let content = try!(get_template_ast(&name, compiler)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/tags/include.rs:53:19 [INFO] [stdout] | [INFO] [stdout] 53 | let context = try!(match words.next() { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/tags/for_tag.rs:39:30 [INFO] [stdout] | [INFO] [stdout] 39 | let (var_name, list_name) = try!(parse_args(body)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/tags/for_tag.rs:40:12 [INFO] [stdout] | [INFO] [stdout] 40 | let res = try!(parse(iter, vec!("endfor"), compiler)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/tags/if_tag.rs:35:13 [INFO] [stdout] | [INFO] [stdout] 35 | let res = try!(parse(iter, vec!("elif", "else", "endif"), compiler)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/template.rs:67:17 [INFO] [stdout] | [INFO] [stdout] 67 | let t = try!(ast::build(tokens, compiler)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/template.rs:71:29 [INFO] [stdout] | [INFO] [stdout] 71 | is_extends = match try!(Self::get_extends_node(&t)) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/template.rs:73:38 [INFO] [stdout] | [INFO] [stdout] 73 | let mut parent_template = try!(compiler.compile_file(extends_node.name())); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/compiler.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | try!(file.read_to_string(&mut text)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/compiler.rs:15:20 [INFO] [stdout] | [INFO] [stdout] 15 | let mut file = try!(File::open(path)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/compiler.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 27 | for i in (0..filters.len()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 27 - for i in (0..filters.len()) { [INFO] [stdout] 27 + for i in 0..filters.len() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/compiler.rs:43:21 [INFO] [stdout] | [INFO] [stdout] 43 | let metadata = try!(fs::metadata(root.clone())); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/compiler.rs:63:14 [INFO] [stdout] | [INFO] [stdout] 63 | let text = try!(read_file(filepath.as_path())); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/compiler.rs:68:18 [INFO] [stdout] | [INFO] [stdout] 68 | let compiler = try!(Self::new(root)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/compiler.rs:69:6 [INFO] [stdout] | [INFO] [stdout] 69 | Ok(try!(compiler.compile_file(path)).render(context)) [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/context.rs:75:20 [INFO] [stdout] | [INFO] [stdout] 75 | contexts: Vec<&'a Context>, [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] 75 - contexts: Vec<&'a Context>, [INFO] [stdout] 75 + contexts: Vec<&'a dyn Context>, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/filter/filter_node.rs:28:70 [INFO] [stdout] | [INFO] [stdout] 28 | pub type FilterFunction = fn(Option>, &str) -> Option>; [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] 28 - pub type FilterFunction = fn(Option>, &str) -> Option>; [INFO] [stdout] 28 + pub type FilterFunction = fn(Option>, &str) -> Option>; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/filter/filter_node.rs:28:41 [INFO] [stdout] | [INFO] [stdout] 28 | pub type FilterFunction = fn(Option>, &str) -> Option>; [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] 28 - pub type FilterFunction = fn(Option>, &str) -> Option>; [INFO] [stdout] 28 + pub type FilterFunction = fn(Option>, &str) -> Option>; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/context.rs:35:31 [INFO] [stdout] | [INFO] [stdout] 35 | dict: HashMap>, [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] 35 - dict: HashMap>, [INFO] [stdout] 35 + dict: HashMap>, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast/mod.rs:92:23 [INFO] [stdout] | [INFO] [stdout] 92 | fn render(&self, &Context, &mut Vec) -> String; [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] 92 - fn render(&self, &Context, &mut Vec) -> String; [INFO] [stdout] 92 + fn render(&self, &dyn Context, &mut Vec) -> String; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast/mod.rs:78:23 [INFO] [stdout] | [INFO] [stdout] 78 | fn render(&self, c: &Context, s: &mut Vec) -> String { [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] 78 - fn render(&self, c: &Context, s: &mut Vec) -> String { [INFO] [stdout] 78 + fn render(&self, c: &dyn Context, s: &mut Vec) -> String { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast/mod.rs:144:29 [INFO] [stdout] | [INFO] [stdout] 144 | fn render(&self, context: &Context, storage: &mut Vec) -> String { [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] 144 - fn render(&self, context: &Context, storage: &mut Vec) -> String { [INFO] [stdout] 144 + fn render(&self, context: &dyn Context, storage: &mut Vec) -> String { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/context.rs:29:43 [INFO] [stdout] | [INFO] [stdout] 29 | fn get(&self, field: &str) -> Option<&Value>; [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 - fn get(&self, field: &str) -> Option<&Value>; [INFO] [stdout] 29 + fn get(&self, field: &str) -> Option<&dyn Value>; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/context.rs:30:47 [INFO] [stdout] | [INFO] [stdout] 30 | fn set(&mut self, field: &str, value: 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] 30 - fn set(&mut self, field: &str, value: Box); [INFO] [stdout] 30 + fn set(&mut self, field: &str, value: Box); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/context.rs:45:43 [INFO] [stdout] | [INFO] [stdout] 45 | fn get(&self, field: &str) -> Option<&Value> { [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] 45 - fn get(&self, field: &str) -> Option<&Value> { [INFO] [stdout] 45 + fn get(&self, field: &str) -> Option<&dyn Value> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/context.rs:67:47 [INFO] [stdout] | [INFO] [stdout] 67 | fn set(&mut self, field: &str, value: 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] 67 - fn set(&mut self, field: &str, value: Box) { [INFO] [stdout] 67 + fn set(&mut self, field: &str, value: Box) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/context.rs:86:31 [INFO] [stdout] | [INFO] [stdout] 86 | pub fn add(&mut self, c: &'a Context) { [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] 86 - pub fn add(&mut self, c: &'a Context) { [INFO] [stdout] 86 + pub fn add(&mut self, c: &'a dyn Context) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/context.rs:92:43 [INFO] [stdout] | [INFO] [stdout] 92 | fn get(&self, field: &str) -> Option<&Value> { [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] 92 - fn get(&self, field: &str) -> Option<&Value> { [INFO] [stdout] 92 + fn get(&self, field: &str) -> Option<&dyn Value> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/context.rs:104:47 [INFO] [stdout] | [INFO] [stdout] 104 | fn set(&mut self, field: &str, value: 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] 104 - fn set(&mut self, field: &str, value: Box) { [INFO] [stdout] 104 + fn set(&mut self, field: &str, value: Box) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/filter/mod.rs:56:46 [INFO] [stdout] | [INFO] [stdout] 56 | fn apply_filter(&self, input: Option>, iterator: &mut Iterator, storage: &mut Vec) -> String { [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] 56 - fn apply_filter(&self, input: Option>, iterator: &mut Iterator, storage: &mut Vec) -> String { [INFO] [stdout] 56 + fn apply_filter(&self, input: Option>, iterator: &mut Iterator, storage: &mut Vec) -> String { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/filter/mod.rs:56:70 [INFO] [stdout] | [INFO] [stdout] 56 | fn apply_filter(&self, input: Option>, iterator: &mut Iterator, storage: &mut Vec) -> String { [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] 56 - fn apply_filter(&self, input: Option>, iterator: &mut Iterator, storage: &mut Vec) -> String { [INFO] [stdout] 56 + fn apply_filter(&self, input: Option>, iterator: &mut dyn Iterator, storage: &mut Vec) -> String { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/filter/mod.rs:70:36 [INFO] [stdout] | [INFO] [stdout] 70 | pub fn render(&self, context: &Context, storage: &mut Vec) -> String { [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] 70 - pub fn render(&self, context: &Context, storage: &mut Vec) -> String { [INFO] [stdout] 70 + pub fn render(&self, context: &dyn Context, storage: &mut Vec) -> String { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/template.rs:87:36 [INFO] [stdout] | [INFO] [stdout] 87 | pub fn render(&self, context: &Context) -> String { [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] 87 - pub fn render(&self, context: &Context) -> String { [INFO] [stdout] 87 + pub fn render(&self, context: &dyn Context) -> String { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/value/mod.rs:43:20 [INFO] [stdout] | [INFO] [stdout] 43 | impl Clone for 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] 43 - impl Clone for Box { [INFO] [stdout] 43 + impl Clone for Box { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/value/mod.rs:22:46 [INFO] [stdout] | [INFO] [stdout] 22 | fn get_iterator<'a>(&'a self) -> Option + 'a>>; [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] 22 - fn get_iterator<'a>(&'a self) -> Option + 'a>>; [INFO] [stdout] 22 + fn get_iterator<'a>(&'a self) -> Option + 'a>>; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/value/mod.rs:22:61 [INFO] [stdout] | [INFO] [stdout] 22 | fn get_iterator<'a>(&'a self) -> Option + 'a>>; [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] 22 - fn get_iterator<'a>(&'a self) -> Option + 'a>>; [INFO] [stdout] 22 + fn get_iterator<'a>(&'a self) -> Option + 'a>>; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/value/mod.rs:26:48 [INFO] [stdout] | [INFO] [stdout] 26 | fn get_property(&self, name: &str) -> Option<&Value>; [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] 26 - fn get_property(&self, name: &str) -> Option<&Value>; [INFO] [stdout] 26 + fn get_property(&self, name: &str) -> Option<&dyn Value>; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/value/mod.rs:34:32 [INFO] [stdout] | [INFO] [stdout] 34 | fn clone_box(&self) -> 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] 34 - fn clone_box(&self) -> Box; [INFO] [stdout] 34 + fn clone_box(&self) -> Box; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/value/mod.rs:38:32 [INFO] [stdout] | [INFO] [stdout] 38 | fn clone_box(&self) -> 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] 38 - fn clone_box(&self) -> Box { [INFO] [stdout] 38 + fn clone_box(&self) -> Box { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/value/mod.rs:44:28 [INFO] [stdout] | [INFO] [stdout] 44 | fn clone(&self) -> 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] 44 - fn clone(&self) -> Box { [INFO] [stdout] 44 + fn clone(&self) -> Box { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/compiler.rs:67:59 [INFO] [stdout] | [INFO] [stdout] 67 | pub fn render_file(root: PathBuf, path: &Path, context: &Context) -> 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] 67 - pub fn render_file(root: PathBuf, path: &Path, context: &Context) -> Result { [INFO] [stdout] 67 + pub fn render_file(root: PathBuf, path: &Path, context: &dyn Context) -> Result { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast/block_node.rs:43:32 [INFO] [stdout] | [INFO] [stdout] 43 | fn render(&self, context: &Context, storage: &mut Vec) -> String { [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] 43 - fn render(&self, context: &Context, storage: &mut Vec) -> String { [INFO] [stdout] 43 + fn render(&self, context: &dyn Context, storage: &mut Vec) -> String { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast/extends_node.rs:63:33 [INFO] [stdout] | [INFO] [stdout] 63 | fn render(&self, _context: &Context, _: &mut Vec) -> String { [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] 63 - fn render(&self, _context: &Context, _: &mut Vec) -> String { [INFO] [stdout] 63 + fn render(&self, _context: &dyn Context, _: &mut Vec) -> String { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast/include_node.rs:39:28 [INFO] [stdout] | [INFO] [stdout] 39 | fn render(&self, ctx: &Context, storage: &mut Vec) -> String { [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] 39 - fn render(&self, ctx: &Context, storage: &mut Vec) -> String { [INFO] [stdout] 39 + fn render(&self, ctx: &dyn Context, storage: &mut Vec) -> String { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast/text_node.rs:38:33 [INFO] [stdout] | [INFO] [stdout] 38 | fn render(&self, _context: &Context, _: &mut Vec) -> String { [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] 38 - fn render(&self, _context: &Context, _: &mut Vec) -> String { [INFO] [stdout] 38 + fn render(&self, _context: &dyn Context, _: &mut Vec) -> String { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast/variable_node.rs:43:32 [INFO] [stdout] | [INFO] [stdout] 43 | fn render(&self, context: &Context, storage: &mut Vec) -> String { [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] 43 - fn render(&self, context: &Context, storage: &mut Vec) -> String { [INFO] [stdout] 43 + fn render(&self, context: &dyn Context, storage: &mut Vec) -> String { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast/for_node.rs:40:32 [INFO] [stdout] | [INFO] [stdout] 40 | fn render(&self, context: &Context, storage: &mut Vec) -> String { [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 - fn render(&self, context: &Context, storage: &mut Vec) -> String { [INFO] [stdout] 40 + fn render(&self, context: &dyn Context, storage: &mut Vec) -> String { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast/if_node.rs:33:24 [INFO] [stdout] | [INFO] [stdout] 33 | fn is_true(&self, c: &Context) -> bool { [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] 33 - fn is_true(&self, c: &Context) -> bool { [INFO] [stdout] 33 + fn is_true(&self, c: &dyn Context) -> bool { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast/if_node.rs:60:32 [INFO] [stdout] | [INFO] [stdout] 60 | fn render(&self, context: &Context, storage: &mut Vec) -> String { [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] 60 - fn render(&self, context: &Context, storage: &mut Vec) -> String { [INFO] [stdout] 60 + fn render(&self, context: &dyn Context, storage: &mut Vec) -> String { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/filter/filter_node.rs:76:63 [INFO] [stdout] | [INFO] [stdout] 76 | pub fn apply(&self, input: Option>) -> Option> { [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] 76 - pub fn apply(&self, input: Option>) -> Option> { [INFO] [stdout] 76 + pub fn apply(&self, input: Option>) -> Option> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/filter/filter_node.rs:76:40 [INFO] [stdout] | [INFO] [stdout] 76 | pub fn apply(&self, input: Option>) -> Option> { [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] 76 - pub fn apply(&self, input: Option>) -> Option> { [INFO] [stdout] 76 + pub fn apply(&self, input: Option>) -> Option> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/value/helpers.rs:3:51 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn value_to_trait_object(s: &T) -> &Value { [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 value_to_trait_object(s: &T) -> &Value { [INFO] [stdout] 3 + pub fn value_to_trait_object(s: &T) -> &dyn Value { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/filter/default_filters/default.rs:3:66 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn apply(input: Option>, arg: &str) -> Option> { [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 apply(input: Option>, arg: &str) -> Option> { [INFO] [stdout] 3 + pub fn apply(input: Option>, arg: &str) -> Option> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/filter/default_filters/default.rs:3:32 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn apply(input: Option>, arg: &str) -> Option> { [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 apply(input: Option>, arg: &str) -> Option> { [INFO] [stdout] 3 + pub fn apply(input: Option>, arg: &str) -> Option> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/filter/default_filters/add.rs:3:64 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn apply(input: Option>, _: &str) -> Option> { [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 apply(input: Option>, _: &str) -> Option> { [INFO] [stdout] 3 + pub fn apply(input: Option>, _: &str) -> Option> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/filter/default_filters/add.rs:3:32 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn apply(input: Option>, _: &str) -> Option> { [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 apply(input: Option>, _: &str) -> Option> { [INFO] [stdout] 3 + pub fn apply(input: Option>, _: &str) -> Option> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/value/default_impls/string.rs:10:39 [INFO] [stdout] | [INFO] [stdout] 10 | fn get_iterator(&self) -> Option>> { [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] 10 - fn get_iterator(&self) -> Option>> { [INFO] [stdout] 10 + fn get_iterator(&self) -> Option>> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/value/default_impls/string.rs:10:54 [INFO] [stdout] | [INFO] [stdout] 10 | fn get_iterator(&self) -> Option>> { [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] 10 - fn get_iterator(&self) -> Option>> { [INFO] [stdout] 10 + fn get_iterator(&self) -> Option>> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/value/default_impls/string.rs:16:45 [INFO] [stdout] | [INFO] [stdout] 16 | fn get_property(&self, _: &str) -> Option<&Value> { [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] 16 - fn get_property(&self, _: &str) -> Option<&Value> { [INFO] [stdout] 16 + fn get_property(&self, _: &str) -> Option<&dyn Value> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/value/default_impls/integers.rs:10:39 [INFO] [stdout] | [INFO] [stdout] 10 | fn get_iterator(&self) -> Option>> { [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] 10 - fn get_iterator(&self) -> Option>> { [INFO] [stdout] 10 + fn get_iterator(&self) -> Option>> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/value/default_impls/integers.rs:10:54 [INFO] [stdout] | [INFO] [stdout] 10 | fn get_iterator(&self) -> Option>> { [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] 10 - fn get_iterator(&self) -> Option>> { [INFO] [stdout] 10 + fn get_iterator(&self) -> Option>> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/value/default_impls/integers.rs:16:45 [INFO] [stdout] | [INFO] [stdout] 16 | fn get_property(&self, _: &str) -> Option<&Value> { [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] 16 - fn get_property(&self, _: &str) -> Option<&Value> { [INFO] [stdout] 16 + fn get_property(&self, _: &str) -> Option<&dyn Value> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/value/default_impls/floats.rs:10:39 [INFO] [stdout] | [INFO] [stdout] 10 | fn get_iterator(&self) -> Option>> { [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] 10 - fn get_iterator(&self) -> Option>> { [INFO] [stdout] 10 + fn get_iterator(&self) -> Option>> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/value/default_impls/floats.rs:10:54 [INFO] [stdout] | [INFO] [stdout] 10 | fn get_iterator(&self) -> Option>> { [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] 10 - fn get_iterator(&self) -> Option>> { [INFO] [stdout] 10 + fn get_iterator(&self) -> Option>> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/value/default_impls/floats.rs:16:45 [INFO] [stdout] | [INFO] [stdout] 16 | fn get_property(&self, _: &str) -> Option<&Value> { [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] 16 - fn get_property(&self, _: &str) -> Option<&Value> { [INFO] [stdout] 16 + fn get_property(&self, _: &str) -> Option<&dyn Value> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/value/default_impls/bool.rs:13:39 [INFO] [stdout] | [INFO] [stdout] 13 | fn get_iterator(&self) -> Option>> { [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 - fn get_iterator(&self) -> Option>> { [INFO] [stdout] 13 + fn get_iterator(&self) -> Option>> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/value/default_impls/bool.rs:13:54 [INFO] [stdout] | [INFO] [stdout] 13 | fn get_iterator(&self) -> Option>> { [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 - fn get_iterator(&self) -> Option>> { [INFO] [stdout] 13 + fn get_iterator(&self) -> Option>> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/value/default_impls/bool.rs:19:45 [INFO] [stdout] | [INFO] [stdout] 19 | fn get_property(&self, _: &str) -> Option<&Value> { [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] 19 - fn get_property(&self, _: &str) -> Option<&Value> { [INFO] [stdout] 19 + fn get_property(&self, _: &str) -> Option<&dyn Value> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0275]: overflow evaluating the requirement `String: ValueClone` [INFO] [stdout] --> src/filter/default_filters/default.rs:6:16 [INFO] [stdout] | [INFO] [stdout] 6 | None => Some(Box::new(arg.to_string())), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: required because of the requirements on the impl of `Value` for `String` [INFO] [stdout] --> src/value/mod.rs:51:9 [INFO] [stdout] | [INFO] [stdout] 51 | impl Value for T where T: mopa::Any + ValueAsStringByRef + ValueAsIterator + ValueAsObject + ValueAsBool+ ValueClone + Debug {} [INFO] [stdout] | ^^^^^ ^ [INFO] [stdout] = note: required for the cast to the object type `dyn Value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to previous error; 79 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0275`. [INFO] [stdout] [INFO] [stderr] error: could not compile `dtl` due to 2 previous errors; 79 warnings emitted [INFO] running `Command { std: "docker" "inspect" "d12f7c6bbb204714d90a08dc9d15865872905e82fce0cb0513433b464edc15f9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d12f7c6bbb204714d90a08dc9d15865872905e82fce0cb0513433b464edc15f9", kill_on_drop: false }` [INFO] [stdout] d12f7c6bbb204714d90a08dc9d15865872905e82fce0cb0513433b464edc15f9