aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-06-26Merge #16287: refactor: remove extra CBlockIndex declarationMarcoFalke
9824a0d6e91f75477b8417a2acb3301a8e8d8aa1 Remove extra CBlockIndex declaration (RJ Rybarczyk) Pull request description: Remove duplicate `class CBlockIndex;` declaration. ACKs for top commit: promag: ACK 9824a0d. Is this a random finding or you have searched for more similar cases? practicalswift: utACK 9824a0d6e91f75477b8417a2acb3301a8e8d8aa1 fanquake: ACK 9824a0d6e91f75477b8417a2acb3301a8e8d8aa1 Tree-SHA512: aaf88450f53cb8859778102fe971b1121808819c04e64802e5a5cf47bf1403b42531361c52b097b41b905f9fa1bb7acc82b446cfa659c6ac41d00fab29e114e4
2019-06-26Merge #16286: refactoring: wallet: Fix GCC 7.4.0 warningfanquake
d8bd97d5ee766a75dec016203bd4d4aafcc24c4f Fix GCC 7.4.0 warning (Hennadii Stepanov) Pull request description: Having #13756 and #16239 merged cause GCC warning: ``` $ gcc --version gcc (Ubuntu 7.4.0-1ubuntu1~18.04.1) 7.4.0 ... $ make -j 4 > /dev/null wallet/wallet.cpp: In member function ‘CWallet::Balance CWallet::GetBalance(int, bool) const’: wallet/wallet.cpp:2269:45: warning: enumeral and non-enumeral type in conditional expression [-Wextra] isminefilter reuse_filter = avoid_reuse ? 0 : ISMINE_USED; ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ ``` Fixed with this PR. ACKs for top commit: practicalswift: utACK d8bd97d5ee766a75dec016203bd4d4aafcc24c4f promag: ACK d8bd97d. kallewoof: utACK d8bd97d5ee766a75dec016203bd4d4aafcc24c4f meshcollider: Trivial utACK https://github.com/bitcoin/bitcoin/pull/16286/commits/d8bd97d5ee766a75dec016203bd4d4aafcc24c4f Tree-SHA512: 2fb315ac82f290c8b9f4e48d1b4526b9babe0717c68593c7bc55cd6c289e64b6322aba72984f39291a9254b57d3f6ba8dbfe03799f510c0c1dc108b21b286732
2019-06-25Remove extra CBlockIndex declarationRJ Rybarczyk
2019-06-25Fix GCC 7.4.0 warningHennadii Stepanov
Warning: enumeral and non-enumeral type in conditional expression.
2019-06-25Merge #15894: Remove duplicated "Error: " prefix in logsWladimir J. van der Laan
f724f31401b963c75bd64f5e2c5b9d9561a9a9dd Make AbortNode() aware of MSG_NOPREFIX flag (Hennadii Stepanov) 96fd4ee02f6c3be21cade729b95a85c60634b0f8 Add MSG_NOPREFIX flag for user messages (Hennadii Stepanov) f0641f274ffe94fbe7cae43c07a9373013739df2 Prepend the error/warning prefix for GUI messages (Hennadii Stepanov) Pull request description: The "Error" prefix/title is set already in the next functions: - `noui_ThreadSafeMessageBox()`https://github.com/bitcoin/bitcoin/blob/2068f089c8b7b90eb4557d3f67ea0f0ed2059a23/src/noui.cpp#L17 - `ThreadSafeMessageBox()`https://github.com/bitcoin/bitcoin/blob/a720a983015c9ef8cc814c16a5b9ef6379695817/src/qt/bitcoingui.cpp#L1351 Currently on master: ![Screenshot from 2019-04-25 22-08-54](https://user-images.githubusercontent.com/32963518/56763092-25ee8280-67aa-11e9-86c8-6a029dd9ab08.png) With this PR: ![Screenshot from 2019-04-25 22-26-36](https://user-images.githubusercontent.com/32963518/56763107-30108100-67aa-11e9-9021-683cbd7e2aaa.png) ACKs for top commit: laanwj: concept and code-review ACK f724f31401b963c75bd64f5e2c5b9d9561a9a9dd Tree-SHA512: 218a179b81cc2ac64239d833c02b4c4d4da9b976728a2dcd645966726c4c660b6f1fe43aa28f33d1cb566785a4329e7f93bf5a502bf202316db79d2ff5fce0f8
2019-06-25Merge #16252: test: Log to debug.log in all unit testsWladimir J. van der Laan
fabc57e07dc34c103552cb51c9277bb48ef97739 test: Log to debug.log in all tests (MarcoFalke) fa4a04a5a942d582c62773d815c7e1e9897975d0 test: use common setup in gui tests (MarcoFalke) fad3d2a624377de4b0311e6ddd446c36dafd1ddc test: Create data dir in BasicTestingSetup (MarcoFalke) Pull request description: This makes it easier to debug a frozen test or a test that failed. To debug a failed test, remove the line `fs::remove_all(m_path_root);`. The pull is done in three commits: * Create a datadir for every unit test once (and only once). This requires the `SetDataDir` function to go away. * Use the common setup in the gui unit tests. Some of those tests are testing the init sequence, so we'd have to undo some of what the testing setup did. * Log to the debug.log in all tests ACKs for top commit: laanwj: ACK fabc57e07dc34c103552cb51c9277bb48ef97739 Tree-SHA512: 73444210b88172669e2cd22c2703a1e30e105185d2d5f03decbdedcfd09c64ed208d3716c59c8bebb0e44214cee5c8095e3e995d049e1572ee98f1017e413665
2019-06-25Merge #16183: depends: xtrans: Configure flags cleanup.fanquake
30ea931dee8e4533c4b8efe00693aebb6fbd78fc depends: xtrans: Configure flags cleanup. (Carl Dong) Pull request description: ``` xtrans does not understand the --with-pic and --disable-shared flags we pass it because it is not a library. Instead, we should pass it flags that disable features/packages we're not using so they don't get a chance to sneak in. ``` Here's a comparison of stdout and stderr of `make -j(nproc) V=1 xtrans_built` before and after this PR: https://gist.github.com/dongcarl/4ebf6fe9985ebc1508190f75932e4237 ACKs for top commit: fanquake: ACK 30ea931dee8e4533c4b8efe00693aebb6fbd78fc Tree-SHA512: 49e060dffbae8c148c1164b493d03e7db4f260e7746d94c783377185c665e16fb6638827473709ed543eb266cc293d2313f61ade05ee8af4edb0bfbda0d1f785
2019-06-25Merge #16188: net: Document what happens to getdata of unknown typefanquake
dddd9270f85bd2e71fd281a0c6b4053e02fce93c net: Document what happens to getdata of unknonw type (MarcoFalke) Pull request description: Any getdata of unknown type will never be processed and blocks all future messages from a peer. This isn't obviously clear from reading the code, so document it. Top commit has no ACKs. Tree-SHA512: 4f8e43bbe6534242facfcfffae28b7a6aa2d228841fa2146a87d494e69f614b0da23cf7a5f3d4367358a7c1981fe2ec196a21c437ae1653f1c7e0351be22598a
2019-06-24Merge #16223: devtools: Fetch and display ACKs at sign-off time in github-mergeMarcoFalke
0e01e4522e devtools: Fetch and display ACKs at sign-off time in github-merge (Wladimir J. van der Laan) Pull request description: - Fetch the ACKs only at sign-off time. This makes sure that any last-minute ACKs are included (fixes #16200) - Show a list of ACKs that will be included and their author before signing off, and warn if there are none ![1](https://user-images.githubusercontent.com/126646/59605250-ad070980-910e-11e9-9f9a-d789c7f06ebb.png) ![2](https://user-images.githubusercontent.com/126646/59605255-b1332700-910e-11e9-80a5-d1e244f48264.png) There's a slight change to the merge commit format—before it was ``` ACKs for commit 88884c: (list of ACKs, could be empty) ``` now it is ``` ACKs for top commit: jnewbery: ACK 5ebc6b0eb ... (list of ACKs cannot be empty) ``` or ``` Top commit has no ACKs. ``` I don't think there's a reason to have the abbreviated commit ID there, after all the full commit id is already in the beginning of the merge commit message, and at least the abbreviated one is in every single ACK message. ACKs for commit 0e01e4: fanquake: ACK 0e01e4522e0f9e2e994f80fc61f40d61a4a70d79 Tree-SHA512: 8576de016137d71cfc101747e9bb6779c13e0953cf2babee7afc9972bf2bd46f6912be4982b54fa5abf4d91e98e8fdae6b4ca3eef7d6892b7a5f04a7017b6882
2019-06-24Merge #16254: qt: Set AA_EnableHighDpiScaling attribute earlyMarcoFalke
099e4b9ad3 Set AA_EnableHighDpiScaling attribute early (Hennadii Stepanov) Pull request description: Running `bitcoin-qt` compiled against Qt 5.12.4 causes a warning: ``` hebasto@bionic-qt:~/bitcoin$ src/qt/bitcoin-qt Attribute Qt::AA_EnableHighDpiScaling must be set before QCoreApplication is created. ``` This PR fixes this issue. From Qt docs: - [Qt::AA_EnableHighDpiScaling](https://doc.qt.io/qt-5/qt.html#ApplicationAttribute-enum): > Enables high-DPI scaling in Qt on supported platforms (see also High DPI Displays). _Supported platforms are X11, Windows and Android._ Enabling makes Qt scale the main (device independent) coordinate system according to display scale factors provided by the operating system. This corresponds to setting the `QT_AUTO_SCREEN​_SCALE_FACTOR` environment variable to 1. This attribute must be set before `QGuiApplication` is constructed. This value was added in Qt 5.6. - [QCoreApplication::setAttribute()](https://doc.qt.io/qt-5/qcoreapplication.html#setAttribute) ACKs for commit 099e4b: MarcoFalke: ACK 099e4b9ad3d9967051d5c3d45c6315d1b30fea05 jonasschnelli: utACK 099e4b9ad3d9967051d5c3d45c6315d1b30fea05 fanquake: ACK 099e4b9ad3d9967051d5c3d45c6315d1b30fea05. Did some testing on `Bionic` and `Windows 10` (using VirtualBox). I couldn't see any obvious visual difference, but given Marco's screens above, this change is obviously better. I also checked that there wasn't any sort of regression on macOS. Tree-SHA512: 1965a427ee14ffb3871bac317685032406cf02d1fa2b2dc11c8b643bfe4ba09195674d149d1e41752f14c0d000446b35e142f3ce60d987ba97082fd7ee39a094
2019-06-24Merge #16263: qt: Use qInfo() if no error occursfanquake
a2aabfb749198bce896c9e597082acd67d3b863e Use qInfo() if no error occurs (Hennadii Stepanov) Pull request description: [Warning and Debugging Messages](https://doc.qt.io/qt-5/debug.html#warning-and-debugging-messages): > - `qInfo()` is used for informational messages. > - `qWarning()` is used to report warnings and recoverable errors in your application. > > If the `QT_FATAL_WARNINGS` environment variable is set, `qWarning()` exits after printing the warning message. This makes it easy to obtain a backtrace in the debugger. [`qWarning()`](https://doc.qt.io/qt-5/qtglobal.html#qWarning): > Calls the message handler with the warning message message... This function does nothing if `QT_NO_WARNING_OUTPUT` was defined during compilation; it exits if at the nth warning corresponding to the counter in environment variable `QT_FATAL_WARNINGS`. This PR allows more productive debugging using the environment variable `QT_FATAL_WARNINGS`. Examples: - https://github.com/bitcoin/bitcoin/pull/16118#issuecomment-503184695 - https://github.com/bitcoin/bitcoin/pull/16254#issuecomment-504223404 The behavior, when option `-debug=qt` is set/unset, remains unchanged. ACKs for commit a2aabf: promag: ACK a2aabfb, I also have this change locally. Empact: ACK https://github.com/bitcoin/bitcoin/pull/16263/commits/a2aabfb749198bce896c9e597082acd67d3b863e laanwj: ACK a2aabfb749198bce896c9e597082acd67d3b863e fanquake: ACK a2aabfb749198bce896c9e597082acd67d3b863e. Tree-SHA512: b4df300c9c00a1705b0d3a10227e3deaac19a98b0a898bb60d5a88872cf450fb131eba150d9dd6c29e021566ee04b3b86b7d486bbe28bd894743c128d2309155
2019-06-23Merge #16231: gui: Fix open wallet menu initialization orderfanquake
5224be5a3354e1a22ea4d7f0e40aadfccdf67064 gui: Fix open wallet menu initialization order (João Barbosa) Pull request description: Fixes #16230, the menu must be created before connecting to aboutToShow signal. ACKs for commit 5224be: hebasto: ACK 5224be5a3354e1a22ea4d7f0e40aadfccdf67064, I have tested the code on Bionic with Qt 5.12.4. ryanofsky: utACK 5224be5a3354e1a22ea4d7f0e40aadfccdf67064. Looks good, fix is simple and makes perfect sense after seeing explanation in https://github.com/bitcoin/bitcoin/pull/16118#issuecomment-503166407. Without this change (and since #16118), the menu pointer passed to `connect(m_open_wallet_action->menu(), ...)` is null and connecting has no effect. With this change, the menu is constructed earlier so the connect call can work. fanquake: ACK 5224be5a3354e1a22ea4d7f0e40aadfccdf67064 Testing included in a comment above. The segfaulting with QT_FATAL_WARNINGS is unrelated to this change. Tree-SHA512: 97b42493b37b96683058bccf39a0ee93589293d4ba8f0c60aef7f4fb9dd084cc6d5608cd5ef531cadf5e03b1f01627ef96bc2d79f784fb38cb87aa6643183d41
2019-06-22Merge #16239: wallet/rpc: follow-up clean-up/fixes to avoid_reuseMeshCollider
71d0344cf25d3aaf60112c5248198c444bc98105 docs: release note wording (Karl-Johan Alm) 3d2ff379131a01e4e9f9648b150e806104a23795 wallet/rpc: use static help text (Karl-Johan Alm) 53c3c1ea9e20f881c843a9219e48cec202e962f8 wallet/rpc/getbalances: add entry for 'mine.used' balance in results (Karl-Johan Alm) Pull request description: This addresses a few remaining issues pointed out in #13756: * First commit addresses https://github.com/bitcoin/bitcoin/pull/13756#discussion_r284907468 * Second commit addresses https://github.com/bitcoin/bitcoin/pull/13756#discussion_r294868973 Ping jnewbery and achow101 as they pointed out these issues. ACKs for commit 71d034: jnewbery: ACK 71d0344cf25d3aaf60112c5248198c444bc98105 meshcollider: re-utACK https://github.com/bitcoin/bitcoin/pull/16239/commits/71d0344cf25d3aaf60112c5248198c444bc98105 Tree-SHA512: 5e28822af0574ad07dbbed21aa2fe7866bf5770b4c0a1c150ad0da8af3152bcfb7170330a7497fa500326c594740ecf63733cf58325821e2811d7b911d5783a0
2019-06-22docs: release note wordingKarl-Johan Alm
2019-06-22wallet/rpc: use static help textKarl-Johan Alm
Always show the same help topic regardless of wallet flags, and explain that something is not always available, rather than runtime-modifying the help output.
2019-06-22wallet/rpc/getbalances: add entry for 'mine.used' balance in resultsKarl-Johan Alm
2019-06-21Use qInfo() if no error occursHennadii Stepanov
qWarning() is used to report warnings and recoverable errors in your application. qInfo() is used for informational messages (since Qt 5.5).
2019-06-21Merge #16256: doc: remove orphaned header in developer notesfanquake
5a88ea7c67448748a63ac7963c70a047a5daca79 doc: remove orphaned header in developer notes (Jon Atack) Pull request description: The "Git and GitHub tips" section was moved from doc/developer-notes.md to doc/productivity.md in 5b76c31, but the header link to that long-gone section in the developer notes remains and needs to go. So long, Git and GitHub tips, we barely knew ya. ACKs for commit 5a88ea: fanquake: ACK 5a88ea7c67448748a63ac7963c70a047a5daca79 Tree-SHA512: d2a0bea27cd9209adec2127fae5e336c44771aa46af7c544fa2c80a3df4868adafbccc30ef370369404b882fa009f7198cbf41777afd30eccf0c21a7eb1d0ad1
2019-06-21Merge #16226: Move ismine to the wallet moduleMeshCollider
e61de6306fd89fe9aae90253062e7b1b20343f8a Change ismine to take a CWallet instead of CKeyStore (Andrew Chow) 7c611e20007bf5face34d33dffa26c8db67e29ec Move ismine to wallet module (Andrew Chow) Pull request description: `IsMine` isn't used outside of the wallet except for the tests. It also doesn't make sense to be outside of the wallet. This PR moves `IsMine` into the wallet module and for it to take a `CWallet` instead of `CKeyStore`. The test that used `IsMine` is also moved to the wallet tests. This is first [prerequisites](https://github.com/bitcoin-core/bitcoin-devwiki/wiki/Wallet-Class-Structure-Changes#ismine) for the wallet structure changes. ACKs for commit e61de6: MarcoFalke: re-ACK e61de6306f (only change is rebase with git auto-merge) meshcollider: Very light code review ACK https://github.com/bitcoin/bitcoin/pull/16226/commits/e61de6306fd89fe9aae90253062e7b1b20343f8a Tree-SHA512: 1cb4ad12652aef7922ab7460c6d413e8b9d1855dca78c0a286ae49d5c0765bc7996c55f262c742001d434eb9bd4215dc2cc7aae1b371ee1a82d46b32c17e6341
2019-06-21Merge #16026: Ensure that uncompressed public keys in a multisig always ↵MeshCollider
returns a legacy address a49503402b6bc21e3878e151c07529941d36aed0 Make and get the multisig redeemscript and destination in one function instead of two (Andrew Chow) Pull request description: `CreateMultisigRedeemscript()` is changed to `AddAndGetMultisigDestination()` so that the process of constructing the redeemScript and then getting the `CTxDestination` are done in the same function. This allows that function to see what the keys in the multisig are so that the correct address type is returned from `AddAndGetDestinationForScript()`. This only effects the `createmultisig` and `addmultisigaddress` RPCs and does not change signing logic as #16022 does. Alternative to #16022 and #16012 Fixes #16011 ACKs for commit a49503: Tree-SHA512: 5b0154a714deea3b2cc3a54beb420c95eeeacf4ca30c40ca80940d9d640f8b03611b0fc14c2f0710bfd8a79e8d27ad7d9ae380b4b83d52b40ab201624f2a63f0
2019-06-20doc: remove orphaned header in developer notesJon Atack
The "Git and GitHub tips" section was moved from doc/developer-notes.md to doc/productivity.md in 5b76c31, but the header link to that long-gone section in the developer notes remains and needs to go. So long, Git and GitHub tips, we barely knew ya.
2019-06-20Merge #16246: MSVC: Fix error in debug mode (Fix #16245)MarcoFalke
eb832cd3b4 MSVC: Fix error in debug mode (Fix #16245) (nicolas.dorier) Pull request description: This fix a build error in Debug mode #16245 ACKs for commit eb832c: sipsorcery: tACK eb832cd3b46a0f9abff238dfa780e4e9df05fdb7 Tree-SHA512: 6d874afc4ffd8b033ca4eafa40d3bb259bed82b4ca09afa7ed05e3b47c11422503b2f75b91da017bfa9ffc6587fff492cdd76014477ed1d90df326b304d6a77c
2019-06-20Merge #16207: test: stop generating lcov coverage when functional tests failMarcoFalke
9218ce8d48 Failing functional tests stop lcov (Aseem Sood) Pull request description: Fixes #15648 Functional tests can fail and lcov still generates a coverage file, which is inaccurate. This change stops `make` from proceeding if functional tests fail. before: ![image](https://user-images.githubusercontent.com/6106941/59449220-a9a11480-8dd4-11e9-9eff-81c42513aafa.png) after: ![image](https://user-images.githubusercontent.com/6106941/59449234-b160b900-8dd4-11e9-9d80-6e9c7f41c241.png) ACKs for commit 9218ce: laanwj: straightforward enough ACK 9218ce8d48e504aeaa983e82b206a386712e43e4 Tree-SHA512: 6bbba625f021471d897e911b0df7703153634ef133e295e7be8639346e11f5532bac04e9bab7d793e520fdf4b903219cacecc2ce1e25da0a6828a34a396729e2
2019-06-20Merge #16234: test: Add test for unknown argsMarcoFalke
fa7dd88b71 test: Add test for unknown args (MarcoFalke) Pull request description: Currently uncovered. Further reading: * https://marcofalke.github.io/btc_cov/total.coverage/src/util/system.cpp.gcov.html * Fail on unknown config file options #15021 ACKs for commit fa7dd8: promag: ACK fa7dd88b71a1c6641bd450fae29a4a31849b1afd, tests looks good to me. hebasto: ACK fa7dd88b71a1c6641bd450fae29a4a31849b1afd, I have tested the code. Tree-SHA512: 86ab370ce8e85925f945a52e81457b5678d71bbabcef01205a97782b780003f363552e0bad1ff678bccc784f82c6b511c3b88de3f8f25f62b0b713c387950564
2019-06-20Merge #15520: cirrus: Run extended test feature_pruningMarcoFalke
fa00326158 ci: Run extended tests (MarcoFalke) Pull request description: Currently not run in this repo, but in https://cirrus-ci.com/github/MarcoFalke/bitcoin https://cirrus-ci.com/github/MarcoFalke/bitcoin/1903-ciExt ACKs for commit fa0032: Tree-SHA512: e74b21084fe88dacedc5806d083c4273847fd75b202d5d829ea10e05ca94ebfe769d0e94a9b8779da4973be0e640d7b0e0bea44954006a2efe97969d118da3e4
2019-06-20ci: Run extended testsMarcoFalke
2019-06-20Set AA_EnableHighDpiScaling attribute earlyHennadii Stepanov
Qt docs: This attribute must be set before QGuiApplication is constructed.
2019-06-20test: Log to debug.log in all testsMarcoFalke
2019-06-20Make and get the multisig redeemscript and destination in one function ↵Andrew Chow
instead of two Instead of creating a redeemScript with CreateMultisigRedeemscript and then getting the destination with AddAndGetDestinationForScript, do both in the same function. CreateMultisigRedeemscript is changed to AddAndGetMultisigDestination. It creates the redeemScript and returns it via an output parameter. Then it calls AddAndGetDestinationForScript to add the destination to the keystore and get the proper destination. This allows us to inspect the public keys in the redeemScript before creating the destination so that the correct destination is used when uncompressed pubkeys are in the multisig.
2019-06-20net: Document what happens to getdata of unknonw typeMarcoFalke
2019-06-20test: use common setup in gui testsMarcoFalke
2019-06-20test: Create data dir in BasicTestingSetupMarcoFalke
2019-06-20MSVC: Fix error in debug mode (Fix #16245)nicolas.dorier
2019-06-19Change ismine to take a CWallet instead of CKeyStoreAndrew Chow
2019-06-19Move ismine to wallet moduleAndrew Chow
2019-06-19Merge #16243: doc: Remove travis badge from readmeMarcoFalke
e91f0a7af2 doc: Remove travis badge from readme (MarcoFalke) Pull request description: The readme(s) are shipped in the released source-code archive, in which case the travis badge is useless since it doesn't link to the travis result of the correct commit/tag/branch. GitHub embeds the correct links for each tag or commit that ci ran on, so we don't need this link in the readme. ACKs for commit e91f0a: hebasto: ACK e91f0a7af2aec7d924f00da25c69d8f46e0dd33d Tree-SHA512: 860435a58b38a9bd0bc62a1e74b3a63c138c9a2f09008a090d5ecc7fd86fa908d2e5eda41d16606507a238d9488fa5323405364a9556b670684a2e4838aead2d
2019-06-19Merge #16241: docs: add rapidcheck to vcpkg install listMarcoFalke
4971be76a7 docs: add rapidcheck to vcpkg install list (fanquake) Pull request description: Setting up a fresh Windows 10 VM using [this guide](https://github.com/fanquake/core-review/blob/master/windows.md), installing `rapidcheck` and building using the changes in #16235 resulted in a working `bitcoind` and all tests passing. ACKs for commit 4971be: Tree-SHA512: d0cb2d1d6ac5cdecf77c21f9b05e8803266511dbd06cb644352a229d101c7bf63f8022822852877371cce83c414275a850eb9ab6876a61c2fd1061627b7223f7
2019-06-19Make AbortNode() aware of MSG_NOPREFIX flagHennadii Stepanov
2019-06-19Add MSG_NOPREFIX flag for user messagesHennadii Stepanov
It forces do not prepend error/warning prefix.
2019-06-19Prepend the error/warning prefix for GUI messagesHennadii Stepanov
2019-06-19doc: Remove travis badge from readmeMarcoFalke
2019-06-19Merge #16235: build: Cleaned up and consolidated msbuild files (no code changes)MarcoFalke
750d1bc7df Cleaned up and consolidated msvc build files to allow faster builds and easier migration to vs2019. (Aaron Clauson) Pull request description: This PR does the following: - Big cleanup of the msbuild project files and consolidation of common build parameters into a single common include, - Gets ready for switch to building with Visual Studio 2019 and Platform Toolset v142, - Will allow me to rebase #15529 to include the Qt Projects in the msbuild config. ACKs for commit 750d1b: fanquake: ACK 750d1bc7df5ec6505a8fb92dabface887c23817c NicolasDorier: tACK 750d1bc . Good to see the boilerplate go away. Tree-SHA512: 15b2c3e095037d2b927aecf81593be6b6963a944c40d8c6b270cd0a2e1f8b67347bf6a4676a15d7ba1831a60f4ee4e6a405611e1ff5a27aa4888b2f857eef22b
2019-06-19docs: add rapidcheck to vcpkg install listfanquake
2019-06-19Cleaned up and consolidated msvc build files to allow faster builds and ↵Aaron Clauson
easier migration to vs2019.
2019-06-19Merge #13756: wallet: "avoid_reuse" wallet flag for improved privacyMeshCollider
5ebc6b0eb267e0552c66fffc5e5afe7df8becf80 bitcoind: update -avoidpartialspends description to account for auto-enable for avoid_reuse wallets (Karl-Johan Alm) ada258f8c8f92d44d893cf9f22d15acdeca40b1a doc: release notes for avoid_reuse (Karl-Johan Alm) 27669551da52099e4a6a401acd7aa32b32832423 wallet: enable avoid_partial_spends by default if avoid_reuse is set (Karl-Johan Alm) 8f2e208f7c0468f9ba92bc789a698281b1c81284 test: add test for avoidreuse feature (Karl-Johan Alm) 0bdfbd34cf4015de87741ff549db35e5064f4e16 wallet/rpc: add 'avoid_reuse' option to RPC commands (Karl-Johan Alm) f904723e0d5883309cb0dd14b826bc45c5e776fb wallet/rpc: add setwalletflag RPC and MUTABLE_WALLET_FLAGS (Karl-Johan Alm) 8247a0da3a46d7c38943ee0304343ab7465305bd wallet: enable avoid_reuse feature (Karl-Johan Alm) eec15662fad917b169f5e3b8baaf4301dcf00a7b wallet: avoid reuse flags (Karl-Johan Alm) 58928098c299efdc7c5ddf2dc20716ca5272f21b wallet: make IsWalletFlagSet() const (Karl-Johan Alm) 129a5bafd9a3efa2fa16d780885048a06566d262 wallet: rename g_known_wallet_flags constant to KNOWN_WALLET_FLAGS (Karl-Johan Alm) Pull request description: Add a new wallet flag called `avoid_reuse` which, when enabled, will keep track of when a specific destination has been spent from, and will actively "blacklist" any new UTXOs which send to an already-spent-from destination. This improves privacy, as a payer could otherwise begin tracking a payee's wallet by regularly peppering a known UTXO with dust outputs, which would then be scooped up and used in payments by the payee, allowing the payer to map out (1) the inputs owned by the payee and (2) the destinations to which the payee is making payments. This replaces #10386 and together with the (now merged) #12257 it addresses #10065 in full. The concerns raised in https://github.com/bitcoin/bitcoin/pull/10386#issuecomment-302361381 are also addressed due to #12257. ~~Note: this builds on top of #15780.~~ (merged) ACKs for commit 5ebc6b: jnewbery: ACK 5ebc6b0eb laanwj: Concept and code-review ACK 5ebc6b0eb267e0552c66fffc5e5afe7df8becf80 meshcollider: Code review ACK https://github.com/bitcoin/bitcoin/pull/13756/commits/5ebc6b0eb267e0552c66fffc5e5afe7df8becf80 achow101: ACK 5ebc6b0eb267e0552c66fffc5e5afe7df8becf80 modulo above nits Tree-SHA512: fdef45826af544cbbb45634ac367852cc467ec87081d86d08b53ca849e588617e9a0a255b7e7bb28692d15332de58d6c3d274ac003355220e4213d7d9070742e
2019-06-18Merge #16236: fuzz: Log output even if fuzzer failedMarcoFalke
fa410f67aa test: Suppress false positive leak in secure_allocator<RNGState> (MarcoFalke) fa35c4239f test: Log output even if fuzzer failed (MarcoFalke) Pull request description: Also suppress a false positive detected leak ACKs for commit fa410f: practicalswift: utACK fa410f67aa1d0ccd306dc16e438c1a034b8cc049 Tree-SHA512: 224a72ae0dd9bbe7debda17cd626c01cfbd0e45d7df47a2b591ce8ea386951ad94f4c0677dd268079a4caac382c5acac03199146015a95c308a633e9e4f84c09
2019-06-18test: Suppress false positive leak in secure_allocator<RNGState>MarcoFalke
2019-06-18test: Log output even if fuzzer failedMarcoFalke
2019-06-18Merge #16092: Don't use global (external) symbols for symbols that are used ↵MarcoFalke
in only one translation unit 0959d37e3e Don't use global (external) symbols for symbols that are used in only one translation unit (practicalswift) Pull request description: Don't use global (external) symbols for symbols that are used in only one translation unit. Before: ``` $ for SYMBOL in $(nm src/bitcoind | grep -E ' [BD] ' | c++filt | cut -f3- -d' ' | grep -v @ | grep -v : | sort | grep '[a-z]' | sort -u | grep -vE '(^_|typeinfo|vtable)'); do REFERENCES=$(git grep -lE "([^a-zA-Z]|^)${SYMBOL}([^a-zA-Z]|\$)" -- "*.cpp" "*.h") N_REFERENCES=$(wc -l <<< "${REFERENCES}") if [[ ${N_REFERENCES} > 1 ]]; then continue fi echo "Global symbol ${SYMBOL} is used in only one translation unit: ${REFERENCES}" done Global symbol g_chainstate is used in only one translation unit: src/validation.cpp Global symbol g_ui_signals is used in only one translation unit: src/ui_interface.cpp Global symbol instance_of_cmaincleanup is used in only one translation unit: src/validation.cpp Global symbol instance_of_cnetcleanup is used in only one translation unit: src/net.cpp Global symbol instance_of_cnetprocessingcleanup is used in only one translation unit: src/net_processing.cpp Global symbol pindexBestForkBase is used in only one translation unit: src/validation.cpp Global symbol pindexBestForkTip is used in only one translation unit: src/validation.cpp $ ``` After: ``` $ for SYMBOL in $(nm src/bitcoind | grep -E ' [BD] ' | c++filt | cut -f3- -d' ' | grep -v @ | grep -v : | sort | grep '[a-z]' | sort -u | grep -vE '(^_|typeinfo|vtable)'); do REFERENCES=$(git grep -lE "([^a-zA-Z]|^)${SYMBOL}([^a-zA-Z]|\$)" -- "*.cpp" "*.h") N_REFERENCES=$(wc -l <<< "${REFERENCES}") if [[ ${N_REFERENCES} > 1 ]]; then continue fi echo "Global symbol ${SYMBOL} is used in only one translation unit: ${REFERENCES}" done $ ``` ♻️ Think about future generations: save the global namespace from unnecessary pollution! ♻️ ACKs for commit 0959d3: Empact: ACK https://github.com/bitcoin/bitcoin/pull/16092/commits/0959d37e3e0f80010a78d175e3846dabf5d35919 MarcoFalke: ACK 0959d37e3e0f80010a78d175e3846dabf5d35919 hebasto: ACK 0959d37e3e0f80010a78d175e3846dabf5d35919 promag: ACK 0959d37. Tree-SHA512: 722f66bb50450f19b57e8a8fbe949f30cd651eb8564e5787cbb772a539bf3a288c048dc49e655fd73ece6a46f6dafade515ec4004729bf2b3ab83117b7c5d153
2019-06-18test: Add test for unknown argsMarcoFalke