diff --git a/Cargo-minimal.lock b/Cargo-minimal.lock index 45190910..0d406fe3 100644 --- a/Cargo-minimal.lock +++ b/Cargo-minimal.lock @@ -24,6 +24,12 @@ version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" +[[package]] +name = "base64" +version = "0.21.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" + [[package]] name = "bech32" version = "0.11.0" @@ -37,6 +43,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4bf33434c870e98ecc8608588ccc990c5daba9ba9ad39733dc85fba22c211504" dependencies = [ "base58ck", + "base64 0.21.7", "bech32", "bitcoin-internals", "bitcoin-io", @@ -143,7 +150,7 @@ checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" name = "jsonrpc" version = "0.18.0" dependencies = [ - "base64", + "base64 0.13.1", "minreq", "serde", "serde_json", @@ -297,7 +304,3 @@ name = "winapi-x86_64-pc-windows-gnu" version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" - -[[patch.unused]] -name = "corepc-node" -version = "0.4.0" diff --git a/Cargo-recent.lock b/Cargo-recent.lock index 45190910..0d406fe3 100644 --- a/Cargo-recent.lock +++ b/Cargo-recent.lock @@ -24,6 +24,12 @@ version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" +[[package]] +name = "base64" +version = "0.21.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" + [[package]] name = "bech32" version = "0.11.0" @@ -37,6 +43,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4bf33434c870e98ecc8608588ccc990c5daba9ba9ad39733dc85fba22c211504" dependencies = [ "base58ck", + "base64 0.21.7", "bech32", "bitcoin-internals", "bitcoin-io", @@ -143,7 +150,7 @@ checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" name = "jsonrpc" version = "0.18.0" dependencies = [ - "base64", + "base64 0.13.1", "minreq", "serde", "serde_json", @@ -297,7 +304,3 @@ name = "winapi-x86_64-pc-windows-gnu" version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" - -[[patch.unused]] -name = "corepc-node" -version = "0.4.0" diff --git a/types/CHANGELOG.md b/types/CHANGELOG.md index d198ec0b..125c9fc5 100644 --- a/types/CHANGELOG.md +++ b/types/CHANGELOG.md @@ -1,3 +1,8 @@ +# Unreleased + +- Flesh out v17 and v18. +- Rename `corepc-node::BitcoinD` to `Node`. + # 0.4.0 - 2024-11-14 - Add support for Bitcoin Core v28 diff --git a/types/src/v17/mod.rs b/types/src/v17/mod.rs index 2a63c605..8b702728 100644 --- a/types/src/v17/mod.rs +++ b/types/src/v17/mod.rs @@ -16,151 +16,152 @@ //! - Method does not return anything. //! - Method returns a simple type (e.g. bool or integer). //! - Method is deprecated. +// TODO: After all the `[i]` is gone (ie testing done) remove the backticks. //! //! **== Blockchain ==** -//! - [x] `getbestblockhash` -//! - [x] `getblock "blockhash" ( verbosity ) ` -//! - [x] `getblockchaininfo` -//! - [x] `getblockcount` -//! - [x] `getblockhash height` -//! - [x] `getblockheader "hash" ( verbose )` -//! - [x] `getblockstats hash_or_height ( stats )` -//! - [x] `getchaintips` -//! - [x] `getchaintxstats ( nblocks blockhash )` -//! - [x] `getdifficulty` -//! - [i] `getmempoolancestors txid (verbose)` -//! - [i] `getmempooldescendants txid (verbose)` -//! - [i] `getmempoolentry txid` -//! - [i] `getmempoolinfo` -//! - [i] `getrawmempool ( verbose )` -//! - [i] `gettxout "txid" n ( include_mempool )` -//! - [i] `gettxoutproof ["txid",...] ( blockhash )` -//! - [i] `gettxoutsetinfo` -//! - [-] `preciousblock "blockhash"` -//! - [-] `pruneblockchain` -//! - [-] `savemempool` -//! - [-] `scantxoutset ( )` -//! - [-] `verifychain ( checklevel nblocks )` -//! - [i] `verifytxoutproof "proof"` +//! - `[x]` `getbestblockhash` +//! - `[x]` `getblock "blockhash" ( verbosity ) ` +//! - `[x]` `getblockchaininfo` +//! - `[x]` `getblockcount` +//! - `[x]` `getblockhash height` +//! - `[x]` `getblockheader "hash" ( verbose )` +//! - `[x]` `getblockstats hash_or_height ( stats )` +//! - `[x]` `getchaintips` +//! - `[x]` `getchaintxstats ( nblocks blockhash )` +//! - `[x]` `getdifficulty` +//! - `[i]` `getmempoolancestors txid (verbose)` +//! - `[i]` `getmempooldescendants txid (verbose)` +//! - `[i]` `getmempoolentry txid` +//! - `[i]` `getmempoolinfo` +//! - `[i]` `getrawmempool ( verbose )` +//! - `[i]` `gettxout "txid" n ( include_mempool )` +//! - `[i]` `gettxoutproof ["txid",...] ( blockhash )` +//! - `[i]` `gettxoutsetinfo` +//! - `[-]` `preciousblock "blockhash"` +//! - `[-]` `pruneblockchain` +//! - `[-]` `savemempool` +//! - `[-]` `scantxoutset ( )` +//! - `[-]` `verifychain ( checklevel nblocks )` +//! - `[i]` `verifytxoutproof "proof"` //! //! **== Control ==** -//! - [x] `getmemoryinfo ("mode")` -//! - [-] `help ( "command" )` -//! - [x] `logging ( )` -//! - [x] `stop` -//! - [x] `uptime` +//! - `[x]` `getmemoryinfo ("mode")` +//! - `[-]` `help ( "command" )` +//! - `[x]` `logging ( )` +//! - `[x]` `stop` +//! - `[x]` `uptime` //! //! **== Generating ==** -//! - [x] `generate nblocks ( maxtries )` -//! - [x] `generatetoaddress nblocks address (maxtries)` +//! - `[x]` `generate nblocks ( maxtries )` +//! - `[x]` `generatetoaddress nblocks address (maxtries)` //! //! **== Mining ==** -//! - [ ] `getblocktemplate ( TemplateRequest )` -//! - [ ] `getmininginfo` -//! - [ ] `getnetworkhashps ( nblocks height )` -//! - [ ] `prioritisetransaction ` -//! - [ ] `submitblock "hexdata" ( "dummy" )` +//! - `[ ]` `getblocktemplate ( TemplateRequest )` +//! - `[ ]` `getmininginfo` +//! - `[ ]` `getnetworkhashps ( nblocks height )` +//! - `[ ]` `prioritisetransaction ` +//! - `[ ]` `submitblock "hexdata" ( "dummy" )` //! //! **== Network ==** -//! - [-] `addnode "node" "add|remove|onetry"` -//! - [-] `clearbanned` -//! - [-] `disconnectnode "[address]" [nodeid]` -//! - [x] `getaddednodeinfo ( "node" )` -//! - [-] `getconnectioncount` -//! - [x] `getnettotals` -//! - [x] `getnetworkinfo` -//! - [x] `getpeerinfo` -//! - [-] `listbanned` -//! - [-] `ping` -//! - [-] `setban "subnet" "add|remove" (bantime) (absolute)` -//! - [-] `setnetworkactive true|false` +//! - `[-]` `addnode "node" "add|remove|onetry"` +//! - `[-]` `clearbanned` +//! - `[-]` `disconnectnode "[address]" [nodeid]` +//! - `[x]` `getaddednodeinfo ( "node" )` +//! - `[-]` `getconnectioncount` +//! - `[x]` `getnettotals` +//! - `[x]` `getnetworkinfo` +//! - `[x]` `getpeerinfo` +//! - `[-]` `listbanned` +//! - `[-]` `ping` +//! - `[-]` `setban "subnet" "add|remove" (bantime) (absolute)` +//! - `[-]` `setnetworkactive true|false` //! //! **== Rawtransactions ==** -//! - [ ] `combinepsbt ["psbt",...]` -//! - [ ] `combinerawtransaction ["hexstring",...]` -//! - [ ] `converttopsbt "hexstring" ( permitsigdata iswitness )` -//! - [ ] `createpsbt [{"txid":"id","vout":n},...] [{"address":amount},{"data":"hex"},...] ( locktime ) ( replaceable )` -//! - [ ] `createrawtransaction [{"txid":"id","vout":n},...] [{"address":amount},{"data":"hex"},...] ( locktime ) ( replaceable )` -//! - [ ] `decodepsbt "psbt"` -//! - [ ] `decoderawtransaction "hexstring" ( iswitness )` -//! - [ ] `decodescript "hexstring"` -//! - [ ] `finalizepsbt "psbt" ( extract )` -//! - [ ] `fundrawtransaction "hexstring" ( options iswitness )` -//! - [ ] `getrawtransaction "txid" ( verbose "blockhash" )` -//! - [i] `sendrawtransaction "hexstring" ( allowhighfees )` -//! - [ ] `signrawtransaction "hexstring" ( [{"txid":"id","vout":n,"scriptPubKey":"hex","redeemScript":"hex"},...] ["privatekey1",...] sighashtype )` -//! - [ ] `signrawtransactionwithkey "hexstring" ["privatekey1",...] ( [{"txid":"id","vout":n,"scriptPubKey":"hex","redeemScript":"hex"},...] sighashtype )` -//! - [ ] `testmempoolaccept ["rawtxs"] ( allowhighfees )` +//! - `[ ]` `combinepsbt ["psbt",...]` +//! - `[ ]` `combinerawtransaction ["hexstring",...]` +//! - `[ ]` `converttopsbt "hexstring" ( permitsigdata iswitness )` +//! - `[ ]` `createpsbt [{"txid":"id","vout":n},...] [{"address":amount},{"data":"hex"},...] ( locktime ) ( replaceable )` +//! - `[ ]` `createrawtransaction [{"txid":"id","vout":n},...] [{"address":amount},{"data":"hex"},...] ( locktime ) ( replaceable )` +//! - `[ ]` `decodepsbt "psbt"` +//! - `[ ]` `decoderawtransaction "hexstring" ( iswitness )` +//! - `[ ]` `decodescript "hexstring"` +//! - `[ ]` `finalizepsbt "psbt" ( extract )` +//! - `[ ]` `fundrawtransaction "hexstring" ( options iswitness )` +//! - `[ ]` `getrawtransaction "txid" ( verbose "blockhash" )` +//! - `[i]` `sendrawtransaction "hexstring" ( allowhighfees )` +//! - `[ ]` `signrawtransaction "hexstring" ( [{"txid":"id","vout":n,"scriptPubKey":"hex","redeemScript":"hex"},...] ["privatekey1",...] sighashtype )` +//! - `[ ]` `signrawtransactionwithkey "hexstring" ["privatekey1",...] ( [{"txid":"id","vout":n,"scriptPubKey":"hex","redeemScript":"hex"},...] sighashtype )` +//! - `[ ]` `testmempoolaccept ["rawtxs"] ( allowhighfees )` //! //! **== Util ==** -//! - [ ] `createmultisig nrequired ["key",...] ( "address_type" )` -//! - [ ] `estimatesmartfee conf_target ("estimate_mode")` -//! - [ ] `signmessagewithprivkey "privkey" "message"` -//! - [ ] `validateaddress "address"` -//! - [ ] `verifymessage "address" "signature" "message"` +//! - `[ ]` `createmultisig nrequired ["key",...] ( "address_type" )` +//! - `[ ]` `estimatesmartfee conf_target ("estimate_mode")` +//! - `[ ]` `signmessagewithprivkey "privkey" "message"` +//! - `[ ]` `validateaddress "address"` +//! - `[ ]` `verifymessage "address" "signature" "message"` //! //! **== Wallet ==** -//! - [-] `abandontransaction "txid"` -//! - [-] `abortrescan` -//! - [x] `addmultisigaddress nrequired ["key",...] ( "label" "address_type" )` -//! - [-] `backupwallet "destination"` -//! - [x] `bumpfee "txid" ( options ) ` -//! - [x] `createwallet "wallet_name" ( disable_private_keys )` -//! - [x] `dumpprivkey "address"` -//! - [x] `dumpwallet "filename"` -//! - [-] `encryptwallet "passphrase"` -//! - [-] `getaccount (Deprecated, will be removed in V0.18. To use this command, start bitcoind with -deprecatedrpc=accounts)` -//! - [-] `getaccountaddress (Deprecated, will be removed in V0.18. To use this command, start bitcoind with -deprecatedrpc=accounts)` -//! - [-] `getaddressbyaccount (Deprecated, will be removed in V0.18. To use this command, start bitcoind with -deprecatedrpc=accounts)` -//! - [x] `getaddressesbylabel "label"` -//! - [x] `getaddressinfo "address"` -//! - [x] `getbalance ( "(dummy)" minconf include_watchonly )` -//! - [x] `getnewaddress ( "label" "address_type" )` -//! - [x] `getrawchangeaddress ( "address_type" )` -//! - [-] `getreceivedbyaccount (Deprecated, will be removed in V0.18. To use this command, start bitcoind with -deprecatedrpc=accounts)` -//! - [i] `getreceivedbyaddress "address" ( minconf )` -//! - [x] `gettransaction "txid" ( include_watchonly )` -//! - [i] `getunconfirmedbalance` -//! - [i] `getwalletinfo` -//! - [-] `importaddress "address" ( "label" rescan p2sh )` -//! - [-] `importmulti "requests" ( "options" )` -//! - [-] `importprivkey "privkey" ( "label" ) ( rescan )` -//! - [-] `importprunedfunds` -//! - [-] `importpubkey "pubkey" ( "label" rescan )` -//! - [-] `importwallet "filename"` -//! - [-] `keypoolrefill ( newsize )` -//! - [-] `listaccounts (Deprecated, will be removed in V0.18. To use this command, start bitcoind with -deprecatedrpc=accounts)` -//! - [i] `listaddressgroupings` -//! - [i] `listlabels ( "purpose" )` -//! - [i] `listlockunspent` -//! - [-] `listreceivedbyaccount (Deprecated, will be removed in V0.18. To use this command, start bitcoind with -deprecatedrpc=accounts)` -//! - [i] `listreceivedbyaddress ( minconf include_empty include_watchonly address_filter )` -//! - [i] `listsinceblock ( "blockhash" target_confirmations include_watchonly include_removed )` -//! - [i] `listtransactions (label count skip include_watchonly)` -//! - [i] `listunspent ( minconf maxconf ["addresses",...] [include_unsafe] [query_options])` -//! - [i] `listwallets` -//! - [x] `loadwallet "filename"` -//! - [-] `lockunspent unlock ([{"txid":"txid","vout":n},...])` -//! - [-] `move (Deprecated, will be removed in V0.18. To use this command, start bitcboind with -deprecatedrpc=accounts)` -//! - [-] `removeprunedfunds "txid"` -//! - [x] `rescanblockchain ("start_height") ("stop_height")` -//! - [-] `sendfrom (Deprecated, will be removed in V0.18. To use this command, start bitcoind with -deprecatedrpc=accounts)` -//! - [i] `sendmany "" {"address":amount,...} ( minconf "comment" ["address",...] replaceable conf_target "estimate_mode")` -//! - [x] `sendtoaddress "address" amount ( "comment" "comment_to" subtractfeefromamount replaceable conf_target "estimate_mode")` -//! - [-] `setaccount (Deprecated, will be removed in V0.18. To use this command, start bitcoind with -deprecatedrpc=accounts)` -//! - [-] `sethdseed ( "newkeypool" "seed" )` -//! - [-] `settxfee amount` -//! - [i] `signmessage "address" "message"` -//! - [i] `signrawtransactionwithwallet "hexstring" ( [{"txid":"id","vout":n,"scriptPubKey":"hex","redeemScript":"hex"},...] sighashtype )` -//! - [-] `unloadwallet ( "wallet_name" )` -//! - [i] `walletcreatefundedpsbt [{"txid":"id","vout":n},...] [{"address":amount},{"data":"hex"},...] ( locktime ) ( replaceable ) ( options bip32derivs )` -//! - [-] `walletlock` -//! - [-] `walletpassphrase "passphrase" timeout` -//! - [-] `walletpassphrasechange "oldpassphrase" "newpassphrase"` -//! - [i] `walletprocesspsbt "psbt" ( sign "sighashtype" bip32derivs )` +//! - `[-]` `abandontransaction "txid"` +//! - `[-]` `abortrescan` +//! - `[x]` `addmultisigaddress nrequired ["key",...] ( "label" "address_type" )` +//! - `[-]` `backupwallet "destination"` +//! - `[x]` `bumpfee "txid" ( options ) ` +//! - `[x]` `createwallet "wallet_name" ( disable_private_keys )` +//! - `[x]` `dumpprivkey "address"` +//! - `[x]` `dumpwallet "filename"` +//! - `[-]` `encryptwallet "passphrase"` +//! - `[-]` `getaccount (Deprecated, will be removed in V0.18. To use this command, start bitcoind with -deprecatedrpc=accounts)` +//! - `[-]` `getaccountaddress (Deprecated, will be removed in V0.18. To use this command, start bitcoind with -deprecatedrpc=accounts)` +//! - `[-]` `getaddressbyaccount (Deprecated, will be removed in V0.18. To use this command, start bitcoind with -deprecatedrpc=accounts)` +//! - `[x]` `getaddressesbylabel "label"` +//! - `[x]` `getaddressinfo "address"` +//! - `[x]` `getbalance ( "(dummy)" minconf include_watchonly )` +//! - `[x]` `getnewaddress ( "label" "address_type" )` +//! - `[x]` `getrawchangeaddress ( "address_type" )` +//! - `[-]` `getreceivedbyaccount (Deprecated, will be removed in V0.18. To use this command, start bitcoind with -deprecatedrpc=accounts)` +//! - `[i]` `getreceivedbyaddress "address" ( minconf )` +//! - `[x]` `gettransaction "txid" ( include_watchonly )` +//! - `[i]` `getunconfirmedbalance` +//! - `[i]` `getwalletinfo` +//! - `[-]` `importaddress "address" ( "label" rescan p2sh )` +//! - `[-]` `importmulti "requests" ( "options" )` +//! - `[-]` `importprivkey "privkey" ( "label" ) ( rescan )` +//! - `[-]` `importprunedfunds` +//! - `[-]` `importpubkey "pubkey" ( "label" rescan )` +//! - `[-]` `importwallet "filename"` +//! - `[-]` `keypoolrefill ( newsize )` +//! - `[-]` `listaccounts (Deprecated, will be removed in V0.18. To use this command, start bitcoind with -deprecatedrpc=accounts)` +//! - `[i]` `listaddressgroupings` +//! - `[i]` `listlabels ( "purpose" )` +//! - `[i]` `listlockunspent` +//! - `[-]` `listreceivedbyaccount (Deprecated, will be removed in V0.18. To use this command, start bitcoind with -deprecatedrpc=accounts)` +//! - `[i]` `listreceivedbyaddress ( minconf include_empty include_watchonly address_filter )` +//! - `[i]` `listsinceblock ( "blockhash" target_confirmations include_watchonly include_removed )` +//! - `[i]` `listtransactions (label count skip include_watchonly)` +//! - `[i]` `listunspent ( minconf maxconf ["addresses",...] [include_unsafe] [query_options])` +//! - `[i]` `listwallets` +//! - `[x]` `loadwallet "filename"` +//! - `[-]` `lockunspent unlock ([{"txid":"txid","vout":n},...])` +//! - `[-]` `move (Deprecated, will be removed in V0.18. To use this command, start bitcboind with -deprecatedrpc=accounts)` +//! - `[-]` `removeprunedfunds "txid"` +//! - `[x]` `rescanblockchain ("start_height") ("stop_height")` +//! - `[-]` `sendfrom (Deprecated, will be removed in V0.18. To use this command, start bitcoind with -deprecatedrpc=accounts)` +//! - `[i]` `sendmany "" {"address":amount,...} ( minconf "comment" ["address",...] replaceable conf_target "estimate_mode")` +//! - `[x]` `sendtoaddress "address" amount ( "comment" "comment_to" subtractfeefromamount replaceable conf_target "estimate_mode")` +//! - `[-]` `setaccount (Deprecated, will be removed in V0.18. To use this command, start bitcoind with -deprecatedrpc=accounts)` +//! - `[-]` `sethdseed ( "newkeypool" "seed" )` +//! - `[-]` `settxfee amount` +//! - `[i]` `signmessage "address" "message"` +//! - `[i]` `signrawtransactionwithwallet "hexstring" ( [{"txid":"id","vout":n,"scriptPubKey":"hex","redeemScript":"hex"},...] sighashtype )` +//! - `[-]` `unloadwallet ( "wallet_name" )` +//! - `[i]` `walletcreatefundedpsbt [{"txid":"id","vout":n},...] [{"address":amount},{"data":"hex"},...] ( locktime ) ( replaceable ) ( options bip32derivs )` +//! - `[-]` `walletlock` +//! - `[-]` `walletpassphrase "passphrase" timeout` +//! - `[-]` `walletpassphrasechange "oldpassphrase" "newpassphrase"` +//! - `[i]` `walletprocesspsbt "psbt" ( sign "sighashtype" bip32derivs )` //! //! **== Zmq ==** -//! - [i] `getzmqnotifications` +//! - `[i]` `getzmqnotifications` // JSON-RPC types by API section. mod blockchain; diff --git a/types/src/v17/wallet/mod.rs b/types/src/v17/wallet/mod.rs index 326a54e1..3985f12d 100644 --- a/types/src/v17/wallet/mod.rs +++ b/types/src/v17/wallet/mod.rs @@ -750,7 +750,7 @@ pub struct ListTransactionsItem { /// Result of the JSON-RPC method `listunspent`. /// -/// > listunspent ( minconf maxconf ["addresses",...] [include_unsafe] [query_options]) +/// > listunspent ( minconf maxconf ["addresses",...] `[include_unsafe]` `[query_options]`) /// > /// > Returns array of unspent transaction outputs /// > with between minconf and maxconf (inclusive) confirmations. diff --git a/types/src/v18/mod.rs b/types/src/v18/mod.rs index 233bf32d..9efbc10a 100644 --- a/types/src/v18/mod.rs +++ b/types/src/v18/mod.rs @@ -22,153 +22,154 @@ //! - Method does not return anything. //! - Method returns a simple type (e.g. bool or integer). //! - Method is deprecated. +// TODO: After all the `[i]` is gone (ie testing done) remove the backticks. //! //! ** == Blockchain ==** -//! - [x] `getbestblockhash` -//! - [x] `getblock "blockhash" ( verbosity )` -//! - [x] `getblockchaininfo` -//! - [x] `getblockcount` -//! - [x] `getblockhash height` -//! - [x] `getblockheader "blockhash" ( verbose )` -//! - [x] `getblockstats hash_or_height ( stats )` -//! - [x] `getchaintips` -//! - [x] `getchaintxstats ( nblocks "blockhash" )` -//! - [x] `getdifficulty` -//! - [i] `getmempoolancestors "txid" ( verbose )` -//! - [i] `getmempooldescendants "txid" ( verbose )` -//! - [i] `getmempoolentry "txid"` -//! - [i] `getmempoolinfo` -//! - [i] `getrawmempool ( verbose )` -//! - [i] `gettxout "txid" n ( include_mempool )` -//! - [i] `gettxoutproof ["txid",...] ( "blockhash" )` -//! - [i] `gettxoutsetinfo` -//! - [-] `preciousblock "blockhash"` -//! - [-] `pruneblockchain height` -//! - [-] `savemempool` -//! - [-] `scantxoutset "action" [scanobjects,...]` -//! - [-] `verifychain ( checklevel nblocks )` -//! - [i] `verifytxoutproof "proof"` +//! - `[x]` `getbestblockhash` +//! - `[x]` `getblock "blockhash" ( verbosity )` +//! - `[x]` `getblockchaininfo` +//! - `[x]` `getblockcount` +//! - `[x]` `getblockhash height` +//! - `[x]` `getblockheader "blockhash" ( verbose )` +//! - `[x]` `getblockstats hash_or_height ( stats )` +//! - `[x]` `getchaintips` +//! - `[x]` `getchaintxstats ( nblocks "blockhash" )` +//! - `[x]` `getdifficulty` +//! - `[i]` `getmempoolancestors "txid" ( verbose )` +//! - `[i]` `getmempooldescendants "txid" ( verbose )` +//! - `[i]` `getmempoolentry "txid"` +//! - `[i]` `getmempoolinfo` +//! - `[i]` `getrawmempool ( verbose )` +//! - `[i]` `gettxout "txid" n ( include_mempool )` +//! - `[i]` `gettxoutproof ["txid",...] ( "blockhash" )` +//! - `[i]` `gettxoutsetinfo` +//! - `[-]` `preciousblock "blockhash"` +//! - `[-]` `pruneblockchain height` +//! - `[-]` `savemempool` +//! - `[-]` `scantxoutset "action" [scanobjects,...]` +//! - `[-]` `verifychain ( checklevel nblocks )` +//! - `[i]` `verifytxoutproof "proof"` //! //! ** == Control ==** -//! - [i] `getmemoryinfo ( "mode" )` -//! - [ ] `getrpcinfo` -//! - [-] `help ( "command" )` -//! - [x] `logging ( ["include_category",...] ["exclude_category",...] )` -//! - [x] `stop` -//! - [x] `uptime` +//! - `[i]` `getmemoryinfo ( "mode" )` +//! - `[ ]` `getrpcinfo` +//! - `[-]` `help ( "command" )` +//! - `[x]` `logging ( ["include_category",...] ["exclude_category",...] )` +//! - `[x]` `stop` +//! - `[x]` `uptime` //! //! ** == Generating ==** -//! - [x] `generate nblocks ( maxtries )` -//! - [x] `generatetoaddress nblocks "address" ( maxtries )` +//! - `[x]` `generate nblocks ( maxtries )` +//! - `[x]` `generatetoaddress nblocks "address" ( maxtries )` //! //! ** == Mining ==** -//! - [ ] `getblocktemplate "template_request"` -//! - [ ] `getmininginfo` -//! - [ ] `getnetworkhashps ( nblocks height )` -//! - [ ] `prioritisetransaction "txid" ( dummy ) fee_delta` -//! - [ ] `submitblock "hexdata" ( "dummy" )` -//! - [ ] `submitheader "hexdata"` +//! - `[ ]` `getblocktemplate "template_request"` +//! - `[ ]` `getmininginfo` +//! - `[ ]` `getnetworkhashps ( nblocks height )` +//! - `[ ]` `prioritisetransaction "txid" ( dummy ) fee_delta` +//! - `[ ]` `submitblock "hexdata" ( "dummy" )` +//! - `[ ]` `submitheader "hexdata"` //! //! ** == Network ==** -//! - [-] `addnode "node" "command"` -//! - [-] `clearbanned` -//! - [-] `disconnectnode ( "address" nodeid )` -//! - [x] `getaddednodeinfo ( "node" )` -//! - [-] `getconnectioncount` -//! - [x] `getnettotals` -//! - [x] `getnetworkinfo` -//! - [ ] `getnodeaddresses ( count )` -//! - [x] `getpeerinfo` -//! - [-] `listbanned` -//! - [-] `ping` -//! - [-] `setban "subnet" "command" ( bantime absolute )` -//! - [-] `setnetworkactive state` +//! - `[-]` `addnode "node" "command"` +//! - `[-]` `clearbanned` +//! - `[-]` `disconnectnode ( "address" nodeid )` +//! - `[x]` `getaddednodeinfo ( "node" )` +//! - `[-]` `getconnectioncount` +//! - `[x]` `getnettotals` +//! - `[x]` `getnetworkinfo` +//! - `[ ]` `getnodeaddresses ( count )` +//! - `[x]` `getpeerinfo` +//! - `[-]` `listbanned` +//! - `[-]` `ping` +//! - `[-]` `setban "subnet" "command" ( bantime absolute )` +//! - `[-]` `setnetworkactive state` //! //! ** == Rawtransactions ==** -//! - [ ] `analyzepsbt "psbt"` -//! - [ ] `combinepsbt ["psbt",...]` -//! - [ ] `combinerawtransaction ["hexstring",...]` -//! - [ ] `converttopsbt "hexstring" ( permitsigdata iswitness )` -//! - [ ] `createpsbt [{"txid":"hex","vout":n,"sequence":n},...] [{"address":amount},{"data":"hex"},...] ( locktime replaceable )` -//! - [ ] `createrawtransaction [{"txid":"hex","vout":n,"sequence":n},...] [{"address":amount},{"data":"hex"},...] ( locktime replaceable )` -//! - [ ] `decodepsbt "psbt"` -//! - [ ] `decoderawtransaction "hexstring" ( iswitness )` -//! - [ ] `decodescript "hexstring"` -//! - [ ] `finalizepsbt "psbt" ( extract )` -//! - [ ] `fundrawtransaction "hexstring" ( options iswitness )` -//! - [ ] `getrawtransaction "txid" ( verbose "blockhash" )` -//! - [ ] `joinpsbts ["psbt",...]` -//! - [i] `sendrawtransaction "hexstring" ( allowhighfees )` -//! - [ ] `signrawtransactionwithkey "hexstring" ["privatekey",...] ( [{"txid":"hex","vout":n,"scriptPubKey":"hex","redeemScript":"hex","witnessScript":"hex","amount":amount},...] "sighashtype" )` -//! - [ ] `testmempoolaccept ["rawtx",...] ( allowhighfees )` -//! - [ ] `utxoupdatepsbt "psbt"` +//! - `[ ]` `analyzepsbt "psbt"` +//! - `[ ]` `combinepsbt ["psbt",...]` +//! - `[ ]` `combinerawtransaction ["hexstring",...]` +//! - `[ ]` `converttopsbt "hexstring" ( permitsigdata iswitness )` +//! - `[ ]` `createpsbt [{"txid":"hex","vout":n,"sequence":n},...] [{"address":amount},{"data":"hex"},...] ( locktime replaceable )` +//! - `[ ]` `createrawtransaction [{"txid":"hex","vout":n,"sequence":n},...] [{"address":amount},{"data":"hex"},...] ( locktime replaceable )` +//! - `[ ]` `decodepsbt "psbt"` +//! - `[ ]` `decoderawtransaction "hexstring" ( iswitness )` +//! - `[ ]` `decodescript "hexstring"` +//! - `[ ]` `finalizepsbt "psbt" ( extract )` +//! - `[ ]` `fundrawtransaction "hexstring" ( options iswitness )` +//! - `[ ]` `getrawtransaction "txid" ( verbose "blockhash" )` +//! - `[ ]` `joinpsbts ["psbt",...]` +//! - `[i]` `sendrawtransaction "hexstring" ( allowhighfees )` +//! - `[ ]` `signrawtransactionwithkey "hexstring" ["privatekey",...] ( [{"txid":"hex","vout":n,"scriptPubKey":"hex","redeemScript":"hex","witnessScript":"hex","amount":amount},...] "sighashtype" )` +//! - `[ ]` `testmempoolaccept ["rawtx",...] ( allowhighfees )` +//! - `[ ]` `utxoupdatepsbt "psbt"` //! //! ** == Util ==** -//! - [ ] `createmultisig nrequired ["key",...] ( "address_type" )` -//! - [ ] `deriveaddresses "descriptor" ( range )` -//! - [ ] `estimatesmartfee conf_target ( "estimate_mode" )` -//! - [ ] `getdescriptorinfo "descriptor"` -//! - [ ] `signmessagewithprivkey "privkey" "message"` -//! - [ ] `validateaddress "address"` -//! - [ ] `verifymessage "address" "signature" "message"` +//! - `[ ]` `createmultisig nrequired ["key",...] ( "address_type" )` +//! - `[ ]` `deriveaddresses "descriptor" ( range )` +//! - `[ ]` `estimatesmartfee conf_target ( "estimate_mode" )` +//! - `[ ]` `getdescriptorinfo "descriptor"` +//! - `[ ]` `signmessagewithprivkey "privkey" "message"` +//! - `[ ]` `validateaddress "address"` +//! - `[ ]` `verifymessage "address" "signature" "message"` //! //! ** == Wallet ==** -//! - [-] `abandontransaction "txid"` -//! - [-] `abortrescan` -//! - [x] `addmultisigaddress nrequired ["key",...] ( "label" "address_type" )` -//! - [-] `backupwallet "destination"` -//! - [x] `bumpfee "txid" ( options )` -//! - [x] `createwallet "wallet_name" ( disable_private_keys blank )` -//! - [x] `dumpprivkey "address"` -//! - [x] `dumpwallet "filename"` -//! - [-] `encryptwallet "passphrase"` -//! - [x] `getaddressesbylabel "label"` -//! - [x] `getaddressinfo "address"` -//! - [x] `getbalance ( "dummy" minconf include_watchonly )` -//! - [x] `getnewaddress ( "label" "address_type" )` -//! - [x] `getrawchangeaddress ( "address_type" )` -//! - [i] `getreceivedbyaddress "address" ( minconf )` -//! - [ ] `getreceivedbylabel "label" ( minconf )` -//! - [x] `gettransaction "txid" ( include_watchonly )` -//! - [i] `getunconfirmedbalance` -//! - [i] `getwalletinfo` -//! - [-] `importaddress "address" ( "label" rescan p2sh )` -//! - [-] `importmulti "requests" ( "options" )` -//! - [-] `importprivkey "privkey" ( "label" rescan )` -//! - [-] `importprunedfunds "rawtransaction" "txoutproof"` -//! - [-] `importpubkey "pubkey" ( "label" rescan )` -//! - [-] `importwallet "filename"` -//! - [-] `keypoolrefill ( newsize )` -//! - [i] `listaddressgroupings` -//! - [i] `listlabels ( "purpose" )` -//! - [i] `listlockunspent` -//! - [i] `listreceivedbyaddress ( minconf include_empty include_watchonly "address_filter" )` -//! - [ ] `listreceivedbylabel ( minconf include_empty include_watchonly )` -//! - [i] `listsinceblock ( "blockhash" target_confirmations include_watchonly include_removed )` -//! - [i] `listtransactions ( "label" count skip include_watchonly )` -//! - [i] `listunspent ( minconf maxconf ["address",...] include_unsafe query_options )` -//! - [ ] `listwalletdir` -//! - [i] `listwallets` -//! - [x] `loadwallet "filename"` -//! - [-] `lockunspent unlock ( [{"txid":"hex","vout":n},...] )` -//! - [i] `removeprunedfunds "txid"` -//! - [x] `rescanblockchain ( start_height stop_height )` -//! - [i] `sendmany "" {"address":amount} ( minconf "comment" ["address",...] replaceable conf_target "estimate_mode" )` -//! - [x] `sendtoaddress "address" amount ( "comment" "comment_to" subtractfeefromamount replaceable conf_target "estimate_mode" )` -//! - [i] `sethdseed ( newkeypool "seed" )` -//! - [ ] `setlabel "address" "label"` -//! - [ ] `settxfee amount` -//! - [i] `signmessage "address" "message"` -//! - [i] `signrawtransactionwithwallet "hexstring" ( [{"txid":"hex","vout":n,"scriptPubKey":"hex","redeemScript":"hex","witnessScript":"hex","amount":amount},...] "sighashtype" )` -//! - [-] `unloadwallet ( "wallet_name" )` -//! - [i] `walletcreatefundedpsbt [{"txid":"hex","vout":n,"sequence":n},...] [{"address":amount},{"data":"hex"},...] ( locktime options bip32derivs )` -//! - [-] `walletlock` -//! - [-] `walletpassphrase "passphrase" timeout` -//! - [-] `walletpassphrasechange "oldpassphrase" "newpassphrase"` -//! - [-] `walletprocesspsbt "psbt" ( sign "sighashtype" bip32derivs )` +//! - `[-]` `abandontransaction "txid"` +//! - `[-]` `abortrescan` +//! - `[x]` `addmultisigaddress nrequired ["key",...] ( "label" "address_type" )` +//! - `[-]` `backupwallet "destination"` +//! - `[x]` `bumpfee "txid" ( options )` +//! - `[x]` `createwallet "wallet_name" ( disable_private_keys blank )` +//! - `[x]` `dumpprivkey "address"` +//! - `[x]` `dumpwallet "filename"` +//! - `[-]` `encryptwallet "passphrase"` +//! - `[x]` `getaddressesbylabel "label"` +//! - `[x]` `getaddressinfo "address"` +//! - `[x]` `getbalance ( "dummy" minconf include_watchonly )` +//! - `[x]` `getnewaddress ( "label" "address_type" )` +//! - `[x]` `getrawchangeaddress ( "address_type" )` +//! - `[i]` `getreceivedbyaddress "address" ( minconf )` +//! - `[ ]` `getreceivedbylabel "label" ( minconf )` +//! - `[x]` `gettransaction "txid" ( include_watchonly )` +//! - `[i]` `getunconfirmedbalance` +//! - `[i]` `getwalletinfo` +//! - `[-]` `importaddress "address" ( "label" rescan p2sh )` +//! - `[-]` `importmulti "requests" ( "options" )` +//! - `[-]` `importprivkey "privkey" ( "label" rescan )` +//! - `[-]` `importprunedfunds "rawtransaction" "txoutproof"` +//! - `[-]` `importpubkey "pubkey" ( "label" rescan )` +//! - `[-]` `importwallet "filename"` +//! - `[-]` `keypoolrefill ( newsize )` +//! - `[i]` `listaddressgroupings` +//! - `[i]` `listlabels ( "purpose" )` +//! - `[i]` `listlockunspent` +//! - `[i]` `listreceivedbyaddress ( minconf include_empty include_watchonly "address_filter" )` +//! - `[ ]` `listreceivedbylabel ( minconf include_empty include_watchonly )` +//! - `[i]` `listsinceblock ( "blockhash" target_confirmations include_watchonly include_removed )` +//! - `[i]` `listtransactions ( "label" count skip include_watchonly )` +//! - `[i]` `listunspent ( minconf maxconf ["address",...] include_unsafe query_options )` +//! - `[ ]` `listwalletdir` +//! - `[i]` `listwallets` +//! - `[x]` `loadwallet "filename"` +//! - `[-]` `lockunspent unlock ( [{"txid":"hex","vout":n},...] )` +//! - `[i]` `removeprunedfunds "txid"` +//! - `[x]` `rescanblockchain ( start_height stop_height )` +//! - `[i]` `sendmany "" {"address":amount} ( minconf "comment" ["address",...] replaceable conf_target "estimate_mode" )` +//! - `[x]` `sendtoaddress "address" amount ( "comment" "comment_to" subtractfeefromamount replaceable conf_target "estimate_mode" )` +//! - `[i]` `sethdseed ( newkeypool "seed" )` +//! - `[ ]` `setlabel "address" "label"` +//! - `[ ]` `settxfee amount` +//! - `[i]` `signmessage "address" "message"` +//! - `[i]` `signrawtransactionwithwallet "hexstring" ( [{"txid":"hex","vout":n,"scriptPubKey":"hex","redeemScript":"hex","witnessScript":"hex","amount":amount},...] "sighashtype" )` +//! - `[-]` `unloadwallet ( "wallet_name" )` +//! - `[i]` `walletcreatefundedpsbt [{"txid":"hex","vout":n,"sequence":n},...] [{"address":amount},{"data":"hex"},...] ( locktime options bip32derivs )` +//! - `[-]` `walletlock` +//! - `[-]` `walletpassphrase "passphrase" timeout` +//! - `[-]` `walletpassphrasechange "oldpassphrase" "newpassphrase"` +//! - `[-]` `walletprocesspsbt "psbt" ( sign "sighashtype" bip32derivs )` //! //! ** == Zmq ==**` -//! - [i] `getzmqnotifications` +//! - `[i]` `getzmqnotifications` #[doc(inline)] pub use crate::v17::{