aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorSamuel Dobson <dobsonsa68@gmail.com>2020-09-15 14:02:06 +1200
committerSamuel Dobson <dobsonsa68@gmail.com>2020-09-15 14:49:08 +1200
commitffaac6e6142a1cf61e8e12d7fc406fcb02300144 (patch)
treeffbf69a9880b5c8d71fbcef11cabc4bd6a57d1fd /doc
parent06dbbe76dd027e924eb95ffc4b409daffaefe61b (diff)
parent92326d89766155a792254d30a9962251b8fc7799 (diff)
downloadbitcoin-ffaac6e6142a1cf61e8e12d7fc406fcb02300144.tar.xz
Merge #16378: The ultimate send RPC
92326d89766155a792254d30a9962251b8fc7799 [rpc] add send method (Sjors Provoost) 2c2a1445dc9d22c9d729b8301c8b3f54195bcfcf [rpc] add snake case aliases for transaction methods (Sjors Provoost) 1bc8d0fd5906bc9637d513cd193a1f47ad94da28 [rpc] walletcreatefundedpsbt: allow inputs to be null (Sjors Provoost) Pull request description: `walletcreatefundedpsbt` has some interesting features that `sendtoaddress` and `sendmany` don't have: * manual coin selection * outputting a PSBT (it was controversial to add this, see #18201) * create a transaction without adding to wallet (which leads to broadcasting, unless `-walletbroadcast=0`) At the same time `walletcreatefundedpsbt` can't broadcast a transaction, which is inconvenient for simple use cases. This PR introduces a new `send` RPC method which creates a PSBT, signs it if possible and adds it to the wallet by default. If it can't sign all inputs, it outputs a PSBT. If `add_to_wallet` is set to `false` it will return the transaction in both PSBT and hex format. Because it uses a PSBT internally, it will much easier to add hardware wallet support to this method (see #16546). For `bitcoin-cli` users, it tries to keep the simplest use case easy to use: ```sh bitcoin-cli -regtest send '{"ADDRESS": 0.1}' 1 sat/b ``` This paves the way for deprecating `sendtoaddress` and `sendmany` though there's no rush. The only missing feature compared to these older methods is adding labels to a destination address. Depends on: - [x] #16377 (`[rpc] don't automatically append inputs in walletcreatefundedpsbt`) - [x] #11413 (`[wallet] [rpc] sendtoaddress/sendmany: Add explicit feerate option`) - [x] #18244 (`[rpc] have lockUnspents also lock manually selected coins`) ACKs for top commit: meshcollider: Light re-utACK 92326d89766155a792254d30a9962251b8fc7799 achow101: ACK 92326d89766155a792254d30a9962251b8fc7799 Reviewed code and test, ran tests. kallewoof: utACK 92326d89766155a792254d30a9962251b8fc7799 Tree-SHA512: 7552ef1b193d4c06e381c44932fdb0d54f64383e4c7d6b988f49d059c7d4bba45ce6aa7813e03df86360ad9dad6f3010eb76ee7da480551742d5fd98c2251c0f
Diffstat (limited to 'doc')
-rw-r--r--doc/release-notes-16378.md5
1 files changed, 5 insertions, 0 deletions
diff --git a/doc/release-notes-16378.md b/doc/release-notes-16378.md
new file mode 100644
index 0000000000..b006ea1a56
--- /dev/null
+++ b/doc/release-notes-16378.md
@@ -0,0 +1,5 @@
+RPC
+---
+- A new `send` RPC with similar syntax to `walletcreatefundedpsbt`, including
+ support for coin selection and a custom fee rate. Using the new `send` method
+ is encouraged: `sendmany` and `sendtoaddress` may be deprecated in a future release.