aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2019-10-08Fix bug where duplicate PSBT keys are acceptedJohn L. Jegutanis
As per the BIP 174 spec a PSBT key cannot be duplicated, however the current code accepts key duplication. The PSBT key/value entries can be duplicated when the value is `empty()` or `IsNull()` for `CScript` or `CTxOut` respectively and if those key/value entries are serialized before the non-empty ones. For example, the following PSBT, included in the test vectors, contains a duplicate field: ``` // magic 70736274ff // global tx //// key 0100 //// value 2a02000000000140420f000000000017a9146e91b72d5593e7d4391e2ff44e91e985c31641f08700000000 //// separator 00 // no inputs // outputs //// key PSBT_OUT_WITNESSSCRIPT 0101 //// value (empty script) 00 //// key PSBT_OUT_WITNESSSCRIPT (same as the above) 0101 //// value (an OP_RETURN script) 016a //// separator 00 ```
2019-10-07tests: Pass fuzzing inputs as constant referencespracticalswift
2019-10-04Merge #16507: feefilter: Compute the absolute fee rather than stored ratefanquake
eb7b78165966f2c79da71b993c4c4d793e37297f modify p2p_feefilter test to catch rounding error (Gregory Sanders) 6a51f7951716d6d6fc0f9b56028f3a0dd02b61c8 Disallow implicit conversion for CFeeRate constructor (Gregory Sanders) 8e59af55aaf1b196575084bce2448af02d97d745 feefilter: Compute the absolute fee rather than stored rate to match mempool acceptance logic (Gregory Sanders) Pull request description: This means we will use the rounding-down behavior in `GetFee` to match both mempool acceptance and wallet logic, with minimal changes. Fixes https://github.com/bitcoin/bitcoin/issues/16499 Replacement PR for https://github.com/bitcoin/bitcoin/pull/16500 ACKs for top commit: ajtowns: ACK eb7b78165966f2c79da71b993c4c4d793e37297f code review only naumenkogs: utACK eb7b78165966f2c79da71b993c4c4d793e37297f achow101: re ACK eb7b78165966f2c79da71b993c4c4d793e37297f promag: ACK eb7b78165966f2c79da71b993c4c4d793e37297f. Tree-SHA512: 484a11c8f0e825f0c983b1f7e71cf6252b1bba6858194abfe4c088da3bae8a418ec539ef6c4181bf30940e277a95c08d493595d59dfcc6ddf77c65b05563dd7e
2019-10-04Merge #17031: gui: Prevent processing duplicate payment requestsfanquake
3f89e1eb237efcbd6415ca2cd0acddb6596153d7 Prevent processing duplicate payment requests (João Barbosa) Pull request description: Considering the following from Qt [src/plugins/platforms/cocoa/qcocoaapplicationdelegate.mm#L267](https://github.com/qt/qtbase/blob/13e0a36626bd75e631dd9536e795a494432b1945/src/plugins/platforms/cocoa/qcocoaapplicationdelegate.mm#L267) ```cpp - (void)application:(NSApplication *)sender openFiles:(NSArray *)filenames { Q_UNUSED(filenames); Q_UNUSED(sender); for (NSString *fileName in filenames) { QString qtFileName = QString::fromNSString(fileName); if (inLaunch) { // We need to be careful because Cocoa will be nice enough to take // command line arguments and send them to us as events. Given the history // of Qt Applications, this will result in behavior people don't want, as // they might be doing the opening themselves with the command line parsing. if (qApp->arguments().contains(qtFileName)) continue; } QWindowSystemInterface::handleFileOpenEvent(qtFileName); } ``` And that a2714a5c69f0b0506689af04c3e785f71ee0915d was merged, now Qt isn't able to filter out the above notifications, and then a [QFileOpenEvent](https://doc.qt.io/qt-5/qfileopenevent.html) event is delivered to `PaymentServer::eventFilter`, which in turn (re)adds the payment request. This change fixes #17025, but makes sense regardless of the issue. ACKs for top commit: laanwj: Nah, this seems fine, utACK 3f89e1eb237efcbd6415ca2cd0acddb6596153d7 Sjors: ACK 3f89e1e on macOS 10.14.6 achow101: Code review ACK 3f89e1eb237efcbd6415ca2cd0acddb6596153d7 Tree-SHA512: dd1e0c73fd84953418173ca71f6f5a67ad74a5dc7e3b1d54915ef0545f513df6a24f27242a77bb094e2833a478e2f3bf30ecd50251f3c55b65e780097cb8ab4d
2019-10-03Merge #17038: Don't rename main thread at process levelWladimir J. van der Laan
07e4bdba3bd46c3a15dedb0a2660453c300643dc Don't rename main thread at process level (Wladimir J. van der Laan) Pull request description: Set only the internal name for the main threads. Fixes #17036 for both `bitcoind` and `bitcoin-qt`. After this, e.g. `killall` works again for either. ACKs for top commit: promag: Tested ACK 07e4bdba3bd46c3a15dedb0a2660453c300643dc, `killall bitcoind` and `killall bitcoin-qt` now just works! jonatack: ACK 07e4bdba3bd46c3a15dedb0a2660453c300643dc `killall bitcoind` shuts down bitcoind mainnet/testnet/regtest, `killall bitcoin-qt` shuts down `./src/qt/bitcoin-qt`, tests pass, very light code review. Good idea to add the `@note` warning. Thanks! Tree-SHA512: 8f310ae646c83a02de7cc6869aa9aca1d53613d8fb762d05e3dfa52e17ca82abeb99044564cf7ba45b3c4b320e65bf8315d0e8834a9e696f097be5af638c6fd9
2019-10-03Disallow implicit conversion for CFeeRate constructorGregory Sanders
2019-10-03feefilter: Compute the absolute fee rather than stored rate to match mempool ↵Gregory Sanders
acceptance logic
2019-10-03Don't rename main thread at process levelWladimir J. van der Laan
Set only the internal name. Fixes #17036 for both `bitcoind` and `bitcoin-qt`.
2019-10-02Prevent processing duplicate payment requestsJoão Barbosa
2019-10-02Merge #16524: Wallet: Disable -fallbackfee by defaultMarcoFalke
ea4cc3a7b36a9c77dbf0aff439da3ef0ea58e6e4 Truly decouple wallet from chainparams for -fallbackfee (Jorge Timón) Pull request description: Before it was 0 by default for main and 20000 for test and regtest. Now it is 0 by default for all chains, thus there's no need to call Params(). Also now the default for main is properly documented. Suggestion for release notes: -fallbackfee was 0 (disabled) by default for the main chain, but 20000 by default for the test chains. Now it is 0 by default for all chains. Testnet and regtest users will have to add fallbackfee=20000 to their configuration if they weren't setting it and they want it to keep working like before. Should I propose them to the wiki for the release notes or only after merge? For more context, see https://github.com/bitcoin/bitcoin/pull/16402#issuecomment-515701042 ACKs for top commit: MarcoFalke: ACK ea4cc3a7b36a9c77dbf0aff439da3ef0ea58e6e4 Tree-SHA512: fdfaba5d813da4221e405e0988bef44f3856d10f897a94f9614386d14b7716f4326ab8a6646e26d41ef3f4fa61b936191e216b1b605e9ab0520b0657fc162e6c
2019-10-02Merge #13716: bitcoin-cli: -stdinwalletpassphrase and non-echo stdin passwordsWladimir J. van der Laan
50c4afa3c420f11329cffb091b62beeb96b39183 add newline after -stdin* (Karl-Johan Alm) 7f11fba2e3c7b1e00ffb98504cdcfc2ded9c09cf cli: add -stdinwalletpassphrase for (slightly more) secure CLI (Karl-Johan Alm) 0da503e9475fea5644168544668581796bf66334 add stdin helpers for password input support (Karl-Johan Alm) Pull request description: This PR * adds `-stdinwalletpassphrase` for use with `walletpasshprase(change)` * adds no-echo for passwords (`-stdinrpcpass` and above) It may not be ideal, but it's better than having to clear the screen whenever you unlock the wallet. ACKs for top commit: laanwj: code review ACK 50c4afa3c420f11329cffb091b62beeb96b39183 Tree-SHA512: 473db8a303ff360ffaa36ac81a2f82be2136fa82696df0bc4f33cb44033a3ae258b5aa5bbcc1f101f88ae9abe9598ed564ce52877ab139bd5d709833f5275ec6
2019-10-02Truly decouple wallet from chainparams for -fallbackfeeJorge Timón
Before it was 0 by default for main and 20000 for test and regtest. Now it is 0 by default for all chains, thus there's no need to call Params(). Also now the default for main is properly documented
2019-10-02Merge #16884: wallet: Change default address type to bech32Wladimir J. van der Laan
71d4eddf42eb5a15e434d2273f11d0a3942ef502 Add release note for bech32 by default in wallet (Gregory Sanders) b34f0180e39fc95d88596a987724b994707e2552 Revert "gui: Generate bech32 addresses by default (take 2, fixup)" (Gregory Sanders) f50785ab56c0c094960c7049cfe9209b101e2823 Change default address type to bech32 (Gregory Sanders) Pull request description: ACKs for top commit: MarcoFalke: re-ACK 71d4eddf42eb5a15e434d2273f11d0a3942ef502 (only change is restore mimick behavior) laanwj: ACK 71d4eddf42eb5a15e434d2273f11d0a3942ef502 Tree-SHA512: 3c49a1b51c49f3a762ad08985167ca1b89b0177ae20ab6d5883f1f74dde7a155921c1b855a842199bbf32f563c56b33f8b603bc842637bdcb121001023d454b6
2019-10-02Merge #16908: txmempool: Make entry time type-safe (std::chrono)Wladimir J. van der Laan
faec689bed7a5b66e2a7675853d10205b933cec8 txmempool: Make entry time type-safe (std::chrono) (MarcoFalke) faaa1f01daba94b021ca77515266a16d27f0364e util: Add count_seconds time helper (MarcoFalke) 1111170f2f0141084b5b4ed565b2f07eba48599a test: mempool entry time is persisted (MarcoFalke) Pull request description: This changes the type of the entry time of txs into the mempool from `int64_t` to `std::chrono::seconds`. The benefits: * Documents the type for developers * Type violations result in compile errors * After compilation, the two are equivalent (at no run time cost) ACKs for top commit: ajtowns: utACK faec689bed7a5b66e2a7675853d10205b933cec8 laanwj: ACK faec689bed7a5b66e2a7675853d10205b933cec8 Tree-SHA512: d958e058755d1a1d54cef536a8b30a11cc502b7df0d6ecf84a0ab1d38bc8105a67668a99cd5087a444f6de2421238111c5fca133cdf8e2e2273cb12cb6957845
2019-10-02Merge #16964: gui: Change sendcoins dialogue Yes to SendMarcoFalke
a649cc6a17b8d8d602c6b67037b0c926960f9cdb Change sendcoins dialogue Yes to Send (Gregory Sanders) Pull request description: It's more self-explanatory, matches "cancel" better, and makes future extensions such as https://github.com/bitcoin/bitcoin/pull/16944 more directly understandable to the user. ACKs for top commit: Sjors: Trivial code review ACK a649cc6. I also used Send in #16966 (`ui - make send a wizard`) laanwj: ACK a649cc6a17b8d8d602c6b67037b0c926960f9cdb jonatack: Code review ACK a649cc6a17b8d8d602c6b67037b0c926960f9cdb Tree-SHA512: fe4993bc7ac653d28f3d399ade046bcfd405511aec06ff041bb5aef47e0736faf3e3112a6db660cd761af56392dc6b97f2c2341ed3eff4490079c5eb8a0d465a
2019-10-02Merge #16727: wallet: Explicit feerate for bumpfeeWladimir J. van der Laan
c812aba3949b6ab81030dc708cda7c8821be2f70 test bumpfee fee_rate argument (ezegom) 9f25de3d9eb8d012ca1a98cbcd28021e3e1c85ee rpc bumpfee check fee_rate argument (ezegom) 88e5f997dfab3f03bb1ec3f149eaff8dcc2981fe rpc bumpfee: add fee_rate argument (ezegom) 1a4c791cf49ff15aa9deba4388c0180b8f47f15b rpc bumpfee: move feerate estimation logic into separate method (ezegom) Pull request description: Taking over for https://github.com/bitcoin/bitcoin/pull/16492 which seems to have gone inactive. Only minor commit cleanups, rebase, and some help text fixes on top of previous PR. Renamed `feeRate` to `fee_rate` to reflect updated guidelines. ACKs for top commit: Sjors: Code review ACK c812aba laanwj: ACK c812aba3949b6ab81030dc708cda7c8821be2f70 Tree-SHA512: 5f7f51bd780a573ccef1ccd72b0faf3e5d143f6551060a667560c5163f7d9480e17e73775d1d7bcac0463f3b6b4328f0cff7b27e39483bddc42a530f4583ce30
2019-10-02Merge #16952: gui: make sure to update the UI when deleting a transactionWladimir J. van der Laan
addaf8af8268d918973883a304025d40af5a33c1 make sure to update the UI when deleting a transaction (Jonas Schnelli) Pull request description: `CWallet::ZapSelectTx` removes transactions from the internal model, but leaves the UI in the dark. Adding a `NotifyTransactionChanged()` should avoid having invalid transactions in the GUI. Fixes #16950 ACKs for top commit: fanquake: ACK addaf8af8268d918973883a304025d40af5a33c1 - tested that this fixes #16950 Sjors: tACK addaf8a: tested with an unpruned wallet by calling `removeprunedfunds` on an RBF-replaced transaction. It neatly disappears from the UI. kristapsk: ACK addaf8af8268d918973883a304025d40af5a33c1 (tested both with and without this change) Tree-SHA512: 65e8c690847f7499e82c9fef67b60d9aaa63c853732fe7fa7281da33054fcdcd9d24f5b86de71b0827728c25bac8efb7db445863f990304ebfee6fc450620c47
2019-10-02Merge #16849: Fix block index inconsistency in InvalidateBlock()Wladimir J. van der Laan
2a4e60b48261d3f0ec3d85f97af998ef989134e0 Fix block index inconsistency in InvalidateBlock() (Suhas Daftuar) Pull request description: Previously, we could release `cs_main` while leaving the block index in a state that would fail `CheckBlockIndex()`, because `setBlockIndexCandidates` was not being fully populated before releasing `cs_main`. ACKs for top commit: TheBlueMatt: utACK 2a4e60b48261d3f0ec3d85f97af998ef989134e0. I also discovered another issue in InvalidateBlock while reviewing, see #16856. Sjors: ACK 2a4e60b. Tested on top of #16899. Also tested `invalidateblock` with `-checkblockindex=1`. fjahr: ACK 2a4e60b. Ran tests, reviewed code, inspected behavior while manually testing `invalidateblock`. Tree-SHA512: ced12f9dfff0d413258c709921543fb154789898165590b30d1ee0cdc72863382f189744f7669a7c924d3689a1cc623efdf4e5ae3efc60054572c1e6826de612
2019-10-02Merge #16999: net: 0.19 seeds updateWladimir J. van der Laan
0218171a24cedacaa2fb0745f78968499df5d28c contrib: Remove invalid nodes from seeds list (Wladimir J. van der Laan) 3b09f2b9d95336dd69ab7083c992cf8d1111c9be net: 0.19 hardcoded seeds update (Wladimir J. van der Laan) 801d341f3a4b00633aa135407752d21ba868e37b contrib: makeseeds: More fancy output (Wladimir J. van der Laan) ed76299bea3e067cbc835fe50ce05ea1720d61c1 contrib: makeseeds: Limit per network, instead of total (Wladimir J. van der Laan) c254a9ef692190342aa697e2c778d90091865e95 contrib: makeseeds: dedup by ip,port (Wladimir J. van der Laan) 3314d879666beaa1aa724ff28ad15326167e548f contrib: makeseeds: Factor out ASN lookup (Wladimir J. van der Laan) 301c2b1ab594c483b698fa7c3f1ed8932af0554c contrib: makeseeds: Improve logging and filtering (Wladimir J. van der Laan) Pull request description: - contrib: Improve makeseeds script - net: 0.19 hardcoded seeds update Sources: - http://bitcoin.sipa.be/seeds.txt.gz (Sipa) - https://github.com/bitcoin/bitcoin/files/3671913/dnsseed.dump.tar.gz (Sjors) Output: ``` Initial: IPv4 418690, IPv6 55861, Onion 2747 Skip entries with invalid address: IPv4 418690, IPv6 55861, Onion 2747 After removing duplicates: IPv4 409220, IPv6 54028, Onion 2717 Skip entries from suspicious hosts: IPv4 409219, IPv6 54028, Onion 2717 Enforce minimal number of blocks: IPv4 106719, IPv6 46342, Onion 2621 Require service bit 1: IPv4 106384, IPv6 46241, Onion 2542 Require minimum uptime: IPv4 5300, IPv6 1153, Onion 201 Require a known and recent user agent: IPv4 4642, IPv6 1060, Onion 141 Filter out hosts with multiple bitcoin ports: IPv4 4642, IPv6 1060, Onion 141 Look up ASNs and limit results, both per ASN and globally: IPv4 464, IPv6 48, Onion 141 ``` ACKs for top commit: Sjors: ACK 0218171. I also checked that `chainparamsseeds.h` is generated from `nodes_main.txt`. Sounds like we should look at this script a bit more outside release moments :-) Tree-SHA512: c1f5795fe88d14800c4da918387368d51e85f4319f2ce3c0359851d041767e2883f32b1da371bba22bd5f0b442ac3e5ea7d685c233ad2cc4045c930f973b0aa2
2019-10-02Merge #13266: refactor: privatize SignatureExtractorChecker [moveonly]Wladimir J. van der Laan
73aaf4ecf825a4d18c802ca5dd3856ce9096915e Make SignatureExtractorChecker private to its own file (Ben Woosley) Pull request description: ~If we add a CTxIn constructor to SignatureData, then constructing the SignatureData directly is no more verbose than calling DataFromTransaction, and grants the caller additional flexibiliy in how to provide the CTxIn.~ A simple change to enhance encapsulation. ACKs for top commit: MarcoFalke: utACK 73aaf4ecf825a4d18c802ca5dd3856ce9096915e laanwj: ACK 73aaf4ecf825a4d18c802ca5dd3856ce9096915e Tree-SHA512: f7eafbce22b0e9917a8487e88d1f5a1061f2a0959ae1a097cbd9c8ea0d774edfb807da56813cb5fb26f6ca98499a0604a8ff024c198a7c8dc755164de66d972a
2019-10-02contrib: Remove invalid nodes from seeds listWladimir J. van der Laan
2019-10-02Merge #17002: chainparams: Bump assumed chain paramsfanquake
fa3a7331160d1a460b1c15fca1810e98070d629c chainparams: Bump assumed chain params (MarcoFalke) Pull request description: As every year, reviewers get extra point when their node is running: * `assumevalid=0` * `checkpoints=0` * on non-x86_64 hardware See https://github.com/bitcoin/bitcoin/blob/master/doc/release-process.md#before-every-major-and-minor-release for the process. ACKs for top commit: laanwj: ACK fa3a7331160d1a460b1c15fca1810e98070d629c Sjors: ACK fa3a7331160d1a460b1c15fca1810e98070d629c for mainnet on macOS 10.14.6. jamesob: ACK https://github.com/bitcoin/bitcoin/pull/17002/commits/fa3a7331160d1a460b1c15fca1810e98070d629c fanquake: ACK fa3a7331160d1a460b1c15fca1810e98070d629c - checked the mainnet values. I have notes on reviewing `assumevalid` updates in [core-review](https://github.com/fanquake/core-review/blob/master/update-assumevalid.md). Tree-SHA512: fc545ba0a7056908040b47076b393d028c1c022967c25a2074752f76f0386ef099a64445da6125117a04418bd7eb0655121bfc94e6f60b7bc2666947491b5228
2019-10-01qa: Do not force overwrite of QT_QPA_PLATFORM on windows for gui testsMarcoFalke
2019-10-01doc: Explain QT_QPA_PLATFORM for gui testsMarcoFalke
2019-10-01chainparams: Bump assumed chain paramsMarcoFalke
2019-10-01Merge #16984: util: Make thread names shorterfanquake
386ae0f6916d11d72022cc6f6b62bb2b82594f24 util: Make thread names shorter (Hennadii Stepanov) Pull request description: Thread names at the process level are limited by 15 characters: https://github.com/bitcoin/bitcoin/blob/6b2210f1016c9ed96ce470e588e4cb12fa36a900/src/util/threadnames.cpp#L28-L29 This commit ensures that name `b-httpworker.42` will not be truncated. On master (6b2210f1016c9ed96ce470e588e4cb12fa36a900): ```bash hebasto@redcat:~$ ps -T -p $(cat /home/hebasto/.bitcoin/testnet3/bitcoind.pid) PID SPID TTY TIME CMD 32647 32647 pts/6 00:00:00 bitcoin-main 32647 32648 pts/6 00:00:00 QXcbEventReader 32647 32649 pts/6 00:00:00 bitcoin:disk$0 32647 32650 pts/6 00:00:00 QDBusConnection 32647 32651 pts/6 00:00:00 gmain 32647 32652 pts/6 00:00:00 gdbus 32647 32653 pts/6 00:00:07 bitcoin-qt-init 32647 32656 pts/6 00:00:00 bitcoin-scriptc 32647 32657 pts/6 00:00:00 bitcoin-scriptc 32647 32658 pts/6 00:00:00 bitcoin-scriptc 32647 32659 pts/6 00:00:00 bitcoin-schedul 32647 32660 pts/6 00:00:00 bitcoin-http 32647 32661 pts/6 00:00:00 bitcoin-httpwor 32647 32662 pts/6 00:00:00 bitcoin-httpwor 32647 32663 pts/6 00:00:00 bitcoin-httpwor 32647 32664 pts/6 00:00:00 bitcoin-httpwor 32647 32665 pts/6 00:00:00 bitcoin-qt-init 32647 32668 pts/6 00:00:00 bitcoin-torcont 32647 32669 pts/6 00:00:00 bitcoin-upnp 32647 32670 pts/6 00:00:00 bitcoin-net 32647 32671 pts/6 00:00:00 bitcoin-dnsseed 32647 32672 pts/6 00:00:00 bitcoin-addcon 32647 32673 pts/6 00:00:00 bitcoin-opencon 32647 32674 pts/6 00:00:00 bitcoin-msghand 32647 32675 pts/6 00:00:00 QThread 32647 32676 pts/6 00:00:00 QThread ``` With this PR: ```bash hebasto@redcat:~$ ps -T -p $(cat /home/hebasto/.bitcoin/testnet3/bitcoind.pid) PID SPID TTY TIME CMD 25664 25664 pts/0 00:00:00 b-main 25664 25665 pts/0 00:00:00 QXcbEventReader 25664 25666 pts/0 00:00:00 bitcoin:disk$0 25664 25667 pts/0 00:00:00 QDBusConnection 25664 25668 pts/0 00:00:00 gmain 25664 25669 pts/0 00:00:00 gdbus 25664 25670 pts/0 00:00:07 b-qt-init 25664 25671 pts/0 00:00:00 b-scriptch.0 25664 25672 pts/0 00:00:00 b-scriptch.1 25664 25673 pts/0 00:00:00 b-scriptch.2 25664 25674 pts/0 00:00:00 b-scheduler 25664 25675 pts/0 00:00:00 b-http 25664 25676 pts/0 00:00:00 b-httpworker.0 25664 25677 pts/0 00:00:00 b-httpworker.1 25664 25678 pts/0 00:00:00 b-httpworker.2 25664 25679 pts/0 00:00:00 b-httpworker.3 25664 25680 pts/0 00:00:00 b-qt-init 25664 25682 pts/0 00:00:00 b-torcontrol 25664 25683 pts/0 00:00:00 b-upnp 25664 25684 pts/0 00:00:00 b-net 25664 25685 pts/0 00:00:00 b-dnsseed 25664 25686 pts/0 00:00:00 b-addcon 25664 25687 pts/0 00:00:00 b-opencon 25664 25688 pts/0 00:00:01 b-msghand 25664 25689 pts/0 00:00:00 QThread 25664 25690 pts/0 00:00:00 QThread ``` ACKs for top commit: MarcoFalke: ACK 386ae0f6916d11d72022cc6f6b62bb2b82594f24 (skimmed the diff on GitHub) practicalswift: ACK 386ae0f6916d11d72022cc6f6b62bb2b82594f24 -- diff looks correct fanquake: ACK 386ae0f6916d11d72022cc6f6b62bb2b82594f24 - quickly tested on a Debian system. Tree-SHA512: 8f7f553213a5856943ddba50611814b771e7dc474101a3e1f98259091684c8d0358c541d32011bfe1da7f430225f01a2d6b514a3b7c5aaf671b2ca8fcf155c4a
2019-10-01Merge #17001: doc: Remove mention of renamed mapBlocksUnlinkedWladimir J. van der Laan
fadd6e0d2a6a5104aa215f456987ad7374bcc6ce doc: Remove mention of renamed mapBlocksUnlinked (MarcoFalke) Pull request description: This has been renamed to `m_blocks_unlinked`. Instead of adjusting the internal variable name in the help text, explain the debug flag with more general terms. ACKs for top commit: practicalswift: ACK fadd6e0d2a6a5104aa215f456987ad7374bcc6ce -- diff looks correct promag: ACK fadd6e0d2a6a5104aa215f456987ad7374bcc6ce. laanwj: ACK fadd6e0d2a6a5104aa215f456987ad7374bcc6ce (as argument help is not translated this doesn't have to wait for the split-off) Tree-SHA512: 8ad64965ab5bbba4b92933a5adcb0c9eda5bdb0cc080840a4a97b12c67f41f9b789fd289df4932d748f5a7eebc7305a000f03ceb968a78c9b5d9f34af61f0b15
2019-10-01Merge #16852: gui: When BIP70 is disabled, get PaymentRequest merchant using ↵Wladimir J. van der Laan
string search 85973bcc44f60fe3bbc952557ebf578dd4c475d2 When BIP70 is disabled, get PaymentRequest merchant using string search (Andrew Chow) Pull request description: The merchant name is stored in the X.509 certificate embedded in a PaymentRequest. Use some string searching to locate it so that it can be shown to the user in the transaction details when BIP70 support was not configured. An additional notice is added to the merchant string that indicates the certificate was not verified. When BIP70 is enabled, the certificate would be verified and the merchant name not shown if the certificate was invalid. ACKs for top commit: laanwj: ACK 85973bcc44f60fe3bbc952557ebf578dd4c475d2 Tree-SHA512: 50fdb60d418e2f9eb65a4b52477be16189f00bfc30493adb27d9fb62100fd5bca33b98b8db6caa8485db424838d3b7a1da802c14ff4917943464401f47391616
2019-10-01net: 0.19 hardcoded seeds updateWladimir J. van der Laan
2019-10-01add newline after -stdin*Karl-Johan Alm
2019-10-01cli: add -stdinwalletpassphrase for (slightly more) secure CLIKarl-Johan Alm
2019-10-01add stdin helpers for password input supportKarl-Johan Alm
2019-10-01Merge #16969: refactor: Remove Qt function to disable menu icons on macOSfanquake
3eea6a8f2686352a0fd868fee6af42ef1283bdda refactor: Remove Qt function to disable menu icons on macOS (Emil Engler) Pull request description: As menu icons were removed in #16612, this removes an unnecessary function for macOS Could this get into v0.19.0? ACKs for top commit: jonasschnelli: utACK 3eea6a8f2686352a0fd868fee6af42ef1283bdda promag: ACK 3eea6a8f2686352a0fd868fee6af42ef1283bdda. fanquake: ACK 3eea6a8f2686352a0fd868fee6af42ef1283bdda Tree-SHA512: b3f2f5ed1141f546351433160e27d95dad914739e89dd3438d11756ca5aa41501f0f08345f2b50415717d88517894d73c1065b17f1bda38132374cc58c08df54
2019-09-30util: Make thread names shorterHennadii Stepanov
Thread names at the process level are limited by 15 characters. This commit ensures that name 'b-httpworker.42' will not be cropped.
2019-09-30doc: Remove mention of renamed mapBlocksUnlinkedMarcoFalke
2019-09-30When BIP70 is disabled, get PaymentRequest merchant using string searchAndrew Chow
The merchant name is stored in the X.509 certificate embedded in a PaymentRequest. Use some string searching to locate it so that it can be shown to the user in the transaction details when BIP70 support was not configured.
2019-09-30Merge #16988: qt: Periodic translations updateWladimir J. van der Laan
e2ce392aec664c0b729b1890f7fdf1ff2dd23d90 test: Avoid whitespace linting in qt translations (Wladimir J. van der Laan) 977dd23e4023ac2f6cbbe86eb769db079b8018be qt: Periodic translations update (Wladimir J. van der Laan) Pull request description: Pull new translations from Transifex (using bitcoin-core/bitcoin-maintainer-tools#36) and run `make translate`. (maybe the last one before the split-off) Also added a commit to add `src/qt/locale` to the exclusions for the whitespace linter. I don't think automatically generated files should be linted. Top commit has no ACKs. Tree-SHA512: 53aee46d44eceb18f78034febe76ac4d346c643dfc5a16878193433f85db1642977a7028bb2cf99c2c10d972d833c742f7f873991691b5d9f81b2df7b2679bf9
2019-09-30Merge #16397: doc: Clarify includeWatching for fundrawtransactionWladimir J. van der Laan
80031045fc6435ef4eb5dd1aee773d938c57a0fd Clarify includeWatching for fundrawtransaction (Steven Roose) Pull request description: Might be sufficient to solve https://github.com/bitcoin/bitcoin/issues/16396, https://github.com/bitcoin/bitcoin/issues/7879 and https://github.com/bitcoin/bitcoin/issues/14405. ACKs for top commit: Sjors: ACK 8003104. This will always be confusing, but at least it gives a bunch more clues for the user to google. Tree-SHA512: 9b8002c259c50f93d89fc5574105aae6152858d8d45c07b4c3d5b7023adafe73c7a98a290874ff3fbbb7dfad2ac1bdf4acb8769a2a1c14e38484922f44e84e54
2019-09-30Merge #16931: test: add unittests for CheckProofOfWorkWladimir J. van der Laan
0cc7dd74e0af735dddf7e786f4ed136c382a4ad5 test: add unittests for CheckProofOfWork (soroosh-sdi) Pull request description: following situations are covered: - negative target - overflow target - target easier then powLimit - invalid hash (hash > target) Signed-off-by: soroosh-sdi <soroosh.sardari@gmail.com> ACKs for top commit: promag: ACK 0cc7dd74e0af735dddf7e786f4ed136c382a4ad5, just read the code. laanwj: ACK 0cc7dd74e0af735dddf7e786f4ed136c382a4ad5 Tree-SHA512: 9f9ee952ebb211202939450aa3d61b3c2fae992dcfcab085e877507d78e02ea39a51ccacfc4852a0555f3cba07504ee132abd5cbfed75489553bee45c760bc7e
2019-09-30Merge #16971: qt: Change default size of intro frameWladimir J. van der Laan
8cf9898b53d74bd474cc5188e07e671e24a3791f qt: Change default size of intro frame (Emil Engler) Pull request description: Because of the new pruning feature in the intro frame, the size of the intro frame is too small. Like you see, some text is not visible completely. ### Before ![Before](https://i.imgur.com/ppZ3Gf9.png) ### After ![After](https://i.imgur.com/wcElqLA.png) Update: I changed it so it adjusts the size dynamically ACKs for top commit: fanquake: ACK 8cf9898b53d74bd474cc5188e07e671e24a3791f - Before and after macOS screens below. Given that most users will only ever see this screen once, I think Qts best effort to dynamically size it is fine. jonasschnelli: utACK 8cf9898b53d74bd474cc5188e07e671e24a3791f Sjors: Tested ACK 8cf9898 on macOS. English already fit, so to reproduce the issue, launch in German with `-resetguisettings -lang=de`. laanwj: ACK 8cf9898b53d74bd474cc5188e07e671e24a3791f Tree-SHA512: 568b0ae0d5feeda603c0ccf67b5bb3857becea8f22fb98695e1901e662cb1e76377589e39ec743258154d7f6c4a5e544bb003fcc73597400dd427db047392638
2019-09-30Merge #16957: 9% less memory: make SaltedOutpointHasher noexceptWladimir J. van der Laan
67d99900b0d770038c9c5708553143137b124a6c make SaltedOutpointHasher noexcept (Martin Ankerl) Pull request description: If the hash is not `noexcept`, `unorderd_map` has to assume that it can throw an exception. Thus when rehashing care needs to be taken. libstdc++ solves this by simply caching the hash value, which increases memory of each node by 8 bytes. Adding `noexcept` prevents this caching. In my experiments with `-reindex-chainstate -stopatheight=594000`, memory usage (maximum resident set size) has decreased by 9.4% while runtime has increased by 1.6% due to additional hashing. Additionally, memusage::DynamicUsage() is now more accurate and does not underestimate. | | runtime h:mm:ss | max RSS kbyte | |---------------------------------------|-----------------|--------------| | master | 4:13:59 | 7696728 | | 2019-09-SaltedOutpointHasher-noexcept | 4:18:11 | 6971412 | | change | +1.65% | -9,42% | Comparison of progress masters vs. 2019-09-SaltedOutpointHasher-noexcept ![out](https://user-images.githubusercontent.com/14386/65541887-69424e00-df0e-11e9-8644-b3a068ed8c3f.png) ACKs for top commit: jamesob: Tested ACK https://github.com/bitcoin/bitcoin/pull/16957/commits/67d99900b0d770038c9c5708553143137b124a6c Tree-SHA512: 9c44e3cca993b5a564dd61ebd2926b9c4a238609ea4d283514c018236f977d935e35a384dd4696486fd3d78781dd2ba190bb72596e20a5e931042fa465872a0b
2019-09-30qt: Periodic translations updateWladimir J. van der Laan
Pull new translations from Transifex and run `make translate`.
2019-09-30Merge #16982: build: Factor out qt translations from build systemWladimir J. van der Laan
4320bfc0c0d88633c84146f8d640f5b6e4596244 build: Factor out qt translations from build system (Wladimir J. van der Laan) Pull request description: Move qt translations to a separate make include file. This makes it easier to auto-generate this list from tooling (see bitcoin-core/bitcoin-maintainer-tools#36). ACKs for top commit: promag: ACK 4320bfc0c0d88633c84146f8d640f5b6e4596244. Tree-SHA512: 7133d0103bcf97672ae5aa40ba35d4b81331a8c179190031bbc887da6a5ccc929428e522938db43d87dbcbf9ad3b121dac1e6faf1daa5ae81d0b5fed7f053b5f
2019-09-30Merge #16953: doc: Improve test READMEsWladimir J. van der Laan
43e7d576f590e90ad7d1ba3d550671a7958f1188 doc: Improve test READMEs (Fabian Jahr) Pull request description: General improvements on READMEs for unit tests and functional tests: - Give unit test readme a headline - Move general information on `src/test` folder to the top - Add information on logging and debugging unit tests - Improve debugging and logging information in functional testing - Include all available log levels in functional tests ACKs for top commit: laanwj: ACK 43e7d576f590e90ad7d1ba3d550671a7958f1188 Tree-SHA512: 22b27644992ba5d99a885cd51b7a474806714396fcea1fd2d6285e41bdf3b28835ad8c81449099e3ee15a63d57b3ab9acb89c425d9855ed1d9b4af21db35ab03
2019-09-29build: Factor out qt translations from build systemWladimir J. van der Laan
Move qt translations to a separate make include file. This makes it easier to auto-generate this list from tooling (see bitcoin-core/bitcoin-maintainer-tools#36).
2019-09-28rpc bumpfee check fee_rate argumentezegom
2019-09-28rpc bumpfee: add fee_rate argumentezegom
2019-09-27Merge #16713: Ignore old versionbit activations to avoid 'unknown softforks' ↵MarcoFalke
warning fdb3e8f8b27e3b0b2f88c32915975c6e4c299b1e Ignore old versionbit activations (Anthony Towns) Pull request description: PR 16060 removed the CSV and Segwit BIP9 softfork definitions and hard-coded ('buried') the activation heights. The versionbits code will warn users if an undefined softfork has been signalled in block header versions, and removing the CSV/Segwit definitions caused those warnings to be triggered. Change the BIP 9 warning code to only check for unknown softforks after the segwit activation height. ACKs for top commit: MarcoFalke: ACK fdb3e8f8b2 ajtowns: ACK fdb3e8f8b27e3b0b2f88c32915975c6e4c299b1e for what it's worth achow101: ACK fdb3e8f8b27e3b0b2f88c32915975c6e4c299b1e Sjors: ACK fdb3e8f8b27e3b0b2f88c32915975c6e4c299b1e. It makes the bit 0 warning go away in mainnet and testnet QT when a new block arrives. I think the code is clear enough. jonatack: ACK fdb3e8f8b27e3b0b2f88c32915975c6e4c299b1e Tree-SHA512: e6fd34e8902f8c7affb28e8951803e47d542710d5f1229000746656a37ee59d754439fc33e36b7eef87544262e5aac374645db91b74cb507e73514003ca7a67f
2019-09-27Merge #16817: rpc: Fix casing in getblockchaininfo to be inline with other ↵Wladimir J. van der Laan
fields 1a02edb3f2803b6f82f06a31acf0b0e5fc19bd1c [RPC] Fix casing in getblockchaininfo to be inline with the rest of the response (Dan Gershony) Pull request description: The response in the RPC result `startTime` is camel cased while the rest of the response seems to be lower cased. If this was intentional please ignore and close this PR. Note: RPC field case changes might break existing callers ACKs for top commit: laanwj: ACK 1a02edb3f2803b6f82f06a31acf0b0e5fc19bd1c Tree-SHA512: 6f0eaf2b4aaf73c9a9bf1fbd4af59af5f95fc012fa88f94e050e6ae273b3ad647f5729df53bfce91e1a925fe4fd7b14818908bb6131a81413a555137d1007d7c
2019-09-27test: add unittests for CheckProofOfWorksoroosh-sdi
following situations are covered: - negative target - overflow target - target easier then powLimit - invalid hash (hash > target) - zero target Signed-off-by: soroosh-sdi <soroosh.sardari@gmail.com>