diff --git a/quicklendx-contracts/Cargo.toml b/quicklendx-contracts/Cargo.toml index b8a01751..f60c746c 100644 --- a/quicklendx-contracts/Cargo.toml +++ b/quicklendx-contracts/Cargo.toml @@ -4,15 +4,10 @@ version = "0.1.0" edition = "2021" [lib] -<<<<<<< bypass -# Keep an rlib target for integration tests and a cdylib target for contract/WASM builds. -crate-type = ["cdylib", "rlib"] -======= # rlib only: avoids Windows GNU "export ordinal too large" when building cdylib. # For WASM contract build use: cargo build --release --target wasm32-unknown-unknown # (add crate-type = ["cdylib"] temporarily or build in WSL/Linux if you need the .so artifact). crate-type = ["lib"] ->>>>>>> main [dependencies] soroban-sdk = { version = "25.1.1", features = ["alloc"] } diff --git a/quicklendx-contracts/build.output b/quicklendx-contracts/build.output new file mode 100644 index 00000000..2269607a --- /dev/null +++ b/quicklendx-contracts/build.output @@ -0,0 +1,10449 @@ +cargo : Compiling quicklendx-contracts v0.1.0 (C:\Users\U +SER\Desktop\drips\quicklendx-protocol\quicklendx-contracts) +At line:1 char:1 ++ cargo test --no-run 2>&1 | Out-File -FilePath +build.output -Encoding ... ++ ~~~~~~~~~~~~~~~~~~~~~~~~ + + CategoryInfo : NotSpecified: ( Compiling q + u...endx-contracts):String) [], RemoteException + + FullyQualifiedErrorId : NativeCommandError + +error[E0428]: the name `__QuickLendXContract__get_backup_ret +ention_policy__invoke_raw` is defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ `__QuickLendXContract__get_backup_rete +ntion_policy__invoke_raw` redefined here + | + = note: `__QuickLendXContract__get_backup_retention_poli +cy__invoke_raw` must be defined only once in the value +namespace of this module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name `__QuickLendXContract__get_backup_ret +ention_policy__invoke_raw_slice` is defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ `__QuickLendXContract__get_backup_rete +ntion_policy__invoke_raw_slice` redefined here + | + = note: `__QuickLendXContract__get_backup_retention_poli +cy__invoke_raw_slice` must be defined only once in the +value namespace of this module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name `__QuickLendXContract__get_backup_ret +ention_policy__invoke_raw_extern` is defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ `__QuickLendXContract__get_backup_rete +ntion_policy__invoke_raw_extern` redefined here + | + = note: `__QuickLendXContract__get_backup_retention_poli +cy__invoke_raw_extern` must be defined only once in the +value namespace of this module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__create_backup__invoke_raw` is +defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__create_backup__invoke_raw` redefined +here + | + = note: +`__QuickLendXContract__create_backup__invoke_raw` must be +defined only once in the value namespace of this module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__create_backup__invoke_raw_slice` is +defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__create_backup__invoke_raw_slice` +redefined here + | + = note: +`__QuickLendXContract__create_backup__invoke_raw_slice` +must be defined only once in the value namespace of this +module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__create_backup__invoke_raw_extern` is +defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__create_backup__invoke_raw_extern` +redefined here + | + = note: +`__QuickLendXContract__create_backup__invoke_raw_extern` +must be defined only once in the value namespace of this +module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__get_backup_details__invoke_raw` is +defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__get_backup_details__invoke_raw` +redefined here + | + = note: +`__QuickLendXContract__get_backup_details__invoke_raw` must +be defined only once in the value namespace of this module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name `__QuickLendXContract__get_backup_det +ails__invoke_raw_slice` is defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ `__QuickLendXContract__get_backup_deta +ils__invoke_raw_slice` redefined here + | + = note: `__QuickLendXContract__get_backup_details__invok +e_raw_slice` must be defined only once in the value +namespace of this module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name `__QuickLendXContract__get_backup_det +ails__invoke_raw_extern` is defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ `__QuickLendXContract__get_backup_deta +ils__invoke_raw_extern` redefined here + | + = note: `__QuickLendXContract__get_backup_details__invok +e_raw_extern` must be defined only once in the value +namespace of this module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__get_backups__invoke_raw` is defined +multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__get_backups__invoke_raw` redefined +here + | + = note: `__QuickLendXContract__get_backups__invoke_raw` +must be defined only once in the value namespace of this +module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__get_backups__invoke_raw_slice` is +defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__get_backups__invoke_raw_slice` +redefined here + | + = note: +`__QuickLendXContract__get_backups__invoke_raw_slice` must +be defined only once in the value namespace of this module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__get_backups__invoke_raw_extern` is +defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__get_backups__invoke_raw_extern` +redefined here + | + = note: +`__QuickLendXContract__get_backups__invoke_raw_extern` must +be defined only once in the value namespace of this module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__restore_backup__invoke_raw` is +defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__restore_backup__invoke_raw` +redefined here + | + = note: +`__QuickLendXContract__restore_backup__invoke_raw` must be +defined only once in the value namespace of this module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__restore_backup__invoke_raw_slice` is +defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__restore_backup__invoke_raw_slice` +redefined here + | + = note: +`__QuickLendXContract__restore_backup__invoke_raw_slice` +must be defined only once in the value namespace of this +module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__restore_backup__invoke_raw_extern` +is defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__restore_backup__invoke_raw_extern` +redefined here + | + = note: +`__QuickLendXContract__restore_backup__invoke_raw_extern` +must be defined only once in the value namespace of this +module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__archive_backup__invoke_raw` is +defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__archive_backup__invoke_raw` +redefined here + | + = note: +`__QuickLendXContract__archive_backup__invoke_raw` must be +defined only once in the value namespace of this module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__archive_backup__invoke_raw_slice` is +defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__archive_backup__invoke_raw_slice` +redefined here + | + = note: +`__QuickLendXContract__archive_backup__invoke_raw_slice` +must be defined only once in the value namespace of this +module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__archive_backup__invoke_raw_extern` +is defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__archive_backup__invoke_raw_extern` +redefined here + | + = note: +`__QuickLendXContract__archive_backup__invoke_raw_extern` +must be defined only once in the value namespace of this +module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__validate_backup__invoke_raw` is +defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__validate_backup__invoke_raw` +redefined here + | + = note: +`__QuickLendXContract__validate_backup__invoke_raw` must be +defined only once in the value namespace of this module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__validate_backup__invoke_raw_slice` +is defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__validate_backup__invoke_raw_slice` +redefined here + | + = note: +`__QuickLendXContract__validate_backup__invoke_raw_slice` +must be defined only once in the value namespace of this +module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__validate_backup__invoke_raw_extern` +is defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__validate_backup__invoke_raw_extern` +redefined here + | + = note: +`__QuickLendXContract__validate_backup__invoke_raw_extern` +must be defined only once in the value namespace of this +module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__cleanup_backups__invoke_raw` is +defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__cleanup_backups__invoke_raw` +redefined here + | + = note: +`__QuickLendXContract__cleanup_backups__invoke_raw` must be +defined only once in the value namespace of this module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__cleanup_backups__invoke_raw_slice` +is defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__cleanup_backups__invoke_raw_slice` +redefined here + | + = note: +`__QuickLendXContract__cleanup_backups__invoke_raw_slice` +must be defined only once in the value namespace of this +module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__cleanup_backups__invoke_raw_extern` +is defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__cleanup_backups__invoke_raw_extern` +redefined here + | + = note: +`__QuickLendXContract__cleanup_backups__invoke_raw_extern` +must be defined only once in the value namespace of this +module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name `__QuickLendXContract__set_backup_ret +ention_policy__invoke_raw` is defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ `__QuickLendXContract__set_backup_rete +ntion_policy__invoke_raw` redefined here + | + = note: `__QuickLendXContract__set_backup_retention_poli +cy__invoke_raw` must be defined only once in the value +namespace of this module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name `__QuickLendXContract__set_backup_ret +ention_policy__invoke_raw_slice` is defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ `__QuickLendXContract__set_backup_rete +ntion_policy__invoke_raw_slice` redefined here + | + = note: `__QuickLendXContract__set_backup_retention_poli +cy__invoke_raw_slice` must be defined only once in the +value namespace of this module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name `__QuickLendXContract__set_backup_ret +ention_policy__invoke_raw_extern` is defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ `__QuickLendXContract__set_backup_rete +ntion_policy__invoke_raw_extern` redefined here + | + = note: `__QuickLendXContract__set_backup_retention_poli +cy__invoke_raw_extern` must be defined only once in the +value namespace of this module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__get_platform_metrics__invoke_raw` is +defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__get_platform_metrics__invoke_raw` +redefined here + | + = note: +`__QuickLendXContract__get_platform_metrics__invoke_raw` +must be defined only once in the value namespace of this +module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name `__QuickLendXContract__get_platform_m +etrics__invoke_raw_slice` is defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ `__QuickLendXContract__get_platform_me +trics__invoke_raw_slice` redefined here + | + = note: `__QuickLendXContract__get_platform_metrics__inv +oke_raw_slice` must be defined only once in the value +namespace of this module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name `__QuickLendXContract__get_platform_m +etrics__invoke_raw_extern` is defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ `__QuickLendXContract__get_platform_me +trics__invoke_raw_extern` redefined here + | + = note: `__QuickLendXContract__get_platform_metrics__inv +oke_raw_extern` must be defined only once in the value +namespace of this module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__get_performance_metrics__invoke_raw` +is defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__get_performance_metrics__invoke_raw` +redefined here + | + = note: +`__QuickLendXContract__get_performance_metrics__invoke_raw` +must be defined only once in the value namespace of this +module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name `__QuickLendXContract__get_performanc +e_metrics__invoke_raw_slice` is defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ `__QuickLendXContract__get_performance +_metrics__invoke_raw_slice` redefined here + | + = note: `__QuickLendXContract__get_performance_metrics__ +invoke_raw_slice` must be defined only once in the value +namespace of this module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name `__QuickLendXContract__get_performanc +e_metrics__invoke_raw_extern` is defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ `__QuickLendXContract__get_performance +_metrics__invoke_raw_extern` redefined here + | + = note: `__QuickLendXContract__get_performance_metrics__ +invoke_raw_extern` must be defined only once in the value +namespace of this module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__get_financial_metrics__invoke_raw` +is defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__get_financial_metrics__invoke_raw` +redefined here + | + = note: +`__QuickLendXContract__get_financial_metrics__invoke_raw` +must be defined only once in the value namespace of this +module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name `__QuickLendXContract__get_financial_ +metrics__invoke_raw_slice` is defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ `__QuickLendXContract__get_financial_m +etrics__invoke_raw_slice` redefined here + | + = note: `__QuickLendXContract__get_financial_metrics__in +voke_raw_slice` must be defined only once in the value +namespace of this module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name `__QuickLendXContract__get_financial_ +metrics__invoke_raw_extern` is defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ `__QuickLendXContract__get_financial_m +etrics__invoke_raw_extern` redefined here + | + = note: `__QuickLendXContract__get_financial_metrics__in +voke_raw_extern` must be defined only once in the value +namespace of this module + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__get_backup_retention_policy__spec` +is defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__get_backup_retention_policy__spec` +redefined here + | + = note: +`__QuickLendXContract__get_backup_retention_policy__spec` +must be defined only once in the type namespace of this +module + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__create_backup__spec` is defined +multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__create_backup__spec` redefined here + | + = note: `__QuickLendXContract__create_backup__spec` +must be defined only once in the type namespace of this +module + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__get_backup_details__spec` is defined +multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__get_backup_details__spec` redefined +here + | + = note: +`__QuickLendXContract__get_backup_details__spec` must be +defined only once in the type namespace of this module + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__get_backups__spec` is defined +multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__get_backups__spec` redefined here + | + = note: `__QuickLendXContract__get_backups__spec` must +be defined only once in the type namespace of this module + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__restore_backup__spec` is defined +multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__restore_backup__spec` redefined here + | + = note: `__QuickLendXContract__restore_backup__spec` +must be defined only once in the type namespace of this +module + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__archive_backup__spec` is defined +multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__archive_backup__spec` redefined here + | + = note: `__QuickLendXContract__archive_backup__spec` +must be defined only once in the type namespace of this +module + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__validate_backup__spec` is defined +multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__validate_backup__spec` redefined here + | + = note: `__QuickLendXContract__validate_backup__spec` +must be defined only once in the type namespace of this +module + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__cleanup_backups__spec` is defined +multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__cleanup_backups__spec` redefined here + | + = note: `__QuickLendXContract__cleanup_backups__spec` +must be defined only once in the type namespace of this +module + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__set_backup_retention_policy__spec` +is defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__set_backup_retention_policy__spec` +redefined here + | + = note: +`__QuickLendXContract__set_backup_retention_policy__spec` +must be defined only once in the type namespace of this +module + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__get_platform_metrics__spec` is +defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__get_platform_metrics__spec` +redefined here + | + = note: +`__QuickLendXContract__get_platform_metrics__spec` must be +defined only once in the type namespace of this module + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__get_performance_metrics__spec` is +defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__get_performance_metrics__spec` +redefined here + | + = note: +`__QuickLendXContract__get_performance_metrics__spec` must +be defined only once in the type namespace of this module + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0428]: the name +`__QuickLendXContract__get_financial_metrics__spec` is +defined multiple times + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +`__QuickLendXContract__get_financial_metrics__spec` +redefined here + | + = note: +`__QuickLendXContract__get_financial_metrics__spec` must be +defined only once in the type namespace of this module + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0433]: failed to resolve: use of undeclared type +`InvoiceStorage` + --> src\dispute.rs:39:19 + | +39 | let invoice = InvoiceStorage::get_invoice(env, +invoice_id) + | ^^^^^^^^^^^^^^ use of undeclared +type `InvoiceStorage` + | +help: consider importing one of these structs + | + 1 + use crate::InvoiceStorage; + | + 1 + use crate::storage::InvoiceStorage; + | + +error[E0425]: cannot find value `is_business` in this scope + --> src\dispute.rs:61:9 + | +61 | if !is_business && !is_investor { + | ^^^^^^^^^^^ not found in this scope + +error[E0425]: cannot find value `is_investor` in this scope + --> src\dispute.rs:61:25 + | +61 | if !is_business && !is_investor { + | ^^^^^^^^^^^ not found in this +scope + +error[E0422]: cannot find struct, variant or union type +`Dispute` in this scope + --> src\dispute.rs:76:23 + | +76 | invoice.dispute = Dispute { + | ^^^^^^^ not found in this scope + | +help: consider importing one of these structs + | + 1 + use crate::Dispute; + | + 1 + use crate::invoice::Dispute; + | + +error[E0433]: failed to resolve: use of undeclared type +`InvoiceStorage` + --> src\dispute.rs:90:5 + | +90 | InvoiceStorage::update_invoice(env, &invoice); + | ^^^^^^^^^^^^^^ use of undeclared type +`InvoiceStorage` + | +help: consider importing one of these structs + | + 1 + use crate::InvoiceStorage; + | + 1 + use crate::storage::InvoiceStorage; + | + +error[E0433]: failed to resolve: use of undeclared type +`InvoiceStorage` + --> src\dispute.rs:123:32 + | +123 | let mut invoice: Invoice = +InvoiceStorage::get_invoice(env, invoice_id) + | ^^^^^^^^^^^^^^ use of +undeclared type `InvoiceStorage` + | +help: consider importing one of these structs + | + 1 + use crate::InvoiceStorage; + | + 1 + use crate::storage::InvoiceStorage; + | + +error[E0433]: failed to resolve: use of undeclared type +`InvoiceStorage` + --> src\dispute.rs:138:5 + | +138 | InvoiceStorage::update_invoice(env, &invoice); + | ^^^^^^^^^^^^^^ use of undeclared type +`InvoiceStorage` + | +help: consider importing one of these structs + | + 1 + use crate::InvoiceStorage; + | + 1 + use crate::storage::InvoiceStorage; + | + +error[E0433]: failed to resolve: use of undeclared type +`InvoiceStorage` + --> src\dispute.rs:174:32 + | +174 | let mut invoice: Invoice = +InvoiceStorage::get_invoice(env, invoice_id) + | ^^^^^^^^^^^^^^ use of +undeclared type `InvoiceStorage` + | +help: consider importing one of these structs + | + 1 + use crate::InvoiceStorage; + | + 1 + use crate::storage::InvoiceStorage; + | + +error[E0433]: failed to resolve: use of undeclared type +`InvoiceStorage` + --> src\dispute.rs:201:5 + | +201 | InvoiceStorage::update_invoice(env, &invoice); + | ^^^^^^^^^^^^^^ use of undeclared type +`InvoiceStorage` + | +help: consider importing one of these structs + | + 1 + use crate::InvoiceStorage; + | + 1 + use crate::storage::InvoiceStorage; + | + +error[E0425]: cannot find type `Dispute` in this scope + --> src\dispute.rs:220:74 + | +220 | pub fn get_dispute_details(env: &Env, invoice_id: +&BytesN<32>) -> Option { + | + ^^^^^^^ not found in this scope + | +help: consider importing one of these structs + | + 1 + use crate::Dispute; + | + 1 + use crate::invoice::Dispute; + | + +error[E0433]: failed to resolve: use of undeclared type +`InvoiceStorage` + --> src\dispute.rs:221:19 + | +221 | let invoice = InvoiceStorage::get_invoice(env, +invoice_id)?; + | ^^^^^^^^^^^^^^ use of undeclared +type `InvoiceStorage` + | +help: consider importing one of these structs + | + 1 + use crate::InvoiceStorage; + | + 1 + use crate::storage::InvoiceStorage; + | + +error[E0433]: failed to resolve: use of undeclared type +`InvoiceStorage` + --> src\dispute.rs:255:32 + | +255 | if let Some(invoice) = +InvoiceStorage::get_invoice(env, &invoice_id) { + | ^^^^^^^^^^^^^^ use of +undeclared type `InvoiceStorage` + | +help: consider importing one of these structs + | + 1 + use crate::InvoiceStorage; + | + 1 + use crate::storage::InvoiceStorage; + | + +warning: unused import: `FeeStructure` + --> src\events.rs:2:19 + | +2 | use crate::fees::{FeeStructure, FeeType}; + | ^^^^^^^^^^^^ + | + = note: `#[warn(unused_imports)]` (part of +`#[warn(unused)]`) on by default + +warning: unused imports: `ADMIN_INITIALIZED_KEY` and +`ADMIN_KEY` + --> src\init.rs:34:34 + | +34 | use crate::admin::{AdminStorage, +ADMIN_INITIALIZED_KEY, ADMIN_KEY}; + | ^^^^^^^^^^^^^^^^^^^^^ + ^^^^^^^^^ + +warning: unused import: `Investment` + --> src\investment_queries.rs:2:25 + | +2 | use crate::investment::{Investment, InvestmentStatus, +InvestmentStorage}; + | ^^^^^^^^^^ + +warning: unused import: `MAX_TAG_LENGTH` + --> src\invoice.rs:7:40 + | +7 | MAX_NAME_LENGTH, MAX_NOTES_LENGTH, MAX_TAG_LENGTH, +MAX_TAX_ID_LENGTH, + | ^^^^^^^^^^^^^^ + +warning: private item shadows public glob re-export + --> src\lib.rs:76:11 + | + 76 | use bid::{Bid, BidStorage}; + | ^^^ + | +note: the name `Bid` in the type namespace is supposed to +be publicly re-exported here + --> src\lib.rs:109:9 + | +109 | pub use crate::types::*; + | ^^^^^^^^^^^^^^^ +note: but the private item here shadows it + --> src\lib.rs:76:11 + | + 76 | use bid::{Bid, BidStorage}; + | ^^^ + = note: `#[warn(hidden_glob_reexports)]` on by default + +warning: unused import: `OverdueScanResult` + --> src\lib.rs:79:5 + | +79 | OverdueScanResult, + | ^^^^^^^^^^^^^^^^^ + +warning: private item shadows public glob re-export + --> src\lib.rs:91:18 + | + 91 | use investment::{InsuranceCoverage, Investment, +InvestmentStatus, InvestmentStorage}; + | ^^^^^^^^^^^^^^^^^ + | +note: the name `InsuranceCoverage` in the type namespace is +supposed to be publicly re-exported here + --> src\lib.rs:109:9 + | +109 | pub use crate::types::*; + | ^^^^^^^^^^^^^^^ +note: but the private item here shadows it + --> src\lib.rs:91:18 + | + 91 | use investment::{InsuranceCoverage, Investment, +InvestmentStatus, InvestmentStorage}; + | ^^^^^^^^^^^^^^^^^ + +warning: private item shadows public glob re-export + --> src\lib.rs:91:37 + | + 91 | use investment::{InsuranceCoverage, Investment, +InvestmentStatus, InvestmentStorage}; + | ^^^^^^^^^^ + | +note: the name `Investment` in the type namespace is +supposed to be publicly re-exported here + --> src\lib.rs:109:9 + | +109 | pub use crate::types::*; + | ^^^^^^^^^^^^^^^ +note: but the private item here shadows it + --> src\lib.rs:91:37 + | + 91 | use investment::{InsuranceCoverage, Investment, +InvestmentStatus, InvestmentStorage}; + | ^^^^^^^^^^ + +warning: private item shadows public glob re-export + --> src\lib.rs:91:49 + | + 91 | use investment::{InsuranceCoverage, Investment, +InvestmentStatus, InvestmentStorage}; + | +^^^^^^^^^^^^^^^^ + | +note: the name `InvestmentStatus` in the type namespace is +supposed to be publicly re-exported here + --> src\lib.rs:109:9 + | +109 | pub use crate::types::*; + | ^^^^^^^^^^^^^^^ +note: but the private item here shadows it + --> src\lib.rs:91:49 + | + 91 | use investment::{InsuranceCoverage, Investment, +InvestmentStatus, InvestmentStorage}; + | +^^^^^^^^^^^^^^^^ + +warning: private item shadows public glob re-export + --> src\lib.rs:92:15 + | + 92 | use invoice::{Invoice, InvoiceMetadata, +InvoiceStorage}; + | ^^^^^^^ + | +note: the name `Invoice` in the type namespace is supposed +to be publicly re-exported here + --> src\lib.rs:109:9 + | +109 | pub use crate::types::*; + | ^^^^^^^^^^^^^^^ +note: but the private item here shadows it + --> src\lib.rs:92:15 + | + 92 | use invoice::{Invoice, InvoiceMetadata, +InvoiceStorage}; + | ^^^^^^^ + +warning: private item shadows public glob re-export + --> src\lib.rs:92:24 + | + 92 | use invoice::{Invoice, InvoiceMetadata, +InvoiceStorage}; + | ^^^^^^^^^^^^^^^ + | +note: the name `InvoiceMetadata` in the type namespace is +supposed to be publicly re-exported here + --> src\lib.rs:109:9 + | +109 | pub use crate::types::*; + | ^^^^^^^^^^^^^^^ +note: but the private item here shadows it + --> src\lib.rs:92:24 + | + 92 | use invoice::{Invoice, InvoiceMetadata, +InvoiceStorage}; + | ^^^^^^^^^^^^^^^ + +warning: private item shadows public glob re-export + --> src\lib.rs:94:56 + | + 94 | use profits::{calculate_profit as +do_calculate_profit, PlatformFee, PlatformFeeConfig}; + | + ^^^^^^^^^^^ + | +note: the name `PlatformFee` in the type namespace is +supposed to be publicly re-exported here + --> src\lib.rs:109:9 + | +109 | pub use crate::types::*; + | ^^^^^^^^^^^^^^^ +note: but the private item here shadows it + --> src\lib.rs:94:56 + | + 94 | use profits::{calculate_profit as +do_calculate_profit, PlatformFee, PlatformFeeConfig}; + | + ^^^^^^^^^^^ + +warning: private item shadows public glob re-export + --> src\lib.rs:94:69 + | + 94 | use profits::{calculate_profit as +do_calculate_profit, PlatformFee, PlatformFeeConfig}; + | + ^^^^^^^^^^^^^^^^^ + | +note: the name `PlatformFeeConfig` in the type namespace is +supposed to be publicly re-exported here + --> src\lib.rs:109:9 + | +109 | pub use crate::types::*; + | ^^^^^^^^^^^^^^^ +note: but the private item here shadows it + --> src\lib.rs:94:69 + | + 94 | use profits::{calculate_profit as +do_calculate_profit, PlatformFee, PlatformFeeConfig}; + | + ^^^^^^^^^^^^^^^^^ + +error[E0425]: cannot find value `all_paged` in this scope + --> src\test_investment_queries.rs:547:16 + | +547 | assert_eq!(all_paged.len(), 2); + | ^^^^^^^^^ not found in this scope + +warning: unused import: `crate::init::InitializationParams` + --> src\test_default.rs:12:5 + | +12 | use crate::init::InitializationParams; + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + | + = note: `#[warn(unused_imports)]` (part of +`#[warn(unused)]`) on by default + +warning: unused import: `super::*` + --> src\emergency.rs:336:9 + | +336 | use super::*; + | ^^^^^^^^ + +warning: unused import: `FeeStructure` + --> src\events.rs:2:19 + | +2 | use crate::fees::{FeeStructure, FeeType}; + | ^^^^^^^^^^^^ + +warning: unused import: `ProtocolConfig` + --> src\test_init.rs:21:45 + | +21 | use crate::init::{InitializationParams, +ProtocolConfig, ProtocolInitializer}; + | +^^^^^^^^^^^^^^ + +warning: unused import: `std::format` + --> src\test_max_invoices_per_business.rs:4:5 + | +4 | use std::format; + | ^^^^^^^^^^^ + +warning: unused imports: `PlatformFeeConfig` and +`PlatformFee` + --> src\test_storage.rs:18:22 + | +18 | use crate::profits::{PlatformFee, PlatformFeeConfig}; + | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ + +warning: unused import: `ConfigStorage` + --> src\test_storage.rs:20:17 + | +20 | BidStorage, ConfigStorage, DataKey, Indexes, +InvestmentStorage, InvoiceStorage, StorageKeys, + | ^^^^^^^^^^^^^ + +warning: unused import: `BytesN` + --> src\test_investment_consistency.rs:3:53 + | +3 | use soroban_sdk::{testutils::Address as _, Address, +BytesN, Env, String, Vec}; + | +^^^^^^ + +warning: unused import: +`crate::investment::InvestmentStatus` + --> src\test_investment_consistency.rs:4:5 + | +4 | use crate::investment::InvestmentStatus; + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +warning: unused import: `InvoiceRating` + --> src\test_types.rs:24:48 + | +24 | Invoice, InvoiceCategory, InvoiceMetadata, +InvoiceRating, InvoiceStatus, LineItemRecord, + | +^^^^^^^^^^^^^ + +error[E0592]: duplicate definitions with name +`get_backup_retention_policy` + --> src\lib.rs:2472:5 + | +2382 | pub fn get_backup_retention_policy(env: Env) -> +backup::BackupRetentionPolicy { + | ------------------------------------------------- +---------------------------- other definition for +`get_backup_retention_policy` +... +2472 | pub fn get_backup_retention_policy(env: Env) -> +backup::BackupRetentionPolicy { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +^^^^^^^^^^^^^^^^^^^^^^^^^^^^ duplicate definitions for +`get_backup_retention_policy` + +error[E0592]: duplicate definitions with name +`create_backup` + --> src\lib.rs:2755:5 + | +2287 | pub fn create_backup(env: Env, admin: Address) +-> Result, QuickLendXError> { + | ------------------------------------------------- +------------------------------------ other definition for +`create_backup` +... +2755 | pub fn create_backup(env: Env, admin: Address) +-> Result, QuickLendXError> { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ duplicate definitions +for `create_backup` + +error[E0592]: duplicate definitions with name +`get_backup_details` + --> src\lib.rs:2773:5 + | +2346 | pub fn get_backup_details(env: Env, backup_id: +BytesN<32>) -> Option { + | ------------------------------------------------- +----------------------------------- other definition for +`get_backup_details` +... +2773 | pub fn get_backup_details(env: Env, backup_id: +BytesN<32>) -> Option { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ duplicate definitions +for `get_backup_details` + +error[E0592]: duplicate definitions with name `get_backups` + --> src\lib.rs:2777:5 + | +2351 | pub fn get_backups(env: Env) -> Vec> { + | ----------------------------------------------- +other definition for `get_backups` +... +2777 | pub fn get_backups(env: Env) -> Vec> { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +duplicate definitions for `get_backups` + +error[E0592]: duplicate definitions with name +`restore_backup` + --> src\lib.rs:2781:5 + | +2307 | / pub fn restore_backup( +2308 | | env: Env, +2309 | | admin: Address, +2310 | | backup_id: BytesN<32>, +2311 | | ) -> Result<(), QuickLendXError> { + | |____________________________________- other +definition for `restore_backup` +... +2781 | / pub fn restore_backup( +2782 | | env: Env, +2783 | | admin: Address, +2784 | | backup_id: BytesN<32>, +2785 | | ) -> Result<(), QuickLendXError> { + | |____________________________________^ duplicate +definitions for `restore_backup` + +error[E0592]: duplicate definitions with name +`archive_backup` + --> src\lib.rs:2797:5 + | +2325 | / pub fn archive_backup( +2326 | | env: Env, +2327 | | admin: Address, +2328 | | backup_id: BytesN<32>, +2329 | | ) -> Result<(), QuickLendXError> { + | |____________________________________- other +definition for `archive_backup` +... +2797 | / pub fn archive_backup( +2798 | | env: Env, +2799 | | admin: Address, +2800 | | backup_id: BytesN<32>, +2801 | | ) -> Result<(), QuickLendXError> { + | |____________________________________^ duplicate +definitions for `archive_backup` + +error[E0592]: duplicate definitions with name +`validate_backup` + --> src\lib.rs:2811:5 + | +2341 | pub fn validate_backup(env: Env, backup_id: +BytesN<32>) -> bool { + | ------------------------------------------------- +-------------- other definition for `validate_backup` +... +2811 | pub fn validate_backup(env: Env, backup_id: +BytesN<32>) -> Result { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ duplicate +definitions for `validate_backup` + +error[E0592]: duplicate definitions with name +`cleanup_backups` + --> src\lib.rs:2815:5 + | +2356 | pub fn cleanup_backups(env: Env, admin: Address) +-> Result { + | ------------------------------------------------- +------------------------------- other definition for +`cleanup_backups` +... +2815 | pub fn cleanup_backups(env: Env, admin: Address) +-> Result { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ duplicate definitions for +`cleanup_backups` + +error[E0592]: duplicate definitions with name +`set_backup_retention_policy` + --> src\lib.rs:2820:5 + | +2363 | / pub fn set_backup_retention_policy( +2364 | | env: Env, +2365 | | admin: Address, +2366 | | max_backups: u32, +2367 | | max_age_seconds: u64, +2368 | | auto_cleanup_enabled: bool, +2369 | | ) -> Result<(), QuickLendXError> { + | |____________________________________- other +definition for `set_backup_retention_policy` +... +2820 | / pub fn set_backup_retention_policy( +2821 | | env: Env, +2822 | | admin: Address, +2823 | | max_backups: u32, +2824 | | max_age_seconds: u64, +2825 | | auto_cleanup_enabled: bool, +2826 | | ) -> Result<(), QuickLendXError> { + | |____________________________________^ duplicate +definitions for `set_backup_retention_policy` + +error[E0592]: duplicate definitions with name +`get_platform_metrics` + --> src\lib.rs:2841:5 + | +2480 | pub fn get_platform_metrics(env: Env) -> +analytics::PlatformMetrics { + | ------------------------------------------------- +------------------ other definition for +`get_platform_metrics` +... +2841 | pub fn get_platform_metrics(env: Env) -> +Option { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +^^^^^^^^^^^^^^^^^^^^^^^^^^ duplicate definitions for +`get_platform_metrics` + +error[E0592]: duplicate definitions with name +`get_performance_metrics` + --> src\lib.rs:2845:5 + | +2500 | pub fn get_performance_metrics(env: Env) -> +analytics::PerformanceMetrics { + | ------------------------------------------------- +------------------------ other definition for +`get_performance_metrics` +... +2845 | pub fn get_performance_metrics(env: Env) -> +Option { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ duplicate definitions for +`get_performance_metrics` + +error[E0592]: duplicate definitions with name +`get_financial_metrics` + --> src\lib.rs:2849:5 + | +2439 | / pub fn get_financial_metrics( +2440 | | env: Env, +2441 | | invoice_id: BytesN<32>, +2442 | | rating: u32, +2443 | | feedback: String, +2444 | | rater: Address, +2445 | | ) -> Result<(), QuickLendXError> { + | |____________________________________- other +definition for `get_financial_metrics` +... +2849 | / pub fn get_financial_metrics( +2850 | | env: Env, +2851 | | period: analytics::TimePeriod, +2852 | | ) -> Result { + | |____________________________________________________ +_________^ duplicate definitions for `get_financial_metrics` + +error[E0592]: duplicate definitions with name +`spec_xdr_create_backup` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `spec_xdr_create_backup` + | other definition for `spec_xdr_create_backup` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`spec_xdr_restore_backup` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `spec_xdr_restore_backup` + | other definition for `spec_xdr_restore_backup` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`spec_xdr_archive_backup` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `spec_xdr_archive_backup` + | other definition for `spec_xdr_archive_backup` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`spec_xdr_validate_backup` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `spec_xdr_validate_backup` + | other definition for `spec_xdr_validate_backup` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`spec_xdr_get_backup_details` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for +`spec_xdr_get_backup_details` + | other definition for `spec_xdr_get_backup_details` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`spec_xdr_get_backups` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `spec_xdr_get_backups` + | other definition for `spec_xdr_get_backups` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`spec_xdr_cleanup_backups` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `spec_xdr_cleanup_backups` + | other definition for `spec_xdr_cleanup_backups` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`spec_xdr_set_backup_retention_policy` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for +`spec_xdr_set_backup_retention_policy` + | other definition for +`spec_xdr_set_backup_retention_policy` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`spec_xdr_get_backup_retention_policy` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for +`spec_xdr_get_backup_retention_policy` + | other definition for +`spec_xdr_get_backup_retention_policy` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`spec_xdr_get_financial_metrics` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for +`spec_xdr_get_financial_metrics` + | other definition for `spec_xdr_get_financial_metrics` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`spec_xdr_get_platform_metrics` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for +`spec_xdr_get_platform_metrics` + | other definition for `spec_xdr_get_platform_metrics` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`spec_xdr_get_performance_metrics` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for +`spec_xdr_get_performance_metrics` + | other definition for +`spec_xdr_get_performance_metrics` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`get_backup_retention_policy` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for +`get_backup_retention_policy` + | other definition for `get_backup_retention_policy` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractargs` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`create_backup` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `create_backup` + | other definition for `create_backup` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractargs` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`get_backup_details` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `get_backup_details` + | other definition for `get_backup_details` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractargs` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0592]: duplicate definitions with name `get_backups` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `get_backups` + | other definition for `get_backups` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractargs` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`restore_backup` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `restore_backup` + | other definition for `restore_backup` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractargs` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`archive_backup` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `archive_backup` + | other definition for `archive_backup` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractargs` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`validate_backup` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `validate_backup` + | other definition for `validate_backup` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractargs` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`cleanup_backups` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `cleanup_backups` + | other definition for `cleanup_backups` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractargs` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`set_backup_retention_policy` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for +`set_backup_retention_policy` + | other definition for `set_backup_retention_policy` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractargs` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`get_platform_metrics` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `get_platform_metrics` + | other definition for `get_platform_metrics` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractargs` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`get_performance_metrics` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `get_performance_metrics` + | other definition for `get_performance_metrics` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractargs` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`get_financial_metrics` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `get_financial_metrics` + | other definition for `get_financial_metrics` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractargs` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`get_backup_retention_policy` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for +`get_backup_retention_policy` + | other definition for `get_backup_retention_policy` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractclient` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`try_get_backup_retention_policy` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for +`try_get_backup_retention_policy` + | other definition for `try_get_backup_retention_policy` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractclient` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`create_backup` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `create_backup` + | other definition for `create_backup` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractclient` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`try_create_backup` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `try_create_backup` + | other definition for `try_create_backup` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractclient` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`get_backup_details` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `get_backup_details` + | other definition for `get_backup_details` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractclient` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`try_get_backup_details` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `try_get_backup_details` + | other definition for `try_get_backup_details` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractclient` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name `get_backups` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `get_backups` + | other definition for `get_backups` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractclient` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`try_get_backups` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `try_get_backups` + | other definition for `try_get_backups` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractclient` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`restore_backup` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `restore_backup` + | other definition for `restore_backup` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractclient` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`try_restore_backup` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `try_restore_backup` + | other definition for `try_restore_backup` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractclient` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`archive_backup` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `archive_backup` + | other definition for `archive_backup` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractclient` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`try_archive_backup` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `try_archive_backup` + | other definition for `try_archive_backup` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractclient` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`validate_backup` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `validate_backup` + | other definition for `validate_backup` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractclient` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`try_validate_backup` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `try_validate_backup` + | other definition for `try_validate_backup` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractclient` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`cleanup_backups` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `cleanup_backups` + | other definition for `cleanup_backups` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractclient` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`try_cleanup_backups` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `try_cleanup_backups` + | other definition for `try_cleanup_backups` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractclient` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`set_backup_retention_policy` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for +`set_backup_retention_policy` + | other definition for `set_backup_retention_policy` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractclient` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`try_set_backup_retention_policy` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for +`try_set_backup_retention_policy` + | other definition for `try_set_backup_retention_policy` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractclient` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`get_platform_metrics` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `get_platform_metrics` + | other definition for `get_platform_metrics` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractclient` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`try_get_platform_metrics` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `try_get_platform_metrics` + | other definition for `try_get_platform_metrics` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractclient` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`get_performance_metrics` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `get_performance_metrics` + | other definition for `get_performance_metrics` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractclient` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`try_get_performance_metrics` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for +`try_get_performance_metrics` + | other definition for `try_get_performance_metrics` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractclient` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`get_financial_metrics` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `get_financial_metrics` + | other definition for `get_financial_metrics` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractclient` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0592]: duplicate definitions with name +`try_get_financial_metrics` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + | | + | duplicate definitions for `try_get_financial_metrics` + | other definition for `try_get_financial_metrics` + | + = note: this error originates in the attribute macro +`soroban_sdk::contractclient` (in Nightly builds, run with +-Z macro-backtrace for more info) + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\admin.rs:331:18 + | +331 | env.events().publish( + | ^^^^^^^ + | + = note: `#[warn(deprecated)]` on by default + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\admin.rs:339:18 + | +339 | env.events().publish( + | ^^^^^^^ + +error[E0061]: this method takes 8 arguments but 7 arguments +were supplied + --> src\test_default.rs:88:29 + | + 88 | let invoice_id = client.store_invoice( + | ^^^^^^^^^^^^^ + 89 | business, + 90 | &amount, + | ------- expected `&soroban_sdk::Address`, +found `&i128` + 91 | ¤cy, + | --------- expected `&i128`, found +`&soroban_sdk::Address` + 92 | &due_date, + | --------- argument #4 of type +`&soroban_sdk::Address` is missing + | +note: method defined here + --> src\lib.rs:437:12 + | +437 | pub fn store_invoice( + | ^^^^^^^^^^^^^ +... +442 | currency: Address, + | ----------------- +help: did you mean + | + 88 ~ let invoice_id = client.store_invoice( + 89 + business, + 90 + ¤cy, + 91 + &amount, + 92 + /* &soroban_sdk::Address */, + 93 + &due_date, + 94 + &String::from_str(env, "Test invoice"), + 95 + &InvoiceCategory::Services, + 96 + &Vec::new(env), + 97 ~ ); + | + +error[E0061]: this method takes 8 arguments but 7 arguments +were supplied + --> src\test_default.rs:245:29 + | +245 | let invoice_id = client.store_invoice( + | ^^^^^^^^^^^^^ +246 | &business, +247 | &1000, + | ----- expected `&soroban_sdk::Address`, found +`&{integer}` +248 | ¤cy, + | --------- expected `&i128`, found +`&soroban_sdk::Address` +249 | &due_date, + | --------- argument #4 of type +`&soroban_sdk::Address` is missing + | +note: method defined here + --> src\lib.rs:437:12 + | +437 | pub fn store_invoice( + | ^^^^^^^^^^^^^ +... +442 | currency: Address, + | ----------------- +help: did you mean + | +245 ~ let invoice_id = client.store_invoice( +246 + &business, +247 + ¤cy, +248 + &1000, +249 + /* &soroban_sdk::Address */, +250 + &due_date, +251 + &String::from_str(&env, "Test invoice"), +252 + &InvoiceCategory::Services, +253 + &Vec::new(&env), +254 ~ ); + | + +error[E0061]: this method takes 8 arguments but 7 arguments +were supplied + --> src\test_default.rs:275:29 + | +275 | let invoice_id = client.store_invoice( + | ^^^^^^^^^^^^^ +276 | &business, +277 | &1000, + | ----- expected `&soroban_sdk::Address`, found +`&{integer}` +278 | ¤cy, + | --------- expected `&i128`, found +`&soroban_sdk::Address` +279 | &due_date, + | --------- argument #4 of type +`&soroban_sdk::Address` is missing + | +note: method defined here + --> src\lib.rs:437:12 + | +437 | pub fn store_invoice( + | ^^^^^^^^^^^^^ +... +442 | currency: Address, + | ----------------- +help: did you mean + | +275 ~ let invoice_id = client.store_invoice( +276 + &business, +277 + ¤cy, +278 + &1000, +279 + /* &soroban_sdk::Address */, +280 + &due_date, +281 + &String::from_str(&env, "Test invoice"), +282 + &InvoiceCategory::Services, +283 + &Vec::new(&env), +284 ~ ); + | + +error[E0609]: no field `min_fee` on type +`std::result::Result` + --> src\test_fees_extended.rs:711:26 + | +711 | assert_eq!(structure.min_fee, 500); + | ^^^^^^^ unknown field + | +help: one of the expressions' fields has a field of the +same name + | +711 | assert_eq!(structure.unwrap().min_fee, 500); + | +++++++++ + +error[E0609]: no field `max_fee` on type +`std::result::Result` + --> src\test_fees_extended.rs:712:26 + | +712 | assert_eq!(structure.max_fee, 500); + | ^^^^^^^ unknown field + | +help: one of the expressions' fields has a field of the +same name + | +712 | assert_eq!(structure.unwrap().max_fee, 500); + | +++++++++ + +error[E0609]: no field `base_fee_bps` on type +`std::result::Result` + --> src\test_fees_extended.rs:764:26 + | +764 | assert_eq!(structure.base_fee_bps, 200); + | ^^^^^^^^^^^^ unknown field + | +help: one of the expressions' fields has a field of the +same name + | +764 | assert_eq!(structure.unwrap().base_fee_bps, 200); + | +++++++++ + +error[E0609]: no field `min_fee` on type +`std::result::Result` + --> src\test_fees_extended.rs:765:26 + | +765 | assert_eq!(structure.min_fee, 100); + | ^^^^^^^ unknown field + | +help: one of the expressions' fields has a field of the +same name + | +765 | assert_eq!(structure.unwrap().min_fee, 100); + | +++++++++ + +error[E0609]: no field `max_fee` on type +`std::result::Result` + --> src\test_fees_extended.rs:766:26 + | +766 | assert_eq!(structure.max_fee, 100_000); + | ^^^^^^^ unknown field + | +help: one of the expressions' fields has a field of the +same name + | +766 | assert_eq!(structure.unwrap().max_fee, 100_000); + | +++++++++ + +error[E0609]: no field `min_fee` on type +`std::result::Result` + --> src\test_fees_extended.rs:792:26 + | +792 | assert_eq!(structure.min_fee, 0); + | ^^^^^^^ unknown field + | +help: one of the expressions' fields has a field of the +same name + | +792 | assert_eq!(structure.unwrap().min_fee, 0); + | +++++++++ + +error[E0609]: no field `min_fee` on type +`std::result::Result` + --> src\test_fees_extended.rs:818:26 + | +818 | assert_eq!(structure.min_fee, 0); + | ^^^^^^^ unknown field + | +help: one of the expressions' fields has a field of the +same name + | +818 | assert_eq!(structure.unwrap().min_fee, 0); + | +++++++++ + +error[E0609]: no field `max_fee` on type +`std::result::Result` + --> src\test_fees_extended.rs:819:26 + | +819 | assert_eq!(structure.max_fee, 0); + | ^^^^^^^ unknown field + | +help: one of the expressions' fields has a field of the +same name + | +819 | assert_eq!(structure.unwrap().max_fee, 0); + | +++++++++ + +error[E0609]: no field `is_active` on type +`std::result::Result` + --> src\test_fees_extended.rs:820:24 + | +820 | assert!(!structure.is_active); + | ^^^^^^^^^ unknown field + | +help: one of the expressions' fields has a field of the +same name + | +820 | assert!(!structure.unwrap().is_active); + | +++++++++ + +error[E0609]: no field `base_fee_bps` on type +`std::result::Result` + --> src\test_fees_extended.rs:856:24 + | +856 | assert_eq!(updated.base_fee_bps, 250); + | ^^^^^^^^^^^^ unknown field + | +help: one of the expressions' fields has a field of the +same name + | +856 | assert_eq!(updated.unwrap().base_fee_bps, 250); + | +++++++++ + +error[E0609]: no field `min_fee` on type +`std::result::Result` + --> src\test_fees_extended.rs:857:24 + | +857 | assert_eq!(updated.min_fee, 75); + | ^^^^^^^ unknown field + | +help: one of the expressions' fields has a field of the +same name + | +857 | assert_eq!(updated.unwrap().min_fee, 75); + | +++++++++ + +error[E0609]: no field `max_fee` on type +`std::result::Result` + --> src\test_fees_extended.rs:858:24 + | +858 | assert_eq!(updated.max_fee, 300_000); + | ^^^^^^^ unknown field + | +help: one of the expressions' fields has a field of the +same name + | +858 | assert_eq!(updated.unwrap().max_fee, 300_000); + | +++++++++ + +error[E0609]: no field `fee_type` on type +`std::result::Result` + --> src\test_fees_extended.rs:971:26 + | +971 | assert_eq!(structure.fee_type, +crate::fees::FeeType::LatePayment); + | ^^^^^^^^ unknown field + | +help: one of the expressions' fields has a field of the +same name + | +971 | assert_eq!(structure.unwrap().fee_type, +crate::fees::FeeType::LatePayment); + | +++++++++ + +error[E0599]: no function or associated item named +`get_invoices_with_ratings_count` found for struct +`invoice::InvoiceStorage` in the current scope + --> src\analytics.rs:736:45 + | + 736 | crate::invoice::InvoiceStorage::get_invoi +ces_with_ratings_count(env); + | +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function or associated item +not found in `invoice::InvoiceStorage` + | + ::: src\invoice.rs:792:1 + | + 792 | pub struct InvoiceStorage; + | ------------------------- function or associated +item `get_invoices_with_ratings_count` not found for this +struct + | +help: there is an associated function +`get_invoices_with_rating_above` with a similar name + --> src\invoice.rs:1058:5 + | +1058 | pub fn get_invoices_with_rating_above(env: &Env, +threshold: u32) -> Vec> { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error[E0599]: no function or associated item named +`get_investor_investments` found for struct +`AnalyticsCalculator` in the current scope + --> src\analytics.rs:917:37 + | +306 | pub struct AnalyticsCalculator; + | ------------------------------ function or associated +item `get_investor_investments` not found for this struct +... +917 | let all_investments = +Self::get_investor_investments(env, investor); + | +^^^^^^^^^^^^^^^^^^^^^^^^ function or associated item not +found in `AnalyticsCalculator` + +error[E0599]: no function or associated item named +`initialize_category_counters` found for struct +`AnalyticsCalculator` in the current scope + --> src\analytics.rs:923:46 + | +306 | pub struct AnalyticsCalculator; + | ------------------------------ function or associated +item `initialize_category_counters` not found for this +struct +... +923 | let mut preferred_categories = +Self::initialize_category_counters(env); + | +^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function or associated item +not found in `AnalyticsCalculator` + +error[E0599]: no function or associated item named +`increment_category_counter` found for struct +`AnalyticsCalculator` in the current scope + --> src\analytics.rs:933:27 + | +306 | pub struct AnalyticsCalculator; + | ------------------------------ function or associated +item `increment_category_counter` not found for this struct +... +933 | +Self::increment_category_counter(&mut preferred_categories, +&invoice.category); + | ^^^^^^^^^^^^^^^^^^^^^^^^^^ +function or associated item not found in +`AnalyticsCalculator` + +error[E0599]: no function or associated item named +`validate_investor_report` found for struct +`AnalyticsCalculator` in the current scope + --> src\analytics.rs:1024:15 + | + 306 | pub struct AnalyticsCalculator; + | ------------------------------ function or +associated item `validate_investor_report` not found for +this struct +... +1024 | Self::validate_investor_report(&report)?; + | ^^^^^^^^^^^^^^^^^^^^^^^^ function or +associated item not found in `AnalyticsCalculator` + | +help: there is an associated function +`generate_investor_report` with a similar name + --> src\analytics.rs:907:5 + | + 907 | / pub fn generate_investor_report( + 908 | | env: &Env, + 909 | | investor: &Address, + 910 | | period: TimePeriod, + 911 | | ) -> Result { + | |________________________________________________^ + +error[E0599]: no function or associated item named +`require_admin_auth` found for struct `AdminStorage` in the +current scope + --> src\currency.rs:20:23 + | + 20 | AdminStorage::require_admin_auth(env, admin)?; + | ^^^^^^^^^^^^^^^^^^ function or +associated item not found in `AdminStorage` + | + ::: src\admin.rs:39:1 + | + 39 | pub struct AdminStorage; + | ----------------------- function or associated item +`require_admin_auth` not found for this struct + | +note: if you're trying to build a new `AdminStorage` +consider using one of the following associated functions: + AdminStorage::with_admin_auth + AdminStorage::with_current_admin + --> src\admin.rs:368:5 + | +368 | / pub fn with_admin_auth( +369 | | env: &Env, +370 | | admin: &Address, +371 | | operation: F, +372 | | ) -> Result +373 | | where +374 | | F: FnOnce() -> Result, + | |__________________________________________________^ +... +393 | / pub fn with_current_admin(env: &Env, +operation: F) -> Result +394 | | where +395 | | F: FnOnce(&Address) -> Result, + | +|__________________________________________________________^ +help: there is an associated function `require_admin` with +a similar name + | + 20 - AdminStorage::require_admin_auth(env, admin)?; + 20 + AdminStorage::require_admin(env, admin)?; + | + +error[E0599]: no function or associated item named +`require_admin_auth` found for struct `AdminStorage` in the +current scope + --> src\currency.rs:89:23 + | + 89 | AdminStorage::require_admin_auth(env, admin)?; + | ^^^^^^^^^^^^^^^^^^ function or +associated item not found in `AdminStorage` + | + ::: src\admin.rs:39:1 + | + 39 | pub struct AdminStorage; + | ----------------------- function or associated item +`require_admin_auth` not found for this struct + | +note: if you're trying to build a new `AdminStorage` +consider using one of the following associated functions: + AdminStorage::with_admin_auth + AdminStorage::with_current_admin + --> src\admin.rs:368:5 + | +368 | / pub fn with_admin_auth( +369 | | env: &Env, +370 | | admin: &Address, +371 | | operation: F, +372 | | ) -> Result +373 | | where +374 | | F: FnOnce() -> Result, + | |__________________________________________________^ +... +393 | / pub fn with_current_admin(env: &Env, +operation: F) -> Result +394 | | where +395 | | F: FnOnce(&Address) -> Result, + | +|__________________________________________________________^ +help: there is an associated function `require_admin` with +a similar name + | + 89 - AdminStorage::require_admin_auth(env, admin)?; + 89 + AdminStorage::require_admin(env, admin)?; + | + +error[E0599]: no variant or associated item named +`Disputed` found for enum `dispute::DisputeStatus` in the +current scope + --> src\dispute.rs:75:45 + | +10 | pub enum DisputeStatus { + | ---------------------- variant or associated item +`Disputed` not found for this enum +... +75 | invoice.dispute_status = DisputeStatus::Disputed; + | ^^^^^^^^ +variant or associated item not found in +`dispute::DisputeStatus` + +error[E0425]: cannot find function `add_to_dispute_index` +in this scope + --> src\dispute.rs:91:5 + | +91 | add_to_dispute_index(env, invoice_id); + | ^^^^^^^^^^^^^^^^^^^^ not found in this scope + +error[E0425]: cannot find function `assert_is_admin` in +this scope + --> src\dispute.rs:120:5 + | +120 | assert_is_admin(env, admin)?; + | ^^^^^^^^^^^^^^^ not found in this scope + +error[E0599]: no variant or associated item named `None` +found for enum `dispute::DisputeStatus` in the current scope + --> src\dispute.rs:127:49 + | + 10 | pub enum DisputeStatus { + | ---------------------- variant or associated item +`None` not found for this enum +... +127 | if invoice.dispute_status == DisputeStatus::None { + | ^^^^ +variant or associated item not found in +`dispute::DisputeStatus` + | +help: there is a method `ne` with a similar name + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cmp.rs:264:5 + +error[E0599]: no variant or associated item named +`Disputed` found for enum `dispute::DisputeStatus` in the +current scope + --> src\dispute.rs:132:49 + | + 10 | pub enum DisputeStatus { + | ---------------------- variant or associated item +`Disputed` not found for this enum +... +132 | if invoice.dispute_status != +DisputeStatus::Disputed { + | +^^^^^^^^ variant or associated item not found in +`dispute::DisputeStatus` + +error[E0425]: cannot find function `assert_is_admin` in +this scope + --> src\dispute.rs:171:5 + | +171 | assert_is_admin(env, admin)?; + | ^^^^^^^^^^^^^^^ not found in this scope + +error[E0599]: no variant or associated item named `None` +found for enum `dispute::DisputeStatus` in the current scope + --> src\dispute.rs:178:49 + | + 10 | pub enum DisputeStatus { + | ---------------------- variant or associated item +`None` not found for this enum +... +178 | if invoice.dispute_status == DisputeStatus::None { + | ^^^^ +variant or associated item not found in +`dispute::DisputeStatus` + | +help: there is a method `ne` with a similar name + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cmp.rs:264:5 + +error[E0599]: no variant or associated item named `None` +found for enum `dispute::DisputeStatus` in the current scope + --> src\dispute.rs:222:49 + | + 10 | pub enum DisputeStatus { + | ---------------------- variant or associated item +`None` not found for this enum +... +222 | if invoice.dispute_status == DisputeStatus::None { + | ^^^^ +variant or associated item not found in +`dispute::DisputeStatus` + | +help: there is a method `ne` with a similar name + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cmp.rs:264:5 + +error[E0425]: cannot find function `get_dispute_index` in +this scope + --> src\dispute.rs:237:5 + | +237 | get_dispute_index(env) + | ^^^^^^^^^^^^^^^^^ not found in this scope + +error[E0425]: cannot find function `get_dispute_index` in +this scope + --> src\dispute.rs:252:17 + | +252 | let index = get_dispute_index(env); + | ^^^^^^^^^^^^^^^^^ not found in this +scope + +error[E0599]: no function or associated item named +`require_admin_auth` found for struct `AdminStorage` in the +current scope + --> src\emergency.rs:105:23 + | +105 | AdminStorage::require_admin_auth(env, admin)?; + | ^^^^^^^^^^^^^^^^^^ function or +associated item not found in `AdminStorage` + | + ::: src\admin.rs:39:1 + | + 39 | pub struct AdminStorage; + | ----------------------- function or associated item +`require_admin_auth` not found for this struct + | +note: if you're trying to build a new `AdminStorage` +consider using one of the following associated functions: + AdminStorage::with_admin_auth + AdminStorage::with_current_admin + --> src\admin.rs:368:5 + | +368 | / pub fn with_admin_auth( +369 | | env: &Env, +370 | | admin: &Address, +371 | | operation: F, +372 | | ) -> Result +373 | | where +374 | | F: FnOnce() -> Result, + | |__________________________________________________^ +... +393 | / pub fn with_current_admin(env: &Env, +operation: F) -> Result +394 | | where +395 | | F: FnOnce(&Address) -> Result, + | +|__________________________________________________________^ +help: there is an associated function `require_admin` with +a similar name + | +105 - AdminStorage::require_admin_auth(env, admin)?; +105 + AdminStorage::require_admin(env, admin)?; + | + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\emergency.rs:140:22 + | +140 | env.events().publish( + | ^^^^^^^ + +error[E0599]: no function or associated item named +`require_admin_auth` found for struct `AdminStorage` in the +current scope + --> src\emergency.rs:176:23 + | +176 | AdminStorage::require_admin_auth(env, admin)?; + | ^^^^^^^^^^^^^^^^^^ function or +associated item not found in `AdminStorage` + | + ::: src\admin.rs:39:1 + | + 39 | pub struct AdminStorage; + | ----------------------- function or associated item +`require_admin_auth` not found for this struct + | +note: if you're trying to build a new `AdminStorage` +consider using one of the following associated functions: + AdminStorage::with_admin_auth + AdminStorage::with_current_admin + --> src\admin.rs:368:5 + | +368 | / pub fn with_admin_auth( +369 | | env: &Env, +370 | | admin: &Address, +371 | | operation: F, +372 | | ) -> Result +373 | | where +374 | | F: FnOnce() -> Result, + | |__________________________________________________^ +... +393 | / pub fn with_current_admin(env: &Env, +operation: F) -> Result +394 | | where +395 | | F: FnOnce(&Address) -> Result, + | +|__________________________________________________________^ +help: there is an associated function `require_admin` with +a similar name + | +176 - AdminStorage::require_admin_auth(env, admin)?; +176 + AdminStorage::require_admin(env, admin)?; + | + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\emergency.rs:208:22 + | +208 | env.events().publish( + | ^^^^^^^ + +error[E0599]: no function or associated item named +`require_admin_auth` found for struct `AdminStorage` in the +current scope + --> src\emergency.rs:246:23 + | +246 | AdminStorage::require_admin_auth(env, admin)?; + | ^^^^^^^^^^^^^^^^^^ function or +associated item not found in `AdminStorage` + | + ::: src\admin.rs:39:1 + | + 39 | pub struct AdminStorage; + | ----------------------- function or associated item +`require_admin_auth` not found for this struct + | +note: if you're trying to build a new `AdminStorage` +consider using one of the following associated functions: + AdminStorage::with_admin_auth + AdminStorage::with_current_admin + --> src\admin.rs:368:5 + | +368 | / pub fn with_admin_auth( +369 | | env: &Env, +370 | | admin: &Address, +371 | | operation: F, +372 | | ) -> Result +373 | | where +374 | | F: FnOnce() -> Result, + | |__________________________________________________^ +... +393 | / pub fn with_current_admin(env: &Env, +operation: F) -> Result +394 | | where +395 | | F: FnOnce(&Address) -> Result, + | +|__________________________________________________________^ +help: there is an associated function `require_admin` with +a similar name + | +246 - AdminStorage::require_admin_auth(env, admin)?; +246 + AdminStorage::require_admin(env, admin)?; + | + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\emergency.rs:268:22 + | +268 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:106:18 + | +106 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:129:18 + | +129 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:149:18 + | +149 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:173:18 + | +173 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:191:18 + | +191 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:207:18 + | +207 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:235:18 + | +235 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:271:18 + | +271 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:299:18 + | +299 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:329:18 + | +329 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:348:18 + | +348 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:369:18 + | +369 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:391:18 + | +391 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:426:18 + | +426 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:452:18 + | +452 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:472:18 + | +472 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:497:18 + | +497 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:518:18 + | +518 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:543:18 + | +543 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:567:18 + | +567 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:585:18 + | +585 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:612:18 + | +612 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:641:18 + | +641 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:669:18 + | +669 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:698:18 + | +698 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:724:18 + | +724 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:750:18 + | +750 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:773:18 + | +773 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:796:18 + | +796 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:809:18 + | +809 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:822:18 + | +822 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:834:18 + | +834 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:853:18 + | +853 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:870:18 + | +870 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:887:18 + | +887 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:900:10 + | +900 | .publish((symbol_short!("aud_qry"),), +(query_type, result_count)); + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:921:18 + | +921 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:944:18 + | +944 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:962:18 + | +962 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:988:18 + | +988 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:1006:18 + | +1006 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:1032:18 + | +1032 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:1072:18 + | +1072 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\events.rs:1095:18 + | +1095 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\fees.rs:760:22 + | +760 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\fees.rs:886:22 + | +886 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\init.rs:569:18 + | +569 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\init.rs:591:18 + | +591 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\init.rs:605:18 + | +605 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\init.rs:613:18 + | +613 | env.events().publish( + | ^^^^^^^ + +error[E0599]: no function or associated item named +`metadata_customer_key` found for struct +`invoice::InvoiceStorage` in the current scope + --> src\invoice.rs:1116:33 + | + 792 | pub struct InvoiceStorage; + | ------------------------- function or associated +item `metadata_customer_key` not found for this struct +... +1116 | let key = +Self::metadata_customer_key(name); + | +^^^^^^^^^^^^^^^^^^^^^ function or associated item not found +in `invoice::InvoiceStorage` + +error[E0599]: no function or associated item named +`metadata_tax_key` found for struct +`invoice::InvoiceStorage` in the current scope + --> src\invoice.rs:1123:33 + | + 792 | pub struct InvoiceStorage; + | ------------------------- function or associated +item `metadata_tax_key` not found for this struct +... +1123 | let key = +Self::metadata_tax_key(tax); + | ^^^^^^^^^^^^^^^^ +function or associated item not found in +`invoice::InvoiceStorage` + +error[E0599]: no function or associated item named +`metadata_customer_key` found for struct +`invoice::InvoiceStorage` in the current scope + --> src\invoice.rs:1131:29 + | + 792 | pub struct InvoiceStorage; + | ------------------------- function or associated +item `metadata_customer_key` not found for this struct +... +1131 | let key = +Self::metadata_customer_key(&metadata.customer_name); + | ^^^^^^^^^^^^^^^^^^^^^ +function or associated item not found in +`invoice::InvoiceStorage` + +error[E0599]: no function or associated item named +`metadata_tax_key` found for struct +`invoice::InvoiceStorage` in the current scope + --> src\invoice.rs:1136:29 + | + 792 | pub struct InvoiceStorage; + | ------------------------- function or associated +item `metadata_tax_key` not found for this struct +... +1136 | let key = +Self::metadata_tax_key(&metadata.tax_id); + | ^^^^^^^^^^^^^^^^ +function or associated item not found in +`invoice::InvoiceStorage` + +error[E0599]: no function or associated item named +`metadata_customer_key` found for struct +`invoice::InvoiceStorage` in the current scope + --> src\invoice.rs:1144:25 + | + 792 | pub struct InvoiceStorage; + | ------------------------- function or associated +item `metadata_customer_key` not found for this struct +... +1144 | +.get(&Self::metadata_customer_key(customer_name)) + | ^^^^^^^^^^^^^^^^^^^^^ +function or associated item not found in +`invoice::InvoiceStorage` + +error[E0599]: no function or associated item named +`metadata_tax_key` found for struct +`invoice::InvoiceStorage` in the current scope + --> src\invoice.rs:1151:25 + | + 792 | pub struct InvoiceStorage; + | ------------------------- function or associated +item `metadata_tax_key` not found for this struct +... +1151 | .get(&Self::metadata_tax_key(tax_id)) + | ^^^^^^^^^^^^^^^^ function or +associated item not found in `invoice::InvoiceStorage` + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\notifications.rs:264:22 + | +264 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\notifications.rs:311:22 + | +311 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\notifications.rs:348:14 + | +348 | .publish((symbol_short!("pref_up"),), +(user.clone(),)); + | ^^^^^^^ + +error[E0599]: no function or associated item named +`require_admin_auth` found for struct `AdminStorage` in the +current scope + --> src\pause.rs:45:23 + | + 45 | AdminStorage::require_admin_auth(env, admin)?; + | ^^^^^^^^^^^^^^^^^^ function or +associated item not found in `AdminStorage` + | + ::: src\admin.rs:39:1 + | + 39 | pub struct AdminStorage; + | ----------------------- function or associated item +`require_admin_auth` not found for this struct + | +note: if you're trying to build a new `AdminStorage` +consider using one of the following associated functions: + AdminStorage::with_admin_auth + AdminStorage::with_current_admin + --> src\admin.rs:368:5 + | +368 | / pub fn with_admin_auth( +369 | | env: &Env, +370 | | admin: &Address, +371 | | operation: F, +372 | | ) -> Result +373 | | where +374 | | F: FnOnce() -> Result, + | |__________________________________________________^ +... +393 | / pub fn with_current_admin(env: &Env, +operation: F) -> Result +394 | | where +395 | | F: FnOnce(&Address) -> Result, + | +|__________________________________________________________^ +help: there is an associated function `require_admin` with +a similar name + | + 45 - AdminStorage::require_admin_auth(env, admin)?; + 45 + AdminStorage::require_admin(env, admin)?; + | + +error[E0308]: mismatched types + --> src\pause.rs:61:20 + | +59 | pub fn require_not_paused(env: &Env) { + | - help: a +return type might be missing here: `-> _` +60 | if Self::is_paused(env) { +61 | return +Err(QuickLendXError::ContractPaused); + | +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `()`, found +`Result<_, QuickLendXError>` + | + = note: expected unit type `()` + found enum `std::result::Result<_, +QuickLendXError>` + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\settlement.rs:506:18 + | +506 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\settlement.rs:524:18 + | +524 | env.events().publish( + | ^^^^^^^ + +error[E0277]: the type `UnsafeCell` may contain +interior mutability and a reference may not be safely +transferable across a catch_unwind boundary + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call + 74 | | client.initialize_admin(&admin); + 75 | | }); + | |_________^ `UnsafeCell` may contain +interior mutability and a reference may not be safely +transferable across a catch_unwind boundary + | + = help: within `RefCell`, the trait +`RefUnwindSafe` is not implemented for +`UnsafeCell` +note: required because it appears within the type +`RefCell` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 + = note: required for `Rc>` to +implement `RefUnwindSafe` +note: required because it appears within the type +`soroban_sdk::env::EnvTestState` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:256:8 + | +256 | struct EnvTestState { + | ^^^^^^^^^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type `UnsafeCell` may +contain interior mutability and a reference may not be +safely transferable across a catch_unwind boundary + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call + 74 | | client.initialize_admin(&admin); + 75 | | }); + | |_________^ `UnsafeCell` may contain +interior mutability and a reference may not be safely +transferable across a catch_unwind boundary + | + = help: within `RefCell`, the trait +`RefUnwindSafe` is not implemented for +`UnsafeCell` +note: required because it appears within the type +`RefCell` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 + = note: required for `Rc>` to +implement `RefUnwindSafe` +note: required because it appears within the type +`soroban_sdk::env::EnvTestState` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:256:8 + | +256 | struct EnvTestState { + | ^^^^^^^^^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type `UnsafeCell>` may contain +interior mutability and a reference may not be safely +transferable across a catch_unwind boundary + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call + 74 | | client.initialize_admin(&admin); + 75 | | }); + | |_________^ `UnsafeCell>` may contain +interior mutability and a reference may not be safely +transferable across a catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for `UnsafeCell>` +note: required because it appears within the type `RefCell>` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type `UnsafeCell>` may contain interior mutability +and a reference may not be safely transferable across a +catch_unwind boundary + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call + 74 | | client.initialize_admin(&admin); + 75 | | }); + | |_________^ `UnsafeCell>` may contain interior mutability and a +reference may not be safely transferable across a +catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for `UnsafeCell>` +note: required because it appears within the type +`RefCell>` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type +`UnsafeCell>` may contain +interior mutability and a reference may not be safely +transferable across a catch_unwind boundary + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call + 74 | | client.initialize_admin(&admin); + 75 | | }); + | |_________^ +`UnsafeCell>` may contain +interior mutability and a reference may not be safely +transferable across a catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for +`UnsafeCell>` +note: required because it appears within the type +`RefCell>` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type `UnsafeCell>` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call + 74 | | client.initialize_admin(&admin); + 75 | | }); + | |_________^ `UnsafeCell>` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for `UnsafeCell>` +note: required because it appears within the type `RefCell>` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type +`UnsafeCell` may +contain interior mutability and a reference may not be +safely transferable across a catch_unwind boundary + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call + 74 | | client.initialize_admin(&admin); + 75 | | }); + | |_________^ +`UnsafeCell` may +contain interior mutability and a reference may not be +safely transferable across a catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for +`UnsafeCell` +note: required because it appears within the type +`RefCell` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type `UnsafeCell>` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call + 74 | | client.initialize_admin(&admin); + 75 | | }); + | |_________^ `UnsafeCell>` may contain interior mutability +and a reference may not be safely transferable across a +catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for `UnsafeCell>` +note: required because it appears within the type `RefCell>` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type `UnsafeCell` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call + 74 | | client.initialize_admin(&admin); + 75 | | }); + | |_________^ `UnsafeCell` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for `UnsafeCell` +note: required because it appears within the type `RefCell` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type +`UnsafeCell` +may contain interior mutability and a reference may not be +safely transferable across a catch_unwind boundary + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call + 74 | | client.initialize_admin(&admin); + 75 | | }); + | |_________^ +`UnsafeCell` +may contain interior mutability and a reference may not be +safely transferable across a catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for +`UnsafeCell` +note: required because it appears within the type +`RefCell` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type `UnsafeCell` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call + 74 | | client.initialize_admin(&admin); + 75 | | }); + | |_________^ `UnsafeCell` may contain interior mutability +and a reference may not be safely transferable across a +catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for `UnsafeCell` +note: required because it appears within the type `RefCell` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type `UnsafeCell>` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call + 74 | | client.initialize_admin(&admin); + 75 | | }); + | |_________^ `UnsafeCell>` may contain interior mutability +and a reference may not be safely transferable across a +catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for `UnsafeCell>` +note: required because it appears within the type `RefCell>` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type `UnsafeCell` may contain +interior mutability and a reference may not be safely +transferable across a catch_unwind boundary + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call + 74 | | client.initialize_admin(&admin); + 75 | | }); + | |_________^ `UnsafeCell` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for +`UnsafeCell` +note: required because it appears within the type +`RefCell` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type `UnsafeCell>` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call + 74 | | client.initialize_admin(&admin); + 75 | | }); + | |_________^ `UnsafeCell>` may contain interior mutability +and a reference may not be safely transferable across a +catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for `UnsafeCell>` +note: required because it appears within the type `RefCell>` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type `UnsafeCell>>` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call + 74 | | client.initialize_admin(&admin); + 75 | | }); + | |_________^ `UnsafeCell>>` may contain interior mutability and +a reference may not be safely transferable across a +catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for +`UnsafeCell>>` +note: required because it appears within the type +`RefCell>>` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: the full name for the type has been written to ' +C:\Users\USER\Desktop\drips\quicklendx-protocol\quicklendx-c +ontracts\target\debug\deps\quicklendx_contracts-477cda782802 +d717.long-type-10826229335591403730.txt' + = note: consider using `--verbose` to print the full +type name to the console + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type `UnsafeCell>` may contain +interior mutability and a reference may not be safely +transferable across a catch_unwind boundary + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call + 74 | | client.initialize_admin(&admin); + 75 | | }); + | |_________^ `UnsafeCell>` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for `UnsafeCell>` +note: required because it appears within the type `RefCell>` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type `UnsafeCell) -> ...>>>` may contain interior mutability +and a reference may not be safely transferable across a +catch_unwind boundary + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call + 74 | | client.initialize_admin(&admin); + 75 | | }); + | |_________^ `UnsafeCell) -> ...>>>` may contain interior mutability +and a reference may not be safely transferable across a +catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for +`UnsafeCell) -> +...>>>` +note: required because it appears within the type +`RefCell) -> +Result<(), ...>>>>` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: the full name for the type has been written to ' +C:\Users\USER\Desktop\drips\quicklendx-protocol\quicklendx-c +ontracts\target\debug\deps\quicklendx_contracts-477cda782802 +d717.long-type-6633859924656124036.txt' + = note: consider using `--verbose` to print the full +type name to the console + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type `UnsafeCell>>` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call + 74 | | client.initialize_admin(&admin); + 75 | | }); + | |_________^ `UnsafeCell>>` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for +`UnsafeCell>>` +note: required because it appears within the type +`RefCell>>` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: the full name for the type has been written to ' +C:\Users\USER\Desktop\drips\quicklendx-protocol\quicklendx-c +ontracts\target\debug\deps\quicklendx_contracts-477cda782802 +d717.long-type-3312123213956257903.txt' + = note: consider using `--verbose` to print the full +type name to the console + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type +`UnsafeCell` +may contain interior mutability and a reference may not be +safely transferable across a catch_unwind boundary + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call + 74 | | client.initialize_admin(&admin); + 75 | | }); + | |_________^ +`UnsafeCell` +may contain interior mutability and a reference may not be +safely transferable across a catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for +`UnsafeCell` +note: required because it appears within the type +`RefCell` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type `UnsafeCell` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call + 74 | | client.initialize_admin(&admin); + 75 | | }); + | |_________^ `UnsafeCell` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for `UnsafeCell` +note: required because it appears within the type `RefCell +` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type `UnsafeCell` may contain +interior mutability and a reference may not be safely +transferable across a catch_unwind boundary + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call + 74 | | client.initialize_admin(&admin); + 75 | | }); + | |_________^ `UnsafeCell` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + | + = help: within `RefCell`, the trait +`RefUnwindSafe` is not implemented for `UnsafeCell` +note: required because it appears within the type +`Cell` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:313:12 +note: required because it appears within the type +`RefCell` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 + = note: required for `Rc>` to +implement `RefUnwindSafe` +note: required because it appears within the type +`soroban_sdk::env::EnvTestState` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:256:8 + | +256 | struct EnvTestState { + | ^^^^^^^^^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type +`UnsafeCell` may +contain interior mutability and a reference may not be +safely transferable across a catch_unwind boundary + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound +introduced by this call + 74 | | client.initialize_admin(&admin); + 75 | | }); + | |_________^ +`UnsafeCell` may +contain interior mutability and a reference may not be +safely transferable across a catch_unwind boundary + | + = help: within +`RefCell`, the trait +`RefUnwindSafe` is not implemented for +`UnsafeCell` +note: required because it appears within the type +`RefCell` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libr +ary\core\src\cell.rs:827:12 + = note: required for +`Rc>` to +implement `RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::budget::Budget` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-19 +49cf8c6b5b557f\soroban-env-host-25.0.1\src\budget.rs:1201:12 + | +1201 | pub struct Budget(pub(crate) +Rc>); + | ^^^^^^ +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-19 +49cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-19 +49cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | + 175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-19 +49cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | + 222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | + 111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` +to implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_admin.rs:73:47 + | + 73 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libr +ary\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0599]: no method named `is_empty` found for struct +`ContractEvents` in the current scope + --> src\test_admin.rs:126:25 + | +126 | assert!(!events.is_empty(), "Initialization +must emit event"); + | ^^^^^^^^ method not found in +`ContractEvents` + +error[E0608]: cannot index into a value of type +`ContractEvents` + --> src\test_admin.rs:128:28 + | +128 | let event = &events[0]; + | ^^^ + +error[E0061]: this method takes 1 argument but 2 arguments +were supplied + --> src\test_admin.rs:141:29 + | +141 | let result = +client.try_transfer_admin(&admin1, &admin2); + | ^^^^^^^^^^^^^^^^^^ + ------- unexpected argument #2 of type +`&soroban_sdk::Address` + | +note: method defined here + --> src\lib.rs:195:12 + | +195 | pub fn transfer_admin(env: Env, new_admin: +Address) -> Result<(), QuickLendXError> { + | ^^^^^^^^^^^^^^ +help: remove the extra argument + | +141 - let result = +client.try_transfer_admin(&admin1, &admin2); +141 + let result = +client.try_transfer_admin(&admin1); + | + +error[E0061]: this method takes 1 argument but 2 arguments +were supplied + --> src\test_admin.rs:166:29 + | +166 | let result = +client.try_transfer_admin(&non_admin, &admin2); + | ^^^^^^^^^^^^^^^^^^ + ------- unexpected argument #2 of type +`&soroban_sdk::Address` + | +note: method defined here + --> src\lib.rs:195:12 + | +195 | pub fn transfer_admin(env: Env, new_admin: +Address) -> Result<(), QuickLendXError> { + | ^^^^^^^^^^^^^^ +help: remove the extra argument + | +166 - let result = +client.try_transfer_admin(&non_admin, &admin2); +166 + let result = +client.try_transfer_admin(&non_admin); + | + +error[E0061]: this method takes 1 argument but 2 arguments +were supplied + --> src\test_admin.rs:181:29 + | +181 | let result = +client.try_transfer_admin(&admin, &admin); + | ^^^^^^^^^^^^^^^^^^ + ------ unexpected argument #2 of type +`&soroban_sdk::Address` + | +note: method defined here + --> src\lib.rs:195:12 + | +195 | pub fn transfer_admin(env: Env, new_admin: +Address) -> Result<(), QuickLendXError> { + | ^^^^^^^^^^^^^^ +help: remove the extra argument + | +181 - let result = +client.try_transfer_admin(&admin, &admin); +181 + let result = +client.try_transfer_admin(&admin); + | + +error[E0061]: this method takes 1 argument but 2 arguments +were supplied + --> src\test_admin.rs:199:29 + | +199 | let result = +client.try_transfer_admin(&admin1, &admin2); + | ^^^^^^^^^^^^^^^^^^ + ------- unexpected argument #2 of type +`&soroban_sdk::Address` + | +note: method defined here + --> src\lib.rs:195:12 + | +195 | pub fn transfer_admin(env: Env, new_admin: +Address) -> Result<(), QuickLendXError> { + | ^^^^^^^^^^^^^^ +help: remove the extra argument + | +199 - let result = +client.try_transfer_admin(&admin1, &admin2); +199 + let result = +client.try_transfer_admin(&admin1); + | + +error[E0061]: this method takes 1 argument but 2 arguments +were supplied + --> src\test_admin.rs:208:16 + | +208 | client.transfer_admin(&admin1, &admin2); + | ^^^^^^^^^^^^^^ ------- +unexpected argument #2 of type `&soroban_sdk::Address` + | +note: method defined here + --> src\lib.rs:195:12 + | +195 | pub fn transfer_admin(env: Env, new_admin: +Address) -> Result<(), QuickLendXError> { + | ^^^^^^^^^^^^^^ +help: remove the extra argument + | +208 - client.transfer_admin(&admin1, &admin2); +208 + client.transfer_admin(&admin1); + | + +error[E0599]: no method named `iter` found for struct +`ContractEvents` in the current scope + --> src\test_admin.rs:212:14 + | +211 | let transfer_events: Vec<_> = events + | _______________________________________- +212 | | .iter() + | | -^^^^ method not found in +`ContractEvents` + | |_____________| + | + +error[E0061]: this method takes 1 argument but 2 arguments +were supplied + --> src\test_admin.rs:226:16 + | +226 | client.transfer_admin(&admin1, &admin2); + | ^^^^^^^^^^^^^^ ------- +unexpected argument #2 of type `&soroban_sdk::Address` + | +note: method defined here + --> src\lib.rs:195:12 + | +195 | pub fn transfer_admin(env: Env, new_admin: +Address) -> Result<(), QuickLendXError> { + | ^^^^^^^^^^^^^^ +help: remove the extra argument + | +226 - client.transfer_admin(&admin1, &admin2); +226 + client.transfer_admin(&admin1); + | + +error[E0061]: this method takes 1 argument but 2 arguments +were supplied + --> src\test_admin.rs:230:16 + | +230 | client.transfer_admin(&admin2, &admin3); + | ^^^^^^^^^^^^^^ ------- +unexpected argument #2 of type `&soroban_sdk::Address` + | +note: method defined here + --> src\lib.rs:195:12 + | +195 | pub fn transfer_admin(env: Env, new_admin: +Address) -> Result<(), QuickLendXError> { + | ^^^^^^^^^^^^^^ +help: remove the extra argument + | +230 - client.transfer_admin(&admin2, &admin3); +230 + client.transfer_admin(&admin2); + | + +error[E0061]: this method takes 1 argument but 2 arguments +were supplied + --> src\test_admin.rs:234:29 + | +234 | let result = +client.try_transfer_admin(&admin1, &admin2); + | ^^^^^^^^^^^^^^^^^^ + ------- unexpected argument #2 of type +`&soroban_sdk::Address` + | +note: method defined here + --> src\lib.rs:195:12 + | +195 | pub fn transfer_admin(env: Env, new_admin: +Address) -> Result<(), QuickLendXError> { + | ^^^^^^^^^^^^^^ +help: remove the extra argument + | +234 - let result = +client.try_transfer_admin(&admin1, &admin2); +234 + let result = +client.try_transfer_admin(&admin1); + | + +error[E0061]: this method takes 1 argument but 2 arguments +were supplied + --> src\test_admin.rs:374:16 + | +374 | client.transfer_admin(&admin1, &admin2); + | ^^^^^^^^^^^^^^ ------- +unexpected argument #2 of type `&soroban_sdk::Address` + | +note: method defined here + --> src\lib.rs:195:12 + | +195 | pub fn transfer_admin(env: Env, new_admin: +Address) -> Result<(), QuickLendXError> { + | ^^^^^^^^^^^^^^ +help: remove the extra argument + | +374 - client.transfer_admin(&admin1, &admin2); +374 + client.transfer_admin(&admin1); + | + +error[E0061]: this method takes 1 argument but 2 arguments +were supplied + --> src\test_admin.rs:489:20 + | +489 | client.transfer_admin(¤t_admin, +&new_admin); + | ^^^^^^^^^^^^^^ +---------- unexpected argument #2 of type +`&soroban_sdk::Address` + | +note: method defined here + --> src\lib.rs:195:12 + | +195 | pub fn transfer_admin(env: Env, new_admin: +Address) -> Result<(), QuickLendXError> { + | ^^^^^^^^^^^^^^ +help: remove the extra argument + | +489 - client.transfer_admin(¤t_admin, +&new_admin); +489 + client.transfer_admin(¤t_admin); + | + +error[E0061]: this method takes 1 argument but 2 arguments +were supplied + --> src\test_admin.rs:507:30 + | +507 | let _result = +client.try_transfer_admin(&non_admin, &admin); + | ^^^^^^^^^^^^^^^^^^ + ------ unexpected argument #2 of type +`&soroban_sdk::Address` + | +note: method defined here + --> src\lib.rs:195:12 + | +195 | pub fn transfer_admin(env: Env, new_admin: +Address) -> Result<(), QuickLendXError> { + | ^^^^^^^^^^^^^^ +help: remove the extra argument + | +507 - let _result = +client.try_transfer_admin(&non_admin, &admin); +507 + let _result = +client.try_transfer_admin(&non_admin); + | + +error[E0061]: this method takes 1 argument but 2 arguments +were supplied + --> src\test_admin.rs:533:16 + | +533 | client.transfer_admin(&admin1, &admin2); + | ^^^^^^^^^^^^^^ ------- +unexpected argument #2 of type `&soroban_sdk::Address` + | +note: method defined here + --> src\lib.rs:195:12 + | +195 | pub fn transfer_admin(env: Env, new_admin: +Address) -> Result<(), QuickLendXError> { + | ^^^^^^^^^^^^^^ +help: remove the extra argument + | +533 - client.transfer_admin(&admin1, &admin2); +533 + client.transfer_admin(&admin1); + | + +error[E0599]: no method named `iter` found for struct +`ContractEvents` in the current scope + --> src\test_admin.rs:539:14 + | +538 | let init_events: Vec<_> = events + | ___________________________________- +539 | | .iter() + | | -^^^^ method not found in +`ContractEvents` + | |_____________| + | + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\verification.rs:905:18 + | +905 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\verification.rs:916:18 + | +916 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\verification.rs:928:18 + | +928 | env.events().publish( + | ^^^^^^^ + +error[E0599]: no method named `iter` found for struct +`ContractEvents` in the current scope + --> src\test_admin.rs:543:14 + | +542 | let transfer_events: Vec<_> = events + | _______________________________________- +543 | | .iter() + | | -^^^^ method not found in +`ContractEvents` + | |_____________| + | + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\verification.rs:940:18 + | +940 | env.events().publish( + | ^^^^^^^ + +error[E0061]: this method takes 1 argument but 2 arguments +were supplied + --> src\test_admin.rs:572:16 + | +572 | client.transfer_admin(&admin1, &admin2); + | ^^^^^^^^^^^^^^ ------- +unexpected argument #2 of type `&soroban_sdk::Address` + | +note: method defined here + --> src\lib.rs:195:12 + | +195 | pub fn transfer_admin(env: Env, new_admin: +Address) -> Result<(), QuickLendXError> { + | ^^^^^^^^^^^^^^ +help: remove the extra argument + | +572 - client.transfer_admin(&admin1, &admin2); +572 + client.transfer_admin(&admin1); + | + +error[E0061]: this method takes 1 argument but 2 arguments +were supplied + --> src\test_admin.rs:577:29 + | +577 | let result = +client.try_transfer_admin(&admin1, &admin3); + | ^^^^^^^^^^^^^^^^^^ + ------- unexpected argument #2 of type +`&soroban_sdk::Address` + | +note: method defined here + --> src\lib.rs:195:12 + | +195 | pub fn transfer_admin(env: Env, new_admin: +Address) -> Result<(), QuickLendXError> { + | ^^^^^^^^^^^^^^ +help: remove the extra argument + | +577 - let result = +client.try_transfer_admin(&admin1, &admin3); +577 + let result = +client.try_transfer_admin(&admin1); + | + +error[E0061]: this method takes 1 argument but 2 arguments +were supplied + --> src\test_admin.rs:581:16 + | +581 | client.transfer_admin(&admin2, &admin3); + | ^^^^^^^^^^^^^^ ------- +unexpected argument #2 of type `&soroban_sdk::Address` + | +note: method defined here + --> src\lib.rs:195:12 + | +195 | pub fn transfer_admin(env: Env, new_admin: +Address) -> Result<(), QuickLendXError> { + | ^^^^^^^^^^^^^^ +help: remove the extra argument + | +581 - client.transfer_admin(&admin2, &admin3); +581 + client.transfer_admin(&admin2); + | + +error[E0063]: missing field `initial_currencies` in +initializer of `InitializationParams` + --> src\test_admin_standalone.rs:65:23 + | +65 | let init_params = InitializationParams { + | ^^^^^^^^^^^^^^^^^^^^ missing +`initial_currencies` + +error[E0061]: this function takes 3 arguments but 2 +arguments were supplied + --> src\test_admin_standalone.rs:194:18 + | +194 | let result = AdminStorage::set_admin(&env, +&admin3); + | +^^^^^^^^^^^^^^^^^^^^^^^--------------- argument #3 of type +`&soroban_sdk::Address` is missing + | +note: associated function defined here + --> src\admin.rs:164:12 + | +164 | pub fn set_admin( + | ^^^^^^^^^ +... +167 | new_admin: &Address, + | ------------------- +help: provide the argument + | +194 | let result = AdminStorage::set_admin(&env, +&admin3, /* &soroban_sdk::Address */); + | ++++++++++++++++++++++++++++++ + +error[E0063]: missing field `initial_currencies` in +initializer of `InitializationParams` + --> src\test_admin_standalone.rs:223:23 + | +223 | let init_params = InitializationParams { + | ^^^^^^^^^^^^^^^^^^^^ missing +`initial_currencies` + +error[E0063]: missing field `initial_currencies` in +initializer of `InitializationParams` + --> src\test_admin_standalone.rs:282:23 + | +282 | let init_params = InitializationParams { + | ^^^^^^^^^^^^^^^^^^^^ missing +`initial_currencies` + +error[E0063]: missing field `initial_currencies` in +initializer of `InitializationParams` + --> src\test_admin_standalone.rs:296:23 + | +296 | let init_params = InitializationParams { + | ^^^^^^^^^^^^^^^^^^^^ missing +`initial_currencies` + +error[E0063]: missing field `initial_currencies` in +initializer of `InitializationParams` + --> src\test_admin_standalone.rs:310:23 + | +310 | let init_params = InitializationParams { + | ^^^^^^^^^^^^^^^^^^^^ missing +`initial_currencies` + +error[E0063]: missing field `initial_currencies` in +initializer of `InitializationParams` + --> src\test_admin_standalone.rs:324:23 + | +324 | let init_params = InitializationParams { + | ^^^^^^^^^^^^^^^^^^^^ missing +`initial_currencies` + +error[E0063]: missing field `initial_currencies` in +initializer of `InitializationParams` + --> src\test_admin_standalone.rs:338:23 + | +338 | let init_params = InitializationParams { + | ^^^^^^^^^^^^^^^^^^^^ missing +`initial_currencies` + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\vesting.rs:176:22 + | +176 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\vesting.rs:266:22 + | +266 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\lib.rs:496:22 + | +496 | env.events().publish( + | ^^^^^^^ + +warning: use of deprecated method +`soroban_sdk::events::Events::publish`: use the +#[contractevent] macro on a contract event type + --> src\lib.rs:768:22 + | +768 | env.events().publish( + | ^^^^^^^ + +error[E0599]: no method named `iter` found for struct +`ContractEvents` in the current scope + --> src\test_init.rs:163:14 + | +162 | let init_events: Vec<_> = events + | ___________________________________- +163 | | .iter() + | | -^^^^ method not found in +`ContractEvents` + | |_____________| + | + +error[E0308]: mismatched types + --> src\lib.rs:834:59 + | +834 | BidStorage::get_bids_by_status(&env, +&invoice_id, status) + | ------------------------------ + ^^^^^^ expected `bid::BidStatus`, found +`types::BidStatus` + | | + | arguments to this function are incorrect + | + = note: `types::BidStatus` and `bid::BidStatus` have +similar names, but are actually distinct types +note: `types::BidStatus` is defined in module +`crate::types` of the current crate + --> src\types.rs:29:1 + | + 29 | pub enum BidStatus { + | ^^^^^^^^^^^^^^^^^^ +note: `bid::BidStatus` is defined in module `crate::bid` of +the current crate + --> src\bid.rs:49:1 + | + 49 | pub enum BidStatus { + | ^^^^^^^^^^^^^^^^^^ +note: associated function defined here + --> src\bid.rs:403:12 + | +403 | pub fn get_bids_by_status(env: &Env, invoice_id: +&BytesN<32>, status: BidStatus) -> Vec { + | ^^^^^^^^^^^^^^^^^^ + ----------------- + +error[E0599]: no method named `is_ok` found for unit type +`()` in the current scope + --> src\lib.rs:863:55 + | +863 | +pause::PauseControl::require_not_paused(&env).is_ok() + | +^^^^^ method not found in `()` + +error[E0277]: the `?` operator can only be applied to +values that implement `Try` + --> src\lib.rs:875:9 + | +875 | +pause::PauseControl::require_not_paused(&env)?; + | +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` +operator cannot be applied to type `()` + | + = help: the trait `Try` is not implemented for `()` + +error[E0277]: the type `UnsafeCell` may contain +interior mutability and a reference may not be safely +transferable across a catch_unwind boundary + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call +447 | | client.initialize(¶ms); +448 | | }); + | |_________^ `UnsafeCell` may contain +interior mutability and a reference may not be safely +transferable across a catch_unwind boundary + | + = help: within `RefCell`, the trait +`RefUnwindSafe` is not implemented for +`UnsafeCell` +note: required because it appears within the type +`RefCell` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 + = note: required for `Rc>` to +implement `RefUnwindSafe` +note: required because it appears within the type +`soroban_sdk::env::EnvTestState` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:256:8 + | +256 | struct EnvTestState { + | ^^^^^^^^^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0308]: mismatched types + --> src\lib.rs:883:32 + | +883 | if bid_fresh.status != BidStatus::Placed { + | ---------------- ^^^^^^^^^^^^^^^^^ +expected `bid::BidStatus`, found `types::BidStatus` + | | + | expected because this is `bid::BidStatus` + | + = note: `types::BidStatus` and `bid::BidStatus` have +similar names, but are actually distinct types +note: `types::BidStatus` is defined in module +`crate::types` of the current crate + --> src\types.rs:29:1 + | + 29 | pub enum BidStatus { + | ^^^^^^^^^^^^^^^^^^ +note: `bid::BidStatus` is defined in module `crate::bid` of +the current crate + --> src\bid.rs:49:1 + | + 49 | pub enum BidStatus { + | ^^^^^^^^^^^^^^^^^^ + +error[E0277]: the type `UnsafeCell` may +contain interior mutability and a reference may not be +safely transferable across a catch_unwind boundary + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call +447 | | client.initialize(¶ms); +448 | | }); + | |_________^ `UnsafeCell` may contain +interior mutability and a reference may not be safely +transferable across a catch_unwind boundary + | + = help: within `RefCell`, the trait +`RefUnwindSafe` is not implemented for +`UnsafeCell` +note: required because it appears within the type +`RefCell` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 + = note: required for `Rc>` to +implement `RefUnwindSafe` +note: required because it appears within the type +`soroban_sdk::env::EnvTestState` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:256:8 + | +256 | struct EnvTestState { + | ^^^^^^^^^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type `UnsafeCell>` may contain +interior mutability and a reference may not be safely +transferable across a catch_unwind boundary + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call +447 | | client.initialize(¶ms); +448 | | }); + | |_________^ `UnsafeCell>` may contain +interior mutability and a reference may not be safely +transferable across a catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for `UnsafeCell>` +note: required because it appears within the type `RefCell>` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0308]: mismatched types + --> src\lib.rs:886:22 + | +886 | bid.status = BidStatus::Withdrawn; + | ---------- ^^^^^^^^^^^^^^^^^^^^ expected +`bid::BidStatus`, found `types::BidStatus` + | | + | expected due to the type of this binding + | + = note: `types::BidStatus` and `bid::BidStatus` have +similar names, but are actually distinct types +note: `types::BidStatus` is defined in module +`crate::types` of the current crate + --> src\types.rs:29:1 + | + 29 | pub enum BidStatus { + | ^^^^^^^^^^^^^^^^^^ +note: `bid::BidStatus` is defined in module `crate::bid` of +the current crate + --> src\bid.rs:49:1 + | + 49 | pub enum BidStatus { + | ^^^^^^^^^^^^^^^^^^ + +error[E0277]: the type `UnsafeCell>` may contain interior mutability +and a reference may not be safely transferable across a +catch_unwind boundary + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call +447 | | client.initialize(¶ms); +448 | | }); + | |_________^ `UnsafeCell>` may contain interior mutability and a +reference may not be safely transferable across a +catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for `UnsafeCell>` +note: required because it appears within the type +`RefCell>` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type +`UnsafeCell>` may contain +interior mutability and a reference may not be safely +transferable across a catch_unwind boundary + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call +447 | | client.initialize(¶ms); +448 | | }); + | |_________^ +`UnsafeCell>` may contain +interior mutability and a reference may not be safely +transferable across a catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for +`UnsafeCell>` +note: required because it appears within the type +`RefCell>` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0308]: mismatched types + --> src\lib.rs:967:21 + | +967 | status: BidStatus::Placed, + | ^^^^^^^^^^^^^^^^^ expected +`bid::BidStatus`, found `types::BidStatus` + | + = note: `types::BidStatus` and `bid::BidStatus` have +similar names, but are actually distinct types +note: `types::BidStatus` is defined in module +`crate::types` of the current crate + --> src\types.rs:29:1 + | + 29 | pub enum BidStatus { + | ^^^^^^^^^^^^^^^^^^ +note: `bid::BidStatus` is defined in module `crate::bid` of +the current crate + --> src\bid.rs:49:1 + | + 49 | pub enum BidStatus { + | ^^^^^^^^^^^^^^^^^^ + +error[E0277]: the type `UnsafeCell>` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call +447 | | client.initialize(¶ms); +448 | | }); + | |_________^ `UnsafeCell>` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for `UnsafeCell>` +note: required because it appears within the type `RefCell>` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type +`UnsafeCell` may +contain interior mutability and a reference may not be +safely transferable across a catch_unwind boundary + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call +447 | | client.initialize(¶ms); +448 | | }); + | |_________^ +`UnsafeCell` may +contain interior mutability and a reference may not be +safely transferable across a catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for +`UnsafeCell` +note: required because it appears within the type +`RefCell` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0308]: mismatched types + --> src\lib.rs:1010:71 + | +1010 | if invoice.status != InvoiceStatus::Verified +|| bid.status != BidStatus::Placed { + | + ---------- ^^^^^^^^^^^^^^^^^ expected +`bid::BidStatus`, found `types::BidStatus` + | + | + | + expected because this is `bid::BidStatus` + | + = note: `types::BidStatus` and `bid::BidStatus` have +similar names, but are actually distinct types +note: `types::BidStatus` is defined in module +`crate::types` of the current crate + --> src\types.rs:29:1 + | + 29 | pub enum BidStatus { + | ^^^^^^^^^^^^^^^^^^ +note: `bid::BidStatus` is defined in module `crate::bid` of +the current crate + --> src\bid.rs:49:1 + | + 49 | pub enum BidStatus { + | ^^^^^^^^^^^^^^^^^^ + +error[E0277]: the type `UnsafeCell>` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call +447 | | client.initialize(¶ms); +448 | | }); + | |_________^ `UnsafeCell>` may contain interior mutability +and a reference may not be safely transferable across a +catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for `UnsafeCell>` +note: required because it appears within the type `RefCell>` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type `UnsafeCell` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call +447 | | client.initialize(¶ms); +448 | | }); + | |_________^ `UnsafeCell` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for `UnsafeCell` +note: required because it appears within the type `RefCell` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0308]: mismatched types + --> src\lib.rs:1022:22 + | +1022 | bid.status = BidStatus::Accepted; + | ---------- ^^^^^^^^^^^^^^^^^^^ expected +`bid::BidStatus`, found `types::BidStatus` + | | + | expected due to the type of this binding + | + = note: `types::BidStatus` and `bid::BidStatus` have +similar names, but are actually distinct types +note: `types::BidStatus` is defined in module +`crate::types` of the current crate + --> src\types.rs:29:1 + | + 29 | pub enum BidStatus { + | ^^^^^^^^^^^^^^^^^^ +note: `bid::BidStatus` is defined in module `crate::bid` of +the current crate + --> src\bid.rs:49:1 + | + 49 | pub enum BidStatus { + | ^^^^^^^^^^^^^^^^^^ + +error[E0277]: the type +`UnsafeCell` +may contain interior mutability and a reference may not be +safely transferable across a catch_unwind boundary + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call +447 | | client.initialize(¶ms); +448 | | }); + | |_________^ +`UnsafeCell` +may contain interior mutability and a reference may not be +safely transferable across a catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for +`UnsafeCell` +note: required because it appears within the type +`RefCell` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the `?` operator can only be applied to +values that implement `Try` + --> src\lib.rs:1077:9 + | +1077 | +pause::PauseControl::require_not_paused(&env)?; + | +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` +operator cannot be applied to type `()` + | + = help: the trait `Try` is not implemented for `()` + +error[E0277]: the type `UnsafeCell` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call +447 | | client.initialize(¶ms); +448 | | }); + | |_________^ `UnsafeCell` may contain interior mutability +and a reference may not be safely transferable across a +catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for `UnsafeCell` +note: required because it appears within the type `RefCell` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the `?` operator can only be applied to +values that implement `Try` + --> src\lib.rs:1118:9 + | +1118 | +pause::PauseControl::require_not_paused(&env)?; + | +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` +operator cannot be applied to type `()` + | + = help: the trait `Try` is not implemented for `()` + +error[E0277]: the type `UnsafeCell>` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call +447 | | client.initialize(¶ms); +448 | | }); + | |_________^ `UnsafeCell>` may contain interior mutability +and a reference may not be safely transferable across a +catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for `UnsafeCell>` +note: required because it appears within the type `RefCell>` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type `UnsafeCell` may contain +interior mutability and a reference may not be safely +transferable across a catch_unwind boundary + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call +447 | | client.initialize(¶ms); +448 | | }); + | |_________^ `UnsafeCell` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for +`UnsafeCell` +note: required because it appears within the type +`RefCell` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type `UnsafeCell>` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call +447 | | client.initialize(¶ms); +448 | | }); + | |_________^ `UnsafeCell>` may contain interior mutability +and a reference may not be safely transferable across a +catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for `UnsafeCell>` +note: required because it appears within the type `RefCell>` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type `UnsafeCell>>` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call +447 | | client.initialize(¶ms); +448 | | }); + | |_________^ `UnsafeCell>>` may contain interior mutability and +a reference may not be safely transferable across a +catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for +`UnsafeCell>>` +note: required because it appears within the type +`RefCell>>` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: the full name for the type has been written to ' +C:\Users\USER\Desktop\drips\quicklendx-protocol\quicklendx-c +ontracts\target\debug\deps\quicklendx_contracts-477cda782802 +d717.long-type-10826229335591403730.txt' + = note: consider using `--verbose` to print the full +type name to the console + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type `UnsafeCell>` may contain +interior mutability and a reference may not be safely +transferable across a catch_unwind boundary + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call +447 | | client.initialize(¶ms); +448 | | }); + | |_________^ `UnsafeCell>` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for `UnsafeCell>` +note: required because it appears within the type `RefCell>` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type `UnsafeCell) -> ...>>>` may contain interior mutability +and a reference may not be safely transferable across a +catch_unwind boundary + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call +447 | | client.initialize(¶ms); +448 | | }); + | |_________^ `UnsafeCell) -> ...>>>` may contain interior mutability +and a reference may not be safely transferable across a +catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for +`UnsafeCell) -> +...>>>` +note: required because it appears within the type +`RefCell) -> +Result<(), ...>>>>` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: the full name for the type has been written to ' +C:\Users\USER\Desktop\drips\quicklendx-protocol\quicklendx-c +ontracts\target\debug\deps\quicklendx_contracts-477cda782802 +d717.long-type-6633859924656124036.txt' + = note: consider using `--verbose` to print the full +type name to the console + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type `UnsafeCell>>` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call +447 | | client.initialize(¶ms); +448 | | }); + | |_________^ `UnsafeCell>>` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for +`UnsafeCell>>` +note: required because it appears within the type +`RefCell>>` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: the full name for the type has been written to ' +C:\Users\USER\Desktop\drips\quicklendx-protocol\quicklendx-c +ontracts\target\debug\deps\quicklendx_contracts-477cda782802 +d717.long-type-3312123213956257903.txt' + = note: consider using `--verbose` to print the full +type name to the console + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type +`UnsafeCell` +may contain interior mutability and a reference may not be +safely transferable across a catch_unwind boundary + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call +447 | | client.initialize(¶ms); +448 | | }); + | |_________^ +`UnsafeCell` +may contain interior mutability and a reference may not be +safely transferable across a catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for +`UnsafeCell` +note: required because it appears within the type +`RefCell` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type `UnsafeCell` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call +447 | | client.initialize(¶ms); +448 | | }); + | |_________^ `UnsafeCell` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + | + = help: within `soroban_env_host::host::HostImpl`, the +trait `RefUnwindSafe` is not implemented for `UnsafeCell` +note: required because it appears within the type `RefCell +` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | +175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type `UnsafeCell` may contain +interior mutability and a reference may not be safely +transferable across a catch_unwind boundary + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound introduced +by this call +447 | | client.initialize(¶ms); +448 | | }); + | |_________^ `UnsafeCell` may contain interior +mutability and a reference may not be safely transferable +across a catch_unwind boundary + | + = help: within `RefCell`, the trait +`RefUnwindSafe` is not implemented for `UnsafeCell` +note: required because it appears within the type +`Cell` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:313:12 +note: required because it appears within the type +`RefCell` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\cell.rs:827:12 + = note: required for `Rc>` to +implement `RefUnwindSafe` +note: required because it appears within the type +`soroban_sdk::env::EnvTestState` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:256:8 + | +256 | struct EnvTestState { + | ^^^^^^^^^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | +222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | +111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` to +implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_init.rs:446:47 + | +446 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0277]: the type +`UnsafeCell` may +contain interior mutability and a reference may not be +safely transferable across a catch_unwind boundary + --> src\test_init.rs:446:47 + | + 446 | let result = std::panic::catch_unwind(|| { + | ______________________------------------------_^ + | | | + | | required by a bound +introduced by this call + 447 | | client.initialize(¶ms); + 448 | | }); + | |_________^ +`UnsafeCell` may +contain interior mutability and a reference may not be +safely transferable across a catch_unwind boundary + | + = help: within +`RefCell`, the trait +`RefUnwindSafe` is not implemented for +`UnsafeCell` +note: required because it appears within the type +`RefCell` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libr +ary\core\src\cell.rs:827:12 + = note: required for +`Rc>` to +implement `RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::budget::Budget` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-19 +49cf8c6b5b557f\soroban-env-host-25.0.1\src\budget.rs:1201:12 + | +1201 | pub struct Budget(pub(crate) +Rc>); + | ^^^^^^ +note: required because it appears within the type +`soroban_env_host::host::HostImpl` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-19 +49cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:91:8 + | + 91 | struct HostImpl { + | ^^^^^^^^ + = note: required for +`Rc` to implement +`RefUnwindSafe` +note: required because it appears within the type +`soroban_env_host::host::Host` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-19 +49cf8c6b5b557f\soroban-env-host-25.0.1\src\host.rs:175:12 + | + 175 | pub struct Host(Rc); + | ^^^^ +note: required because it appears within the type `Env` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-19 +49cf8c6b5b557f\soroban-sdk-25.1.1\src\env.rs:222:12 + | + 222 | pub struct Env { + | ^^^ +note: required because it appears within the type +`QuickLendXContractClient<'_>` + --> src\lib.rs:111:1 + | + 111 | #[contract] + | ^^^^^^^^^^^ + = note: required for `&QuickLendXContractClient<'_>` +to implement `UnwindSafe` +note: required because it's used within this closure + --> src\test_init.rs:446:47 + | + 446 | let result = std::panic::catch_unwind(|| { + | ^^ +note: required by a bound in `std::panic::catch_unwind` + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libr +ary\std\src\panic.rs:358:1 + = note: this error originates in the attribute macro +`contract` (in Nightly builds, run with -Z macro-backtrace +for more info) + +error[E0599]: no function or associated item named +`get_invoices_by_category` found for struct +`invoice::InvoiceStorage` in the current scope + --> src\lib.rs:1670:25 + | +1670 | +InvoiceStorage::get_invoices_by_category(&env, &category) + | ^^^^^^^^^^^^^^^^^^^^^^^^ +function or associated item not found in +`invoice::InvoiceStorage` + | + ::: src\invoice.rs:792:1 + | + 792 | pub struct InvoiceStorage; + | ------------------------- function or associated +item `get_invoices_by_category` not found for this struct + | +help: there is an associated function +`get_invoices_by_customer` with a similar name + | +1670 - +InvoiceStorage::get_invoices_by_category(&env, &category) +1670 + +InvoiceStorage::get_invoices_by_customer(&env, &category) + | + +error[E0599]: no function or associated item named +`get_invoices_by_category_and_status` found for struct +`invoice::InvoiceStorage` in the current scope + --> src\lib.rs:1679:25 + | +1679 | +InvoiceStorage::get_invoices_by_category_and_status(&env, +&category, &status) + | +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function or associated +item not found in `invoice::InvoiceStorage` + | + ::: src\invoice.rs:792:1 + | + 792 | pub struct InvoiceStorage; + | ------------------------- function or associated +item `get_invoices_by_category_and_status` not found for +this struct + | +help: there is an associated function +`get_invoices_by_status` with a similar name + --> src\invoice.rs:987:5 + | + 987 | pub fn get_invoices_by_status(env: &Env, status: +&InvoiceStatus) -> Vec> { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error[E0308]: arguments to this method are incorrect + --> src\test_init.rs:460:29 + | +460 | let result = client.try_set_protocol_config( + | ^^^^^^^^^^^^^^^^^^^^^^^ +461 | ¶ms.admin, +462 | 2_000_000, // new min amount + | --------- expected `&i128`, found integer +463 | 180, // new max days + | --- expected `&u64`, found integer +464 | 86400, // new grace period (1 day) + | ----- expected `&u64`, found integer + | +note: method defined here + --> src\lib.rs:210:12 + | +210 | pub fn set_protocol_config( + | ^^^^^^^^^^^^^^^^^^^ +... +213 | min_invoice_amount: i128, + | ------------------------ +214 | max_due_date_days: u64, + | ---------------------- +215 | grace_period_seconds: u64, + | ------------------------- +help: consider borrowing here + | +462 | &2_000_000, // new min amount + | + +help: consider borrowing here + | +463 | &180, // new max days + | + +help: consider borrowing here + | +464 | &86400, // new grace period (1 day) + | + + +error[E0599]: no function or associated item named +`get_invoices_by_tag` found for struct +`invoice::InvoiceStorage` in the current scope + --> src\lib.rs:1684:25 + | +1684 | InvoiceStorage::get_invoices_by_tag(&env, +&tag) + | ^^^^^^^^^^^^^^^^^^^ function +or associated item not found in `invoice::InvoiceStorage` + | + ::: src\invoice.rs:792:1 + | + 792 | pub struct InvoiceStorage; + | ------------------------- function or associated +item `get_invoices_by_tag` not found for this struct + | +help: there is an associated function `get_invoice` with a +similar name + | +1684 - InvoiceStorage::get_invoices_by_tag(&env, +&tag) +1684 + InvoiceStorage::get_invoice(&env, &tag) + | + +error[E0308]: arguments to this method are incorrect + --> src\test_init.rs:480:29 + | +480 | let result = +client.try_set_protocol_config(&non_admin, 1_000_000, 365, +604800); + | ^^^^^^^^^^^^^^^^^^^^^^^ + --------- --- ------ expected `&u64`, found +integer + | + | | + | + | expected `&u64`, found integer + | + expected `&i128`, found integer + | +note: method defined here + --> src\lib.rs:210:12 + | +210 | pub fn set_protocol_config( + | ^^^^^^^^^^^^^^^^^^^ +... +213 | min_invoice_amount: i128, + | ------------------------ +214 | max_due_date_days: u64, + | ---------------------- +215 | grace_period_seconds: u64, + | ------------------------- +help: consider borrowing here + | +480 | let result = +client.try_set_protocol_config(&non_admin, &1_000_000, 365, +604800); + | + + +help: consider borrowing here + | +480 | let result = +client.try_set_protocol_config(&non_admin, 1_000_000, &365, +604800); + | + + +help: consider borrowing here + | +480 | let result = +client.try_set_protocol_config(&non_admin, 1_000_000, 365, +&604800); + | + + + +error[E0599]: no function or associated item named +`get_invoices_by_tags` found for struct +`invoice::InvoiceStorage` in the current scope + --> src\lib.rs:1689:25 + | +1689 | InvoiceStorage::get_invoices_by_tags(&env, +&tags) + | ^^^^^^^^^^^^^^^^^^^^ +function or associated item not found in +`invoice::InvoiceStorage` + | + ::: src\invoice.rs:792:1 + | + 792 | pub struct InvoiceStorage; + | ------------------------- function or associated +item `get_invoices_by_tags` not found for this struct + | +help: there is an associated function `get_invoice` with a +similar name + | +1689 - InvoiceStorage::get_invoices_by_tags(&env, +&tags) +1689 + InvoiceStorage::get_invoice(&env, &tags) + | + +error[E0599]: no function or associated item named +`get_invoice_count_by_category` found for struct +`invoice::InvoiceStorage` in the current scope + --> src\lib.rs:1694:25 + | +1694 | +InvoiceStorage::get_invoice_count_by_category(&env, +&category) + | +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function or associated item +not found in `invoice::InvoiceStorage` + | + ::: src\invoice.rs:792:1 + | + 792 | pub struct InvoiceStorage; + | ------------------------- function or associated +item `get_invoice_count_by_category` not found for this +struct + +error[E0308]: arguments to this method are incorrect + --> src\test_init.rs:493:29 + | +493 | let result = +client.try_set_protocol_config(¶ms.admin, 0, 365, +604800); + | ^^^^^^^^^^^^^^^^^^^^^^^ + - --- ------ expected `&u64`, found integer + | + | | + | + | expected `&u64`, found integer + | + expected `&i128`, found integer + | +note: method defined here + --> src\lib.rs:210:12 + | +210 | pub fn set_protocol_config( + | ^^^^^^^^^^^^^^^^^^^ +... +213 | min_invoice_amount: i128, + | ------------------------ +214 | max_due_date_days: u64, + | ---------------------- +215 | grace_period_seconds: u64, + | ------------------------- +help: consider borrowing here + | +493 | let result = +client.try_set_protocol_config(¶ms.admin, &0, 365, +604800); + | + + +help: consider borrowing here + | +493 | let result = +client.try_set_protocol_config(¶ms.admin, 0, &365, +604800); + | + + +help: consider borrowing here + | +493 | let result = +client.try_set_protocol_config(¶ms.admin, 0, 365, +&604800); + | + + + +error[E0599]: no function or associated item named +`get_invoice_count_by_tag` found for struct +`invoice::InvoiceStorage` in the current scope + --> src\lib.rs:1699:25 + | +1699 | +InvoiceStorage::get_invoice_count_by_tag(&env, &tag) + | ^^^^^^^^^^^^^^^^^^^^^^^^ +function or associated item not found in +`invoice::InvoiceStorage` + | + ::: src\invoice.rs:792:1 + | + 792 | pub struct InvoiceStorage; + | ------------------------- function or associated +item `get_invoice_count_by_tag` not found for this struct + +error[E0308]: arguments to this method are incorrect + --> src\test_init.rs:501:29 + | +501 | let result = +client.try_set_protocol_config(¶ms.admin, 1_000_000, 0, +604800); + | ^^^^^^^^^^^^^^^^^^^^^^^ + --------- - ------ expected `&u64`, found +integer + | + | | + | + | expected `&u64`, found integer + | + expected `&i128`, found integer + | +note: method defined here + --> src\lib.rs:210:12 + | +210 | pub fn set_protocol_config( + | ^^^^^^^^^^^^^^^^^^^ +... +213 | min_invoice_amount: i128, + | ------------------------ +214 | max_due_date_days: u64, + | ---------------------- +215 | grace_period_seconds: u64, + | ------------------------- +help: consider borrowing here + | +501 | let result = +client.try_set_protocol_config(¶ms.admin, &1_000_000, +0, 604800); + | + + +help: consider borrowing here + | +501 | let result = +client.try_set_protocol_config(¶ms.admin, 1_000_000, +&0, 604800); + | + + +help: consider borrowing here + | +501 | let result = +client.try_set_protocol_config(¶ms.admin, 1_000_000, 0, +&604800); + | + + + +error[E0599]: no function or associated item named +`get_all_categories` found for struct +`invoice::InvoiceStorage` in the current scope + --> src\lib.rs:1704:25 + | +1704 | InvoiceStorage::get_all_categories(&env) + | ^^^^^^^^^^^^^^^^^^ function +or associated item not found in `invoice::InvoiceStorage` + | + ::: src\invoice.rs:792:1 + | + 792 | pub struct InvoiceStorage; + | ------------------------- function or associated +item `get_all_categories` not found for this struct + +error[E0277]: the `?` operator can only be applied to +values that implement `Try` + --> src\lib.rs:1713:9 + | +1713 | +pause::PauseControl::require_not_paused(&env)?; + | +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` +operator cannot be applied to type `()` + | + = help: the trait `Try` is not implemented for `()` + +error[E0277]: the `?` operator can only be applied to +values that implement `Try` + --> src\lib.rs:1751:9 + | +1751 | +pause::PauseControl::require_not_paused(&env)?; + | +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` +operator cannot be applied to type `()` + | + = help: the trait `Try` is not implemented for `()` + +error[E0277]: the `?` operator can only be applied to +values that implement `Try` + --> src\lib.rs:1780:9 + | +1780 | +pause::PauseControl::require_not_paused(&env)?; + | +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` +operator cannot be applied to type `()` + | + = help: the trait `Try` is not implemented for `()` + +error[E0308]: mismatched types + --> src\lib.rs:2198:34 + | +2198 | if bid.status == *status { + | ---------- ^^^^^^^ expected +`bid::BidStatus`, found `types::BidStatus` + | | + | expected because this is +`bid::BidStatus` + | + = note: `types::BidStatus` and `bid::BidStatus` have +similar names, but are actually distinct types +note: `types::BidStatus` is defined in module +`crate::types` of the current crate + --> src\types.rs:29:1 + | + 29 | pub enum BidStatus { + | ^^^^^^^^^^^^^^^^^^ +note: `bid::BidStatus` is defined in module `crate::bid` of +the current crate + --> src\bid.rs:49:1 + | + 49 | pub enum BidStatus { + | ^^^^^^^^^^^^^^^^^^ + +error[E0308]: mismatched types + --> src\lib.rs:2248:38 + | +2248 | if bid.status == *status { + | ---------- ^^^^^^^ +expected `bid::BidStatus`, found `types::BidStatus` + | | + | expected because this is +`bid::BidStatus` + | + = note: `types::BidStatus` and `bid::BidStatus` have +similar names, but are actually distinct types +note: `types::BidStatus` is defined in module +`crate::types` of the current crate + --> src\types.rs:29:1 + | + 29 | pub enum BidStatus { + | ^^^^^^^^^^^^^^^^^^ +note: `bid::BidStatus` is defined in module `crate::bid` of +the current crate + --> src\bid.rs:49:1 + | + 49 | pub enum BidStatus { + | ^^^^^^^^^^^^^^^^^^ + +error[E0277]: the `?` operator can only be applied to +values that implement `Try` + --> src\lib.rs:2288:9 + | +2288 | +pause::PauseControl::require_not_paused(&env)?; + | +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` +operator cannot be applied to type `()` + | + = help: the trait `Try` is not implemented for `()` + +error[E0308]: arguments to this method are incorrect + --> src\test_init.rs:509:29 + | +509 | let result = +client.try_set_protocol_config(¶ms.admin, 1_000_000, +365, 3_000_000); + | ^^^^^^^^^^^^^^^^^^^^^^^ + --------- --- --------- expected `&u64`, +found integer + | + | | + | + | expected `&u64`, found integer + | + expected `&i128`, found integer + | +note: method defined here + --> src\lib.rs:210:12 + | +210 | pub fn set_protocol_config( + | ^^^^^^^^^^^^^^^^^^^ +... +213 | min_invoice_amount: i128, + | ------------------------ +214 | max_due_date_days: u64, + | ---------------------- +215 | grace_period_seconds: u64, + | ------------------------- +help: consider borrowing here + | +509 | let result = +client.try_set_protocol_config(¶ms.admin, &1_000_000, +365, 3_000_000); + | + + +help: consider borrowing here + | +509 | let result = +client.try_set_protocol_config(¶ms.admin, 1_000_000, +&365, 3_000_000); + | + + +help: consider borrowing here + | +509 | let result = +client.try_set_protocol_config(¶ms.admin, 1_000_000, +365, &3_000_000); + | + + + +error[E0277]: the `?` operator can only be applied to +values that implement `Try` + --> src\lib.rs:2312:9 + | +2312 | +pause::PauseControl::require_not_paused(&env)?; + | +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` +operator cannot be applied to type `()` + | + = help: the trait `Try` is not implemented for `()` + +error[E0277]: the `?` operator can only be applied to +values that implement `Try` + --> src\lib.rs:2330:9 + | +2330 | +pause::PauseControl::require_not_paused(&env)?; + | +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` +operator cannot be applied to type `()` + | + = help: the trait `Try` is not implemented for `()` + +error[E0277]: the `?` operator can only be applied to +values that implement `Try` + --> src\lib.rs:2357:9 + | +2357 | +pause::PauseControl::require_not_paused(&env)?; + | +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` +operator cannot be applied to type `()` + | + = help: the trait `Try` is not implemented for `()` + +error[E0277]: the `?` operator can only be applied to +values that implement `Try` + --> src\lib.rs:2370:9 + | +2370 | +pause::PauseControl::require_not_paused(&env)?; + | +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` +operator cannot be applied to type `()` + | + = help: the trait `Try` is not implemented for `()` + +error[E0308]: arguments to this method are incorrect + --> src\test_init.rs:521:16 + | +521 | client.set_protocol_config(¶ms.admin, +2_000_000, 180, 86400); + | ^^^^^^^^^^^^^^^^^^^ +--------- --- ----- expected `&u64`, found integer + | | + | + | | + expected `&u64`, found integer + | +expected `&i128`, found integer + | +note: method defined here + --> src\lib.rs:210:12 + | +210 | pub fn set_protocol_config( + | ^^^^^^^^^^^^^^^^^^^ +... +213 | min_invoice_amount: i128, + | ------------------------ +214 | max_due_date_days: u64, + | ---------------------- +215 | grace_period_seconds: u64, + | ------------------------- +help: consider borrowing here + | +521 | client.set_protocol_config(¶ms.admin, +&2_000_000, 180, 86400); + | + +help: consider borrowing here + | +521 | client.set_protocol_config(¶ms.admin, +2_000_000, &180, 86400); + | + + +help: consider borrowing here + | +521 | client.set_protocol_config(¶ms.admin, +2_000_000, 180, &86400); + | + + + +error[E0599]: no method named `iter` found for struct +`ContractEvents` in the current scope + --> src\test_init.rs:525:14 + | +524 | let config_events: Vec<_> = events + | _____________________________________- +525 | | .iter() + | | -^^^^ method not found in +`ContractEvents` + | |_____________| + | + +error[E0308]: mismatched types + --> src\test_init.rs:536:63 + | +536 | let result = +client.try_set_fee_config(¶ms.admin, 300); // 3% + | ------------------ + ^^^ expected `&u32`, found integer + | | + | arguments to this method +are incorrect + | +note: method defined here + --> src\lib.rs:227:12 + | +227 | pub fn set_fee_config(env: Env, admin: Address, +fee_bps: u32) -> Result<(), QuickLendXError> { + | ^^^^^^^^^^^^^^ +------------ +help: consider borrowing here + | +536 | let result = +client.try_set_fee_config(¶ms.admin, &300); // 3% + | + + + +error[E0034]: multiple applicable items in scope + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ multiple `spec_xdr_create_backup` +found + | +note: candidate #1 is defined in an impl for the type +`QuickLendXContract` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +note: candidate #2 is defined in an impl for the type +`QuickLendXContract` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0034]: multiple applicable items in scope + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ multiple `spec_xdr_restore_backup` +found + | +note: candidate #1 is defined in an impl for the type +`QuickLendXContract` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +note: candidate #2 is defined in an impl for the type +`QuickLendXContract` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0034]: multiple applicable items in scope + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ multiple `spec_xdr_archive_backup` +found + | +note: candidate #1 is defined in an impl for the type +`QuickLendXContract` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +note: candidate #2 is defined in an impl for the type +`QuickLendXContract` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0034]: multiple applicable items in scope + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ multiple `spec_xdr_validate_backup` +found + | +note: candidate #1 is defined in an impl for the type +`QuickLendXContract` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +note: candidate #2 is defined in an impl for the type +`QuickLendXContract` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0034]: multiple applicable items in scope + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ multiple +`spec_xdr_get_backup_details` found + | +note: candidate #1 is defined in an impl for the type +`QuickLendXContract` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +note: candidate #2 is defined in an impl for the type +`QuickLendXContract` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0034]: multiple applicable items in scope + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ multiple `spec_xdr_get_backups` found + | +note: candidate #1 is defined in an impl for the type +`QuickLendXContract` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +note: candidate #2 is defined in an impl for the type +`QuickLendXContract` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0034]: multiple applicable items in scope + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ multiple `spec_xdr_cleanup_backups` +found + | +note: candidate #1 is defined in an impl for the type +`QuickLendXContract` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +note: candidate #2 is defined in an impl for the type +`QuickLendXContract` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0034]: multiple applicable items in scope + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ multiple +`spec_xdr_set_backup_retention_policy` found + | +note: candidate #1 is defined in an impl for the type +`QuickLendXContract` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +note: candidate #2 is defined in an impl for the type +`QuickLendXContract` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0034]: multiple applicable items in scope + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ multiple +`spec_xdr_get_backup_retention_policy` found + | +note: candidate #1 is defined in an impl for the type +`QuickLendXContract` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +note: candidate #2 is defined in an impl for the type +`QuickLendXContract` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0034]: multiple applicable items in scope + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ multiple +`spec_xdr_get_financial_metrics` found + | +note: candidate #1 is defined in an impl for the type +`QuickLendXContract` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +note: candidate #2 is defined in an impl for the type +`QuickLendXContract` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0034]: multiple applicable items in scope + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ multiple +`spec_xdr_get_platform_metrics` found + | +note: candidate #1 is defined in an impl for the type +`QuickLendXContract` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +note: candidate #2 is defined in an impl for the type +`QuickLendXContract` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0034]: multiple applicable items in scope + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ multiple +`spec_xdr_get_performance_metrics` found + | +note: candidate #1 is defined in an impl for the type +`QuickLendXContract` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ +note: candidate #2 is defined in an impl for the type +`QuickLendXContract` + --> src\lib.rs:142:1 + | +142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ + = note: this error originates in the attribute macro +`soroban_sdk::contractspecfn` (in Nightly builds, run with +-Z macro-backtrace for more info) + +error[E0308]: mismatched types + --> src\test_init.rs:546:63 + | +546 | let result = +client.try_set_fee_config(¶ms.admin, 1001); // > 10% + | ------------------ + ^^^^ expected `&u32`, found integer + | | + | arguments to this method +are incorrect + | +note: method defined here + --> src\lib.rs:227:12 + | +227 | pub fn set_fee_config(env: Env, admin: Address, +fee_bps: u32) -> Result<(), QuickLendXError> { + | ^^^^^^^^^^^^^^ +------------ +help: consider borrowing here + | +546 | let result = +client.try_set_fee_config(¶ms.admin, &1001); // > 10% + | + + + +error[E0308]: mismatched types + --> src\test_init.rs:558:63 + | +558 | let result = +client.try_set_fee_config(¶ms.admin, 0); + | ------------------ + ^ expected `&u32`, found integer + | | + | arguments to this method +are incorrect + | +note: method defined here + --> src\lib.rs:227:12 + | +227 | pub fn set_fee_config(env: Env, admin: Address, +fee_bps: u32) -> Result<(), QuickLendXError> { + | ^^^^^^^^^^^^^^ +------------ +help: consider borrowing here + | +558 | let result = +client.try_set_fee_config(¶ms.admin, &0); + | + + + +error[E0308]: arguments to this method are incorrect + --> src\test_init.rs:694:16 + | +694 | client.set_protocol_config(¶ms.admin, +2_000_000, 180, 86400); + | ^^^^^^^^^^^^^^^^^^^ +--------- --- ----- expected `&u64`, found integer + | | + | + | | + expected `&u64`, found integer + | +expected `&i128`, found integer + | +note: method defined here + --> src\lib.rs:210:12 + | +210 | pub fn set_protocol_config( + | ^^^^^^^^^^^^^^^^^^^ +... +213 | min_invoice_amount: i128, + | ------------------------ +214 | max_due_date_days: u64, + | ---------------------- +215 | grace_period_seconds: u64, + | ------------------------- +help: consider borrowing here + | +694 | client.set_protocol_config(¶ms.admin, +&2_000_000, 180, 86400); + | + +help: consider borrowing here + | +694 | client.set_protocol_config(¶ms.admin, +2_000_000, &180, 86400); + | + + +help: consider borrowing here + | +694 | client.set_protocol_config(¶ms.admin, +2_000_000, 180, &86400); + | + + + +error[E0308]: mismatched types + --> src\test_init.rs:697:46 + | +697 | client.set_fee_config(¶ms.admin, 300); + | -------------- ^^^ +expected `&u32`, found integer + | | + | arguments to this method are incorrect + | +note: method defined here + --> src\lib.rs:227:12 + | +227 | pub fn set_fee_config(env: Env, admin: Address, +fee_bps: u32) -> Result<(), QuickLendXError> { + | ^^^^^^^^^^^^^^ +------------ +help: consider borrowing here + | +697 | client.set_fee_config(¶ms.admin, &300); + | + + +error[E0308]: arguments to this method are incorrect + --> src\test_init.rs:734:16 + | +734 | client.set_protocol_config(¶ms.admin, +2_000_000, 180, 86400); + | ^^^^^^^^^^^^^^^^^^^ +--------- --- ----- expected `&u64`, found integer + | | + | + | | + expected `&u64`, found integer + | +expected `&i128`, found integer + | +note: method defined here + --> src\lib.rs:210:12 + | +210 | pub fn set_protocol_config( + | ^^^^^^^^^^^^^^^^^^^ +... +213 | min_invoice_amount: i128, + | ------------------------ +214 | max_due_date_days: u64, + | ---------------------- +215 | grace_period_seconds: u64, + | ------------------------- +help: consider borrowing here + | +734 | client.set_protocol_config(¶ms.admin, +&2_000_000, 180, 86400); + | + +help: consider borrowing here + | +734 | client.set_protocol_config(¶ms.admin, +2_000_000, &180, 86400); + | + + +help: consider borrowing here + | +734 | client.set_protocol_config(¶ms.admin, +2_000_000, 180, &86400); + | + + + +error[E0308]: mismatched types + --> src\test_init.rs:735:46 + | +735 | client.set_fee_config(¶ms.admin, 300); + | -------------- ^^^ +expected `&u32`, found integer + | | + | arguments to this method are incorrect + | +note: method defined here + --> src\lib.rs:227:12 + | +227 | pub fn set_fee_config(env: Env, admin: Address, +fee_bps: u32) -> Result<(), QuickLendXError> { + | ^^^^^^^^^^^^^^ +------------ +help: consider borrowing here + | +735 | client.set_fee_config(¶ms.admin, &300); + | + + +error[E0061]: this method takes 1 argument but 2 arguments +were supplied + --> src\test_init.rs:761:16 + | +761 | client.transfer_admin(¶ms.admin, +&new_admin); + | ^^^^^^^^^^^^^^ +---------- unexpected argument #2 of type +`&soroban_sdk::Address` + | +note: method defined here + --> src\lib.rs:195:12 + | +195 | pub fn transfer_admin(env: Env, new_admin: +Address) -> Result<(), QuickLendXError> { + | ^^^^^^^^^^^^^^ +help: remove the extra argument + | +761 - client.transfer_admin(¶ms.admin, +&new_admin); +761 + client.transfer_admin(¶ms.admin); + | + +error[E0308]: mismatched types + --> src\test_init.rs:764:60 + | +764 | let result = +client.try_set_fee_config(&new_admin, 400); + | ------------------ + ^^^ expected `&u32`, found integer + | | + | arguments to this method +are incorrect + | +note: method defined here + --> src\lib.rs:227:12 + | +227 | pub fn set_fee_config(env: Env, admin: Address, +fee_bps: u32) -> Result<(), QuickLendXError> { + | ^^^^^^^^^^^^^^ +------------ +help: consider borrowing here + | +764 | let result = +client.try_set_fee_config(&new_admin, &400); + | + + + +error[E0308]: mismatched types + --> src\test_init.rs:768:63 + | +768 | let result = +client.try_set_fee_config(¶ms.admin, 500); + | ------------------ + ^^^ expected `&u32`, found integer + | | + | arguments to this method +are incorrect + | +note: method defined here + --> src\lib.rs:227:12 + | +227 | pub fn set_fee_config(env: Env, admin: Address, +fee_bps: u32) -> Result<(), QuickLendXError> { + | ^^^^^^^^^^^^^^ +------------ +help: consider borrowing here + | +768 | let result = +client.try_set_fee_config(¶ms.admin, &500); + | + + + +error[E0308]: arguments to this method are incorrect + --> src\test_init.rs:785:16 + | +785 | client.set_protocol_config(¶ms.admin, +2_000_000, 180, 86400); + | ^^^^^^^^^^^^^^^^^^^ +--------- --- ----- expected `&u64`, found integer + | | + | + | | + expected `&u64`, found integer + | +expected `&i128`, found integer + | +note: method defined here + --> src\lib.rs:210:12 + | +210 | pub fn set_protocol_config( + | ^^^^^^^^^^^^^^^^^^^ +... +213 | min_invoice_amount: i128, + | ------------------------ +214 | max_due_date_days: u64, + | ---------------------- +215 | grace_period_seconds: u64, + | ------------------------- +help: consider borrowing here + | +785 | client.set_protocol_config(¶ms.admin, +&2_000_000, 180, 86400); + | + +help: consider borrowing here + | +785 | client.set_protocol_config(¶ms.admin, +2_000_000, &180, 86400); + | + + +help: consider borrowing here + | +785 | client.set_protocol_config(¶ms.admin, +2_000_000, 180, &86400); + | + + + +error[E0308]: mismatched types + --> src\test_init.rs:786:46 + | +786 | client.set_fee_config(¶ms.admin, 300); + | -------------- ^^^ +expected `&u32`, found integer + | | + | arguments to this method are incorrect + | +note: method defined here + --> src\lib.rs:227:12 + | +227 | pub fn set_fee_config(env: Env, admin: Address, +fee_bps: u32) -> Result<(), QuickLendXError> { + | ^^^^^^^^^^^^^^ +------------ +help: consider borrowing here + | +786 | client.set_fee_config(¶ms.admin, &300); + | + + +error[E0599]: no method named `iter` found for struct +`ContractEvents` in the current scope + --> src\test_init.rs:795:14 + | +794 | let init_events: Vec<_> = events + | ___________________________________- +795 | | .iter() + | | -^^^^ method not found in +`ContractEvents` + | |_____________| + | + +error[E0599]: no method named `iter` found for struct +`ContractEvents` in the current scope + --> src\test_init.rs:799:14 + | +798 | let config_events: Vec<_> = events + | _____________________________________- +799 | | .iter() + | | -^^^^ method not found in +`ContractEvents` + | |_____________| + | + +error[E0599]: no method named `iter` found for struct +`ContractEvents` in the current scope + --> src\test_init.rs:803:14 + | +802 | let fee_events: Vec<_> = events + | __________________________________- +803 | | .iter() + | | -^^^^ method not found in +`ContractEvents` + | |_____________| + | + +error[E0599]: no method named `iter` found for struct +`ContractEvents` in the current scope + --> src\test_init.rs:807:14 + | +806 | let treasury_events: Vec<_> = events + | _______________________________________- +807 | | .iter() + | | -^^^^ method not found in +`ContractEvents` + | |_____________| + | + +error[E0061]: this method takes 8 arguments but 7 arguments +were supplied + --> src\test_overflow.rs:346:25 + | +346 | let result = client.try_store_invoice( + | ^^^^^^^^^^^^^^^^^ +347 | &business, +348 | &10_000, + | ------- expected `&soroban_sdk::Address`, +found `&{integer}` +349 | &Address::generate(&env), + | ------------------------ expected `&i128`, +found `&soroban_sdk::Address` +350 | &u64::MAX, + | --------- argument #4 of type +`&soroban_sdk::Address` is missing + | +note: method defined here + --> src\lib.rs:437:12 + | +437 | pub fn store_invoice( + | ^^^^^^^^^^^^^ +... +442 | currency: Address, + | ----------------- +help: did you mean + | +346 ~ let result = client.try_store_invoice( +347 + &business, +348 + &Address::generate(&env), +349 + &10_000, +350 + /* &soroban_sdk::Address */, +351 + &u64::MAX, +352 + &String::from_str(&env, "Max Time"), +353 + &InvoiceCategory::Services, +354 + &Vec::new(&env), +355 ~ ); + | + +error[E0061]: this method takes 8 arguments but 7 arguments +were supplied + --> src\test_pause.rs:59:10 + | + 59 | .try_store_invoice( + | ^^^^^^^^^^^^^^^^^ + 60 | &business, + 61 | &1_000i128, + | ---------- expected +`&soroban_sdk::Address`, found `&i128` + 62 | ¤cy, + | --------- expected `&i128`, found +`&soroban_sdk::Address` + 63 | &due_date, + | --------- argument #4 of type +`&soroban_sdk::Address` is missing + | +note: method defined here + --> src\lib.rs:437:12 + | +437 | pub fn store_invoice( + | ^^^^^^^^^^^^^ +... +442 | currency: Address, + | ----------------- +help: did you mean + | + 59 ~ .try_store_invoice( + 60 + &business, + 61 + ¤cy, + 62 + &1_000i128, + 63 + /* &soroban_sdk::Address */, + 64 + &due_date, + 65 + &String::from_str(&env, "Blocked"), + 66 + &InvoiceCategory::Services, + 67 + &Vec::new(&env), + 68 + ) + | + +error[E0061]: this method takes 8 arguments but 7 arguments +were supplied + --> src\test_pause.rs:102:10 + | +102 | .try_store_invoice( + | ^^^^^^^^^^^^^^^^^ +103 | &business, +104 | &24i128, + | ------- expected `&soroban_sdk::Address`, +found `&i128` +105 | ¤cy, + | --------- expected `&i128`, found +`&soroban_sdk::Address` +106 | &due_date, + | --------- argument #4 of type +`&soroban_sdk::Address` is missing + | +note: method defined here + --> src\lib.rs:437:12 + | +437 | pub fn store_invoice( + | ^^^^^^^^^^^^^ +... +442 | currency: Address, + | ----------------- +help: did you mean + | +102 ~ .try_store_invoice( +103 + &business, +104 + ¤cy, +105 + &24i128, +106 + /* &soroban_sdk::Address */, +107 + &due_date, +108 + &String::from_str(&env, "Below min"), +109 + &InvoiceCategory::Services, +110 + &Vec::new(&env), +111 + ) + | + +error[E0425]: cannot find function +`verify_investor_for_test` in this scope + --> src\test_pause.rs:219:5 + | +219 | verify_investor_for_test(&env, &client, +&investor, 10_000); + | ^^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope + +error[E0425]: cannot find function +`verify_investor_for_test` in this scope + --> src\test_pause.rs:247:5 + | +247 | verify_investor_for_test(&env, &client, +&investor, 10_000); + | ^^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope + +error[E0425]: cannot find function +`verify_investor_for_test` in this scope + --> src\test_pause.rs:281:5 + | +281 | verify_investor_for_test(&env, &client, +&investor, 10_000); + | ^^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope + +error[E0425]: cannot find function +`verify_investor_for_test` in this scope + --> src\test_pause.rs:310:5 + | +310 | verify_investor_for_test(&env, &client, +&investor, 10_000); + | ^^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope + +error[E0308]: mismatched types + --> src\test_pause.rs:318:32 + | +318 | assert_eq!(contract_error, +QuickLendXError::OperationNotAllowed); + | +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Error`, +found `QuickLendXError` + | +help: call `Into::into` on this expression to convert +`QuickLendXError` into `soroban_sdk::Error` + | +318 | assert_eq!(contract_error, +QuickLendXError::OperationNotAllowed.into()); + | + +++++++ + +error[E0425]: cannot find function +`verify_investor_for_test` in this scope + --> src\test_pause.rs:363:5 + | +363 | verify_investor_for_test(&env, &client, +&investor, 10_000); + | ^^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope + +error[E0425]: cannot find function +`verify_investor_for_test` in this scope + --> src\test_pause.rs:391:5 + | +391 | verify_investor_for_test(&env, &client, +&investor, 10_000); + | ^^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope + +error[E0061]: this method takes 8 arguments but 7 arguments +were supplied + --> src\test_refund.rs:83:29 + | + 83 | let invoice_id = client.store_invoice( + | ^^^^^^^^^^^^^ + 84 | &business, + 85 | &amount, + | ------- expected `&soroban_sdk::Address`, +found `&i128` + 86 | ¤cy, + | --------- expected `&i128`, found +`&soroban_sdk::Address` + 87 | &due_date, + | --------- argument #4 of type +`&soroban_sdk::Address` is missing + | +note: method defined here + --> src\lib.rs:437:12 + | +437 | pub fn store_invoice( + | ^^^^^^^^^^^^^ +... +442 | currency: Address, + | ----------------- +help: did you mean + | + 83 ~ let invoice_id = client.store_invoice( + 84 + &business, + 85 + ¤cy, + 86 + &amount, + 87 + /* &soroban_sdk::Address */, + 88 + &due_date, + 89 + &String::from_str(env, "Test Invoice"), + 90 + &InvoiceCategory::Services, + 91 + &Vec::new(env), + 92 ~ ); + | + +error[E0599]: no variant or associated item named +`Cancelled` found for enum `types::BidStatus` in the +current scope + --> src\test_refund.rs:139:39 + | +139 | assert_eq!(bid.status, BidStatus::Cancelled); + | ^^^^^^^^^ +variant or associated item not found in `types::BidStatus` + | + ::: src\types.rs:29:1 + | + 29 | pub enum BidStatus { + | ------------------ variant or associated item +`Cancelled` not found for this enum + +error[E0061]: this method takes 8 arguments but 7 arguments +were supplied + --> src\test_refund.rs:189:29 + | +189 | let invoice_id = client.store_invoice( + | ^^^^^^^^^^^^^ +190 | &business, +191 | &amount, + | ------- expected `&soroban_sdk::Address`, +found `&i128` +192 | ¤cy, + | --------- expected `&i128`, found +`&soroban_sdk::Address` +193 | &due_date, + | --------- argument #4 of type +`&soroban_sdk::Address` is missing + | +note: method defined here + --> src\lib.rs:437:12 + | +437 | pub fn store_invoice( + | ^^^^^^^^^^^^^ +... +442 | currency: Address, + | ----------------- +help: did you mean + | +189 ~ let invoice_id = client.store_invoice( +190 + &business, +191 + ¤cy, +192 + &amount, +193 + /* &soroban_sdk::Address */, +194 + &due_date, +195 + &String::from_str(&env, "Test Invoice"), +196 + &InvoiceCategory::Services, +197 + &Vec::new(&env), +198 ~ ); + | + +error[E0061]: this method takes 8 arguments but 7 arguments +were supplied + --> src\test_refund.rs:243:29 + | +243 | let invoice_id = client.store_invoice( + | ^^^^^^^^^^^^^ +244 | &business, +245 | &amount, + | ------- expected `&soroban_sdk::Address`, +found `&i128` +246 | ¤cy, + | --------- expected `&i128`, found +`&soroban_sdk::Address` +247 | &due_date, + | --------- argument #4 of type +`&soroban_sdk::Address` is missing + | +note: method defined here + --> src\lib.rs:437:12 + | +437 | pub fn store_invoice( + | ^^^^^^^^^^^^^ +... +442 | currency: Address, + | ----------------- +help: did you mean + | +243 ~ let invoice_id = client.store_invoice( +244 + &business, +245 + ¤cy, +246 + &amount, +247 + /* &soroban_sdk::Address */, +248 + &due_date, +249 + &String::from_str(&env, "Test Missing +Escrow"), +250 + &InvoiceCategory::Services, +251 + &Vec::new(&env), +252 ~ ); + | + +error[E0599]: no variant or associated item named +`Cancelled` found for enum `types::BidStatus` in the +current scope + --> src\test_refund.rs:293:56 + | +293 | assert_eq!(bids.get(0).unwrap().status, +BidStatus::Cancelled); + | + ^^^^^^^^^ variant or associated item not found in +`types::BidStatus` + | + ::: src\types.rs:29:1 + | + 29 | pub enum BidStatus { + | ------------------ variant or associated item +`Cancelled` not found for this enum + +warning: use of deprecated method +`soroban_sdk::Env::register_contract`: use `register` + --> src\test_investment_queries.rs:65:27 + | +65 | let contract_id = env.register_contract(None, +QuickLendXContract); + | ^^^^^^^^^^^^^^^^^ + +error[E0277]: the trait bound `soroban_sdk::String: +From<&str>` is not satisfied + --> src\test_investment_queries.rs:87:63 + | + 87 | ctx.client.submit_investor_kyc(investor, &"Test +Investor".into()); + | + ^^^^ the trait `From<&str>` is not implemented for +`soroban_sdk::String` + | +help: the following other types implement trait `From` + --> C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\bytes.rs:369:1 + | +369 | impl From<&Bytes> for String { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `soroban_sdk::String` +implements `From<&soroban_sdk::Bytes>` +... +377 | impl From for String { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ `soroban_sdk::String` +implements `From` + | + ::: C:\Users\USER\.cargo\registry\src\index.crates.io-194 +9cf8c6b5b557f\soroban-sdk-25.1.1\src\string.rs:143:1 + | +143 | impl From<&String> for String { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `soroban_sdk::String` +implements `From<&soroban_sdk::String>` + = note: required for `&str` to implement +`Into` + +error[E0308]: mismatched types + --> src\test_investment_queries.rs:88:44 + | + 88 | ctx.client.verify_investor(&ctx.admin, investor); + | --------------- ^^^^^^^^ +expected `&i128`, found `&Address` + | | + | arguments to this method are incorrect + | + = note: expected reference `&i128` + found reference `&soroban_sdk::Address` +note: method defined here + --> src\lib.rs:1286:12 + | +1286 | pub fn verify_investor( + | ^^^^^^^^^^^^^^^ +... +1289 | investment_limit: i128, + | ---------------------- + +error[E0061]: this function takes 5 arguments but 2 +arguments were supplied + --> src\lib.rs:142:1 + | + 142 | #[contractimpl] + | ^^^^^^^^^^^^^^^ three arguments of type `u32`, +`soroban_sdk::String`, and `soroban_sdk::Address` are +missing + | +note: associated function defined here + --> src\lib.rs:2439:12 + | +2439 | pub fn get_financial_metrics( + | ^^^^^^^^^^^^^^^^^^^^^ +... +2442 | rating: u32, + | ----------- +2443 | feedback: String, + | ---------------- +2444 | rater: Address, + | -------------- + = note: this error originates in the attribute macro +`contractimpl` (in Nightly builds, run with -Z +macro-backtrace for more info) + +error[E0061]: this function takes 5 arguments but 2 +arguments were supplied + --> src\lib.rs:2849:12 + | + 142 | #[contractimpl] + | --------------- three arguments of type +`soroban_sdk::Val`, `soroban_sdk::Val`, and +`soroban_sdk::Val` are missing +... +2849 | pub fn get_financial_metrics( + | ^^^^^^^^^^^^^^^^^^^^^ + | +note: function defined here + --> src\lib.rs:2439:12 + | + 142 | #[contractimpl] + | --------------- +... +2439 | pub fn get_financial_metrics( + | ^^^^^^^^^^^^^^^^^^^^^ +help: provide the arguments + | +2849 | pub fn get_financial_metrics(#[contractimpl], +#[contractimpl], /* soroban_sdk::Val */, /* +soroban_sdk::Val */, /* soroban_sdk::Val */)( + | +++++++++++++++++++++ +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++ + +error[E0061]: this method takes 2 arguments but 3 arguments +were supplied + --> src\test_investment_queries.rs:89:16 + | + 89 | ctx.client.set_investment_limit(&ctx.admin, +investor, &limit); + | ^^^^^^^^^^^^^^^^^^^^ +-------- unexpected argument #2 of type +`&soroban_sdk::Address` + | +note: method defined here + --> src\lib.rs:1321:12 + | +1321 | pub fn set_investment_limit( + | ^^^^^^^^^^^^^^^^^^^^ +help: remove the extra argument + | + 89 - ctx.client.set_investment_limit(&ctx.admin, +investor, &limit); + 89 + ctx.client.set_investment_limit(&ctx.admin, +&limit); + | + +error[E0308]: mismatched types + --> src\test_investment_queries.rs:113:56 + | +113 | +crate::storage::InvestmentStorage::store(&ctx.env, +&investment); + | ---------------------------------------- + ^^^^^^^^^^^ expected `investment::Investment`, found +`types::Investment` + | | + | arguments to this function are incorrect + | + = note: `types::Investment` and +`investment::Investment` have similar names, but are +actually distinct types +note: `types::Investment` is defined in module +`crate::types` of the current crate + --> src\types.rs:166:1 + | +166 | pub struct Investment { + | ^^^^^^^^^^^^^^^^^^^^^ +note: `investment::Investment` is defined in module +`crate::investment` of the current crate + --> src\investment.rs:86:1 + | + 86 | pub struct Investment { + | ^^^^^^^^^^^^^^^^^^^^^ +note: associated function defined here + --> src\storage.rs:465:12 + | +465 | pub fn store(env: &Env, investment: &Investment) { + | ^^^^^ ----------------------- + +error[E0308]: mismatched types + --> src\test_investment_queries.rs:133:15 + | +133 | &Some(InvestmentStatus::Active), + | ---- ^^^^^^^^^^^^^^^^^^^^^^^^ expected +`investment::InvestmentStatus`, found +`types::InvestmentStatus` + | | + | arguments to this enum variant are incorrect + | + = note: `types::InvestmentStatus` and +`investment::InvestmentStatus` have similar names, but are +actually distinct types +note: `types::InvestmentStatus` is defined in module +`crate::types` of the current crate + --> src\types.rs:39:1 + | + 39 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +note: `investment::InvestmentStatus` is defined in module +`crate::investment` of the current crate + --> src\investment.rs:37:1 + | + 37 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +help: the type constructed contains +`types::InvestmentStatus` due to the type of the argument +passed + --> src\test_investment_queries.rs:133:10 + | +133 | &Some(InvestmentStatus::Active), + | ^^^^^------------------------^ + | | + | this argument influences the type of +`Some` +note: tuple variant defined here + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\option.rs:608:5 + +error[E0308]: mismatched types + --> src\test_investment_queries.rs:156:15 + | +156 | &Some(InvestmentStatus::Active), + | ---- ^^^^^^^^^^^^^^^^^^^^^^^^ expected +`investment::InvestmentStatus`, found +`types::InvestmentStatus` + | | + | arguments to this enum variant are incorrect + | + = note: `types::InvestmentStatus` and +`investment::InvestmentStatus` have similar names, but are +actually distinct types +note: `types::InvestmentStatus` is defined in module +`crate::types` of the current crate + --> src\types.rs:39:1 + | + 39 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +note: `investment::InvestmentStatus` is defined in module +`crate::investment` of the current crate + --> src\investment.rs:37:1 + | + 37 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +help: the type constructed contains +`types::InvestmentStatus` due to the type of the argument +passed + --> src\test_investment_queries.rs:156:10 + | +156 | &Some(InvestmentStatus::Active), + | ^^^^^------------------------^ + | | + | this argument influences the type of +`Some` +note: tuple variant defined here + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\option.rs:608:5 + +error[E0308]: mismatched types + --> src\test_investment_queries.rs:179:15 + | +179 | &Some(InvestmentStatus::Active), + | ---- ^^^^^^^^^^^^^^^^^^^^^^^^ expected +`investment::InvestmentStatus`, found +`types::InvestmentStatus` + | | + | arguments to this enum variant are incorrect + | + = note: `types::InvestmentStatus` and +`investment::InvestmentStatus` have similar names, but are +actually distinct types +note: `types::InvestmentStatus` is defined in module +`crate::types` of the current crate + --> src\types.rs:39:1 + | + 39 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +note: `investment::InvestmentStatus` is defined in module +`crate::investment` of the current crate + --> src\investment.rs:37:1 + | + 37 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +help: the type constructed contains +`types::InvestmentStatus` due to the type of the argument +passed + --> src\test_investment_queries.rs:179:10 + | +179 | &Some(InvestmentStatus::Active), + | ^^^^^------------------------^ + | | + | this argument influences the type of +`Some` +note: tuple variant defined here + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\option.rs:608:5 + +error[E0308]: mismatched types + --> src\test_investment_queries.rs:202:15 + | +202 | &Some(InvestmentStatus::Active), + | ---- ^^^^^^^^^^^^^^^^^^^^^^^^ expected +`investment::InvestmentStatus`, found +`types::InvestmentStatus` + | | + | arguments to this enum variant are incorrect + | + = note: `types::InvestmentStatus` and +`investment::InvestmentStatus` have similar names, but are +actually distinct types +note: `types::InvestmentStatus` is defined in module +`crate::types` of the current crate + --> src\types.rs:39:1 + | + 39 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +note: `investment::InvestmentStatus` is defined in module +`crate::investment` of the current crate + --> src\investment.rs:37:1 + | + 37 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +help: the type constructed contains +`types::InvestmentStatus` due to the type of the argument +passed + --> src\test_investment_queries.rs:202:10 + | +202 | &Some(InvestmentStatus::Active), + | ^^^^^------------------------^ + | | + | this argument influences the type of +`Some` +note: tuple variant defined here + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\option.rs:608:5 + +error[E0308]: mismatched types + --> src\test_investment_queries.rs:229:15 + | +229 | &Some(InvestmentStatus::Active), + | ---- ^^^^^^^^^^^^^^^^^^^^^^^^ expected +`investment::InvestmentStatus`, found +`types::InvestmentStatus` + | | + | arguments to this enum variant are incorrect + | + = note: `types::InvestmentStatus` and +`investment::InvestmentStatus` have similar names, but are +actually distinct types +note: `types::InvestmentStatus` is defined in module +`crate::types` of the current crate + --> src\types.rs:39:1 + | + 39 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +note: `investment::InvestmentStatus` is defined in module +`crate::investment` of the current crate + --> src\investment.rs:37:1 + | + 37 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +help: the type constructed contains +`types::InvestmentStatus` due to the type of the argument +passed + --> src\test_investment_queries.rs:229:10 + | +229 | &Some(InvestmentStatus::Active), + | ^^^^^------------------------^ + | | + | this argument influences the type of +`Some` +note: tuple variant defined here + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\option.rs:608:5 + +error[E0308]: mismatched types + --> src\test_investment_queries.rs:291:15 + | +291 | &Some(InvestmentStatus::Active), + | ---- ^^^^^^^^^^^^^^^^^^^^^^^^ expected +`investment::InvestmentStatus`, found +`types::InvestmentStatus` + | | + | arguments to this enum variant are incorrect + | + = note: `types::InvestmentStatus` and +`investment::InvestmentStatus` have similar names, but are +actually distinct types +note: `types::InvestmentStatus` is defined in module +`crate::types` of the current crate + --> src\types.rs:39:1 + | + 39 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +note: `investment::InvestmentStatus` is defined in module +`crate::investment` of the current crate + --> src\investment.rs:37:1 + | + 37 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +help: the type constructed contains +`types::InvestmentStatus` due to the type of the argument +passed + --> src\test_investment_queries.rs:291:10 + | +291 | &Some(InvestmentStatus::Active), + | ^^^^^------------------------^ + | | + | this argument influences the type of +`Some` +note: tuple variant defined here + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\option.rs:608:5 + +error[E0308]: mismatched types + --> src\test_investment_queries.rs:298:15 + | +298 | &Some(InvestmentStatus::Active), + | ---- ^^^^^^^^^^^^^^^^^^^^^^^^ expected +`investment::InvestmentStatus`, found +`types::InvestmentStatus` + | | + | arguments to this enum variant are incorrect + | + = note: `types::InvestmentStatus` and +`investment::InvestmentStatus` have similar names, but are +actually distinct types +note: `types::InvestmentStatus` is defined in module +`crate::types` of the current crate + --> src\types.rs:39:1 + | + 39 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +note: `investment::InvestmentStatus` is defined in module +`crate::investment` of the current crate + --> src\investment.rs:37:1 + | + 37 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +help: the type constructed contains +`types::InvestmentStatus` due to the type of the argument +passed + --> src\test_investment_queries.rs:298:10 + | +298 | &Some(InvestmentStatus::Active), + | ^^^^^------------------------^ + | | + | this argument influences the type of +`Some` +note: tuple variant defined here + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\option.rs:608:5 + +error[E0308]: mismatched types + --> src\test_investment_queries.rs:318:15 + | +318 | &Some(InvestmentStatus::Active), + | ---- ^^^^^^^^^^^^^^^^^^^^^^^^ expected +`investment::InvestmentStatus`, found +`types::InvestmentStatus` + | | + | arguments to this enum variant are incorrect + | + = note: `types::InvestmentStatus` and +`investment::InvestmentStatus` have similar names, but are +actually distinct types +note: `types::InvestmentStatus` is defined in module +`crate::types` of the current crate + --> src\types.rs:39:1 + | + 39 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +note: `investment::InvestmentStatus` is defined in module +`crate::investment` of the current crate + --> src\investment.rs:37:1 + | + 37 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +help: the type constructed contains +`types::InvestmentStatus` due to the type of the argument +passed + --> src\test_investment_queries.rs:318:10 + | +318 | &Some(InvestmentStatus::Active), + | ^^^^^------------------------^ + | | + | this argument influences the type of +`Some` +note: tuple variant defined here + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\option.rs:608:5 + +error[E0308]: mismatched types + --> src\test_investment_queries.rs:339:15 + | +339 | &Some(InvestmentStatus::Active), + | ---- ^^^^^^^^^^^^^^^^^^^^^^^^ expected +`investment::InvestmentStatus`, found +`types::InvestmentStatus` + | | + | arguments to this enum variant are incorrect + | + = note: `types::InvestmentStatus` and +`investment::InvestmentStatus` have similar names, but are +actually distinct types +note: `types::InvestmentStatus` is defined in module +`crate::types` of the current crate + --> src\types.rs:39:1 + | + 39 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +note: `investment::InvestmentStatus` is defined in module +`crate::investment` of the current crate + --> src\investment.rs:37:1 + | + 37 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +help: the type constructed contains +`types::InvestmentStatus` due to the type of the argument +passed + --> src\test_investment_queries.rs:339:10 + | +339 | &Some(InvestmentStatus::Active), + | ^^^^^------------------------^ + | | + | this argument influences the type of +`Some` +note: tuple variant defined here + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\option.rs:608:5 + +error[E0308]: mismatched types + --> src\test_investment_queries.rs:346:15 + | +346 | &Some(InvestmentStatus::Active), + | ---- ^^^^^^^^^^^^^^^^^^^^^^^^ expected +`investment::InvestmentStatus`, found +`types::InvestmentStatus` + | | + | arguments to this enum variant are incorrect + | + = note: `types::InvestmentStatus` and +`investment::InvestmentStatus` have similar names, but are +actually distinct types +note: `types::InvestmentStatus` is defined in module +`crate::types` of the current crate + --> src\types.rs:39:1 + | + 39 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +note: `investment::InvestmentStatus` is defined in module +`crate::investment` of the current crate + --> src\investment.rs:37:1 + | + 37 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +help: the type constructed contains +`types::InvestmentStatus` due to the type of the argument +passed + --> src\test_investment_queries.rs:346:10 + | +346 | &Some(InvestmentStatus::Active), + | ^^^^^------------------------^ + | | + | this argument influences the type of +`Some` +note: tuple variant defined here + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\option.rs:608:5 + +error[E0308]: mismatched types + --> src\test_investment_queries.rs:370:15 + | +370 | &Some(InvestmentStatus::Active), + | ---- ^^^^^^^^^^^^^^^^^^^^^^^^ expected +`investment::InvestmentStatus`, found +`types::InvestmentStatus` + | | + | arguments to this enum variant are incorrect + | + = note: `types::InvestmentStatus` and +`investment::InvestmentStatus` have similar names, but are +actually distinct types +note: `types::InvestmentStatus` is defined in module +`crate::types` of the current crate + --> src\types.rs:39:1 + | + 39 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +note: `investment::InvestmentStatus` is defined in module +`crate::investment` of the current crate + --> src\investment.rs:37:1 + | + 37 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +help: the type constructed contains +`types::InvestmentStatus` due to the type of the argument +passed + --> src\test_investment_queries.rs:370:10 + | +370 | &Some(InvestmentStatus::Active), + | ^^^^^------------------------^ + | | + | this argument influences the type of +`Some` +note: tuple variant defined here + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\option.rs:608:5 + +error[E0308]: mismatched types + --> src\test_investment_queries.rs:433:15 + | +433 | &Some(InvestmentStatus::Active), + | ---- ^^^^^^^^^^^^^^^^^^^^^^^^ expected +`investment::InvestmentStatus`, found +`types::InvestmentStatus` + | | + | arguments to this enum variant are incorrect + | + = note: `types::InvestmentStatus` and +`investment::InvestmentStatus` have similar names, but are +actually distinct types +note: `types::InvestmentStatus` is defined in module +`crate::types` of the current crate + --> src\types.rs:39:1 + | + 39 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +note: `investment::InvestmentStatus` is defined in module +`crate::investment` of the current crate + --> src\investment.rs:37:1 + | + 37 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +help: the type constructed contains +`types::InvestmentStatus` due to the type of the argument +passed + --> src\test_investment_queries.rs:433:10 + | +433 | &Some(InvestmentStatus::Active), + | ^^^^^------------------------^ + | | + | this argument influences the type of +`Some` +note: tuple variant defined here + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\option.rs:608:5 + +error[E0308]: mismatched types + --> src\test_investment_queries.rs:440:15 + | +440 | &Some(InvestmentStatus::Active), + | ---- ^^^^^^^^^^^^^^^^^^^^^^^^ expected +`investment::InvestmentStatus`, found +`types::InvestmentStatus` + | | + | arguments to this enum variant are incorrect + | + = note: `types::InvestmentStatus` and +`investment::InvestmentStatus` have similar names, but are +actually distinct types +note: `types::InvestmentStatus` is defined in module +`crate::types` of the current crate + --> src\types.rs:39:1 + | + 39 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +note: `investment::InvestmentStatus` is defined in module +`crate::investment` of the current crate + --> src\investment.rs:37:1 + | + 37 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +help: the type constructed contains +`types::InvestmentStatus` due to the type of the argument +passed + --> src\test_investment_queries.rs:440:10 + | +440 | &Some(InvestmentStatus::Active), + | ^^^^^------------------------^ + | | + | this argument influences the type of +`Some` +note: tuple variant defined here + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\option.rs:608:5 + +error[E0308]: mismatched types + --> src\test_investment_queries.rs:447:15 + | +447 | &Some(InvestmentStatus::Active), + | ---- ^^^^^^^^^^^^^^^^^^^^^^^^ expected +`investment::InvestmentStatus`, found +`types::InvestmentStatus` + | | + | arguments to this enum variant are incorrect + | + = note: `types::InvestmentStatus` and +`investment::InvestmentStatus` have similar names, but are +actually distinct types +note: `types::InvestmentStatus` is defined in module +`crate::types` of the current crate + --> src\types.rs:39:1 + | + 39 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +note: `investment::InvestmentStatus` is defined in module +`crate::investment` of the current crate + --> src\investment.rs:37:1 + | + 37 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +help: the type constructed contains +`types::InvestmentStatus` due to the type of the argument +passed + --> src\test_investment_queries.rs:447:10 + | +447 | &Some(InvestmentStatus::Active), + | ^^^^^------------------------^ + | | + | this argument influences the type of +`Some` +note: tuple variant defined here + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\option.rs:608:5 + +error[E0308]: mismatched types + --> src\test_investment_queries.rs:454:15 + | +454 | &Some(InvestmentStatus::Active), + | ---- ^^^^^^^^^^^^^^^^^^^^^^^^ expected +`investment::InvestmentStatus`, found +`types::InvestmentStatus` + | | + | arguments to this enum variant are incorrect + | + = note: `types::InvestmentStatus` and +`investment::InvestmentStatus` have similar names, but are +actually distinct types +note: `types::InvestmentStatus` is defined in module +`crate::types` of the current crate + --> src\types.rs:39:1 + | + 39 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +note: `investment::InvestmentStatus` is defined in module +`crate::investment` of the current crate + --> src\investment.rs:37:1 + | + 37 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +help: the type constructed contains +`types::InvestmentStatus` due to the type of the argument +passed + --> src\test_investment_queries.rs:454:10 + | +454 | &Some(InvestmentStatus::Active), + | ^^^^^------------------------^ + | | + | this argument influences the type of +`Some` +note: tuple variant defined here + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\option.rs:608:5 + +error[E0308]: mismatched types + --> src\test_investment_queries.rs:502:19 + | +502 | &Some(InvestmentStatus::Active), + | ---- ^^^^^^^^^^^^^^^^^^^^^^^^ expected +`investment::InvestmentStatus`, found +`types::InvestmentStatus` + | | + | arguments to this enum variant are +incorrect + | + = note: `types::InvestmentStatus` and +`investment::InvestmentStatus` have similar names, but are +actually distinct types +note: `types::InvestmentStatus` is defined in module +`crate::types` of the current crate + --> src\types.rs:39:1 + | + 39 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +note: `investment::InvestmentStatus` is defined in module +`crate::investment` of the current crate + --> src\investment.rs:37:1 + | + 37 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +help: the type constructed contains +`types::InvestmentStatus` due to the type of the argument +passed + --> src\test_investment_queries.rs:502:14 + | +502 | &Some(InvestmentStatus::Active), + | ^^^^^------------------------^ + | | + | this argument influences the type +of `Some` +note: tuple variant defined here + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\option.rs:608:5 + +error[E0308]: mismatched types + --> src\test_investment_queries.rs:508:33 + | +508 | assert!(result.len() <= +crate::investment_queries::MAX_QUERY_LIMIT as usize); + | ------------ +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +expected `u32`, found `usize` + | | + | expected because this is `u32` + | +help: you can convert a `usize` to a `u32` and panic if the +converted value doesn't fit + | +508 | assert!(result.len() <= +(crate::investment_queries::MAX_QUERY_LIMIT as +usize).try_into().unwrap()); + | + + +++++++++++++++++++++ + +error[E0308]: mismatched types + --> src\test_investment_queries.rs:539:14 + | +539 | Some(InvestmentStatus::Active), + | ---- ^^^^^^^^^^^^^^^^^^^^^^^^ expected +`investment::InvestmentStatus`, found +`types::InvestmentStatus` + | | + | arguments to this enum variant are incorrect + | + = note: `types::InvestmentStatus` and +`investment::InvestmentStatus` have similar names, but are +actually distinct types +note: `types::InvestmentStatus` is defined in module +`crate::types` of the current crate + --> src\types.rs:39:1 + | + 39 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +note: `investment::InvestmentStatus` is defined in module +`crate::investment` of the current crate + --> src\investment.rs:37:1 + | + 37 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +help: the type constructed contains +`types::InvestmentStatus` due to the type of the argument +passed + --> src\test_investment_queries.rs:539:9 + | +539 | Some(InvestmentStatus::Active), + | ^^^^^------------------------^ + | | + | this argument influences the type of +`Some` +note: tuple variant defined here + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\option.rs:608:5 + +error[E0308]: mismatched types + --> src\test_investment_queries.rs:545:14 + | +545 | Some(InvestmentStatus::Completed), + | ---- ^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected +`investment::InvestmentStatus`, found +`types::InvestmentStatus` + | | + | arguments to this enum variant are incorrect + | + = note: `types::InvestmentStatus` and +`investment::InvestmentStatus` have similar names, but are +actually distinct types +note: `types::InvestmentStatus` is defined in module +`crate::types` of the current crate + --> src\types.rs:39:1 + | + 39 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +note: `investment::InvestmentStatus` is defined in module +`crate::investment` of the current crate + --> src\investment.rs:37:1 + | + 37 | pub enum InvestmentStatus { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ +help: the type constructed contains +`types::InvestmentStatus` due to the type of the argument +passed + --> src\test_investment_queries.rs:545:9 + | +545 | Some(InvestmentStatus::Completed), + | ^^^^^---------------------------^ + | | + | this argument influences the type of +`Some` +note: tuple variant defined here + --> /rustc/01f6ddf7588f42ae2d7eb0a2f21d44e8e96674cf\libra +ry\core\src\option.rs:608:5 + +error[E0425]: cannot find function `fund_invoice` in this +scope + --> src\test_investment_queries.rs:562:22 + | +562 | let invoice_id = fund_invoice(&ctx, &business, +&investor, 1_000); + | ^^^^^^^^^^^^ not found in this +scope + +error[E0061]: this method takes 8 arguments but 7 arguments +were supplied + --> src\test_investment_consistency.rs:30:29 + | + 30 | let invoice_id = client.store_invoice( + | ^^^^^^^^^^^^^ + 31 | &business, + 32 | &amount, + | ------- expected `&soroban_sdk::Address`, +found `&i128` + 33 | &Address::generate(&env), // dummy currency + | ------------------------ expected `&i128`, +found `&soroban_sdk::Address` + 34 | &(env.ledger().timestamp() + 86400), + | ----------------------------------- argument +#4 of type `&soroban_sdk::Address` is missing + | +note: method defined here + --> src\lib.rs:437:12 + | +437 | pub fn store_invoice( + | ^^^^^^^^^^^^^ +... +442 | currency: Address, + | ----------------- +help: did you mean + | + 30 ~ let invoice_id = client.store_invoice( + 31 + &business, + 32 + &Address::generate(&env), + 33 + &amount, + 34 + /* &soroban_sdk::Address */, + 35 + &(env.ledger().timestamp() + 86400), + 36 + &String::from_str(&env, "Invoice"), + 37 + &InvoiceCategory::Services, + 38 + &Vec::new(&env), + 39 ~ ); + | + +error[E0061]: this method takes 8 arguments but 7 arguments +were supplied + --> src\test_string_limits.rs:182:22 + | +182 | let res = client.try_store_invoice( + | ^^^^^^^^^^^^^^^^^ +183 | &business, +184 | &1000, + | ----- expected `&soroban_sdk::Address`, found +`&{integer}` +185 | ¤cy, + | --------- expected `&i128`, found +`&soroban_sdk::Address` +186 | &due_date, + | --------- argument #4 of type +`&soroban_sdk::Address` is missing + | +note: method defined here + --> src\lib.rs:437:12 + | +437 | pub fn store_invoice( + | ^^^^^^^^^^^^^ +... +442 | currency: Address, + | ----------------- +help: did you mean + | +182 ~ let res = client.try_store_invoice( +183 + &business, +184 + ¤cy, +185 + &1000, +186 + /* &soroban_sdk::Address */, +187 + &due_date, +188 + &String::from_str(&env, "Desc"), +189 + &crate::invoice::InvoiceCategory::Services, +190 + &tags, +191 ~ ); + | + +error[E0061]: this method takes 8 arguments but 7 arguments +were supplied + --> src\test_string_limits.rs:212:22 + | +212 | let res = client.try_store_invoice( + | ^^^^^^^^^^^^^^^^^ +213 | &business, +214 | &1000, + | ----- expected `&soroban_sdk::Address`, found +`&{integer}` +215 | ¤cy, + | --------- expected `&i128`, found +`&soroban_sdk::Address` +216 | &due_date, + | --------- argument #4 of type +`&soroban_sdk::Address` is missing + | +note: method defined here + --> src\lib.rs:437:12 + | +437 | pub fn store_invoice( + | ^^^^^^^^^^^^^ +... +442 | currency: Address, + | ----------------- +help: did you mean + | +212 ~ let res = client.try_store_invoice( +213 + &business, +214 + ¤cy, +215 + &1000, +216 + /* &soroban_sdk::Address */, +217 + &due_date, +218 + &String::from_str(&env, "Desc"), +219 + &crate::invoice::InvoiceCategory::Services, +220 + &tags, +221 ~ ); + | + +error[E0061]: this method takes 8 arguments but 7 arguments +were supplied + --> src\test_string_limits.rs:235:22 + | +235 | let res = client.try_store_invoice( + | ^^^^^^^^^^^^^^^^^ +236 | &business, +237 | &1000, + | ----- expected `&soroban_sdk::Address`, found +`&{integer}` +238 | ¤cy, + | --------- expected `&i128`, found +`&soroban_sdk::Address` +239 | &due_date, + | --------- argument #4 of type +`&soroban_sdk::Address` is missing + | +note: method defined here + --> src\lib.rs:437:12 + | +437 | pub fn store_invoice( + | ^^^^^^^^^^^^^ +... +442 | currency: Address, + | ----------------- +help: did you mean + | +235 ~ let res = client.try_store_invoice( +236 + &business, +237 + ¤cy, +238 + &1000, +239 + /* &soroban_sdk::Address */, +240 + &due_date, +241 + &String::from_str(&env, "Desc"), +242 + &crate::invoice::InvoiceCategory::Services, +243 + &tags, +244 ~ ); + | + +error[E0599]: no method named `get_vesting_vested` found +for struct `QuickLendXContractClient<'a>` in the current +scope + --> src\test_vesting.rs:126:25 + | +126 | let vested = +client.get_vesting_vested(&1).unwrap(); + | ^^^^^^^^^^^^^^^^^^ + | + ::: src\lib.rs:111:1 + | +111 | #[contract] + | ----------- method `get_vesting_vested` not found for +this struct + | +help: there is a method `get_vesting_schedule` with a +similar name + | +126 - let vested = +client.get_vesting_vested(&1).unwrap(); +126 + let vested = +client.get_vesting_schedule(&1).unwrap(); + | + +error[E0599]: no method named `get_vesting_vested` found +for struct `QuickLendXContractClient<'a>` in the current +scope + --> src\test_vesting.rs:208:25 + | +208 | let vested = +client.get_vesting_vested(&1).unwrap(); + | ^^^^^^^^^^^^^^^^^^ + | + ::: src\lib.rs:111:1 + | +111 | #[contract] + | ----------- method `get_vesting_vested` not found for +this struct + | +help: there is a method `get_vesting_schedule` with a +similar name + | +208 - let vested = +client.get_vesting_vested(&1).unwrap(); +208 + let vested = +client.get_vesting_schedule(&1).unwrap(); + | + +error[E0599]: no method named `get_vesting_vested` found +for struct `QuickLendXContractClient<'a>` in the current +scope + --> src\test_vesting.rs:263:25 + | +263 | let vested = +client.get_vesting_vested(&1).unwrap(); + | ^^^^^^^^^^^^^^^^^^ + | + ::: src\lib.rs:111:1 + | +111 | #[contract] + | ----------- method `get_vesting_vested` not found for +this struct + | +help: there is a method `get_vesting_schedule` with a +similar name + | +263 - let vested = +client.get_vesting_vested(&1).unwrap(); +263 + let vested = +client.get_vesting_schedule(&1).unwrap(); + | + +error[E0599]: no method named `get_vesting_vested` found +for struct `QuickLendXContractClient<'a>` in the current +scope + --> src\test_vesting.rs:297:25 + | +297 | let vested = +client.get_vesting_vested(&1).unwrap(); + | ^^^^^^^^^^^^^^^^^^ + | + ::: src\lib.rs:111:1 + | +111 | #[contract] + | ----------- method `get_vesting_vested` not found for +this struct + | +help: there is a method `get_vesting_schedule` with a +similar name + | +297 - let vested = +client.get_vesting_vested(&1).unwrap(); +297 + let vested = +client.get_vesting_schedule(&1).unwrap(); + | + +error[E0599]: no method named `get_vesting_vested` found +for struct `QuickLendXContractClient<'a>` in the current +scope + --> src\test_vesting.rs:424:25 + | +424 | let vested = +client.get_vesting_vested(&1).unwrap(); + | ^^^^^^^^^^^^^^^^^^ + | + ::: src\lib.rs:111:1 + | +111 | #[contract] + | ----------- method `get_vesting_vested` not found for +this struct + | +help: there is a method `get_vesting_schedule` with a +similar name + | +424 - let vested = +client.get_vesting_vested(&1).unwrap(); +424 + let vested = +client.get_vesting_schedule(&1).unwrap(); + | + +error[E0599]: no method named `get_vesting_vested` found +for struct `QuickLendXContractClient<'a>` in the current +scope + --> src\test_vesting.rs:523:25 + | +523 | let vested = +client.get_vesting_vested(&1).unwrap(); + | ^^^^^^^^^^^^^^^^^^ + | + ::: src\lib.rs:111:1 + | +111 | #[contract] + | ----------- method `get_vesting_vested` not found for +this struct + | +help: there is a method `get_vesting_schedule` with a +similar name + | +523 - let vested = +client.get_vesting_vested(&1).unwrap(); +523 + let vested = +client.get_vesting_schedule(&1).unwrap(); + | + +error[E0599]: no method named `get_vesting_vested` found +for struct `QuickLendXContractClient<'a>` in the current +scope + --> src\test_vesting.rs:608:25 + | +608 | let vested = +client.get_vesting_vested(&1).unwrap(); + | ^^^^^^^^^^^^^^^^^^ + | + ::: src\lib.rs:111:1 + | +111 | #[contract] + | ----------- method `get_vesting_vested` not found for +this struct + | +help: there is a method `get_vesting_schedule` with a +similar name + | +608 - let vested = +client.get_vesting_vested(&1).unwrap(); +608 + let vested = +client.get_vesting_schedule(&1).unwrap(); + | + +error[E0599]: no method named `get_vesting_vested` found +for struct `QuickLendXContractClient<'a>` in the current +scope + --> src\test_vesting.rs:776:33 + | +776 | let initial_vested = +client.get_vesting_vested(&1).unwrap(); + | ^^^^^^^^^^^^^^^^^^ + | + ::: src\lib.rs:111:1 + | +111 | #[contract] + | ----------- method `get_vesting_vested` not found for +this struct + | +help: there is a method `get_vesting_schedule` with a +similar name + | +776 - let initial_vested = +client.get_vesting_vested(&1).unwrap(); +776 + let initial_vested = +client.get_vesting_schedule(&1).unwrap(); + | + +error[E0599]: no method named `get_vesting_vested` found +for struct `QuickLendXContractClient<'a>` in the current +scope + --> src\test_vesting.rs:781:29 + | +781 | let new_vested = +client.get_vesting_vested(&1).unwrap(); + | ^^^^^^^^^^^^^^^^^^ + | + ::: src\lib.rs:111:1 + | +111 | #[contract] + | ----------- method `get_vesting_vested` not found for +this struct + | +help: there is a method `get_vesting_schedule` with a +similar name + | +781 - let new_vested = +client.get_vesting_vested(&1).unwrap(); +781 + let new_vested = +client.get_vesting_schedule(&1).unwrap(); + | + +error[E0599]: no method named `get_vesting_vested` found +for struct `QuickLendXContractClient<'a>` in the current +scope + --> src\test_vesting.rs:873:25 + | +873 | let vested = +client.get_vesting_vested(&1).unwrap(); + | ^^^^^^^^^^^^^^^^^^ + | + ::: src\lib.rs:111:1 + | +111 | #[contract] + | ----------- method `get_vesting_vested` not found for +this struct + | +help: there is a method `get_vesting_schedule` with a +similar name + | +873 - let vested = +client.get_vesting_vested(&1).unwrap(); +873 + let vested = +client.get_vesting_schedule(&1).unwrap(); + | + +error[E0599]: no method named `get_vesting_vested` found +for struct `QuickLendXContractClient<'a>` in the current +scope + --> src\test_vesting.rs:927:25 + | +927 | let vested = +client.get_vesting_vested(&1).unwrap(); + | ^^^^^^^^^^^^^^^^^^ + | + ::: src\lib.rs:111:1 + | +111 | #[contract] + | ----------- method `get_vesting_vested` not found for +this struct + | +help: there is a method `get_vesting_schedule` with a +similar name + | +927 - let vested = +client.get_vesting_vested(&1).unwrap(); +927 + let vested = +client.get_vesting_schedule(&1).unwrap(); + | + +warning: unused variable: `max_fee` + --> src\fees.rs:422:9 + | +422 | max_fee: i128, + | ^^^^^^^ help: if this is intentional, prefix +it with an underscore: `_max_fee` + | + = note: `#[warn(unused_variables)]` (part of +`#[warn(unused)]`) on by default + +warning: unused variable: `env` + --> src\init.rs:304:9 + | +304 | env: &Env, + | ^^^ help: if this is intentional, prefix it +with an underscore: `_env` + +error[E0506]: cannot assign to `self.tags` because it is +borrowed + --> src\invoice.rs:752:9 + | +735 | let env = self.tags.env(); + | --------- `self.tags` is borrowed +here +... +752 | self.tags = new_tags; + | ^^^^^^^^^ `self.tags` is assigned to here but +it was already borrowed +... +755 | InvoiceStorage::remove_tag_index(&env, +&normalized, &self.id); + | ---- borrow +later used here + +warning: unused variable: `admin` + --> src\test_default.rs:52:5 + | +52 | admin: &Address, + | ^^^^^ help: if this is intentional, prefix it with +an underscore: `_admin` + | + = note: `#[warn(unused_variables)]` (part of +`#[warn(unused)]`) on by default + +warning: unused variable: `admin` + --> src\test_default.rs:720:23 + | +720 | let (env, client, admin) = setup(); + | ^^^^^ help: if this is +intentional, prefix it with an underscore: `_admin` + +warning: unused variable: `admin` + --> src\test_fees.rs:24:65 + | +24 | fn setup_investor(env: &Env, client: +&QuickLendXContractClient, admin: &Address) -> Address { + | + ^^^^^ help: if this is intentional, prefix it with +an underscore: `_admin` + +warning: unused variable: `admin` + --> src\test_fees.rs:233:9 + | +233 | let admin = setup_admin(&env, &client); + | ^^^^^ help: if this is intentional, prefix it +with an underscore: `_admin` + +warning: unused variable: `admin` + --> src\test_fees_extended.rs:23:65 + | +23 | fn setup_investor(env: &Env, client: +&QuickLendXContractClient, admin: &Address) -> Address { + | + ^^^^^ help: if this is intentional, prefix it with +an underscore: `_admin` + +warning: unused variable: `admin` + --> src\test_fees_extended.rs:97:9 + | +97 | let admin = setup_admin(&env, &client); + | ^^^^^ help: if this is intentional, prefix it +with an underscore: `_admin` + +warning: unused variable: `admin` + --> src\test_fees_extended.rs:111:9 + | +111 | let admin = setup_admin(&env, &client); + | ^^^^^ help: if this is intentional, prefix it +with an underscore: `_admin` + +warning: unused variable: `admin` + --> src\test_fees_extended.rs:451:9 + | +451 | let admin = setup_admin(&env, &client); + | ^^^^^ help: if this is intentional, prefix it +with an underscore: `_admin` + +warning: variable does not need to be mutable + --> src\storage.rs:281:13 + | +281 | let mut ids: Vec> = env + | ----^^^ + | | + | help: remove this `mut` + | + = note: `#[warn(unused_mut)]` (part of +`#[warn(unused)]`) on by default + +warning: variable does not need to be mutable + --> src\storage.rs:310:13 + | +310 | let mut ids: Vec> = env + | ----^^^ + | | + | help: remove this `mut` + +warning: unused variable: `limits` + --> src\verification.rs:669:9 + | +669 | let limits = +ProtocolLimitsContract::get_protocol_limits(env.clone()); + | ^^^^^^ help: if this is intentional, prefix +it with an underscore: `_limits` + +warning: unused variable: `limit` + --> src\lib.rs:131:39 + | +131 | fn validate_query_params(offset: u32, limit: u32) -> +Result<(), QuickLendXError> { + | ^^^^^ help: if +this is intentional, prefix it with an underscore: `_limit` + +warning: unused variable: `max_fee` + --> src\fees.rs:422:9 + | +422 | max_fee: i128, + | ^^^^^^^ help: if this is intentional, prefix +it with an underscore: `_max_fee` + +Some errors have detailed explanations: E0034, E0061, +E0277, E0308, E0422, E0425, E0428, E0433, E0506... +For more information about an error, try `rustc --explain +E0034`. +warning: `quicklendx-contracts` (lib) generated 87 warnings +error: could not compile `quicklendx-contracts` (lib) due +to 203 previous errors; 87 warnings emitted +warning: build failed, waiting for other jobs to finish... +warning: unused variable: `client` + --> src\test_admin.rs:274:19 + | +274 | let (env, client, admin) = setup_with_admin(); + | ^^^^^^ help: if this is +intentional, prefix it with an underscore: `_client` + +warning: unused variable: `admin1` + --> src\test_admin.rs:469:27 + | +469 | let (env, client, admin1) = +setup_with_admin(); + | ^^^^^^ help: if this is +intentional, prefix it with an underscore: `_admin1` + +warning: unused variable: `env` + --> src\test_init.rs:580:14 + | +580 | let (env, client, params) = +setup_initialized(); + | ^^^ help: if this is intentional, prefix +it with an underscore: `_env` + +warning: unused variable: `env` + --> src\test_init.rs:596:14 + | +596 | let (env, client) = setup(); + | ^^^ help: if this is intentional, prefix +it with an underscore: `_env` + +warning: unused variable: `env` + --> src\test_init.rs:619:14 + | +619 | let (env, client, params) = +setup_initialized(); + | ^^^ help: if this is intentional, prefix +it with an underscore: `_env` + +warning: unused variable: `env` + --> src\test_overflow.rs:159:10 + | +159 | let (env, client, _admin) = setup_test(); + | ^^^ help: if this is intentional, prefix it +with an underscore: `_env` + +warning: unused variable: `env` + --> src\test_overflow.rs:293:9 + | +293 | let env = Env::default(); + | ^^^ help: if this is intentional, prefix it +with an underscore: `_env` + +warning: unused variable: `env` + --> src\test_overflow.rs:336:10 + | +336 | let (env, client, _admin) = setup_test(); + | ^^^ help: if this is intentional, prefix it +with an underscore: `_env` + +warning: unused variable: `env` + --> src\test_investment_queries.rs:241:9 + | +241 | let env = Env::default(); + | ^^^ help: if this is intentional, prefix it +with an underscore: `_env` + +warning: unused variable: `env` + --> src\test_investment_queries.rs:258:9 + | +258 | let env = Env::default(); + | ^^^ help: if this is intentional, prefix it +with an underscore: `_env` + +warning: unused variable: `client` + --> src\test_investment_consistency.rs:64:9 + | +64 | let client = QuickLendXContractClient::new(&env, +&contract_id); + | ^^^^^^ help: if this is intentional, prefix it +with an underscore: `_client` + +warning: unused variable: `cliff` + --> src\test_vesting.rs:88:9 + | +88 | let cliff = start + cliff_seconds; + | ^^^^^ help: if this is intentional, prefix it +with an underscore: `_cliff` + +warning: unused variable: `token_client` + --> src\test_vesting.rs:338:53 + | +338 | let (env, client, admin, beneficiary, token_id, +token_client) = setup(); + | +^^^^^^^^^^^^ help: if this is intentional, prefix it with +an underscore: `_token_client` + +warning: unused variable: `final_release` + --> src\test_vesting.rs:456:9 + | +456 | let final_release = +client.release_vested_tokens(&beneficiary, &id); + | ^^^^^^^^^^^^^ help: if this is intentional, +prefix it with an underscore: `_final_release` + +warning: unused variable: `release3` + --> src\test_vesting.rs:747:9 + | +747 | let release3 = +client.release_vested_tokens(&beneficiary, &id); + | ^^^^^^^^ help: if this is intentional, prefix +it with an underscore: `_release3` + +Some errors have detailed explanations: E0034, E0061, +E0063, E0277, E0308, E0422, E0425, E0428, E0433... +warning: `quicklendx-contracts` (lib test) generated 120 +warnings (85 duplicates) +error: could not compile `quicklendx-contracts` (lib test) +due to 370 previous errors; 120 warnings emitted diff --git a/quicklendx-contracts/src/admin.rs b/quicklendx-contracts/src/admin.rs index da40c17b..6986dda7 100644 --- a/quicklendx-contracts/src/admin.rs +++ b/quicklendx-contracts/src/admin.rs @@ -251,6 +251,7 @@ impl AdminStorage { /// Alias for [`Self::require_admin`] (call sites that use the `_auth` name). #[inline] pub fn require_admin_auth(env: &Env, address: &Address) -> Result<(), QuickLendXError> { + address.require_auth(); Self::require_admin(env, address) } diff --git a/quicklendx-contracts/src/invoice.rs b/quicklendx-contracts/src/invoice.rs index 51ad01e8..3707006a 100644 --- a/quicklendx-contracts/src/invoice.rs +++ b/quicklendx-contracts/src/invoice.rs @@ -790,17 +790,10 @@ impl Invoice { // 🔒 AUTH PROTECTION self.business.require_auth(); -<<<<<<< feature/542-max-invoice-limit-status-aware - let env = self.business.env(); // Use business env instead of tags env - let normalized = normalize_tag(&env, &tag)?; - let mut new_tags = Vec::new(&env); - let mut found = false; -======= let normalized = { let env = self.tags.env(); normalize_tag(&env, &tag)? }; ->>>>>>> main let new_tags = { let env = self.tags.env(); @@ -1245,8 +1238,6 @@ impl InvoiceStorage { high_rated_invoices } -<<<<<<< feature/542-max-invoice-limit-status-aware -======= /// Count invoices that have received at least one rating. pub fn get_invoices_with_ratings_count(env: &Env) -> u32 { let mut count = 0u32; @@ -1261,7 +1252,6 @@ impl InvoiceStorage { } count } ->>>>>>> main fn add_to_metadata_index( env: &Env, key: &(soroban_sdk::Symbol, String), @@ -1390,16 +1380,12 @@ impl InvoiceStorage { } } -<<<<<<< feature/542-max-invoice-limit-status-aware - /// Get total count of active invoices in system -======= // Remove the main invoice record env.storage().instance().remove(invoice_id); } } /// Get total count of active invoices in the system ->>>>>>> main pub fn get_total_invoice_count(env: &Env) -> u32 { env.storage() .instance() diff --git a/quicklendx-contracts/src/lib.rs b/quicklendx-contracts/src/lib.rs index 188d4648..ec6a4477 100644 --- a/quicklendx-contracts/src/lib.rs +++ b/quicklendx-contracts/src/lib.rs @@ -141,7 +141,7 @@ fn validate_query_params(offset: u32, limit: u32) -> Result<(), QuickLendXError> } /// Map the contract-exported `types::BidStatus` filter to the bid-storage enum. -fn map_public_bid_status(s: BidStatus) -> bid::BidStatus { +fn map_public_bid_status(s: &BidStatus) -> bid::BidStatus { match s { BidStatus::Placed => bid::BidStatus::Placed, BidStatus::Withdrawn => bid::BidStatus::Withdrawn, @@ -452,6 +452,7 @@ impl QuickLendXContract { /// * `InvalidDescription` if description is empty pub fn store_invoice( env: Env, + admin: Address, business: Address, amount: i128, currency: Address, @@ -833,7 +834,7 @@ impl QuickLendXContract { /// Get bids filtered by status pub fn get_bids_by_status(env: Env, invoice_id: BytesN<32>, status: BidStatus) -> Vec { - BidStorage::get_bids_by_status(&env, &invoice_id, map_public_bid_status(status)) + BidStorage::get_bids_by_status(&env, &invoice_id, map_public_bid_status(&status)) } /// Get bids filtered by investor diff --git a/quicklendx-contracts/src/test.rs b/quicklendx-contracts/src/test.rs index a95c22a2..52561873 100644 --- a/quicklendx-contracts/src/test.rs +++ b/quicklendx-contracts/src/test.rs @@ -106,6 +106,7 @@ pub fn create_funded_invoice( let amount = 1_000i128; let due_date = env.ledger().timestamp() + 86_400; let invoice_id = client.store_invoice( + admin, &business, &amount, ¤cy, @@ -133,6 +134,7 @@ fn test_store_invoice() { let description = String::from_str(&env, "Test invoice for services"); let invoice_id = client.store_invoice( + admin, &business, &amount, ¤cy, @@ -165,6 +167,7 @@ fn test_store_invoice_validation() { let due_date = env.ledger().timestamp() + 86400; let invoice_id = client.store_invoice( + admin, &business, &1000, ¤cy, @@ -358,6 +361,7 @@ fn test_update_invoice_status() { let due_date = env.ledger().timestamp() + 86400; let invoice_id = client.store_invoice( + admin, &business, &1000, ¤cy, @@ -398,6 +402,7 @@ fn test_update_invoice_metadata_and_queries() { let due_date = env.ledger().timestamp() + 86400; let invoice_id = client.store_invoice( + admin, &business, &1_000, ¤cy, @@ -460,6 +465,7 @@ fn test_invoice_metadata_validation() { let due_date = env.ledger().timestamp() + 86400; let invoice_id = client.store_invoice( + admin, &business, &1_000, ¤cy, @@ -536,6 +542,7 @@ fn test_investor_verification_enforced() { client.verify_business(&admin, &business); let invoice_id = client.store_invoice( + admin, &business, &1_000, ¤cy, @@ -688,6 +695,7 @@ fn test_invoice_lifecycle() { let due_date = env.ledger().timestamp() + 86400; let invoice_id = client.store_invoice( + admin, &business, &1000, ¤cy, @@ -727,6 +735,7 @@ fn test_simple_bid_storage() { // Create and verify invoice let invoice_id = client.store_invoice( + admin, &business, &1000, ¤cy, @@ -783,6 +792,7 @@ fn test_unique_bid_id_generation() { // Create and verify invoice let invoice_id = client.store_invoice( + admin, &business, &1000, ¤cy, @@ -825,6 +835,7 @@ fn test_bid_expiration_cleanup() { client.set_admin(&admin); let invoice_id = client.store_invoice( + admin, &business, &1_000, ¤cy, @@ -874,6 +885,7 @@ fn test_bid_validation_rules() { // Create and verify invoice let invoice_id = client.store_invoice( + admin, &business, &1000, ¤cy, @@ -940,6 +952,7 @@ fn test_withdraw_bid() { // Create and verify invoice let invoice_id = client.store_invoice( + admin, &business, &1000, ¤cy, @@ -991,6 +1004,7 @@ fn test_get_bids_for_invoice() { // Create and verify invoice let invoice_id = client.store_invoice( + admin, &business, &2000, ¤cy, @@ -1062,6 +1076,7 @@ fn test_escrow_creation_on_bid_acceptance() { // Create and verify invoice let invoice_id = client.store_invoice( + admin, &business, &bid_amount, ¤cy, @@ -1118,6 +1133,7 @@ fn test_escrow_release_on_verification() { // Create invoice let invoice_id = client.store_invoice( + admin, &business, &bid_amount, ¤cy, @@ -1171,6 +1187,7 @@ fn test_escrow_refund() { // Create invoice let invoice_id = client.store_invoice( + admin, &business, &bid_amount, ¤cy, @@ -1228,6 +1245,7 @@ fn test_escrow_status_tracking() { // Create and verify invoice let invoice_id = client.store_invoice( + admin, &business, &bid_amount, ¤cy, @@ -1310,6 +1328,7 @@ fn test_escrow_double_operation_prevention() { // Create and verify invoice let invoice_id = client.store_invoice( + admin, &business, &bid_amount, ¤cy, @@ -1377,6 +1396,7 @@ fn test_add_invoice_rating() { // Create and fund an invoice let invoice_id = client.store_invoice( + admin, &business, &1000, ¤cy, @@ -1432,6 +1452,7 @@ fn test_add_invoice_rating_validation() { // Create invoice let invoice_id = client.store_invoice( + admin, &business, &1000, ¤cy, @@ -1500,6 +1521,7 @@ fn test_multiple_ratings() { // Create and fund invoice let invoice_id = client.store_invoice( + admin, &business, &1000, ¤cy, @@ -1550,6 +1572,7 @@ fn test_duplicate_rating_prevention() { // Create and fund invoice let invoice_id = client.store_invoice( + admin, &business, &1000, ¤cy, @@ -1686,6 +1709,7 @@ fn test_rating_statistics() { // Create and fund invoice let invoice_id = client.store_invoice( + admin, &business, &1000, ¤cy, @@ -1736,6 +1760,7 @@ fn test_rating_on_unfunded_invoice() { // Create invoice but don't fund it let invoice_id = client.store_invoice( + admin, &business, &1000, ¤cy, @@ -1832,6 +1857,7 @@ fn test_verify_invoice_requires_admin() { let due_date = env.ledger().timestamp() + 86400; let invoice_id = client.store_invoice( + admin, &business, &1000, ¤cy, @@ -3167,6 +3193,7 @@ fn test_check_overdue_invoices_triggers_notifications() { env.ledger().set_timestamp(base_time); let due_date = base_time + 1; let invoice_id = client.store_invoice( + admin, &business, &1000, ¤cy, @@ -3288,6 +3315,7 @@ fn test_overdue_invoice_notifications() { // Create invoice with future due date first let future_due_date = env.ledger().timestamp() + 86400; let invoice_id = client.store_invoice( + admin, &business, &1000, ¤cy, @@ -3348,6 +3376,7 @@ fn test_invoice_expiration_triggers_default() { let due_date = env.ledger().timestamp() + 60; let invoice_id = client.store_invoice( + admin, &business, &1_000, ¤cy, @@ -3406,6 +3435,7 @@ fn test_partial_payments_trigger_settlement() { let due_date = env.ledger().timestamp() + 86_400; let invoice_id = client.store_invoice( + admin, &business, &1_000, ¤cy, @@ -3901,6 +3931,7 @@ fn test_investment_insurance_lifecycle() { let due_date = env.ledger().timestamp() + 86_400; let invoice_id = client.store_invoice( + admin, &business, &1_000i128, ¤cy, @@ -3996,6 +4027,7 @@ fn test_query_investment_insurance_single_coverage() { let due_date = env.ledger().timestamp() + 86_400; let invoice_id = client.store_invoice( + admin, &business, &5_000i128, ¤cy, @@ -4096,6 +4128,7 @@ fn test_query_investment_insurance_premium_calculation() { let due_date = env.ledger().timestamp() + 86_400; let invoice_amount = 10_000i128; let invoice_id = client.store_invoice( + admin, &business, &invoice_amount, ¤cy, @@ -4184,6 +4217,7 @@ fn test_query_investment_insurance_inactive_coverage() { let due_date = env.ledger().timestamp() + 86_400; let invoice_id = client.store_invoice( + admin, &business, &1_000i128, ¤cy, @@ -4419,6 +4453,7 @@ fn test_invariants_after_full_lifecycle() { let amount = 10_000i128; let due_date = env.ledger().timestamp() + 86400; let invoice_id = client.store_invoice( + admin, &business, &amount, ¤cy, @@ -5159,6 +5194,7 @@ fn test_store_invoice_max_due_date_boundary() { // Test 1: Due date exactly at max boundary (365 days) should succeed let max_due_date = current_time + (365 * 86400); let invoice_id = client.store_invoice( + admin, &business, &amount, ¤cy, @@ -5287,6 +5323,7 @@ fn test_custom_max_due_date_limits() { // Test 1: Due date exactly at custom max boundary (30 days) should succeed let max_due_date = current_time + (30 * 86400); let invoice_id = client.store_invoice( + admin, &business, &amount, ¤cy, @@ -5352,6 +5389,7 @@ fn test_due_date_bounds_edge_cases() { // Test 1: Due date exactly 1 day ahead should succeed let one_day_due = current_time + 86400; let invoice_id = client.store_invoice( + admin, &business, &amount, ¤cy, diff --git a/quicklendx-contracts/src/test_bid.rs b/quicklendx-contracts/src/test_bid.rs index 26375bf1..9c6ff38a 100644 --- a/quicklendx-contracts/src/test_bid.rs +++ b/quicklendx-contracts/src/test_bid.rs @@ -17,12 +17,14 @@ use soroban_sdk::{ Address, BytesN, Env, String, Vec, }; -// Helper: Setup contract with admin -fn setup() -> (Env, QuickLendXContractClient<'static>) { +fn setup() -> (Env, QuickLendXContractClient<'static>, Address) { let env = Env::default(); + env.mock_all_auths(); let contract_id = env.register(QuickLendXContract, ()); let client = QuickLendXContractClient::new(&env, &contract_id); - (env, client) + let admin = Address::generate(&env); + client.set_admin(&admin); + (env, client, admin) } // Helper: Create verified investor - using same pattern as test.rs @@ -37,7 +39,7 @@ fn add_verified_investor(env: &Env, client: &QuickLendXContractClient, limit: i1 fn create_verified_invoice( env: &Env, client: &QuickLendXContractClient, - _admin: &Address, + admin: &Address, business: &Address, amount: i128, ) -> BytesN<32> { @@ -45,6 +47,7 @@ fn create_verified_invoice( let due_date = env.ledger().timestamp() + 86400; let invoice_id = client.store_invoice( + admin, business, &amount, ¤cy, @@ -74,7 +77,7 @@ fn assert_contract_error( /// Core Test: Bid on pending (non-verified) invoice fails #[test] fn test_bid_placement_non_verified_invoice_fails() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -84,6 +87,7 @@ fn test_bid_placement_non_verified_invoice_fails() { // Create pending invoice (not verified) let invoice_id = client.store_invoice( + &admin, &business, &10_000, ¤cy, @@ -101,7 +105,7 @@ fn test_bid_placement_non_verified_invoice_fails() { /// Core Test: Bid on verified invoice succeeds #[test] fn test_bid_placement_verified_invoice_succeeds() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -123,7 +127,7 @@ fn test_bid_placement_verified_invoice_succeeds() { /// Core Test: Minimum bid amount enforced (absolute floor + percentage of invoice) #[test] fn test_bid_minimum_amount_enforced() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -156,7 +160,7 @@ fn test_bid_minimum_amount_enforced() { /// Core Test: Investment limit enforced #[test] fn test_bid_placement_respects_investment_limit() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -177,7 +181,7 @@ fn test_bid_placement_respects_investment_limit() { /// Core Test: Bid owner can withdraw own bid #[test] fn test_bid_withdrawal_by_owner_succeeds() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -202,7 +206,7 @@ fn test_bid_withdrawal_by_owner_succeeds() { /// Core Test: Only Placed bids can be withdrawn #[test] fn test_bid_withdrawal_only_placed_bids() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -224,7 +228,7 @@ fn test_bid_withdrawal_only_placed_bids() { /// Core Test: Accepted bids cannot be withdrawn #[test] fn test_bid_withdrawal_rejects_accepted_bid() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -246,7 +250,7 @@ fn test_bid_withdrawal_rejects_accepted_bid() { /// Core Test: Expired bids are refreshed then rejected during withdrawal #[test] fn test_bid_withdrawal_rejects_expired_bid_without_manual_cleanup() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -276,7 +280,7 @@ fn test_bid_withdrawal_rejects_expired_bid_without_manual_cleanup() { /// Core Test: Multiple bids indexed and queryable by status #[test] fn test_multiple_bids_indexing_and_query() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -317,7 +321,7 @@ fn test_multiple_bids_indexing_and_query() { #[test] fn test_default_bid_ttl_used_in_place_bid() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -336,7 +340,7 @@ fn test_multiple_bids_indexing_and_query() { #[test] fn test_admin_can_update_ttl_and_bid_uses_new_value() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -358,7 +362,7 @@ fn test_multiple_bids_indexing_and_query() { #[test] fn test_set_bid_ttl_bounds_enforced() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -379,7 +383,7 @@ fn test_multiple_bids_indexing_and_query() { /// Core Test: Query by investor works correctly #[test] fn test_query_bids_by_investor() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -421,7 +425,7 @@ fn test_query_bids_by_investor() { /// Core Test: Best bid selection based on profit margin #[test] fn test_bid_ranking_by_profit() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -474,7 +478,7 @@ fn test_bid_ranking_by_profit() { /// Core Test: Best bid ignores withdrawn bids #[test] fn test_best_bid_excludes_withdrawn() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -506,7 +510,7 @@ fn test_best_bid_excludes_withdrawn() { /// Core Test: Bid expiration cleanup #[test] fn test_bid_expiration_and_cleanup() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -550,7 +554,7 @@ fn test_bid_expiration_and_cleanup() { /// Test: Bid uses default TTL (7 days) when placed #[test] fn test_bid_default_ttl_seven_days() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -574,7 +578,7 @@ fn test_bid_default_ttl_seven_days() { /// Test: cleanup_expired_bids returns count of removed bids #[test] fn test_cleanup_expired_bids_returns_count() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -628,7 +632,7 @@ fn test_cleanup_expired_bids_returns_count() { /// Test: cleanup_expired_bids is idempotent when called multiple times #[test] fn test_cleanup_expired_bids_idempotent() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -698,7 +702,7 @@ fn test_cleanup_expired_bids_idempotent() { /// Test: get_ranked_bids excludes expired bids #[test] fn test_get_ranked_bids_excludes_expired() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -741,7 +745,7 @@ fn test_get_ranked_bids_excludes_expired() { /// Test: get_best_bid excludes expired bids #[test] fn test_get_best_bid_excludes_expired() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -780,7 +784,7 @@ fn test_get_best_bid_excludes_expired() { /// Test: place_bid cleans up expired bids before placing new bid #[test] fn test_place_bid_cleans_up_expired_before_placing() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -824,7 +828,7 @@ fn test_place_bid_cleans_up_expired_before_placing() { /// Test: Partial expiration - only expired bids are cleaned up #[test] fn test_partial_expiration_cleanup() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -879,7 +883,7 @@ fn test_partial_expiration_cleanup() { /// Test: Cleanup is triggered when querying bids after expiration #[test] fn test_cleanup_triggered_on_query_after_expiration() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -922,7 +926,7 @@ fn test_cleanup_triggered_on_query_after_expiration() { /// Test: Cannot accept expired bid #[test] fn test_cannot_accept_expired_bid() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -946,7 +950,7 @@ fn test_cannot_accept_expired_bid() { /// Test: Bid at exact expiration boundary (not expired) #[test] fn test_bid_at_exact_expiration_not_expired() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -982,7 +986,7 @@ fn test_bid_at_exact_expiration_not_expired() { /// Test: Bid one second past expiration (expired) #[test] fn test_bid_one_second_past_expiration_expired() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -1014,7 +1018,7 @@ fn test_bid_one_second_past_expiration_expired() { /// Test: Cleanup with no expired bids returns zero #[test] fn test_cleanup_with_no_expired_bids_returns_zero() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -1038,7 +1042,7 @@ fn test_cleanup_with_no_expired_bids_returns_zero() { /// Test: Cleanup on invoice with no bids returns zero #[test] fn test_cleanup_on_invoice_with_no_bids() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -1054,7 +1058,7 @@ fn test_cleanup_on_invoice_with_no_bids() { /// Test: Withdrawn bids are not affected by expiration cleanup #[test] fn test_withdrawn_bids_not_affected_by_expiration() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -1099,7 +1103,7 @@ fn test_withdrawn_bids_not_affected_by_expiration() { /// Test: Cancelled bids are not affected by expiration cleanup #[test] fn test_cancelled_bids_not_affected_by_expiration() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -1144,7 +1148,7 @@ fn test_cancelled_bids_not_affected_by_expiration() { /// Test: Mixed status bids - only Placed bids expire #[test] fn test_mixed_status_bids_only_placed_expire() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -1188,7 +1192,7 @@ fn test_mixed_status_bids_only_placed_expire() { /// Test: Expiration cleanup is isolated per invoice #[test] fn test_expiration_cleanup_isolated_per_invoice() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -1243,7 +1247,7 @@ fn test_expiration_cleanup_isolated_per_invoice() { /// Test: Expired bids removed from invoice bid list #[test] fn test_expired_bids_removed_from_invoice_list() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -1280,7 +1284,7 @@ fn test_expired_bids_removed_from_invoice_list() { /// Test: Ranking after expiration returns empty list #[test] fn test_ranking_after_all_bids_expire() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -1331,7 +1335,7 @@ fn test_ranking_after_all_bids_expire() { /// Test: Admin can set investment limit for verified investor #[test] fn test_set_investment_limit_succeeds() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -1357,7 +1361,7 @@ fn test_set_investment_limit_succeeds() { /// Test: Non-admin cannot set investment limit #[test] fn test_set_investment_limit_non_admin_fails() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); // Create an unverified investor (no admin setup) @@ -1372,7 +1376,7 @@ fn test_set_investment_limit_non_admin_fails() { /// Test: Cannot set limit for unverified investor #[test] fn test_set_investment_limit_unverified_fails() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -1390,7 +1394,7 @@ fn test_set_investment_limit_unverified_fails() { /// Test: Cannot set invalid investment limit #[test] fn test_set_investment_limit_invalid_amount_fails() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -1414,7 +1418,7 @@ fn test_set_investment_limit_invalid_amount_fails() { /// Test: Updated limit is enforced in bid placement #[test] fn test_updated_limit_enforced_in_bidding() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -1440,7 +1444,7 @@ fn test_updated_limit_enforced_in_bidding() { /// Test: cancel_bid transitions Placed → Cancelled #[test] fn test_cancel_bid_succeeds() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -1460,7 +1464,7 @@ fn test_cancel_bid_succeeds() { /// Test: cancel_bid on already Withdrawn bid returns false #[test] fn test_cancel_bid_on_withdrawn_returns_false() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -1478,7 +1482,7 @@ fn test_cancel_bid_on_withdrawn_returns_false() { /// Test: cancel_bid on already Cancelled bid returns false #[test] fn test_cancel_bid_on_cancelled_returns_false() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -1496,7 +1500,7 @@ fn test_cancel_bid_on_cancelled_returns_false() { /// Test: cancel_bid on non-existent bid_id returns false #[test] fn test_cancel_bid_nonexistent_returns_false() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let fake_bid_id = BytesN::from_array(&env, &[0u8; 32]); let result = client.cancel_bid(&fake_bid_id); @@ -1506,7 +1510,7 @@ fn test_cancel_bid_nonexistent_returns_false() { /// Test: cancelled bid excluded from ranking #[test] fn test_cancelled_bid_excluded_from_ranking() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -1533,7 +1537,7 @@ fn test_cancelled_bid_excluded_from_ranking() { /// Test: get_all_bids_by_investor returns bids across multiple invoices #[test] fn test_get_all_bids_by_investor_cross_invoice() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -1553,7 +1557,7 @@ fn test_get_all_bids_by_investor_cross_invoice() { /// Test: get_all_bids_by_investor returns empty for investor with no bids #[test] fn test_get_all_bids_by_investor_empty() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let investor = Address::generate(&env); let all_bids = client.get_all_bids_by_investor(&investor); @@ -1567,7 +1571,7 @@ fn test_get_all_bids_by_investor_empty() { /// Test: Multiple investors place bids on same invoice - all bids are tracked #[test] fn test_multiple_investors_place_bids_on_same_invoice() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -1631,7 +1635,7 @@ fn test_multiple_investors_place_bids_on_same_invoice() { /// Test: Multiple investors bids are correctly ranked by profit #[test] fn test_multiple_investors_bids_ranking_order() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -1692,7 +1696,7 @@ fn test_multiple_investors_bids_ranking_order() { /// Test: Business accepts one bid, others remain Placed #[test] fn test_business_accepts_one_bid_others_remain_placed() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -1748,7 +1752,7 @@ fn test_business_accepts_one_bid_others_remain_placed() { /// Test: Only one escrow is created when business accepts a bid #[test] fn test_only_one_escrow_created_for_accepted_bid() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -1804,7 +1808,7 @@ fn test_only_one_escrow_created_for_accepted_bid() { /// Test: Non-accepted investors can withdraw their bids after one is accepted #[test] fn test_non_accepted_investors_can_withdraw_after_acceptance() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -1875,7 +1879,7 @@ fn test_non_accepted_investors_can_withdraw_after_acceptance() { /// Test: get_bids_for_invoice returns all bids regardless of status #[test] fn test_get_bids_for_invoice_returns_all_bids() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); @@ -1931,7 +1935,7 @@ fn test_get_bids_for_invoice_returns_all_bids() { /// Test: Cannot accept second bid after one is already accepted #[test] fn test_cannot_accept_second_bid_after_first_accepted() { - let (env, client) = setup(); + let (env, client, admin) = setup(); env.mock_all_auths(); let admin = Address::generate(&env); let _ = client.set_admin(&admin); diff --git a/quicklendx-contracts/src/test_dispute.rs b/quicklendx-contracts/src/test_dispute.rs index 641a4916..292bfabf 100644 --- a/quicklendx-contracts/src/test_dispute.rs +++ b/quicklendx-contracts/src/test_dispute.rs @@ -86,12 +86,14 @@ mod test_dispute { fn create_test_invoice( env: &Env, client: &QuickLendXContractClient, + admin: &Address, business: &Address, amount: i128, ) -> BytesN<32> { let currency = Address::generate(env); let due_date = env.ledger().timestamp() + 30 * 24 * 60 * 60; client.store_invoice( + admin, business, &amount, ¤cy, @@ -111,7 +113,7 @@ mod test_dispute { fn test_create_dispute_by_business() { let (env, client, admin) = setup(); let business = create_verified_business(&env, &client, &admin); - let invoice_id = create_test_invoice(&env, &client, &business, 100_000); + let invoice_id = create_test_invoice(&env, &client, &admin, &business, 100_000); let reason = String::from_str(&env, "Invoice amount discrepancy"); let evidence = String::from_str(&env, "Supporting documentation provided"); @@ -157,7 +159,7 @@ mod test_dispute { let (env, client, admin) = setup(); let business = create_verified_business(&env, &client, &admin); let outsider = Address::generate(&env); - let invoice_id = create_test_invoice(&env, &client, &business, 100_000); + let invoice_id = create_test_invoice(&env, &client, &admin, &business, 100_000); let result = client.try_create_dispute( &invoice_id, @@ -182,7 +184,7 @@ mod test_dispute { fn test_create_dispute_duplicate_rejected() { let (env, client, admin) = setup(); let business = create_verified_business(&env, &client, &admin); - let invoice_id = create_test_invoice(&env, &client, &business, 100_000); + let invoice_id = create_test_invoice(&env, &client, &admin, &business, 100_000); client.create_dispute( &invoice_id, @@ -207,7 +209,7 @@ mod test_dispute { fn test_create_dispute_empty_reason_rejected() { let (env, client, admin) = setup(); let business = create_verified_business(&env, &client, &admin); - let invoice_id = create_test_invoice(&env, &client, &business, 100_000); + let invoice_id = create_test_invoice(&env, &client, &admin, &business, 100_000); let result = client.try_create_dispute( &invoice_id, @@ -225,7 +227,7 @@ mod test_dispute { fn test_create_dispute_reason_too_long_rejected() { let (env, client, admin) = setup(); let business = create_verified_business(&env, &client, &admin); - let invoice_id = create_test_invoice(&env, &client, &business, 100_000); + let invoice_id = create_test_invoice(&env, &client, &admin, &business, 100_000); let long_reason = "a".repeat(1001); let result = client.try_create_dispute( @@ -244,7 +246,7 @@ mod test_dispute { fn test_create_dispute_empty_evidence_rejected() { let (env, client, admin) = setup(); let business = create_verified_business(&env, &client, &admin); - let invoice_id = create_test_invoice(&env, &client, &business, 100_000); + let invoice_id = create_test_invoice(&env, &client, &admin, &business, 100_000); let result = client.try_create_dispute( &invoice_id, @@ -262,7 +264,7 @@ mod test_dispute { fn test_create_dispute_evidence_too_long_rejected() { let (env, client, admin) = setup(); let business = create_verified_business(&env, &client, &admin); - let invoice_id = create_test_invoice(&env, &client, &business, 100_000); + let invoice_id = create_test_invoice(&env, &client, &admin, &business, 100_000); let long_evidence = "x".repeat(2001); let result = client.try_create_dispute( @@ -281,7 +283,7 @@ mod test_dispute { fn test_create_dispute_reason_minimum_boundary() { let (env, client, admin) = setup(); let business = create_verified_business(&env, &client, &admin); - let invoice_id = create_test_invoice(&env, &client, &business, 100_000); + let invoice_id = create_test_invoice(&env, &client, &admin, &business, 100_000); let result = client.try_create_dispute( &invoice_id, @@ -297,7 +299,7 @@ mod test_dispute { fn test_create_dispute_reason_maximum_boundary() { let (env, client, admin) = setup(); let business = create_verified_business(&env, &client, &admin); - let invoice_id = create_test_invoice(&env, &client, &business, 100_000); + let invoice_id = create_test_invoice(&env, &client, &admin, &business, 100_000); let max_reason = "x".repeat(1000); let result = client.try_create_dispute( @@ -318,7 +320,7 @@ mod test_dispute { fn test_put_dispute_under_review_success() { let (env, client, admin) = setup(); let business = create_verified_business(&env, &client, &admin); - let invoice_id = create_test_invoice(&env, &client, &business, 100_000); + let invoice_id = create_test_invoice(&env, &client, &admin, &business, 100_000); client.create_dispute( &invoice_id, @@ -348,7 +350,7 @@ mod test_dispute { fn test_put_under_review_no_dispute_returns_not_found() { let (env, client, admin) = setup(); let business = create_verified_business(&env, &client, &admin); - let invoice_id = create_test_invoice(&env, &client, &business, 100_000); + let invoice_id = create_test_invoice(&env, &client, &admin, &business, 100_000); let result = client.try_put_dispute_under_review(&invoice_id, &admin); assert!(result.is_err()); @@ -362,7 +364,7 @@ mod test_dispute { fn test_put_under_review_already_under_review_rejected() { let (env, client, admin) = setup(); let business = create_verified_business(&env, &client, &admin); - let invoice_id = create_test_invoice(&env, &client, &business, 100_000); + let invoice_id = create_test_invoice(&env, &client, &admin, &business, 100_000); client.create_dispute( &invoice_id, @@ -387,7 +389,7 @@ mod test_dispute { fn test_put_under_review_resolved_dispute_rejected() { let (env, client, admin) = setup(); let business = create_verified_business(&env, &client, &admin); - let invoice_id = create_test_invoice(&env, &client, &business, 100_000); + let invoice_id = create_test_invoice(&env, &client, &admin, &business, 100_000); client.create_dispute( &invoice_id, @@ -421,7 +423,7 @@ mod test_dispute { fn test_resolve_dispute_success() { let (env, client, admin) = setup(); let business = create_verified_business(&env, &client, &admin); - let invoice_id = create_test_invoice(&env, &client, &business, 100_000); + let invoice_id = create_test_invoice(&env, &client, &admin, &business, 100_000); client.create_dispute( &invoice_id, @@ -446,7 +448,7 @@ mod test_dispute { fn test_complete_dispute_lifecycle() { let (env, client, admin) = setup(); let business = create_verified_business(&env, &client, &admin); - let invoice_id = create_test_invoice(&env, &client, &business, 100_000); + let invoice_id = create_test_invoice(&env, &client, &admin, &business, 100_000); // Step 1: Create dispute let reason = String::from_str(&env, "Service quality issue"); @@ -492,7 +494,7 @@ mod test_dispute { fn test_resolve_dispute_skipping_review_rejected() { let (env, client, admin) = setup(); let business = create_verified_business(&env, &client, &admin); - let invoice_id = create_test_invoice(&env, &client, &business, 100_000); + let invoice_id = create_test_invoice(&env, &client, &admin, &business, 100_000); client.create_dispute( &invoice_id, @@ -525,7 +527,7 @@ mod test_dispute { fn test_resolve_already_resolved_dispute_rejected() { let (env, client, admin) = setup(); let business = create_verified_business(&env, &client, &admin); - let invoice_id = create_test_invoice(&env, &client, &business, 100_000); + let invoice_id = create_test_invoice(&env, &client, &admin, &business, 100_000); client.create_dispute( &invoice_id, @@ -560,7 +562,7 @@ mod test_dispute { fn test_resolve_dispute_empty_resolution_rejected() { let (env, client, admin) = setup(); let business = create_verified_business(&env, &client, &admin); - let invoice_id = create_test_invoice(&env, &client, &business, 100_000); + let invoice_id = create_test_invoice(&env, &client, &admin, &business, 100_000); client.create_dispute( &invoice_id, @@ -585,7 +587,7 @@ mod test_dispute { fn test_resolve_dispute_resolution_too_long_rejected() { let (env, client, admin) = setup(); let business = create_verified_business(&env, &client, &admin); - let invoice_id = create_test_invoice(&env, &client, &business, 100_000); + let invoice_id = create_test_invoice(&env, &client, &admin, &business, 100_000); client.create_dispute( &invoice_id, @@ -615,7 +617,7 @@ mod test_dispute { fn test_get_dispute_details_returns_none_when_no_dispute() { let (env, client, admin) = setup(); let business = create_verified_business(&env, &client, &admin); - let invoice_id = create_test_invoice(&env, &client, &business, 100_000); + let invoice_id = create_test_invoice(&env, &client, &admin, &business, 100_000); let result = client.get_dispute_details(&invoice_id); assert!( @@ -819,7 +821,7 @@ mod test_dispute { fn test_complete_lifecycle_with_all_queries() { let (env, client, admin) = setup(); let business = create_verified_business(&env, &client, &admin); - let invoice_id = create_test_invoice(&env, &client, &business, 100_000); + let invoice_id = create_test_invoice(&env, &client, &admin, &business, 100_000); let reason = String::from_str(&env, "Payment delay"); let evidence = String::from_str(&env, "Invoice was 30 days late"); diff --git a/quicklendx-contracts/src/test_errors.rs b/quicklendx-contracts/src/test_errors.rs index 8fde8b8d..4243f510 100644 --- a/quicklendx-contracts/src/test_errors.rs +++ b/quicklendx-contracts/src/test_errors.rs @@ -55,6 +55,7 @@ fn create_verified_invoice( client.add_currency(admin, ¤cy); let due_date = env.ledger().timestamp() + 86400; let invoice_id = client.store_invoice( + admin, business, &amount, ¤cy, @@ -88,6 +89,7 @@ fn create_funded_invoice( tok.approve(investor, &client.address, &amount, &expiry); let due_date = env.ledger().timestamp() + 86400; let invoice_id = client.store_invoice( + admin, business, &amount, ¤cy, @@ -123,6 +125,7 @@ fn test_invoice_amount_invalid_error() { // Test zero amount let result = client.try_store_invoice( + &admin, &business, &0, ¤cy, @@ -138,6 +141,7 @@ fn test_invoice_amount_invalid_error() { // Test negative amount let result = client.try_store_invoice( + &admin, &business, &-100, ¤cy, @@ -164,6 +168,7 @@ fn test_invoice_due_date_invalid_error() { // Test due date in the past let result = client.try_store_invoice( + &admin, &business, &1000, ¤cy, @@ -187,6 +192,7 @@ fn test_invoice_not_verified_error() { // Create invoice but don't verify it let invoice_id = client.store_invoice( + &admin, &business, &1000, ¤cy, @@ -236,6 +242,7 @@ fn test_invalid_description_error() { // Test empty description let result = client.try_store_invoice( + &admin, &business, &1000, ¤cy, @@ -388,8 +395,35 @@ fn test_business_not_verified_error() { } #[test] -fn test_no_panics_on_error_conditions() { +fn test_store_invoice_unauthorized_fails() { let (env, client, _admin) = setup(); + let not_admin = Address::generate(&env); + + let business = Address::generate(&env); + let currency = Address::generate(&env); + let due_date = env.ledger().timestamp() + 86400; + + // Try to call store_invoice as non-admin + let result = client.try_store_invoice( + ¬_admin, + &business, + &1000, + ¤cy, + &due_date, + &String::from_str(&env, "Test"), + &InvoiceCategory::Services, + &Vec::new(&env), + ); + + assert!(result.is_err()); + let err = result.err().unwrap(); + let contract_err = err.expect("expected contract error"); + assert_eq!(contract_err, QuickLendXError::NotAdmin); +} + +#[test] +fn test_no_panics_on_error_conditions() { + let (env, client, admin) = setup(); // Test various error conditions that should not panic let invalid_id = BytesN::from_array(&env, &[0u8; 32]); @@ -406,6 +440,7 @@ fn test_no_panics_on_error_conditions() { let due_date = env.ledger().timestamp() + 86400; let _ = client.try_store_invoice( + &admin, &business, &0, // Invalid amount ¤cy, @@ -418,6 +453,7 @@ fn test_no_panics_on_error_conditions() { // Set ledger timestamp to non-zero so past date make sense env.ledger().set_timestamp(10_000); let _ = client.try_store_invoice( + &admin, &business, &1000, ¤cy, diff --git a/quicklendx-contracts/src/test_pause.rs b/quicklendx-contracts/src/test_pause.rs index d64dca0f..6364da8a 100644 --- a/quicklendx-contracts/src/test_pause.rs +++ b/quicklendx-contracts/src/test_pause.rs @@ -52,6 +52,7 @@ fn test_pause_blocks_user_and_invoice_state_mutations() { let due_date = env.ledger().timestamp() + 86_400; let invoice_id = client.store_invoice( + &admin, &business, &1_000i128, ¤cy, @@ -215,6 +216,7 @@ fn test_pause_blocks_accept_bid_and_fund() { let due_date = env.ledger().timestamp() + 86400; let invoice_id = client.store_invoice( + &admin, &business, &1000i128, ¤cy, @@ -242,6 +244,7 @@ fn test_pause_blocks_release_escrow_funds() { let due_date = env.ledger().timestamp() + 86400; let invoice_id = client.store_invoice( + &admin, &business, &1000i128, ¤cy, @@ -275,6 +278,7 @@ fn test_pause_blocks_refund_escrow_funds() { let due_date = env.ledger().timestamp() + 86400; let invoice_id = client.store_invoice( + &admin, &business, &1000i128, ¤cy, @@ -303,6 +307,7 @@ fn test_pause_blocks_cancel_bid() { let due_date = env.ledger().timestamp() + 86400; let invoice_id = client.store_invoice( + &admin, &business, &1000i128, ¤cy, @@ -330,6 +335,7 @@ fn test_pause_blocks_update_invoice_category() { let due_date = env.ledger().timestamp() + 86400; let invoice_id = client.store_invoice( + &admin, &business, &1000i128, ¤cy, @@ -354,6 +360,7 @@ fn test_pause_blocks_settle_invoice() { let due_date = env.ledger().timestamp() + 86400; let invoice_id = client.store_invoice( + &admin, &business, &1000i128, ¤cy, @@ -381,6 +388,7 @@ fn test_pause_blocks_add_investment_insurance() { let due_date = env.ledger().timestamp() + 86400; let invoice_id = client.store_invoice( + &admin, &business, &1000i128, ¤cy, @@ -448,6 +456,7 @@ fn test_pause_blocks_tag_management() { let due_date = env.ledger().timestamp() + 86400; let invoice_id = client.store_invoice( + &admin, &business, &1000i128, ¤cy, diff --git a/target/debug/.fingerprint/quicklendx-contracts-a080f50b52f01cd0/dep-test-lib-quicklendx_contracts b/target/debug/.fingerprint/quicklendx-contracts-a080f50b52f01cd0/dep-test-lib-quicklendx_contracts new file mode 100644 index 00000000..7f25cda7 Binary files /dev/null and b/target/debug/.fingerprint/quicklendx-contracts-a080f50b52f01cd0/dep-test-lib-quicklendx_contracts differ diff --git a/target/debug/.fingerprint/quicklendx-contracts-a080f50b52f01cd0/invoked.timestamp b/target/debug/.fingerprint/quicklendx-contracts-a080f50b52f01cd0/invoked.timestamp new file mode 100644 index 00000000..e00328da --- /dev/null +++ b/target/debug/.fingerprint/quicklendx-contracts-a080f50b52f01cd0/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/target/debug/.fingerprint/quicklendx-contracts-a080f50b52f01cd0/test-lib-quicklendx_contracts b/target/debug/.fingerprint/quicklendx-contracts-a080f50b52f01cd0/test-lib-quicklendx_contracts new file mode 100644 index 00000000..3c577cac --- /dev/null +++ b/target/debug/.fingerprint/quicklendx-contracts-a080f50b52f01cd0/test-lib-quicklendx_contracts @@ -0,0 +1 @@ +22167e0e54e8d12b \ No newline at end of file diff --git a/target/debug/.fingerprint/quicklendx-contracts-a080f50b52f01cd0/test-lib-quicklendx_contracts.json b/target/debug/.fingerprint/quicklendx-contracts-a080f50b52f01cd0/test-lib-quicklendx_contracts.json new file mode 100644 index 00000000..ca64e522 --- /dev/null +++ b/target/debug/.fingerprint/quicklendx-contracts-a080f50b52f01cd0/test-lib-quicklendx_contracts.json @@ -0,0 +1 @@ +{"rustc":13564344157160913299,"features":"[]","declared_features":"[]","target":2352592780582273925,"profile":1722584277633009122,"path":10763286916239946207,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"debug\\.fingerprint\\quicklendx-contracts-a080f50b52f01cd0\\dep-test-lib-quicklendx_contracts","checksum":false}}],"rustflags":[],"config":2069994364910194474,"compile_kind":0} \ No newline at end of file diff --git a/target/debug/.fingerprint/quicklendx-contracts-eaaf1962e7b16294/dep-lib-quicklendx_contracts b/target/debug/.fingerprint/quicklendx-contracts-eaaf1962e7b16294/dep-lib-quicklendx_contracts new file mode 100644 index 00000000..f0ed403e Binary files /dev/null and b/target/debug/.fingerprint/quicklendx-contracts-eaaf1962e7b16294/dep-lib-quicklendx_contracts differ diff --git a/target/debug/.fingerprint/quicklendx-contracts-eaaf1962e7b16294/lib-quicklendx_contracts b/target/debug/.fingerprint/quicklendx-contracts-eaaf1962e7b16294/lib-quicklendx_contracts new file mode 100644 index 00000000..b695b32e --- /dev/null +++ b/target/debug/.fingerprint/quicklendx-contracts-eaaf1962e7b16294/lib-quicklendx_contracts @@ -0,0 +1 @@ +3def0c0f244feac9 \ No newline at end of file diff --git a/target/debug/.fingerprint/quicklendx-contracts-eaaf1962e7b16294/lib-quicklendx_contracts.json b/target/debug/.fingerprint/quicklendx-contracts-eaaf1962e7b16294/lib-quicklendx_contracts.json new file mode 100644 index 00000000..36d1d214 --- /dev/null +++ b/target/debug/.fingerprint/quicklendx-contracts-eaaf1962e7b16294/lib-quicklendx_contracts.json @@ -0,0 +1 @@ +{"rustc":13564344157160913299,"features":"[]","declared_features":"[]","target":2352592780582273925,"profile":8731458305071235362,"path":10763286916239946207,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"debug\\.fingerprint\\quicklendx-contracts-eaaf1962e7b16294\\dep-lib-quicklendx_contracts","checksum":false}}],"rustflags":[],"config":2069994364910194474,"compile_kind":0} \ No newline at end of file diff --git a/target/debug/deps/libquicklendx_contracts.dll.a b/target/debug/deps/libquicklendx_contracts.dll.a new file mode 100644 index 00000000..aebd01ab Binary files /dev/null and b/target/debug/deps/libquicklendx_contracts.dll.a differ diff --git a/target/debug/deps/libquicklendx_contracts.rlib b/target/debug/deps/libquicklendx_contracts.rlib new file mode 100644 index 00000000..860d524e Binary files /dev/null and b/target/debug/deps/libquicklendx_contracts.rlib differ diff --git a/target/debug/deps/quicklendx_contracts-a080f50b52f01cd0.d b/target/debug/deps/quicklendx_contracts-a080f50b52f01cd0.d new file mode 100644 index 00000000..97bdc25e --- /dev/null +++ b/target/debug/deps/quicklendx_contracts-a080f50b52f01cd0.d @@ -0,0 +1,9 @@ +C:\Users\USER\Desktop\drips\quicklendx-protocol\target\debug\deps\quicklendx_contracts-a080f50b52f01cd0.d: src\lib.rs src\fees.rs src\profits.rs src\settlement.rs src\test_fuzz.rs + +C:\Users\USER\Desktop\drips\quicklendx-protocol\target\debug\deps\quicklendx_contracts-a080f50b52f01cd0.exe: src\lib.rs src\fees.rs src\profits.rs src\settlement.rs src\test_fuzz.rs + +src\lib.rs: +src\fees.rs: +src\profits.rs: +src\settlement.rs: +src\test_fuzz.rs: diff --git a/target/debug/deps/quicklendx_contracts-a080f50b52f01cd0.exe b/target/debug/deps/quicklendx_contracts-a080f50b52f01cd0.exe new file mode 100644 index 00000000..80002a0b Binary files /dev/null and b/target/debug/deps/quicklendx_contracts-a080f50b52f01cd0.exe differ diff --git a/target/debug/deps/quicklendx_contracts.dll b/target/debug/deps/quicklendx_contracts.dll new file mode 100644 index 00000000..30c23d90 Binary files /dev/null and b/target/debug/deps/quicklendx_contracts.dll differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/0hibyx4mdsn514exmocbwyx75.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/0hibyx4mdsn514exmocbwyx75.o new file mode 100644 index 00000000..8a70718e Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/0hibyx4mdsn514exmocbwyx75.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/0i2kxttibbdg5ih5q2z3dguk8.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/0i2kxttibbdg5ih5q2z3dguk8.o new file mode 100644 index 00000000..51f51bdb Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/0i2kxttibbdg5ih5q2z3dguk8.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/0l4dbt2e3tfszyfzpdrj6zv3d.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/0l4dbt2e3tfszyfzpdrj6zv3d.o new file mode 100644 index 00000000..f13eef2c Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/0l4dbt2e3tfszyfzpdrj6zv3d.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/0mtlotr8h0l9mdcvm8mpbm2cl.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/0mtlotr8h0l9mdcvm8mpbm2cl.o new file mode 100644 index 00000000..c99c26f1 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/0mtlotr8h0l9mdcvm8mpbm2cl.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/0qypnou4jj0wjwju8mbx1xiny.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/0qypnou4jj0wjwju8mbx1xiny.o new file mode 100644 index 00000000..06afa637 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/0qypnou4jj0wjwju8mbx1xiny.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/0rz2crhj8xosq46fqrszyzdt0.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/0rz2crhj8xosq46fqrszyzdt0.o new file mode 100644 index 00000000..661d65b5 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/0rz2crhj8xosq46fqrszyzdt0.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/0scoz3vi76c6h91d7q3vwqyhi.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/0scoz3vi76c6h91d7q3vwqyhi.o new file mode 100644 index 00000000..b29beeef Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/0scoz3vi76c6h91d7q3vwqyhi.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/1g62r9vxsnbegdmllxzkudzby.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/1g62r9vxsnbegdmllxzkudzby.o new file mode 100644 index 00000000..d9e55176 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/1g62r9vxsnbegdmllxzkudzby.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/1iayz25qwuyja326f1z2xnv44.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/1iayz25qwuyja326f1z2xnv44.o new file mode 100644 index 00000000..31bbc4fa Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/1iayz25qwuyja326f1z2xnv44.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/1ms64f9grxvoaz95ejjboyd3m.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/1ms64f9grxvoaz95ejjboyd3m.o new file mode 100644 index 00000000..62ea1eca Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/1ms64f9grxvoaz95ejjboyd3m.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/1s6ca8rsvg3eg8vea9qen7h4a.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/1s6ca8rsvg3eg8vea9qen7h4a.o new file mode 100644 index 00000000..dcac7060 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/1s6ca8rsvg3eg8vea9qen7h4a.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/1ytf151ymf4ki45w84enseyf6.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/1ytf151ymf4ki45w84enseyf6.o new file mode 100644 index 00000000..70d89af4 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/1ytf151ymf4ki45w84enseyf6.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/258zppkzjfctit7i5gzh9pk01.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/258zppkzjfctit7i5gzh9pk01.o new file mode 100644 index 00000000..671e7a94 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/258zppkzjfctit7i5gzh9pk01.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/2uok6nvpi54yy5wxkbjyd7qah.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/2uok6nvpi54yy5wxkbjyd7qah.o new file mode 100644 index 00000000..6629125a Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/2uok6nvpi54yy5wxkbjyd7qah.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/2ybemy7cc09g2mo4j1dfg2pcp.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/2ybemy7cc09g2mo4j1dfg2pcp.o new file mode 100644 index 00000000..257d31a3 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/2ybemy7cc09g2mo4j1dfg2pcp.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/32obopz33dnr0ti8hvhaydo46.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/32obopz33dnr0ti8hvhaydo46.o new file mode 100644 index 00000000..8a99ad0b Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/32obopz33dnr0ti8hvhaydo46.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/339g38yaoz0v55l5grv7py6xj.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/339g38yaoz0v55l5grv7py6xj.o new file mode 100644 index 00000000..bd90dbbe Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/339g38yaoz0v55l5grv7py6xj.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/447d6yi2tsmuv6ke5e2mernnm.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/447d6yi2tsmuv6ke5e2mernnm.o new file mode 100644 index 00000000..74f3d759 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/447d6yi2tsmuv6ke5e2mernnm.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/4abp05028zh37onlmkdola7q4.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/4abp05028zh37onlmkdola7q4.o new file mode 100644 index 00000000..35f98e5e Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/4abp05028zh37onlmkdola7q4.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/4bxnazk8ua0h8bo5id8t9qlya.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/4bxnazk8ua0h8bo5id8t9qlya.o new file mode 100644 index 00000000..09209dab Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/4bxnazk8ua0h8bo5id8t9qlya.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/4e2e5u9lreokkxkz9hdyo4xj9.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/4e2e5u9lreokkxkz9hdyo4xj9.o new file mode 100644 index 00000000..a2b324e3 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/4e2e5u9lreokkxkz9hdyo4xj9.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/4x3vefjt32nj9yc6nbsvbxqrf.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/4x3vefjt32nj9yc6nbsvbxqrf.o new file mode 100644 index 00000000..0828fc96 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/4x3vefjt32nj9yc6nbsvbxqrf.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/51qwmav15p52uzop8gu60avw0.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/51qwmav15p52uzop8gu60avw0.o new file mode 100644 index 00000000..d89c5e83 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/51qwmav15p52uzop8gu60avw0.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/52ds4qi73z4n3sjqjj07amjvr.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/52ds4qi73z4n3sjqjj07amjvr.o new file mode 100644 index 00000000..ad687895 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/52ds4qi73z4n3sjqjj07amjvr.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/5es4yfb8cfi4lvwemn7j8xjpd.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/5es4yfb8cfi4lvwemn7j8xjpd.o new file mode 100644 index 00000000..b23eb3b3 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/5es4yfb8cfi4lvwemn7j8xjpd.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/5ju9vh5iht3l3ifxckrabu8b1.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/5ju9vh5iht3l3ifxckrabu8b1.o new file mode 100644 index 00000000..697646a8 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/5ju9vh5iht3l3ifxckrabu8b1.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/5kbz03w3j79b9y3f3thzbw8mf.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/5kbz03w3j79b9y3f3thzbw8mf.o new file mode 100644 index 00000000..411b046c Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/5kbz03w3j79b9y3f3thzbw8mf.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/60p203afnkavsorzrjio6cnuh.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/60p203afnkavsorzrjio6cnuh.o new file mode 100644 index 00000000..e04b3187 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/60p203afnkavsorzrjio6cnuh.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/634y76jiudf7t8qm167fpdrjb.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/634y76jiudf7t8qm167fpdrjb.o new file mode 100644 index 00000000..68d804d6 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/634y76jiudf7t8qm167fpdrjb.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/69ze48l27kf5msyb6nyn9405k.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/69ze48l27kf5msyb6nyn9405k.o new file mode 100644 index 00000000..ab4d58ac Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/69ze48l27kf5msyb6nyn9405k.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/6ofikhmtoj76hd082kol772ch.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/6ofikhmtoj76hd082kol772ch.o new file mode 100644 index 00000000..0f312650 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/6ofikhmtoj76hd082kol772ch.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/77c770105tfmtwfgq2pxtrv5y.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/77c770105tfmtwfgq2pxtrv5y.o new file mode 100644 index 00000000..11c31aad Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/77c770105tfmtwfgq2pxtrv5y.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/78n4rt54grehixt04tq2e6mtp.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/78n4rt54grehixt04tq2e6mtp.o new file mode 100644 index 00000000..689ffcc6 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/78n4rt54grehixt04tq2e6mtp.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/7aym5hc3opmfed8nw2g1ks1di.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/7aym5hc3opmfed8nw2g1ks1di.o new file mode 100644 index 00000000..e208e49b Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/7aym5hc3opmfed8nw2g1ks1di.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/7gny1z71yhlb1di1p74jpzh9n.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/7gny1z71yhlb1di1p74jpzh9n.o new file mode 100644 index 00000000..dea72118 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/7gny1z71yhlb1di1p74jpzh9n.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/7h4js2wlzl8wj9x1qme85z4fd.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/7h4js2wlzl8wj9x1qme85z4fd.o new file mode 100644 index 00000000..7d09d925 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/7h4js2wlzl8wj9x1qme85z4fd.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/7qda5h2wwcr5z0oly529d7kqm.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/7qda5h2wwcr5z0oly529d7kqm.o new file mode 100644 index 00000000..f8943fdc Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/7qda5h2wwcr5z0oly529d7kqm.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/7xw161mulzgpghor9q1g05vfz.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/7xw161mulzgpghor9q1g05vfz.o new file mode 100644 index 00000000..ce6d4e53 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/7xw161mulzgpghor9q1g05vfz.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/8l9pu3my0sbinqgmv8tw3kpkn.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/8l9pu3my0sbinqgmv8tw3kpkn.o new file mode 100644 index 00000000..377d1550 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/8l9pu3my0sbinqgmv8tw3kpkn.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/8se5znbi08ngwx3dls98zh5xt.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/8se5znbi08ngwx3dls98zh5xt.o new file mode 100644 index 00000000..002af459 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/8se5znbi08ngwx3dls98zh5xt.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/8srlcqot1ihabkekfekxtotmw.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/8srlcqot1ihabkekfekxtotmw.o new file mode 100644 index 00000000..456eba23 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/8srlcqot1ihabkekfekxtotmw.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/8uqt4oo2fe0zi48d17fu0k8j8.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/8uqt4oo2fe0zi48d17fu0k8j8.o new file mode 100644 index 00000000..37ea0b10 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/8uqt4oo2fe0zi48d17fu0k8j8.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/8usbmc3rrsouxoz38qfd2rkb8.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/8usbmc3rrsouxoz38qfd2rkb8.o new file mode 100644 index 00000000..92e0286f Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/8usbmc3rrsouxoz38qfd2rkb8.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/92ah6qkg05csyw03wok1h5jz9.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/92ah6qkg05csyw03wok1h5jz9.o new file mode 100644 index 00000000..c5c6545f Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/92ah6qkg05csyw03wok1h5jz9.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/9byfq9r0xbfsnelpf0rifzgr8.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/9byfq9r0xbfsnelpf0rifzgr8.o new file mode 100644 index 00000000..dcf76a47 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/9byfq9r0xbfsnelpf0rifzgr8.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/9ttjiaz2bz1sqkksvgmbqyvrk.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/9ttjiaz2bz1sqkksvgmbqyvrk.o new file mode 100644 index 00000000..ec0c49c5 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/9ttjiaz2bz1sqkksvgmbqyvrk.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/a4zs1xk7amawam2ulc1gp7a2k.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/a4zs1xk7amawam2ulc1gp7a2k.o new file mode 100644 index 00000000..d0d141d8 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/a4zs1xk7amawam2ulc1gp7a2k.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/a610no2chaaw7vp69kfk64370.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/a610no2chaaw7vp69kfk64370.o new file mode 100644 index 00000000..c7633ddd Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/a610no2chaaw7vp69kfk64370.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/a7s6h6lhp2yautaxh2zdz3mde.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/a7s6h6lhp2yautaxh2zdz3mde.o new file mode 100644 index 00000000..4b002aa6 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/a7s6h6lhp2yautaxh2zdz3mde.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/anetqn6yn7ltgii4bxl8bt68t.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/anetqn6yn7ltgii4bxl8bt68t.o new file mode 100644 index 00000000..e93bbbd7 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/anetqn6yn7ltgii4bxl8bt68t.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/b4zaqh0fw95igoasz3djbar3l.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/b4zaqh0fw95igoasz3djbar3l.o new file mode 100644 index 00000000..8d67eae5 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/b4zaqh0fw95igoasz3djbar3l.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/bxhn8tatam6ogrqinqexgyakm.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/bxhn8tatam6ogrqinqexgyakm.o new file mode 100644 index 00000000..6d9df5d4 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/bxhn8tatam6ogrqinqexgyakm.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/c7qzlnynoc8amf3fp98e9l5rl.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/c7qzlnynoc8amf3fp98e9l5rl.o new file mode 100644 index 00000000..cb627928 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/c7qzlnynoc8amf3fp98e9l5rl.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/cblz99fpafxmsscw4nw3k0f8b.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/cblz99fpafxmsscw4nw3k0f8b.o new file mode 100644 index 00000000..72271bac Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/cblz99fpafxmsscw4nw3k0f8b.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/cn9vak4v3i1fn2rux03ia7eko.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/cn9vak4v3i1fn2rux03ia7eko.o new file mode 100644 index 00000000..18b6e209 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/cn9vak4v3i1fn2rux03ia7eko.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/cwgi3czt4l7q02x7ma2vlgi0b.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/cwgi3czt4l7q02x7ma2vlgi0b.o new file mode 100644 index 00000000..81a59e7b Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/cwgi3czt4l7q02x7ma2vlgi0b.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/db9w11c34x2trast25c1w01a7.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/db9w11c34x2trast25c1w01a7.o new file mode 100644 index 00000000..1671c054 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/db9w11c34x2trast25c1w01a7.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/dep-graph.bin b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/dep-graph.bin new file mode 100644 index 00000000..abb5b592 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/dep-graph.bin differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/dvqy2rtee913z7rr9k1cskph3.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/dvqy2rtee913z7rr9k1cskph3.o new file mode 100644 index 00000000..6a6a00eb Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/dvqy2rtee913z7rr9k1cskph3.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/dx7aa1jbig5u5graleu1z15qh.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/dx7aa1jbig5u5graleu1z15qh.o new file mode 100644 index 00000000..7b03f927 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/dx7aa1jbig5u5graleu1z15qh.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/ekg51prun8s24lh5cjgwblish.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/ekg51prun8s24lh5cjgwblish.o new file mode 100644 index 00000000..dca2a3a7 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/ekg51prun8s24lh5cjgwblish.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/el1gq6dknw3t0u5xqzpozn72b.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/el1gq6dknw3t0u5xqzpozn72b.o new file mode 100644 index 00000000..0a4e7e1c Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/el1gq6dknw3t0u5xqzpozn72b.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/epxm3ojc7n6abzl9m3wu01s20.o b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/epxm3ojc7n6abzl9m3wu01s20.o new file mode 100644 index 00000000..3cca4dfb Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/epxm3ojc7n6abzl9m3wu01s20.o differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/query-cache.bin b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/query-cache.bin new file mode 100644 index 00000000..449eeb69 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/query-cache.bin differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/work-products.bin b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/work-products.bin new file mode 100644 index 00000000..050302f9 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o-7xom9llxgv8gidzb1k49i2565/work-products.bin differ diff --git a/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o.lock b/target/debug/incremental/quicklendx_contracts-1x0svtii17d4i/s-hh351zbry0-1thqo4o.lock new file mode 100644 index 00000000..e69de29b diff --git a/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/0mg2s8109e66fynze020kt7en.o b/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/0mg2s8109e66fynze020kt7en.o new file mode 100644 index 00000000..e1903988 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/0mg2s8109e66fynze020kt7en.o differ diff --git a/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/1hsf39s87hw9te6n32r56q1u6.o b/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/1hsf39s87hw9te6n32r56q1u6.o new file mode 100644 index 00000000..1b7d89ab Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/1hsf39s87hw9te6n32r56q1u6.o differ diff --git a/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/413y1m90s0jmcn82y6r2ncep9.o b/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/413y1m90s0jmcn82y6r2ncep9.o new file mode 100644 index 00000000..f5afebcb Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/413y1m90s0jmcn82y6r2ncep9.o differ diff --git a/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/6blrms21k9ow9zd3z4hjbjk68.o b/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/6blrms21k9ow9zd3z4hjbjk68.o new file mode 100644 index 00000000..4523c6bb Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/6blrms21k9ow9zd3z4hjbjk68.o differ diff --git a/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/978jmcy76b1nkozk6u0o8d64l.o b/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/978jmcy76b1nkozk6u0o8d64l.o new file mode 100644 index 00000000..e6987aaf Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/978jmcy76b1nkozk6u0o8d64l.o differ diff --git a/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/9id2ttd5c6cykp8uiixxpaf92.o b/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/9id2ttd5c6cykp8uiixxpaf92.o new file mode 100644 index 00000000..074b5e74 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/9id2ttd5c6cykp8uiixxpaf92.o differ diff --git a/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/dep-graph.bin b/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/dep-graph.bin new file mode 100644 index 00000000..c5a771a7 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/dep-graph.bin differ diff --git a/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/dhhti1lmvo04ycrgqhi74u87m.o b/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/dhhti1lmvo04ycrgqhi74u87m.o new file mode 100644 index 00000000..a93bed28 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/dhhti1lmvo04ycrgqhi74u87m.o differ diff --git a/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/metadata.rmeta b/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/metadata.rmeta new file mode 100644 index 00000000..57268919 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/metadata.rmeta differ diff --git a/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/query-cache.bin b/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/query-cache.bin new file mode 100644 index 00000000..e9037eab Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/query-cache.bin differ diff --git a/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/work-products.bin b/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/work-products.bin new file mode 100644 index 00000000..7d9ae497 Binary files /dev/null and b/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8-abxuvp70rftq2q8tx88s4kcz7/work-products.bin differ diff --git a/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8.lock b/target/debug/incremental/quicklendx_contracts-22d3p784irq5z/s-hh353f6l0t-0mamem8.lock new file mode 100644 index 00000000..e69de29b