Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request primarily focuses on improving the
sn_client
module in the Rust codebase. The changes include refactoring and renaming methods in theClient
implementation, adding new methods to handle and resend unconfirmed transactions, and improving log messages for better debugging and user experience. Additionally, a new unit test has been added in thesn_transfers
module to test the payment selection functionality.Changes in
sn_client
module:sn_client/src/api.rs
:trace!
log message in theClient
implementation has been updated to include a pretty printed version of the record key for better debugging.RetryStrategy
forGetRecordCfg
in theClient
implementation has been removed to avoid unnecessary retries.crawl_spend_from_network
method has been renamed topeek_a_spend
and itsget_quorum
value has been changed toQuorum::One
to fetch a single copy of the spend.is_genesis_spend_present
method now uses thepeek_a_spend
method to check for the presence of the Genesis spend.sn_client/src/uploader/upload.rs
:InnerUploader
implementation now includes a call toresend_pending_transaction_blocking_loop
method to handle any pending transactions.sn_client/src/wallet.rs
:resend_pending_transaction_blocking_loop
has been added to theWalletClient
implementation. This method continuously resends unconfirmed transactions until they are all uploaded or the user manually terminates the process. It also logs and prints helpful messages for the user to understand the state of unconfirmed transactions.Changes in
sn_transfers
module:sn_transfers/src/wallet/api.rs
:payment_selective
has been added to test the functionality of selecting a payment transaction.