[INFO] updating cached repository uma0317/line-messaging-api-rust [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/uma0317/line-messaging-api-rust [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/uma0317/line-messaging-api-rust" "work/ex/pr-60914/sources/master#39401465da4ce27aeeb2c2a26133ac35c63aa515/gh/uma0317/line-messaging-api-rust"` [INFO] [stderr] Cloning into 'work/ex/pr-60914/sources/master#39401465da4ce27aeeb2c2a26133ac35c63aa515/gh/uma0317/line-messaging-api-rust'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/uma0317/line-messaging-api-rust" "work/ex/pr-60914/sources/try#f45cc3094ee337acd688771b9234318046b0572d/gh/uma0317/line-messaging-api-rust"` [INFO] [stderr] Cloning into 'work/ex/pr-60914/sources/try#f45cc3094ee337acd688771b9234318046b0572d/gh/uma0317/line-messaging-api-rust'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] a42b7bc9ce169ac3099a74b626658abb34e4ee1a [INFO] sha for GitHub repo uma0317/line-messaging-api-rust: a42b7bc9ce169ac3099a74b626658abb34e4ee1a [INFO] validating manifest of uma0317/line-messaging-api-rust on toolchain master#39401465da4ce27aeeb2c2a26133ac35c63aa515 [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+39401465da4ce27aeeb2c2a26133ac35c63aa515-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of uma0317/line-messaging-api-rust on toolchain try#f45cc3094ee337acd688771b9234318046b0572d [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+f45cc3094ee337acd688771b9234318046b0572d-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing uma0317/line-messaging-api-rust [INFO] finished frobbing uma0317/line-messaging-api-rust [INFO] frobbed toml for uma0317/line-messaging-api-rust written to work/ex/pr-60914/sources/master#39401465da4ce27aeeb2c2a26133ac35c63aa515/gh/uma0317/line-messaging-api-rust/Cargo.toml [INFO] started frobbing uma0317/line-messaging-api-rust [INFO] finished frobbing uma0317/line-messaging-api-rust [INFO] frobbed toml for uma0317/line-messaging-api-rust written to work/ex/pr-60914/sources/try#f45cc3094ee337acd688771b9234318046b0572d/gh/uma0317/line-messaging-api-rust/Cargo.toml [INFO] crate uma0317/line-messaging-api-rust already has a lockfile, it will not be regenerated [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+39401465da4ce27aeeb2c2a26133ac35c63aa515-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] [stderr] Blocking waiting for file lock on package cache lock [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+f45cc3094ee337acd688771b9234318046b0572d-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] [stderr] Blocking waiting for file lock on package cache lock [INFO] checking uma0317/line-messaging-api-rust against master#39401465da4ce27aeeb2c2a26133ac35c63aa515 for pr-60914 [INFO] running `"docker" "create" "-v" "/mnt/crater-raid/crater/work/local/target-dirs/pr-60914/worker-3/master#39401465da4ce27aeeb2c2a26133ac35c63aa515:/opt/crater/target:rw,Z" "-v" "/mnt/crater-raid/crater/work/ex/pr-60914/sources/master#39401465da4ce27aeeb2c2a26133ac35c63aa515/gh/uma0317/line-messaging-api-rust:/opt/crater/workdir:ro,Z" "-v" "/mnt/crater-raid/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/crater-raid/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+39401465da4ce27aeeb2c2a26133ac35c63aa515-alt" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] f6bc3aecb75982d46c897cde89dcc4e49ad22bf1cfaad147251452e486f2785a [INFO] running `"docker" "start" "-a" "f6bc3aecb75982d46c897cde89dcc4e49ad22bf1cfaad147251452e486f2785a"` [INFO] [stderr] Checking log v0.4.2 [INFO] [stderr] Compiling openssl-sys v0.9.33 [INFO] [stderr] Checking encoding_rs v0.7.2 [INFO] [stderr] Checking crossbeam-epoch v0.4.1 [INFO] [stderr] Checking url v1.7.0 [INFO] [stderr] Checking serde_json v1.0.20 [INFO] [stderr] Checking libflate v0.1.15 [INFO] [stderr] Checking crypto-mac v0.6.0 [INFO] [stderr] Checking sha2 v0.7.1 [INFO] [stderr] Checking hmac v0.6.2 [INFO] [stderr] Checking mio v0.6.14 [INFO] [stderr] Checking tokio-io v0.1.6 [INFO] [stderr] Checking log v0.3.9 [INFO] [stderr] Checking want v0.0.4 [INFO] [stderr] Checking crossbeam-deque v0.3.1 [INFO] [stderr] Checking tokio-threadpool v0.1.4 [INFO] [stderr] Compiling openssl v0.9.24 [INFO] [stderr] warning[E0713]: borrow may still be in use when destructor runs [INFO] [stderr] --> /opt/crater/cargo-home/registry/src/github.com-1ecc6299db9ec823/url-1.7.0/src/form_urlencoded.rs:261:40 [INFO] [stderr] | [INFO] [stderr] 259 | impl<'a> Target for ::UrlQuery<'a> { [INFO] [stderr] | -- lifetime `'a` defined here [INFO] [stderr] 260 | fn as_mut_string(&mut self) -> &mut String { &mut self.url.serialization } [INFO] [stderr] 261 | fn finish(self) -> &'a mut ::Url { self.url } [INFO] [stderr] | ^^^^^^^^ - here, drop of `self` needs exclusive access to `*self.url`, because the type `UrlQuery<'_>` implements the `Drop` trait [INFO] [stderr] | | [INFO] [stderr] | returning this value requires that `*self.url` is borrowed for `'a` [INFO] [stderr] | [INFO] [stderr] = warning: this error has been downgraded to a warning for backwards compatibility with previous releases [INFO] [stderr] = warning: this represents potential undefined behavior in your code and this warning will become a hard error in the future [INFO] [stderr] [INFO] [stderr] Checking serde_urlencoded v0.5.2 [INFO] [stderr] Checking tokio-reactor v0.1.1 [INFO] [stderr] Checking tokio-fs v0.1.0 [INFO] [stderr] Checking tokio-udp v0.1.0 [INFO] [stderr] Checking tokio-tcp v0.1.0 [INFO] [stderr] Checking tokio v0.1.7 [INFO] [stderr] Checking tokio-core v0.1.17 [INFO] [stderr] Checking tokio-proto v0.1.1 [INFO] [stderr] Checking native-tls v0.1.5 [INFO] [stderr] Checking tokio-tls v0.1.4 [INFO] [stderr] Checking hyper v0.11.27 [INFO] [stderr] Checking hyper-tls v0.1.3 [INFO] [stderr] Checking reqwest v0.8.6 [INFO] [stderr] Checking line-messaging-api-rust v0.1.1 (/opt/crater/workdir) [INFO] [stderr] warning: unused import: `serde_json::Value` [INFO] [stderr] --> src/events.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use serde_json::Value; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `serde_json::Error` [INFO] [stderr] --> src/utils.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use serde_json::Error; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `ReplyableEvent` [INFO] [stderr] --> src/utils.rs:6:15 [INFO] [stderr] | [INFO] [stderr] 6 | use events::{ ReplyableEvent }; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `serde_json::Value` [INFO] [stderr] --> src/events.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use serde_json::Value; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `serde_json::Error` [INFO] [stderr] --> src/utils.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use serde_json::Error; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `ReplyableEvent` [INFO] [stderr] --> src/utils.rs:6:15 [INFO] [stderr] | [INFO] [stderr] 6 | use events::{ ReplyableEvent }; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `text` [INFO] [stderr] --> src/actions.rs:105:91 [INFO] [stderr] | [INFO] [stderr] 105 | pub fn create_postback_with_display_text(label: &str, data: &str, display_text: &str, text: &str) -> Action { [INFO] [stderr] | ^^^^ help: consider prefixing with an underscore: `_text` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `user_id` [INFO] [stderr] --> src/bot.rs:102:47 [INFO] [stderr] | [INFO] [stderr] 102 | LineSourceType::Group { group_id, user_id } => format!("/group/{}/leave", group_id), [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `user_id: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `user_id` [INFO] [stderr] --> src/bot.rs:103:45 [INFO] [stderr] | [INFO] [stderr] 103 | LineSourceType::Room { room_id, user_id } => format!("/room/{}/leave", room_id), [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `user_id: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `options` [INFO] [stderr] --> src/bot.rs:119:53 [INFO] [stderr] | [INFO] [stderr] 119 | pub fn post(&self, endpoint: &str, data: Value, options: Value) -> Response{ [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_options` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `template` [INFO] [stderr] --> src/messages.rs:100:51 [INFO] [stderr] | [INFO] [stderr] 100 | LineMessageType::Template { alt_text, template } => Some(alt_text), [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `template: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `actions` [INFO] [stderr] --> src/messages.rs:101:72 [INFO] [stderr] | [INFO] [stderr] 101 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(base_url), [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `actions: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `alt_text` [INFO] [stderr] --> src/messages.rs:101:51 [INFO] [stderr] | [INFO] [stderr] 101 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(base_url), [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `alt_text: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `base_size` [INFO] [stderr] --> src/messages.rs:101:61 [INFO] [stderr] | [INFO] [stderr] 101 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(base_url), [INFO] [stderr] | ^^^^^^^^^ help: try ignoring the field: `base_size: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `alt_text` [INFO] [stderr] --> src/messages.rs:108:41 [INFO] [stderr] | [INFO] [stderr] 108 | LineMessageType::Template { alt_text, template } => Some(template), [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `alt_text: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `latitude` [INFO] [stderr] --> src/messages.rs:115:57 [INFO] [stderr] | [INFO] [stderr] 115 | LineMessageType::Location { title, address, latitude, longitude } => Some(address), [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `latitude: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `longitude` [INFO] [stderr] --> src/messages.rs:115:67 [INFO] [stderr] | [INFO] [stderr] 115 | LineMessageType::Location { title, address, latitude, longitude } => Some(address), [INFO] [stderr] | ^^^^^^^^^ help: try ignoring the field: `longitude: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `title` [INFO] [stderr] --> src/messages.rs:115:41 [INFO] [stderr] | [INFO] [stderr] 115 | LineMessageType::Location { title, address, latitude, longitude } => Some(address), [INFO] [stderr] | ^^^^^ help: try ignoring the field: `title: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `address` [INFO] [stderr] --> src/messages.rs:122:48 [INFO] [stderr] | [INFO] [stderr] 122 | LineMessageType::Location { title, address, latitude, longitude } => Some(latitude), [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `address: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `longitude` [INFO] [stderr] --> src/messages.rs:122:67 [INFO] [stderr] | [INFO] [stderr] 122 | LineMessageType::Location { title, address, latitude, longitude } => Some(latitude), [INFO] [stderr] | ^^^^^^^^^ help: try ignoring the field: `longitude: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `title` [INFO] [stderr] --> src/messages.rs:122:41 [INFO] [stderr] | [INFO] [stderr] 122 | LineMessageType::Location { title, address, latitude, longitude } => Some(latitude), [INFO] [stderr] | ^^^^^ help: try ignoring the field: `title: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `address` [INFO] [stderr] --> src/messages.rs:129:48 [INFO] [stderr] | [INFO] [stderr] 129 | LineMessageType::Location { title, address, latitude, longitude } => Some(longitude), [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `address: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `latitude` [INFO] [stderr] --> src/messages.rs:129:57 [INFO] [stderr] | [INFO] [stderr] 129 | LineMessageType::Location { title, address, latitude, longitude } => Some(longitude), [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `latitude: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `title` [INFO] [stderr] --> src/messages.rs:129:41 [INFO] [stderr] | [INFO] [stderr] 129 | LineMessageType::Location { title, address, latitude, longitude } => Some(longitude), [INFO] [stderr] | ^^^^^ help: try ignoring the field: `title: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `actions` [INFO] [stderr] --> src/messages.rs:136:72 [INFO] [stderr] | [INFO] [stderr] 136 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(base_url), [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `actions: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `alt_text` [INFO] [stderr] --> src/messages.rs:136:51 [INFO] [stderr] | [INFO] [stderr] 136 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(base_url), [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `alt_text: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `base_size` [INFO] [stderr] --> src/messages.rs:136:61 [INFO] [stderr] | [INFO] [stderr] 136 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(base_url), [INFO] [stderr] | ^^^^^^^^^ help: try ignoring the field: `base_size: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `actions` [INFO] [stderr] --> src/messages.rs:143:72 [INFO] [stderr] | [INFO] [stderr] 143 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(base_size), [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `actions: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `alt_text` [INFO] [stderr] --> src/messages.rs:143:51 [INFO] [stderr] | [INFO] [stderr] 143 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(base_size), [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `alt_text: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `base_url` [INFO] [stderr] --> src/messages.rs:143:41 [INFO] [stderr] | [INFO] [stderr] 143 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(base_size), [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `base_url: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `actions` [INFO] [stderr] --> src/messages.rs:150:72 [INFO] [stderr] | [INFO] [stderr] 150 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(base_size.height), [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `actions: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `alt_text` [INFO] [stderr] --> src/messages.rs:150:51 [INFO] [stderr] | [INFO] [stderr] 150 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(base_size.height), [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `alt_text: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `base_url` [INFO] [stderr] --> src/messages.rs:150:41 [INFO] [stderr] | [INFO] [stderr] 150 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(base_size.height), [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `base_url: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `actions` [INFO] [stderr] --> src/messages.rs:157:72 [INFO] [stderr] | [INFO] [stderr] 157 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(base_size.width), [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `actions: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `alt_text` [INFO] [stderr] --> src/messages.rs:157:51 [INFO] [stderr] | [INFO] [stderr] 157 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(base_size.width), [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `alt_text: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `base_url` [INFO] [stderr] --> src/messages.rs:157:41 [INFO] [stderr] | [INFO] [stderr] 157 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(base_size.width), [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `base_url: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `alt_text` [INFO] [stderr] --> src/messages.rs:164:51 [INFO] [stderr] | [INFO] [stderr] 164 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(actions), [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `alt_text: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `base_size` [INFO] [stderr] --> src/messages.rs:164:61 [INFO] [stderr] | [INFO] [stderr] 164 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(actions), [INFO] [stderr] | ^^^^^^^^^ help: try ignoring the field: `base_size: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `base_url` [INFO] [stderr] --> src/messages.rs:164:41 [INFO] [stderr] | [INFO] [stderr] 164 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(actions), [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `base_url: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `file_size` [INFO] [stderr] --> src/messages.rs:171:48 [INFO] [stderr] | [INFO] [stderr] 171 | LineMessageType::File { file_name, file_size } => Some(file_name), [INFO] [stderr] | ^^^^^^^^^ help: try ignoring the field: `file_size: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `file_name` [INFO] [stderr] --> src/messages.rs:178:37 [INFO] [stderr] | [INFO] [stderr] 178 | LineMessageType::File { file_name, file_size } => Some(file_size), [INFO] [stderr] | ^^^^^^^^^ help: try ignoring the field: `file_name: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sticker_id` [INFO] [stderr] --> src/messages.rs:185:52 [INFO] [stderr] | [INFO] [stderr] 185 | LineMessageType::Sticker { package_id, sticker_id } => Some(package_id), [INFO] [stderr] | ^^^^^^^^^^ help: try ignoring the field: `sticker_id: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `package_id` [INFO] [stderr] --> src/messages.rs:192:40 [INFO] [stderr] | [INFO] [stderr] 192 | LineMessageType::Sticker { package_id, sticker_id } => Some(sticker_id), [INFO] [stderr] | ^^^^^^^^^^ help: try ignoring the field: `package_id: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `alt_text` [INFO] [stderr] --> src/templates.rs:40:37 [INFO] [stderr] | [INFO] [stderr] 40 | pub fn new (kind: TemplateType, alt_text: &str) -> TemplateComponent { [INFO] [stderr] | ^^^^^^^^ help: consider prefixing with an underscore: `_alt_text` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `text` [INFO] [stderr] --> src/actions.rs:105:91 [INFO] [stderr] | [INFO] [stderr] 105 | pub fn create_postback_with_display_text(label: &str, data: &str, display_text: &str, text: &str) -> Action { [INFO] [stderr] | ^^^^ help: consider prefixing with an underscore: `_text` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `user_id` [INFO] [stderr] --> src/bot.rs:102:47 [INFO] [stderr] | [INFO] [stderr] 102 | LineSourceType::Group { group_id, user_id } => format!("/group/{}/leave", group_id), [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `user_id: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `user_id` [INFO] [stderr] --> src/bot.rs:103:45 [INFO] [stderr] | [INFO] [stderr] 103 | LineSourceType::Room { room_id, user_id } => format!("/room/{}/leave", room_id), [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `user_id: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `options` [INFO] [stderr] --> src/bot.rs:119:53 [INFO] [stderr] | [INFO] [stderr] 119 | pub fn post(&self, endpoint: &str, data: Value, options: Value) -> Response{ [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_options` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `template` [INFO] [stderr] --> src/messages.rs:100:51 [INFO] [stderr] | [INFO] [stderr] 100 | LineMessageType::Template { alt_text, template } => Some(alt_text), [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `template: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `actions` [INFO] [stderr] --> src/messages.rs:101:72 [INFO] [stderr] | [INFO] [stderr] 101 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(base_url), [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `actions: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `alt_text` [INFO] [stderr] --> src/messages.rs:101:51 [INFO] [stderr] | [INFO] [stderr] 101 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(base_url), [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `alt_text: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `base_size` [INFO] [stderr] --> src/messages.rs:101:61 [INFO] [stderr] | [INFO] [stderr] 101 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(base_url), [INFO] [stderr] | ^^^^^^^^^ help: try ignoring the field: `base_size: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `alt_text` [INFO] [stderr] --> src/messages.rs:108:41 [INFO] [stderr] | [INFO] [stderr] 108 | LineMessageType::Template { alt_text, template } => Some(template), [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `alt_text: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `latitude` [INFO] [stderr] --> src/messages.rs:115:57 [INFO] [stderr] | [INFO] [stderr] 115 | LineMessageType::Location { title, address, latitude, longitude } => Some(address), [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `latitude: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `longitude` [INFO] [stderr] --> src/messages.rs:115:67 [INFO] [stderr] | [INFO] [stderr] 115 | LineMessageType::Location { title, address, latitude, longitude } => Some(address), [INFO] [stderr] | ^^^^^^^^^ help: try ignoring the field: `longitude: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `title` [INFO] [stderr] --> src/messages.rs:115:41 [INFO] [stderr] | [INFO] [stderr] 115 | LineMessageType::Location { title, address, latitude, longitude } => Some(address), [INFO] [stderr] | ^^^^^ help: try ignoring the field: `title: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `address` [INFO] [stderr] --> src/messages.rs:122:48 [INFO] [stderr] | [INFO] [stderr] 122 | LineMessageType::Location { title, address, latitude, longitude } => Some(latitude), [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `address: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `longitude` [INFO] [stderr] --> src/messages.rs:122:67 [INFO] [stderr] | [INFO] [stderr] 122 | LineMessageType::Location { title, address, latitude, longitude } => Some(latitude), [INFO] [stderr] | ^^^^^^^^^ help: try ignoring the field: `longitude: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `title` [INFO] [stderr] --> src/messages.rs:122:41 [INFO] [stderr] | [INFO] [stderr] 122 | LineMessageType::Location { title, address, latitude, longitude } => Some(latitude), [INFO] [stderr] | ^^^^^ help: try ignoring the field: `title: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `address` [INFO] [stderr] --> src/messages.rs:129:48 [INFO] [stderr] | [INFO] [stderr] 129 | LineMessageType::Location { title, address, latitude, longitude } => Some(longitude), [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `address: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `latitude` [INFO] [stderr] --> src/messages.rs:129:57 [INFO] [stderr] | [INFO] [stderr] 129 | LineMessageType::Location { title, address, latitude, longitude } => Some(longitude), [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `latitude: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `title` [INFO] [stderr] --> src/messages.rs:129:41 [INFO] [stderr] | [INFO] [stderr] 129 | LineMessageType::Location { title, address, latitude, longitude } => Some(longitude), [INFO] [stderr] | ^^^^^ help: try ignoring the field: `title: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `actions` [INFO] [stderr] --> src/messages.rs:136:72 [INFO] [stderr] | [INFO] [stderr] 136 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(base_url), [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `actions: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `alt_text` [INFO] [stderr] --> src/messages.rs:136:51 [INFO] [stderr] | [INFO] [stderr] 136 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(base_url), [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `alt_text: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `base_size` [INFO] [stderr] --> src/messages.rs:136:61 [INFO] [stderr] | [INFO] [stderr] 136 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(base_url), [INFO] [stderr] | ^^^^^^^^^ help: try ignoring the field: `base_size: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `actions` [INFO] [stderr] --> src/messages.rs:143:72 [INFO] [stderr] | [INFO] [stderr] 143 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(base_size), [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `actions: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `alt_text` [INFO] [stderr] --> src/messages.rs:143:51 [INFO] [stderr] | [INFO] [stderr] 143 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(base_size), [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `alt_text: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `base_url` [INFO] [stderr] --> src/messages.rs:143:41 [INFO] [stderr] | [INFO] [stderr] 143 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(base_size), [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `base_url: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `actions` [INFO] [stderr] --> src/messages.rs:150:72 [INFO] [stderr] | [INFO] [stderr] 150 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(base_size.height), [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `actions: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `alt_text` [INFO] [stderr] --> src/messages.rs:150:51 [INFO] [stderr] | [INFO] [stderr] 150 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(base_size.height), [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `alt_text: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `base_url` [INFO] [stderr] --> src/messages.rs:150:41 [INFO] [stderr] | [INFO] [stderr] 150 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(base_size.height), [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `base_url: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `actions` [INFO] [stderr] --> src/messages.rs:157:72 [INFO] [stderr] | [INFO] [stderr] 157 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(base_size.width), [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `actions: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `alt_text` [INFO] [stderr] --> src/messages.rs:157:51 [INFO] [stderr] | [INFO] [stderr] 157 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(base_size.width), [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `alt_text: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `base_url` [INFO] [stderr] --> src/messages.rs:157:41 [INFO] [stderr] | [INFO] [stderr] 157 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(base_size.width), [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `base_url: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `alt_text` [INFO] [stderr] --> src/messages.rs:164:51 [INFO] [stderr] | [INFO] [stderr] 164 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(actions), [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `alt_text: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `base_size` [INFO] [stderr] --> src/messages.rs:164:61 [INFO] [stderr] | [INFO] [stderr] 164 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(actions), [INFO] [stderr] | ^^^^^^^^^ help: try ignoring the field: `base_size: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `base_url` [INFO] [stderr] --> src/messages.rs:164:41 [INFO] [stderr] | [INFO] [stderr] 164 | LineMessageType::Imagemap { base_url, alt_text, base_size, actions } => Some(actions), [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `base_url: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `file_size` [INFO] [stderr] --> src/messages.rs:171:48 [INFO] [stderr] | [INFO] [stderr] 171 | LineMessageType::File { file_name, file_size } => Some(file_name), [INFO] [stderr] | ^^^^^^^^^ help: try ignoring the field: `file_size: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `file_name` [INFO] [stderr] --> src/messages.rs:178:37 [INFO] [stderr] | [INFO] [stderr] 178 | LineMessageType::File { file_name, file_size } => Some(file_size), [INFO] [stderr] | ^^^^^^^^^ help: try ignoring the field: `file_name: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sticker_id` [INFO] [stderr] --> src/messages.rs:185:52 [INFO] [stderr] | [INFO] [stderr] 185 | LineMessageType::Sticker { package_id, sticker_id } => Some(package_id), [INFO] [stderr] | ^^^^^^^^^^ help: try ignoring the field: `sticker_id: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `package_id` [INFO] [stderr] --> src/messages.rs:192:40 [INFO] [stderr] | [INFO] [stderr] 192 | LineMessageType::Sticker { package_id, sticker_id } => Some(sticker_id), [INFO] [stderr] | ^^^^^^^^^^ help: try ignoring the field: `package_id: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `alt_text` [INFO] [stderr] --> src/templates.rs:40:37 [INFO] [stderr] | [INFO] [stderr] 40 | pub fn new (kind: TemplateType, alt_text: &str) -> TemplateComponent { [INFO] [stderr] | ^^^^^^^^ help: consider prefixing with an underscore: `_alt_text` [INFO] [stderr] [INFO] [stderr] warning: unused attribute [INFO] [stderr] --> src/templates.rs:88:5 [INFO] [stderr] | [INFO] [stderr] 88 | #[derive(rename = "thumbnailImageUrl")] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_attributes)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused attribute [INFO] [stderr] --> src/templates.rs:88:5 [INFO] [stderr] | [INFO] [stderr] 88 | #[derive(rename = "thumbnailImageUrl")] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_attributes)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `line::models::LineBotConfig` [INFO] [stderr] --> tests/integration_test.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use line::models::LineBotConfig; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `ReplyableEventType`, `ReplyableEvent` [INFO] [stderr] --> tests/integration_test.rs:7:21 [INFO] [stderr] | [INFO] [stderr] 7 | use line::events::{ ReplyableEventType, ReplyableEvent }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `LineSourceType`, `LineSource` [INFO] [stderr] --> tests/integration_test.rs:8:22 [INFO] [stderr] | [INFO] [stderr] 8 | use line::sources::{ LineSourceType, LineSource }; [INFO] [stderr] | ^^^^^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Error`, `Value` [INFO] [stderr] --> tests/integration_test.rs:10:18 [INFO] [stderr] | [INFO] [stderr] 10 | use serde_json::{Value, Error}; [INFO] [stderr] | ^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::env` [INFO] [stderr] --> tests/common/mod.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use std::env; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `serde_json::value::Value` [INFO] [stderr] --> tests/utils_test/mod.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use serde_json::value::Value; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `line::bot::LineBot` [INFO] [stderr] --> tests/utils_test/mod.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use line::bot::LineBot; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `line::flex_message::components::Component` [INFO] [stderr] --> tests/flex_message_test/component_builder_test.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use line::flex_message::components::Component; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `BlockStyle`, `BubbleStyle` [INFO] [stderr] --> tests/flex_message_test/containers_test.rs:4:42 [INFO] [stderr] | [INFO] [stderr] 4 | use line::flex_message::styles::{ Style, BlockStyle, BubbleStyle }; [INFO] [stderr] | ^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `bot` [INFO] [stderr] --> tests/integration_test.rs:20:9 [INFO] [stderr] | [INFO] [stderr] 20 | let bot = LineBot::new("secret key", "this is a pen."); [INFO] [stderr] | ^^^ help: consider prefixing with an underscore: `_bot` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `content` [INFO] [stderr] --> tests/events_test/mod.rs:11:9 [INFO] [stderr] | [INFO] [stderr] 11 | let content: ReplyableEvent = utils::to_events(&data).unwrap(); [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_content` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `content` [INFO] [stderr] --> tests/events_test/mod.rs:17:9 [INFO] [stderr] | [INFO] [stderr] 17 | let content: ReplyableEvent = utils::to_events(&data).unwrap(); [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_content` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `content` [INFO] [stderr] --> tests/events_test/mod.rs:23:9 [INFO] [stderr] | [INFO] [stderr] 23 | let content: ReplyableEvent = utils::to_events(&data).unwrap(); [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_content` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `content` [INFO] [stderr] --> tests/events_test/mod.rs:29:9 [INFO] [stderr] | [INFO] [stderr] 29 | let content: ReplyableEvent = utils::to_events(&data).unwrap(); [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_content` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `content` [INFO] [stderr] --> tests/events_test/mod.rs:35:9 [INFO] [stderr] | [INFO] [stderr] 35 | let content: ReplyableEvent = utils::to_events(&data).unwrap(); [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_content` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `content` [INFO] [stderr] --> tests/events_test/mod.rs:41:9 [INFO] [stderr] | [INFO] [stderr] 41 | let content: LineEvent = utils::to_events(&data).unwrap(); [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_content` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `content` [INFO] [stderr] --> tests/events_test/mod.rs:47:9 [INFO] [stderr] | [INFO] [stderr] 47 | let content: ReplyableEvent = utils::to_events(&data).unwrap(); [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_content` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `content` [INFO] [stderr] --> tests/events_test/mod.rs:53:9 [INFO] [stderr] | [INFO] [stderr] 53 | let content: LineEvent = utils::to_events(&data).unwrap(); [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_content` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `content` [INFO] [stderr] --> tests/events_test/mod.rs:60:9 [INFO] [stderr] | [INFO] [stderr] 60 | let content: ReplyableEvent = utils::to_events(&data).unwrap(); [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_content` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `content` [INFO] [stderr] --> tests/events_test/mod.rs:67:9 [INFO] [stderr] | [INFO] [stderr] 67 | let content: ReplyableEvent = utils::to_events(&data).unwrap(); [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_content` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `content` [INFO] [stderr] --> tests/events_test/mod.rs:73:9 [INFO] [stderr] | [INFO] [stderr] 73 | let content: ReplyableEvent = utils::to_events(&data).unwrap(); [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_content` [INFO] [stderr] [INFO] [stderr] warning: value assigned to `url` is never read [INFO] [stderr] --> tests/messages_test/mod.rs:183:13 [INFO] [stderr] | [INFO] [stderr] 183 | let mut url = String::new(); [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_assignments)] on by default [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `separator` [INFO] [stderr] --> tests/messages_test/mod.rs:193:9 [INFO] [stderr] | [INFO] [stderr] 193 | let separator = ComponentBuilder::new().build_separator(); [INFO] [stderr] | ^^^^^^^^^ help: consider prefixing with an underscore: `_separator` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `filler` [INFO] [stderr] --> tests/messages_test/mod.rs:240:9 [INFO] [stderr] | [INFO] [stderr] 240 | let filler = ComponentBuilder::new() [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_filler` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `filler` [INFO] [stderr] --> tests/messages_test/mod.rs:324:9 [INFO] [stderr] | [INFO] [stderr] 324 | let filler = ComponentBuilder::new() [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_filler` [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 26.16s [INFO] running `"docker" "inspect" "f6bc3aecb75982d46c897cde89dcc4e49ad22bf1cfaad147251452e486f2785a"` [INFO] running `"docker" "rm" "-f" "f6bc3aecb75982d46c897cde89dcc4e49ad22bf1cfaad147251452e486f2785a"` [INFO] [stdout] f6bc3aecb75982d46c897cde89dcc4e49ad22bf1cfaad147251452e486f2785a