LND: coin control backwards compatibility #2533
Merged
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.
Approach 1
Originally, this PR bumped supported LND version for on-chain coin control to v0.18.3, detailed below:
In #2416 we added ability for users to spend full UTXOs on-chain, by leveraging the new
send_all
andoutpoints
params on theSendCoins
endpoint. Previously, we would use the PSBT endpoints to make these types of transactions (albeit, without the send max functionality). Users of LND below v0.18.3 now hitunknown field: outpoints
when sending an on-chain tx with a UTXO selected. See below:Instead of adding complexity to the code base in the above PR and other changes made to our PSBT flow, we require LND users to update to v0.18.3 to use coin controls.
Approach 2: limit external accounts support to LND v0.18.3+
handleAnything
forsupportsAccounts
Approach 3
defaultAccount
flaghandleAnything
forsupportsAccounts
This pull request is categorized as a:
Checklist
yarn run tsc
and made sure my code compiles correctlyyarn run lint
and made sure my code didn’t contain any problematic patternsyarn run prettier
and made sure my code is formatted correctlyyarn run test
and made sure all of the tests passTesting
If you modified or added a utility file, did you add new unit tests?
I have tested this PR on the following platforms (please specify OS version and phone model/VM):
I have tested this PR with the following types of nodes (please specify node version and API version where appropriate):
Locales
Third Party Dependencies and Packages
yarn
after this PR is merged inpackage.json
andyarn.lock
have been properly updatedOther: