Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Catch up with Core until commit f617e05c38c9c7e663b824fefe5329cc5cbbf26a #620

Merged
merged 425 commits into from May 16, 2019

Conversation

Projects
None yet
@stevenroose
Copy link
Member

commented May 14, 2019

Currently this catches up until Core commit f617e05 and has everything working except the p2p_invalid_messages unit test that gets some updates in later upstream commits.

I'm planning to continue to catch up to 519b0bc next, which is the merge-base between upstream master and upstream v0.18.0.

Fixes #532.

practicalswift and others added some commits Oct 16, 2018

Merge #14335: net: refactor: cleanup ThreadSocketHandler
032488e Move SocketHandler logic to private method. (Patrick Strateman)
2af9cff Move InactivityCheck logic to private method. (Patrick Strateman)
7479b63 Move DisconnectNodes logic to private method. (Patrick Strateman)
edb5350 Move NotifyNumConnectionsChanged logic to private method. (Patrick Strateman)

Pull request description:

  Working towards using poll() on unix like systems.

  A number of small changes designed to separate the actual socket handling from the rest of the logic in ThreadSocketHandler.

  This is a simpler version of #14147

Tree-SHA512: 72f35c8ef7649019dcbfe19537d8c9f7e3d0fc5854dc691a70c5573352230fc31c3f55565820c632e9b8cb3c55b878bed19e0ad9423100762197ac35967d8067
[tests] Small fixups before deprecating generate
In advance of deprecating the generate RPC method, make some small
changes to a small number of inidividual test cases:

- make memory checking less prescriptive in wallet_basic.py
- replace calls to generate with generatetoaddress in wallet_keypool.py
- replace calls to generate with generatetoaddress and fixup label
  issues in wallet_labels.py
- replace calls to generate with generatetoaddress in wallet_multiwallet.py
doc: add comment explaining recentRejects-DoS behavior
When we receive invalid txs for the first time, we mark the sender as
misbehaving. If we receive the same tx before a new block is seen, we *don't*
punish the second sender (in the same way we do the original sender). It wasn't
initially clear to me that this is intentional, so add a clarifying comment.
Merge #14495: build: Warn (don't fail!) on spelling errors
c32cf6a Add ignored word: mut (practicalswift)
4ae50da Revert "qa: Fix codespell error and have lint-spelling error instead of warn" (practicalswift)

Pull request description:

  Revert `codespell` policy change introduced in #14179.

  Context: bitcoin/bitcoin#13954 (comment)

Tree-SHA512: 4606b19bb32cdd661f90b3778759818d3493e5ed1a4a2f95982f07eeb6b9c889bc8d53cde31706e0a3b9524c3d3a7378f1b769a60baeb0d00da4c68fd3068114
Merge #14496: build: Pin to specific versions of Python packages we i…
…nstall from PyPI in Travis

ee0b7c4 build: Pin to specific versions of Python packages we install from PyPI in Travis (practicalswift)

Pull request description:

  Pin to specific versions of Python packages we install from PyPI in Travis.

  To avoid the possibility of surprise build failures when a new version of a PyPI dependency is released.

Tree-SHA512: 1c9abc094ad6b38992d0e7a5dd7f6c6c070a2eb81b052eb2397c1f1a489162cf8cedbd33db9bf97f32a81ed4dd0e986a76815c623a9b6c04b6ca6c5832d68211
Merge #14450: qt: Fix QCompleter popup regression
081cc02 Fix QCompleter popup regression (Hennadii Stepanov)

Pull request description:

  The PR #8129 has introduced a regression with the `QCompleter` popup in the Debug window.

  How to reproduce:

  1.  open the Debug window;
  2.  go to the 'Console' tab;
  3.  start writing some RPC command and try to pick it from the list using arrow keys, press Enter.

  Note that the popup used to display completions is not being closed. To close it they should mouse click somewhere outside of the popup.

  The wrong behaviour of the `QCompleter` popup is observed on Linux Mint 19 and Windows 10.
  This PR fixes this regression.

  Refs:

  - #7613
  - #7772
  - #8129

Tree-SHA512: f3ba8d08e1c07619d4ef307544306b57be43e4e726770976cf0c2af95082bd66e2eefe8aabb9a3fad0601cd9e6e4dea0459b6a63eba512023234feb308484655
Merge #14472: [doc] getblocktemplate: use SegWit in example
d562027 [doc] getblocktemplate: use SegWit in example (Sjors Provoost)

Pull request description:

  Make it less likely for new miners to accidentally mine non-SegWit blocks.

  Suggest backport to 0.17 so the docs on bitcoincore.org get updated at the next minor release.

Tree-SHA512: fc8c51690559d3e64d03c0eec433c75e5581d616d36b529e16f89ff2433457386feba7ef3b0d22f245d3f725183a2204fef7ee13e25cb92b945ab61f99068dee
Merge #13878: utils: Add fstream wrapper to allow to pass unicode fil…
…ename on Windows

