aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2019-04-11generalize bumpfee to add inputs when neededGregory Sanders
2019-04-11Merge #15639: bitcoin-wallet tool: Drop libbitcoin_server.a dependencyMeshCollider
78a2fb55c bitcoin-wallet tool: Drop libbitcoin_server.a dependency (Russell Yanofsky) b874747b5 Remove access to node globals from wallet-linked code (Russell Yanofsky) fbc6bb8e8 bitcoin-wallet tool: Drop MakeChain calls (Russell Yanofsky) Pull request description: Dropping the `bitcoin-wallet` dependency on `libbitcoin_server.a` ensures wallet code can't access node global state, avoiding bugs like https://github.com/bitcoin/bitcoin/pull/15557#discussion_r267735431 ACKs for commit 78a2fb: jnewbery: utACK 78a2fb55c97fbc26f7b74c5b1fb999a2aff8ce88. Nice work, Russ. MarcoFalke: utACK 78a2fb5 MeshCollider: utACK https://github.com/bitcoin/bitcoin/pull/15639/commits/78a2fb55c97fbc26f7b74c5b1fb999a2aff8ce88 Tree-SHA512: ee6ea774f683b936bea66638211dd53c42b8316e1ef03dd58d12fb7ee3891432a43c5c149944173c1e2436aa756b672e1679c39fc10043792ac55cd4d8af2823
2019-04-11Merge #15728: [wallet] Refactor relay transactionsMeshCollider
7a9046e48 [wallet] Refactor CWalletTx::RelayWalletTransaction() (John Newbery) Pull request description: Refactor `CWalletTx::RelayWalletTransaction()` function. This was a suggestion from the wallet-node separation PR: https://github.com/bitcoin/bitcoin/pull/15288#discussion_r256036330, which we deferred until after the main PR was merged. There are also makes two minor behavior changes: - no longer assert if fBroadcastTransactions is false. Just return false from the function. - no longer print the relay message if p2pEnabled is set to false (since the transaction is not actually relayed). ACKs for commit 7a9046: promag: utACK 7a9046e48d0aac35e8e6a3dd315aa98a207bebfe. MeshCollider: utACK https://github.com/bitcoin/bitcoin/pull/15728/commits/7a9046e48d0aac35e8e6a3dd315aa98a207bebfe ryanofsky: utACK 7a9046e48d0aac35e8e6a3dd315aa98a207bebfe. No changes at all, just rebase after base PR #15632 was merged Tree-SHA512: 2ae6214cfadd917a1b3a892c4277e5e57c3eb791e17f67511470e6fbc634d19356554b9f9c55af6b779fdef821914aad59b7cc9e6c13ece145df003bf507d486
2019-04-10bitcoin-wallet tool: Drop libbitcoin_server.a dependencyRussell Yanofsky
This ensures wallet code doesn't access node global state, avoiding bugs like https://github.com/bitcoin/bitcoin/pull/15557#discussion_r267735431
2019-04-10Merge #15638: Move-only: Pull wallet code out of libbitcoin_serverWladimir J. van der Laan
4d074e84a2cf419510e2920417799f62747f4b07 [build] Move AnalyzePSBT from psbt.cpp to node/psbt.cpp (Russell Yanofsky) fd509bd1f71df628b933ea7a135a9a957a5e0136 [docs] Document src subdirectories and different libraries (John Newbery) 9eaeb7fb8d4ab0d4493849e6c17e314fd75fea9c [build] Move wallet load functions to wallet/load unit (John Newbery) 91a25d1e711bfc0617027eee18b9777ff368d6b9 [build] Add several util units (John Newbery) 99517866b62c261f990e1f897502855afc12f2a7 [build] Move several units into common libraries (John Newbery) 0509465542d63a5bbe7296f283f44dd491e74f78 [build] Move rpc rawtransaction util functions to rpc/rawtransaction_util.cpp (John Newbery) 1acc61f8746bc6efb905e121a9f607c4f5982b35 [build] Move rpc utility methods to rpc/util (John Newbery) 4a75c9d6512a5580e60104103ea11d2cd9586354 [build] Move policy settings to new src/policy/settings unit (John Newbery) fdf8888b6f0c63e8a4cb1459752625e642d6a4dd [build] Move CheckTransaction from lib_server to lib_consensus (John Newbery) Pull request description: This is a move-only commit. No code is changing and the moves can be easily verified with: ```sh git log -p -n1 --color-moved=dimmed_zebra ``` This commit moves functions and variables that wallet code depends on out of libbitcoin_server.a, so the bitcoin-wallet tool can be built without libbitcoin_server.a in #15639, and attempting to access server state from wallet code will result in link errors instead of silently broken code. List of moves: - `CheckTransaction` moves from `consensus/tx_verify.cpp` to `consensus/tx_check.cpp` - `urlDecode` moves from `httpserver.cpp` to `util/url.cpp` - `TransactionErrorString` moves from `node/transaction.cpp` to `util/error.cpp` - `StringForFeeReason` and `FeeModeFromString` move from `policy/fees.cpp` to `util/fees.cpp` - `incrementalRelayFee` `dustRelayFee` and `nBytesPerSigOp` move from `policy/policy.cpp` to `policy/settings.cpp` - `SignalsOptInRBF` moves from `policy/rbf.cpp` to `util/rbf.cpp` - `fIsBareMultisigStd` moves from `validation.cpp` to `policy/settings.cpp` - `ConstructTransaction` `TxInErrorToJSON` and `SignTransaction` move from `rpc/rawtransaction.cpp` to `rpc/rawtransaction_util.cpp` - `RPCTypeCheck` `RPCTypeCheckArgument` `RPCTypeCheckObj` `AmountFromValue` `ParseHashV``ParseHashO` `ParseHexV` `ParseHexO` `HelpExampleCli` and `HelpExampleRpc` move from `rpc/server.cpp` to `rpc/util.cpp` - `AmountHighWarn` and `AmountErrMsg` move from `ui_interface.cpp` to `util/error.cpp` - `FormatStateMessage` and `strMessageMagic` move from `validation.cpp` to `util/validation.cpp` - `VerifyWallets` `LoadWallets` `StartWallets` `FlushWallets` `StopWallets` and `UnloadWallets` move from `wallet/init.cpp` to `wallet/node.cpp` ACKs for commit 4d074e: jnewbery: utACK 4d074e84a2cf419510e2920417799f62747f4b07 (checked by doing the rebase myself and verifying no difference between my branch and 4d074e84a2cf419510e2920417799f62747f4b07) Tree-SHA512: 5e1604a9fb06475f2b96da0de0baa8330f4dda834dc20a0183ef11e1e4c27631d1d1bbb9abf0054efc03d56945fdf9920f63366b6a4f200f665b742a479ff75c
2019-04-10Remove access to node globals from wallet-linked codeRussell Yanofsky
Remove last few instances of accesses to node global variables from wallet code. Also remove accesses to node globals from code in policy/policy.cpp that isn't actually called by wallet code, but does get linked into wallet code. This is the last change needed to allow bitcoin-wallet tool to be linked without depending on libbitcoin_server.a, to ensure wallet code doesn't access node global state and avoid bugs like https://github.com/bitcoin/bitcoin/pull/15557#discussion_r267735431
2019-04-10bitcoin-wallet tool: Drop MakeChain callsRussell Yanofsky
Pass null Chain interface pointer to CWallet. This is needed to drop libbitcoin_server dependency and avoid linking node code.
2019-04-10Merge #15659: [docs] fix findFork commentMarcoFalke
c968780785 [docs] fix comment: the return value of findFork is _not_ an ancestor when the specified block is on the active chain (r8921039) Pull request description: The return value of findFork is an ancestor of the specified block only when specified block is _not_ on the active chain. When it is on the active chain, the return value is the specified block itself, not an ancestor of it. ACKs for commit c96878: promag: utACK c968780, however comment could be shorter. ryanofsky: utACK c968780785c18bd6d0a8659c9e251ccf8fdc91dc. Only change since last review is squash Tree-SHA512: bb05d734059898784c4a59b5b0344719eb4dfb2d49a0f7f705fcb2eb630702e66be81c01299185faf0c219fa9f9aa64cbdf6d5f91e0b3dce0ff420909a454a18
2019-04-10Merge #15754: rpc: getrpcinfo docsMarcoFalke
f4b7a2f205 rpc: getrpcinfo docs (Ben Carman) Pull request description: Fixes #15731 ACKs for commit f4b7a2: laanwj: utACK f4b7a2f2055fa52d5e02c37bed7b46599b960e2e Tree-SHA512: 45dce83c4bfac2ddf85133a29aee332e9de8f73c15438ce899a2edbcd0d82d4f743753f6699c50cbc62d110fa8c6bc257722447e1090cdd23acbe00f26014ec8
2019-04-10[wallet] Refactor CWalletTx::RelayWalletTransaction()John Newbery
This refactors the CWalletTx::RelayWalletTransaction() function to be clearer and adds comments. It also makes two minor behavior changes: - no longer assert if fBroadcastTransactions is false. Just return false from the function. - no longer print the relay message if p2pEnabled is set to false (since the transaction is not actually relayed).
2019-04-09Merge #15746: rpc: RPCHelpMan: Always name dictionary keysMarcoFalke
fa26eb5e8f rpc: RPCHelpMan: Always push_name when outer type is an object (MarcoFalke) fa652b229e rpc: Add some doxygen comments to utils (MarcoFalke) Pull request description: Fixes two issues reported in #15737: * > I am very perplexed as to how the code I'm looking at is generating the help text I'm seeing So add documentation * > This is a value for which a key is missing So always serialize the name of the dictionary key if the outer type is a dictionary ACKs for commit fa26eb: promag: Tested ACK fa26eb5. Tree-SHA512: b6f0cee1f1123d245d4902e8e113b5260cae7f2cb39c9bfb8893c5b0b33ffb6349ad05813d560d39a94ccf655399c05fcda15d9b0733e6bd696538fe0aca7021
2019-04-09Merge #15629: init: Throw error when network specific config is ignoredMarcoFalke
fae38c3dc6 doc: Fix all typos reported by codespell (MarcoFalke) fa9058f0ed doc: Add release notes for 15629 (MarcoFalke) fa4a922d78 qa: Add test for missing testnet section in conf file (MarcoFalke) dddd6f0f58 init: Throw error when network specific config is ignored (MarcoFalke) Pull request description: This should have no effect on mainnet users, but simplifies testing, where config settings are currently ignored with only a warning. Fix this by making it an error. Issues: * bitcoin client 0.17.0 ignores wallet's name (file) #14523 * Can't set custom rpcport on testnet #13777 * ... ACKs for commit fae38c: Tree-SHA512: 2e209526898eea6e444c803ec2666989cee4ca137492d32984998733c50a70056cb54657df8dc3027a6a0612738a8afce0bc35824b868c5f22281e00e0188530
2019-04-09[build] Move AnalyzePSBT from psbt.cpp to node/psbt.cppRussell Yanofsky
psbt.cpp definitions except for AnalyzePSBT are used by the wallet and need to be linked into the wallet binary. AnalyzePSBT is an exception in that it is not used by the wallet, and depends on node classes like CCoinsViewCache, and on node global variables like nBytesPerSigOp. So AnalyzePSBT is more at home in libbitcoin_server than libbitcoin_common, and in any case needs to be defined in a separate object file than other PSBT utilities, to avoid dragging link dependencies on node functions and global variables into the wallet.
2019-04-09[docs] Document src subdirectories and different librariesJohn Newbery
2019-04-09[build] Move wallet load functions to wallet/load unitJohn Newbery
Moves the following wallet load functions to a new wallet/load unit in the libbitcoin_wallet library. All other functions in wallet/init remain in libbitcoin_server: - `VerifyWallets` - `LoadWallets` - `StartWallets` - `FlushWallets` - `StopWallets` - `UnloadWallets`
2019-04-09[build] Add several util unitsJohn Newbery
Adds the following util units and adds them to libbitcoin_util: - `util/url.cpp` takes `urlDecode` from `httpserver.cpp` - `util/error.cpp` takes `TransactionErrorString` from `node/transaction.cpp` and `AmountHighWarn` and `AmountErrMsg` from `ui_interface.cpp` - `util/fees.cpp` takes `StringForFeeReason` and `FeeModeFromString` from `policy/fees.cpp` - `util/rbf.cpp` takes `SignalsOptInRBF` from `policy/rbf.cpp` - 'util/validation.cpp` takes `FormatStateMessage` and `strMessageMagic` from 'validation.cpp`
2019-04-09[build] Move several units into common librariesJohn Newbery
Moves the following units into libbitcoin_util or libbitcoin_common since they are required by multiple libraries: - bloom - interfaces/handler - merkleblock - outputtype
2019-04-09[build] Move rpc rawtransaction util functions to rpc/rawtransaction_util.cppJohn Newbery
rpc/rawtransaction.cpp moves to libbitcoin_server since it should not be accessed by non-node libraries. The utility following utility methods move to their own unit rpc/rawtransaction_util since they need to be accessed by non-node libraries: - `ConstructTransaction` - `TxInErrorToJSON` - `SignTransaction`
2019-04-09[build] Move rpc utility methods to rpc/utilJohn Newbery
Moves the following utility methods to rpc/util and moves that unit to libbitcoin_common so they can be accessed by all libraries. - `RPCTypeCheck` - `RPCTypeCheckArgument` - `RPCTypeCheckObj` - `AmountFromValue` - `ParseHashV``ParseHashO` - `ParseHexV` - `ParseHexO` - `HelpExampleCli` - `HelpExampleRpc`
2019-04-09[build] Move policy settings to new src/policy/settings unitJohn Newbery
This moves the following policy settings functions and globals to a new src/policy/settings unit in lib_server: - `incrementalRelayFee` - `dustRelayFee` - `nBytesPerSigOp` - `fIsBareMultisigStd` These settings are only required by the node and should not be accessed by other libraries.
2019-04-09[build] Move CheckTransaction from lib_server to lib_consensusJohn Newbery
CheckTransaction is a context-free function that does not require access to the blockchain or mempool. Move it from src/consensus/tx_verify in lib_server to a new unit src/consensus/tx_check in lib_consensus so that it can be called by non-server libraries.
2019-04-09[wallet] Remove unnecessary Chain::Lock parameter from ResendWalletTransactionsJohn Newbery
2019-04-09[wallet] Schedule tx rebroadcasts in walletJohn Newbery
Removes the now-unused Broadcast/ResendWalletTransactions interface from validationinterface. The wallet_resendwallettransactions.py needs a sleep added at the start to make sure that the rebroadcast scheduler is warmed up before the next block is mined.
2019-04-09[wallet] Keep track of the best block time in the walletJohn Newbery
Move nTimeBestReceived (which is only used for wallet rebroadcasts) into the wallet.
2019-04-10Merge #15749: Fix: importmulti only imports origin info for PKH outputsMeshCollider
b5d398772 Take non-importing keys into account for spendability warning in descriptor import (Pieter Wuille) 6e597001a Import all origin info in importmulti; even for non-importing pubkeys (Pieter Wuille) 9a93c91c8 Keep full pubkeys in FlatSigningProvider::origins (Pieter Wuille) Pull request description: This fixes #15743 and #15742. Since #15263, pubkeys are no longer imported for non-PKH (or WPKH, or any wrapped form of those) outputs, as that would incorrectly mark outputs to single-key versions of multisig policies as watched. As a side effect, this change also caused origin info not to be imported anymore for multisig policies. Fix this by plumbing through the full pubkey information for origins in FlatSigningProvider, and then importing all origin info we have in `importmulti` (knowing more never hurts, and additional origin information has no negative consequences like importing the pubkeys themselves). ACKs for commit b5d398: MeshCollider: utACK https://github.com/bitcoin/bitcoin/pull/15749/commits/b5d39877242504160a7f2c24c60c07a845d7a064 Tree-SHA512: 37caa2be8d01b8baa12f70a58eaa7c583f5f0afbe012e02936dd8790dc5dc852f880b77258b34ddb68cae30c029585f2d1c4f5d00015380557a1e8b471e500f3
2019-04-10Merge #15747: wallet: Remove plethora of Get*BalanceMeshCollider
fa57411fc wallet: Get all balances in one call (MarcoFalke) Pull request description: The wallet provides a getter for each "type" of balance. However, a single iteration over `mapWallet` is sufficient to calculate all types of balances. ACKs for commit fa5741: Empact: utACK https://github.com/bitcoin/bitcoin/pull/15747/commits/fa57411fcba00556ba25d45bca53cc04623da051 promag: utACK fa57411. MeshCollider: utACK https://github.com/bitcoin/bitcoin/pull/15747/commits/fa57411fcba00556ba25d45bca53cc04623da051 Tree-SHA512: 38b7f346ec95d2604a4d32f4caef2841b8fe59511d2d23890ba3dc497bb2f45eb6be87d12eb004005cad16e9fea83ae6e3000f2197c7a677a07debdb457064a2
2019-04-08Merge #15760: doc: Clarify sendrawtransaction::maxfeerate==0 helpMarcoFalke
fa49db7eac doc: Clarify sendrawtransaction::maxfeerate==0 help (MarcoFalke) Pull request description: Used a lot in e.g. the tests: `git grep 'maxfeerate=0)' test` ACKs for commit fa49db: promag: ACK fa49db7. jonatack: ACK https://github.com/bitcoin/bitcoin/pull/15760/commits/fa49db7eacecfe0657797aa4aa3c783c4527e19f Tree-SHA512: cb3fa10960f45606c3599b76c48666a663e5c44cfb7c29bab5d44caa7dc6cb57aaac81cb9b173e079dde01d07c5363c99416f25303a8fd41010928118474a741
2019-04-08Merge #15711: gui: Generate bech32 addresses by defaultMarcoFalke
faf62d9415 gui: Generate bech32 addresses by default (MarcoFalke) Pull request description: Most services support bech32 addresses now, so generating legacy addresses by default seems overly cautious. bech32 addresses are more robust and user friendly in multiple ways. ACKs for commit faf62d: promag: utACK faf62d9, maybe add a release note "checkbox changed, but the behavior/outcome remains the same". laanwj: utACK faf62d9415d74e69356d2b64c134184814938708, don't think a release note is needed for this specifically, though a general release note on switching to bech32 by default would make sense fanquake: tACK faf62d9 Empact: utACK https://github.com/bitcoin/bitcoin/pull/15711/commits/faf62d9415d74e69356d2b64c134184814938708 Tree-SHA512: a03e6ccf1e5476fe800941992c531664830cec0644984d8bce97c8d8f5d6d9abd528ab979892368cd195e7c8b9083d6b8dfd36a7cb172aa9dbeaa01a948e30e1
2019-04-06doc: Clarify sendrawtransaction::maxfeerate==0 helpMarcoFalke
2019-04-06Take non-importing keys into account for spendability warning in descriptor ↵Pieter Wuille
import
2019-04-06Merge #15508: Refactor analyzepsbt for use outside RPC codePieter Wuille
892eff05f1 Add documentation of struct PSBTAnalysis et al (Glenn Willen) ef22fe8c1f Refactor analyzepsbt for use outside RPC code (Glenn Willen) afd20a25f2 Move PSBT decoding functions from core_io to psbt.cpp (Glenn Willen) Pull request description: Refactor the analyzepsbt RPC into (1) an AnalyzePSBT function, which returns its output as a new strongly-typed PSBTAnalysis struct, and (2) a thin wrapper which converts the struct into a UniValue for RPC use. ---- As with my previous refactoring PR, I need this because I am creating a dependency on this code from the GUI. Per discussion in #bitcoin-core-dev on IRC, since we don't want to create a dependency on UniValue in anything outside RPC, I introduced some new structs to hold the info we get when analyzing a PSBT. For the field types, I used whatever types are already used internally for this data (e.g. CAmount, CFeeRate, CKeyID), and only convert to int/string etc. in the wrapper. @achow101, maybe take the first look? :-) ACKs for commit 892eff: sipa: utACK 892eff05f115c0b002d0e0b6ffc3ab418480d25c achow101: utACK 892eff05f115c0b002d0e0b6ffc3ab418480d25c ryanofsky: utACK 892eff05f115c0b002d0e0b6ffc3ab418480d25c. Just small cleanups since the last review: removing unneeded include, forward decl, adding const ref Tree-SHA512: eb278b0a82717ebc3eb0c08dc5bb4eefb996a317a6a3a8ecf51cd88110ddbb188ad3482cdd9563e557995e73aca5a282c1f6e352bc598155f1203b7b46fe5dee
2019-04-05Remove unused varPeter Bushnell
2019-04-05rpc: getrpcinfo docsBen Carman
2019-04-04Merge #15654: net: Remove unused unsanitized user agent string CNode::strSubVerMarcoFalke
fa8548c5d1 net: Remove unused unsanitized user agent string CNode::strSubVer (MarcoFalke) Pull request description: I fail to see a use case for this unsanitized byte array. In fact this can easily be confused with `cleanSubVer` and be displayed to the user (or logged) by a simple typo that is hard to find in review. Further reading: https://btcinformation.org/en/developer-reference#version ACKs for commit fa8548: promag: utACK fa8548c, good catch. practicalswift: utACK fa8548c5d13957f57f9b1e20e03002600962f7f0 sipa: utACK fa8548c5d13957f57f9b1e20e03002600962f7f0 Tree-SHA512: 3c3ff1504d1583ad099df9a6aa761458a82ec48a58ef7aaa9b5679a5281dd1b59036ba2932ed708488951a565b669a3083ef70be5a58472ff8677b971162ae2f
2019-04-04Import all origin info in importmulti; even for non-importing pubkeysPieter Wuille
2019-04-04Keep full pubkeys in FlatSigningProvider::originsPieter Wuille
2019-04-04wallet: Get all balances in one callMarcoFalke
2019-04-04Merge #15596: rpc: Ignore sendmany::minconf as dummy valueMarcoFalke
fabfb79673 doc: Add release notes for 15596 (MarcoFalke) fac1a0fe54 wallet: Remove unused GetLegacyBalance (MarcoFalke) faa3a246e8 scripted-diff: wallet: Rename pcoin to wtx (MarcoFalke) fae5f874d5 rpc: Document that minconf is an ignored dummy value (MarcoFalke) Pull request description: Other RPCs such as `sendtoaddress` don't have this option at all and `sendmany` should by default spend from (lets say) our change. ACKs for commit fabfb7: jnewbery: utACK fabfb79673d6bf9bff5258cd709d8294e77c1764 ryanofsky: utACK fabfb79673d6bf9bff5258cd709d8294e77c1764. Nice writeup! Release notes are only change since previous review. Tree-SHA512: 2526ead2330be7c2beb78b96bc5e55440566c4a3a809bbbd66f5c9fc517f6890affa5d14005dc102644d49679a374510f9507255e870cf88aaa63e429beef658
2019-04-04rpc: RPCHelpMan: Always push_name when outer type is an objectMarcoFalke
2019-04-04rpc: Add some doxygen comments to utilsMarcoFalke
2019-04-03Merge #15685: doc: rpc-mining: Clarify error messagesMarcoFalke
fa292adce9 doc: rpc-mining: Clarify error messages (MarcoFalke) Pull request description: Fixes #13274 ACKs for commit fa292a: fanquake: tACK fa292ad Tree-SHA512: 58946a52ce49b97c35cbf5eaa9175447a231690cb2bac0d39e5db524bdf2cbad274a905038aca270c080d5660f58176d43c01a22a8417c0f5b8276816939c1d6
2019-04-02Merge #15680: Remove resendwallettransactions RPC methodMarcoFalke
ea1a2d8794 [wallet] Remove ResendWalletTransactionsBefore (John Newbery) f5162458cd [rpc] remove resendwallettransactions RPC (John Newbery) Pull request description: Remove resendwallettransactions RPC method This RPC was added for testing wallet rebroadcasts. Since we now have a real test for wallet rebroadcasts, it's no longer needed. The call in wallet_basic.py can be removed because wallet_resendwallettransactions.py tests wallet rebroadcast. ACKs for commit ea1a2d: MarcoFalke: re-utACK ea1a2d8794 promag: utACK ea1a2d8. Tree-SHA512: 48245d947be1a2d2b8c30d2946105818c454a03b70b63534ecadf2144da64dafe1c9527ea670a5f4d1acd05ccdfc6c9be43ca636ee2ba58a8b7a7b2fc7bc88fd
2019-04-01Merge #15652: wallet: Update transactions with current mempool after loadMarcoFalke
4bf1b1cefa qa: Check unconfirmed balance after loadwallet (João Barbosa) 2ebf650b2e wallet: Update transactions with current mempool after load (João Barbosa) 57908a739c interfaces: Add Chain::requestMempoolTransactions (João Barbosa) 0440481c6b wallet: Move CWallet::ReacceptWalletTransactions locks to callers (João Barbosa) Pull request description: Fixes #15591. ACKs for commit 4bf1b1: MarcoFalke: re-utACK 4bf1b1cefa jnewbery: utACK 4bf1b1cefa9723bf2cfa8b1a938757abc99bb17b Tree-SHA512: 604b1057c7f9fc3772084bf6914e52dd1a68a1cfd365f907e8ec78f6f5f726bc56a3cad9f2b665642714fbf3d51e37c1184ac396460bddeafd918e8f9f7af392
2019-04-01Merge #15644: Make orphan processing interruptibleMarcoFalke
866c8058a7 Interrupt orphan processing after every transaction (Pieter Wuille) 6e051f3d32 [MOVEONLY] Move processing of orphan queue to ProcessOrphanTx (Pieter Wuille) 9453018fdc Simplify orphan processing in preparation for interruptibility (Pieter Wuille) Pull request description: As individual orphan transactions can be relatively expensive to handle, it's undesirable to process all of them (max 100) as soon as the parent becomes available, as it pegs the net processing the whole time. Change this by interrupting orphan handling after every transactions, and continue in the next processing slot of the peer that gave us the parent - similar to how getdata processing works now. Messages from other peers arriving in the mean time are processed normally, but other messages from the peer that gave us the parent have to wait until all orphan processing is done. ACKs for commit 866c80: sdaftuar: ACK 866c8058a706931f025335b3e794ed2f4d287918 MarcoFalke: utACK 866c8058a706931f025335b3e794ed2f4d287918 promag: utACK 866c805. Verified refactor in 9453018fdc8f02d42832374bcf1d6e3a1df02281 and moved code in 6e051f3d323af1d209c02e7a4319834f1947ffa7. Not so sure about change in 866c8058a706931f025335b3e794ed2f4d287918 just because I'm not familiar with net processing. Tree-SHA512: d8e8a1ee5f2999446cdeb8fc9756ed9c24f3d5cd769a7774ec4c317fc8d463fdfceec88de97266f389b715a5dfcc2b0a3abaa573955ea451786cc43b870e8cde
2019-04-01[wallet] Remove ResendWalletTransactionsBeforeJohn Newbery
This is only called from ResendWalletTransactions(), so bring it inline.
2019-03-31gui: Generate bech32 addresses by defaultMarcoFalke
2019-03-31wallet: Update transactions with current mempool after loadJoão Barbosa
2019-03-31interfaces: Add Chain::requestMempoolTransactionsJoão Barbosa
2019-03-29Merge #15669: rpc: Fix help text for signtransactionwithXXXMarcoFalke
afc06fc868 rpc: Fix help text for signtransactionwithXXX (Torkel Rogstad) Pull request description: This PR fixes the help text for the `signrawtransactionwithwallet` and `signrawtransactionwithkey` RPC calls. They both marked the `amount` field in the UTXO dependencies as required. This field is omitted in the [`rpc_rawtransaction.py` test](https://github.com/bitcoin/bitcoin/blob/8a8b03ecd2218dcdbcbf3127f2fa94f0f0da4698/test/functional/rpc_rawtransaction.py#L155) and [`successful_signing_test`](https://github.com/bitcoin/bitcoin/blob/8a8b03ecd2218dcdbcbf3127f2fa94f0f0da4698/test/functional/rpc_signrawtransaction.py#L42) in `rpc_signrawtransaction.py`. ACKs for commit afc06f: promag: utACK afc06fc. MarcoFalke: utACK afc06fc8687e394e93d568e59808bb2660a75e06 Tree-SHA512: 7847844ca38d8033fef2f5255700d21487d78a63ecee8b80362fa28fadfafc80ba29a89f38d7ebb3a1be4c7d47ff6c338f67afec9ee22bf065fb352bb3d03d3a
2019-03-29[rpc] remove resendwallettransactions RPCJohn Newbery
This RPC was added for testing wallet rebroadcasts. Since we now have a real test for wallet rebroadcasts, it's no longer needed. The call in wallet_basic.py can be removed because wallet_resendwallettransactions.py tests wallet rebroadcast.