[rpc] signer send and fee bump convenience methods #15876

pull Sjors wants to merge 25 commits into bitcoin:master from Sjors:2019/04/signerbumpfee changing 49 files +2121 −50
  1. Sjors commented at 1:23 pm on April 23, 2019: member

    This PR adds two convenience methods on top of #14912.

    • signersend: a convenience method that Just Works(tm) by combining the functionality of walletcreatefundedpsbt, signerprocesspsbt, finalizepsbt and sendrawtransaction

    • signerbumpfee: combines signersend with bumpfee

    Usage:

     0bitcoin-cli signersend '[]' '[{"...": 0.001}]' 0 '{"feeRate": 0.00001, "replaceable": true}'
     1{
     2  "txid": "abcd..."
     3  "fee": "0.00000141"
     4}
     5
     6bitcoin-cli signerbumpfee abcd..  '{"feeRate": 0.00002}'
     7{
     8  "txid": "efga..."
     9  "fee": "0.00000282",
    10  "origFee": "0.00000141"
    11}
    

    signerbumpfee is a bit of a hack. In particular it breaks regular fee bump functionality for some wallets because I replaced ISMINE_SPENDABLE with ISMINE_ALL. I’d also like to make the code more reusable, but this can wait until the upstream PR is closer to merge.

  2. Sjors renamed this:
    2019/04/signerbumpfee
    [rpc] signer bump fee
    on Apr 23, 2019
  3. fanquake added the label RPC/REST/ZMQ on Apr 23, 2019
  4. DrahtBot added the label Needs rebase on Apr 23, 2019
  5. Sjors commented at 5:09 pm on April 23, 2019: member
    @MarcoFalke I think we should turn @DrahtBot off for draft PRs.
  6. Sjors force-pushed on Apr 24, 2019
  7. DrahtBot removed the label Needs rebase on Apr 24, 2019
  8. DrahtBot commented at 8:38 pm on April 24, 2019: member

    The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

    Conflicts

    Reviewers, this pull request conflicts with the following ones:

    • #16542 (Return more specific errors about invalid descriptors by achow101)
    • #16539 ([wallet] lower -txmaxfee default from 0.1 to 0.01 BTC by Sjors)
    • #16528 ([WIP] Native Descriptor Wallets (take 2) by achow101)
    • #16521 (wallet/rpc: Use the default maxfeerate value as BTC/kB by Remagpie)
    • #16492 (rpc: Add feeRate argument to bumpFee RPC by ezegom)
    • #16378 ([WIP] The ultimate send RPC by Sjors)
    • #16377 ([rpc] don’t automatically append inputs in walletcreatefundedpsbt & fundrawtransaction by Sjors)
    • #16373 (Add bumpfee option to return PSBT instead of commiting to wallet by instagibbs)
    • #16365 (Log RPC parameters (arguments) if -debug=rpcparams by LarryRuane)
    • #16341 (Introduce ScriptPubKeyMan interface and use it for key and script management (aka wallet boxes) by achow101)
    • #16273 (refactor: Remove unused includes by practicalswift)
    • #15529 (Add Qt programs to msvc build (updated, no code changes) by sipsorcery)
    • #14912 ([WIP] External signer support (e.g. hardware wallet) by Sjors)

    If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first.

  9. Sjors force-pushed on Apr 25, 2019
  10. DrahtBot added the label Needs rebase on Apr 26, 2019
  11. Sjors force-pushed on Apr 27, 2019
  12. Sjors force-pushed on Apr 27, 2019
  13. Sjors force-pushed on May 14, 2019
  14. DrahtBot removed the label Needs rebase on May 14, 2019
  15. DrahtBot added the label Needs rebase on May 29, 2019
  16. Sjors renamed this:
    [rpc] signer bump fee
    [rpc] signer send and fee bump convenience methods
    on Jun 7, 2019
  17. Sjors force-pushed on Jun 7, 2019
  18. DrahtBot removed the label Needs rebase on Jun 7, 2019
  19. Sjors force-pushed on Jul 5, 2019
  20. configure: Clone ax_boost_chrono to ax_boost_process f8bf5b14e2
  21. Add boost::process
    * AppVeyor boost-process vcpkg package.
    * Add HAVE_BOOST_PROCESS for MSVC build (bitcoin_config.h)
    * Tell Boost linter to ignore it
    9dfb01b4a7
  22. [doc] include Doxygen comments for HAVE_BOOST_PROCESS 9edd3a23b5
  23. [test] framework: add skip_if_no_runcommand c7e3d7094c
  24. [util] add runCommandParseJSON fb4a42429d
  25. [build] add IO support for Boost::Optional 2ccb3b5c57
  26. Add AddressType (base58, bech32) f721b78272
  27. Descriptor: add GetAddressType() 614cdee32d
  28. Add IsSegWit() to Descriptor 3a9d515b21
  29. [wallet] add -signer argument for external signer command
    Create basic ExternalSigner class with contructor. A Signer(<cmd>)
    is added to CWallet on load if -signer=<cmd> is set.
    f0db4ea442
  30. Sjors force-pushed on Aug 2, 2019
  31. Sjors commented at 7:39 pm on August 2, 2019: member
    Rebased. This contains some commits from #16378. The signerbumpfee RPC should be cleaned up after #16492.
  32. [test] add external signer test
    Includes a mock to mimick the HWI interace.
    a5c1e4b9b3
  33. [rpc] add external signer RPC files 9b9715beef
  34. [rpc] signer: add enumeratesigners to list external signers 86969aaf83
  35. [rpc] make ProcessImport public 7290ac2597
  36. [rpc] signer: GetSignerForJSONRPCRequest 3f0ae5a464
  37. [rpc] signer: add ParseDescriptor 89871c6e5c
  38. [rpc] signer: add signerfetchkeys to import keys from signer 1c9c8c759b
  39. [rpc] signer: add signerdissociate 9ee5a08bec
  40. [rpc] signer: add signerdisplayaddress e951fb2b04
  41. [rpc] signer: add signerprocesspsbt a12e9d899c
  42. [doc] add external-signer.md 3ba77e9582
  43. [rpc] move DEFAULT_MAX_RAW_TX_FEE to util 3be00f6139
  44. [rpc] walletcreatefundedpsbt: don't automatically append inputs
    When the user doesn't specificy inputs, it makes sense to automatically select them. But when the user does specify inputs, we now fail if the amount is insufficient, unless addInputs is set to true.
    ed80e18126
  45. [rpc] signer: add signersend 5cecc19ac4
  46. [rpc] signerbumpfee 83fe48fd5d
  47. Sjors force-pushed on Aug 3, 2019
  48. Sjors closed this on Aug 4, 2019

  49. DrahtBot locked this on Dec 16, 2021

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2024-10-04 22:12 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me