aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-03-05[Depends] Fix Qt build with Xcode 9.2fanquake
2018-03-05Merge #12516: Avoid unintentional unsigned integer wraparounds in testsWladimir J. van der Laan
2736c9e05 Avoid unintentional unsigned integer wraparounds in tests (practicalswift) Pull request description: Avoid unintentional unsigned integer wraparounds in tests. This is a subset of #11535 as suggested by @MarcoFalke :-) Tree-SHA512: 4f4ee8a08870101a3f7451aefa77ae06aaf44e3c3b2f7555faa2b8a8503f97f34e34dffcf65154278f15767dc9823955f52d1aa7b39930b390e57cdf2b65e0f3
2018-03-05Merge #12466: depends: Only use D_DARWIN_C_SOURCE when building miniupnpc on ↵Wladimir J. van der Laan
darwin 992f56876 depends: Only use D_DARWIN_C_SOURCE when building miniupnpc on darwin (fanquake) Pull request description: Only use D_DARWIN_C_SOURCE when building on darwin, so we don't inadvertently introduce issues elsewhere. cc @theuni Tree-SHA512: e49a8456ba2b9925c06e62c73e139152b6d63cc5a4cee66944e41c863ca9103e98ac81a5718eceb3d0885a677fc53ece34062b02c304a05c3280e094965e856a
2018-03-05depends: Only use D_DARWIN_C_SOURCE when building miniupnpc on darwinfanquake
2018-03-05Merge #12527: gitian-build.sh: fix signProg being recognized as two parametersWladimir J. van der Laan
87c4320df gitian-build.sh: fix signProg being recognized as two parameters (Ken Lee) Pull request description: On current build script, `gpg --detach-sign` will be recognized as two parameters of gsign This PR fix it and can build successfully Tree-SHA512: 32e2f9e8414658ea4145bcbccd9aaa3cdf61ea648ad9328246bad67957e11a8e496afec71cbd888f8d0d49bd7eaed35c971fe2dac43b80ee6e664b90ffd997a3
2018-03-05Merge #12573: Fix compilation when compiler do not support __builtin_clz*Wladimir J. van der Laan
18307849b Consensus: Fix bug when compiler do not support __builtin_clz* (532479301) Pull request description: #ifdef is not correct since defination is defined to 0 or 1. Should change to #if Tree-SHA512: ba13a591d28f4d7d6ebaab081be4304c43766a611226f8d2994c8db415dfcf318e82217d26a8c4af290760c68eded9503b39535b0e6e079ded912e6a8fca5b36
2018-03-05Merge #12260: [Trivial] link mentioned scripted-diff-commit (developer-doc)Wladimir J. van der Laan
7eb665fc8 [Trivial] link mentioned scripted-diff-commit (Felix Wolfsteller) Pull request description: Make it easier for people who do not operate on a cloned repository to access the example mentioned. Tree-SHA512: 1c06e551c68cad03e6bd541bf0e0076cdf0b48ef9b8b4e4a61435367c3435e2e4ccb934112e8dc29d3d70217d8834924704aaf839e25d1133312df86848ca1a1
2018-03-05Merge #12452: docs: clarified systemd installation instructions in init.md ↵Wladimir J. van der Laan
for Ubuntu users. 4d14d06fc docs: clarified systemd installation instructions in init.md for Ubuntu users. (DaveFromBinary) Pull request description: Added a note to init.md to clarify the .service copy path for Ubuntu because it differs from the described copy path. Also noted which version of Ubuntu switched to systemd for the default system init to clarify when the systemd installation steps should be used instead of the upstart installation steps for Ubuntu users. Tree-SHA512: 1ac6143a177d0f3782ff641029d71eb1f3b3be0c1482e266154d3ca093251b58a10a5f037d1cc82dbfaeae058df2bb8e904833ccb88b032f1a59a151724f95e2
2018-03-05Merge #12434: [doc] dev-notes: Members should be initializedWladimir J. van der Laan
fa9461473 [doc] dev-notes: Members should be initialized (MarcoFalke) Pull request description: Also, remove mention of threads that were removed long ago. Motivation: Make it easier to spot bugs such as #11654 and #12426 Tree-SHA512: 8ca1cb54e830e9368803bd98a8b08c39bf2d46f079094ed7e070b32ae15a6e611ce98d7a614f897803309f4728575e6bc9357fab1157c53d2536417eb8271653
2018-03-05Merge #12475: qa: Fix python TypeError in script.pyWladimir J. van der Laan
fa41d68a2 qa: Fix python TypeError in script.py (MarcoFalke) Pull request description: `__repr__` returns string, so don't mix it with byte strings. This fixes ``` TypeError: %b requires a bytes-like object, or an object that implements __bytes__, not 'str' Tree-SHA512: fac06e083f245209bc8a36102217580b0f6186842f4e52a686225111b0b96ff93c301640ff5e7ddef6a5b4f1689071b16a9a8dc80f28e2b060ddee29edd24ec7
2018-03-05Merge #12580: Show a transaction's virtual size in its details dialogMarcoFalke
ee041196fc Show a transaction's virtual size in its details dialog. (Chris Moore) Pull request description: #12501 looks like it is going to mention transaction's "virtual size" in the custom fee tooltip, so let's display the virtual size when the user double-clicks a transaction. Tree-SHA512: c60ae23c9f86edfba086b840519941d8e8ee1be9da5987ffe6dee3255943ea5d215708ce57464f109a1d1c612c4c0eeb11f8f3e203d8a8cfc1f8ec753a8aac27
2018-03-05Merge #12543: Fix typosMarcoFalke
d918eb7864 Fix typos (practicalswift) Pull request description: Fix typos. Tree-SHA512: c790e49be6e01c8d70ebd872ef61cc210c1de15c4a1e5a98280169f32dc8a14cd68f4dd1c23afc76758b28ef355ab12ded2ff7504562dc9b69a11839ad3cd7e3
2018-03-03Merge #12582: Fix ListCoins test failure due to unset ↵MarcoFalke
g_wallet_allow_fallback_fee 7ba2d57852 Fix ListCoins test failure due to unset g_wallet_allow_fallback_fee (Russell Yanofsky) Pull request description: New global variable was introduced in #11882 and not setting it causes: ``` wallet/test/wallet_tests.cpp(638): error in "ListCoins": check wallet->CreateTransaction({recipient}, wtx, reservekey, fee, changePos, error, dummy) failed wallet/test/wallet_tests.cpp(679): error in "ListCoins": check list.begin()->second.size() == 2 failed [1 != 2] wallet/test/wallet_tests.cpp(686): error in "ListCoins": check available.size() == 2 failed [1 != 2] wallet/test/wallet_tests.cpp(705): error in "ListCoins": check list.begin()->second.size() == 2 failed [1 != 2] ``` It's possible to reproduce the failure reliably by running: ``` src/test/test_bitcoin --log_level=test_suite --run_test=wallet_tests/ListCoins ``` Failures happen nondeterministically because boost test framework doesn't run tests in a specified order, and tests that run previously can set the global variables and mask the bug. This is similar to bugs #12150 and #12424. Example travis failures are: https://travis-ci.org/bitcoin/bitcoin/jobs/348296805#L2676 https://travis-ci.org/bitcoin/bitcoin/jobs/348362560#L2769 https://travis-ci.org/bitcoin/bitcoin/jobs/348362563#L2824 Tree-SHA512: ca37b554a75c12ac2d534de62bf74eb9e0b29e4399ebf1fa10053a40887e55e9e7135f754a01e5a67499cc8677ae226542146b370b1e83d08bb63d79ff379073
2018-03-03Merge #12584: Fix typos and cleanup documentationMarcoFalke
a9761cae1c Fix typos and cleanup (Dimitris Apostolou) Pull request description: [ci-skip] Tree-SHA512: 6d7e02d8fdf6add702bbfe4439ace9c8621b45d21111abc69d85be9120347b06a029bc1885665547c1230ebc41da9d97210f6d1325b7692a4585356969ecb127
2018-03-02Fix typos and cleanupDimitris Apostolou
[ci-skip]
2018-03-02Fix ListCoins test failure due to unset g_wallet_allow_fallback_feeRussell Yanofsky
New global variables were introduced in #11882 and not setting them causes: wallet/test/wallet_tests.cpp(638): error in "ListCoins": check wallet->CreateTransaction({recipient}, wtx, reservekey, fee, changePos, error, dummy) failed wallet/test/wallet_tests.cpp(679): error in "ListCoins": check list.begin()->second.size() == 2 failed [1 != 2] wallet/test/wallet_tests.cpp(686): error in "ListCoins": check available.size() == 2 failed [1 != 2] wallet/test/wallet_tests.cpp(705): error in "ListCoins": check list.begin()->second.size() == 2 failed [1 != 2] It's possible to reproduce the failure reliably by running: src/test/test_bitcoin --log_level=test_suite --run_test=wallet_tests/ListCoins Failures happen nondeterministically because boost test framework doesn't run tests in a specified order, and tests that run previously can set the global variables and mask the bug.
2018-03-01Show a transaction's virtual size in its details dialog.Chris Moore
2018-03-01Merge #12182: Remove useless string initializationsWladimir J. van der Laan
19ac86e Remove useless string initialization. (Alin Rus) Pull request description: Tree-SHA512: 4273dd7e8ed083cc9d05fc70967465e405085b630c000f829648dd44dd0cfe2249f6af1498b02f54b4ca73833130b802488bae8eca0d4d0b803a6f0122b19e8f
2018-03-02gitian-build.sh: fix signProg being recognized as two parametersKen Lee
2018-03-01Merge #12546: [docs] Minor improvements to Compatibility NotesWladimir J. van der Laan
b22c289 [docs] Minor improvements to Compatibility Notes (Randolf Richardson) Pull request description: Progressed from Windows Vista to Windows 7 for OS testing statement. Tree-SHA512: b8027c3d284d6f7197b434f29fdff9da9b9b1daa2b05cd900eb6d216df4930d9cfa6280e23e9f493aa6bcc874cb32ea377034d64783f535986e8c069acf8319d
2018-03-01Merge #11882: Disable default fallbackfee on mainnetWladimir J. van der Laan
3f592b8 [QA] add wallet-rbf test (Jonas Schnelli) 8222e05 Disable wallet fallbackfee by default on mainnet (Jonas Schnelli) Pull request description: Removes the default fallback fee on mainnet (but keeps it on testnet/regtest). Transactions using the fallbackfee in case the fallback fee has not been set are getting rejected. Tree-SHA512: e54d2594b7f954e640cc513a18b0bfbe189f15e15bdeed4fe02b7677f939bca1731fef781b073127ffd4ce08a595fb118259b8826cdaa077ff7d5ae9495810db
2018-03-01Merge #10387: Eventually connect to NODE_NETWORK_LIMITED peersWladimir J. van der Laan
eb91835 Add setter for g_initial_block_download_completed (Jonas Schnelli) 3f56df5 [QA] add NODE_NETWORK_LIMITED address relay and sync test (Jonas Schnelli) 158e1a6 [QA] fix mininode CAddress ser/deser (Jonas Schnelli) fa999af [QA] Allow addrman loopback tests (add debug option -addrmantest) (Jonas Schnelli) 6fe57bd Connect to peers signaling NODE_NETWORK_LIMITED when out-of-IBD (Jonas Schnelli) 31c45a9 Accept addresses with NODE_NETWORK_LIMITED flag (Jonas Schnelli) Pull request description: Eventually connect to peers signalling NODE_NETWORK_LIMITED if we are out of IBD. Accept and relay NODE_NETWORK_LIMITED peers in addrman. Tree-SHA512: 8a238fc97f767f81cae1866d6cc061390f23a72af4a711d2f7158c77f876017986abb371d213d1c84019eef7be4ca951e8e6f83fda36769c4e1a1d763f787037
2018-03-01Merge #12570: Add test cases for HexStr (std::reverse_iterator and corner cases)Wladimir J. van der Laan
ac48861 Add tests for HexStr std::reverse_iterator cases (Kosta Zertsekel) 90eac8c Add tests for HexStr corner cases (Kosta Zertsekel) Pull request description: Tree-SHA512: 6298d6fdc344e67a9ea6dc74eadb04e68f4f49fc4511d4a8765cafce7eeb8603f96ebedd82c13811326bcaf1ee511946419b651ca411f711baca91bec51947d6
2018-03-01Merge #12421: [qt] navigate to transaction history page after sendWladimir J. van der Laan
e7d9fc5 [qt] navigate to transaction history page after send (Sjors Provoost) Pull request description: Before this change QT just remained on the Send tab, which I found confusing. Now it switches to the Transactions tab. This makes it more clear to the user that the send actually succeeded, and here they can monitor progress. Ideally I would like to highlight the transaction, e.g. by refactoring `TransactionView::focusTransaction(const QModelIndex &idx)` to accept a transaction hash, but I'm not sure how to do that. Tree-SHA512: 8aa93e03874de8434e18951f8aec47377814c0bcaf7eda4766fc41d5a4e32806346e12e4139e4d45468dfdf0b786f5a7faa393a31b8cd6c65ccac21fb3782c33
2018-03-01Merge #12549: Make prevector::resize() and other prevector operations much ↵Wladimir J. van der Laan
faster 5aad635 Use memset() to optimize prevector::resize() (Evan Klitzke) e46be25 Reduce redundant code of prevector and speed it up (Akio Nakamura) f0e7aa7 Add new prevector benchmarks. (Evan Klitzke) Pull request description: This branch optimizes various `prevector` operations, especially resizing vectors. While profiling the `loadblk` thread I noticed that a lot of time was being spent in `prevector::resize()` which led to this work. I have some data here indicating that it takes up **37%** of the time in `ReadBlockFromDisk()`: https://monad.io/readblockfromdisk.svg This branch improves things significantly. For trivial types, the new results for the prevector benchmark are: * `PrevectorClearTrivial` which tests `prevector::clear()` becomes 24.6x faster * `PrevectorDestructorTrivial` which tests `prevector::~prevector()` becomes 20.5x faster * `PrevectorResizeTrivial` which tests `prevector::resize()` becomes 20.3x faster Note that in practice it looks like the prevector is only used to contain `unsigned char` types, which is a trivial type. The benchmarks are testing a bit of an extreme case, but the changes here are motivated by the profiling data for `ReadBlockFromDisk()` I linked to above. The pull request here consists of a series of three commits: * The first adds new benchmarks but does not change the prevector code. * The second is from @AkioNak , and merges some prevector optimizations he submitted in #11988 * The third optimizes `prevector::resize()` to use `memset()` when the prevector contains trivially constructible types Tree-SHA512: 28f7cbb91a19f9f43b6a5942781d7eb2e3197389186b666f086b69df12bee37773140f765426d715bfb8ebff79cb27a5f1206d0325b54b4aa65598b50fb18368
2018-03-01[qt] navigate to transaction history page after sendSjors Provoost
The transaction will be selected. When sending to multiple destinations, all will be selected (thanks @promag).
2018-03-01Consensus: Fix bug when compiler do not support __builtin_clz*532479301
#ifdef is not correct since defination is defined to 0 or 1. Should change to #if
2018-03-01Add tests for HexStr std::reverse_iterator casesKosta Zertsekel
Signed-off-by: Kosta Zertsekel <zertsekel@gmail.com>
2018-03-01Add tests for HexStr corner casesKosta Zertsekel
Signed-off-by: Kosta Zertsekel <zertsekel@gmail.com>
2018-02-27Use memset() to optimize prevector::resize()Evan Klitzke
Further optimize prevector::resize() (which is called by a number of other prevector methods) to use memset to initialize memory when the prevector contains trivial types.
2018-02-27Reduce redundant code of prevector and speed it upAkio Nakamura
In prevector.h, the code which like item_ptr(size()) apears in the loop. Both item_ptr() and size() judge whether values are held directly or indirectly, but in most cases it is sufficient to make that judgement once outside the loop. This PR adds 2 private function fill() which has the loop to initialize by specified value (or iterator of the other prevector's element), but don't call item_ptr() in their loop. Other functions(assign(), constructor, operator=(), insert()) that has similar loop, call fill() instead of original loop. Also, resize() was changed like fill(), but it calls the default constructor for that element each time.
2018-02-27Add new prevector benchmarks.Evan Klitzke
This prepares for a series of two additional commits which optimize prevector performance.
2018-02-27Merge #12556: [Trivial] fix version typo in getpeerinfo RPC call helpWladimir J. van der Laan
d16bfaa fix version typo (Tamas Blummer) Pull request description: RPC getpeeerinfo help output uses non-existent protocol version 7001. Changed to 70001. Tree-SHA512: aea634d739b51bf26e3f871e8bf2bf812eb62a5d87008ead3ed27ec8bd9b753ad0a958eb21f580e505d7f2b36d60e5d9901dc8e0d25f34b7ef9533fddc898844
2018-02-27fix version typoTamas Blummer
2018-02-27[docs] Minor improvements to Compatibility NotesRandolf Richardson
Progressed from Windows Vista to Windows 7 for OS testing statement.
2018-02-26Fix typospracticalswift
2018-02-26Merge #12083: Improve getchaintxstats test coverageWladimir J. van der Laan
57e6786 qa: Improve getchaintxstats functional test (João Barbosa) 501b439 rpc: Refactor blockhash parse in getchaintxstats (João Barbosa) Pull request description: Tree-SHA512: 61dec5cb68122998df7ec7b5239830f3caf0fe7185c107a66f27653ab2531a800db19a09050671b6fa8dbb5b53181da861eb31199c79d8635f246ccfa0d10efd
2018-02-26doc: Add historical release notes for 0.16.0Wladimir J. van der Laan
Tree-SHA512: 4c33c9c85bf31aa7c73b09ba9f2295eec477adc90934e51323ed50228be0dde9341a2d99ccf7adb184060fe2293533436bccfdbdfe5a30efcd61127ebb5359b8
2018-02-25[QA] add wallet-rbf testJonas Schnelli
2018-02-25Disable wallet fallbackfee by default on mainnetJonas Schnelli
2018-02-25Merge #12287: Optimise lock behaviour for GuessVerificationProgress()Jonas Schnelli
90ba2df11 Fix missing cs_main lock for GuessVerificationProgress() (Jonas Schnelli) Pull request description: `GuessVerificationProgress()` needs `cs_main` due to accessing the `pindex->nChainTx`. This adds a `AssertLockHeld` in `GuessVerificationProgress()` and adds the missing locks in... * `LoadChainTip()` * `ScanForWalletTransactions()` (got missed in #11281) * GUI, `ClientModel::getVerificationProgress()` <--- **this may have GUI performance impacts**, but could be relaxed later with a cache or something more efficient. Tree-SHA512: 13302946571422375f32af8e396b9d2c1180f2693ea363aeba9e98c8266ddec64fe7862bfdcbb5a93a4b12165a61eec1e51e4e7d7a8515fa50879095dc163412
2018-02-23Merge #12443: qa: Move common args to bitcoin.confMarcoFalke
face7220b7 qa: Move common args to bitcoin.conf (MarcoFalke) Pull request description: Beside removing duplicates of the same args in the code, this actually helps with debugging after a test failure. For example, `bitcoin-qt` has `server` turned off, so you'd have to turn it on every time, if you wanted to debug a temporary test datadir created by the test framework. Also, `keypool` would fill up if you forget to specify `-keypool=1`. Tree-SHA512: 996bec8738dc0fce7297ab1fc5b4fbe3aa31b9b6241f8c4e685db728925363ccaca6145ad1edc6bee2f360e02ac4b9a53fcdff74eb79de90793393742d52b559
2018-02-23Merge #12477: test: Plug memory leaks and stack-use-after-scopeWladimir J. van der Laan
fadb39c test: Plug memory leaks and stack-use-after-scope (MarcoFalke) Pull request description: Tree-SHA512: 7bd6bbba43c7870bbd9732d73ecfc520f21701168e6fb4ad099a08ea5b21d9cd09215e70d22fb92a1af03993204ef89ad74b3e80d9fa5a10831c3e7cf2dd04cd
2018-02-23Merge #12474: [depends] Allow depends system to support armv7lWladimir J. van der Laan
ac91ea6 [depends] Allow depends system to support armv7l (Henrik Jonsson) Pull request description: Credit for the actual patches goes to @theuni, I just tested them on an armv7l machine. This change allows the depends system to build our dependencies on 32-bit ARM / armv7l architecture. I.e. with this patch, the following steps now builds fine: ``` $ uname -m armv7l $ ./autogen.sh $ cd depends && make NO_QT=1 && cd .. $ ./configure --prefix=$(pwd)/depends/armv7l-unknown-linux-gnueabihf $ make ``` Without this patch, the `cd depends && make NO_QT=1` command fails on armv7l. Tree-SHA512: 1a81be2f1346e0e7080e83a991d9851f0371438262a34580eda5f43ebd220a3ce1ed0d783c43a0a8aed18082bbb1afc91e5c9bf3f4a36eecc82b6a9b6eff5e4c
2018-02-23Merge #12486: [test] Round target fee to 8 decimals in assert_fee_amountWladimir J. van der Laan
42e1b5d [test] Round target fee to 8 decimals in assert_fee_amount (Karl-Johan Alm) Pull request description: The output would produce arbitrary number of decimal points, sometimes resulting in 9 decimals: ``` AssertionError: Fee of 0.00000415 BTC too low! (Should be 0.000006175 BTC) ``` The above looks like the expected fee is 6175 sats when in reality it's 618. Tree-SHA512: ddbff2926a88890d6e34a58db36f0b15a917a80064be6e40e9bcbec3f05ae6202d02adcd7873733945b043fa121d4a56dd930446ec368078fe1935cbfff898ce
2018-02-23Avoid unintentional unsigned integer wraparounds in testspracticalswift
2018-02-22test: Plug memory leaks and stack-use-after-scopeMarcoFalke
2018-02-22Merge #12451: Bump leveldb subtreeWladimir J. van der Laan
835a21b Squashed 'src/leveldb/' changes from c521b3ac65..64052c76c5 (MarcoFalke) Pull request description: Pull in changes from https://github.com/bitcoin/bitcoin/pull/11674#issuecomment-348174674. Merges cleanly into master and 0.16 branch. Tree-SHA512: 819c042c0dfac8dc3078fc182c1e22d4a85b343967475d3389be5b5b056361114d8c9892437cd1dc4b45808c27880c0e166e047afc2c2bd2bbc33e55336a8c33
2018-02-22Merge #12487: init: Remove translation for `-blockmaxsize` option helpWladimir J. van der Laan
d2ee6e3 init: Remove translation for `-blockmaxsize` option help (Wladimir J. van der Laan) Pull request description: Move `-blockmaxsize`, a deprecated option which is replaced by `-blockmaxweight`, to debug options and remove the translation. This message is absolutely terrible for translators (esp the `* 4` part). (for 0.17 we should probably remove this option completely?) (reported by French Language Coordinator) Tree-SHA512: 379150c9217672d2f2f93b4c02a3ac638e77ca56fb518e30c56c46d59f89eac422b4f540e70a9abd3c6ad653ac4b786d4734621b18f93804885d81e223f1a908
2018-02-21Merge #12503: [RPC] createmultisig no longer takes addressesMarcoFalke
e4c924c517 createmultisig no longer takes addresses (Gregory Sanders) Pull request description: Tree-SHA512: a6a752ef2282c5c893dd1a6ff5ccab42d3de1989847af627d82d41605ea19abc0aaf68567a62b6478933ba7eea09f911087b410ba7d3a815331ef15ec1ff9df0