[INFO] updating cached repository okanon/rthrift_tutorial [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/okanon/rthrift_tutorial [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/okanon/rthrift_tutorial" "work/ex/beta-1.38-1/sources/1.37.0/gh/okanon/rthrift_tutorial"` [INFO] [stderr] Cloning into 'work/ex/beta-1.38-1/sources/1.37.0/gh/okanon/rthrift_tutorial'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/okanon/rthrift_tutorial" "work/ex/beta-1.38-1/sources/beta-2019-08-13/gh/okanon/rthrift_tutorial"` [INFO] [stderr] Cloning into 'work/ex/beta-1.38-1/sources/beta-2019-08-13/gh/okanon/rthrift_tutorial'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 98d149119b2b09383bd779ec246b0655dccd7e9e [INFO] sha for GitHub repo okanon/rthrift_tutorial: 98d149119b2b09383bd779ec246b0655dccd7e9e [INFO] validating manifest of okanon/rthrift_tutorial on toolchain 1.37.0 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+1.37.0" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of okanon/rthrift_tutorial on toolchain beta-2019-08-13 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+beta-2019-08-13" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing okanon/rthrift_tutorial [INFO] finished frobbing okanon/rthrift_tutorial [INFO] frobbed toml for okanon/rthrift_tutorial written to work/ex/beta-1.38-1/sources/1.37.0/gh/okanon/rthrift_tutorial/Cargo.toml [INFO] started frobbing okanon/rthrift_tutorial [INFO] finished frobbing okanon/rthrift_tutorial [INFO] frobbed toml for okanon/rthrift_tutorial written to work/ex/beta-1.38-1/sources/beta-2019-08-13/gh/okanon/rthrift_tutorial/Cargo.toml [INFO] crate okanon/rthrift_tutorial already has a lockfile, it will not be regenerated [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+1.37.0" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+beta-2019-08-13" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] testing okanon/rthrift_tutorial against beta-2019-08-13 for beta-1.38-1 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/beta-1.38-1/worker-5/beta-2019-08-13:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/beta-1.38-1/sources/beta-2019-08-13/gh/okanon/rthrift_tutorial:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+beta-2019-08-13" "build" "--frozen"` [INFO] [stdout] 3c618e8c5d8f8e9d741267ddc459741fb784748869623560d421637bb70380f0 [INFO] running `"docker" "start" "-a" "3c618e8c5d8f8e9d741267ddc459741fb784748869623560d421637bb70380f0"` [INFO] [stderr] warning: An explicit [[bin]] section is specified in Cargo.toml which currently [INFO] [stderr] disables Cargo from automatically inferring other binary targets. [INFO] [stderr] This inference behavior will change in the Rust 2018 edition and the following [INFO] [stderr] files will be included as a binary target: [INFO] [stderr] [INFO] [stderr] * /opt/crater/workdir/src/main.rs [INFO] [stderr] [INFO] [stderr] This is likely to break cargo build or cargo test as these files may not be [INFO] [stderr] ready to be compiled as a binary target today. You can future-proof yourself [INFO] [stderr] and disable this warning by adding `autobins = false` to your [package] [INFO] [stderr] section. You may also move the files to a location where Cargo would not [INFO] [stderr] automatically infer them to be a target, such as in subfolders. [INFO] [stderr] [INFO] [stderr] For more information on this warning you can consult [INFO] [stderr] https://github.com/rust-lang/cargo/issues/5330 [INFO] [stderr] Compiling integer-encoding v1.0.5 [INFO] [stderr] Compiling try_from v0.2.2 [INFO] [stderr] Compiling threadpool v1.7.1 [INFO] [stderr] Compiling clap v2.27.1 [INFO] [stderr] Compiling ordered-float v0.3.0 [INFO] [stderr] Compiling rthrift v0.11.0 [INFO] [stderr] Compiling rthrift_tutorial v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:50:45 [INFO] [stderr] | [INFO] [stderr] 50 | pub fn read_from_in_protocol(i_prot: &mut TInputProtocol) -> thrift::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:82:52 [INFO] [stderr] | [INFO] [stderr] 82 | pub fn write_to_out_protocol(&self, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:138:36 [INFO] [stderr] | [INFO] [stderr] 138 | fn i_prot_mut(&mut self) -> &mut TInputProtocol { &mut self._i_prot } [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:139:36 [INFO] [stderr] | [INFO] [stderr] 139 | fn o_prot_mut(&mut self) -> &mut TOutputProtocol { &mut self._o_prot } [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:194:76 [INFO] [stderr] | [INFO] [stderr] 194 | fn process_get_struct(&self, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:194:105 [INFO] [stderr] | [INFO] [stderr] 194 | fn process_get_struct(&self, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:202:115 [INFO] [stderr] | [INFO] [stderr] 202 | pub fn process_get_struct(handler: &H, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:202:144 [INFO] [stderr] | [INFO] [stderr] 202 | pub fn process_get_struct(handler: &H, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:242:34 [INFO] [stderr] | [INFO] [stderr] 242 | fn process(&self, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:242:63 [INFO] [stderr] | [INFO] [stderr] 242 | fn process(&self, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:273:41 [INFO] [stderr] | [INFO] [stderr] 273 | fn read_from_in_protocol(i_prot: &mut TInputProtocol) -> thrift::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:300:48 [INFO] [stderr] | [INFO] [stderr] 300 | fn write_to_out_protocol(&self, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:321:41 [INFO] [stderr] | [INFO] [stderr] 321 | fn read_from_in_protocol(i_prot: &mut TInputProtocol) -> thrift::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:347:48 [INFO] [stderr] | [INFO] [stderr] 347 | fn write_to_out_protocol(&self, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:46:52 [INFO] [stderr] | [INFO] [stderr] 46 | pub fn write_to_out_protocol(&self, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:49:45 [INFO] [stderr] | [INFO] [stderr] 49 | pub fn read_from_in_protocol(i_prot: &mut TInputProtocol) -> thrift::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:105:45 [INFO] [stderr] | [INFO] [stderr] 105 | pub fn read_from_in_protocol(i_prot: &mut TInputProtocol) -> thrift::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:149:52 [INFO] [stderr] | [INFO] [stderr] 149 | pub fn write_to_out_protocol(&self, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:218:45 [INFO] [stderr] | [INFO] [stderr] 218 | pub fn read_from_in_protocol(i_prot: &mut TInputProtocol) -> thrift::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:250:52 [INFO] [stderr] | [INFO] [stderr] 250 | pub fn write_to_out_protocol(&self, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:354:36 [INFO] [stderr] | [INFO] [stderr] 354 | fn i_prot_mut(&mut self) -> &mut TInputProtocol { &mut self._i_prot } [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:355:36 [INFO] [stderr] | [INFO] [stderr] 355 | fn o_prot_mut(&mut self) -> &mut TOutputProtocol { &mut self._o_prot } [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:491:70 [INFO] [stderr] | [INFO] [stderr] 491 | fn process_ping(&self, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:491:99 [INFO] [stderr] | [INFO] [stderr] 491 | fn process_ping(&self, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:494:69 [INFO] [stderr] | [INFO] [stderr] 494 | fn process_add(&self, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:494:98 [INFO] [stderr] | [INFO] [stderr] 494 | fn process_add(&self, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:497:75 [INFO] [stderr] | [INFO] [stderr] 497 | fn process_calculate(&self, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:497:104 [INFO] [stderr] | [INFO] [stderr] 497 | fn process_calculate(&self, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:500:69 [INFO] [stderr] | [INFO] [stderr] 500 | fn process_zip(&self, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:500:98 [INFO] [stderr] | [INFO] [stderr] 500 | fn process_zip(&self, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:503:76 [INFO] [stderr] | [INFO] [stderr] 503 | fn process_get_struct(&self, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:503:105 [INFO] [stderr] | [INFO] [stderr] 503 | fn process_get_struct(&self, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:511:106 [INFO] [stderr] | [INFO] [stderr] 511 | pub fn process_ping(handler: &H, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:511:135 [INFO] [stderr] | [INFO] [stderr] 511 | pub fn process_ping(handler: &H, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:548:105 [INFO] [stderr] | [INFO] [stderr] 548 | pub fn process_add(handler: &H, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:548:134 [INFO] [stderr] | [INFO] [stderr] 548 | pub fn process_add(handler: &H, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:585:111 [INFO] [stderr] | [INFO] [stderr] 585 | pub fn process_calculate(handler: &H, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:585:140 [INFO] [stderr] | [INFO] [stderr] 585 | pub fn process_calculate(handler: &H, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:645:82 [INFO] [stderr] | [INFO] [stderr] 645 | pub fn process_zip(handler: &H, _: i32, i_prot: &mut TInputProtocol, _: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:645:106 [INFO] [stderr] | [INFO] [stderr] 645 | pub fn process_zip(handler: &H, _: i32, i_prot: &mut TInputProtocol, _: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:672:34 [INFO] [stderr] | [INFO] [stderr] 672 | fn process(&self, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:672:63 [INFO] [stderr] | [INFO] [stderr] 672 | fn process(&self, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:714:41 [INFO] [stderr] | [INFO] [stderr] 714 | fn read_from_in_protocol(i_prot: &mut TInputProtocol) -> thrift::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:733:48 [INFO] [stderr] | [INFO] [stderr] 733 | fn write_to_out_protocol(&self, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:750:41 [INFO] [stderr] | [INFO] [stderr] 750 | fn read_from_in_protocol(i_prot: &mut TInputProtocol) -> thrift::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:769:48 [INFO] [stderr] | [INFO] [stderr] 769 | fn write_to_out_protocol(&self, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:791:41 [INFO] [stderr] | [INFO] [stderr] 791 | fn read_from_in_protocol(i_prot: &mut TInputProtocol) -> thrift::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:825:48 [INFO] [stderr] | [INFO] [stderr] 825 | fn write_to_out_protocol(&self, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:849:41 [INFO] [stderr] | [INFO] [stderr] 849 | fn read_from_in_protocol(i_prot: &mut TInputProtocol) -> thrift::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:875:48 [INFO] [stderr] | [INFO] [stderr] 875 | fn write_to_out_protocol(&self, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:916:41 [INFO] [stderr] | [INFO] [stderr] 916 | fn read_from_in_protocol(i_prot: &mut TInputProtocol) -> thrift::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:950:48 [INFO] [stderr] | [INFO] [stderr] 950 | fn write_to_out_protocol(&self, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:975:41 [INFO] [stderr] | [INFO] [stderr] 975 | fn read_from_in_protocol(i_prot: &mut TInputProtocol) -> thrift::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:1007:48 [INFO] [stderr] | [INFO] [stderr] 1007 | fn write_to_out_protocol(&self, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:1056:41 [INFO] [stderr] | [INFO] [stderr] 1056 | fn read_from_in_protocol(i_prot: &mut TInputProtocol) -> thrift::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:1075:48 [INFO] [stderr] | [INFO] [stderr] 1075 | fn write_to_out_protocol(&self, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 27.88s [INFO] running `"docker" "inspect" "3c618e8c5d8f8e9d741267ddc459741fb784748869623560d421637bb70380f0"` [INFO] running `"docker" "rm" "-f" "3c618e8c5d8f8e9d741267ddc459741fb784748869623560d421637bb70380f0"` [INFO] [stdout] 3c618e8c5d8f8e9d741267ddc459741fb784748869623560d421637bb70380f0 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/beta-1.38-1/worker-5/beta-2019-08-13:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/beta-1.38-1/sources/beta-2019-08-13/gh/okanon/rthrift_tutorial:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+beta-2019-08-13" "test" "--frozen" "--no-run"` [INFO] [stdout] 59d28f8735b61b56aa85e75c5f4443151a9766487a6a01bacb8b47f20365b84f [INFO] running `"docker" "start" "-a" "59d28f8735b61b56aa85e75c5f4443151a9766487a6a01bacb8b47f20365b84f"` [INFO] [stderr] warning: An explicit [[bin]] section is specified in Cargo.toml which currently [INFO] [stderr] disables Cargo from automatically inferring other binary targets. [INFO] [stderr] This inference behavior will change in the Rust 2018 edition and the following [INFO] [stderr] files will be included as a binary target: [INFO] [stderr] [INFO] [stderr] * /opt/crater/workdir/src/main.rs [INFO] [stderr] [INFO] [stderr] This is likely to break cargo build or cargo test as these files may not be [INFO] [stderr] ready to be compiled as a binary target today. You can future-proof yourself [INFO] [stderr] and disable this warning by adding `autobins = false` to your [package] [INFO] [stderr] section. You may also move the files to a location where Cargo would not [INFO] [stderr] automatically infer them to be a target, such as in subfolders. [INFO] [stderr] [INFO] [stderr] For more information on this warning you can consult [INFO] [stderr] https://github.com/rust-lang/cargo/issues/5330 [INFO] [stderr] Compiling rthrift_tutorial v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:50:45 [INFO] [stderr] | [INFO] [stderr] 50 | pub fn read_from_in_protocol(i_prot: &mut TInputProtocol) -> thrift::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:82:52 [INFO] [stderr] | [INFO] [stderr] 82 | pub fn write_to_out_protocol(&self, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:138:36 [INFO] [stderr] | [INFO] [stderr] 138 | fn i_prot_mut(&mut self) -> &mut TInputProtocol { &mut self._i_prot } [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:139:36 [INFO] [stderr] | [INFO] [stderr] 139 | fn o_prot_mut(&mut self) -> &mut TOutputProtocol { &mut self._o_prot } [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:194:76 [INFO] [stderr] | [INFO] [stderr] 194 | fn process_get_struct(&self, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:194:105 [INFO] [stderr] | [INFO] [stderr] 194 | fn process_get_struct(&self, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:202:115 [INFO] [stderr] | [INFO] [stderr] 202 | pub fn process_get_struct(handler: &H, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:202:144 [INFO] [stderr] | [INFO] [stderr] 202 | pub fn process_get_struct(handler: &H, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:242:34 [INFO] [stderr] | [INFO] [stderr] 242 | fn process(&self, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:242:63 [INFO] [stderr] | [INFO] [stderr] 242 | fn process(&self, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:273:41 [INFO] [stderr] | [INFO] [stderr] 273 | fn read_from_in_protocol(i_prot: &mut TInputProtocol) -> thrift::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:300:48 [INFO] [stderr] | [INFO] [stderr] 300 | fn write_to_out_protocol(&self, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:321:41 [INFO] [stderr] | [INFO] [stderr] 321 | fn read_from_in_protocol(i_prot: &mut TInputProtocol) -> thrift::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:347:48 [INFO] [stderr] | [INFO] [stderr] 347 | fn write_to_out_protocol(&self, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:46:52 [INFO] [stderr] | [INFO] [stderr] 46 | pub fn write_to_out_protocol(&self, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:49:45 [INFO] [stderr] | [INFO] [stderr] 49 | pub fn read_from_in_protocol(i_prot: &mut TInputProtocol) -> thrift::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:105:45 [INFO] [stderr] | [INFO] [stderr] 105 | pub fn read_from_in_protocol(i_prot: &mut TInputProtocol) -> thrift::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:149:52 [INFO] [stderr] | [INFO] [stderr] 149 | pub fn write_to_out_protocol(&self, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:218:45 [INFO] [stderr] | [INFO] [stderr] 218 | pub fn read_from_in_protocol(i_prot: &mut TInputProtocol) -> thrift::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:250:52 [INFO] [stderr] | [INFO] [stderr] 250 | pub fn write_to_out_protocol(&self, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:354:36 [INFO] [stderr] | [INFO] [stderr] 354 | fn i_prot_mut(&mut self) -> &mut TInputProtocol { &mut self._i_prot } [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:355:36 [INFO] [stderr] | [INFO] [stderr] 355 | fn o_prot_mut(&mut self) -> &mut TOutputProtocol { &mut self._o_prot } [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:491:70 [INFO] [stderr] | [INFO] [stderr] 491 | fn process_ping(&self, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:491:99 [INFO] [stderr] | [INFO] [stderr] 491 | fn process_ping(&self, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:494:69 [INFO] [stderr] | [INFO] [stderr] 494 | fn process_add(&self, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:494:98 [INFO] [stderr] | [INFO] [stderr] 494 | fn process_add(&self, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:497:75 [INFO] [stderr] | [INFO] [stderr] 497 | fn process_calculate(&self, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:497:104 [INFO] [stderr] | [INFO] [stderr] 497 | fn process_calculate(&self, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:500:69 [INFO] [stderr] | [INFO] [stderr] 500 | fn process_zip(&self, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:500:98 [INFO] [stderr] | [INFO] [stderr] 500 | fn process_zip(&self, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:503:76 [INFO] [stderr] | [INFO] [stderr] 503 | fn process_get_struct(&self, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:503:105 [INFO] [stderr] | [INFO] [stderr] 503 | fn process_get_struct(&self, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:511:106 [INFO] [stderr] | [INFO] [stderr] 511 | pub fn process_ping(handler: &H, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:511:135 [INFO] [stderr] | [INFO] [stderr] 511 | pub fn process_ping(handler: &H, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:548:105 [INFO] [stderr] | [INFO] [stderr] 548 | pub fn process_add(handler: &H, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:548:134 [INFO] [stderr] | [INFO] [stderr] 548 | pub fn process_add(handler: &H, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:585:111 [INFO] [stderr] | [INFO] [stderr] 585 | pub fn process_calculate(handler: &H, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:585:140 [INFO] [stderr] | [INFO] [stderr] 585 | pub fn process_calculate(handler: &H, incoming_sequence_number: i32, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:645:82 [INFO] [stderr] | [INFO] [stderr] 645 | pub fn process_zip(handler: &H, _: i32, i_prot: &mut TInputProtocol, _: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:645:106 [INFO] [stderr] | [INFO] [stderr] 645 | pub fn process_zip(handler: &H, _: i32, i_prot: &mut TInputProtocol, _: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:672:34 [INFO] [stderr] | [INFO] [stderr] 672 | fn process(&self, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:672:63 [INFO] [stderr] | [INFO] [stderr] 672 | fn process(&self, i_prot: &mut TInputProtocol, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:714:41 [INFO] [stderr] | [INFO] [stderr] 714 | fn read_from_in_protocol(i_prot: &mut TInputProtocol) -> thrift::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:733:48 [INFO] [stderr] | [INFO] [stderr] 733 | fn write_to_out_protocol(&self, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:750:41 [INFO] [stderr] | [INFO] [stderr] 750 | fn read_from_in_protocol(i_prot: &mut TInputProtocol) -> thrift::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:769:48 [INFO] [stderr] | [INFO] [stderr] 769 | fn write_to_out_protocol(&self, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:791:41 [INFO] [stderr] | [INFO] [stderr] 791 | fn read_from_in_protocol(i_prot: &mut TInputProtocol) -> thrift::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:825:48 [INFO] [stderr] | [INFO] [stderr] 825 | fn write_to_out_protocol(&self, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:849:41 [INFO] [stderr] | [INFO] [stderr] 849 | fn read_from_in_protocol(i_prot: &mut TInputProtocol) -> thrift::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:875:48 [INFO] [stderr] | [INFO] [stderr] 875 | fn write_to_out_protocol(&self, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:916:41 [INFO] [stderr] | [INFO] [stderr] 916 | fn read_from_in_protocol(i_prot: &mut TInputProtocol) -> thrift::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:950:48 [INFO] [stderr] | [INFO] [stderr] 950 | fn write_to_out_protocol(&self, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:975:41 [INFO] [stderr] | [INFO] [stderr] 975 | fn read_from_in_protocol(i_prot: &mut TInputProtocol) -> thrift::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:1007:48 [INFO] [stderr] | [INFO] [stderr] 1007 | fn write_to_out_protocol(&self, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:1056:41 [INFO] [stderr] | [INFO] [stderr] 1056 | fn read_from_in_protocol(i_prot: &mut TInputProtocol) -> thrift::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tutorial.rs:1075:48 [INFO] [stderr] | [INFO] [stderr] 1075 | fn write_to_out_protocol(&self, o_prot: &mut TOutputProtocol) -> thrift::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol` [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 2.39s [INFO] running `"docker" "inspect" "59d28f8735b61b56aa85e75c5f4443151a9766487a6a01bacb8b47f20365b84f"` [INFO] running `"docker" "rm" "-f" "59d28f8735b61b56aa85e75c5f4443151a9766487a6a01bacb8b47f20365b84f"` [INFO] [stdout] 59d28f8735b61b56aa85e75c5f4443151a9766487a6a01bacb8b47f20365b84f [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/beta-1.38-1/worker-5/beta-2019-08-13:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/beta-1.38-1/sources/beta-2019-08-13/gh/okanon/rthrift_tutorial:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+beta-2019-08-13" "test" "--frozen"` [INFO] [stdout] 5a68420b7dd37f9502490b55084de591592a1297f2977b41b185524aa5e71461 [INFO] running `"docker" "start" "-a" "5a68420b7dd37f9502490b55084de591592a1297f2977b41b185524aa5e71461"` [INFO] [stderr] warning: An explicit [[bin]] section is specified in Cargo.toml which currently [INFO] [stderr] disables Cargo from automatically inferring other binary targets. [INFO] [stderr] This inference behavior will change in the Rust 2018 edition and the following [INFO] [stderr] files will be included as a binary target: [INFO] [stderr] [INFO] [stderr] * /opt/crater/workdir/src/main.rs [INFO] [stderr] [INFO] [stderr] This is likely to break cargo build or cargo test as these files may not be [INFO] [stderr] ready to be compiled as a binary target today. You can future-proof yourself [INFO] [stderr] and disable this warning by adding `autobins = false` to your [package] [INFO] [stderr] section. You may also move the files to a location where Cargo would not [INFO] [stderr] automatically infer them to be a target, such as in subfolders. [INFO] [stderr] [INFO] [stderr] For more information on this warning you can consult [INFO] [stderr] https://github.com/rust-lang/cargo/issues/5330 [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 0.08s [INFO] [stderr] Running /opt/crater/target/debug/deps/rthrift_tutorial-ac62a14c9d45aece [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stderr] Running /opt/crater/target/debug/deps/rthrift_tutorial_client-0dc490a1ae63c418 [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stderr] Running /opt/crater/target/debug/deps/rthrift_tutorial_server-743084394c2be7bd [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stderr] Doc-tests rthrift_tutorial [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] running `"docker" "inspect" "5a68420b7dd37f9502490b55084de591592a1297f2977b41b185524aa5e71461"` [INFO] running `"docker" "rm" "-f" "5a68420b7dd37f9502490b55084de591592a1297f2977b41b185524aa5e71461"` [INFO] [stdout] 5a68420b7dd37f9502490b55084de591592a1297f2977b41b185524aa5e71461