43c7fbb Make MSVC compiler read the source code using utf-8 (Chun Kuan Lee)
f86a571 tests: Add test case for std::ios_base::ate (Chun Kuan Lee)
a554cc9 Move boost/std fstream to fsbridge (Chun Kuan Lee)
86eb3b3 utils: Add fsbridge fstream function wrapper (Chun Kuan Lee)

Pull request description:

  If compiled with mingw, use glibc++ extension `stdio_filebuf` to open the file by `FILE*` instead of filename.

  In other condition, we can use boost::fstream.

Tree-SHA512: b5dbd83e347fb9b2a0c8b1c2c7bd71a272e839ec0617883b2a0ec12506ae9e825373cf6e95b9bcc91d7edc85bf51580a7716b56a9ecaad776bc3ae61638cb3da
Merge #14146: wallet: Remove trailing separators from -walletdir arg
2d47163 wallet: Remove trailing separators from -walletdir arg (Pierre Rochard)
ea3009e wallet: Add walletdir arg unit tests (Pierre Rochard)

Pull request description:

  If a user passes in a path with a trailing separator as the `walletdir`, multiple BerkeleyEnvironments may be created in the same directory which can lead to data corruption.

  Discovered while reviewing bitcoin/bitcoin#12493 (comment)

Tree-SHA512: f2bbf1749d904fd3f326b88f2ead58c8386034355910906d7faea155d518642e9cd4ceb3cae272f2d9d8feb61f126523e1c97502799d24e4315bb53e49fd7c09
Merge #14177: qt: Set C locale for amountWidget
b0510d7 Set C locale for amountWidget (Hennadii Stepanov)

Pull request description:

  Fix #13873

Tree-SHA512: ef26b35ef83c3a87ebd90650f6d833b00a24f6c114b68fe01acd4a14d1f5bdec066f438eb7781c1e55c32640838c54e00b8f082c390639ade8d9a58830833d4a
Merge #14374: qt: Add "Blocksdir" to Debug window
2ab9140 Add tooltips for both datadir and blocksdir (Hennadii Stepanov)
3045704 Add "Blocksdir" to Debug window (Hennadii Stepanov)

