This is done for swaps that can be refunded, like Chain Swaps and Send Swaps.
Without this, refunded payments never transition away from RefundPending to Failed (refunded), because they're not considered a pending swap when handling the final transition
* Publish flutter artifacts and package
* Publish dart package
* Add LICENCE
* Force rm
* Don't copy lock files
* Fix output directory
* Fix podspec name
* Pass SWIFT_RELEASE_TOKEN
* Fix overrides indentation
* Update package version on CMake script
Update example dependencies
* Depend on dart & flutter packages from git on pubspec files
* Correct repository links & add publish_to: 'none'
* run just clean && just init
* Update README.md
* Download framework as part of prepare_command
* Use wget, then fallback to curl
* Remove redundant .zip suffix on the url
* Fix release tag
* Add v to tag replacement
* Fix podspec version
* Copy header file
* Downgrade vm_service
---------
Co-authored-by: Erdem Yerebasmaz <erdem@yerebasmaz.com>
* Fix relative path on melos.yaml
* Mention current version on CHANGELOG.md
* Remove symlink for apache license
* Address typos & relative path issues on README.md
* Ignore Flutter example app on Melos.yaml
* Remove obsolete param from Config on example app
* Do not treat info messages as critical
* Update README of Dart/Flutter packages
Revert changes on topmost README
* Update pubspec.lock
* Make dart output directory if it does not exists
* Replace continue-on-error
Resume even if previous step fails, this approach displays errors on CI summary.
* Install Protoc as part of CI workflow
* Added init-sdk as part of just bootstrap recipe which installs protobuf
* Pinned freezed to <=2.5.2
* Check chain swap addresses for unspent outputs
* Monitoring expired swaps up to 4320 blocks after expiration
* Refactor chain swap monitoring
* Handle the error to prevent the loop exiting
* Add RefundPending state
* Check if RefundPendingbefore setting to Refundable
* Use script_get_balance to determine spent state
* Use unconfirmed balance to check if RefundPending should be reset to Refundable
* Implement Chain Swaps for receiving
* Send: validate if we have sufficient funds (#321)
* Implement Chain Swaps for receiving
* Fix rebase of flutter_rust_bridge version
* Send: validate if we have sufficient funds
* Re-generate FRB
---------
Co-authored-by: Ross Savage <hello@satimoto.com>
* Chaim swap claim: remove refund_tx arg (#328)
---------
Co-authored-by: ok300 <106775972+ok300@users.noreply.github.com>
* feat: switch to pending state when receive lockup is in the mempool
* rebasing
* fix: move socket update logic to sub-crate
* Update payments query, to avoid duplicate Receive Swaps
This can happen if the app is stopped before the temporary lockup tx is removed from the DB. The Receive Swap would then forever result in two payments in list_payments.
* Add comments to clarify use of temp lockup txid
* Re-generate flutter bridge bindings
* feat: set Payment `tx_id` as optional and change `list_payments` logic
* fix: debug typo
* fix: undo `remove_temporary_tx` changes
* fix: switch to full join rather than manual filtering
* fix: bindings
* fix: improve error handling when tx data is not present
* fix: RN bindings
* fix: exclude Created receives from the list
* fix: fixing nits
* Re-generate FRB bindings
---------
Co-authored-by: ok300 <106775972+ok300@users.noreply.github.com>
* Generate Dart bindings
* flutter_rust_bridge has relative path issues with this new approach introduced in 2.0.0-dev.38, we'll be using the default rust_output path until it's addressed.
* Receive: Add magic routing hint support
* Send: add MRH support
* Filter out and reject self-transfers
* Extract self-transfer validation in own fn
* PrepareSendResponse: use onchain fee as fees_sat if MRH present
* Use onchain tx fee as payment fee, if MRH used for direct onchain tx
* Fix swap fee calculation when MRH is used
* Apply boltz-client patch that aborts send if tx broadcast fails
* Send with MRH: return pending payment
* Receive with MRH: validate BIP21 amount, address
* Emit remaining events for MRH Send, Receive
* Sync: update swap info and emit events after new tx data is persisted
* Extract MRH send into its own send_payment_via_mrh()
* Pending Send via swap: store tx fees for pseudo-tx
* Fix clippy