build_tx.py: Use bitcoinlib to parse raw transactions when the Blockbook server could not find them. #4144
+105
−48
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.
I really like the
build_tx.py
tool, and I patched it to be able to sign a transaction that spends a utxo of a transaction that hasn't been sent to the blockchain yet.In case the user wants to create two transactions, where the second spends the output of the first, he can do that without broadcasting them. This is useful in scenarios of relative timelocks (using nSequence).
The user can also specify "." as the blockbook host (instead of
btc1.trezor.io
) and then the script will never send http requests and instead will ask the user to provide the previous raw-transaction for everyvin
(could be useful in cases with privacy issues).I couldn't find any existing code in this project that parses raw transactions, so I used: https://pypi.org/project/bitcoinlib (if
bitcoinlib
is not installed, the behavior remains the same).