[INFO] fetching crate alipay-global 0.1.4...
[INFO] testing alipay-global-0.1.4 against master#d98a5da813da67eb189387b8ccfb73cf481275d8+rustflags=-Copt-level=3 for pr-138759
[INFO] extracting crate alipay-global 0.1.4 into /workspace/builds/worker-5-tc1/source
[INFO] started tweaking crates.io crate alipay-global 0.1.4
[INFO] finished tweaking crates.io crate alipay-global 0.1.4
[INFO] tweaked toml for crates.io crate alipay-global 0.1.4 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate alipay-global 0.1.4 on toolchain d98a5da813da67eb189387b8ccfb73cf481275d8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 181 packages to latest compatible versions
[INFO] [stderr]       Adding base64 v0.21.7 (available: v0.22.1)
[INFO] [stderr]       Adding juniper v0.15.12 (available: v0.17.0)
[INFO] [stderr]       Adding rsa v0.6.1 (available: v0.9.8)
[INFO] [stderr]       Adding strum v0.25.0 (available: v0.27.2)
[INFO] [stderr]       Adding strum_macros v0.25.3 (available: v0.27.2)
[INFO] [stderr]       Adding ureq v2.12.1 (available: v3.1.2)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded juniper v0.15.12
[INFO] [stderr]   Downloaded futures-enum v0.1.17
[INFO] [stderr]   Downloaded juniper_codegen v0.15.9
[INFO] [stderr]   Downloaded derive_utils v0.11.2
[INFO] [stderr]   Downloaded bson v1.2.4
[INFO] [stderr]   Downloaded graphql-parser v0.3.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] b2faa4bad0fecaf391982caff8d36bb165d0a9db6b2b7377978311a350e27c53
[INFO] running `Command { std: "docker" "start" "-a" "b2faa4bad0fecaf391982caff8d36bb165d0a9db6b2b7377978311a350e27c53", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b2faa4bad0fecaf391982caff8d36bb165d0a9db6b2b7377978311a350e27c53", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b2faa4bad0fecaf391982caff8d36bb165d0a9db6b2b7377978311a350e27c53", kill_on_drop: false }`
[INFO] [stdout] b2faa4bad0fecaf391982caff8d36bb165d0a9db6b2b7377978311a350e27c53
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/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 -Copt-level=3" "-e" "RUSTDOCFLAGS=--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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] efb9e401bbbc34fd813c2ad4baab2cac3055e5375821321636a64afafef8cfe2
[INFO] running `Command { std: "docker" "start" "-a" "efb9e401bbbc34fd813c2ad4baab2cac3055e5375821321636a64afafef8cfe2", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.177
[INFO] [stderr]    Compiling stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling zeroize v1.8.2
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling memchr v2.7.6
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling crypto-bigint v0.3.2
[INFO] [stderr]    Compiling pem-rfc7468 v0.3.1
[INFO] [stderr]    Compiling const-oid v0.7.1
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]    Compiling futures-sink v0.3.31
[INFO] [stderr]    Compiling percent-encoding v2.3.2
[INFO] [stderr]    Compiling futures-core v0.3.31
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling rustls-pki-types v1.12.0
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling smartstring v1.0.1
[INFO] [stderr]    Compiling simd-adler32 v0.3.7
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]    Compiling num-bigint-dig v0.8.4
[INFO] [stderr]    Compiling rustls v0.23.32
[INFO] [stderr]    Compiling futures-task v0.3.31
[INFO] [stderr]    Compiling ascii v0.9.3
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling webpki-roots v1.0.3
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling getrandom v0.3.3
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]    Compiling linked-hash-map v0.5.6
[INFO] [stderr]    Compiling uuid v0.8.2
[INFO] [stderr]    Compiling combine v3.8.1
[INFO] [stderr]    Compiling futures-io v0.3.31
[INFO] [stderr]    Compiling webpki-roots v0.26.11
[INFO] [stderr]    Compiling der v0.5.1
[INFO] [stderr]    Compiling flate2 v1.1.4
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling strum v0.25.0
[INFO] [stderr]    Compiling num-iter v0.1.45
[INFO] [stderr]    Compiling spki v0.5.4
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling getrandom v0.1.16
[INFO] [stderr]    Compiling pkcs8 v0.8.0
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling pkcs1 v0.3.3
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling derive_utils v0.11.2
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling rsa v0.6.1
[INFO] [stderr]    Compiling rustls-webpki v0.103.7
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling juniper_codegen v0.15.9
[INFO] [stderr]    Compiling futures-enum v0.1.17
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.0
[INFO] [stderr]    Compiling zerovec-derive v0.11.1
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling strum_macros v0.25.3
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling graphql-parser v0.3.0
[INFO] [stderr]    Compiling yoke v0.8.0
[INFO] [stderr]    Compiling zerovec v0.11.4
[INFO] [stderr]    Compiling zerotrie v0.2.2
[INFO] [stderr]    Compiling tinystr v0.8.1
[INFO] [stderr]    Compiling potential_utf v0.1.3
[INFO] [stderr]    Compiling icu_locale_core v2.0.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling icu_collections v2.0.0
[INFO] [stderr]    Compiling chrono v0.4.42
[INFO] [stderr]    Compiling uuid v1.18.1
[INFO] [stderr]    Compiling icu_provider v2.0.0
[INFO] [stderr]    Compiling icu_normalizer v2.0.0
[INFO] [stderr]    Compiling icu_properties v2.0.1
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling bson v1.2.4
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.7
[INFO] [stderr]    Compiling ureq v2.12.1
[INFO] [stderr]    Compiling juniper v0.15.12
[INFO] [stderr]    Compiling alipay-global v0.1.4 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/errors.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `base64::Engine`
[INFO] [stdout]  --> src/models.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use base64::Engine;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GraphQLEnum` and `GraphQLObject`
[INFO] [stdout]  --> src/models.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use juniper::{GraphQLEnum, GraphQLObject};
[INFO] [stdout]   |               ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Hash`, `PaddingScheme`, and `PublicKey`
[INFO] [stdout]  --> src/models.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     Hash, PaddingScheme, PublicKey, RsaPrivateKey, RsaPublicKey,
[INFO] [stdout]   |     ^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/models.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 48 |         if (self.private_key_pem_file.is_some()) {
[INFO] [stdout]    |            ^                                   ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 48 -         if (self.private_key_pem_file.is_some()) {
[INFO] [stdout] 48 +         if self.private_key_pem_file.is_some() {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/models.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 63 |         if (self.alipay_public_key_pem_file.is_some()) {
[INFO] [stdout]    |            ^                                         ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 63 -         if (self.alipay_public_key_pem_file.is_some()) {
[INFO] [stdout] 63 +         if self.alipay_public_key_pem_file.is_some() {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `MINI_APP` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:297:5
[INFO] [stdout]     |
[INFO] [stdout] 297 |     MINI_APP,
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to upper camel case: `MiniApp`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ACCESS_DENIED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:554:5
[INFO] [stdout]     |
[INFO] [stdout] 554 |     ACCESS_DENIED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `AccessDenied`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `INVALID_API` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:555:5
[INFO] [stdout]     |
[INFO] [stdout] 555 |     INVALID_API,
[INFO] [stdout]     |     ^^^^^^^^^^^ help: convert the identifier to upper camel case: `InvalidApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `CURRENCY_NOT_SUPPORT` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:556:5
[INFO] [stdout]     |
[INFO] [stdout] 556 |     CURRENCY_NOT_SUPPORT,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CurrencyNotSupport`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `EXPIRED_CODE` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:557:5
[INFO] [stdout]     |
[INFO] [stdout] 557 |     EXPIRED_CODE,
[INFO] [stdout]     |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ExpiredCode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `FRAUD_REJECT` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:558:5
[INFO] [stdout]     |
[INFO] [stdout] 558 |     FRAUD_REJECT,
[INFO] [stdout]     |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `FraudReject`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `INVALID_ACCESS_TOKEN` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:559:5
[INFO] [stdout]     |
[INFO] [stdout] 559 |     INVALID_ACCESS_TOKEN,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `InvalidAccessToken`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `INVALID_CONTRACT` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:560:5
[INFO] [stdout]     |
[INFO] [stdout] 560 |     INVALID_CONTRACT,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `InvalidContract`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `INVALID_MERCHANT_STATUS` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:561:5
[INFO] [stdout]     |
[INFO] [stdout] 561 |     INVALID_MERCHANT_STATUS,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `InvalidMerchantStatus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `INVALID_PAYMENT_CODE` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:562:5
[INFO] [stdout]     |
[INFO] [stdout] 562 |     INVALID_PAYMENT_CODE,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `InvalidPaymentCode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `INVALID_PAYMENT_METHOD_META_DATA` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:563:5
[INFO] [stdout]     |
[INFO] [stdout] 563 |     INVALID_PAYMENT_METHOD_META_DATA,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `InvalidPaymentMethodMetaData`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `KEY_NOT_FOUND` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:564:5
[INFO] [stdout]     |
[INFO] [stdout] 564 |     KEY_NOT_FOUND,
[INFO] [stdout]     |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KeyNotFound`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `MERCHANT_KYB_NOT_QUALIFIED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:565:5
[INFO] [stdout]     |
[INFO] [stdout] 565 |     MERCHANT_KYB_NOT_QUALIFIED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `MerchantKybNotQualified`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `MERCHANT_NOT_REGISTERED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:566:5
[INFO] [stdout]     |
[INFO] [stdout] 566 |     MERCHANT_NOT_REGISTERED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `MerchantNotRegistered`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `NO_INTERFACE_DEF` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:567:5
[INFO] [stdout]     |
[INFO] [stdout] 567 |     NO_INTERFACE_DEF,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `NoInterfaceDef`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `NO_PAY_OPTIONS` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:568:5
[INFO] [stdout]     |
[INFO] [stdout] 568 |     NO_PAY_OPTIONS,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `NoPayOptions`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ORDER_IS_CANCELED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:569:5
[INFO] [stdout]     |
[INFO] [stdout] 569 |     ORDER_IS_CANCELED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `OrderIsCanceled`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ORDER_IS_CLOSED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:570:5
[INFO] [stdout]     |
[INFO] [stdout] 570 |     ORDER_IS_CLOSED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `OrderIsClosed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PARAM_ILLEGAL` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:571:5
[INFO] [stdout]     |
[INFO] [stdout] 571 |     PARAM_ILLEGAL,
[INFO] [stdout]     |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ParamIllegal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PAYMENT_AMOUNT_EXCEED_LIMIT` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:572:5
[INFO] [stdout]     |
[INFO] [stdout] 572 |     PAYMENT_AMOUNT_EXCEED_LIMIT,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PaymentAmountExceedLimit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PAYMENT_COUNT_EXCEED_LIMIT` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:573:5
[INFO] [stdout]     |
[INFO] [stdout] 573 |     PAYMENT_COUNT_EXCEED_LIMIT,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PaymentCountExceedLimit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PAYMENT_NOT_QUALIFIED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:574:5
[INFO] [stdout]     |
[INFO] [stdout] 574 |     PAYMENT_NOT_QUALIFIED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PaymentNotQualified`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PROCESS_FAIL` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:575:5
[INFO] [stdout]     |
[INFO] [stdout] 575 |     PROCESS_FAIL,
[INFO] [stdout]     |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ProcessFail`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `REPEAT_REQ_INCONSISTENT` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:576:5
[INFO] [stdout]     |
[INFO] [stdout] 576 |     REPEAT_REQ_INCONSISTENT,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RepeatReqInconsistent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `RISK_REJECT` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:577:5
[INFO] [stdout]     |
[INFO] [stdout] 577 |     RISK_REJECT,
[INFO] [stdout]     |     ^^^^^^^^^^^ help: convert the identifier to upper camel case: `RiskReject`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SETTLE_CONTRACT_NOT_MATCH` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:578:5
[INFO] [stdout]     |
[INFO] [stdout] 578 |     SETTLE_CONTRACT_NOT_MATCH,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SettleContractNotMatch`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SYSTEM_ERROR` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:579:5
[INFO] [stdout]     |
[INFO] [stdout] 579 |     SYSTEM_ERROR,
[INFO] [stdout]     |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SystemError`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `USER_AMOUNT_EXCEED_LIMIT` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:580:5
[INFO] [stdout]     |
[INFO] [stdout] 580 |     USER_AMOUNT_EXCEED_LIMIT,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `UserAmountExceedLimit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `USER_BALANCE_NOT_ENOUGH` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:581:5
[INFO] [stdout]     |
[INFO] [stdout] 581 |     USER_BALANCE_NOT_ENOUGH,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `UserBalanceNotEnough`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `USER_KYC_NOT_QUALIFIED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:582:5
[INFO] [stdout]     |
[INFO] [stdout] 582 |     USER_KYC_NOT_QUALIFIED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `UserKycNotQualified`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PAYMENT_IN_PROCESS` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:583:5
[INFO] [stdout]     |
[INFO] [stdout] 583 |     PAYMENT_IN_PROCESS,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PaymentInProcess`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `REQUEST_TRAFFIC_EXCEED_LIMIT` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:584:5
[INFO] [stdout]     |
[INFO] [stdout] 584 |     REQUEST_TRAFFIC_EXCEED_LIMIT,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RequestTrafficExceedLimit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `UNKNOWN_EXCEPTION` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:585:5
[INFO] [stdout]     |
[INFO] [stdout] 585 |     UNKNOWN_EXCEPTION,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `UnknownException`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `USER_NOT_EXIST` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:586:5
[INFO] [stdout]     |
[INFO] [stdout] 586 |     USER_NOT_EXIST,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `UserNotExist`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ORDER_NOT_EXIST` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:587:5
[INFO] [stdout]     |
[INFO] [stdout] 587 |     ORDER_NOT_EXIST,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `OrderNotExist`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ORDER_STATUS_INVALID` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:588:5
[INFO] [stdout]     |
[INFO] [stdout] 588 |     ORDER_STATUS_INVALID,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `OrderStatusInvalid`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `USER_PAYMENT_VERIFICATION_FAILED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:589:5
[INFO] [stdout]     |
[INFO] [stdout] 589 |     USER_PAYMENT_VERIFICATION_FAILED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `UserPaymentVerificationFailed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `USER_STATUS_ABNORMAL` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:590:5
[INFO] [stdout]     |
[INFO] [stdout] 590 |     USER_STATUS_ABNORMAL,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `UserStatusAbnormal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `VERIFY_TIMES_EXCEED_LIMIT` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:591:5
[INFO] [stdout]     |
[INFO] [stdout] 591 |     VERIFY_TIMES_EXCEED_LIMIT,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `VerifyTimesExceedLimit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `VERIFY_UNMATCHED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:592:5
[INFO] [stdout]     |
[INFO] [stdout] 592 |     VERIFY_UNMATCHED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `VerifyUnmatched`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `AUTHENTICATION_REQUIRED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:593:5
[INFO] [stdout]     |
[INFO] [stdout] 593 |     AUTHENTICATION_REQUIRED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `AuthenticationRequired`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SELECTED_CARD_BRAND_NOT_AVAILABLE` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:594:5
[INFO] [stdout]     |
[INFO] [stdout] 594 |     SELECTED_CARD_BRAND_NOT_AVAILABLE,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SelectedCardBrandNotAvailable`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PAYMENT_PROHIBITED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:595:5
[INFO] [stdout]     |
[INFO] [stdout] 595 |     PAYMENT_PROHIBITED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PaymentProhibited`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `REFUND_AMOUNT_EXCEED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:596:5
[INFO] [stdout]     |
[INFO] [stdout] 596 |     REFUND_AMOUNT_EXCEED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RefundAmountExceed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `REFUND_WINDOW_EXCEED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:597:5
[INFO] [stdout]     |
[INFO] [stdout] 597 |     REFUND_WINDOW_EXCEED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RefundWindowExceed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `REFUND_IN_PROCESS` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:598:5
[INFO] [stdout]     |
[INFO] [stdout] 598 |     REFUND_IN_PROCESS,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RefundInProcess`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `REFUND_NOT_SUPPORTED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:599:5
[INFO] [stdout]     |
[INFO] [stdout] 599 |     REFUND_NOT_SUPPORTED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RefundNotSupported`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/pay.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AlipayAction` and `Signable`
[INFO] [stdout]  --> src/pay.rs:4:85
[INFO] [stdout]   |
[INFO] [stdout] 4 | use super::models::{AlipayClientSecret, CashierPaymentSimple, RequestEnv, Response, Signable, AlipayAction};
[INFO] [stdout]   |                                                                                     ^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rsa::Hash`
[INFO] [stdout]  --> src/pay.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use rsa::Hash;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `borrow::BorrowMut`
[INFO] [stdout]  --> src/sign.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     borrow::BorrowMut,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RsaPrivateKey`, `RsaPublicKey`, `pkcs1::DecodeRsaPrivateKey`, and `pkcs8::DecodePublicKey`
[INFO] [stdout]  --> src/sign.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pkcs1::DecodeRsaPrivateKey, pkcs8::DecodePublicKey, Hash, PaddingScheme, PublicKey,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 8 |     RsaPrivateKey, RsaPublicKey,
[INFO] [stdout]   |     ^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DateTime`
[INFO] [stdout]  --> src/webhook.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use chrono::{DateTime, Utc};
[INFO] [stdout]   |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CashierPaymentInquiry`, `NotifyPayment`, and `RequestEnv`
[INFO] [stdout]  --> src/webhook.rs:7:25
[INFO] [stdout]   |
[INFO] [stdout] 7 |     AlipayClientSecret, CashierPaymentInquiry, RequestEnv,
[INFO] [stdout]   |                         ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 8 |     NotifyPayment, WebhookData, WebhookResponse, WebhookResponseInput,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::response::parse_response`
[INFO] [stdout]   --> src/webhook.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use super::response::parse_response;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::decode`: Use Engine::decode
[INFO] [stdout]   --> src/sign.rs:36:43
[INFO] [stdout]    |
[INFO] [stdout] 36 |     if let Ok(decode_signature) = base64::decode(signature) {
[INFO] [stdout]    |                                           ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `sha2::digest::generic_array::GenericArray::<T, N>::as_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]   --> src/sign.rs:25:16
[INFO] [stdout]    |
[INFO] [stdout] 25 |         digest.as_slice(),
[INFO] [stdout]    |                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `verify`
[INFO] [stdout]   --> src/inquiry.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 |     let verify = verify(
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_verify`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/models.rs:354:13
[INFO] [stdout]     |
[INFO] [stdout] 354 |     fn from(value: &CashierPaymentSimple) -> Self {
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `verify`
[INFO] [stdout]   --> src/pay.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |     let verify = verify(
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_verify`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `verify`
[INFO] [stdout]   --> src/refund.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 42 |     let verify = verify(
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_verify`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `verify`
[INFO] [stdout]   --> src/webhook.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |     let verify = verify(
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_verify`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4m 04s
[INFO] running `Command { std: "docker" "inspect" "efb9e401bbbc34fd813c2ad4baab2cac3055e5375821321636a64afafef8cfe2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "efb9e401bbbc34fd813c2ad4baab2cac3055e5375821321636a64afafef8cfe2", kill_on_drop: false }`
[INFO] [stdout] efb9e401bbbc34fd813c2ad4baab2cac3055e5375821321636a64afafef8cfe2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/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 -Copt-level=3" "-e" "RUSTDOCFLAGS=--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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] cd66693487b5ed23cf3e0c22545badb22a6f681e92b84a403d3559bd29b70598
[INFO] running `Command { std: "docker" "start" "-a" "cd66693487b5ed23cf3e0c22545badb22a6f681e92b84a403d3559bd29b70598", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/errors.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `base64::Engine`
[INFO] [stdout]  --> src/models.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use base64::Engine;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GraphQLEnum` and `GraphQLObject`
[INFO] [stdout]  --> src/models.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use juniper::{GraphQLEnum, GraphQLObject};
[INFO] [stdout]   |               ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Hash`, `PaddingScheme`, and `PublicKey`
[INFO] [stdout]  --> src/models.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     Hash, PaddingScheme, PublicKey, RsaPrivateKey, RsaPublicKey,
[INFO] [stdout]   |     ^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/models.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 48 |         if (self.private_key_pem_file.is_some()) {
[INFO] [stdout]    |            ^                                   ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 48 -         if (self.private_key_pem_file.is_some()) {
[INFO] [stdout] 48 +         if self.private_key_pem_file.is_some() {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/models.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 63 |         if (self.alipay_public_key_pem_file.is_some()) {
[INFO] [stdout]    |            ^                                         ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 63 -         if (self.alipay_public_key_pem_file.is_some()) {
[INFO] [stdout] 63 +         if self.alipay_public_key_pem_file.is_some() {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `MINI_APP` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:297:5
[INFO] [stdout]     |
[INFO] [stdout] 297 |     MINI_APP,
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to upper camel case: `MiniApp`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ACCESS_DENIED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:554:5
[INFO] [stdout]     |
[INFO] [stdout] 554 |     ACCESS_DENIED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `AccessDenied`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `INVALID_API` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:555:5
[INFO] [stdout]     |
[INFO] [stdout] 555 |     INVALID_API,
[INFO] [stdout]     |     ^^^^^^^^^^^ help: convert the identifier to upper camel case: `InvalidApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `CURRENCY_NOT_SUPPORT` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:556:5
[INFO] [stdout]     |
[INFO] [stdout] 556 |     CURRENCY_NOT_SUPPORT,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CurrencyNotSupport`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `EXPIRED_CODE` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:557:5
[INFO] [stdout]     |
[INFO] [stdout] 557 |     EXPIRED_CODE,
[INFO] [stdout]     |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ExpiredCode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `FRAUD_REJECT` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:558:5
[INFO] [stdout]     |
[INFO] [stdout] 558 |     FRAUD_REJECT,
[INFO] [stdout]     |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `FraudReject`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `INVALID_ACCESS_TOKEN` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:559:5
[INFO] [stdout]     |
[INFO] [stdout] 559 |     INVALID_ACCESS_TOKEN,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `InvalidAccessToken`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `INVALID_CONTRACT` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:560:5
[INFO] [stdout]     |
[INFO] [stdout] 560 |     INVALID_CONTRACT,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `InvalidContract`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `INVALID_MERCHANT_STATUS` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:561:5
[INFO] [stdout]     |
[INFO] [stdout] 561 |     INVALID_MERCHANT_STATUS,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `InvalidMerchantStatus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `INVALID_PAYMENT_CODE` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:562:5
[INFO] [stdout]     |
[INFO] [stdout] 562 |     INVALID_PAYMENT_CODE,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `InvalidPaymentCode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `INVALID_PAYMENT_METHOD_META_DATA` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:563:5
[INFO] [stdout]     |
[INFO] [stdout] 563 |     INVALID_PAYMENT_METHOD_META_DATA,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `InvalidPaymentMethodMetaData`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `KEY_NOT_FOUND` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:564:5
[INFO] [stdout]     |
[INFO] [stdout] 564 |     KEY_NOT_FOUND,
[INFO] [stdout]     |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KeyNotFound`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `MERCHANT_KYB_NOT_QUALIFIED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:565:5
[INFO] [stdout]     |
[INFO] [stdout] 565 |     MERCHANT_KYB_NOT_QUALIFIED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `MerchantKybNotQualified`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `MERCHANT_NOT_REGISTERED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:566:5
[INFO] [stdout]     |
[INFO] [stdout] 566 |     MERCHANT_NOT_REGISTERED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `MerchantNotRegistered`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `NO_INTERFACE_DEF` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:567:5
[INFO] [stdout]     |
[INFO] [stdout] 567 |     NO_INTERFACE_DEF,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `NoInterfaceDef`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `NO_PAY_OPTIONS` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:568:5
[INFO] [stdout]     |
[INFO] [stdout] 568 |     NO_PAY_OPTIONS,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `NoPayOptions`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ORDER_IS_CANCELED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:569:5
[INFO] [stdout]     |
[INFO] [stdout] 569 |     ORDER_IS_CANCELED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `OrderIsCanceled`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ORDER_IS_CLOSED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:570:5
[INFO] [stdout]     |
[INFO] [stdout] 570 |     ORDER_IS_CLOSED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `OrderIsClosed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PARAM_ILLEGAL` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:571:5
[INFO] [stdout]     |
[INFO] [stdout] 571 |     PARAM_ILLEGAL,
[INFO] [stdout]     |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ParamIllegal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PAYMENT_AMOUNT_EXCEED_LIMIT` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:572:5
[INFO] [stdout]     |
[INFO] [stdout] 572 |     PAYMENT_AMOUNT_EXCEED_LIMIT,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PaymentAmountExceedLimit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PAYMENT_COUNT_EXCEED_LIMIT` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:573:5
[INFO] [stdout]     |
[INFO] [stdout] 573 |     PAYMENT_COUNT_EXCEED_LIMIT,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PaymentCountExceedLimit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PAYMENT_NOT_QUALIFIED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:574:5
[INFO] [stdout]     |
[INFO] [stdout] 574 |     PAYMENT_NOT_QUALIFIED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PaymentNotQualified`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PROCESS_FAIL` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:575:5
[INFO] [stdout]     |
[INFO] [stdout] 575 |     PROCESS_FAIL,
[INFO] [stdout]     |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ProcessFail`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `REPEAT_REQ_INCONSISTENT` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:576:5
[INFO] [stdout]     |
[INFO] [stdout] 576 |     REPEAT_REQ_INCONSISTENT,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RepeatReqInconsistent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `RISK_REJECT` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:577:5
[INFO] [stdout]     |
[INFO] [stdout] 577 |     RISK_REJECT,
[INFO] [stdout]     |     ^^^^^^^^^^^ help: convert the identifier to upper camel case: `RiskReject`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SETTLE_CONTRACT_NOT_MATCH` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:578:5
[INFO] [stdout]     |
[INFO] [stdout] 578 |     SETTLE_CONTRACT_NOT_MATCH,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SettleContractNotMatch`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SYSTEM_ERROR` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:579:5
[INFO] [stdout]     |
[INFO] [stdout] 579 |     SYSTEM_ERROR,
[INFO] [stdout]     |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SystemError`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `USER_AMOUNT_EXCEED_LIMIT` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:580:5
[INFO] [stdout]     |
[INFO] [stdout] 580 |     USER_AMOUNT_EXCEED_LIMIT,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `UserAmountExceedLimit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `USER_BALANCE_NOT_ENOUGH` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:581:5
[INFO] [stdout]     |
[INFO] [stdout] 581 |     USER_BALANCE_NOT_ENOUGH,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `UserBalanceNotEnough`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `USER_KYC_NOT_QUALIFIED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:582:5
[INFO] [stdout]     |
[INFO] [stdout] 582 |     USER_KYC_NOT_QUALIFIED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `UserKycNotQualified`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PAYMENT_IN_PROCESS` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:583:5
[INFO] [stdout]     |
[INFO] [stdout] 583 |     PAYMENT_IN_PROCESS,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PaymentInProcess`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `REQUEST_TRAFFIC_EXCEED_LIMIT` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:584:5
[INFO] [stdout]     |
[INFO] [stdout] 584 |     REQUEST_TRAFFIC_EXCEED_LIMIT,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RequestTrafficExceedLimit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `UNKNOWN_EXCEPTION` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:585:5
[INFO] [stdout]     |
[INFO] [stdout] 585 |     UNKNOWN_EXCEPTION,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `UnknownException`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `USER_NOT_EXIST` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:586:5
[INFO] [stdout]     |
[INFO] [stdout] 586 |     USER_NOT_EXIST,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `UserNotExist`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ORDER_NOT_EXIST` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:587:5
[INFO] [stdout]     |
[INFO] [stdout] 587 |     ORDER_NOT_EXIST,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `OrderNotExist`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling alipay-global v0.1.4 (/opt/rustwide/workdir)
[INFO] [stdout] warning: variant `ORDER_STATUS_INVALID` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:588:5
[INFO] [stdout]     |
[INFO] [stdout] 588 |     ORDER_STATUS_INVALID,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `OrderStatusInvalid`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `USER_PAYMENT_VERIFICATION_FAILED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:589:5
[INFO] [stdout]     |
[INFO] [stdout] 589 |     USER_PAYMENT_VERIFICATION_FAILED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `UserPaymentVerificationFailed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `USER_STATUS_ABNORMAL` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:590:5
[INFO] [stdout]     |
[INFO] [stdout] 590 |     USER_STATUS_ABNORMAL,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `UserStatusAbnormal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `VERIFY_TIMES_EXCEED_LIMIT` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:591:5
[INFO] [stdout]     |
[INFO] [stdout] 591 |     VERIFY_TIMES_EXCEED_LIMIT,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `VerifyTimesExceedLimit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `VERIFY_UNMATCHED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:592:5
[INFO] [stdout]     |
[INFO] [stdout] 592 |     VERIFY_UNMATCHED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `VerifyUnmatched`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `AUTHENTICATION_REQUIRED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:593:5
[INFO] [stdout]     |
[INFO] [stdout] 593 |     AUTHENTICATION_REQUIRED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `AuthenticationRequired`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SELECTED_CARD_BRAND_NOT_AVAILABLE` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:594:5
[INFO] [stdout]     |
[INFO] [stdout] 594 |     SELECTED_CARD_BRAND_NOT_AVAILABLE,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SelectedCardBrandNotAvailable`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PAYMENT_PROHIBITED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:595:5
[INFO] [stdout]     |
[INFO] [stdout] 595 |     PAYMENT_PROHIBITED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PaymentProhibited`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `REFUND_AMOUNT_EXCEED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:596:5
[INFO] [stdout]     |
[INFO] [stdout] 596 |     REFUND_AMOUNT_EXCEED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RefundAmountExceed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `REFUND_WINDOW_EXCEED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:597:5
[INFO] [stdout]     |
[INFO] [stdout] 597 |     REFUND_WINDOW_EXCEED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RefundWindowExceed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `REFUND_IN_PROCESS` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:598:5
[INFO] [stdout]     |
[INFO] [stdout] 598 |     REFUND_IN_PROCESS,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RefundInProcess`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `REFUND_NOT_SUPPORTED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:599:5
[INFO] [stdout]     |
[INFO] [stdout] 599 |     REFUND_NOT_SUPPORTED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RefundNotSupported`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/pay.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AlipayAction` and `Signable`
[INFO] [stdout]  --> src/pay.rs:4:85
[INFO] [stdout]   |
[INFO] [stdout] 4 | use super::models::{AlipayClientSecret, CashierPaymentSimple, RequestEnv, Response, Signable, AlipayAction};
[INFO] [stdout]   |                                                                                     ^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rsa::Hash`
[INFO] [stdout]  --> src/pay.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use rsa::Hash;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `borrow::BorrowMut`
[INFO] [stdout]  --> src/sign.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     borrow::BorrowMut,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RsaPrivateKey`, `RsaPublicKey`, `pkcs1::DecodeRsaPrivateKey`, and `pkcs8::DecodePublicKey`
[INFO] [stdout]  --> src/sign.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pkcs1::DecodeRsaPrivateKey, pkcs8::DecodePublicKey, Hash, PaddingScheme, PublicKey,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 8 |     RsaPrivateKey, RsaPublicKey,
[INFO] [stdout]   |     ^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DateTime`
[INFO] [stdout]  --> src/webhook.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use chrono::{DateTime, Utc};
[INFO] [stdout]   |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CashierPaymentInquiry`, `NotifyPayment`, and `RequestEnv`
[INFO] [stdout]  --> src/webhook.rs:7:25
[INFO] [stdout]   |
[INFO] [stdout] 7 |     AlipayClientSecret, CashierPaymentInquiry, RequestEnv,
[INFO] [stdout]   |                         ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 8 |     NotifyPayment, WebhookData, WebhookResponse, WebhookResponseInput,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::response::parse_response`
[INFO] [stdout]   --> src/webhook.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use super::response::parse_response;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::decode`: Use Engine::decode
[INFO] [stdout]   --> src/sign.rs:36:43
[INFO] [stdout]    |
[INFO] [stdout] 36 |     if let Ok(decode_signature) = base64::decode(signature) {
[INFO] [stdout]    |                                           ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `sha2::digest::generic_array::GenericArray::<T, N>::as_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]   --> src/sign.rs:25:16
[INFO] [stdout]    |
[INFO] [stdout] 25 |         digest.as_slice(),
[INFO] [stdout]    |                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `verify`
[INFO] [stdout]   --> src/inquiry.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 |     let verify = verify(
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_verify`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/models.rs:354:13
[INFO] [stdout]     |
[INFO] [stdout] 354 |     fn from(value: &CashierPaymentSimple) -> Self {
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `verify`
[INFO] [stdout]   --> src/pay.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |     let verify = verify(
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_verify`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `verify`
[INFO] [stdout]   --> src/refund.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 42 |     let verify = verify(
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_verify`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `verify`
[INFO] [stdout]   --> src/webhook.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |     let verify = verify(
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_verify`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/errors.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `base64::Engine`
[INFO] [stdout]  --> src/models.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use base64::Engine;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GraphQLEnum` and `GraphQLObject`
[INFO] [stdout]  --> src/models.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use juniper::{GraphQLEnum, GraphQLObject};
[INFO] [stdout]   |               ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Hash`, `PaddingScheme`, and `PublicKey`
[INFO] [stdout]  --> src/models.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     Hash, PaddingScheme, PublicKey, RsaPrivateKey, RsaPublicKey,
[INFO] [stdout]   |     ^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/models.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 48 |         if (self.private_key_pem_file.is_some()) {
[INFO] [stdout]    |            ^                                   ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 48 -         if (self.private_key_pem_file.is_some()) {
[INFO] [stdout] 48 +         if self.private_key_pem_file.is_some() {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/models.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 63 |         if (self.alipay_public_key_pem_file.is_some()) {
[INFO] [stdout]    |            ^                                         ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 63 -         if (self.alipay_public_key_pem_file.is_some()) {
[INFO] [stdout] 63 +         if self.alipay_public_key_pem_file.is_some() {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `MINI_APP` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:297:5
[INFO] [stdout]     |
[INFO] [stdout] 297 |     MINI_APP,
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to upper camel case: `MiniApp`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ACCESS_DENIED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:554:5
[INFO] [stdout]     |
[INFO] [stdout] 554 |     ACCESS_DENIED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `AccessDenied`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `INVALID_API` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:555:5
[INFO] [stdout]     |
[INFO] [stdout] 555 |     INVALID_API,
[INFO] [stdout]     |     ^^^^^^^^^^^ help: convert the identifier to upper camel case: `InvalidApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `CURRENCY_NOT_SUPPORT` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:556:5
[INFO] [stdout]     |
[INFO] [stdout] 556 |     CURRENCY_NOT_SUPPORT,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CurrencyNotSupport`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `EXPIRED_CODE` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:557:5
[INFO] [stdout]     |
[INFO] [stdout] 557 |     EXPIRED_CODE,
[INFO] [stdout]     |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ExpiredCode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `FRAUD_REJECT` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:558:5
[INFO] [stdout]     |
[INFO] [stdout] 558 |     FRAUD_REJECT,
[INFO] [stdout]     |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `FraudReject`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `INVALID_ACCESS_TOKEN` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:559:5
[INFO] [stdout]     |
[INFO] [stdout] 559 |     INVALID_ACCESS_TOKEN,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `InvalidAccessToken`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `INVALID_CONTRACT` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:560:5
[INFO] [stdout]     |
[INFO] [stdout] 560 |     INVALID_CONTRACT,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `InvalidContract`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `INVALID_MERCHANT_STATUS` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:561:5
[INFO] [stdout]     |
[INFO] [stdout] 561 |     INVALID_MERCHANT_STATUS,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `InvalidMerchantStatus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `INVALID_PAYMENT_CODE` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:562:5
[INFO] [stdout]     |
[INFO] [stdout] 562 |     INVALID_PAYMENT_CODE,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `InvalidPaymentCode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `INVALID_PAYMENT_METHOD_META_DATA` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:563:5
[INFO] [stdout]     |
[INFO] [stdout] 563 |     INVALID_PAYMENT_METHOD_META_DATA,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `InvalidPaymentMethodMetaData`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `KEY_NOT_FOUND` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:564:5
[INFO] [stdout]     |
[INFO] [stdout] 564 |     KEY_NOT_FOUND,
[INFO] [stdout]     |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KeyNotFound`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `MERCHANT_KYB_NOT_QUALIFIED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:565:5
[INFO] [stdout]     |
[INFO] [stdout] 565 |     MERCHANT_KYB_NOT_QUALIFIED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `MerchantKybNotQualified`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `MERCHANT_NOT_REGISTERED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:566:5
[INFO] [stdout]     |
[INFO] [stdout] 566 |     MERCHANT_NOT_REGISTERED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `MerchantNotRegistered`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `NO_INTERFACE_DEF` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:567:5
[INFO] [stdout]     |
[INFO] [stdout] 567 |     NO_INTERFACE_DEF,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `NoInterfaceDef`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `NO_PAY_OPTIONS` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:568:5
[INFO] [stdout]     |
[INFO] [stdout] 568 |     NO_PAY_OPTIONS,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `NoPayOptions`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ORDER_IS_CANCELED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:569:5
[INFO] [stdout]     |
[INFO] [stdout] 569 |     ORDER_IS_CANCELED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `OrderIsCanceled`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ORDER_IS_CLOSED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:570:5
[INFO] [stdout]     |
[INFO] [stdout] 570 |     ORDER_IS_CLOSED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `OrderIsClosed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PARAM_ILLEGAL` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:571:5
[INFO] [stdout]     |
[INFO] [stdout] 571 |     PARAM_ILLEGAL,
[INFO] [stdout]     |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ParamIllegal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PAYMENT_AMOUNT_EXCEED_LIMIT` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:572:5
[INFO] [stdout]     |
[INFO] [stdout] 572 |     PAYMENT_AMOUNT_EXCEED_LIMIT,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PaymentAmountExceedLimit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PAYMENT_COUNT_EXCEED_LIMIT` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:573:5
[INFO] [stdout]     |
[INFO] [stdout] 573 |     PAYMENT_COUNT_EXCEED_LIMIT,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PaymentCountExceedLimit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PAYMENT_NOT_QUALIFIED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:574:5
[INFO] [stdout]     |
[INFO] [stdout] 574 |     PAYMENT_NOT_QUALIFIED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PaymentNotQualified`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PROCESS_FAIL` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:575:5
[INFO] [stdout]     |
[INFO] [stdout] 575 |     PROCESS_FAIL,
[INFO] [stdout]     |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ProcessFail`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `REPEAT_REQ_INCONSISTENT` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:576:5
[INFO] [stdout]     |
[INFO] [stdout] 576 |     REPEAT_REQ_INCONSISTENT,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RepeatReqInconsistent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `RISK_REJECT` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:577:5
[INFO] [stdout]     |
[INFO] [stdout] 577 |     RISK_REJECT,
[INFO] [stdout]     |     ^^^^^^^^^^^ help: convert the identifier to upper camel case: `RiskReject`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SETTLE_CONTRACT_NOT_MATCH` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:578:5
[INFO] [stdout]     |
[INFO] [stdout] 578 |     SETTLE_CONTRACT_NOT_MATCH,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SettleContractNotMatch`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SYSTEM_ERROR` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:579:5
[INFO] [stdout]     |
[INFO] [stdout] 579 |     SYSTEM_ERROR,
[INFO] [stdout]     |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SystemError`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `USER_AMOUNT_EXCEED_LIMIT` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:580:5
[INFO] [stdout]     |
[INFO] [stdout] 580 |     USER_AMOUNT_EXCEED_LIMIT,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `UserAmountExceedLimit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `USER_BALANCE_NOT_ENOUGH` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:581:5
[INFO] [stdout]     |
[INFO] [stdout] 581 |     USER_BALANCE_NOT_ENOUGH,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `UserBalanceNotEnough`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `USER_KYC_NOT_QUALIFIED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:582:5
[INFO] [stdout]     |
[INFO] [stdout] 582 |     USER_KYC_NOT_QUALIFIED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `UserKycNotQualified`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PAYMENT_IN_PROCESS` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:583:5
[INFO] [stdout]     |
[INFO] [stdout] 583 |     PAYMENT_IN_PROCESS,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PaymentInProcess`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `REQUEST_TRAFFIC_EXCEED_LIMIT` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:584:5
[INFO] [stdout]     |
[INFO] [stdout] 584 |     REQUEST_TRAFFIC_EXCEED_LIMIT,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RequestTrafficExceedLimit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `UNKNOWN_EXCEPTION` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:585:5
[INFO] [stdout]     |
[INFO] [stdout] 585 |     UNKNOWN_EXCEPTION,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `UnknownException`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `USER_NOT_EXIST` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:586:5
[INFO] [stdout]     |
[INFO] [stdout] 586 |     USER_NOT_EXIST,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `UserNotExist`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ORDER_NOT_EXIST` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:587:5
[INFO] [stdout]     |
[INFO] [stdout] 587 |     ORDER_NOT_EXIST,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `OrderNotExist`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ORDER_STATUS_INVALID` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:588:5
[INFO] [stdout]     |
[INFO] [stdout] 588 |     ORDER_STATUS_INVALID,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `OrderStatusInvalid`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `USER_PAYMENT_VERIFICATION_FAILED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:589:5
[INFO] [stdout]     |
[INFO] [stdout] 589 |     USER_PAYMENT_VERIFICATION_FAILED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `UserPaymentVerificationFailed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `USER_STATUS_ABNORMAL` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:590:5
[INFO] [stdout]     |
[INFO] [stdout] 590 |     USER_STATUS_ABNORMAL,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `UserStatusAbnormal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `VERIFY_TIMES_EXCEED_LIMIT` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:591:5
[INFO] [stdout]     |
[INFO] [stdout] 591 |     VERIFY_TIMES_EXCEED_LIMIT,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `VerifyTimesExceedLimit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `VERIFY_UNMATCHED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:592:5
[INFO] [stdout]     |
[INFO] [stdout] 592 |     VERIFY_UNMATCHED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `VerifyUnmatched`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `AUTHENTICATION_REQUIRED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:593:5
[INFO] [stdout]     |
[INFO] [stdout] 593 |     AUTHENTICATION_REQUIRED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `AuthenticationRequired`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SELECTED_CARD_BRAND_NOT_AVAILABLE` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:594:5
[INFO] [stdout]     |
[INFO] [stdout] 594 |     SELECTED_CARD_BRAND_NOT_AVAILABLE,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SelectedCardBrandNotAvailable`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PAYMENT_PROHIBITED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:595:5
[INFO] [stdout]     |
[INFO] [stdout] 595 |     PAYMENT_PROHIBITED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PaymentProhibited`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `REFUND_AMOUNT_EXCEED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:596:5
[INFO] [stdout]     |
[INFO] [stdout] 596 |     REFUND_AMOUNT_EXCEED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RefundAmountExceed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `REFUND_WINDOW_EXCEED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:597:5
[INFO] [stdout]     |
[INFO] [stdout] 597 |     REFUND_WINDOW_EXCEED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RefundWindowExceed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `REFUND_IN_PROCESS` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:598:5
[INFO] [stdout]     |
[INFO] [stdout] 598 |     REFUND_IN_PROCESS,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RefundInProcess`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `REFUND_NOT_SUPPORTED` should have an upper camel case name
[INFO] [stdout]    --> src/models.rs:599:5
[INFO] [stdout]     |
[INFO] [stdout] 599 |     REFUND_NOT_SUPPORTED,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RefundNotSupported`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/pay.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Signable`
[INFO] [stdout]  --> src/pay.rs:4:85
[INFO] [stdout]   |
[INFO] [stdout] 4 | use super::models::{AlipayClientSecret, CashierPaymentSimple, RequestEnv, Response, Signable, AlipayAction};
[INFO] [stdout]   |                                                                                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rsa::Hash`
[INFO] [stdout]  --> src/pay.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use rsa::Hash;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `borrow::BorrowMut`
[INFO] [stdout]  --> src/sign.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     borrow::BorrowMut,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RsaPrivateKey`, `RsaPublicKey`, `pkcs1::DecodeRsaPrivateKey`, and `pkcs8::DecodePublicKey`
[INFO] [stdout]  --> src/sign.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pkcs1::DecodeRsaPrivateKey, pkcs8::DecodePublicKey, Hash, PaddingScheme, PublicKey,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 8 |     RsaPrivateKey, RsaPublicKey,
[INFO] [stdout]   |     ^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DateTime`
[INFO] [stdout]  --> src/webhook.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use chrono::{DateTime, Utc};
[INFO] [stdout]   |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CashierPaymentInquiry`, `NotifyPayment`, and `RequestEnv`
[INFO] [stdout]  --> src/webhook.rs:7:25
[INFO] [stdout]   |
[INFO] [stdout] 7 |     AlipayClientSecret, CashierPaymentInquiry, RequestEnv,
[INFO] [stdout]   |                         ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 8 |     NotifyPayment, WebhookData, WebhookResponse, WebhookResponseInput,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::response::parse_response`
[INFO] [stdout]   --> src/webhook.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use super::response::parse_response;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::decode`: Use Engine::decode
[INFO] [stdout]   --> src/sign.rs:36:43
[INFO] [stdout]    |
[INFO] [stdout] 36 |     if let Ok(decode_signature) = base64::decode(signature) {
[INFO] [stdout]    |                                           ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `sha2::digest::generic_array::GenericArray::<T, N>::as_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]   --> src/sign.rs:25:16
[INFO] [stdout]    |
[INFO] [stdout] 25 |         digest.as_slice(),
[INFO] [stdout]    |                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `verify`
[INFO] [stdout]   --> src/inquiry.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 |     let verify = verify(
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_verify`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/models.rs:354:13
[INFO] [stdout]     |
[INFO] [stdout] 354 |     fn from(value: &CashierPaymentSimple) -> Self {
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `verify`
[INFO] [stdout]   --> src/pay.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |     let verify = verify(
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_verify`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `verify`
[INFO] [stdout]   --> src/refund.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 42 |     let verify = verify(
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_verify`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `verify`
[INFO] [stdout]   --> src/webhook.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |     let verify = verify(
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_verify`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 6.59s
[INFO] running `Command { std: "docker" "inspect" "cd66693487b5ed23cf3e0c22545badb22a6f681e92b84a403d3559bd29b70598", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cd66693487b5ed23cf3e0c22545badb22a6f681e92b84a403d3559bd29b70598", kill_on_drop: false }`
[INFO] [stdout] cd66693487b5ed23cf3e0c22545badb22a6f681e92b84a403d3559bd29b70598
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/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 -Copt-level=3" "-e" "RUSTDOCFLAGS=--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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] f494e09a13da967114738abec4dc042fcac84a73d13f671b0fbae421246d03db
[INFO] running `Command { std: "docker" "start" "-a" "f494e09a13da967114738abec4dc042fcac84a73d13f671b0fbae421246d03db", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `std::fmt::format`
[INFO] [stderr]  --> src/errors.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::fmt::format;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `base64::Engine`
[INFO] [stderr]  --> src/models.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use base64::Engine;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `GraphQLEnum` and `GraphQLObject`
[INFO] [stderr]  --> src/models.rs:4:15
[INFO] [stderr]   |
[INFO] [stderr] 4 | use juniper::{GraphQLEnum, GraphQLObject};
[INFO] [stderr]   |               ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Hash`, `PaddingScheme`, and `PublicKey`
[INFO] [stderr]  --> src/models.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 |     Hash, PaddingScheme, PublicKey, RsaPrivateKey, RsaPublicKey,
[INFO] [stderr]   |     ^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]   --> src/models.rs:48:12
[INFO] [stderr]    |
[INFO] [stderr] 48 |         if (self.private_key_pem_file.is_some()) {
[INFO] [stderr]    |            ^                                   ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 48 -         if (self.private_key_pem_file.is_some()) {
[INFO] [stderr] 48 +         if self.private_key_pem_file.is_some() {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]   --> src/models.rs:63:12
[INFO] [stderr]    |
[INFO] [stderr] 63 |         if (self.alipay_public_key_pem_file.is_some()) {
[INFO] [stderr]    |            ^                                         ^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 63 -         if (self.alipay_public_key_pem_file.is_some()) {
[INFO] [stderr] 63 +         if self.alipay_public_key_pem_file.is_some() {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: variant `MINI_APP` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:297:5
[INFO] [stderr]     |
[INFO] [stderr] 297 |     MINI_APP,
[INFO] [stderr]     |     ^^^^^^^^ help: convert the identifier to upper camel case: `MiniApp`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variant `ACCESS_DENIED` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:554:5
[INFO] [stderr]     |
[INFO] [stderr] 554 |     ACCESS_DENIED,
[INFO] [stderr]     |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `AccessDenied`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `INVALID_API` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:555:5
[INFO] [stderr]     |
[INFO] [stderr] 555 |     INVALID_API,
[INFO] [stderr]     |     ^^^^^^^^^^^ help: convert the identifier to upper camel case: `InvalidApi`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `CURRENCY_NOT_SUPPORT` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:556:5
[INFO] [stderr]     |
[INFO] [stderr] 556 |     CURRENCY_NOT_SUPPORT,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CurrencyNotSupport`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `EXPIRED_CODE` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:557:5
[INFO] [stderr]     |
[INFO] [stderr] 557 |     EXPIRED_CODE,
[INFO] [stderr]     |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ExpiredCode`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `FRAUD_REJECT` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:558:5
[INFO] [stderr]     |
[INFO] [stderr] 558 |     FRAUD_REJECT,
[INFO] [stderr]     |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `FraudReject`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `INVALID_ACCESS_TOKEN` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:559:5
[INFO] [stderr]     |
[INFO] [stderr] 559 |     INVALID_ACCESS_TOKEN,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `InvalidAccessToken`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `INVALID_CONTRACT` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:560:5
[INFO] [stderr]     |
[INFO] [stderr] 560 |     INVALID_CONTRACT,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `InvalidContract`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `INVALID_MERCHANT_STATUS` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:561:5
[INFO] [stderr]     |
[INFO] [stderr] 561 |     INVALID_MERCHANT_STATUS,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `InvalidMerchantStatus`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `INVALID_PAYMENT_CODE` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:562:5
[INFO] [stderr]     |
[INFO] [stderr] 562 |     INVALID_PAYMENT_CODE,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `InvalidPaymentCode`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `INVALID_PAYMENT_METHOD_META_DATA` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:563:5
[INFO] [stderr]     |
[INFO] [stderr] 563 |     INVALID_PAYMENT_METHOD_META_DATA,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `InvalidPaymentMethodMetaData`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `KEY_NOT_FOUND` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:564:5
[INFO] [stderr]     |
[INFO] [stderr] 564 |     KEY_NOT_FOUND,
[INFO] [stderr]     |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KeyNotFound`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `MERCHANT_KYB_NOT_QUALIFIED` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:565:5
[INFO] [stderr]     |
[INFO] [stderr] 565 |     MERCHANT_KYB_NOT_QUALIFIED,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `MerchantKybNotQualified`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `MERCHANT_NOT_REGISTERED` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:566:5
[INFO] [stderr]     |
[INFO] [stderr] 566 |     MERCHANT_NOT_REGISTERED,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `MerchantNotRegistered`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `NO_INTERFACE_DEF` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:567:5
[INFO] [stderr]     |
[INFO] [stderr] 567 |     NO_INTERFACE_DEF,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `NoInterfaceDef`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `NO_PAY_OPTIONS` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:568:5
[INFO] [stderr]     |
[INFO] [stderr] 568 |     NO_PAY_OPTIONS,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `NoPayOptions`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `ORDER_IS_CANCELED` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:569:5
[INFO] [stderr]     |
[INFO] [stderr] 569 |     ORDER_IS_CANCELED,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `OrderIsCanceled`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `ORDER_IS_CLOSED` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:570:5
[INFO] [stderr]     |
[INFO] [stderr] 570 |     ORDER_IS_CLOSED,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `OrderIsClosed`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `PARAM_ILLEGAL` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:571:5
[INFO] [stderr]     |
[INFO] [stderr] 571 |     PARAM_ILLEGAL,
[INFO] [stderr]     |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ParamIllegal`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `PAYMENT_AMOUNT_EXCEED_LIMIT` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:572:5
[INFO] [stderr]     |
[INFO] [stderr] 572 |     PAYMENT_AMOUNT_EXCEED_LIMIT,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PaymentAmountExceedLimit`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `PAYMENT_COUNT_EXCEED_LIMIT` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:573:5
[INFO] [stderr]     |
[INFO] [stderr] 573 |     PAYMENT_COUNT_EXCEED_LIMIT,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PaymentCountExceedLimit`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `PAYMENT_NOT_QUALIFIED` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:574:5
[INFO] [stderr]     |
[INFO] [stderr] 574 |     PAYMENT_NOT_QUALIFIED,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PaymentNotQualified`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `PROCESS_FAIL` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:575:5
[INFO] [stderr]     |
[INFO] [stderr] 575 |     PROCESS_FAIL,
[INFO] [stderr]     |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ProcessFail`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `REPEAT_REQ_INCONSISTENT` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:576:5
[INFO] [stderr]     |
[INFO] [stderr] 576 |     REPEAT_REQ_INCONSISTENT,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RepeatReqInconsistent`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `RISK_REJECT` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:577:5
[INFO] [stderr]     |
[INFO] [stderr] 577 |     RISK_REJECT,
[INFO] [stderr]     |     ^^^^^^^^^^^ help: convert the identifier to upper camel case: `RiskReject`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `SETTLE_CONTRACT_NOT_MATCH` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:578:5
[INFO] [stderr]     |
[INFO] [stderr] 578 |     SETTLE_CONTRACT_NOT_MATCH,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SettleContractNotMatch`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `SYSTEM_ERROR` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:579:5
[INFO] [stderr]     |
[INFO] [stderr] 579 |     SYSTEM_ERROR,
[INFO] [stderr]     |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SystemError`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `USER_AMOUNT_EXCEED_LIMIT` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:580:5
[INFO] [stderr]     |
[INFO] [stderr] 580 |     USER_AMOUNT_EXCEED_LIMIT,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `UserAmountExceedLimit`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `USER_BALANCE_NOT_ENOUGH` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:581:5
[INFO] [stderr]     |
[INFO] [stderr] 581 |     USER_BALANCE_NOT_ENOUGH,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `UserBalanceNotEnough`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `USER_KYC_NOT_QUALIFIED` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:582:5
[INFO] [stderr]     |
[INFO] [stderr] 582 |     USER_KYC_NOT_QUALIFIED,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `UserKycNotQualified`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `PAYMENT_IN_PROCESS` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:583:5
[INFO] [stderr]     |
[INFO] [stderr] 583 |     PAYMENT_IN_PROCESS,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PaymentInProcess`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `REQUEST_TRAFFIC_EXCEED_LIMIT` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:584:5
[INFO] [stderr]     |
[INFO] [stderr] 584 |     REQUEST_TRAFFIC_EXCEED_LIMIT,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RequestTrafficExceedLimit`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `UNKNOWN_EXCEPTION` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:585:5
[INFO] [stderr]     |
[INFO] [stderr] 585 |     UNKNOWN_EXCEPTION,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `UnknownException`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `USER_NOT_EXIST` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:586:5
[INFO] [stderr]     |
[INFO] [stderr] 586 |     USER_NOT_EXIST,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `UserNotExist`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `ORDER_NOT_EXIST` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:587:5
[INFO] [stderr]     |
[INFO] [stderr] 587 |     ORDER_NOT_EXIST,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `OrderNotExist`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `ORDER_STATUS_INVALID` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:588:5
[INFO] [stderr]     |
[INFO] [stderr] 588 |     ORDER_STATUS_INVALID,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `OrderStatusInvalid`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `USER_PAYMENT_VERIFICATION_FAILED` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:589:5
[INFO] [stderr]     |
[INFO] [stderr] 589 |     USER_PAYMENT_VERIFICATION_FAILED,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `UserPaymentVerificationFailed`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `USER_STATUS_ABNORMAL` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:590:5
[INFO] [stderr]     |
[INFO] [stderr] 590 |     USER_STATUS_ABNORMAL,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `UserStatusAbnormal`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `VERIFY_TIMES_EXCEED_LIMIT` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:591:5
[INFO] [stderr]     |
[INFO] [stderr] 591 |     VERIFY_TIMES_EXCEED_LIMIT,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `VerifyTimesExceedLimit`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `VERIFY_UNMATCHED` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:592:5
[INFO] [stderr]     |
[INFO] [stderr] 592 |     VERIFY_UNMATCHED,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `VerifyUnmatched`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `AUTHENTICATION_REQUIRED` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:593:5
[INFO] [stderr]     |
[INFO] [stderr] 593 |     AUTHENTICATION_REQUIRED,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `AuthenticationRequired`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `SELECTED_CARD_BRAND_NOT_AVAILABLE` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:594:5
[INFO] [stderr]     |
[INFO] [stderr] 594 |     SELECTED_CARD_BRAND_NOT_AVAILABLE,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SelectedCardBrandNotAvailable`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `PAYMENT_PROHIBITED` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:595:5
[INFO] [stderr]     |
[INFO] [stderr] 595 |     PAYMENT_PROHIBITED,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PaymentProhibited`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `REFUND_AMOUNT_EXCEED` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:596:5
[INFO] [stderr]     |
[INFO] [stderr] 596 |     REFUND_AMOUNT_EXCEED,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RefundAmountExceed`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `REFUND_WINDOW_EXCEED` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:597:5
[INFO] [stderr]     |
[INFO] [stderr] 597 |     REFUND_WINDOW_EXCEED,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RefundWindowExceed`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `REFUND_IN_PROCESS` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:598:5
[INFO] [stderr]     |
[INFO] [stderr] 598 |     REFUND_IN_PROCESS,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RefundInProcess`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `REFUND_NOT_SUPPORTED` should have an upper camel case name
[INFO] [stderr]    --> src/models.rs:599:5
[INFO] [stderr]     |
[INFO] [stderr] 599 |     REFUND_NOT_SUPPORTED,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RefundNotSupported`
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::str::FromStr`
[INFO] [stderr]  --> src/pay.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::str::FromStr;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `AlipayAction` and `Signable`
[INFO] [stderr]  --> src/pay.rs:4:85
[INFO] [stderr]   |
[INFO] [stderr] 4 | use super::models::{AlipayClientSecret, CashierPaymentSimple, RequestEnv, Response, Signable, AlipayAction};
[INFO] [stderr]   |                                                                                     ^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `rsa::Hash`
[INFO] [stderr]  --> src/pay.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use rsa::Hash;
[INFO] [stderr]   |     ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `borrow::BorrowMut`
[INFO] [stderr]  --> src/sign.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 |     borrow::BorrowMut,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `RsaPrivateKey`, `RsaPublicKey`, `pkcs1::DecodeRsaPrivateKey`, and `pkcs8::DecodePublicKey`
[INFO] [stderr]  --> src/sign.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 |     pkcs1::DecodeRsaPrivateKey, pkcs8::DecodePublicKey, Hash, PaddingScheme, PublicKey,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 8 |     RsaPrivateKey, RsaPublicKey,
[INFO] [stderr]   |     ^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `DateTime`
[INFO] [stderr]  --> src/webhook.rs:1:14
[INFO] [stderr]   |
[INFO] [stderr] 1 | use chrono::{DateTime, Utc};
[INFO] [stderr]   |              ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `CashierPaymentInquiry`, `NotifyPayment`, and `RequestEnv`
[INFO] [stderr]  --> src/webhook.rs:7:25
[INFO] [stderr]   |
[INFO] [stderr] 7 |     AlipayClientSecret, CashierPaymentInquiry, RequestEnv,
[INFO] [stderr]   |                         ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stderr] 8 |     NotifyPayment, WebhookData, WebhookResponse, WebhookResponseInput,
[INFO] [stderr]   |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::response::parse_response`
[INFO] [stderr]   --> src/webhook.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 12 | use super::response::parse_response;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `base64::decode`: Use Engine::decode
[INFO] [stderr]   --> src/sign.rs:36:43
[INFO] [stderr]    |
[INFO] [stderr] 36 |     if let Ok(decode_signature) = base64::decode(signature) {
[INFO] [stderr]    |                                           ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `sha2::digest::generic_array::GenericArray::<T, N>::as_slice`: please upgrade to generic-array 1.x
[INFO] [stderr]   --> src/sign.rs:25:16
[INFO] [stderr]    |
[INFO] [stderr] 25 |         digest.as_slice(),
[INFO] [stderr]    |                ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `verify`
[INFO] [stderr]   --> src/inquiry.rs:41:9
[INFO] [stderr]    |
[INFO] [stderr] 41 |     let verify = verify(
[INFO] [stderr]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_verify`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/models.rs:354:13
[INFO] [stderr]     |
[INFO] [stderr] 354 |     fn from(value: &CashierPaymentSimple) -> Self {
[INFO] [stderr]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `verify`
[INFO] [stderr]   --> src/pay.rs:52:9
[INFO] [stderr]    |
[INFO] [stderr] 52 |     let verify = verify(
[INFO] [stderr]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_verify`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `verify`
[INFO] [stderr]   --> src/refund.rs:42:9
[INFO] [stderr]    |
[INFO] [stderr] 42 |     let verify = verify(
[INFO] [stderr]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_verify`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `verify`
[INFO] [stderr]   --> src/webhook.rs:18:9
[INFO] [stderr]    |
[INFO] [stderr] 18 |     let verify = verify(
[INFO] [stderr]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_verify`
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Signable`
[INFO] [stderr]  --> src/pay.rs:4:85
[INFO] [stderr]   |
[INFO] [stderr] 4 | use super::models::{AlipayClientSecret, CashierPaymentSimple, RequestEnv, Response, Signable, AlipayAction};
[INFO] [stderr]   |                                                                                     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `alipay-global` (lib) generated 68 warnings (run `cargo fix --lib -p alipay-global` to apply 14 suggestions)
[INFO] [stderr] warning: `alipay-global` (lib test) generated 68 warnings (67 duplicates) (run `cargo fix --lib -p alipay-global --tests` to apply 1 suggestion)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.21s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/alipay_global-7fea83afac2df628)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test pay::tests::test_req ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- pay::tests::test_req stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'pay::tests::test_req' panicked at src/pay.rs:77:52:
[INFO] [stdout] Missing CLIENT_ID environment variable: NotPresent
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5cc6ca4ba602 - std::backtrace_rs::backtrace::libunwind::trace::hd39b1f53d3cf9745
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5cc6ca4ba602 - std::backtrace_rs::backtrace::trace_unsynchronized::he91d9a75d4e3972b
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5cc6ca4ba602 - std::sys::backtrace::_print_fmt::hca46938f8c6e22cf
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x5cc6ca4ba602 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::ha499add612cccf8e
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x5cc6ca4e3223 - core::fmt::rt::Argument::fmt::hd21145b75a833b7a
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x5cc6ca4e3223 - core::fmt::write::hb10c956f5235c8a4
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/fmt/mod.rs:1465:25
[INFO] [stdout]    6:     0x5cc6ca4b6753 - std::io::default_write_fmt::hdb7615052be2ba4d
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5cc6ca4b6753 - std::io::Write::write_fmt::he1bcd251ec6e4153
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x5cc6ca4ba452 - std::sys::backtrace::BacktraceLock::print::hb47c770ef659fd10
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x5cc6ca4bbb7c - std::panicking::default_hook::{{closure}}::hdda8afb9d457a22c
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:300:27
[INFO] [stdout]   10:     0x5cc6ca4bb9d2 - std::panicking::default_hook::h7c46b44874fe5c9a
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:324:9
[INFO] [stdout]   11:     0x5cc6ca300614 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h178a5fcedee41e2f
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   12:     0x5cc6ca300614 - test::test_main_with_exit_callback::{{closure}}::h951a41e0149d6d5d
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5cc6ca4bc65b - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h13602080f5b63276
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   14:     0x5cc6ca4bc65b - std::panicking::rust_panic_with_hook::ha6cb99ed099eb1c5
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:841:13
[INFO] [stdout]   15:     0x5cc6ca4bc32a - std::panicking::begin_panic_handler::{{closure}}::he11808bc797ee921
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:706:13
[INFO] [stdout]   16:     0x5cc6ca4bab09 - std::sys::backtrace::__rust_end_short_backtrace::h9418807cb7346258
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/backtrace.rs:168:18
[INFO] [stdout]   17:     0x5cc6ca4bbfbd - __rustc[18fb429eef004894]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:697:5
[INFO] [stdout]   18:     0x5cc6ca4e1600 - core::panicking::panic_fmt::hd890aeb12c3a3fc3
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/panicking.rs:75:14
[INFO] [stdout]   19:     0x5cc6ca4e1a06 - core::result::unwrap_failed::h31c9775ec1a50121
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/result.rs:1761:5
[INFO] [stdout]   20:     0x5cc6ca2bfd62 - core::result::Result<T,E>::expect::h7f44ac96a1197aa0
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/result.rs:1119:23
[INFO] [stdout]   21:     0x5cc6ca2bfd62 - alipay_global::pay::tests::test_req::h77260dd714ae4f49
[INFO] [stdout]                                at /opt/rustwide/workdir/src/pay.rs:77:52
[INFO] [stdout]   22:     0x5cc6ca2c4089 - alipay_global::pay::tests::test_req::{{closure}}::h58324cfad1712417
[INFO] [stdout]                                at /opt/rustwide/workdir/src/pay.rs:76:18
[INFO] [stdout]   23:     0x5cc6ca2c4089 - core::ops::function::FnOnce::call_once::h442d2f8a88224f08
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x5cc6ca305d9b - core::ops::function::FnOnce::call_once::h2869fb5b0a2b0bdc
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x5cc6ca305d9b - test::__rust_begin_short_backtrace::h7dd7142bd62fa711
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:648:18
[INFO] [stdout]   26:     0x5cc6ca304f8e - test::run_test_in_process::{{closure}}::h43a753f038d36b3f
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:671:74
[INFO] [stdout]   27:     0x5cc6ca304f8e - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h0ca95dd3e12d1e16
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   28:     0x5cc6ca304f8e - std::panicking::catch_unwind::do_call::he308587d70ac34ba
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:589:40
[INFO] [stdout]   29:     0x5cc6ca304f8e - std::panicking::catch_unwind::h30dcba31973e8fb0
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:552:19
[INFO] [stdout]   30:     0x5cc6ca304f8e - std::panic::catch_unwind::hfb68364e5621fbee
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x5cc6ca304f8e - test::run_test_in_process::hcdcc2977903b998a
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:671:27
[INFO] [stdout]   32:     0x5cc6ca304f8e - test::run_test::{{closure}}::h544a6550958c5d14
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:592:43
[INFO] [stdout]   33:     0x5cc6ca2c8b04 - test::run_test::{{closure}}::hb172e48ebe2b92c7
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:622:41
[INFO] [stdout]   34:     0x5cc6ca2c8b04 - std::sys::backtrace::__rust_begin_short_backtrace::h7e79d8706638bea0
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/backtrace.rs:152:18
[INFO] [stdout]   35:     0x5cc6ca2cc4da - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hc4a275f1e71b8ab0
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/thread/mod.rs:559:17
[INFO] [stdout]   36:     0x5cc6ca2cc4da - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h01ed0d242df78cfd
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   37:     0x5cc6ca2cc4da - std::panicking::catch_unwind::do_call::h052f373fb905fee0
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:589:40
[INFO] [stdout]   38:     0x5cc6ca2cc4da - std::panicking::catch_unwind::hb425d20c8ffb09c8
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:552:19
[INFO] [stdout]   39:     0x5cc6ca2cc4da - std::panic::catch_unwind::ha0d5dfbf18fdeda5
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x5cc6ca2cc4da - std::thread::Builder::spawn_unchecked_::{{closure}}::hbe79182bd37949c7
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/thread/mod.rs:557:30
[INFO] [stdout]   41:     0x5cc6ca2cc4da - core::ops::function::FnOnce::call_once{{vtable.shim}}::hc096c4a06972fde5
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x5cc6ca4bf5b7 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h47377e27fb938a26
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/alloc/src/boxed.rs:1971:9
[INFO] [stdout]   43:     0x5cc6ca4bf5b7 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h72f1fe5d095abf57
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/alloc/src/boxed.rs:1971:9
[INFO] [stdout]   44:     0x5cc6ca4bf5b7 - std::sys::pal::unix::thread::Thread::new::thread_start::h0a4d8e1b9c0d38cf
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/pal/unix/thread.rs:97:17
[INFO] [stdout]   45:     0x7ebf83032aa4 - <unknown>
[INFO] [stdout]   46:     0x7ebf830bfa34 - clone
[INFO] [stdout]   47:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     pay::tests::test_req
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.16s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] running `Command { std: "docker" "inspect" "f494e09a13da967114738abec4dc042fcac84a73d13f671b0fbae421246d03db", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f494e09a13da967114738abec4dc042fcac84a73d13f671b0fbae421246d03db", kill_on_drop: false }`
[INFO] [stdout] f494e09a13da967114738abec4dc042fcac84a73d13f671b0fbae421246d03db
