aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-12-25Integrate ASN bucketing in Addrman and add testsGleb Naumenko
Instead of using /16 netgroups to bucket nodes in Addrman for connection diversification, ASN, which better represents an actor in terms of network-layer infrastructure, is used. For testing, asmap.raw is used. It represents a minimal asmap needed for testing purposes.
2019-12-18 Add asmap utility which queries a mappingGleb Naumenko
The scripts for creating a compact IP->ASN mapping are here: https://github.com/sipa/asmap Co-authored-by: Pieter Wuille <pieter.wuille@gmail.com>
2019-11-25Merge #17592: Appveyor install libevent[thread] vcpkgMarcoFalke
f13e274b6f8ada41ebcd3e746b38c7577074f6f9 Appveyor install libevent[thread] vcpkg (Aaron Clauson) Pull request description: As per #17586 the default libevent vcpkg install now has thread disabled. This PR installs libevent with the thread feature enabled. Top commit has no ACKs. Tree-SHA512: 5448113f0444170777400fef3582719845ca50d61d9382dfaacc55c43d477dd714456e38a3094e9b6858d93e84def11c2efa46902b52648c9f0c9362cc909147
2019-11-25Appveyor install libevent[thread] vcpkgAaron Clauson
As per #17586 the default libevent vcpkg install now has thread disabled. This PR installs libevent with the thread feature enabled.
2019-11-24Merge #17569: build: Allow export of environ symbols and work around rv64 ↵MarcoFalke
toolchain issue eafd2593674b6890418a50eadf69425071b824e4 build: Add NX workaround for RV64 (Wladimir J. van der Laan) f6e42256fe8900ed90f9644906b77f97e1600952 build: Allow export of environ symbols (Wladimir J. van der Laan) Pull request description: This export was introduced in #17270 which added ``` //! Necessary on some platforms extern char** environ; ``` This should (finally) make the gitian build pass again (fix issue #17525.). Built on top of #17538 which should be merged first. Top commit has no ACKs. Tree-SHA512: 5c2054d52d0957aec3dc945b76d8e219187d22dc03889e7a88fb76049bf8e4a3e9f4da00dd1e9dd0351211f8e70d1a1b8ad7244f0348dab698e9d14b9d0c0bd4
2019-11-24Merge #17538: build: Bump minimum libc to 2.17 for release binariesMarcoFalke
8f15a317602727d24f60d0bbf43f851b33df3228 doc: add glibc 2.17 requirement to release-notes (fanquake) 16a7be1663b02ddefa1e4f0309be49b725ffb388 build: Bump minimum versions in symbol checker (Wladimir J. van der Laan) b77d5ad59fb9f3f26d919ee6c33ae732382de504 build: Disallow dynamic linking against c++ library (Wladimir J. van der Laan) Pull request description: Closes: #17525. Taken over from #17531. Debian 8 (Jessie) has: - g++ version 4.9.2 - libc version 2.19 CentOS 7 has: - g++ version 4.8.5 - libc version 2.17 Ubuntu 16.04.4 (Xenial, oldest supported Ubuntu) has: - g++ version 5.3.1 - libc version 2.23.0 Taking the minimum of these as our target. According to [GNU ABI document](https://gcc.gnu.org/onlinedocs/libstdc++/manual/abi.html) this corresponds to: - GCC 4.8.5: GCC_4.8.0 - (glibc) GLIBC_2_17 This also contains a (long needed) commit to disallow dynamic linking to stdc++, as our releases statically link against that. ACKs for top commit: laanwj: re-ACK 8f15a317602727d24f60d0bbf43f851b33df3228 Tree-SHA512: a3cc92aa1c5de253b1531f4b854d6f5f4a15d614ba6290d9db293542a96994b55c4a8e33e03b601bae16eb65529630b4f94b48b010e0b66b7dc9ff0acf945107
2019-11-24Merge #17574: doc: Add historical release notes for 0.19.0.1Wladimir J. van der Laan
14feda0814a9fecf2138041f7d36fe1ab338797f doc: Add historical release notes for 0.19.0.1 (Wladimir J. van der Laan) Pull request description: Add historical release notes for 0.19.0.1. And replace 0.19.0's release notes with a short explanation. Top commit has no ACKs. Tree-SHA512: 3551250c8b0643a96b645af9088ef07a079452bad3abf2b5653563f5ecbc07fc1e1c6adcd56eb9fa6e3e7637719b3b99253b95bce409a9267a428323b559bfa3
2019-11-24build: Add NX workaround for RV64Wladimir J. van der Laan
Work around https://bugs.launchpad.net/ubuntu/+source/gcc-8-cross-ports/+bug/1853740.
2019-11-24Merge #17527: Fix CPUID subleaf iterationWladimir J. van der Laan
f93fc61c65d605eae2d3e2c98bdd30ae587fcdab Put bounds on the number of CPUID leaves explored (Pieter Wuille) ba2c5fe1477cec80d7e02f824daba21a1021758e Fix CPUID subleaf iteration (Pieter Wuille) Pull request description: This fixes #17523. The code to determine which CPUID subleaves to explore was incorrect in #17270. The new code here is based on Intel's reference documentation for CPUID (a document called "Intel® Processor Identification and the CPUID Instruction - Application Note 485", which I cannot actually find on their own website). ACKs for top commit: laanwj: ACK f93fc61c65d605eae2d3e2c98bdd30ae587fcdab jonatack: ACK f93fc61c65d605eae2d3e2c98bdd30ae587fcdab code review, tested rebased on current master bb862d7 with Debian 4.19 x86_64 mzumsande: ACK f93fc61, reviewed code and compared with the intel doc, tested on an AMD and an Intel processor. Tree-SHA512: 2790b326fa397b736c0f39f25807bea57de2752fdd58bf6693d044b8cb26df36c11cce165a334b471f8e33724f10e3b76edab5cc4e0e7776601aabda13277245
2019-11-24doc: Add historical release notes for 0.19.0.1Wladimir J. van der Laan
Add historical release notes for 0.19.0.1. And replace 0.19.0's release notes with a short explanation.
2019-11-24Merge #17518: refactor, wallet: Nuke coincontrol circular dependencySamuel Dobson
3ed5e6819a50434449d92cb96b9d8d141e8c7d2b refactor: Nuke coincontrol circular dependency (Hennadii Stepanov) Pull request description: This PR gets rid of `wallet/coincontrol` -> `wallet/wallet` -> `wallet/coincontrol` circular dependency. ACKs for top commit: Sjors: re-ACK 3ed5e6819a50434449d92cb96b9d8d141e8c7d2b meshcollider: utACK 3ed5e6819a50434449d92cb96b9d8d141e8c7d2b Tree-SHA512: 7fbceb74a9cd04157170df158d2deb979cf397df818376b478224d2423f1d8504a8688e3a9b8fc527da73e4a34ab6bc4a98be0cc2937e102a063ab2ac553e86d
2019-11-23Merge #17571: Add libtest_util library to msvc build configurationfanquake
b509554433cb4bd32852239d0dd195ec059657f6 Added libtest_util library to msvc build configuration. (Aaron Clauson) Pull request description: libtest_util was introduced in #17542. This PR adds the msvc build configuration. ACKs for top commit: fanquake: ACK b509554433cb4bd32852239d0dd195ec059657f6 - Appveyor looks good. Tree-SHA512: abd9f8427375ae0e75e8227d853cccc666fd9e906038d97b787d9185dec1024232a6c64301e26e66fcaf86492183328abe4a7abd7af3321f062cd8722eb83b4c
2019-11-23Merge #17539: doc: Update and improve Developer Notesfanquake
794fe91395c79f46a6d920bc08de5a0551b359a3 doc: Update and improve Developer Notes (Hennadii Stepanov) Pull request description: This PR: - removes outdated things, e.g., global pointer `pwalletMain` etc - adds "Sanitizers" to the TOC - makes filenames, `peer.dat` and `debug.log`, monospaced - specifies that _compile-time_ constant names are all uppercase - rewords using `explicit` with constructors ACKs for top commit: jamesob: lazy ACK https://github.com/bitcoin/bitcoin/pull/17539/commits/794fe91395c79f46a6d920bc08de5a0551b359a3 practicalswift: ACK 794fe91395c79f46a6d920bc08de5a0551b359a3 -- nice improvements! Tree-SHA512: 2c5f035b1627f5fac8dc2453199d9e46bd101f86771de567cd95698de3c61cc459444ec1a68710e1d280195e1e40b42d9f40906297d12f12bf37749eca58297d
2019-11-23Added libtest_util library to msvc build configuration.Aaron Clauson
2019-11-23build: Allow export of environ symbolsWladimir J. van der Laan
This export was introduced in #17270 which added ``` //! Necessary on some platforms extern char** environ; ```
2019-11-23refactor: Nuke coincontrol circular dependencyHennadii Stepanov
2019-11-23Merge #17447: wallet: Make -walletdir network onlySamuel Dobson
3c2c439dcd8797019ac6d6614775d5c20ee41c36 wallet: Make -walletdir network only (João Barbosa) Pull request description: With this PR `bitcoind -regtest` doesn't run if bitcoin.conf has ``` walletdir=/mnt/mydisk/wallets ``` But works with ``` [regtest] walletdir=/mnt/mydisk/wallets ``` Doesn't change mainnet behavior. Closes #15630. ACKs for top commit: ryanofsky: ACK 3c2c439dcd8797019ac6d6614775d5c20ee41c36 MarcoFalke: ACK 3c2c439dcd8797019ac6d6614775d5c20ee41c36 🍈 meshcollider: Tested ACK 3c2c439dcd8797019ac6d6614775d5c20ee41c36 Tree-SHA512: 8ab3b2db5f3f9cab78b36baaf490c80f7330372cfd8f73fe6536c8fb4c6e55e09f62296feb70617075838b3bcd7101abebbef3b228b6c3dbd42ce8c7a5c372d9
2019-11-23Merge #17387: wallet_importmulti: use addresses of the same type as being ↵Samuel Dobson
imported b84e776fd166ac422ac4a0dcdc1c6f7fd921bf70 wallet_importmulti: use addresses of the same type as being imported (Andrew Chow) Pull request description: When constructing an import from the solving data of an address, make sure that the original address is the same type as the one that will be imported. See also: https://github.com/bitcoin/bitcoin/pull/17374#issuecomment-550036931 Part of #17261 ACKs for top commit: Sjors: Code review ACK b84e776 meshcollider: Tested re-ACK b84e776fd166ac422ac4a0dcdc1c6f7fd921bf70 Tree-SHA512: 53c49c63af8cbade0116a62beddc77df1a411d8ed76571c3053f6aff096f41a5325421a188bab3dcacfda69bb28fdff6ba921ddd80f29c4abbadb3b58fda884c
2019-11-22doc: add glibc 2.17 requirement to release-notesfanquake
2019-11-22build: Bump minimum versions in symbol checkerWladimir J. van der Laan
Debian 8 (Jessie) has: - g++ version 4.9.2 - libc version 2.19 Ubuntu 16.04.4 (Xenial) has: - g++ version 5.3.1 - libc version 2.23.0 CentOS 7 has: - g++ version 4.8.5 - libc version 2.17 Taking the minimum of these as our target. According to the GNU ABI document this corresponds to: - GCC 4.8.5: GCC_4.8.0 - (glibc) GLIBC_2_17 Co-Authored-By: fanquake <fanquake@gmail.com>
2019-11-22build: Disallow dynamic linking against c++ libraryWladimir J. van der Laan
Ever since statically linking Qt, we've been linking the C++ library statically too (-static-libstdc++). Take this into account in the symbol checker.
2019-11-22Merge #17550: build: set minimum supported macOS to 10.12fanquake
7d7bf2ff4a67c3953b0d660ca88d11313cb4d71d build: set minimum supported macOS to 10.12 (fanquake) Pull request description: Extracted from #16392 as this doesn't need to wait for the other build changes. Reasoning: * `10.10` has been unsupported since July 2017 (~3 years at `v0.20.0` release) * `10.11` has been unsupported since July 2018 (~2 years at `v0.20.0` release) * macOS users are consistent at upgrading to new releases. * Qt 5.12 LTS only supports [macOS > 10.12](https://doc-snapshots.qt.io/qt5-5.12/supported-platforms.html). As long as we're supporting macOS < 10.12 we would not be able to bump Qt in depends to 5.12 for the `v0.20.0` release. Once we drop support for 10.12 and start using the 10.15 SDK there are some other follow ups: * Enabling support for [`thread_local`](https://github.com/bitcoin/bitcoin/blob/master/configure.ac#L901). * Removing some of the macOS notification code * Removing macOS [startup item code](https://github.com/bitcoin/bitcoin/blob/master/src/qt/guiutil.cpp#L695). There was also some related discussion in the `#bitcoin-builds` channel yesterday arvo. ACKs for top commit: laanwj: ACK 7d7bf2ff4a67c3953b0d660ca88d11313cb4d71d dongcarl: post-IRC-grilling-ACK 7d7bf2ff4a67c3953b0d660ca88d11313cb4d71d Tree-SHA512: 30b0ed75e3b4df2d3f94db2091b7982c1ea7be8fb3a2732d8efd1a53ef1e492d7265a47e90c38e92f66e638d10e9400a6ecb56e5093688bb26d1621645b453e8
2019-11-23Merge #17553: wallet: Remove out of date comments for ↵Samuel Dobson
CalculateMaximumSignedTxSize 6a2e6b0600077e5903400dc74bc8b0c26592fde6 Remove out of date comments for CalculateMaximumSignedTxSize (Gregory Sanders) Pull request description: These paths can be hit for probably a number of reasons, and ISMINE spendability is not a requirement to call it. For example: During watch-only transaction creation, previous transaction in wallet, pubkey imported, but not the witnessscript associated with the prevout. In this case I think no/minimal comment is better than specific and soon to be out of date. ACKs for top commit: achow101: ACK 6a2e6b0600077e5903400dc74bc8b0c26592fde6 darosior: ACK 6a2e6b0600077e5903400dc74bc8b0c26592fde6 Tree-SHA512: ad4c26fd2409eb5aed19d67c19cb5479d226bd11e9298630309c4344f6562ace2e10c2850ebe22770331d71e91320a606e79619b9fe52dd478ce1f589a740122
2019-11-23Merge #17237: wallet: LearnRelatedScripts only if KeepDestinationSamuel Dobson
3958295bc8a3787b66b0269190218a3764088f79 wallet: LearnRelatedScripts only if KeepDestination (João Barbosa) 55295fba4cbff36e9a8c3fed9c38e82ebe3c48b7 wallet: Lock address type in ReserveDestination (João Barbosa) Pull request description: Only mutates the wallet if the reserved key is kept. First commit is a refactor that makes the address type a class member. The second commit moves `LearnRelatedScripts` from `GetReservedDestination` to `KeepDestination` to avoid an unnecessary call to `AddCScript` - which in turn prevents multiple entries of the same script in the wallet DB. ACKs for top commit: achow101: Re-ACK 3958295bc8a3787b66b0269190218a3764088f79 Sjors: ACK 3958295bc8a3787b66b0269190218a3764088f79 ryanofsky: Code review ACK 3958295bc8a3787b66b0269190218a3764088f79. I like this change. The new behavior makes more sense, and the change makes the code clearer, since the current LearnRelatedScripts call is hard to understand and explain. (Personally, I'd like it if this PR were merged before #17373 or that PR was rebased on top of this one so it would be less confusing.) meshcollider: utACK 3958295bc8a3787b66b0269190218a3764088f79 Tree-SHA512: 49a5f4b022b28042ad37ea309b28378a3983cb904e234a25795b5a360356652e0f8e60f15e3e64d85094ea63af9be01812d90ccfc08ca4f1dd927fdd8566e33f
2019-11-23Merge #16944: gui: create PSBT with watch-only walletSamuel Dobson
c6dd565c8820aa8a98b190621e10c6e2821a9ecc [gui] watch-only wallet: copy PSBT to clipboard (Sjors Provoost) 39465d545d521e66bb3accfa788aa94bffaf47eb [wallet] add fillPSBT to interface (Sjors Provoost) 848f88920853724511387ca0b7ef652fa14ced71 [gui] send: include watch-only (Sjors Provoost) 40537f090907f81ba885edb7dff1558382976912 [wallet] ListCoins: include watch-only for wallets without private keys (Sjors Provoost) Pull request description: For wallets with `WALLET_FLAG_DISABLE_PRIVATE_KEYS` this makes the watch-only balance available on the send screen (including coin selection). Instead of sending a transaction it generates a PSBT. The user can take this PSBT and process it with [HWI](https://github.com/bitcoin-core/HWI) or put it an SD card for hardware wallets that support that. The PSBT is copied to the clipboard. This was the easiest approach; we can add a dialog later to display it, as well as an option to save to disk. ACKs for top commit: instagibbs: test and code review ACK https://github.com/bitcoin/bitcoin/pull/16944/commits/c6dd565c8820aa8a98b190621e10c6e2821a9ecc meshcollider: re-ACK c6dd565c8820aa8a98b190621e10c6e2821a9ecc Tree-SHA512: ebc3da0737e33b255ed926191b84569aedb6097d14868662bd5dce726ce3048e86e9a31eba987b10dffe1482b35c21ae1cd595c2caa4634bc4cf78a826a83852
2019-11-23Merge #17371: Refactor: Require scriptPubKey to get wallet SigningProviderSamuel Dobson
d0dab897afaac0a18aa47d3ce673a4a43a69178a Refactor: Require scriptPubKey to get wallet SigningProvider (Andrew Chow) 4b0c718f8f48c678cbe4575e9a9cf9e62a30f0da Accumulate result UniValue in SignTransaction (Andrew Chow) Pull request description: Easier to review ignoring whitespace: git log -p -n1 -w This commit does not change behavior. It passes new CScript arguments to signing functions, but the arguments aren't currently used. Split from #17261 ACKs for top commit: instagibbs: utACK https://github.com/bitcoin/bitcoin/pull/17371/commits/d0dab897afaac0a18aa47d3ce673a4a43a69178a ryanofsky: Code review ACK d0dab897afaac0a18aa47d3ce673a4a43a69178a. Thanks for the SignTransaction update. No other changes since last review Sjors: Code review ACK d0dab897afaac0a18aa47d3ce673a4a43a69178a promag: Code review ACK d0dab897afaac0a18aa47d3ce673a4a43a69178a. meshcollider: Code review ACK d0dab897afaac0a18aa47d3ce673a4a43a69178a Tree-SHA512: c3f52df20fd9d6b3b5aa65562cf5f7dce7b7f44c148b0f988f8b578fce2a28e9b7bf010f5f04bb5bf60f5272b2899f1dbbfb8aee81579c21c9cba559d1d2bb70
2019-11-23Merge #17290: Enable BnB coin selection for preset inputs and subtract fee ↵Samuel Dobson
from outputs b007efdf1910db1d38671d6435d2f379bbf847d2 Allow BnB when subtract fee from outputs (Andrew Chow) db15e71e79b24601853703bebd1c92f4b523fd5f Use BnB when preset inputs are selected (Andrew Chow) Pull request description: Currently we explicitly disable BnB when there are preset inputs selected or when the subtract fee from outputs option is enabled. This PR enables BnB for both cases. Kind of an alternative to #17246 (implements the subtract fee from outputs part of it) and borrows a test from there too. ACKs for top commit: instagibbs: reACK https://github.com/bitcoin/bitcoin/pull/17290/commits/b007efdf1910db1d38671d6435d2f379bbf847d2 Sjors: re-ACK b007efdf1910db1d38671d6435d2f379bbf847d2 Tree-SHA512: 933276b09b2fa2ab43db7f0b98762f06f6f5fa8606195f96aca9fa1cb71ae4ee7156028dd482b1cada82ddd0996a9daf12ea5c152589fdf192cd96cbc51e99df
2019-11-22Merge #14384: Fire TransactionRemovedFromMempool callbacks from mempoolWladimir J. van der Laan
e20c72f9f076681def325b5b5fa53bccda2b0eab Fire TransactionRemovedFromMempool from mempool (251) Pull request description: This pull request fires TransactionRemovedFromMempool callbacks from the mempool and cleans up a bunch of code. It also resolves the `txmempool -> validation -> validationinterface -> txmempool` circular dependency. Ideally, `validationinterface` is a dumb component that doesn't have any knowledge of the sub-systems it sends its notifications to. The commit that aims to resolve this circular dependency by moving `txmempool` specific code out of `validationinterface` to `txmempool` where it belongs. ACKs for top commit: jnewbery: ACK e20c72f9f076681def325b5b5fa53bccda2b0eab Tree-SHA512: 354c3ff1113b21a0b511d80d604edfe3846dddae3355e43d1387f68906e54bf5dc01e7c029edc0b8e635b500b2ab97ee50362e2486eb4319f7347ee9a9e6cef3
2019-11-22Merge #17545: build: remove libanl.so.1 from ALLOWED_LIBRARIESfanquake
ec89d2882a591f6af5aad57ab8638250d9dc1add build: remove libanl.so.1 from ALLOWED_LIBRARIES (fanquake) Pull request description: It should no longer be needed after: https://github.com/bitcoin/bitcoin/commit/10ae7a7b2316f8052ec58ef237ce6dd987300900. Symbol checker output for the `0.19.0.1` gitian built Linux binaries: ```bash aarch64 arm i686-pc risvc symbol-check.py x86_64 root@557096f567b5:/test# find aarch64/ -type f -executable | xargs python3 symbol-check.py ['libpthread.so.0', 'libm.so.6', 'libgcc_s.so.1', 'libc.so.6', 'ld-linux-aarch64.so.1'] ['libpthread.so.0', 'libfontconfig.so.1', 'libfreetype.so.6', 'libxcb.so.1', 'libdl.so.2', 'libm.so.6', 'libgcc_s.so.1', 'libc.so.6', 'ld-linux-aarch64.so.1'] root@557096f567b5:/test# find arm -type f -executable | xargs python3 symbol-check.py ['libpthread.so.0', 'librt.so.1', 'libm.so.6', 'libgcc_s.so.1', 'libc.so.6', 'ld-linux-armhf.so.3'] ['libpthread.so.0', 'librt.so.1', 'libfontconfig.so.1', 'libfreetype.so.6', 'libxcb.so.1', 'libdl.so.2', 'libm.so.6', 'libgcc_s.so.1', 'libc.so.6', 'ld-linux-armhf.so.3'] root@557096f567b5:/test# find i686-pc -type f -executable | xargs python3 symbol-check.py ['libpthread.so.0', 'librt.so.1', 'libm.so.6', 'libgcc_s.so.1', 'libc.so.6', 'ld-linux.so.2'] ['libpthread.so.0', 'librt.so.1', 'libfontconfig.so.1', 'libfreetype.so.6', 'libxcb.so.1', 'libdl.so.2', 'libm.so.6', 'libgcc_s.so.1', 'libc.so.6', 'ld-linux.so.2'] root@557096f567b5:/test# find risvc/ -type f -executable | xargs python3 symbol-check.py ['libpthread.so.0', 'libm.so.6', 'libgcc_s.so.1', 'libc.so.6', 'ld-linux-riscv64-lp64d.so.1'] ['libpthread.so.0', 'libfontconfig.so.1', 'libfreetype.so.6', 'libxcb.so.1', 'libdl.so.2', 'libm.so.6', 'libgcc_s.so.1', 'libc.so.6', 'ld-linux-riscv64-lp64d.so.1', 'libatomic.so.1'] root@557096f567b5:/test# find x86_64/ -type f -executable | xargs python3 symbol-check.py ['libpthread.so.0', 'librt.so.1', 'libm.so.6', 'libgcc_s.so.1', 'libc.so.6', 'ld-linux-x86-64.so.2'] ['libpthread.so.0', 'librt.so.1', 'libfontconfig.so.1', 'libfreetype.so.6', 'libxcb.so.1', 'libdl.so.2', 'libm.so.6', 'libgcc_s.so.1', 'libc.so.6', 'ld-linux-x86-64.so.2'] ``` ACKs for top commit: laanwj: ACK, good catch ec89d2882a591f6af5aad57ab8638250d9dc1add Tree-SHA512: 6bc118da190a5c37d26f0dfad5d4661add2ef15525668efb93425423bddbddabf3d7d8809464e79691f517fbe2aab241678652b3dc55ec3f452cf0dcbc26057c
2019-11-22Merge #17542: build: Create test utility library from src/test/util/MarcoFalke
a2e581de942ece85b84c4f5a15287654b02867cb build: Create test utility library from src/test/util/ (Harris) Pull request description: This PR creates a static **test utility library** that replaces repetitive compilations of sources from *src/test/util* in **unit**, **gui** and **bench** **tests**. The original issue is here: https://github.com/bitcoin/bitcoin/issues/17401 The changes are: * a new *Makefile.test_util.include* * a new entry in *Makefile.am* that includes *Makefile.test_util.include* when testing is enabled * removal of all *src/test/util* headers & sources from unit, gui and bench Makefiles * addition of *libtest_util.a* at LDADD's of every test ACKs for top commit: MarcoFalke: ACK a2e581de942ece85b84c4f5a15287654b02867cb 🍞 Tree-SHA512: d172127a26ee70d16625e17d7d94337a65472c57bb97f910c357c52d3dc082ea478ee586ee9074d9ebfeb05b75027e5e15f5bcd2aa35962dadfd9ac6bfd55ab9
2019-11-22Merge #17519: rpc: Remove unused COINBASE_FLAGSWladimir J. van der Laan
e9a27cf338dc618b8ecab8984abc54d588de8a05 refactor: Remove unused COINBASE_FLAGS (Neha Narula) Pull request description: Commit d449772cf69c01932fc5d72c46054815d6300b3c stopped setting COINBASE_FLAGS, and it looks like it hasn't been used since P2SH. Following up on #17489, remove COINBASE_FLAGS which is unused. I verified that removing this did not change the contents of the coinbase's scriptSig. ACKs for top commit: laanwj: ACK e9a27cf338dc618b8ecab8984abc54d588de8a05 MarcoFalke: ACK e9a27cf338dc618b8ecab8984abc54d588de8a05 💻 Tree-SHA512: f9dac124ce7e3edcae974137764bb5039387b1b123b86af44486e398aa4a8d91a9ecf640e207b364ae303acbbaee7cca300d303ea3d6869ba9cae2bf555a6334
2019-11-21build: Create test utility library from src/test/util/Harris
2019-11-21Fire TransactionRemovedFromMempool from mempool251
This commit fires TransactionRemovedFromMempool callbacks from the mempool and cleans up a bunch of code.
2019-11-21Remove out of date comments for CalculateMaximumSignedTxSizeGregory Sanders
2019-11-21Merge #17513: refactor, qt: Nuke some circular dependenciesWladimir J. van der Laan
5f50599ae7077ae9b9b56edb8892387b6ddc460a refactor: Cleanup headers from walletmodel.h (Hennadii Stepanov) a53e9895db7617c879858ca27e38e6aaf35f6075 refactor: Nuke walletmodel circular dependency (Hennadii Stepanov) 49c4211c0435e3b27c8107a332de22e9cad84390 refactor: Nuke walletmodeltransaction circular dep (Hennadii Stepanov) 567cb44eb95785c8df93a3844207d17f4c390372 refactor: Nuke guiutil circular dependency (Hennadii Stepanov) 73b5505cfe0a8583718c708f7a99762c29d81274 refactor: Move SendCoinsRecipient in own header (Hennadii Stepanov) Pull request description: This PR gets rid of the following circular dependencies: - `qt/guiutil` -> `qt/walletmodel` -> `qt/optionsmodel` -> `qt/guiutil` - `qt/walletmodel` -> `qt/walletmodeltransaction` -> `qt/walletmodel` - `qt/paymentserver` -> `qt/walletmodel` -> `qt/paymentserver` ACKs for top commit: Sjors: ACK 5f50599ae7077ae9b9b56edb8892387b6ddc460a instagibbs: code review ACK 5f50599ae7077ae9b9b56edb8892387b6ddc460a practicalswift: ACK 5f50599ae7077ae9b9b56edb8892387b6ddc460a -- diff looks correct promag: ACK 5f50599ae7077ae9b9b56edb8892387b6ddc460a. Tree-SHA512: 070686ac82b5c68c3ef1b8b4c16b4b916b84d80d1e92e42287fdd9454671bea54779c0d2db4db623750aaaf180beaba212137190d6a427113905e2c4be5c60c5
2019-11-21build: set minimum supported macOS to 10.12fanquake
2019-11-21Merge #17407: node: Add reference to mempool in NodeContextMarcoFalke
fa538813b1c382cf135cbf2a0cc3fa01f36964d8 scripted-diff: Replace ::mempool with m_node.mempool in tests (MarcoFalke) 8888ad02e204b0fa7a2ea2cfed2fc3f298cf1623 test: Replace recursive lock with locking annotations (MarcoFalke) fac07f2038a3ccd5edadc6e6122c02fa30e697bd node: Add reference to mempool in NodeContext (MarcoFalke) Pull request description: This is the first step toward making the mempool a global that is not initialized before main. #### Motivation Currently the mempool is a global that is initialized before the `main` function. This is confusing and easy to get wrong. E.g. the mempool constructor queries state that has not been initialized, like randomness (fixed), or command line arguments (not an issue last time I checked). Also without having the chainstate (chain tip) initialized first, it doesn't make conceptually sense to have a mempool, since the mempool builds txs on top of the utxo set (chain tip). Finally, in the future someone might want to run a consensus-only full node (`-nowallet -noblockfilter -no... -nomempool` command line options) that only verifies blocks and updates the utxo set. This is conceptually the same change that has already been done for the connection manager `CConnman`. ACKs for top commit: jnewbery: utACK fa538813b1c382cf135cbf2a0cc3fa01f36964d8 ariard: Tested ACK fa53881. Tree-SHA512: 2c446a8a51476354aad7126c2b833500d36b24490caa94f847b2bdc622054de0dae28980f23e3d91b1b492dc32931656d98dbd019af9e4e58f2f8c5375aac694
2019-11-21Merge #17439: refactor: Use proper MAX_SCRIPT_ELEMENT_SIZE constants ↵MarcoFalke
consistently cb9d830a00995ee60e71780c04f6193efd02c511 test: Use proper MAX_SCRIPT_ELEMENT_SIZE (Hennadii Stepanov) 402ee706d8afab3d8d883cd15a660740fcebeb55 refactor: Use proper MAX_SCRIPT_ELEMENT_SIZE const (Hennadii Stepanov) Pull request description: This PR replaces well-known "magic" numbers with proper `MAX_SCRIPT_ELEMENT_SIZE` constants. ACKs for top commit: practicalswift: ACK cb9d830a00995ee60e71780c04f6193efd02c511 -- diff looks correct and change appears to be complete instagibbs: utACK https://github.com/bitcoin/bitcoin/pull/17439/commits/cb9d830a00995ee60e71780c04f6193efd02c511 Tree-SHA512: 5fa033275d6df7e35962c38bfdf09a7b5cd7ef2ccdd5e30a39ba47d0c21ac779a5559c23f5ef5bfd4293be0fc639e836a308bbedf0e34717e1eead983b389bbd
2019-11-20refactor: Remove unused COINBASE_FLAGSNeha Narula
Commit d449772cf69c01932fc5d72c46054815d6300b3c stopped setting COINBASE_FLAGS, and it looks like it hasn't been used since P2SH. Update the help string to remove "flags", which is not specified in BIP 22.
2019-11-20Merge #17444: wallet: Avoid showing GUI popups on RPC errors (take 2)MarcoFalke
faffa7f0dcc9971cb20534816eccdf75bebc853a wallet: Avoid showing GUI popups on RPC errors (take 2) (MarcoFalke) Pull request description: Commit 8b0d82bb428de9e7f1da7c61574e7a8376a62d43 claims "This commit does not change behavior." However, it re-introduced the bug I tried to fix in #17070 ACKs for top commit: ryanofsky: Code review ACK faffa7f0dcc9971cb20534816eccdf75bebc853a Tree-SHA512: 99987f80c76414dca40c7d76b2fe4ea853debbe3c49e7acdeab2596c726a2935c468f4484d49212e65ecc9c8b0d861c0c2b83c1ddfc07670540699199dbfecb0
2019-11-20Merge #17423: ci: Make ci system read-only on the git work treeMarcoFalke
fa7523d3aa75b0266015af59901c2397b52265b5 ci: Extend docs (MarcoFalke) fa493ef08830efe493150d07411af85518959804 ci: Make ci system read-only on the git work tree (MarcoFalke) fab133329281cdaa3804585a2cdadd0478fefa4f ci: Remove git from required packages on host (MarcoFalke) fa00393bce0c6128c6188afc7a1d50cc01b0277f ci: Make all filesystem operations inside docker (MarcoFalke) Pull request description: Running the ci completely in a docker, without leaving any traces on the host system is not possible right now because the ccache and depends dir needs to be propagated back and picked up by the host for caching. Fixes #17372 ACKs for top commit: JeremyRubin: tested ACK fa7523d3aa75b0266015af59901c2397b52265b5 Tree-SHA512: 4bce1a0f883bcbdb34abf409bdbc80d420c5da2045d2f9c5536ac433f9e5b490f23df084546c8c049f688b487572bbfc4f9c4029e9e672f4d9279739d066ed2e
2019-11-20build: remove libanl.so.1 from ALLOWED_LIBRARIESfanquake
2019-11-20Put bounds on the number of CPUID leaves exploredPieter Wuille
2019-11-20doc: Update and improve Developer NotesHennadii Stepanov
2019-11-20Merge #17420: travis: Rework CACHE_ERR_MSGMarcoFalke
9999a790749c583845a3ff7a265d540c2905aa12 travis: Rework CACHE_ERR_MSG (MarcoFalke) Pull request description: This should fix the misconception that we can fix build problems in forked repos. See https://github.com/bitcoin/bitcoin/pull/17418#issuecomment-551917920 Top commit has no ACKs. Tree-SHA512: e0c86f6613fa38f4d4984420fa1fdc999829407c71024c3b92fd1d35afa98f4b5073af72656c83f607d5f6fab15f9ea629ca8be0b4e892c2fb65a226036c470a
2019-11-20Allow BnB when subtract fee from outputsAndrew Chow
2019-11-20Use BnB when preset inputs are selectedAndrew Chow
2019-11-20Merge #17532: test: add functional test for non-standard txs with too large ↵fanquake
scriptSig 8f2d7737cc236b6122f30e31856eb3181960fba1 test: add functional test for non-standard txs with too large scriptSig (Sebastian Falbesoner) Pull request description: Approaches another missing functional test of issue #17394 (counterpart to unit test in PR #17480, Commit https://github.com/bitcoin/bitcoin/commit/5e8a56348b5e1026e9ddcae0b2fa2a68faf4439e): A transaction is rejected by the mempool with reason `"scriptsig-size"` if any of the inputs' scriptSig is larger than 1650 bytes. ACKs for top commit: MarcoFalke: ACK 8f2d7737cc236b6122f30e31856eb3181960fba1 instagibbs: ACK https://github.com/bitcoin/bitcoin/pull/17532/commits/8f2d7737cc236b6122f30e31856eb3181960fba1 Tree-SHA512: 7a45b8a4181158be3e3b91756783ddf032f132ca8780dc35fac91b2df2149268f784d28ac56005135c4d86a357c57805c5a54b8155f0d049932844b18dc03992
2019-11-20Merge #16161: util: Fix compilation errors in support/lockedpool.cppfanquake
30fb598737f6efb7802d707a1fa989872e7f8b7b Fix segfault in allocator_tests/arena_tests (Jeffrey Czyz) 15c84f53f47bf6e6a9c4c9dfe50c78d98f7ec07f Define ARENA_DEBUG in Travis test runs (Jeffrey Czyz) ad715488222f2f2ce2e2cff632eae94fd49ea9c5 Fix compilation errors in support/lockedpool.cpp (Jeffrey Czyz) Pull request description: Changes in #12048 cause a compilation error in Arena::walk() when ARENA_DEBUG is defined. Specifically, Arena's chunks_free map was changed to have a different value type. Additionally, missing includes cause other compilation errors when ARENA_DEBUG is defined. Reproduced with: make CPPFLAGS=-DARENA_DEBUG ACKs for top commit: laanwj: ACK 30fb598737f6efb7802d707a1fa989872e7f8b7b fanquake: ACK 30fb598737f6efb7802d707a1fa989872e7f8b7b - thanks for following up jkczyz. Tree-SHA512: 4eec368a4e9c67e4e2a27bc05608a807c2892d50c60d06ed21490cd274c0369f9671bc05b3006acc2a193316caf4896454c9c299603bfed29bd488f1987ec446
2019-11-20Merge #17446: gui: Changed tooltip for 'Label' & 'Message' text fields to be ↵Wladimir J. van der Laan
more clear 8944c1d340ac2be45b505ada7e187b770b0b036f Changed tooltips of receive form to highlight difference between Label and Message (dannmat) Pull request description: I have changed the tooltips for 'Label' & 'Message' text fields to be more clear, stating the difference between the two (#17173) ACKs for top commit: MarcoFalke: ACK 8944c1d340ac2be45b505ada7e187b770b0b036f laanwj: ACK 8944c1d340ac2be45b505ada7e187b770b0b036f Tree-SHA512: 7fbea4d3c4416264ae6c146d51d29958c418a278bdd6744133db0b684ad7a9413178c005592aa21a81d127f3f3a8583fc5de00078239db08e6f101f657a5dd3a