[INFO] cloning repository https://github.com/Darrenmeehan/register-on-upload [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Darrenmeehan/register-on-upload" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDarrenmeehan%2Fregister-on-upload", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDarrenmeehan%2Fregister-on-upload'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 3d5c5a6be0e0908ad3252487970ef17f488ba503 [INFO] checking Darrenmeehan/register-on-upload against master#2e5723137b2b88368d018b262a0a823a1423131b for pr-78935-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDarrenmeehan%2Fregister-on-upload" "/workspace/builds/worker-3/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Darrenmeehan/register-on-upload on toolchain 2e5723137b2b88368d018b262a0a823a1423131b [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+2e5723137b2b88368d018b262a0a823a1423131b" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] removed /workspace/builds/worker-3/source/.cargo/config [INFO] started tweaking git repo https://github.com/Darrenmeehan/register-on-upload [INFO] finished tweaking git repo https://github.com/Darrenmeehan/register-on-upload [INFO] tweaked toml for git repo https://github.com/Darrenmeehan/register-on-upload written to /workspace/builds/worker-3/source/Cargo.toml [INFO] crate git repo https://github.com/Darrenmeehan/register-on-upload already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+2e5723137b2b88368d018b262a0a823a1423131b" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:6eabd152ff4036248d66efda456a36cb33d24b7291b33f25f75140726c88da35" "/opt/rustwide/cargo-home/bin/cargo" "+2e5723137b2b88368d018b262a0a823a1423131b" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] cd83c8cd6719bf5056a150f554b9994ffc50d5c120a274177e094407578f3ad7 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "cd83c8cd6719bf5056a150f554b9994ffc50d5c120a274177e094407578f3ad7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "cd83c8cd6719bf5056a150f554b9994ffc50d5c120a274177e094407578f3ad7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cd83c8cd6719bf5056a150f554b9994ffc50d5c120a274177e094407578f3ad7", kill_on_drop: false }` [INFO] [stdout] cd83c8cd6719bf5056a150f554b9994ffc50d5c120a274177e094407578f3ad7 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:6eabd152ff4036248d66efda456a36cb33d24b7291b33f25f75140726c88da35" "/opt/rustwide/cargo-home/bin/cargo" "+2e5723137b2b88368d018b262a0a823a1423131b" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 837ec64b6ddb12e2fce5d858d21caa3370a6bf62402d4597539e2bf5e2450914 [INFO] running `Command { std: "docker" "start" "-a" "837ec64b6ddb12e2fce5d858d21caa3370a6bf62402d4597539e2bf5e2450914", kill_on_drop: false }` [INFO] [stderr] Compiling syn v1.0.38 [INFO] [stderr] Compiling serde_derive v1.0.115 [INFO] [stderr] Compiling serde v1.0.115 [INFO] [stderr] Checking futures-task v0.3.4 [INFO] [stderr] Checking futures-io v0.3.4 [INFO] [stderr] Compiling proc-macro2 v0.4.30 [INFO] [stderr] Compiling unicode-xid v0.1.0 [INFO] [stderr] Compiling openssl v0.10.29 [INFO] [stderr] Checking byte-tools v0.3.1 [INFO] [stderr] Checking subtle v1.0.0 [INFO] [stderr] Checking fake-simd v0.1.2 [INFO] [stderr] Checking shlex v0.1.1 [INFO] [stderr] Checking zeroize v1.1.0 [INFO] [stderr] Checking opaque-debug v0.2.3 [INFO] [stderr] Checking base64 v0.12.0 [INFO] [stderr] Checking hex v0.4.2 [INFO] [stderr] Checking genawaiter-macro v0.99.1 [INFO] [stderr] Checking xml-rs v0.8.3 [INFO] [stderr] Checking rusoto v0.24.2 [INFO] [stderr] Compiling num-traits v0.2.11 [INFO] [stderr] Compiling num-integer v0.1.42 [INFO] [stderr] Checking tracing-core v0.1.10 [INFO] [stderr] Checking sharded-slab v0.0.9 [INFO] [stderr] Checking futures-channel v0.3.4 [INFO] [stderr] Compiling openssl-sys v0.9.55 [INFO] [stderr] Checking http v0.2.1 [INFO] [stderr] Compiling proc-macro-error-attr v0.4.12 [INFO] [stderr] Compiling proc-macro-error v0.4.12 [INFO] [stderr] Compiling time v0.2.14 [INFO] [stderr] Checking block-padding v0.1.5 [INFO] [stderr] Checking log v0.4.8 [INFO] [stderr] Compiling standback v0.2.8 [INFO] [stderr] Checking signal-hook-registry v1.2.0 [INFO] [stderr] Compiling quote v1.0.3 [INFO] [stderr] Compiling rusoto_core v0.44.0 [INFO] [stderr] Checking generic-array v0.12.3 [INFO] [stderr] Checking dirs v2.0.2 [INFO] [stderr] Checking colored v1.9.3 [INFO] [stderr] Checking mio v0.6.21 [INFO] [stderr] Checking tokio-io v0.1.13 [INFO] [stderr] Checking want v0.3.0 [INFO] [stderr] Checking tokio-threadpool v0.1.18 [INFO] [stderr] Checking want v0.2.0 [INFO] [stderr] Checking tracing-subscriber v0.2.5 [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 hmac v0.7.1 [INFO] [stderr] Checking sha2 v0.8.1 [INFO] [stderr] Compiling native-tls v0.2.4 [INFO] [stderr] Compiling quote v0.6.13 [INFO] [stderr] Checking tokio-codec v0.1.2 [INFO] [stderr] Checking h2 v0.1.26 [INFO] [stderr] Compiling syn v0.15.44 [INFO] [stderr] Checking tokio-fs v0.1.7 [INFO] [stderr] Checking mio-uds v0.6.7 [INFO] [stderr] Checking tokio-reactor v0.1.12 [INFO] [stderr] Checking tokio-tcp v0.1.4 [INFO] [stderr] Checking tokio-udp v0.1.6 [INFO] [stderr] Checking tokio-uds v0.2.6 [INFO] [stderr] Checking tokio v0.1.22 [INFO] [stderr] Checking http-body v0.3.1 [INFO] [stderr] Checking hyper v0.12.35 [INFO] [stderr] Compiling synstructure v0.10.2 [INFO] [stderr] Compiling lambda_runtime_errors_derive v0.1.1 [INFO] [stderr] Compiling syn-mid v0.5.0 [INFO] [stderr] Compiling synstructure v0.12.3 [INFO] [stderr] Compiling tokio-macros v0.2.5 [INFO] [stderr] Compiling futures-macro v0.3.4 [INFO] [stderr] Compiling pin-project-internal v0.4.9 [INFO] [stderr] Compiling time-macros-impl v0.1.1 [INFO] [stderr] Compiling tracing-attributes v0.1.7 [INFO] [stderr] Compiling async-trait v0.1.30 [INFO] [stderr] Compiling failure_derive v0.1.7 [INFO] [stderr] Compiling lambda-attributes v0.1.0 (https://github.com/awslabs/aws-lambda-rust-runtime/?branch=master#ed3fd167) [INFO] [stderr] Checking tokio v0.2.22 [INFO] [stderr] Compiling genawaiter-proc-macro v0.99.1 [INFO] [stderr] Checking time-macros v0.1.0 [INFO] [stderr] Checking failure v0.1.7 [INFO] [stderr] Checking futures-util v0.3.4 [INFO] [stderr] Checking tracing v0.1.13 [INFO] [stderr] Checking tracing-error v0.1.2 [INFO] [stderr] Checking pin-project v0.4.9 [INFO] [stderr] Checking genawaiter v0.99.1 [INFO] [stderr] Checking tracing-futures v0.2.4 [INFO] [stderr] Checking futures-executor v0.3.4 [INFO] [stderr] Checking futures v0.3.4 [INFO] [stderr] Checking tokio-util v0.3.1 [INFO] [stderr] Checking tokio-tls v0.3.0 [INFO] [stderr] Checking h2 v0.2.4 [INFO] [stderr] Checking hyper v0.13.5 [INFO] [stderr] Checking hyper-tls v0.4.1 [INFO] [stderr] Checking serde_json v1.0.57 [INFO] [stderr] Checking chrono v0.4.11 [INFO] [stderr] Checking simple_logger v1.11.0 [INFO] [stderr] Checking rusoto_credential v0.44.0 [INFO] [stderr] Checking lambda_runtime_errors v0.1.1 [INFO] [stderr] Checking lambda v0.1.0 (https://github.com/awslabs/aws-lambda-rust-runtime/?branch=master#ed3fd167) [INFO] [stderr] Checking lambda_runtime_client v0.2.2 [INFO] [stderr] Checking rusoto_signature v0.44.0 [INFO] [stderr] Checking rusoto_dynamodb v0.44.0 [INFO] [stderr] Checking register-on-upload v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `#[tokio::main] [INFO] [stdout] async fn main(event: Value) -> Result { [INFO] [stdout] let logger = simple_logger::init(); [INFO] [stdout] match logger { [INFO] [stdout] Ok(logger) => debug!("Logger has been setup successfully"), [INFO] [stdout] Err(error) => println!("Something went wrong"), [INFO] [stdout] }; [INFO] [stdout] debug!("event={}", event); [INFO] [stdout] [INFO] [stdout] let table_name = get_dynamodb_table_name(); [INFO] [stdout] [INFO] [stdout] // FIXME Add support for more than one record.. [INFO] [stdout] let image_information = get_image_information(&event); [INFO] [stdout] let id = event["Records"][0]["s3"]["object"]["key"].to_string(); [INFO] [stdout] debug!("id={}", id); [INFO] [stdout] [INFO] [stdout] let details = AttributeValue { [INFO] [stdout] s: Option::from(image_information), [INFO] [stdout] ..Default::default() [INFO] [stdout] }; [INFO] [stdout] let id_value = AttributeValue { [INFO] [stdout] s: Option::from(id), [INFO] [stdout] ..Default::default() [INFO] [stdout] }; [INFO] [stdout] [INFO] [stdout] // FIXME Hardcoded value for now is ok as currently all photos are uploaded by me [INFO] [stdout] // Adding stubbed value to enable API queries required by UI.. [INFO] [stdout] let owner = AttributeValue { [INFO] [stdout] s: Option::from("darren.meehan".to_string()), [INFO] [stdout] ..Default::default() [INFO] [stdout] }; [INFO] [stdout] [INFO] [stdout] let mut item: HashMap = HashMap::new(); [INFO] [stdout] item.insert("id".to_string(), id_value); [INFO] [stdout] item.insert("Details".to_string(), details); [INFO] [stdout] item.insert("OwnedBy".to_string(), owner); [INFO] [stdout] let input = PutItemInput { [INFO] [stdout] item, [INFO] [stdout] table_name, [INFO] [stdout] ..Default::default() [INFO] [stdout] }; [INFO] [stdout] let client = DynamoDbClient::new(Region::EuWest1); [INFO] [stdout] let response = client.put_item(input).await; [INFO] [stdout] [INFO] [stdout] // FIXME Return response [INFO] [stdout] let response = match response { [INFO] [stdout] Ok(entry) => debug!("Added entry"), // FIXME Figure out how to log entry [INFO] [stdout] // FIXME Fail Lambda run on error [INFO] [stdout] Err(error) => panic!("Problem adding to DB: {}", error), [INFO] [stdout] }; [INFO] [stdout] Ok(event) [INFO] [stdout] }` [INFO] [stdout] --> src/main.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | / #[tokio::main] [INFO] [stdout] 14 | | async fn main(event: Value) -> Result { [INFO] [stdout] 15 | | let logger = simple_logger::init(); [INFO] [stdout] 16 | | match logger { [INFO] [stdout] ... | [INFO] [stdout] 63 | | Ok(event) [INFO] [stdout] 64 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `simple_logger::init`: Please use the Builder pattern instead. [INFO] [stdout] --> src/main.rs:15:18 [INFO] [stdout] | [INFO] [stdout] 15 | let logger = simple_logger::init(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `logger` [INFO] [stdout] --> src/main.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 17 | Ok(logger) => debug!("Logger has been setup successfully"), [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_logger` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error` [INFO] [stdout] --> src/main.rs:18:13 [INFO] [stdout] | [INFO] [stdout] 18 | Err(error) => println!("Something went wrong"), [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `response` [INFO] [stdout] --> src/main.rs:58:9 [INFO] [stdout] | [INFO] [stdout] 58 | let response = match response { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_response` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `entry` [INFO] [stdout] --> src/main.rs:59:12 [INFO] [stdout] | [INFO] [stdout] 59 | Ok(entry) => debug!("Added entry"), // FIXME Figure out how to log entry [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_entry` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 6 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `#[tokio::main] [INFO] [stdout] async fn main(event: Value) -> Result { [INFO] [stdout] let logger = simple_logger::init(); [INFO] [stdout] match logger { [INFO] [stdout] Ok(logger) => debug!("Logger has been setup successfully"), [INFO] [stdout] Err(error) => println!("Something went wrong"), [INFO] [stdout] }; [INFO] [stdout] debug!("event={}", event); [INFO] [stdout] [INFO] [stdout] let table_name = get_dynamodb_table_name(); [INFO] [stdout] [INFO] [stdout] // FIXME Add support for more than one record.. [INFO] [stdout] let image_information = get_image_information(&event); [INFO] [stdout] let id = event["Records"][0]["s3"]["object"]["key"].to_string(); [INFO] [stdout] debug!("id={}", id); [INFO] [stdout] [INFO] [stdout] let details = AttributeValue { [INFO] [stdout] s: Option::from(image_information), [INFO] [stdout] ..Default::default() [INFO] [stdout] }; [INFO] [stdout] let id_value = AttributeValue { [INFO] [stdout] s: Option::from(id), [INFO] [stdout] ..Default::default() [INFO] [stdout] }; [INFO] [stdout] [INFO] [stdout] // FIXME Hardcoded value for now is ok as currently all photos are uploaded by me [INFO] [stdout] // Adding stubbed value to enable API queries required by UI.. [INFO] [stdout] let owner = AttributeValue { [INFO] [stdout] s: Option::from("darren.meehan".to_string()), [INFO] [stdout] ..Default::default() [INFO] [stdout] }; [INFO] [stdout] [INFO] [stdout] let mut item: HashMap = HashMap::new(); [INFO] [stdout] item.insert("id".to_string(), id_value); [INFO] [stdout] item.insert("Details".to_string(), details); [INFO] [stdout] item.insert("OwnedBy".to_string(), owner); [INFO] [stdout] let input = PutItemInput { [INFO] [stdout] item, [INFO] [stdout] table_name, [INFO] [stdout] ..Default::default() [INFO] [stdout] }; [INFO] [stdout] let client = DynamoDbClient::new(Region::EuWest1); [INFO] [stdout] let response = client.put_item(input).await; [INFO] [stdout] [INFO] [stdout] // FIXME Return response [INFO] [stdout] let response = match response { [INFO] [stdout] Ok(entry) => debug!("Added entry"), // FIXME Figure out how to log entry [INFO] [stdout] // FIXME Fail Lambda run on error [INFO] [stdout] Err(error) => panic!("Problem adding to DB: {}", error), [INFO] [stdout] }; [INFO] [stdout] Ok(event) [INFO] [stdout] }` [INFO] [stdout] --> src/main.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | / #[tokio::main] [INFO] [stdout] 14 | | async fn main(event: Value) -> Result { [INFO] [stdout] 15 | | let logger = simple_logger::init(); [INFO] [stdout] 16 | | match logger { [INFO] [stdout] ... | [INFO] [stdout] 63 | | Ok(event) [INFO] [stdout] 64 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `simple_logger::init`: Please use the Builder pattern instead. [INFO] [stdout] --> src/main.rs:15:18 [INFO] [stdout] | [INFO] [stdout] 15 | let logger = simple_logger::init(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `logger` [INFO] [stdout] --> src/main.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 17 | Ok(logger) => debug!("Logger has been setup successfully"), [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_logger` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error` [INFO] [stdout] --> src/main.rs:18:13 [INFO] [stdout] | [INFO] [stdout] 18 | Err(error) => println!("Something went wrong"), [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `response` [INFO] [stdout] --> src/main.rs:58:9 [INFO] [stdout] | [INFO] [stdout] 58 | let response = match response { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_response` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `entry` [INFO] [stdout] --> src/main.rs:59:12 [INFO] [stdout] | [INFO] [stdout] 59 | Ok(entry) => debug!("Added entry"), // FIXME Figure out how to log entry [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_entry` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 6 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 2m 58s [INFO] running `Command { std: "docker" "inspect" "837ec64b6ddb12e2fce5d858d21caa3370a6bf62402d4597539e2bf5e2450914", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "837ec64b6ddb12e2fce5d858d21caa3370a6bf62402d4597539e2bf5e2450914", kill_on_drop: false }` [INFO] [stdout] 837ec64b6ddb12e2fce5d858d21caa3370a6bf62402d4597539e2bf5e2450914