aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-01-08Merge #17621: IsUsedDestination should count any known single-key addressSamuel Dobson
09502452bbbe21bb974f1de8cf53196373921ab9 IsUsedDestination should count any known single-key address (Gregory Sanders) Pull request description: This plugs the privacy leak detailed at https://github.com/bitcoin/bitcoin/issues/17605, at least for the single-key case. ACKs for top commit: meshcollider: Code Review ACK 09502452bbbe21bb974f1de8cf53196373921ab9 Tree-SHA512: e1d68281675f05072b3087171cba1df9416a69c9ccf70c72e8555e55eadda2d0fd339e5a894e3a3438ff94b9e3827fb19b8b701faade70c08756b19ff157ee0c
2020-01-06Merge #17857: scripts: fix symbol-check & security-check argument passingfanquake
71af793512100ee7d508c3fb815af47925fe80ba scripts: fix check-symbols & check-security argument passing (fanquake) Pull request description: The first argument in `bin_PROGRAMS` (`bitcoind`) was being silently consumed and never passed into the [`security-check.py`](https://github.com/bitcoin/bitcoin/blob/master/contrib/devtools/security-check.py) or [`symbol-check.py`](https://github.com/bitcoin/bitcoin/blob/master/contrib/devtools/symbol-check.py) scripts. This seems to have been the case since the scripts were added to the makefile in https://github.com/bitcoin/bitcoin/commit/f3d3eaf78eb51238d799d8f20a585550d1567719. Example of the behavior: ```python # touch a, touch b, touch c # python3 args.py < a b c import sys if __name__ == '__main__': print(sys.argv) # ['args.py', 'b', 'c'] # if you add some lines to "a", # you'll see them here.. for line in sys.stdin: print(line) ``` ACKs for top commit: laanwj: ACK 71af793512100ee7d508c3fb815af47925fe80ba Tree-SHA512: 9d0b975a11f66fd87a76654d210808000a629c9cce4c760f71e8a2bcb4e99b9109419f2306db67cf9b12c28e40b96ae722b7c9b4569b2b8bacd469fb99db30c3
2020-01-05Merge #17393: doc: Added regtest config for linearize scriptfanquake
582e66b6e75d58033987a7b0474226cfdd724ce0 doc: Added regtest config for linearize script (Gr0kchain) Pull request description: Updated the example-linearize.cfg file to include support for the regtest chain network config which is used by the ./linearize-data.py Problem: Without the regtest magic, genesis hash and path config, the `linearize-data.py` script cannot generate a bootstrap.dat file. Example: ./linearize-data.py ./linearize.cfg Read 102 hashes Genesis block not found in hashlist Solution: Added netmagic, genesis and input example parameters to file. Resolution 1. Starting bitcoind in regtest mode 2. bitcoin-cli generatetoaddress 101 $(bitcoin-cli getnewaddress) 3. ./linearize-hashes.py ./linearize.cfg > ./hashlist.txt 4. ./linearize-data.py ./linearize.cfg ``` $ ./linearize-data.py ./linearize.cfg Read 102 hashes Input file /Users/gr0kchain/.bitcoin/regtest/blocks/blk00000.dat Output file /Users/gr0kchain/Downloads/bootstrap.dat Done (102 blocks written) ``` ACKs for top commit: fanquake: ACK 582e66b6e75d58033987a7b0474226cfdd724ce0 Tree-SHA512: 699e92e740e68e2e5190ba37538efbbe3e4d4e725ebd6af704a0cf5517683b691754f7ea097bf840845d2b53b793c63258d406e9bd37922db810cf58bed053c3
2020-01-05Merge #17869: refactor: Remove unused defines in qt/bitcoinunits.hfanquake
7754d7ab1e4f1918fcc31396cd3e7507f936477f refactor: Remove unused defines in bitcoinunits.h (Hennadii Stepanov) Pull request description: In `bitcoinunits.h` some `#define`s introduced in #4167 are unused now. ACKs for top commit: emilengler: ACK 7754d7ab1e4f1918fcc31396cd3e7507f936477f fanquake: ACK 7754d7ab1e4f1918fcc31396cd3e7507f936477f promag: ACK 7754d7ab1e4f1918fcc31396cd3e7507f936477f. Tree-SHA512: 688836a434d87530f99c309d8af60f63cdfdcfe583c9297636fbbed0f16a3dc0920d4249457303c00a83dc82d28edd8a99aab0b191c7ffbbd38c5d9fc8ee0df1
2020-01-04Merge #17850: Serialization improvements (minimal initial commits)Wladimir J. van der Laan
9250a087d2f450f37342010aea0a5d583eea508b Convert addrdb/addrman to new serialization (Pieter Wuille) ca33451535dc29f64d37c49af8b22142d7716d0d Introduce new serialization macros without casts (Pieter Wuille) Pull request description: This is a minimal subset of #10785 that still does *something*. It adds a new saner serialization macro, which can be used in parallel with the old one. Then the addrdb code is converted to use this new macro. I'll add follow-up PRs that add more functionality + converting of other modules as things get merged. ACKs for top commit: jamesob: ACK 9250a087d2f450f37342010aea0a5d583eea508b ([`jamesob/ackr/17850.1.sipa.serialization_improvemen`](https://github.com/jamesob/bitcoin/tree/ackr/17850.1.sipa.serialization_improvemen)) kallewoof: ACK 9250a087d2f450f37342010aea0a5d583eea508b laanwj: code review ACK 9250a087d2f450f37342010aea0a5d583eea508b Tree-SHA512: d4f58c7f85d8ada7543ee43159be57d320746abe003af11395508d280d339fac7faa198e707d1a689fb0a775fc36b3945178c3ae1c0cf9ffe685773c6ddc10c1
2020-01-04refactor: Remove unused defines in bitcoinunits.hHennadii Stepanov
2020-01-04Merge #17817: build: Add default configure cache file to .gitignorefanquake
0661a3c4a6ac7e9aa24812dcd1c3ca9053248aff build: Add default configure cache to .gitignore (Hennadii Stepanov) Pull request description: Ref: [Autoconf - 7.4.2 Cache Files](https://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.69/autoconf.html#Cache-Files) ACKs for top commit: fanquake: ACK 0661a3c4a6ac7e9aa24812dcd1c3ca9053248aff - sure; going to merge this. However lets not start adding every file that might occur from using any autoconf option to our .gitignore.. Tree-SHA512: 8be8fdd7fda35ae190c1613e5b3ac4860d6f9ec08f06b66b1278be26e11a1616ec781e0b88d0761690c99600b4de2306c01dd9798f9143531ddacb373e3fc677
2020-01-04Merge #17688: doc: Add "ci" prefix to CONTRIBUTING.mdfanquake
19267cbc82c1a09b37a0266b7bd930e9a62d1288 doc: Add ci prefix to CONTRIBUTING.md (Hennadii Stepanov) Pull request description: It seems our maintainers like `ci` prefix for commits and PRs: ``` git log | grep 'ci:' ``` and ![Screenshot from 2019-12-07 11-49-51](https://user-images.githubusercontent.com/32963518/70372457-ec592a80-18e7-11ea-9320-73412a1ccd25.png) So let's document it. ACKs for top commit: fanquake: ACK 19267cbc82c1a09b37a0266b7bd930e9a62d1288 - this looks ok Tree-SHA512: ef467513f9562f51d0471c5cc900336caab4e9494299bcd2c9cc9e1b296536a86467807d71b8d7100a5c78715174cf58b6ecfe6c3bd958060c15eba4fba7067f
2020-01-03IsUsedDestination should count any known single-key addressGregory Sanders
2020-01-03Merge #17851: tests: Add std::to_string to list of locale dependent functionsMarcoFalke
1f0adb3dac461b3f24f2a98b736d972e9713d67e tests: Add std::to_string to list of locale dependent functions (practicalswift) Pull request description: Add `std::to_string` to list of locale dependent functions: > `std::to_string` relies on the current locale for formatting purposes […] Context https://github.com/bitcoin/bitcoin/pull/17808#issuecomment-570329665 ACKs for top commit: hebasto: ACK 1f0adb3dac461b3f24f2a98b736d972e9713d67e, I have reviewed the code and it looks OK, I agree it can be merged. Tree-SHA512: 4cd6f567f5931dd166cdb9b065a939fb0bc02c93de18a9501655d98caf18b7c4d81f1881ea900dcdf2ec103d3ab1bdc9c68d3257b76dd2468a59e74d278b0d8d
2020-01-03scripts: fix check-symbols & check-security argument passingfanquake
The first argument in bin_PROGRAMS (bitcoind) was being silently dropped and never passed into the check-security.py or check-symbols.py scripts. This has been the case since the scripts were added to the makefile in https://github.com/bitcoin/bitcoin/commit/f3d3eaf78eb51238d799d8f20a585550d1567719. Example of the behavior: ```python # touch a, touch b, touch c # python3 args.py < a b c import sys if __name__ == '__main__': print(sys.argv) # ['args.py', 'b', 'c'] # if you add some lines to "a", # you'll see them here.. for line in sys.stdin: print(line) ```
2020-01-02Merge #17781: rpc: Remove mempool global from minerMarcoFalke
faa92a2297b4a6aebdd58d1818c428f1c0346078 rpc: Remove mempool global from miner (MarcoFalke) 6666ef13f167cfe880c2e94c09d003594d010cf3 test: Properly document blockinfo size in miner_tests (MarcoFalke) Pull request description: The miner needs read-only access to the mempool. Instead of using the mutable global `::mempool`, keep a immutable reference to a mempool that is passed to the miner. Apart from the obvious benefits of removing a global and making things immutable, this might also simplify testing with multiple mempools. ACKs for top commit: promag: ACK faa92a2297b4a6aebdd58d1818c428f1c0346078. fjahr: ACK faa92a2297b4a6aebdd58d1818c428f1c0346078 jnewbery: Code review ACK faa92a2297b4a6aebdd58d1818c428f1c0346078 Tree-SHA512: c44027b5d2217a724791166f3f3112c45110ac1dbb37bdae27148a0657e0d1a1d043b0d24e49fd45465ec014224d1b7eb15c92a33069ad883fa8ffeadc24735b
2020-01-02tests: Add std::to_string to list of locale dependent functionspracticalswift
2020-01-02Merge #17762: net: Log to net category for exceptions in ProcessMessagesWladimir J. van der Laan
4bdd68f301a9cee3360deafc7531c638e923226b Add missing typeinfo includes (Wladimir J. van der Laan) 4d88c3dcb61e7c075ed3dd442044e0eff4e3c8de net: Log to net category for exceptions in ProcessMessages (Wladimir J. van der Laan) Pull request description: Remove the forest of special exceptions based on string matching, and simply log a short message to the NET logging category when an exception happens during packet processing. It is not good to panick end users with verbose errors (let alone writing to stderr) when any peer can generate them. ACKs for top commit: MarcoFalke: re-ACK 4bdd68f301a9cee3360deafc7531c638e923226b (only change is adding includes) 🕕 promag: ACK 4bdd68f301a9cee3360deafc7531c638e923226b, could squash. Tree-SHA512: a005591a3202b005c75e01dfa54249db3992e2f9eefa8b3d9d435acf66130417716ed926ce4e045179cf43788f1abc7362d999750681a9c80b318373d611c366
2020-01-02Add missing typeinfo includesWladimir J. van der Laan
The use of `typeid()` for logging exception types requires this include according to https://en.cppreference.com/w/cpp/language/typeid.
2020-01-02Convert addrdb/addrman to new serializationPieter Wuille
2020-01-02Introduce new serialization macros without castsPieter Wuille
This new approach uses a static method which takes the object as a argument. This has the advantage that its constness can be a template parameter, allowing a single implementation that sees the object as const for serialization and non-const for deserialization, without casts. More boilerplate is included in the new macro as well.
2020-01-02Merge #17849: ci: Fix brew python linkMarcoFalke
87744b16b02cb9e4f6e97509facf6cc781e60b98 ci: Fix brew python link (Hennadii Stepanov) Pull request description: During the native macOS build on Travis brew-version python update from 3.7.5 to 3.7.6_1 causes link failure: ``` ==> Upgrading python3 ==> Downloading https://homebrew.bintray.com/bottles/python-3.7.6_1.mojave.bottl ==> Downloading from https://akamai.bintray.com/64/643d627c2b4fc03a3286c397d2992 ######################################################################## 100.0% ==> Pouring python-3.7.6_1.mojave.bottle.tar.gz Error: The `brew link` step did not complete successfully The formula built, but is not symlinked into /usr/local ``` Close #17848 Top commit has no ACKs. Tree-SHA512: 09164805c557e3bd21df2d0765a1c6815e786040e9ec0e81a916b2df6c4f03974cf92c31eca999b997f8c4ed0998bdd6e35c3de7ccbaaed3bf131521ecc637dc
2020-01-02Merge #16658: validation: Rename CheckInputs to CheckInputScriptsMarcoFalke
3bd8db80d8d335ab63ece4f110b0fadd562e80b7 [validation] fix comments in CheckInputScripts() (John Newbery) 6f6465cefcd599c89c00f7b51f42a4b87a5ffb0b scripted-diff: [validation] Rename CheckInputs to CheckInputScripts (John Newbery) Pull request description: CheckInputs() used to check no double spends, scripts & sigs and amounts. Since 832e074, the double spend and amount checks have been moved to CheckTxInputs(), and CheckInputs() now just validates input scripts. Rename the function to CheckInputScripts(). Also fix incorrect comments. ACKs for top commit: MarcoFalke: re-ACK 3bd8db80d8d335ab63ece4f110b0fadd562e80b7, did the rebase myself, checked the scripted diff 👡 promag: ACK 3bd8db80d8d335ab63ece4f110b0fadd562e80b7 :trollface: Tree-SHA512: 7b3f8597d210492798fb784ee8ea47ea6377519111190161c7cc34a967509013f4337304f52e9bedc97b7710de7b0ff8880e08cd7f867754567f82e7b02c794c
2020-01-02ci: Fix brew python linkHennadii Stepanov
2020-01-02Merge #17787: scripts: add MACHO PIE check to security-check.pyWladimir J. van der Laan
7c9e821c4e6cb186208ead9c8df616d1f393a49a scripts: add MACHO NOUNDEFS check to security-check.py (fanquake) 4ca92dc6d3f3e487d63286d8871d1829b3d279ff scripts: add MACHO PIE check to security-check.py (fanquake) Pull request description: This uses `otool -vh` to print the mach header and look for the `PIE` flag: ```bash otool -vh src/bitcoind Mach header magic cputype cpusubtype caps filetype ncmds sizeofcmds flags MH_MAGIC_64 X86_64 ALL LIB64 EXECUTE 24 2544 NOUNDEFS DYLDLINK TWOLEVEL WEAK_DEFINES BINDS_TO_WEAK PIE ``` From [`mach-o/loader.h`](https://opensource.apple.com/source/cctools/cctools-927.0.2/include/mach-o/loader.h.auto.html): ```c #define MH_PIE 0x200000 /* When this bit is set, the OS will load the main executable at a random address. Only used in MH_EXECUTE filetypes. */ ``` ACKs for top commit: laanwj: code review ACK 7c9e821c4e6cb186208ead9c8df616d1f393a49a Tree-SHA512: 5ba2f60440d0e31c70371a355c91ca4f723d80f7287d04e2098bf5b11892cc74216ff8f1454603c4db9675d4f7983614843b992b8dcfca0309aadf2aa7ab2e4b
2020-01-02scripts: add MACHO NOUNDEFS check to security-check.pyfanquake
2020-01-02scripts: add MACHO PIE check to security-check.pyfanquake
2019-12-31Merge #17825: doc: Update dependencies.mdfanquake
df97e592078a33f6bf535979e05967c563de317b doc: Update dependencies.md (Hennadii Stepanov) Pull request description: Updated info about: - Qt-bundled FreeType library on Android - Qt-bundled HarfBuzz-NG library - Qt dependency version (5.9.7 -> 5.9.8, #16413) ACKs for top commit: fanquake: ACK df97e592078a33f6bf535979e05967c563de317b promag: ACK df97e592078a33f6bf535979e05967c563de317b. elichai: ~ACK df97e592078a33f6bf535979e05967c563de317b~ Tree-SHA512: 8e36520026e9e59376a1128576fbddf8313f9f7ddc7155ca462a4350ed0354d423a56127d2000b80159c677b74259eaf9348519d79a215f4fb46931bea3c2c3a
2019-12-31Merge #17829: scripted-diff: Bump copyright of files changed in 2019fanquake
aaaaad6ac95b402fe18d019d67897ced6b316ee0 scripted-diff: Bump copyright of files changed in 2019 (MarcoFalke) Pull request description: ACKs for top commit: practicalswift: ACK aaaaad6ac95b402fe18d019d67897ced6b316ee0 promag: ACK aaaaad6ac95b402fe18d019d67897ced6b316ee0 🎉 fanquake: ACK aaaaad6ac95b402fe18d019d67897ced6b316ee0 - going to merge this now because the year is over and conflicts are minimal. Tree-SHA512: 58cb1f53bc4c1395b2766f36fabc7e2332e213780a802762fff0afd59468dad0c3265f553714d761c7a2c44ff90f7dc250f04458f4b2eb8eef8b94f8c9891321
2019-12-31Merge #17741: build: Included test_bitcoin-qt in msvc buildMarcoFalke
592af5ad3a5a20ecd7f3b903073fa6c0dfe1a6b5 Moved the include of the system projects to before the build depends on task. Otherwise it doesn't get run. (Aaron Clauson) 6e2215187e5de7c225fd2a9fb0d5f87d729741ee Included test_bitcoin-qt in msvc build. (Aaron Clauson) Pull request description: This PR includes the `test_bitcoin-qt` project in the msvc build. The project is already in the repo but is not part of the solution and therefore does not get built. The test executable output from this project does not pass successfully on Windows (it may never have). This PR only builds the project and does not add a step to execute the tests. MarcoFalke mentioned the fact that it's missing in #17571. Top commit has no ACKs. Tree-SHA512: ebb8fc7710022b995e842708bbf83b9c0084dac5e1a22fa3f53d9ea472faabe96d75ad53150cc915ded5f782515a896f2b60840390bde38c1d0f80d0fd56a4ea
2019-12-30scripted-diff: Bump copyright of files changed in 2019MarcoFalke
-BEGIN VERIFY SCRIPT- ./contrib/devtools/copyright_header.py update ./ -END VERIFY SCRIPT-
2019-12-29doc: Update dependencies.mdHennadii Stepanov
2019-12-28Merge #17801: doc: Update license year range to 2020MarcoFalke
8dc9aa90c3c7990dd5b491937ddc0e39bc929d1c doc: Update license year range to 2020 (Emil Engler) Pull request description: See #15061 The same procedure as every year. Happy new year to all of you :) Top commit has no ACKs. Tree-SHA512: f2d924a739f6becc050a22cd0e37d97653ac1ef78ec645c98b5647ae2e65b9668851e24090d3ab3585503235113e1c48ea20580c35538afac5043026589bf830
2019-12-28build: Add default configure cache to .gitignoreHennadii Stepanov
2019-12-27Merge #17806: test: Change filemode of rpc_whitelist.pyMarcoFalke
90df92206cfce4e61eff9d584112643512f6b91c test: Change filemode of rpc_whitelist.py (Emil Engler) Pull request description: All python tests have the file mode `755`. Probably due to a mistake `rpc_whitelist.py` is the only test with the permission `644`. This PR makes it coherent with the other tests and updates it to `755` as well. ACKs for top commit: practicalswift: ACK 90df92206cfce4e61eff9d584112643512f6b91c -- all tests should be executable Tree-SHA512: b9e69cb5184a3bbee4c7b14ac35985145a9fd3403d0e449d79f15c18e9660cafec495d639f5f730e0c69dde5f4a3d7590b4e42d385e794cd02add1f4e3b785e7
2019-12-27test: Change filemode of rpc_whitelist.pyEmil Engler
2019-12-26doc: Update license year range to 2020Emil Engler
2019-12-23Merge #17793: ci: Update GitHub Actions CI vcpkg cache on MSBuild updatefanquake
0b5a366bd70119b34b112825d69804057141535f ci: Update vcpkg cache on MSBuild update (Hennadii Stepanov) b6fa752bc7c68ef5b2f839b6101c86241d3af85c ci: Update Qt binaries for GitHub Actions (Hennadii Stepanov) Pull request description: On master (0cda5573405d75d695aba417e8f22f1301ded001) Visual Studio update in GitHub Actions CI virtual environment could break a build as the `vcpkg` cache is not updated accordingly (see #17788). This PR: - force vcpkg cache update on MSBuild update - is an alternative to #17789 - fixes #17788 ACKs for top commit: fanquake: ACK 0b5a366bd70119b34b112825d69804057141535f Tree-SHA512: b9e69cb5184a3bbee4c7b14ac35985145a9fd3403d0e449d79f15c18e9660cafec495d639f5f730e0c69dde5f4a3d7590b4e42d385e794cd02add1f4e3b785e7
2019-12-23ci: Update vcpkg cache on MSBuild updateHennadii Stepanov
2019-12-23ci: Update Qt binaries for GitHub ActionsHennadii Stepanov
On 2019-12-09 Visual Studio has been upgraded to 16.4.0 in Windows Server 2019 (windows-latest) virtual environment.
2019-12-23rpc: Remove mempool global from minerMarcoFalke
2019-12-21Merge #17751: doc: use recommended shebang approach in documentation code blockMarcoFalke
6094222de7820d235e6e8c66e589aa71db08c077 use preferred shebang approach for documentation (hackerrdave) Pull request description: Documentation update to use recommended shebang approach mentioned in the [developer notes](https://github.com/bitcoin/bitcoin/blob/master/doc/developer-notes.md#shebang) ACKs for top commit: hebasto: ACK 6094222de7820d235e6e8c66e589aa71db08c077, I have reviewed the code, and it looks OK, I agree it can be merged. Tree-SHA512: fc58632f0a6fa82c7abdddfac4897f082110d647426d2b468cba6fabf6b34a015fcad47e5b26be98e629b8b0417b8781e8d89da67189e20da228b97b17f1a532
2019-12-20test: Properly document blockinfo size in miner_testsMarcoFalke
This fixes a typo in the test documentation
2019-12-20Merge #17473: refactor: Settings code cleanupsMarcoFalke
e9fd366044e271632dc0e4f96e1c14f8e87213ae refactor: Remove null setting check in GetSetting() (Russell Yanofsky) cba2710220d76bbe790b04088839cbbd410436de scripted-diff: Remove unused ArgsManager type flags in tests (Russell Yanofsky) 425bb307252cf4dec9b3ef6426e6548b2be7a303 refactor: Add util_CheckValue test (Russell Yanofsky) 0fa54358b06b58f4d17073bcc8a959eb9498aadc refactor: Add ArgsManager::GetSettingsList method (Russell Yanofsky) 3e185522ace1678e0a25b9cf8a5553a4bc279bea refactor: Get rid of ArgsManagerHelper class (Russell Yanofsky) dc0f1480746b34aa3ca2d9c0f1ec764083026b40 refactor: Replace FlagsOfKnownArg with GetArgFlags (Russell Yanofsky) 57e8b7a7273567aa4a4aee87cce18e9bff8f3196 refactor: Clean up includeconf comments (Russell Yanofsky) 3f7dc9b808316c1e5d677af8d9a99112568c8ccb refactor: Clean up long lines in settings code (Russell Yanofsky) Pull request description: This PR doesn't change behavior. It just implements some suggestions from #15934 and #16545 and few other small cleanups. ACKs for top commit: jnewbery: Code review ACK e9fd366044e271632dc0e4f96e1c14f8e87213ae MarcoFalke: ACK e9fd366044 🚟 Tree-SHA512: 6e100d92c72f72bc39567187ab97a3547b3c06e5fcf1a1b74023358b8bca552124ca6a53c0ab53179b7f1329c03d9a73faaef6d73d2cd1a2321568a0286525e2
2019-12-19Merge #17772: doc: Mention PR Club in CONTRIBUTING.mdMarcoFalke
34d826ea5f900b6320f6ff070c3632155acb716e doc: Mention PR Club in CONTRIBUTING.md (Emil Engler) Pull request description: As we have a ["Review Club"](https://github.com/bitcoin/bitcoin/labels/Review%20club) label it would be worth mentioning it in the CONTRIBUTING.md file for beginners. ACKs for top commit: practicalswift: ACK 34d826ea5f900b6320f6ff070c3632155acb716e -- The Bitcoin Core PR Review Club is a great effort to introduce new contributors to the project in a positive and friendly way! We need that kind of newcomer friendly on-ramps to attract and educate the next generation of contributors! Kudos to @ jnewbery for helping secure the project also in the super long-term :) Tree-SHA512: 9c6cbe9a82e1f13db10ad19c50a55566dbe3f5ccaf5b91f75c5a743f7f4f690515274d64c132460791bd4d8e76255b5cbfb2877908459734b52e3fbdba71fbb3
2019-12-19Merge #17769: build: set AC_PREREQ to 2.69fanquake
4f4ae6f97e210fa0a2aa274bcd2a77a226fe6a7e build: set AC_PREREQ to 2.69 (fanquake) Pull request description: We use build macros such as `AX_CHECK_LINK_FLAG`, that require >=2.64, so our configure should also require Autoconf >= 2.64. The build would already blow up if 2.64 wasn't available. i.e: ```bash configure.ac:320: error: Autoconf version 2.64 or higher is required build-aux/m4/ax_check_link_flag.m4:74: AX_CHECK_LINK_FLAG is expanded from... ``` For reference, Autoconf 2.69 was released in [April of 2012](https://lists.gnu.org/archive/html/autoconf/2012-04/msg00041.html). See the [Autoconf Versioning docs](https://www.gnu.org/software/autoconf/manual/autoconf-2.69/html_node/Versioning.html) for more info on `AC_PREREQ`. ACKs for top commit: hebasto: re-ACK 4f4ae6f97e210fa0a2aa274bcd2a77a226fe6a7e, Autoconf 2.69 seems wide available. laanwj: ACK 4f4ae6f97e210fa0a2aa274bcd2a77a226fe6a7e Tree-SHA512: b77de9164ae6667513d40edaf9e16c6e7734c100643297b2dbb2ff54072774fdeab7b3b15d52979b99e204c1c4dcca4725ff155d7f6fdab7a867629130e10185
2019-12-18build: set AC_PREREQ to 2.69fanquake
We use build macros such as AX_CHECK_LINK_FLAG, that require >=2.64, so our configure should also require Autoconf >= 2.64. The build would already blow up if 2.64 wasn't available. i.e: configure.ac:320: error: Autoconf version 2.64 or higher is required build-aux/m4/ax_check_link_flag.m4:74: AX_CHECK_LINK_FLAG is expanded from... For reference, Autoconf 2.69 was released in April of 2012. https://lists.gnu.org/archive/html/autoconf/2012-04/msg00041.html See https://www.gnu.org/software/autoconf/manual/autoconf-2.69/html_node/Versioning.html for more info on AC_PREREQ.
2019-12-18doc: Mention PR Club in CONTRIBUTING.mdEmil Engler
2019-12-17Merge #17764: doc: Add formatting to the good first issue templatefanquake
faede70882b4fd54390f5205dbe1dbcf019195c8 doc: Add formatting to the good first issue template (MarcoFalke) Pull request description: Add minor formatting to the good first issue template so that it is easier to see with one glance what the required skills are. Preview is here: https://github.com/MarcoFalke/bitcoin-core/issues/new/choose ACKs for top commit: fanquake: ACK faede70882b4fd54390f5205dbe1dbcf019195c8 Tree-SHA512: 0b0fcd051166981455061442e69f42c9fa726eaa228856e57434e012f7224781f4f3f12c31ce0a7a322df9999e79a8fbe63bf800b7933bc52c7cdaed90f37598
2019-12-17Merge #17686: build: add -bind_at_load to macOS hardened LDFLAGSfanquake
c78b123982d59fe2d633659f23d6893de627f3f6 build: add -bind_at_load to hardened LDFLAGS (fanquake) Pull request description: This performs the same function as `-Wl,-z,now`, except for ld on macOS. You can check the binaries using `otool -l`, and looking for the `LC_DYLD_INFO_ONLY` section; `lazy_bind_off` and `lazy_bind_size` should both be 0. This seems to be the case with our current release binaries. However we can make the check, and applying the flag explicit in configure. man ld: ```bash -bind_at_load Sets a bit in the mach header of the resulting binary which tells dyld to bind all symbols when the binary is loaded, rather than lazily. ``` TODO: - [ ] Follow up with `MH_BINDATLOAD` flag. ACKs for top commit: theuni: ACK c78b123982d59fe2d633659f23d6893de627f3f6. Tree-SHA512: 12259558b84f7e3d75d6fcde63b517685e42b18fcf8e8cfcf347483c5ba089d3b4b6d330e7b7f61f83a328fe4d141b771e8e52ddee9cac6da87dfc073ab1183d
2019-12-17use preferred shebang approach for documentationhackerrdave
2019-12-17Merge #17756: build: remove WINDOWS_BITS from build systemfanquake
abc147de95fb294a2c0a3105695e708517010322 build: remove WINDOWS_BITS from build system (fanquake) Pull request description: We no longer build/ship 32 bit windows executables. ACKs for top commit: laanwj: LGTM ACK abc147de95fb294a2c0a3105695e708517010322 Tree-SHA512: 7101393cddb7e578740e4c79532dac981eb963630ce63c28dfebf0f5ecde266c1836ac0efd1fd82e6010a6151755ad2cc2b09bc2f67edd7c0c77060ac046a9cd
2019-12-17Merge #17537: wallet: Cleanup and move opportunistic and superfluous TopUp()sfanquake
6e77a7b65cda1b46ce42f0c99ca91562255aeb28 keypool: Add comment about TopUp and when to use it (Andrew Chow) ea50e34b287e0da0806c1116bb55ade730e8ff6c keypool: Move opportunistic TopUps from LegacyScriptPubKeyMan to CWallet and ReserveDestination (Andrew Chow) bb2c8ce23c9d7ba8d0e5538243e07218443c85b4 keypool: Remove superfluous topup from CWallet::GetNewChangeDestination (Andrew Chow) Pull request description: * The `TopUp()` in `CWallet::GetNewChangeDestination` is unnecessary as currently m_spk_man calls TopUp further down the call stack inside LegacyScriptPubKeyMan::ReserveKeyFromKeyPool (called by LegacyScriptPubKeyMan::GetReservedDestination). This also lets us prepare for future changes with multiple ScriptPubKeyMans in the wallet. * An opportunistic `TopUp()` is moved from `LegacyScriptPubKeyMan::GetNewDestination` to `CWallet::GetNewDestination`. * Another opportunistic `TopUp()` is moved from `LegacyScriptPubKeyMan::ReserveKeyFromKeyPool` Moving opportunistic TopUps ensures that ScriptPubKeyMans will always be topped up before requesting Destinations from them as we cannot always rely on future ScriptPubKeyMan implementaions topping up internally. See also: https://github.com/bitcoin/bitcoin/pull/17373#discussion_r348598174 ACKs for top commit: instagibbs: utACK https://github.com/bitcoin/bitcoin/pull/17537/commits/6e77a7b65cda1b46ce42f0c99ca91562255aeb28 only change is slight elaboration on comment ryanofsky: Code review ACK 6e77a7b65cda1b46ce42f0c99ca91562255aeb28. Only the comment changed since my previous review. Tree-SHA512: bdfc8d303842c3fb7c3d40af7abfa6d9dac4ef71a24922bb92229674ee89bfe3113ebb46d3903ac48ef99f0a7d6eaac33282495844f2b31f91b8df55084c421f
2019-12-17doc: Add formatting to the good first issue templateMarcoFalke