Pull request description:

  To get the current `blocksdir` is valuable for debug purposes after
  merging #12653.

  ![screenshot from 2018-10-02 23-16-52](https://user-images.githubusercontent.com/32963518/46374770-2ef6f580-c69a-11e8-85c2-44a49fa36b28.png)

Tree-SHA512: a93f2c00ee19cf6acb499d3bd9bccf4be8ef01c53c44d917ad401aa4797db02cbccb71a9c24e05262ea09345e15f9299381367fdc6951f21dd3788a4a58d2132
Merge #14510: Avoid triggering undefined behaviour in base_uint<BITS>…
…::bits()

96f6dc9 Avoid triggering undefined behaviour in base_uint<BITS>::bits() (practicalswift)

Pull request description:

  Avoid triggering undefined behaviour in `base_uint<BITS>::bits()`.

  `1 << 31` is undefined behaviour in C++11.

  Given the reasonable assumption of `sizeof(int) * CHAR_BIT == 32`.

Tree-SHA512: 995fa38e71c8921873139ecf1b7dd54178555219af3be60d07290f379439ddd8479e3963c6f3cae8178efb61063a0f9add6cba82a5578d13888597b5bcd54f22
[tests] Add generate method to TestNode
Adds a generate() method to the TestNode class in the test framework.
This method intercepts calls to generate, imports a dewterministic
private key to the node and then calls generatetoaddress to generate the
block to that address.

Note that repeated calls to importprivkey for the same private keys are
no-ops, so it's fine to call the generate() method many times.
wallet: Add ListWalletDir utility
ListWalletDir returns all available wallets in the current wallet directory.

Based on MeshCollider work in pull #11485.
Merge #14291: wallet: Add ListWalletDir utility function
d56a068 docs: Add release notes for listwalletdir RPC (João Barbosa)
0cb3cad qa: Add tests for listwalletdir RPC (João Barbosa)
cc33773 rpc: Add listwalletdir RPC (João Barbosa)
d1b03b8 interfaces: Add getWalletDir and listWalletDir to Node (João Barbosa)
fc4db35 wallet: Add ListWalletDir utility (João Barbosa)

Pull request description:

  `ListWalletDir` returns all available wallets in the current wallet directory.

  Based on MeshCollider work in pull #11485.

Tree-SHA512: 5843e3dbd1e0449f55bb8ea7c241a536078ff6ffcaad88ce5fcf8963971d48c78600fbc4f44919523b8a92329d5d8a5f567a3e0ccb0270fdd27366e19603a716

stevenroose added some commits May 2, 2019

@stevenroose

This comment has been minimized.

Copy link
Member Author

commented May 14, 2019

@instagibbs If it's ok for you, I'm gonna take out those two commits without MERGE-FIX and PR them separately so they can be merged before this and I can take them out.

@instagibbs

This comment has been minimized.

Copy link
Collaborator

commented May 14, 2019

Yes please do, I've ACK'd them

@stevenroose stevenroose force-pushed the stevenroose:catchup branch from 3323ca9 to bf4f1d0 May 14, 2019

stevenroose added some commits May 3, 2019

@instagibbs

This comment has been minimized.

Copy link
Collaborator

commented May 14, 2019

linter:

Duplicate include(s) in src/rpc/rawtransaction.cpp:
#include <keystore.h>
#include <rpc/util.h>

@stevenroose stevenroose force-pushed the stevenroose:catchup branch from 465f622 to dc900eb May 14, 2019

@stevenroose stevenroose changed the title WIP: Catch up with Core until 0.18.0 Catch up with Core until commit f617e05c38c9c7e663b824fefe5329cc5cbbf26a May 14, 2019

@instagibbs

This comment has been minimized.

Copy link
Collaborator

commented May 14, 2019

test/functional/test_framework/liquid_addr.py:16: invalid syntax at "chk = ((chk & 0x7fffffffffffff) << 5) ^^ value # 0x1ffffff->0x7fffffffffffff"
test/functional/feature_bip68_sequence.py:33: unused attribute 'node_fastmerkle' (60% confidence)
test/functional/feature_confidential_transactions.py:45: unused attribute 'is_network_split' (60% confidence)
test/functional/feature_default_asset_name.py:29: unused attribute 'is_network_split' (60% confidence)
test/functional/feature_fedpeg.py:181: unused attribute 'node_fastmerkle' (60% confidence)
test/functional/feature_initial_reissuance_token.py:32: unused attribute 'is_network_split' (60% confidence)
test/functional/feature_issuance.py:104: unused attribute 'is_network_split' (60% confidence)
test/functional/feature_mandatory_coinbase.py:17: unused variable 'mandatory_pubkey' (60% confidence)
test/functional/feature_nulldummy.py:51: unused attribute 'node_fastmerkle' (60% confidence)
test/functional/feature_pak.py:68: unused variable 'validate' (100% confidence)
test/functional/feature_progress.py:31: unused attribute 'is_network_split' (60% confidence)
test/functional/feature_txwitness.py:217: unused attribute 'node_fastmerkle' (60% confidence)
test/functional/p2p_compactblocks.py:798: unused attribute 'node_fastmerkle' (60% confidence)
test/functional/p2p_segwit.py:224: unused attribute 'node_fastmerkle' (60% confidence)
test/functional/rpc_calcfastmerkleroot.py:13: unused attribute 'node_fastmerkle' (60% confidence)
test/functional/test_framework/messages.py:417: unused function 'setToAsset' (60% confidence)
test/functional/wallet_bumpfee.py:41: unused attribute 'node_fastmerkle' (60% confidence)
^---- failure generated from test/lint/lint-python-dead-code.sh
@@ -302,6 +302,26 @@ def initialize_datadir(dirname, n):
f.write("discover=0\n")
f.write("listenonion=0\n")
f.write("printtoconsole=0\n")
# Elements:

This comment has been minimized.

Copy link
@instagibbs

instagibbs May 14, 2019

Collaborator

If we're using regtest I don't think these are required... I can do a follow-up PR if true

This comment has been minimized.

Copy link
@stevenroose

stevenroose May 14, 2019

Author Member

none of them?

This comment has been minimized.

Copy link
@instagibbs

instagibbs May 14, 2019

Collaborator

I'll test later :)

@@ -329,9 +334,6 @@ def compare(actual, expected):

assert_raises_rpc_error(-8, "bitcoin_descriptor must be a ranged descriptor.", self.nodes[i_pak1].initpegoutwallet, "pkh(tpubD6NzVbkrYhZ4WaWSyoBvQwbpLkojyoTZPRsgXELWz3Popb3qkjcJyJUGLnL4qHHoQvao8ESaAstxYSnhyswJ76uZPStJRJCTKvosUCJZL5B)")

# key origins aren't supported in 0.17

This comment has been minimized.

Copy link
@instagibbs

instagibbs May 14, 2019

Collaborator

nit: we should add "positive" tests since they're supported now... not sure what it'll do

@instagibbs

This comment has been minimized.

Copy link
Collaborator

commented May 14, 2019

note that this PR resolves #532

@stevenroose stevenroose force-pushed the stevenroose:catchup branch from 1fd55a0 to 8331761 May 15, 2019

@instagibbs

This comment has been minimized.

Copy link
Collaborator

commented May 15, 2019

Last clang issues:

test/mempool_tests.cpp:448:19: warning: unused variable 'tx1Hash' [-Wunused-variable]
    const uint256 tx1Hash(tx.GetHash());
                  ^
1 warning generated.

and

wallet/rpcwallet.cpp:1201:17: warning: unused function 'addwitnessaddress' [-Wunused-function]
static UniValue addwitnessaddress(const JSONRPCRequest& request)
                ^
1 warning generated.

and

wallet/wallet.cpp:2692:59: warning: reading variable 'mapWallet' requires holding mutex 'cs_wallet' [-Wthread-safety-analysis]
        std::map<uint256, CWalletTx>::const_iterator it = mapWallet.find(presetInput.hash);
                                                          ^
wallet/wallet.cpp:2693:19: warning: reading variable 'mapWallet' requires holding mutex 'cs_wallet' [-Wthread-safety-analysis]
        if (it != mapWallet.end()) {
                  ^
2 warnings generated.

@stevenroose stevenroose force-pushed the stevenroose:catchup branch 2 times, most recently from faaec43 to d21e056 May 15, 2019

stevenroose and others added some commits May 15, 2019

Add extra lock check for OSX build
Apparently my upstream checkpoint was in the middle of a series of
commits by ianofsky separating wallet from the main code.  This means
that I have to add this main lock which will be replaced by the
locked_chain interface in a subsequence catchup.
@instagibbs

This comment has been minimized.

Copy link
Collaborator

commented May 15, 2019

utACK 693f206

@stevenroose stevenroose merged commit 693f206 into ElementsProject:master May 16, 2019

1 check failed

continuous-integration/travis-ci/pr The Travis CI build could not complete due to an error
Details

stevenroose added a commit that referenced this pull request May 16, 2019

Merge #620: Catch up with Core until commit f617e05
693f206 fill checkqueue_tests vector for completion checking (Gregory Sanders)
3cc7205 Assert that queued checks are non-null (Gregory Sanders)
d21e056 Address some linter complaints (Steven Roose)
ad3d496 Add extra lock check for OSX build (Steven Roose)
872d39f Prevent Travis from failing when tests are disabled (Steven Roose)
4ed0bb3 Fix dead-code linter issues (Steven Roose)
bf4f1d0 MERGE-FIX: Disable p2p_invalid_messages tests to fix later (Steven Roose)
ee0e510 MERGE-FIX: Fix other functional tests (Steven Roose)
5492cef MERGE-FIX: Fix fedpeg and pak tests for 0.18.0 (Steven Roose)
1a2a93a MERGE-FIX: General fixes for functional tests (Steven Roose)
3a83980 MERGE-FIX: Fix upstream functional tests (Steven Roose)
71723f7 MERGE-FIX: Adapt bitcoin_functional (Steven Roose)
449ac89 MERGE-FIX: Copy bitcoin_functional from upstream (Steven Roose)
9f4f2e7 MERGE-FIX: Fix compilation errors (Steven Roose)
7256637 MERGE-FIX: Makefile fix (Steven Roose)
7afddfa importmulti: Don't add internal addresses to address book (Gregory Sanders)
fa483e1 rpc: Add RPCHelpMan for machine-generated help (MarcoFalke)
fa0d36f rpc: Include rpc/util.h where needed for RPCHelpMan (MarcoFalke)
fa5a6ce qa: Raise ci test_runner timeout to 40 mins (MarcoFalke)
fa3df02 travis: Avoid timeout on verify-commits check (MarcoFalke)
fa21568 qa: Avoid race in p2p_invalid_block by waiting for the block request (MarcoFalke)
6c787d3 tests: Make feature_block pass on centos (MarcoFalke)
27154ce util.h: explicitly include required QString header (1Il1)
4e4de10 Throw error if CPubKey is invalid during PSBT keypath serialization (Gregory Sanders)
a16f44c qt: Remove "Pay only required fee" checkbox (Hennadii Stepanov)
8711cc0 qt: Improve BitcoinAmountField class (Hennadii Stepanov)
a6b5ec1 rpc: creates possibility to preserve labels on importprivkey (marcoagner)
88a79cb fix converttopsbt permitsigdata arg, add basic test (Gregory Sanders)
0385109 Add test for rpcpassword hash error (MeshCollider)
13fe258 Error if rpcpassword in conf contains a hash character (MeshCollider)
ec1201a Don't use systray icon on inappropriate systems (Hennadii Stepanov)
fa9ed38 test_node: get_mem_rss fixups (MarcoFalke)
0a656f8 qt: All tray menu actions call showNormalIfMinimized (João Barbosa)
6fc21ac qt: Use GUIUtil::bringToFront where possible (João Barbosa)
5796671 qt: Add GUIUtil::bringToFront (João Barbosa)
6b1d297 Remove obj_c for macOS Dock icon menu (Hennadii Stepanov)
2464925 Use Qt signal for macOS Dock icon click event (Hennadii Stepanov)
53bb6be Remove obj_c for macOS Dock icon setting (Hennadii Stepanov)
76e13b5 warnings: Compiler warning on memset usage for non-trivial type (Lenny Maiorani)
1e0f3c4 macOS: disable AppNap during sync (Alexey Ivanov)
6b8d86d Require a public key to be retrieved when signing a P2PKH input (Andrew Chow)
e13fea9 Add regression test for PSBT signing bug #14473 (Glenn Willen)
5655005 Refactor PSBTInput signing to enforce invariant (Glenn Willen)
0f5bda2 Simplify arguments to SignPSBTInput (Glenn Willen)
53e6fff Add bool PSBTInputSigned (Glenn Willen)
65166d4 New PartiallySignedTransaction constructor from CTransction (Glenn Willen)
4f3f5cb Remove redundant txConst parameter to FillPSBT (Glenn Willen)
fe5d22b More concise conversion of CDataStream to string (Glenn Willen)
081accb Pass chain locked variables where needed (Russell Yanofsky)
79d579f Remove uses of cs_main in wallet code (Russell Yanofsky)
ea961c3 Remove direct node->wallet calls in init.cpp (Russell Yanofsky)
8db11dd Pass chain and client variables where needed (Russell Yanofsky)
7e2e62c Add skeleton chain and client classes (Russell Yanofsky)
fa4da3c [doc] conf: Remove deprecated options from docs, Other cleanup (MarcoFalke)
7a90b1b build: Fix windows build error if `--disable-bip70` (Chun Kuan Lee)
b191c7d doc: add comment explaining recentRejects-DoS behavior (James O'Beirne)
c82190c tests: Add Python dead code linter (vulture) (practicalswift)
590a57f tests: Remove unused testing code (practicalswift)
5352030 Avoid using numeric_limits for sequence numbers and lock times (Russell Yanofsky)
bafb921 Remove duplicated code (Hennadii Stepanov)
e4dc39b Replace platform dependent type with proper const (Hennadii Stepanov)
053b6f4 align items in contrib init (Harry Moreno)
99d33a6 appveyor: Script improvement part II (Chun Kuan Lee)
4773fa8 Add llvm-symbolizer directory to PATH. Needed to get symbolized stack traces from the sanitizers. (practicalswift)
5c292da Add UBSan suppressions needed to pass test suite (practicalswift)
fced6b5 Add UBSan options: print_stacktrace + halt_on_error (practicalswift)
3d305e3 Send fewer spam messages in p2p_invalid_messages (James O'Beirne)
5a05aa2 Add metavar to match var name in help text + Change wording for better readability (Martin Erlandsson)
fef5adc blockfilter: Use unordered_set instead of set in blockfilter. (Jim Posen)
4fb789e Extract CSipHasher to it's own file in crypto/ directory. (Jim Posen)
bbbbb3f qa: Add test to ensure node can generate all help texts at runtime (MarcoFalke)
d20a9fa tests: add tests for invalid P2P messages (James O'Beirne)
62f94d3 tests: add P2PConnection.send_raw_message (James O'Beirne)
5aa31f6 tests: add utility to assert node memory usage hasn't increased (James O'Beirne)
825f779 doc: Add historical release notes for 0.17.0.1 (Wladimir J. van der Laan)
9f49db7 Enable functional tests in UBSAN job. Enable -fsanitize=integer (part of UBSAN). Merge UBSAN Travis job with no depends. (practicalswift)
6c5355e example_test.py: fixup coinbase height argument, derive number clearly (Gregory Sanders)
b602214 trivial: Don't translate in help text (ken2812221)
086fc83 Tests: Fix a comment (fridokus)
dfef0df tests: Dry run bench_bitcoin (-evals=1 -scaling=0: <1 second running time) as part "make check" to allow for quick identification of assertion/sanitizer failures in benchmarking code (practicalswift)
00c6306 Remove RUN_BENCH logic (practicalswift)
a4edb16 ZMQ: add options to configure outbound message high water mark, aka SNDHWM (mruddy)
ab8c6f2 Add SAFE_CHARS[SAFE_CHARS_URI]: Chars allowed in URIs (RFC 3986) (practicalswift)
9912486 rpc: Make HTTP RPC debug logging more informative (practicalswift)
33ae985 doc: Update OpenBSD build guide for 6.4 (fanquake)
6d247b1 gitignore contents of db4 folder (Marty Jones)
4ed7308 scripted-diff: Rename misleading 'defaultPort' to 'http_port' (Murray Nesbitt)
65f3672 wallet: Refactor to use WalletLocation (João Barbosa)
01a4c09 wallet: Add WalletLocation utility class (João Barbosa)
04972fe Remove unused `adjustedTime` parameter (Hennadii Stepanov)
63c74d2 build: Remove illegal spacing in darwin.mk (Jon Layton)
2068f08 scripted-diff: Move util files to separate directory. (Jim Posen)
14a0652 tests: add test for 'getaddressinfo' RPC result 'ischange' field (whythat)
93d1aa9 rpcwallet: add 'ischange' field to 'getaddressinfo' response (whythat)
fa4bcaf travis: Compile once on xenial (MarcoFalke)
fa43626 test_runner: Remove travis specific code (MarcoFalke)
3fd7e76 [tests] Move deterministic address import to setup_nodes (John Newbery)
4fb3388 check that a separator is found for psbt inputs, outputs, and global map (Andrew Chow)
9605bbd Make clear function argument case in dev notes (Carl Dong)
fa77aaa doc: Add external interface consistency guarantees (MarcoFalke)
862d159 Add test for conversion from non-witness to witness UTXO (Pieter Wuille)
f8c1714 Convert non-witness UTXOs to witness if witness sig created (Andrew Chow)
0a04667 FreeBSD: Document Python 3 requirement for 'gmake check' (Murray Nesbitt)
4bd125f tests: Print dots by default (Chun Kuan Lee)
cf2f430 gui: explicitly disable "Dark Mode" appearance on macOS (fanquake)
0e6de3a added details about commit messages (Martin Erlandsson)
c11875c Add segwit address tests for importmulti (MeshCollider)
201451b Make getaddressinfo return solvability (MeshCollider)
1753d21 Add release notes for importmulti segwit change (MeshCollider)
353c064 Fix typo in test_framework/blocktools (MeshCollider)
f6ed748 Add SegWit support to importmulti with some ProcessImport cleanup (MeshCollider)
d8bf107 Bugfix: RPC: Add address_type named param for createmultisig (Luke Dashjr)
15db77f Don't rely on locale dependent functions in base_blob<BITS>::SetHex(...) (uint256), DecodeBase58(...), ParseMoney(...) and ParseHex(...) (practicalswift)
36c8e68 Various textual improvements in build docs (Martin Erlandsson)
fa511e8 Pass tx pool reference into CheckSequenceLocks (MarcoFalke)
fa78a2f [tests] Test that nodes respond to getdata with notfound (MarcoFalke)
3387bb0 travis: avoid timeout without saving caches, also enable all qt (Chun Kuan Lee)
fbaccbf build: Fix Qt link order for Windows build (Chun Kuan Lee)
ed2e183 Remove fs::relative call and fix listwalletdir tests (João Barbosa)
3be209d rpc: Always throw in getblockstats if -txindex is required (João Barbosa)
43719e0 [macOS] Remove DS_Store WindowBounds bytes object (Jonas Schnelli)
4dca7d0 appveyor: Enable multiwallet test (Chun Kuan Lee)
4ea7732 tests: add test case for loading copied wallet twice (Chun Kuan Lee)
2d796fa wallet: Fix duplicate fileid (Chun Kuan Lee)
96c509e show the progress of functional test (Isidoro Ghezzi)
8907df9 qa: Ensure wallet unload during walletpassphrase timeout (João Barbosa)
321decf rpc: Fix wallet unload during walletpassphrase timeout (João Barbosa)
48439b3 Don't link SSL_LIBS with GUI unless BIP70 is enabled (James Hilliard)
fbb643d Add BIP70 deprecation warning (James Hilliard)
38b9850 qt: cleanup: Move BIP70 functions together in paymentserver (Wladimir J. van der Laan)
9dcf6c0 build: Add --disable-bip70 configure option (Wladimir J. van der Laan)
585b47c rpc: Prevent concurrent savemempool (João Barbosa)
2b91e42 [docs] Add release note for removing getwitnessaddress (John Newbery)
ebec90a [wallet] Remove deprecated addwitnessaddress RPC method (John Newbery)
07e3f58 [test] Remove deprecated addwitnessaddress from feature_segwit.py (John Newbery)
82f2fa0 [test] Remove deprecated addwitnessaddress from wallet_bumpfee.py (John Newbery)
9d7ee18 [test] Remove deprecated addwitnessaddress from p2p_compactblocks.py (John Newbery)
3cf77f0 [tests] Remove deprecated addwitnessaddress call from wallet_dump.py (John Newbery)
bdefc97 [tests] Remove deprecated addwitnessaddress call from feature_nulldummy (John Newbery)
67d7d67 [test] Fix flake8 warnings in tests (John Newbery)
69e7ee2 Add GUARDED_BY(cs_wallet) for setExternalKeyPool, mapKeyMetadata, m_script_metadata and setLockedCoins (practicalswift)
37b2538 Add GUARDED_BY(cs_wallet) for encrypted_batch, nWalletMaxVersion, m_max_keypool_index and nOrderPosNext (practicalswift)
dee4292 wallet: Add Clang thread safety analysis annotations (practicalswift)
1c7e25d wallet: Add missing locks (practicalswift)
0089905 Add compile time checking for cs_main locks which we assert at run time (practicalswift)
d4d70ed Fix listreceivedbyaddress not taking address as a string (Eric Scrivner)
ab9aca2 [rpc] add 'getnewaddress' hint to 'generatetoaddress' help text. (John Newbery)
c9f0295 [wallet] Deprecate the generate RPC method (John Newbery)
aab8172 [tests] Add generate method to TestNode (John Newbery)
c269209 [tests] Small fixups before deprecating generate (John Newbery)
5918204 Removed explicit mention of storage requirement (squashed) (Martin Erlandsson)
8afb166 Update documentation to incude origin information (Pieter Wuille)
ff37459 Add tests for key origin support (Pieter Wuille)
2c6281f Add key origin support to descriptors (Pieter Wuille)
eeeaa29 descriptors.md: Refer to descriptors as describing instead of matching (Russell Yanofsky)
eb49412 doc/descriptors.md tweaks (Russell Yanofsky)
8640631 docs: Document lint tests (Mason Simon)
97ddc60 validation: Pass chainparams in AcceptToMemoryPoolWorker(...) (practicalswift)
fadffae Revert "Make qt wallet test compatible with qt4" (MarcoFalke)
1fb3c16 Add `doc/bitcoin-conf.md` (Hennadii Stepanov)
94e21c1 test: forward timeouts properly in send_blocks_and_test (James O'Beirne)
b6b9915 Textual improvements (Martin Erlandsson)
29ed2d6 Improve CAmount tests (Hennadii Stepanov)
a3197c5 Disable wallet and address book Qt tests on macOS minimal platform (Russell Yanofsky)
1f01fe0 bitcoin-tx: Use constant for n pubkeys check (Antoine Le Calvez)
369244f utils: Fix broken Windows filelock (Chun Kuan Lee)
bc60c61 Avoid 1 << 31 (UB) in calculation of SEQUENCE_LOCKTIME_DISABLE_FLAG (practicalswift)
7e18673 Fix typo (Kristaps Kaupe)
ca6d86c tests: Stop node before removing the notification file (Chun Kuan Lee)
d56a068 docs: Add release notes for listwalletdir RPC (João Barbosa)
0cb3cad qa: Add tests for listwalletdir RPC (João Barbosa)
cc33773 rpc: Add listwalletdir RPC (João Barbosa)
d1b03b8 interfaces: Add getWalletDir and listWalletDir to Node (João Barbosa)
fc4db35 wallet: Add ListWalletDir utility (João Barbosa)
96f6dc9 Avoid triggering undefined behaviour in base_uint<BITS>::bits() (practicalswift)
2ab9140 Add tooltips for both datadir and blocksdir (Hennadii Stepanov)
3045704 Add "Blocksdir" to Debug window (Hennadii Stepanov)
b0510d7 Set C locale for amountWidget (Hennadii Stepanov)
2d47163 wallet: Remove trailing separators from -walletdir arg (Pierre Rochard)
ea3009e wallet: Add walletdir arg unit tests (Pierre Rochard)
43c7fbb Make MSVC compiler read the source code using utf-8 (Chun Kuan Lee)
f86a571 tests: Add test case for std::ios_base::ate (Chun Kuan Lee)
a554cc9 Move boost/std fstream to fsbridge (Chun Kuan Lee)
86eb3b3 utils: Add fsbridge fstream function wrapper (Chun Kuan Lee)
d562027 [doc] getblocktemplate: use SegWit in example (Sjors Provoost)
081cc02 Fix QCompleter popup regression (Hennadii Stepanov)
ee0b7c4 build: Pin to specific versions of Python packages we install from PyPI in Travis (practicalswift)
c32cf6a Add ignored word: mut (practicalswift)
4ae50da Revert "qa: Fix codespell error and have lint-spelling error instead of warn" (practicalswift)
032488e Move SocketHandler logic to private method. (Patrick Strateman)
2af9cff Move InactivityCheck logic to private method. (Patrick Strateman)
7479b63 Move DisconnectNodes logic to private method. (Patrick Strateman)
edb5350 Move NotifyNumConnectionsChanged logic to private method. (Patrick Strateman)
7d173c4 qt: Revert "Force TLS1.0+ for SSL connections" (Tim Ruffing)
36323e2 Clean systray icon menu for -disablewallet mode (Hennadii Stepanov)
2f6b466 Stop requiring imported pubkey to sign non-PKH schemes (Pieter Wuille)
b8edb98 [rpc] Descriptions: Textual consistency fixes (Jon Layton)
a48e44b Fix CLEAN_BITCOIN_TEST to remove .log files for all BITCOIN_TESTS files (James O'Beirne)
3e9f6c8 Add missing locks and locking annotations for CAddrMan (practicalswift)
f149e31 depends: qt: avoid system harfbuzz and bz2 (Cory Fields)
854c85a test: allow arguments to be forwarded to flake8 in lint-python.sh (James O'Beirne)
3f5ac27 Include some files currently missed by 'make distclean'. (murrayn)
3b70621 doc: RPC documentation (Karel Bílek)
0bd64dc Fix macOS files description (Hennadii Stepanov)
faa4043 qa: Run more tests with wallet disabled (MarcoFalke)
62c304e tests: Allow closed http server in assert_start_raises_init_error (Chun Kuan Lee)
59a50c2 appveyor: trivial build cache modifications (Chun Kuan Lee)
42a995a [tests] Remove rpc_zmq.py (John Newbery)
b09c814 Don't access out of bounds array entry array[sizeof(array)] (Ben Woosley)
64937fd [docs] path to descriptors.md fixed (Damian Mee)
380c843 utils: Convert Windows args to utf-8 string (Chun Kuan Lee)
4a9f064 Fix typos (Dimitris Apostolou)
86eddd4 doc: miss install (poiuty)
d10f2cd travis: set codespell version to avoid breakage (MarcoFalke)
fad95e8 doc: Split build linux dependencies (MarcoFalke)
0000009 doc: Split depends installation instructions per arch (MarcoFalke)
ff94da7 tests: Make appveyor run with --usecli (practicalswift)
db01839 test: Add missing call to skip_if_no_cli() (practicalswift)
1f59c6f doc: Remove "temporary file" notice from 0.17.0 release notes (Wladimir J. van der Laan)
5aaf1a0 doc: Add historical release notes for 0.17.0 (Wladimir J. van der Laan)
d813266 [gitian] use versioned unsigned tarballs instead of generically named ones (Andrew Chow)
fa69ac7 doxygen: Fix member comments (MarcoFalke)
430bf6c depends: fix bitcoin-qt back-compat with older freetype versions at runtime (Cory Fields)
0809e68 doc: Add historical release notes for 0.14.3 and 0.15.2 (Wladimir J. van der Laan)
fae9e84 doc: Add GitHub pr template (MarcoFalke)
c7b3e48 tests: exclude all tests with difference parameters (Chun Kuan Lee)
fa84723 amount: Move CAmount CENT to unit test header (MarcoFalke)
9c5af58 Consolidate redundant implementations of ParseHashStr (Ben Woosley)
66b3fc5 Skip stale tip checking if outbound connections are off or if reindexing. (Gregory Maxwell)
a2a04a5 Bugfix: Only run bitcoin-tx tests when bitcoin-tx is enabled (Luke Dashjr)
92af71c configure: Make it possible to build only one of bitcoin-cli or bitcoin-tx (Luke Dashjr)
e460232 Document fixed attribute behavior in critical test framework classes. (Justin Turner Arthur)
17b42f4 Check for specific tx acceptance failures based on script signature (Justin Turner Arthur)
3a4449e Strictly enforce instance attrs in critical functional test classes. (Justin Turner Arthur)
1d0ce94 Fix for incorrect version attr set on functional test segwit block. (Justin Turner Arthur)
ba923e3 test: Fix broken segwit test (practicalswift)
7ac911a [docs] Add release notes for removing `-usehd` (John Newbery)
25548b2 [wallet] Remove -usehd (John Newbery)
20442f6 [wallet] remove redundand restart node (gustavonalle)
db15805 [wallet] Ensure wallet is unlocked before signing (gustavonalle)
2c3eade Make fs::path::string() always return utf-8 string (Chun Kuan Lee)
fa6b30c lcov: filter /usr/lib/ from coverage reports (MarcoFalke)
ff40357 AppVeyor: Move AppVeyor YAML to dot-file-style YAML (Mitchell Cash)
67654b6 tests: write the notification to different files to avoid race condition (Chun Kuan Lee)
6fa901f Don't edit Chainparams after initialization (Jorge Timón)
980b38f MOVEONLY: Move versionbits info out of versionbits.o (Jorge Timón)
661ac15 appveyor: Run functional tests on appveyor (Chun Kuan Lee)
2148c36 tests: Make it possible to run functional tests on Windows (Chun Kuan Lee)
5eb20f8 Consistently use ParseHashV to validate hash inputs in rpc (Ben Woosley)
1eb9a9b [RPC] Remove warning for removed estimatefee RPC (John Newbery)
30973e9 [REST] improve performance for JSON calls (Antoine Le Calvez)
a23a7f6 wallet: Avoid potential use of unitialized value bnb_used in CWallet::CreateTransaction(...) (practicalswift)
b6718e3 tests: Use MakeUnique to construct objects owned by unique_ptrs (practicalswift)
3ccfa34 convert C-style (void) parameter lists to C++ style () (Arvid Norberg)
fa910e4 init: Remove deprecated args from hidden args (MarcoFalke)
52beb9e Add autogen.sh in ARM Cross-compilation (Walter)
a2eb6f5 [rpc] Add getnodeaddresses RPC command (chris-belcher)
fd5c95c doc: Add historical release notes for 0.16.3 (Wladimir J. van der Laan)
9b4a36e [qa] Test for duplicate inputs within a transaction (Suhas Daftuar)
b8f8019 Fix crash bug with duplicate inputs within a transaction (Suhas Daftuar)
0ca4c8b Changed functional tests which do not require wallets to run without (sanket1729)
f1bd03e [depends, zmq, doc] upgrade zeromq to 4.2.5 and avoid deprecated zeromq api functions (mruddy)
be54f42 use integer division instead of double conversion and multiplication for computing amounts (Arvid Norberg)

Pull request description:

  Currently this catches up until Core commit f617e05 and has everything working except the `p2p_invalid_messages` unit test that gets some updates in later upstream commits.

  I'm planning to continue to catch up to 519b0bc next, which is the merge-base between upstream master and upstream v0.18.0.

  Fixes #532.

Tree-SHA512: a8da8fe1c03d3317fc42d610b2203b7b84ac403ecdff88cf54be525c7a94b0b366ae8741b2652274152f9da657631c221bf2540b79c9c121b5b1e74facd197c1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.