[INFO] fetching crate dbcrossbar 0.2.1... [INFO] checking dbcrossbar-0.2.1 against master#2748a9fd93dd1a00a4521f4f16de5befbf77f6cd for pr-62262-1 [INFO] extracting crate dbcrossbar 0.2.1 into /workspace/builds/worker-0/source [INFO] validating manifest of crates.io crate dbcrossbar 0.2.1 on toolchain 2748a9fd93dd1a00a4521f4f16de5befbf77f6cd [INFO] running `"/workspace/cargo-home/bin/cargo" "+2748a9fd93dd1a00a4521f4f16de5befbf77f6cd" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking crates.io crate dbcrossbar 0.2.1 [INFO] finished tweaking crates.io crate dbcrossbar 0.2.1 [INFO] tweaked toml for crates.io crate dbcrossbar 0.2.1 written to /workspace/builds/worker-0/source/Cargo.toml [INFO] crate crates.io crate dbcrossbar 0.2.1 already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+2748a9fd93dd1a00a4521f4f16de5befbf77f6cd" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/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" "+2748a9fd93dd1a00a4521f4f16de5befbf77f6cd" "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] 2d5685b13b62170230669406ea2a9dd9c5de5e430fd9fa4290c428bb5841ad46 [INFO] running `"docker" "start" "-a" "2d5685b13b62170230669406ea2a9dd9c5de5e430fd9fa4290c428bb5841ad46"` [INFO] [stderr] Checking either v1.5.2 [INFO] [stderr] Compiling cc v1.0.45 [INFO] [stderr] Compiling proc-macro2 v1.0.3 [INFO] [stderr] Compiling syn v0.15.44 [INFO] [stderr] Compiling syn v1.0.5 [INFO] [stderr] Compiling memchr v2.2.1 [INFO] [stderr] Compiling arrayvec v0.4.11 [INFO] [stderr] Compiling serde v1.0.99 [INFO] [stderr] Compiling pkg-config v0.3.15 [INFO] [stderr] Compiling ryu v1.0.0 [INFO] [stderr] Compiling slog v2.5.2 [INFO] [stderr] Compiling failure_derive v0.1.5 [INFO] [stderr] Compiling openssl v0.10.24 [INFO] [stderr] Compiling ident_case v1.0.1 [INFO] [stderr] Compiling fnv v1.0.6 [INFO] [stderr] Checking byte-tools v0.3.1 [INFO] [stderr] Checking futures-core-preview v0.3.0-alpha.18 [INFO] [stderr] Compiling fixedbitset v0.1.9 [INFO] [stderr] Compiling ordermap v0.3.5 [INFO] [stderr] Checking indexmap v1.1.0 [INFO] [stderr] Checking subtle v1.0.0 [INFO] [stderr] Checking opaque-debug v0.2.3 [INFO] [stderr] Checking futures-io-preview v0.3.0-alpha.18 [INFO] [stderr] Checking arc-swap v0.4.2 [INFO] [stderr] Checking adler32 v1.0.3 [INFO] [stderr] Checking pin-utils v0.1.0-alpha.4 [INFO] [stderr] Compiling encoding_rs v0.8.19 [INFO] [stderr] Checking fallible-iterator v0.2.0 [INFO] [stderr] Checking rent_to_own v0.1.0 [INFO] [stderr] Checking md5 v0.6.1 [INFO] [stderr] Checking antidote v1.0.0 [INFO] [stderr] Checking arc-swap v0.3.11 [INFO] [stderr] Checking strum v0.15.0 [INFO] [stderr] Checking difference v2.0.0 [INFO] [stderr] Checking cli_test_dir v0.1.7 [INFO] [stderr] Checking try_from v0.3.2 [INFO] [stderr] Checking crossbeam-utils v0.6.6 [INFO] [stderr] Checking owning_ref v0.4.0 [INFO] [stderr] Checking tokio-sync v0.1.6 [INFO] [stderr] Checking itertools v0.8.0 [INFO] [stderr] Checking block-padding v0.1.4 [INFO] [stderr] Checking futures-sink-preview v0.3.0-alpha.18 [INFO] [stderr] Checking miniz_oxide v0.3.2 [INFO] [stderr] Compiling peg v0.5.7 [INFO] [stderr] Checking tokio-timer v0.1.2 [INFO] [stderr] Compiling petgraph v0.4.13 [INFO] [stderr] Checking humantime v1.2.0 [INFO] [stderr] Checking rand_xorshift v0.1.1 [INFO] [stderr] Checking rand_hc v0.1.0 [INFO] [stderr] Checking rand_isaac v0.1.1 [INFO] [stderr] Checking log v0.4.8 [INFO] [stderr] Checking lock_api v0.1.5 [INFO] [stderr] Checking crc32fast v1.2.0 [INFO] [stderr] Checking futures-channel-preview v0.3.0-alpha.18 [INFO] [stderr] Checking tokio-executor v0.1.8 [INFO] [stderr] Checking crossbeam-queue v0.1.2 [INFO] [stderr] Checking crossbeam-channel v0.3.9 [INFO] [stderr] Checking iovec v0.1.2 [INFO] [stderr] Checking rand_os v0.1.3 [INFO] [stderr] Checking num_cpus v1.10.1 [INFO] [stderr] Checking net2 v0.2.33 [INFO] [stderr] Checking getrandom v0.1.12 [INFO] [stderr] Checking signal-hook-registry v1.1.1 [INFO] [stderr] Checking rand v0.5.6 [INFO] [stderr] Checking term_size v0.3.1 [INFO] [stderr] Checking rand v0.4.6 [INFO] [stderr] Checking rand_chacha v0.1.1 [INFO] [stderr] Compiling parking_lot_core v0.4.0 [INFO] [stderr] Compiling hyper v0.12.34 [INFO] [stderr] Checking want v0.2.0 [INFO] [stderr] Compiling backtrace-sys v0.1.31 [INFO] [stderr] Compiling openssl-sys v0.9.49 [INFO] [stderr] Checking flate2 v1.0.11 [INFO] [stderr] Compiling quote v1.0.2 [INFO] [stderr] Checking tokio-timer v0.2.11 [INFO] [stderr] Checking tokio-current-thread v0.1.6 [INFO] [stderr] Checking slog-scope v4.1.2 [INFO] [stderr] Checking slog-async v2.3.0 [INFO] [stderr] Checking bytes v0.4.12 [INFO] [stderr] Checking futures-cpupool v0.1.8 [INFO] [stderr] Checking rand_core v0.5.1 [INFO] [stderr] Checking mio v0.6.19 [INFO] [stderr] Checking term v0.5.2 [INFO] [stderr] Checking aho-corasick v0.7.6 [INFO] [stderr] Checking futures-util-preview v0.3.0-alpha.18 [INFO] [stderr] Checking csv-core v0.1.6 [INFO] [stderr] Checking textwrap v0.11.0 [INFO] [stderr] Checking signal-hook v0.1.10 [INFO] [stderr] Checking num-integer v0.1.41 [INFO] [stderr] Checking geo-types v0.4.3 [INFO] [stderr] Checking rand v0.6.5 [INFO] [stderr] Checking mime v0.3.13 [INFO] [stderr] Checking cookie v0.12.0 [INFO] [stderr] Checking digest v0.8.1 [INFO] [stderr] Checking block-buffer v0.7.3 [INFO] [stderr] Checking crypto-mac v0.7.0 [INFO] [stderr] Checking tempdir v0.3.7 [INFO] [stderr] Compiling dbcrossbarlib v0.2.1 [INFO] [stderr] Checking rand_chacha v0.2.1 [INFO] [stderr] Checking clap v2.33.0 [INFO] [stderr] Checking tokio-io v0.1.12 [INFO] [stderr] Checking http v0.1.18 [INFO] [stderr] Checking string v0.2.1 [INFO] [stderr] Checking tokio-buf v0.1.1 [INFO] [stderr] Checking wkb v0.4.0 [INFO] [stderr] Checking sha2 v0.8.0 [INFO] [stderr] Checking sha-1 v0.8.1 [INFO] [stderr] Checking mio-uds v0.6.7 [INFO] [stderr] Checking hmac v0.7.1 [INFO] [stderr] Compiling native-tls v0.2.3 [INFO] [stderr] Checking regex v1.3.1 [INFO] [stderr] Checking rand v0.7.0 [INFO] [stderr] Checking crossbeam-epoch v0.7.2 [INFO] [stderr] Checking mime_guess v2.0.1 [INFO] [stderr] Checking uuid v0.7.4 [INFO] [stderr] Checking tokio-codec v0.1.1 [INFO] [stderr] Checking postgres-protocol v0.4.1 [INFO] [stderr] Checking backtrace v0.3.37 [INFO] [stderr] Checking crossbeam-deque v0.7.1 [INFO] [stderr] Checking futures-executor-preview v0.3.0-alpha.18 [INFO] [stderr] Checking env_logger v0.6.2 [INFO] [stderr] Checking h2 v0.1.26 [INFO] [stderr] Checking http-body v0.1.0 [INFO] [stderr] Checking parking_lot v0.7.1 [INFO] [stderr] Checking error-chain v0.12.1 [INFO] [stderr] Checking tokio-threadpool v0.1.15 [INFO] [stderr] Checking crossbeam v0.7.2 [INFO] [stderr] Checking futures-preview v0.3.0-alpha.18 [INFO] [stderr] Checking slog-stdlog v4.0.0 [INFO] [stderr] Checking tokio-reactor v0.1.9 [INFO] [stderr] Checking publicsuffix v1.5.3 [INFO] [stderr] Checking tokio-uds v0.2.5 [INFO] [stderr] Checking tokio-tcp v0.1.3 [INFO] [stderr] Checking tokio-udp v0.1.5 [INFO] [stderr] Checking tokio-signal v0.2.7 [INFO] [stderr] Checking tokio-fs v0.1.6 [INFO] [stderr] Checking tokio-process v0.2.4 [INFO] [stderr] Compiling proc-macro-error v0.2.6 [INFO] [stderr] Checking tokio v0.1.22 [INFO] [stderr] Checking tokio-tls v0.2.1 [INFO] [stderr] Compiling synstructure v0.10.2 [INFO] [stderr] Compiling darling_core v0.8.6 [INFO] [stderr] Compiling serde_derive v1.0.99 [INFO] [stderr] Compiling structopt-derive v0.3.1 [INFO] [stderr] Checking hyper-tls v0.3.2 [INFO] [stderr] Compiling bigml_derive v0.2.1 [INFO] [stderr] Compiling diesel_derives v1.4.0 [INFO] [stderr] Compiling strum_macros v0.15.0 [INFO] [stderr] Checking structopt v0.3.1 [INFO] [stderr] Compiling darling_macro v0.8.6 [INFO] [stderr] Compiling darling v0.8.6 [INFO] [stderr] Compiling derive_state_machine_future v0.2.0 [INFO] [stderr] Checking failure v0.1.5 [INFO] [stderr] Checking mpart-async v0.2.1 [INFO] [stderr] Checking common_failures v0.1.1 [INFO] [stderr] Checking diesel v1.4.2 [INFO] [stderr] Checking state_machine_future v0.2.0 [INFO] [stderr] Checking tokio-postgres v0.4.0-rc.3 [INFO] [stderr] Checking tokio-postgres-native-tls v0.1.0-rc.1 [INFO] [stderr] Checking serde_json v1.0.40 [INFO] [stderr] Checking chrono v0.4.9 [INFO] [stderr] Checking serde_urlencoded v0.5.5 [INFO] [stderr] Checking bstr v0.2.8 [INFO] [stderr] Checking csv v1.1.1 [INFO] [stderr] Checking slog-term v2.4.1 [INFO] [stderr] Checking cookie_store v0.7.0 [INFO] [stderr] Checking geojson v0.15.0 [INFO] [stderr] Checking slog-json v2.3.0 [INFO] [stderr] Checking slog-envlogger v2.2.0 [INFO] [stderr] Checking reqwest v0.9.20 [INFO] [stderr] Checking bigml v0.4.0-alpha.3 [INFO] [stderr] error[E0277]: `*mut (dyn std::ops::Fn() + 'static)` cannot be shared between threads safely [INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/dbcrossbarlib-0.2.1/src/concat.rs:181:29 [INFO] [stderr] | [INFO] [stderr] 181 | ctx.spawn_worker(worker.boxed().compat()); [INFO] [stderr] | ^^^^^ `*mut (dyn std::ops::Fn() + 'static)` cannot be shared between threads safely [INFO] [stderr] | [INFO] [stderr] = help: within `core::fmt::Void`, the trait `std::marker::Sync` is not implemented for `*mut (dyn std::ops::Fn() + 'static)` [INFO] [stderr] = note: required because it appears within the type `std::marker::PhantomData<*mut (dyn std::ops::Fn() + 'static)>` [INFO] [stderr] = note: required because it appears within the type `core::fmt::Void` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `&core::fmt::Void` [INFO] [stderr] = note: required because it appears within the type `std::fmt::ArgumentV1<'_>` [INFO] [stderr] = note: required because it appears within the type `[std::fmt::ArgumentV1<'_>; 0]` [INFO] [stderr] = note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22, 't23, 't24, 't25, 't26> {std::option::Option, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 'r)>, futures::stream::future::StreamFuture + std::marker::Send + 's)>>, futures_util::compat::compat01as03::Compat01As03 + std::marker::Send + 't0)>>>, futures_util::compat::compat01as03::Compat01As03 + std::marker::Send + 't1)>>>, (), std::result::Result<(std::option::Option, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't2)>), (failure::error::Error, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't3)>)>, failure::error::Error, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't4)>, fn(tokio_sync::mpsc::bounded::Sender>, failure::error::Error) -> impl core::future::future::Future {concat::send_err}, tokio_sync::mpsc::bounded::Sender>, failure::error::Error, impl core::future::future::Future, impl core::future::future::Future, (), std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't5)>, fn(tokio_sync::mpsc::bounded::Sender>, failure::error::Error) -> impl core::future::future::Future {concat::send_err}, tokio_sync::mpsc::bounded::Sender>, fn(std::string::String) -> failure::error::Error {failure::error_message::err_msg::}, for<'t27> fn(std::fmt::Arguments<'t27>) -> std::string::String {std::fmt::format}, fn(&'t6 [&'t6 str], &'t6 [std::fmt::ArgumentV1<'t6>]) -> std::fmt::Arguments<'t6> {std::fmt::Arguments::<'t6>::new_v1}, &'t7 str, &'t8 str, [&'t9 str; 1], &'t10 [&'t11 str], &'t12 [&'t13 str; 1], (), [std::fmt::ArgumentV1<'t14>; 0], &'t15 [std::fmt::ArgumentV1<'t16>], &'t17 [std::fmt::ArgumentV1<'t18>; 0], std::fmt::Arguments<'t19>, std::string::String, failure::error::Error, impl core::future::future::Future, impl core::future::future::Future, (), bytes::bytes::BytesMut, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't20)>, bytes::bytes::BytesMut, for<'t27> fn(&'t27 [u8]) -> std::result::Result, failure::error::Error> {concat::csv_header_length}, bytes::bytes::BytesMut, &'t21 [u8], &'t22 bytes::bytes::BytesMut, std::result::Result, failure::error::Error>, usize, bytes::bytes::BytesMut, fn(std::result::Result>, failure::context::Context<&'t23 str>>) -> std::result::Result<>, failure::context::Context<&'t23 str>> as std::ops::Try>::Ok, >, failure::context::Context<&'t23 str>> as std::ops::Try>::Error> {>, failure::context::Context<&'t23 str>> as std::ops::Try>::into_result}, tokio_sync::mpsc::bounded::Sender>, fn(bytes::bytes::BytesMut) -> std::result::Result {std::result::Result::::Ok}, bytes::bytes::BytesMut, std::result::Result, futures::sink::send::Send>>, futures_util::compat::compat01as03::Compat01As03>>>, futures_util::compat::compat01as03::Compat01As03>>>, (), failure::error::Error, fn(tokio_sync::mpsc::bounded::Sender>, failure::error::Error) -> impl core::future::future::Future {concat::send_err}, tokio_sync::mpsc::bounded::Sender>, failure::error::Error, impl core::future::future::Future, impl core::future::future::Future, (), fn(std::result::Result>, failure::error::Error>) -> std::result::Result<>, failure::error::Error> as std::ops::Try>::Ok, >, failure::error::Error> as std::ops::Try>::Error> {>, failure::error::Error> as std::ops::Try>::into_result}, fn(context::Context, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 'static)>, tokio_sync::mpsc::bounded::Sender>) -> impl core::future::future::Future {concat::forward_stream}, &'t24 context::Context, context::Context, context::Context, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't25)>, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't26)>, tokio_sync::mpsc::bounded::Sender>, impl core::future::future::Future, impl core::future::future::Future, ()}` [INFO] [stderr] = note: required because it appears within the type `[static generator@/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/dbcrossbarlib-0.2.1/src/concat.rs:116:29: 178:6 stream:std::boxed::Box + std::marker::Send>, worker_ctx:context::Context, sender:tokio_sync::mpsc::bounded::Sender> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22, 't23, 't24, 't25, 't26> {std::option::Option, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 'r)>, futures::stream::future::StreamFuture + std::marker::Send + 's)>>, futures_util::compat::compat01as03::Compat01As03 + std::marker::Send + 't0)>>>, futures_util::compat::compat01as03::Compat01As03 + std::marker::Send + 't1)>>>, (), std::result::Result<(std::option::Option, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't2)>), (failure::error::Error, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't3)>)>, failure::error::Error, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't4)>, fn(tokio_sync::mpsc::bounded::Sender>, failure::error::Error) -> impl core::future::future::Future {concat::send_err}, tokio_sync::mpsc::bounded::Sender>, failure::error::Error, impl core::future::future::Future, impl core::future::future::Future, (), std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't5)>, fn(tokio_sync::mpsc::bounded::Sender>, failure::error::Error) -> impl core::future::future::Future {concat::send_err}, tokio_sync::mpsc::bounded::Sender>, fn(std::string::String) -> failure::error::Error {failure::error_message::err_msg::}, for<'t27> fn(std::fmt::Arguments<'t27>) -> std::string::String {std::fmt::format}, fn(&'t6 [&'t6 str], &'t6 [std::fmt::ArgumentV1<'t6>]) -> std::fmt::Arguments<'t6> {std::fmt::Arguments::<'t6>::new_v1}, &'t7 str, &'t8 str, [&'t9 str; 1], &'t10 [&'t11 str], &'t12 [&'t13 str; 1], (), [std::fmt::ArgumentV1<'t14>; 0], &'t15 [std::fmt::ArgumentV1<'t16>], &'t17 [std::fmt::ArgumentV1<'t18>; 0], std::fmt::Arguments<'t19>, std::string::String, failure::error::Error, impl core::future::future::Future, impl core::future::future::Future, (), bytes::bytes::BytesMut, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't20)>, bytes::bytes::BytesMut, for<'t27> fn(&'t27 [u8]) -> std::result::Result, failure::error::Error> {concat::csv_header_length}, bytes::bytes::BytesMut, &'t21 [u8], &'t22 bytes::bytes::BytesMut, std::result::Result, failure::error::Error>, usize, bytes::bytes::BytesMut, fn(std::result::Result>, failure::context::Context<&'t23 str>>) -> std::result::Result<>, failure::context::Context<&'t23 str>> as std::ops::Try>::Ok, >, failure::context::Context<&'t23 str>> as std::ops::Try>::Error> {>, failure::context::Context<&'t23 str>> as std::ops::Try>::into_result}, tokio_sync::mpsc::bounded::Sender>, fn(bytes::bytes::BytesMut) -> std::result::Result {std::result::Result::::Ok}, bytes::bytes::BytesMut, std::result::Result, futures::sink::send::Send>>, futures_util::compat::compat01as03::Compat01As03>>>, futures_util::compat::compat01as03::Compat01As03>>>, (), failure::error::Error, fn(tokio_sync::mpsc::bounded::Sender>, failure::error::Error) -> impl core::future::future::Future {concat::send_err}, tokio_sync::mpsc::bounded::Sender>, failure::error::Error, impl core::future::future::Future, impl core::future::future::Future, (), fn(std::result::Result>, failure::error::Error>) -> std::result::Result<>, failure::error::Error> as std::ops::Try>::Ok, >, failure::error::Error> as std::ops::Try>::Error> {>, failure::error::Error> as std::ops::Try>::into_result}, fn(context::Context, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 'static)>, tokio_sync::mpsc::bounded::Sender>) -> impl core::future::future::Future {concat::forward_stream}, &'t24 context::Context, context::Context, context::Context, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't25)>, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't26)>, tokio_sync::mpsc::bounded::Sender>, impl core::future::future::Future, impl core::future::future::Future, ()}]` [INFO] [stderr] = note: required because it appears within the type `std::future::GenFuture<[static generator@/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/dbcrossbarlib-0.2.1/src/concat.rs:116:29: 178:6 stream:std::boxed::Box + std::marker::Send>, worker_ctx:context::Context, sender:tokio_sync::mpsc::bounded::Sender> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22, 't23, 't24, 't25, 't26> {std::option::Option, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 'r)>, futures::stream::future::StreamFuture + std::marker::Send + 's)>>, futures_util::compat::compat01as03::Compat01As03 + std::marker::Send + 't0)>>>, futures_util::compat::compat01as03::Compat01As03 + std::marker::Send + 't1)>>>, (), std::result::Result<(std::option::Option, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't2)>), (failure::error::Error, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't3)>)>, failure::error::Error, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't4)>, fn(tokio_sync::mpsc::bounded::Sender>, failure::error::Error) -> impl core::future::future::Future {concat::send_err}, tokio_sync::mpsc::bounded::Sender>, failure::error::Error, impl core::future::future::Future, impl core::future::future::Future, (), std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't5)>, fn(tokio_sync::mpsc::bounded::Sender>, failure::error::Error) -> impl core::future::future::Future {concat::send_err}, tokio_sync::mpsc::bounded::Sender>, fn(std::string::String) -> failure::error::Error {failure::error_message::err_msg::}, for<'t27> fn(std::fmt::Arguments<'t27>) -> std::string::String {std::fmt::format}, fn(&'t6 [&'t6 str], &'t6 [std::fmt::ArgumentV1<'t6>]) -> std::fmt::Arguments<'t6> {std::fmt::Arguments::<'t6>::new_v1}, &'t7 str, &'t8 str, [&'t9 str; 1], &'t10 [&'t11 str], &'t12 [&'t13 str; 1], (), [std::fmt::ArgumentV1<'t14>; 0], &'t15 [std::fmt::ArgumentV1<'t16>], &'t17 [std::fmt::ArgumentV1<'t18>; 0], std::fmt::Arguments<'t19>, std::string::String, failure::error::Error, impl core::future::future::Future, impl core::future::future::Future, (), bytes::bytes::BytesMut, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't20)>, bytes::bytes::BytesMut, for<'t27> fn(&'t27 [u8]) -> std::result::Result, failure::error::Error> {concat::csv_header_length}, bytes::bytes::BytesMut, &'t21 [u8], &'t22 bytes::bytes::BytesMut, std::result::Result, failure::error::Error>, usize, bytes::bytes::BytesMut, fn(std::result::Result>, failure::context::Context<&'t23 str>>) -> std::result::Result<>, failure::context::Context<&'t23 str>> as std::ops::Try>::Ok, >, failure::context::Context<&'t23 str>> as std::ops::Try>::Error> {>, failure::context::Context<&'t23 str>> as std::ops::Try>::into_result}, tokio_sync::mpsc::bounded::Sender>, fn(bytes::bytes::BytesMut) -> std::result::Result {std::result::Result::::Ok}, bytes::bytes::BytesMut, std::result::Result, futures::sink::send::Send>>, futures_util::compat::compat01as03::Compat01As03>>>, futures_util::compat::compat01as03::Compat01As03>>>, (), failure::error::Error, fn(tokio_sync::mpsc::bounded::Sender>, failure::error::Error) -> impl core::future::future::Future {concat::send_err}, tokio_sync::mpsc::bounded::Sender>, failure::error::Error, impl core::future::future::Future, impl core::future::future::Future, (), fn(std::result::Result>, failure::error::Error>) -> std::result::Result<>, failure::error::Error> as std::ops::Try>::Ok, >, failure::error::Error> as std::ops::Try>::Error> {>, failure::error::Error> as std::ops::Try>::into_result}, fn(context::Context, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 'static)>, tokio_sync::mpsc::bounded::Sender>) -> impl core::future::future::Future {concat::forward_stream}, &'t24 context::Context, context::Context, context::Context, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't25)>, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't26)>, tokio_sync::mpsc::bounded::Sender>, impl core::future::future::Future, impl core::future::future::Future, ()}]>` [INFO] [stderr] = note: required because it appears within the type `impl core::future::future::Future` [INFO] [stderr] [INFO] [stderr] error[E0277]: `dyn tokio_postgres::types::ToSql` cannot be shared between threads safely [INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/dbcrossbarlib-0.2.1/src/drivers/postgres/write_local_data.rs:212:31 [INFO] [stderr] | [INFO] [stderr] 212 | Ok(box_stream_once(Ok(fut.boxed()))) [INFO] [stderr] | ^^^^^ `dyn tokio_postgres::types::ToSql` cannot be shared between threads safely [INFO] [stderr] | [INFO] [stderr] = help: the trait `std::marker::Sync` is not implemented for `dyn tokio_postgres::types::ToSql` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `&dyn tokio_postgres::types::ToSql` [INFO] [stderr] = note: required because it appears within the type `[&dyn tokio_postgres::types::ToSql; 0]` [INFO] [stderr] = note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17> {context::Context, url::Url, std::string::String, std::string::String, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 'r)>, fn(std::result::Result) -> std::result::Result< as std::ops::Try>::Ok, as std::ops::Try>::Error> { as std::ops::Try>::into_result}, fn(context::Context, url::Url) -> impl core::future::future::Future {drivers::postgres::connect}, &'s context::Context, context::Context, context::Context, url::Url, impl core::future::future::Future, impl core::future::future::Future, (), tokio_postgres::Client, fn(std::result::Result) -> std::result::Result< as std::ops::Try>::Ok, as std::ops::Try>::Error> { as std::ops::Try>::into_result}, &'t0 mut tokio_postgres::Client, tokio_postgres::Client, std::string::String, &'t1 str, &'t2 std::string::String, tokio_postgres::impls::Prepare, futures_util::compat::compat01as03::Compat01As03, futures_util::compat::compat01as03::Compat01As03, (), tokio_postgres::Statement, fn(std::result::Result>) -> std::result::Result<> as std::ops::Try>::Ok, > as std::ops::Try>::Error> {> as std::ops::Try>::into_result}, &'t3 mut tokio_postgres::Client, tokio_postgres::Client, tokio_postgres::Statement, &'t4 tokio_postgres::Statement, &'t5 tokio_postgres::Statement, [&'t6 (dyn tokio_postgres::types::ToSql + 't7); 0], &'t8 [&'t9 (dyn tokio_postgres::types::ToSql + 't10)], &'t11 [&'t12 (dyn tokio_postgres::types::ToSql + 't13); 0], std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't14)>, tokio_postgres::impls::CopyIn + std::marker::Send + 't15)>>, futures_util::compat::compat01as03::Compat01As03 + std::marker::Send + 't16)>>>, futures_util::compat::compat01as03::Compat01As03 + std::marker::Send + 't17)>>>, ()}` [INFO] [stderr] = note: required because it appears within the type `[static generator@/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/dbcrossbarlib-0.2.1/src/drivers/postgres/write_local_data.rs:117:17: 127:2 ctx:context::Context, url:url::Url, table_name:std::string::String, copy_from_sql:std::string::String, stream:std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 'static)> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17> {context::Context, url::Url, std::string::String, std::string::String, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 'r)>, fn(std::result::Result) -> std::result::Result< as std::ops::Try>::Ok, as std::ops::Try>::Error> { as std::ops::Try>::into_result}, fn(context::Context, url::Url) -> impl core::future::future::Future {drivers::postgres::connect}, &'s context::Context, context::Context, context::Context, url::Url, impl core::future::future::Future, impl core::future::future::Future, (), tokio_postgres::Client, fn(std::result::Result) -> std::result::Result< as std::ops::Try>::Ok, as std::ops::Try>::Error> { as std::ops::Try>::into_result}, &'t0 mut tokio_postgres::Client, tokio_postgres::Client, std::string::String, &'t1 str, &'t2 std::string::String, tokio_postgres::impls::Prepare, futures_util::compat::compat01as03::Compat01As03, futures_util::compat::compat01as03::Compat01As03, (), tokio_postgres::Statement, fn(std::result::Result>) -> std::result::Result<> as std::ops::Try>::Ok, > as std::ops::Try>::Error> {> as std::ops::Try>::into_result}, &'t3 mut tokio_postgres::Client, tokio_postgres::Client, tokio_postgres::Statement, &'t4 tokio_postgres::Statement, &'t5 tokio_postgres::Statement, [&'t6 (dyn tokio_postgres::types::ToSql + 't7); 0], &'t8 [&'t9 (dyn tokio_postgres::types::ToSql + 't10)], &'t11 [&'t12 (dyn tokio_postgres::types::ToSql + 't13); 0], std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't14)>, tokio_postgres::impls::CopyIn + std::marker::Send + 't15)>>, futures_util::compat::compat01as03::Compat01As03 + std::marker::Send + 't16)>>>, futures_util::compat::compat01as03::Compat01As03 + std::marker::Send + 't17)>>>, ()}]` [INFO] [stderr] = note: required because it appears within the type `std::future::GenFuture<[static generator@/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/dbcrossbarlib-0.2.1/src/drivers/postgres/write_local_data.rs:117:17: 127:2 ctx:context::Context, url:url::Url, table_name:std::string::String, copy_from_sql:std::string::String, stream:std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 'static)> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17> {context::Context, url::Url, std::string::String, std::string::String, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 'r)>, fn(std::result::Result) -> std::result::Result< as std::ops::Try>::Ok, as std::ops::Try>::Error> { as std::ops::Try>::into_result}, fn(context::Context, url::Url) -> impl core::future::future::Future {drivers::postgres::connect}, &'s context::Context, context::Context, context::Context, url::Url, impl core::future::future::Future, impl core::future::future::Future, (), tokio_postgres::Client, fn(std::result::Result) -> std::result::Result< as std::ops::Try>::Ok, as std::ops::Try>::Error> { as std::ops::Try>::into_result}, &'t0 mut tokio_postgres::Client, tokio_postgres::Client, std::string::String, &'t1 str, &'t2 std::string::String, tokio_postgres::impls::Prepare, futures_util::compat::compat01as03::Compat01As03, futures_util::compat::compat01as03::Compat01As03, (), tokio_postgres::Statement, fn(std::result::Result>) -> std::result::Result<> as std::ops::Try>::Ok, > as std::ops::Try>::Error> {> as std::ops::Try>::into_result}, &'t3 mut tokio_postgres::Client, tokio_postgres::Client, tokio_postgres::Statement, &'t4 tokio_postgres::Statement, &'t5 tokio_postgres::Statement, [&'t6 (dyn tokio_postgres::types::ToSql + 't7); 0], &'t8 [&'t9 (dyn tokio_postgres::types::ToSql + 't10)], &'t11 [&'t12 (dyn tokio_postgres::types::ToSql + 't13); 0], std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't14)>, tokio_postgres::impls::CopyIn + std::marker::Send + 't15)>>, futures_util::compat::compat01as03::Compat01As03 + std::marker::Send + 't16)>>>, futures_util::compat::compat01as03::Compat01As03 + std::marker::Send + 't17)>>>, ()}]>` [INFO] [stderr] = note: required because it appears within the type `impl core::future::future::Future` [INFO] [stderr] = note: required because it appears within the type `impl core::future::future::Future` [INFO] [stderr] = note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10> {std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 'r)>, futures::stream::future::StreamFuture + std::marker::Send + 's)>>, futures_util::compat::compat01as03::Compat01As03 + std::marker::Send + 't0)>>>, futures_util::compat::compat01as03::Compat01As03 + std::marker::Send + 't1)>>>, (), std::result::Result<(std::option::Option, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't2)>), (failure::error::Error, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't3)>)>, csv_stream::CsvStream, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't4)>, context::Context, drivers::postgres_shared::table::PgCreateTable, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't5)>, fn(std::result::Result<(), failure::error::Error>) -> std::result::Result< as std::ops::Try>::Ok, as std::ops::Try>::Error> { as std::ops::Try>::into_result}, fn(context::Context, url::Url, std::string::String, std::string::String, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 'static)>) -> impl core::future::future::Future {drivers::postgres::write_local_data::copy_from_async}, context::Context, &'t6 url::Url, url::Url, url::Url, &'t7 std::string::String, std::string::String, std::string::String, &'t8 std::string::String, std::string::String, std::string::String, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't9)>, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't10)>, impl core::future::future::Future, impl core::future::future::Future, ()}` [INFO] [stderr] = note: required because it appears within the type `[static generator@/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/dbcrossbarlib-0.2.1/src/drivers/postgres/write_local_data.rs:173:26: 211:6 data:std::boxed::Box + std::marker::Send>, ctx:context::Context, dest:drivers::postgres::PostgresLocator, pg_create_table:drivers::postgres_shared::table::PgCreateTable, url:url::Url, table_name:std::string::String, copy_sql:std::string::String for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10> {std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 'r)>, futures::stream::future::StreamFuture + std::marker::Send + 's)>>, futures_util::compat::compat01as03::Compat01As03 + std::marker::Send + 't0)>>>, futures_util::compat::compat01as03::Compat01As03 + std::marker::Send + 't1)>>>, (), std::result::Result<(std::option::Option, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't2)>), (failure::error::Error, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't3)>)>, csv_stream::CsvStream, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't4)>, context::Context, drivers::postgres_shared::table::PgCreateTable, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't5)>, fn(std::result::Result<(), failure::error::Error>) -> std::result::Result< as std::ops::Try>::Ok, as std::ops::Try>::Error> { as std::ops::Try>::into_result}, fn(context::Context, url::Url, std::string::String, std::string::String, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 'static)>) -> impl core::future::future::Future {drivers::postgres::write_local_data::copy_from_async}, context::Context, &'t6 url::Url, url::Url, url::Url, &'t7 std::string::String, std::string::String, std::string::String, &'t8 std::string::String, std::string::String, std::string::String, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't9)>, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't10)>, impl core::future::future::Future, impl core::future::future::Future, ()}]` [INFO] [stderr] = note: required because it appears within the type `std::future::GenFuture<[static generator@/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/dbcrossbarlib-0.2.1/src/drivers/postgres/write_local_data.rs:173:26: 211:6 data:std::boxed::Box + std::marker::Send>, ctx:context::Context, dest:drivers::postgres::PostgresLocator, pg_create_table:drivers::postgres_shared::table::PgCreateTable, url:url::Url, table_name:std::string::String, copy_sql:std::string::String for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10> {std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 'r)>, futures::stream::future::StreamFuture + std::marker::Send + 's)>>, futures_util::compat::compat01as03::Compat01As03 + std::marker::Send + 't0)>>>, futures_util::compat::compat01as03::Compat01As03 + std::marker::Send + 't1)>>>, (), std::result::Result<(std::option::Option, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't2)>), (failure::error::Error, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't3)>)>, csv_stream::CsvStream, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't4)>, context::Context, drivers::postgres_shared::table::PgCreateTable, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't5)>, fn(std::result::Result<(), failure::error::Error>) -> std::result::Result< as std::ops::Try>::Ok, as std::ops::Try>::Error> { as std::ops::Try>::into_result}, fn(context::Context, url::Url, std::string::String, std::string::String, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 'static)>) -> impl core::future::future::Future {drivers::postgres::write_local_data::copy_from_async}, context::Context, &'t6 url::Url, url::Url, url::Url, &'t7 std::string::String, std::string::String, std::string::String, &'t8 std::string::String, std::string::String, std::string::String, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't9)>, std::boxed::Box<(dyn futures::stream::Stream + std::marker::Send + 't10)>, impl core::future::future::Future, impl core::future::future::Future, ()}]>` [INFO] [stderr] = note: required because it appears within the type `impl core::future::future::Future` [INFO] [stderr] [INFO] [stderr] error: aborting due to 2 previous errors [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0277`. [INFO] [stderr] error: could not compile `dbcrossbarlib`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "2d5685b13b62170230669406ea2a9dd9c5de5e430fd9fa4290c428bb5841ad46"` [INFO] running `"docker" "rm" "-f" "2d5685b13b62170230669406ea2a9dd9c5de5e430fd9fa4290c428bb5841ad46"` [INFO] [stdout] 2d5685b13b62170230669406ea2a9dd9c5de5e430fd9fa4290c428bb5841ad46