aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-02-17Merge #15425: [Doc] add missing newline to listunspent help for witnessScriptWladimir J. van der Laan
d3661a3fd247e8fb3911e2f7256025de8b163aeb [Doc] add missing newline to witnessScript in listunspent help (David A. Harding) Pull request description: Tree-SHA512: 85bb9c693bac36da0239eb6a1f42c2173d0170d5ff3d4c2fcd8897cfab233ef8c8ebc1eb5591e3dc89d091fde221d77c872f14a1eec201fee4dc83ba788390c3
2019-02-17Merge #15426: [Doc] importmulti: add missing description of keypool optionWladimir J. van der Laan
a607c9ae4c2730fca5ce340c400c95c87e498a7c [Doc] importmulti: add missing description of keypool option (David A. Harding) Pull request description: Option was added in #14075 but not documented there. CC: @achow101 Tree-SHA512: dcb6421fa1be3d733d7a00c1b57ffd591fe76c02d1c479e729089c118bec52f53bd7ebdb5454b3b1c7603ab189e91682a688b673a7f6b04fa8610c4249711217
2019-02-17Merge #15398: msvc: add rapidcheck property testsWladimir J. van der Laan
d067e81dcf574b6504813bbf742cd5af057e8e9b msvc: add rapid check property tests (Chun Kuan Lee) Pull request description: This PR add the property tests into the binaries built by MSVC. And another trivial change is that I reordered the appveyor package list. Tree-SHA512: 25d66db464beb7b512cc1f88d8557d6a047000a97d78f49884bb91a65ec142e0458039c919f51bf73413359fcf3e63e1ea4d76586b862f1c140d2ca05ee8b23d
2019-02-16[Doc] importmulti: add missing description of keypool optionDavid A. Harding
2019-02-16[Doc] add missing newline to witnessScript in listunspent helpDavid A. Harding
2019-02-16Merge #15368: Descriptor checksumsWladimir J. van der Laan
fd637be8d21a606e98c037b40b268c4a1fae2244 Add checksums to descriptors.md (Pieter Wuille) be62903c417293f6217e124669e62fd2172a18f1 Make descriptor checksums mandatory in deriveaddresses and importmulti (Pieter Wuille) b52cb6368869c9f6dd2cd8f309b3000de514d439 Add getdescriptorinfo to compute checksum (Pieter Wuille) 3b40bff9880e9ae2817136b7d14989afccfc1937 Descriptor checksum (Pieter Wuille) Pull request description: This adds support for a descriptor-specific 8-character checksum. Descriptors may optionally be suffixed with a `#` plus these 8 checksum characters. Any descriptor that contains a `#` at the end must be followed by a valid checksum. If the `#` is missing entirely, it is valid without checksum. All RPCs are updated to report descriptors that include the checksum. On input, they are optional except in `deriveaddress` and `importmulti`, which require descriptors which include a checksum. A new RPC is also added to analyse descriptors (`getdescriptorinfo`), which can be used to compute the checksum for a descriptor without. Tree-SHA512: a8294b09155eb6c67fbc178b5e2d3fbc0e9bec8b6de57a13f8835550d51c2cb32a428b3c9a188ded42b454d594e9305edbd4797906b755de77a8f33c79165f6b
2019-02-16Merge #13932: Additional utility RPCs for PSBTWladimir J. van der Laan
540729ef4bf1b6c6da1ec795e441d2ce56a9a58b Implement analyzepsbt RPC and tests (Andrew Chow) 77542cf2a5f8abb97dd46f782c1b0199cc062033 Move PSBT UTXO fetching to a separate method (Andrew Chow) cb40b3abd4514361a024a1e7a1a281da9261261b Figure out what is missing during signing (Andrew Chow) 08f749c9147a5f3fdbbd880e0974b97084429002 Implement joinpsbts RPC and tests (Andrew Chow) 7344a7b9984b99882e136efc8ad48fb31740df93 Implement utxoupdatepsbt RPC and tests (Andrew Chow) Pull request description: This PR adds 3 new utility RPCs for interacting with PSBTs. `utxoupdatepsbt` updates a PSBT with UTXO information from the node. It only works with witness UTXOs because full transactions (as would be needed for non-witness UTXOs) are not available unless txindex is enabled. `joinpsbts` joins the inputs from multiple distinct PSBTs into one PSBT. e.g. if PSBT 1 has inputs 1 and 2, and PSBT 2 has inputs 3 and 4, `joinpsbts` would create a new PSBT with inputs 1, 2, 3, and 4. `analyzepsbt` analyzes a PSBT and determines the current state of it and all of its inputs, and the next step that needs to be done. Tree-SHA512: 3c1fa302201abca76a8901d0c2be7b4ccbce334d989533c215f8b3e50e22f2f018ce6209544b26789f58f5980a253c0655111e1e20d47d5656e0414c64891a5c
2019-02-16Merge #15410: test: txindex: interrupt threadGroup before calling destructorMarcoFalke
fab6b07c16 test: txindex: interrupt threadGroup before calling destructor (MarcoFalke) Pull request description: Fixes the data races with the tread sanitizer such as * https://travis-ci.org/MarcoFalke/bitcoin/jobs/492330554 * https://github.com/bitcoin/bitcoin/pull/15402#discussion_r256676622 * ... Tree-SHA512: 40608c70d92a1dd68efc1d41eecc8e2fb7738508e21f91f0ad353adcceed60fa624f15bf72a5b69a9444157b261183abbe9fc4cc5dd8aebc1c49506b239e8e88
2019-02-16Implement analyzepsbt RPC and testsAndrew Chow
2019-02-15Add checksums to descriptors.mdPieter Wuille
2019-02-15Make descriptor checksums mandatory in deriveaddresses and importmultiPieter Wuille
2019-02-15Add getdescriptorinfo to compute checksumPieter Wuille
2019-02-15Descriptor checksumPieter Wuille
2019-02-16Move PSBT UTXO fetching to a separate methodAndrew Chow
2019-02-16Figure out what is missing during signingAndrew Chow
When signing an input, figure out what was requested for but was unable to be found and store it in a SignatureData. Return this information in SignPSBTInput.
2019-02-16Implement joinpsbts RPC and testsAndrew Chow
Adds a joinpsbts RPC which combines multiple distinct PSBTs into one PSBT.
2019-02-16Implement utxoupdatepsbt RPC and testsAndrew Chow
2019-02-15Merge #15399: fuzz: Script validation flagsMarcoFalke
fab15ff70e fuzz: Script validation flags (MarcoFalke) fabcfa5f0c fuzz: Move deserialize tests to test/fuzz/deserialize.cpp (MarcoFalke) Pull request description: Tree-SHA512: 83c0cfeae0771b7ffe14e6b0eaeda06602b91f5bf4aa2f54fd4f7ef2350299679fd2d9339b02e43309bfddccc01d3aef25ce1a3d2c4f9b54f26e16e1249e05db
2019-02-15Merge #15391: Add compile time verification of assumptions we're currently ↵Wladimir J. van der Laan
making implicitly/tacitly 7cee85807c4db679003c6659d247a2fe74c2464a Add compile time verification of assumptions we're currently making implicitly/tacitly (practicalswift) Pull request description: Add compile time verification of assumptions we're currently making implicitly/tacitly. As suggested by @sipa in https://github.com/bitcoin/bitcoin/pull/14239#issuecomment-462508012 and @MarcoFalke in https://github.com/bitcoin/bitcoin/pull/14479#issuecomment-462534878. Tree-SHA512: e68fe51164dbd3eeb76aa8a7e83dfcd3b4d5a66037c0f1822bbbd189bbe3c280e03b3b10af870880ecc09b612e62fb3d9bcd6cf1e16cb7ba818c257db0712ce4
2019-02-15Merge #15383: [rpc] mining: Omit uninitialized currentblockweight, ↵MarcoFalke
currentblocktx fa178a6385 [rpc] mining: Omit uninitialized currentblockweight, currentblocktx (MarcoFalke) Pull request description: Previously we'd report "0", which could be mistaken for a valid number. E.g. the number of transactions is 0 or the block weight is 0, whatever that means. Tree-SHA512: ee94ab203a329e272211b726f4c23edec4b09c650ec363b77fd59ad9264165d73064f78ebb9e11b5c2c543b73c157752410a307655560531c7d5444d203aa0ea
2019-02-15Merge #15405: [build] AppVeyor: clean cache when build configuration changesMarcoFalke
88a91e2c9d [build] AppVeyor: clean cache when build configuration changes (Sjors Provoost) Pull request description: AppVeyor builds started starting failing on master after I cleaned the cache in #15382. In addition, it appeared that a new dependency (boost-process) wasn't getting added in that PR without at least cleaning the vcpkg cache. Tree-SHA512: 1ad87bf6ca866cc20db04682cdf7572b59d22a7eaf346f390fc476c5e28bc5422733277fd765e5c9fd2ea88107b52fccd13f1f7e55493f567c4c4a1c16d7cb3a
2019-02-15Merge #15413: tests: Add missing cs_main locks required when accessing ↵MarcoFalke
pcoinsdbview, pcoinsTip or pblocktree 543ef7d626 tests: Add missing cs_main locks required when accessing pcoinsdbview, pcoinsTip or pblocktree (practicalswift) Pull request description: Add missing `cs_main` locks required when accessing `pcoinsdbview`, `pcoinsTip` or `pblocktree`. This is a subset of #15192: split up requested by MarcoFalke in https://github.com/bitcoin/bitcoin/pull/15192#issuecomment-462827372. The end goal is to get the corresponding `GUARDED_BY(...)`:s in (see #15192). Tree-SHA512: 0eb1987dba1a2f1faf0910c421f6d90a20b8a253486eb3301d5bca66d128b19120664e3a8580bdce7b428df817284faf94243250bf561f91d2d31a52d134aa67
2019-02-15tests: Add missing cs_main locks required when accessing pcoinsdbview, ↵practicalswift
pcoinsTip or pblocktree
2019-02-15Merge #14075: Import watch only pubkeys to the keypool if private keys are ↵MeshCollider
disabled f4b00b70e Import public keys in order (Andrew Chow) 9e1551b9c Test pubkey import to keypool (Andrew Chow) 513719c5f Add option to importmulti add an imported pubkey to the keypool (Andrew Chow) 9b81fd19a Fetch keys from keypool when private keys are disabled (Andrew Chow) 99cccb900 Add a method to add a pubkey to the keypool (Andrew Chow) Pull request description: If the wallet has private keys disabled, allow importing public keys into the keypool. A `keypool` option has been added to `importmulti` in order to signal that the keys should be added to the keypool. Tree-SHA512: e88ea7bf726c13031aa739389a0c2662e6b22a4f9a4dc45b042418c692a950d98f170e0db80eb59e9c9063cda8765eaa85b2927d1790b9625744f7a87bad5fc8
2019-02-14Import public keys in orderAndrew Chow
Do public key imports in the order that they are specified in the import or in the descriptor range.
2019-02-14Test pubkey import to keypoolAndrew Chow
2019-02-14Add option to importmulti add an imported pubkey to the keypoolAndrew Chow
Adds a new option to importmulti where the pubkeys specified in the import object can be added to the keypool. This only works if the wallet has private keys disabled.
2019-02-14Fetch keys from keypool when private keys are disabledAndrew Chow
When private keys are disabled, still fetch keys from the keypool if the keypool has keys. Those keys come from importing them and adding them to the keypool.
2019-02-14Add a method to add a pubkey to the keypoolAndrew Chow
Introduces AddKeypoolPubkey in order to add a pubkey to the keypool
2019-02-15Merge #14021: Import key origin data through descriptors in importmultiMeshCollider
cb3511b9d Add release notes for importing key origin info change (Andrew Chow) 4c75a69f3 Test importing descriptors with key origin information (Andrew Chow) 02d6586d7 Import KeyOriginData when importing descriptors (Andrew Chow) 3d235dff5 Implement a function to add KeyOriginInfo to a wallet (Andrew Chow) eab63bc26 Store key origin info in key metadata (Andrew Chow) 345bff601 Remove hdmasterkeyid (Andrew Chow) bac8c676a Add a method to CWallet to write just CKeyMetadata (Andrew Chow) e7652d3f6 Add WriteHDKeypath function and move *HDKeypath to util/bip32.{h,cpp} (Andrew Chow) c45415f73 Refactor keymetadata writing to a separate method (Andrew Chow) Pull request description: This PR allows for key origin data as defined by the descriptors document to be imported to the wallet when importing a descriptor using `importmulti`. This allows the `walletprocesspsbt` to include the BIP 32 derivation paths for keys that it is watching that are from a different HD wallet. In order to make this easier to use, a new field `hdmasterkeyfingerprint` has been added to `getaddressinfo`. Additionally I have removed `hdmasterkeyid` as was planned. I think that this API change is fine since it was going to be removed in 0.18 anyways. `CKeyMetadata` has also been extended to store key origin info to facilitate this. Tree-SHA512: 9c7794f3c793da57e23c5abbdc3d58779ee9dea3d53168bb86c0643a4ad5a11a446264961e2f772f35eea645048cb60954ed58050002caee4e43cd9f51215097
2019-02-14Add release notes for importing key origin info changeAndrew Chow
2019-02-14Test importing descriptors with key origin informationAndrew Chow
2019-02-14Import KeyOriginData when importing descriptorsAndrew Chow
2019-02-14Implement a function to add KeyOriginInfo to a walletAndrew Chow
2019-02-14Store key origin info in key metadataAndrew Chow
Store the master key fingerprint and derivation path in the key metadata. hdKeypath is kept to indicate the seed and for backwards compatibility, but all key derivation path output uses the key origin info instead of hdKeypath.
2019-02-14Merge #15285: build: Prefer Python 3.4 even if newer versions are present on ↵MarcoFalke
the system 0890339fb3 build: prefer python3.4 even if newer versions are present on the system (Sjors Provoost) Pull request description: Python 3.4 is this mimimum supported version according to [doc/dependencies.md](https://github.com/bitcoin/bitcoin/blob/master/doc/dependencies.md) Systems with [PyEnv](https://github.com/pyenv/pyenv) ensure (via [.python-version](https://github.com/bitcoin/bitcoin/blob/master/.python-version)) that Python 3.4 is used for the functional tests. However `make check` calls `bitcoin-util-test.py` using the Python command found by `configure.ac`, which looks system wide. On systems with multiple versions of Python this would cause `make check` to fail, as it tries to call a version of Python that PyEnv blocks. This is solved by preferring python3.4 in `configure.ac`. I missed this in #14884, so ideally this should be tagged 0.18 Tree-SHA512: b7487081a1ee7c2cb672a2e4bc1943ec8d23825fb941e567cb00fb123e6d59b1d8b7ddbf97d48aca770b9ddb9eacbfe73d8ac8cb1e1cdc34587ee1cee9929840
2019-02-14Merge #15295: fuzz: Add test/fuzz/test_runner.py and run it in travisMarcoFalke
fa535af92c fuzz: test_runner: Better error message when built with afl (MarcoFalke) fa7ca8ef58 qa: Add test/fuzz/test_runner.py (MarcoFalke) Pull request description: Can be run with `./test/fuzz/test_runner.py` after building as described in `doc/fuzzing.md` Tree-SHA512: f6a3cd8165ec2de4b363be4fd0a936b4a60829cce923f93fe5d6a046b1bbd64c959cdf790440bf70c0e13b0bb1b956a746a24c6fd92bddeab15b837ed50ffad2
2019-02-14Merge #15411: travis: Combine --disable-bip70 into existing jobMarcoFalke
eeeee58bc9 travis: Combine --disable-bip70 into existing job (MarcoFalke) Pull request description: We already have too many jobs, so instead of creating a separate job for the `--disable-bip70` configue option, combine it into an existing job Tree-SHA512: 9e2fae73d90cb55b588c545bc118a14eba064f17fffd9b302c3fdbb8715e2319db03eac92ae51b3c16481f28a004a1c964dab75ca80a213e87574da8f73e3207
2019-02-14Merge #14481: Add P2SH-P2WSH support to listunspent RPCWladimir J. van der Laan
6ca836ab3abef5a90df0c3c4e4983f328b1afe00 Add release note for listunspent P2WSH change (MeshCollider) 928beae007fc2f951e79ea307a5e983af4cb3acf Add test for P2SH-P2WSH in signrawtransactionwithkey and listunspent (MeshCollider) 314784a60f18424b004e935aa6e41b824e9645b3 Make listunspent and signrawtransaction RPCs support witnessScript (MeshCollider) Pull request description: This is a reworked version of #11708 after #12427 and the `signrawtransaction` split. For a P2WSH address, listunspent should return the witness script, and for a P2SH-P2WSH address, it should also return the inner witness script (because SignTransaction will automatically wrap it in P2SH if required). Includes a test which also tests the behaviour of #12427, and release note. Tree-SHA512: a8e72cf16930312bf48ec47e44a68f8d7e26664043c1b4cc0983eb25aec4087e511188ff9a0f181cd7b8a0c068c60d7f1e7e3f226b79e8c48890039dcf57f7b7
2019-02-14Merge #14626: Select orphan transaction uniformly for evictionMarcoFalke
7257353b93 Select orphan transaction uniformly for eviction (Pieter Wuille) Pull request description: The previous code was biased towards evicting transactions whose txid has a larger gap (lexicographically) with the previous txid in the orphan pool. Tree-SHA512: e35f700aea5ed79d1bc57f64bffcb623424b40156fd0a12f05f74f981a8aa4175d5c18d042989243f7559242bdf1d6d720bcf588d28f43d74a798a4843f09c70
2019-02-14fuzz: test_runner: Better error message when built with aflMarcoFalke
2019-02-14Merge #15195: gui: Add Close Wallet actionJonas Schnelli
94086fb59 gui: Add close wallet action (João Barbosa) f77ba3431 gui: Add closeWallet to WalletController (João Barbosa) f6122abe0 interfaces: Add remove to Wallet (João Barbosa) Pull request description: This PR adds support to close the current wallet in the GUI. <img width="543" alt="screenshot 2019-01-18 at 00 44 26" src="https://user-images.githubusercontent.com/3534524/51358241-424b9680-1aba-11e9-88f2-b85869507737.png"> <img width="532" alt="screenshot 2019-01-18 at 00 44 38" src="https://user-images.githubusercontent.com/3534524/51358242-424b9680-1aba-11e9-83e2-fa275a9017b3.png"> Tree-SHA512: fd7da4d0f73dc240864cc57a1ff1526daf2376904ce3872e52eeca5d40cc21c6dd29eb2ef25f85ffa63697362c150221a2369d80ad36ae445cc99989d337b688
2019-02-14Merge #15393: build: Bump minimum Qt version to 5.5.1Jonas Schnelli
fd46c4c00 Bump minimum Qt version to 5.5.1 (Sjors Provoost) Pull request description: Fixes #13478 Compiled and lightly tested on 10.14.3 against QT 5.12.0. Tree-SHA512: 6890331969bbf4c66dc0993b8817b1f0831d008f5863554e9c09a38f4700260b84044ff961664c377decc9fb8300e3543c267f935ec64fbc97b20f8fb396247a
2019-02-14travis: Combine --disable-bip70 into existing jobMarcoFalke
2019-02-14test: txindex: interrupt threadGroup before calling destructorMarcoFalke
2019-02-14Merge #15063: GUI: If BIP70 is disabled, attempt to fall back to BIP21 parsingJonas Schnelli
84f53154e Travis: Add test without BIP70 (but still full wallet + tests) (Luke Dashjr) 113f0004b GUI: If BIP70 is disabled, give a proper error when trying to open a payment request file (Luke Dashjr) 9975282fa GUI: If BIP70 is disabled, attempt to fall back to BIP21 parsing (Luke Dashjr) Pull request description: Tree-SHA512: 66a684ce4336d0eac8b0107b405ff3a2cf312258a967f3e1b14734cd39db11e2db3e9b03492755583170d94d54754ef536b0776e5f19a0cc2caca8379eeb4495
2019-02-14Remove hdmasterkeyidAndrew Chow
2019-02-14Add a method to CWallet to write just CKeyMetadataAndrew Chow
2019-02-14Add WriteHDKeypath function and move *HDKeypath to util/bip32.{h,cpp}Andrew Chow
Creates new files util/bip32.h and util/bip32.cpp for containing BIP 32 stuff. Moves FormatKeyPath from descriptor.cpp to util/bip32. Adds a wrapper around it to prepent the 'm' for when just the BIP 32 style keypath is needed.
2019-02-14Refactor keymetadata writing to a separate methodAndrew Chow