[INFO] crate data_chain 0.1.1 is already in cache
[INFO] checking data_chain-0.1.1 against master#209b2be09fcaff937480d1fbbe8b31646e361c7a for pr-70917
[INFO] extracting crate data_chain 0.1.1 into /workspace/builds/worker-14/source
[INFO] validating manifest of crates.io crate data_chain 0.1.1 on toolchain 209b2be09fcaff937480d1fbbe8b31646e361c7a
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "read-manifest" "--manifest-path" "Cargo.toml"`
[INFO] started tweaking crates.io crate data_chain 0.1.1
[INFO] finished tweaking crates.io crate data_chain 0.1.1
[INFO] tweaked toml for crates.io crate data_chain 0.1.1 written to /workspace/builds/worker-14/source/Cargo.toml
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"`
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "fetch" "--locked" "--manifest-path" "Cargo.toml"`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "check" "--frozen" "--all" "--all-targets"`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] 072e5819050408c958ddb9be4b185daaf1138b761219f5da755b656b3ba4ed8d
[INFO] running `"docker" "start" "-a" "072e5819050408c958ddb9be4b185daaf1138b761219f5da755b656b3ba4ed8d"`
[INFO] [stderr]     Checking serde v0.7.15
[INFO] [stderr]     Checking deque v0.3.2
[INFO] [stderr]    Compiling libsodium-sys v0.0.16
[INFO] [stderr]     Checking nix v0.5.1
[INFO] [stderr]     Checking log4rs v0.3.3
[INFO] [stderr]     Checking sha1 v0.1.1
[INFO] [stderr]     Checking miow v0.1.5
[INFO] [stderr]     Checking rayon v0.4.3
[INFO] [stderr]     Checking sodiumoxide v0.0.16
[INFO] [stderr]     Checking mio v0.5.1
[INFO] [stderr]     Checking bincode v0.5.9
[INFO] [stderr]     Checking ws v0.4.8
[INFO] [stderr]     Checking maidsafe_utilities v0.5.4
[INFO] [stderr]     Checking data_chain v0.1.1 (/opt/rustwide/workdir)
[INFO] [stderr] warning: lint `exceeding_bitshifts` has been renamed to `arithmetic_overflow`
[INFO] [stderr]    --> src/lib.rs:221:22
[INFO] [stderr]     |
[INFO] [stderr] 221 | #![forbid(bad_style, exceeding_bitshifts, mutable_transmutes, no_mangle_const_items,
[INFO] [stderr]     |                      ^^^^^^^^^^^^^^^^^^^ help: use the new name: `arithmetic_overflow`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(renamed_and_removed_lints)]` on by default
[INFO] [stderr] 
[INFO] [stderr] error: lint `drop_with_repr_extern` has been removed: `drop flags have been removed`
[INFO] [stderr]    --> src/lib.rs:223:21
[INFO] [stderr]     |
[INFO] [stderr] 223 | #![deny(deprecated, drop_with_repr_extern, improper_ctypes, missing_docs,
[INFO] [stderr]     |                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]    --> src/lib.rs:222:32
[INFO] [stderr]     |
[INFO] [stderr] 222 |           unknown_crate_types, warnings)]
[INFO] [stderr]     |                                ^^^^^^^^
[INFO] [stderr]     = note: `#[forbid(renamed_and_removed_lints)]` implied by `#[forbid(warnings)]`
[INFO] [stderr] 
[INFO] [stderr] error: lint `plugin_as_library` has been removed: `plugins have been deprecated and retired`
[INFO] [stderr]    --> src/lib.rs:224:61
[INFO] [stderr]     |
[INFO] [stderr] 224 |         non_shorthand_field_patterns, overflowing_literals, plugin_as_library,
[INFO] [stderr]     |                                                             ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: lint `private_no_mangle_fns` has been removed: `no longer a warning, `#[no_mangle]` functions always exported`
[INFO] [stderr]    --> src/lib.rs:225:9
[INFO] [stderr]     |
[INFO] [stderr] 225 |         private_no_mangle_fns, private_no_mangle_statics, stable_features, unconditional_recursion,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: lint `private_no_mangle_statics` has been removed: `no longer a warning, `#[no_mangle]` statics always exported`
[INFO] [stderr]    --> src/lib.rs:225:32
[INFO] [stderr]     |
[INFO] [stderr] 225 |         private_no_mangle_fns, private_no_mangle_statics, stable_features, unconditional_recursion,
[INFO] [stderr]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: lint `fat_ptr_transmutes` has been removed: `was accidentally removed back in 2014`
[INFO] [stderr]    --> src/lib.rs:230:24
[INFO] [stderr]     |
[INFO] [stderr] 230 | #![allow(box_pointers, fat_ptr_transmutes, missing_copy_implementations,
[INFO] [stderr]     |                        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: lint `exceeding_bitshifts` has been renamed to `arithmetic_overflow`
[INFO] [stderr]    --> src/lib.rs:221:22
[INFO] [stderr]     |
[INFO] [stderr] 221 | #![forbid(bad_style, exceeding_bitshifts, mutable_transmutes, no_mangle_const_items,
[INFO] [stderr]     |                      ^^^^^^^^^^^^^^^^^^^ help: use the new name: `arithmetic_overflow`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(renamed_and_removed_lints)]` on by default
[INFO] [stderr] 
[INFO] [stderr] error: lint `drop_with_repr_extern` has been removed: `drop flags have been removed`
[INFO] [stderr]    --> src/lib.rs:223:21
[INFO] [stderr]     |
[INFO] [stderr] 223 | #![deny(deprecated, drop_with_repr_extern, improper_ctypes, missing_docs,
[INFO] [stderr]     |                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]    --> src/lib.rs:222:32
[INFO] [stderr]     |
[INFO] [stderr] 222 |           unknown_crate_types, warnings)]
[INFO] [stderr]     |                                ^^^^^^^^
[INFO] [stderr]     = note: `#[forbid(renamed_and_removed_lints)]` implied by `#[forbid(warnings)]`
[INFO] [stderr] 
[INFO] [stderr] error: lint `plugin_as_library` has been removed: `plugins have been deprecated and retired`
[INFO] [stderr]    --> src/lib.rs:224:61
[INFO] [stderr]     |
[INFO] [stderr] 224 |         non_shorthand_field_patterns, overflowing_literals, plugin_as_library,
[INFO] [stderr]     |                                                             ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: lint `private_no_mangle_fns` has been removed: `no longer a warning, `#[no_mangle]` functions always exported`
[INFO] [stderr]    --> src/lib.rs:225:9
[INFO] [stderr]     |
[INFO] [stderr] 225 |         private_no_mangle_fns, private_no_mangle_statics, stable_features, unconditional_recursion,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: lint `private_no_mangle_statics` has been removed: `no longer a warning, `#[no_mangle]` statics always exported`
[INFO] [stderr]    --> src/lib.rs:225:32
[INFO] [stderr]     |
[INFO] [stderr] 225 |         private_no_mangle_fns, private_no_mangle_statics, stable_features, unconditional_recursion,
[INFO] [stderr]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: lint `fat_ptr_transmutes` has been removed: `was accidentally removed back in 2014`
[INFO] [stderr]    --> src/lib.rs:230:24
[INFO] [stderr]     |
[INFO] [stderr] 230 | #![allow(box_pointers, fat_ptr_transmutes, missing_copy_implementations,
[INFO] [stderr]     |                        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/node_block.rs:90:42
[INFO] [stderr]     |
[INFO] [stderr] 90  |             crypto::sign::sign_detached(&try!(serialisation::serialise(&data_identifier))[..],
[INFO] [stderr]     |                                          ^^^
[INFO] [stderr]     |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]    --> src/lib.rs:223:9
[INFO] [stderr]     |
[INFO] [stderr] 223 | #![deny(deprecated, drop_with_repr_extern, improper_ctypes, missing_docs,
[INFO] [stderr]     |         ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: unused `#[macro_use]` import
[INFO] [stderr]    --> src/lib.rs:241:1
[INFO] [stderr]     |
[INFO] [stderr] 241 | #[macro_use]
[INFO] [stderr]     | ^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]    --> src/lib.rs:226:37
[INFO] [stderr]     |
[INFO] [stderr] 226 |         unknown_lints, unsafe_code, unused, unused_allocation, unused_attributes,
[INFO] [stderr]     |                                     ^^^^^^
[INFO] [stderr]     = note: `#[deny(unused_imports)]` implied by `#[deny(unused)]`
[INFO] [stderr] 
[INFO] [stderr] error: unnecessary parentheses around method argument
[INFO] [stderr]    --> src/data_chain.rs:285:42
[INFO] [stderr]     |
[INFO] [stderr] 285 |         self.chain.iter_mut().rev().find((|x| x.identifier().is_link() && x.valid))
[INFO] [stderr]     |                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]    --> src/lib.rs:227:46
[INFO] [stderr]     |
[INFO] [stderr] 227 |         unused_comparisons, unused_features, unused_parens, while_true)]
[INFO] [stderr]     |                                              ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/node_block.rs:90:42
[INFO] [stderr]     |
[INFO] [stderr] 90  |             crypto::sign::sign_detached(&try!(serialisation::serialise(&data_identifier))[..],
[INFO] [stderr]     |                                          ^^^
[INFO] [stderr]     |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]    --> src/lib.rs:223:9
[INFO] [stderr]     |
[INFO] [stderr] 223 | #![deny(deprecated, drop_with_repr_extern, improper_ctypes, missing_docs,
[INFO] [stderr]     |         ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: unused `#[macro_use]` import
[INFO] [stderr]    --> src/lib.rs:241:1
[INFO] [stderr]     |
[INFO] [stderr] 241 | #[macro_use]
[INFO] [stderr]     | ^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]    --> src/lib.rs:226:37
[INFO] [stderr]     |
[INFO] [stderr] 226 |         unknown_lints, unsafe_code, unused, unused_allocation, unused_attributes,
[INFO] [stderr]     |                                     ^^^^^^
[INFO] [stderr]     = note: `#[deny(unused_imports)]` implied by `#[deny(unused)]`
[INFO] [stderr] 
[INFO] [stderr] error: unnecessary parentheses around method argument
[INFO] [stderr]    --> src/data_chain.rs:285:42
[INFO] [stderr]     |
[INFO] [stderr] 285 |         self.chain.iter_mut().rev().find((|x| x.identifier().is_link() && x.valid))
[INFO] [stderr]     |                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]    --> src/lib.rs:227:46
[INFO] [stderr]     |
[INFO] [stderr] 227 |         unused_comparisons, unused_features, unused_parens, while_true)]
[INFO] [stderr]     |                                              ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: use of deprecated item 'std::error::Error::description': use the Display impl or to_string()
[INFO] [stderr]   --> src/error.rs:63:50
[INFO] [stderr]    |
[INFO] [stderr] 63 |             Error::Serialisation(ref err) => err.description(),
[INFO] [stderr]    |                                                  ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: use of deprecated item 'std::error::Error::description': use the Display impl or to_string()
[INFO] [stderr]   --> src/error.rs:63:50
[INFO] [stderr]    |
[INFO] [stderr] 63 |             Error::Serialisation(ref err) => err.description(),
[INFO] [stderr]    |                                                  ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::sign::PublicKey: rustc_serialize::Encodable` is not satisfied
[INFO] [stderr]    --> src/block.rs:38:17
[INFO] [stderr]     |
[INFO] [stderr] 38  | #[derive(Debug, RustcEncodable, RustcDecodable, PartialEq, Clone)]
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^ the trait `rustc_serialize::Encodable` is not implemented for `sodiumoxide::crypto::sign::PublicKey`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/rustc-serialize-0.3.24/src/serialize.rs:853:15
[INFO] [stderr]     |
[INFO] [stderr] 853 |     fn encode<S: Encoder>(&self, s: &mut S) -> Result<(), S::Error>;
[INFO] [stderr]     |               - required by this bound in `rustc_serialize::Encodable::encode`
[INFO] [stderr]     |
[INFO] [stderr]     = note: required because of the requirements on the impl of `rustc_serialize::Encodable` for `(sodiumoxide::crypto::sign::PublicKey, sodiumoxide::crypto::sign::Signature)`
[INFO] [stderr]     = note: required because of the requirements on the impl of `rustc_serialize::Encodable` for `std::vec::Vec<(sodiumoxide::crypto::sign::PublicKey, sodiumoxide::crypto::sign::Signature)>`
[INFO] [stderr]     = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::sign::PublicKey: rustc_serialize::Encodable` is not satisfied
[INFO] [stderr]    --> src/block.rs:38:17
[INFO] [stderr]     |
[INFO] [stderr] 38  | #[derive(Debug, RustcEncodable, RustcDecodable, PartialEq, Clone)]
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^ the trait `rustc_serialize::Encodable` is not implemented for `sodiumoxide::crypto::sign::PublicKey`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/rustc-serialize-0.3.24/src/serialize.rs:853:15
[INFO] [stderr]     |
[INFO] [stderr] 853 |     fn encode<S: Encoder>(&self, s: &mut S) -> Result<(), S::Error>;
[INFO] [stderr]     |               - required by this bound in `rustc_serialize::Encodable::encode`
[INFO] [stderr]     |
[INFO] [stderr]     = note: required because of the requirements on the impl of `rustc_serialize::Encodable` for `(sodiumoxide::crypto::sign::PublicKey, sodiumoxide::crypto::sign::Signature)`
[INFO] [stderr]     = note: required because of the requirements on the impl of `rustc_serialize::Encodable` for `std::vec::Vec<(sodiumoxide::crypto::sign::PublicKey, sodiumoxide::crypto::sign::Signature)>`
[INFO] [stderr]     = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::sign::Signature: rustc_serialize::Encodable` is not satisfied
[INFO] [stderr]    --> src/block.rs:38:17
[INFO] [stderr]     |
[INFO] [stderr] 38  | #[derive(Debug, RustcEncodable, RustcDecodable, PartialEq, Clone)]
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^ the trait `rustc_serialize::Encodable` is not implemented for `sodiumoxide::crypto::sign::Signature`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/rustc-serialize-0.3.24/src/serialize.rs:853:15
[INFO] [stderr]     |
[INFO] [stderr] 853 |     fn encode<S: Encoder>(&self, s: &mut S) -> Result<(), S::Error>;
[INFO] [stderr]     |               - required by this bound in `rustc_serialize::Encodable::encode`
[INFO] [stderr]     |
[INFO] [stderr]     = note: required because of the requirements on the impl of `rustc_serialize::Encodable` for `(sodiumoxide::crypto::sign::PublicKey, sodiumoxide::crypto::sign::Signature)`
[INFO] [stderr]     = note: required because of the requirements on the impl of `rustc_serialize::Encodable` for `std::vec::Vec<(sodiumoxide::crypto::sign::PublicKey, sodiumoxide::crypto::sign::Signature)>`
[INFO] [stderr]     = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::sign::PublicKey: rustc_serialize::Decodable` is not satisfied
[INFO] [stderr]   --> src/block.rs:41:5
[INFO] [stderr]    |
[INFO] [stderr] 41 |     proof: Vec<(PublicKey, Signature)>,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `rustc_serialize::Decodable` is not implemented for `sodiumoxide::crypto::sign::PublicKey`
[INFO] [stderr]    |
[INFO] [stderr]    = note: required because of the requirements on the impl of `rustc_serialize::Decodable` for `(sodiumoxide::crypto::sign::PublicKey, sodiumoxide::crypto::sign::Signature)`
[INFO] [stderr]    = note: required because of the requirements on the impl of `rustc_serialize::Decodable` for `std::vec::Vec<(sodiumoxide::crypto::sign::PublicKey, sodiumoxide::crypto::sign::Signature)>`
[INFO] [stderr]    = note: required by `rustc_serialize::Decodable::decode`
[INFO] [stderr]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::sign::Signature: rustc_serialize::Decodable` is not satisfied
[INFO] [stderr]   --> src/block.rs:41:5
[INFO] [stderr]    |
[INFO] [stderr] 41 |     proof: Vec<(PublicKey, Signature)>,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `rustc_serialize::Decodable` is not implemented for `sodiumoxide::crypto::sign::Signature`
[INFO] [stderr]    |
[INFO] [stderr]    = note: required because of the requirements on the impl of `rustc_serialize::Decodable` for `(sodiumoxide::crypto::sign::PublicKey, sodiumoxide::crypto::sign::Signature)`
[INFO] [stderr]    = note: required because of the requirements on the impl of `rustc_serialize::Decodable` for `std::vec::Vec<(sodiumoxide::crypto::sign::PublicKey, sodiumoxide::crypto::sign::Signature)>`
[INFO] [stderr]    = note: required by `rustc_serialize::Decodable::decode`
[INFO] [stderr]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::sign::PublicKey: rustc_serialize::Decodable` is not satisfied
[INFO] [stderr]    --> src/block.rs:38:33
[INFO] [stderr]     |
[INFO] [stderr] 38  | #[derive(Debug, RustcEncodable, RustcDecodable, PartialEq, Clone)]
[INFO] [stderr]     |                                 ^^^^^^^^^^^^^^ the trait `rustc_serialize::Decodable` is not implemented for `sodiumoxide::crypto::sign::PublicKey`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/rustc-serialize-0.3.24/src/serialize.rs:904:18
[INFO] [stderr]     |
[INFO] [stderr] 904 |     fn decode<D: Decoder>(d: &mut D) -> Result<Self, D::Error>;
[INFO] [stderr]     |                  ------- required by this bound in `rustc_serialize::Decodable::decode`
[INFO] [stderr]     |
[INFO] [stderr]     = note: required because of the requirements on the impl of `rustc_serialize::Decodable` for `(sodiumoxide::crypto::sign::PublicKey, sodiumoxide::crypto::sign::Signature)`
[INFO] [stderr]     = note: required because of the requirements on the impl of `rustc_serialize::Decodable` for `std::vec::Vec<(sodiumoxide::crypto::sign::PublicKey, sodiumoxide::crypto::sign::Signature)>`
[INFO] [stderr]     = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::sign::Signature: rustc_serialize::Encodable` is not satisfied
[INFO] [stderr]    --> src/block.rs:38:17
[INFO] [stderr]     |
[INFO] [stderr] 38  | #[derive(Debug, RustcEncodable, RustcDecodable, PartialEq, Clone)]
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^ the trait `rustc_serialize::Encodable` is not implemented for `sodiumoxide::crypto::sign::Signature`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/rustc-serialize-0.3.24/src/serialize.rs:853:15
[INFO] [stderr]     |
[INFO] [stderr] 853 |     fn encode<S: Encoder>(&self, s: &mut S) -> Result<(), S::Error>;
[INFO] [stderr]     |               - required by this bound in `rustc_serialize::Encodable::encode`
[INFO] [stderr]     |
[INFO] [stderr]     = note: required because of the requirements on the impl of `rustc_serialize::Encodable` for `(sodiumoxide::crypto::sign::PublicKey, sodiumoxide::crypto::sign::Signature)`
[INFO] [stderr]     = note: required because of the requirements on the impl of `rustc_serialize::Encodable` for `std::vec::Vec<(sodiumoxide::crypto::sign::PublicKey, sodiumoxide::crypto::sign::Signature)>`
[INFO] [stderr]     = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::sign::Signature: rustc_serialize::Decodable` is not satisfied
[INFO] [stderr]    --> src/block.rs:38:33
[INFO] [stderr]     |
[INFO] [stderr] 38  | #[derive(Debug, RustcEncodable, RustcDecodable, PartialEq, Clone)]
[INFO] [stderr]     |                                 ^^^^^^^^^^^^^^ the trait `rustc_serialize::Decodable` is not implemented for `sodiumoxide::crypto::sign::Signature`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/rustc-serialize-0.3.24/src/serialize.rs:904:18
[INFO] [stderr]     |
[INFO] [stderr] 904 |     fn decode<D: Decoder>(d: &mut D) -> Result<Self, D::Error>;
[INFO] [stderr]     |                  ------- required by this bound in `rustc_serialize::Decodable::decode`
[INFO] [stderr]     |
[INFO] [stderr]     = note: required because of the requirements on the impl of `rustc_serialize::Decodable` for `(sodiumoxide::crypto::sign::PublicKey, sodiumoxide::crypto::sign::Signature)`
[INFO] [stderr]     = note: required because of the requirements on the impl of `rustc_serialize::Decodable` for `std::vec::Vec<(sodiumoxide::crypto::sign::PublicKey, sodiumoxide::crypto::sign::Signature)>`
[INFO] [stderr]     = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::sign::PublicKey: rustc_serialize::Decodable` is not satisfied
[INFO] [stderr]   --> src/block.rs:41:5
[INFO] [stderr]    |
[INFO] [stderr] 41 |     proof: Vec<(PublicKey, Signature)>,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `rustc_serialize::Decodable` is not implemented for `sodiumoxide::crypto::sign::PublicKey`
[INFO] [stderr]    |
[INFO] [stderr]    = note: required because of the requirements on the impl of `rustc_serialize::Decodable` for `(sodiumoxide::crypto::sign::PublicKey, sodiumoxide::crypto::sign::Signature)`
[INFO] [stderr]    = note: required because of the requirements on the impl of `rustc_serialize::Decodable` for `std::vec::Vec<(sodiumoxide::crypto::sign::PublicKey, sodiumoxide::crypto::sign::Signature)>`
[INFO] [stderr]    = note: required by `rustc_serialize::Decodable::decode`
[INFO] [stderr]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::sign::Signature: rustc_serialize::Decodable` is not satisfied
[INFO] [stderr]   --> src/block.rs:41:5
[INFO] [stderr]    |
[INFO] [stderr] 41 |     proof: Vec<(PublicKey, Signature)>,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `rustc_serialize::Decodable` is not implemented for `sodiumoxide::crypto::sign::Signature`
[INFO] [stderr]    |
[INFO] [stderr]    = note: required because of the requirements on the impl of `rustc_serialize::Decodable` for `(sodiumoxide::crypto::sign::PublicKey, sodiumoxide::crypto::sign::Signature)`
[INFO] [stderr]    = note: required because of the requirements on the impl of `rustc_serialize::Decodable` for `std::vec::Vec<(sodiumoxide::crypto::sign::PublicKey, sodiumoxide::crypto::sign::Signature)>`
[INFO] [stderr]    = note: required by `rustc_serialize::Decodable::decode`
[INFO] [stderr]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::sign::PublicKey: rustc_serialize::Decodable` is not satisfied
[INFO] [stderr]    --> src/block.rs:38:33
[INFO] [stderr]     |
[INFO] [stderr] 38  | #[derive(Debug, RustcEncodable, RustcDecodable, PartialEq, Clone)]
[INFO] [stderr]     |                                 ^^^^^^^^^^^^^^ the trait `rustc_serialize::Decodable` is not implemented for `sodiumoxide::crypto::sign::PublicKey`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/rustc-serialize-0.3.24/src/serialize.rs:904:18
[INFO] [stderr]     |
[INFO] [stderr] 904 |     fn decode<D: Decoder>(d: &mut D) -> Result<Self, D::Error>;
[INFO] [stderr]     |                  ------- required by this bound in `rustc_serialize::Decodable::decode`
[INFO] [stderr]     |
[INFO] [stderr]     = note: required because of the requirements on the impl of `rustc_serialize::Decodable` for `(sodiumoxide::crypto::sign::PublicKey, sodiumoxide::crypto::sign::Signature)`
[INFO] [stderr]     = note: required because of the requirements on the impl of `rustc_serialize::Decodable` for `std::vec::Vec<(sodiumoxide::crypto::sign::PublicKey, sodiumoxide::crypto::sign::Signature)>`
[INFO] [stderr]     = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::sign::Signature: rustc_serialize::Decodable` is not satisfied
[INFO] [stderr]    --> src/block.rs:38:33
[INFO] [stderr]     |
[INFO] [stderr] 38  | #[derive(Debug, RustcEncodable, RustcDecodable, PartialEq, Clone)]
[INFO] [stderr]     |                                 ^^^^^^^^^^^^^^ the trait `rustc_serialize::Decodable` is not implemented for `sodiumoxide::crypto::sign::Signature`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/rustc-serialize-0.3.24/src/serialize.rs:904:18
[INFO] [stderr]     |
[INFO] [stderr] 904 |     fn decode<D: Decoder>(d: &mut D) -> Result<Self, D::Error>;
[INFO] [stderr]     |                  ------- required by this bound in `rustc_serialize::Decodable::decode`
[INFO] [stderr]     |
[INFO] [stderr]     = note: required because of the requirements on the impl of `rustc_serialize::Decodable` for `(sodiumoxide::crypto::sign::PublicKey, sodiumoxide::crypto::sign::Signature)`
[INFO] [stderr]     = note: required because of the requirements on the impl of `rustc_serialize::Decodable` for `std::vec::Vec<(sodiumoxide::crypto::sign::PublicKey, sodiumoxide::crypto::sign::Signature)>`
[INFO] [stderr]     = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::sign::PublicKey: rustc_serialize::Encodable` is not satisfied
[INFO] [stderr]    --> src/node_block.rs:47:10
[INFO] [stderr]     |
[INFO] [stderr] 47  | #[derive(RustcEncodable, RustcDecodable, PartialEq, Debug, Clone)]
[INFO] [stderr]     |          ^^^^^^^^^^^^^^ the trait `rustc_serialize::Encodable` is not implemented for `sodiumoxide::crypto::sign::PublicKey`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/rustc-serialize-0.3.24/src/serialize.rs:853:15
[INFO] [stderr]     |
[INFO] [stderr] 853 |     fn encode<S: Encoder>(&self, s: &mut S) -> Result<(), S::Error>;
[INFO] [stderr]     |               - required by this bound in `rustc_serialize::Encodable::encode`
[INFO] [stderr]     |
[INFO] [stderr]     = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::sign::Signature: rustc_serialize::Encodable` is not satisfied
[INFO] [stderr]    --> src/node_block.rs:47:10
[INFO] [stderr]     |
[INFO] [stderr] 47  | #[derive(RustcEncodable, RustcDecodable, PartialEq, Debug, Clone)]
[INFO] [stderr]     |          ^^^^^^^^^^^^^^ the trait `rustc_serialize::Encodable` is not implemented for `sodiumoxide::crypto::sign::Signature`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/rustc-serialize-0.3.24/src/serialize.rs:853:15
[INFO] [stderr]     |
[INFO] [stderr] 853 |     fn encode<S: Encoder>(&self, s: &mut S) -> Result<(), S::Error>;
[INFO] [stderr]     |               - required by this bound in `rustc_serialize::Encodable::encode`
[INFO] [stderr]     |
[INFO] [stderr]     = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::sign::PublicKey: rustc_serialize::Decodable` is not satisfied
[INFO] [stderr]   --> src/node_block.rs:49:5
[INFO] [stderr]    |
[INFO] [stderr] 49 |     key: PublicKey,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^ the trait `rustc_serialize::Decodable` is not implemented for `sodiumoxide::crypto::sign::PublicKey`
[INFO] [stderr]    |
[INFO] [stderr]    = note: required by `rustc_serialize::Decodable::decode`
[INFO] [stderr]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::sign::PublicKey: rustc_serialize::Decodable` is not satisfied
[INFO] [stderr]    --> src/node_block.rs:47:26
[INFO] [stderr]     |
[INFO] [stderr] 47  | #[derive(RustcEncodable, RustcDecodable, PartialEq, Debug, Clone)]
[INFO] [stderr]     |                          ^^^^^^^^^^^^^^ the trait `rustc_serialize::Decodable` is not implemented for `sodiumoxide::crypto::sign::PublicKey`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/rustc-serialize-0.3.24/src/serialize.rs:904:18
[INFO] [stderr]     |
[INFO] [stderr] 904 |     fn decode<D: Decoder>(d: &mut D) -> Result<Self, D::Error>;
[INFO] [stderr]     |                  ------- required by this bound in `rustc_serialize::Decodable::decode`
[INFO] [stderr]     |
[INFO] [stderr]     = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::sign::Signature: rustc_serialize::Decodable` is not satisfied
[INFO] [stderr]   --> src/node_block.rs:50:5
[INFO] [stderr]    |
[INFO] [stderr] 50 |     sig: Signature,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^ the trait `rustc_serialize::Decodable` is not implemented for `sodiumoxide::crypto::sign::Signature`
[INFO] [stderr]    |
[INFO] [stderr]    = note: required by `rustc_serialize::Decodable::decode`
[INFO] [stderr]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::sign::Signature: rustc_serialize::Decodable` is not satisfied
[INFO] [stderr]    --> src/node_block.rs:47:26
[INFO] [stderr]     |
[INFO] [stderr] 47  | #[derive(RustcEncodable, RustcDecodable, PartialEq, Debug, Clone)]
[INFO] [stderr]     |                          ^^^^^^^^^^^^^^ the trait `rustc_serialize::Decodable` is not implemented for `sodiumoxide::crypto::sign::Signature`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/rustc-serialize-0.3.24/src/serialize.rs:904:18
[INFO] [stderr]     |
[INFO] [stderr] 904 |     fn decode<D: Decoder>(d: &mut D) -> Result<Self, D::Error>;
[INFO] [stderr]     |                  ------- required by this bound in `rustc_serialize::Decodable::decode`
[INFO] [stderr]     |
[INFO] [stderr]     = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::hash::sha256::Digest: rustc_serialize::Encodable` is not satisfied
[INFO] [stderr]    --> src/block_identifier.rs:38:10
[INFO] [stderr]     |
[INFO] [stderr] 38  | #[derive(RustcEncodable, RustcDecodable, PartialEq, Debug, Clone)]
[INFO] [stderr]     |          ^^^^^^^^^^^^^^ the trait `rustc_serialize::Encodable` is not implemented for `sodiumoxide::crypto::hash::sha256::Digest`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/rustc-serialize-0.3.24/src/serialize.rs:853:15
[INFO] [stderr]     |
[INFO] [stderr] 853 |     fn encode<S: Encoder>(&self, s: &mut S) -> Result<(), S::Error>;
[INFO] [stderr]     |               - required by this bound in `rustc_serialize::Encodable::encode`
[INFO] [stderr]     |
[INFO] [stderr]     = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::hash::sha256::Digest: rustc_serialize::Decodable` is not satisfied
[INFO] [stderr]   --> src/block_identifier.rs:41:19
[INFO] [stderr]    |
[INFO] [stderr] 41 |     ImmutableData(Digest),
[INFO] [stderr]    |                   ^^^^^^ the trait `rustc_serialize::Decodable` is not implemented for `sodiumoxide::crypto::hash::sha256::Digest`
[INFO] [stderr]    |
[INFO] [stderr]    = note: required by `rustc_serialize::Decodable::decode`
[INFO] [stderr]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::hash::sha256::Digest: rustc_serialize::Decodable` is not satisfied
[INFO] [stderr]    --> src/block_identifier.rs:38:26
[INFO] [stderr]     |
[INFO] [stderr] 38  | #[derive(RustcEncodable, RustcDecodable, PartialEq, Debug, Clone)]
[INFO] [stderr]     |                          ^^^^^^^^^^^^^^ the trait `rustc_serialize::Decodable` is not implemented for `sodiumoxide::crypto::hash::sha256::Digest`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/rustc-serialize-0.3.24/src/serialize.rs:904:18
[INFO] [stderr]     |
[INFO] [stderr] 904 |     fn decode<D: Decoder>(d: &mut D) -> Result<Self, D::Error>;
[INFO] [stderr]     |                  ------- required by this bound in `rustc_serialize::Decodable::decode`
[INFO] [stderr]     |
[INFO] [stderr]     = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::hash::sha256::Digest: rustc_serialize::Decodable` is not satisfied
[INFO] [stderr]   --> src/block_identifier.rs:43:20
[INFO] [stderr]    |
[INFO] [stderr] 43 |     StructuredData(Digest, SdName),
[INFO] [stderr]    |                    ^^^^^^ the trait `rustc_serialize::Decodable` is not implemented for `sodiumoxide::crypto::hash::sha256::Digest`
[INFO] [stderr]    |
[INFO] [stderr]    = note: required by `rustc_serialize::Decodable::decode`
[INFO] [stderr]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::hash::sha256::Digest: rustc_serialize::Decodable` is not satisfied
[INFO] [stderr]   --> src/block_identifier.rs:43:28
[INFO] [stderr]    |
[INFO] [stderr] 43 |     StructuredData(Digest, SdName),
[INFO] [stderr]    |                            ^^^^^^ the trait `rustc_serialize::Decodable` is not implemented for `sodiumoxide::crypto::hash::sha256::Digest`
[INFO] [stderr]    |
[INFO] [stderr]    = note: required by `rustc_serialize::Decodable::decode`
[INFO] [stderr]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error: unused extern crate
[INFO] [stderr]    --> src/lib.rs:240:1
[INFO] [stderr]     |
[INFO] [stderr] 240 | extern crate rustc_serialize;
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove it
[INFO] [stderr]     |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]    --> src/lib.rs:222:32
[INFO] [stderr]     |
[INFO] [stderr] 222 |           unknown_crate_types, warnings)]
[INFO] [stderr]     |                                ^^^^^^^^
[INFO] [stderr]     = note: `#[forbid(unused_extern_crates)]` implied by `#[forbid(warnings)]`
[INFO] [stderr] 
[INFO] [stderr] error: aborting due to 27 previous errors
[INFO] [stderr] 
[INFO] [stderr] For more information about this error, try `rustc --explain E0277`.
[INFO] [stderr] error: could not compile `data_chain`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::sign::PublicKey: rustc_serialize::Encodable` is not satisfied
[INFO] [stderr]    --> src/node_block.rs:47:10
[INFO] [stderr]     |
[INFO] [stderr] 47  | #[derive(RustcEncodable, RustcDecodable, PartialEq, Debug, Clone)]
[INFO] [stderr]     |          ^^^^^^^^^^^^^^ the trait `rustc_serialize::Encodable` is not implemented for `sodiumoxide::crypto::sign::PublicKey`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/rustc-serialize-0.3.24/src/serialize.rs:853:15
[INFO] [stderr]     |
[INFO] [stderr] 853 |     fn encode<S: Encoder>(&self, s: &mut S) -> Result<(), S::Error>;
[INFO] [stderr]     |               - required by this bound in `rustc_serialize::Encodable::encode`
[INFO] [stderr]     |
[INFO] [stderr]     = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::sign::Signature: rustc_serialize::Encodable` is not satisfied
[INFO] [stderr]    --> src/node_block.rs:47:10
[INFO] [stderr]     |
[INFO] [stderr] 47  | #[derive(RustcEncodable, RustcDecodable, PartialEq, Debug, Clone)]
[INFO] [stderr]     |          ^^^^^^^^^^^^^^ the trait `rustc_serialize::Encodable` is not implemented for `sodiumoxide::crypto::sign::Signature`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/rustc-serialize-0.3.24/src/serialize.rs:853:15
[INFO] [stderr]     |
[INFO] [stderr] 853 |     fn encode<S: Encoder>(&self, s: &mut S) -> Result<(), S::Error>;
[INFO] [stderr]     |               - required by this bound in `rustc_serialize::Encodable::encode`
[INFO] [stderr]     |
[INFO] [stderr]     = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::sign::PublicKey: rustc_serialize::Decodable` is not satisfied
[INFO] [stderr]   --> src/node_block.rs:49:5
[INFO] [stderr]    |
[INFO] [stderr] 49 |     key: PublicKey,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^ the trait `rustc_serialize::Decodable` is not implemented for `sodiumoxide::crypto::sign::PublicKey`
[INFO] [stderr]    |
[INFO] [stderr]    = note: required by `rustc_serialize::Decodable::decode`
[INFO] [stderr]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::sign::PublicKey: rustc_serialize::Decodable` is not satisfied
[INFO] [stderr]    --> src/node_block.rs:47:26
[INFO] [stderr]     |
[INFO] [stderr] 47  | #[derive(RustcEncodable, RustcDecodable, PartialEq, Debug, Clone)]
[INFO] [stderr]     |                          ^^^^^^^^^^^^^^ the trait `rustc_serialize::Decodable` is not implemented for `sodiumoxide::crypto::sign::PublicKey`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/rustc-serialize-0.3.24/src/serialize.rs:904:18
[INFO] [stderr]     |
[INFO] [stderr] 904 |     fn decode<D: Decoder>(d: &mut D) -> Result<Self, D::Error>;
[INFO] [stderr]     |                  ------- required by this bound in `rustc_serialize::Decodable::decode`
[INFO] [stderr]     |
[INFO] [stderr]     = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::sign::Signature: rustc_serialize::Decodable` is not satisfied
[INFO] [stderr]   --> src/node_block.rs:50:5
[INFO] [stderr]    |
[INFO] [stderr] 50 |     sig: Signature,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^ the trait `rustc_serialize::Decodable` is not implemented for `sodiumoxide::crypto::sign::Signature`
[INFO] [stderr]    |
[INFO] [stderr]    = note: required by `rustc_serialize::Decodable::decode`
[INFO] [stderr]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::sign::Signature: rustc_serialize::Decodable` is not satisfied
[INFO] [stderr]    --> src/node_block.rs:47:26
[INFO] [stderr]     |
[INFO] [stderr] 47  | #[derive(RustcEncodable, RustcDecodable, PartialEq, Debug, Clone)]
[INFO] [stderr]     |                          ^^^^^^^^^^^^^^ the trait `rustc_serialize::Decodable` is not implemented for `sodiumoxide::crypto::sign::Signature`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/rustc-serialize-0.3.24/src/serialize.rs:904:18
[INFO] [stderr]     |
[INFO] [stderr] 904 |     fn decode<D: Decoder>(d: &mut D) -> Result<Self, D::Error>;
[INFO] [stderr]     |                  ------- required by this bound in `rustc_serialize::Decodable::decode`
[INFO] [stderr]     |
[INFO] [stderr]     = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::hash::sha256::Digest: rustc_serialize::Encodable` is not satisfied
[INFO] [stderr]    --> src/block_identifier.rs:38:10
[INFO] [stderr]     |
[INFO] [stderr] 38  | #[derive(RustcEncodable, RustcDecodable, PartialEq, Debug, Clone)]
[INFO] [stderr]     |          ^^^^^^^^^^^^^^ the trait `rustc_serialize::Encodable` is not implemented for `sodiumoxide::crypto::hash::sha256::Digest`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/rustc-serialize-0.3.24/src/serialize.rs:853:15
[INFO] [stderr]     |
[INFO] [stderr] 853 |     fn encode<S: Encoder>(&self, s: &mut S) -> Result<(), S::Error>;
[INFO] [stderr]     |               - required by this bound in `rustc_serialize::Encodable::encode`
[INFO] [stderr]     |
[INFO] [stderr]     = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::hash::sha256::Digest: rustc_serialize::Decodable` is not satisfied
[INFO] [stderr]   --> src/block_identifier.rs:41:19
[INFO] [stderr]    |
[INFO] [stderr] 41 |     ImmutableData(Digest),
[INFO] [stderr]    |                   ^^^^^^ the trait `rustc_serialize::Decodable` is not implemented for `sodiumoxide::crypto::hash::sha256::Digest`
[INFO] [stderr]    |
[INFO] [stderr]    = note: required by `rustc_serialize::Decodable::decode`
[INFO] [stderr]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::hash::sha256::Digest: rustc_serialize::Decodable` is not satisfied
[INFO] [stderr]    --> src/block_identifier.rs:38:26
[INFO] [stderr]     |
[INFO] [stderr] 38  | #[derive(RustcEncodable, RustcDecodable, PartialEq, Debug, Clone)]
[INFO] [stderr]     |                          ^^^^^^^^^^^^^^ the trait `rustc_serialize::Decodable` is not implemented for `sodiumoxide::crypto::hash::sha256::Digest`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/rustc-serialize-0.3.24/src/serialize.rs:904:18
[INFO] [stderr]     |
[INFO] [stderr] 904 |     fn decode<D: Decoder>(d: &mut D) -> Result<Self, D::Error>;
[INFO] [stderr]     |                  ------- required by this bound in `rustc_serialize::Decodable::decode`
[INFO] [stderr]     |
[INFO] [stderr]     = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::hash::sha256::Digest: rustc_serialize::Decodable` is not satisfied
[INFO] [stderr]   --> src/block_identifier.rs:43:20
[INFO] [stderr]    |
[INFO] [stderr] 43 |     StructuredData(Digest, SdName),
[INFO] [stderr]    |                    ^^^^^^ the trait `rustc_serialize::Decodable` is not implemented for `sodiumoxide::crypto::hash::sha256::Digest`
[INFO] [stderr]    |
[INFO] [stderr]    = note: required by `rustc_serialize::Decodable::decode`
[INFO] [stderr]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `sodiumoxide::crypto::hash::sha256::Digest: rustc_serialize::Decodable` is not satisfied
[INFO] [stderr]   --> src/block_identifier.rs:43:28
[INFO] [stderr]    |
[INFO] [stderr] 43 |     StructuredData(Digest, SdName),
[INFO] [stderr]    |                            ^^^^^^ the trait `rustc_serialize::Decodable` is not implemented for `sodiumoxide::crypto::hash::sha256::Digest`
[INFO] [stderr]    |
[INFO] [stderr]    = note: required by `rustc_serialize::Decodable::decode`
[INFO] [stderr]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error: unused extern crate
[INFO] [stderr]    --> src/lib.rs:240:1
[INFO] [stderr]     |
[INFO] [stderr] 240 | extern crate rustc_serialize;
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove it
[INFO] [stderr]     |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]    --> src/lib.rs:222:32
[INFO] [stderr]     |
[INFO] [stderr] 222 |           unknown_crate_types, warnings)]
[INFO] [stderr]     |                                ^^^^^^^^
[INFO] [stderr]     = note: `#[forbid(unused_extern_crates)]` implied by `#[forbid(warnings)]`
[INFO] [stderr] 
[INFO] [stderr] error: aborting due to 27 previous errors
[INFO] [stderr] 
[INFO] [stderr] For more information about this error, try `rustc --explain E0277`.
[INFO] [stderr] error: could not compile `data_chain`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] running `"docker" "inspect" "072e5819050408c958ddb9be4b185daaf1138b761219f5da755b656b3ba4ed8d"`
[INFO] running `"docker" "rm" "-f" "072e5819050408c958ddb9be4b185daaf1138b761219f5da755b656b3ba4ed8d"`
[INFO] [stdout] 072e5819050408c958ddb9be4b185daaf1138b761219f5da755b656b3ba4ed8d
