14797 Commits

Author SHA1 Message Date
Cory Fields
b28415baae
travis: move back to the minimal image
The most recent update replaced the minimal image with a large one for the
'generic' image. Switching back to 'minimal' should reduce dependencies and
maybe speed us up some.

It should also eliminiate the need for aa2e0f09e.

Github-Pull: #11521
Rebased-From: a86e81b78fc2a2ecc827a7890cba21ed229957f2
Tree-SHA512: 40f07304c60b11876a172b7ac75cb738b2da4209d54370714a6e731485643fbb33925a422accd3e065dcaa4fea84a1268f37ca0a8ee83b8cf70a71a25b59fb6b
2017-10-19 14:55:24 +02:00
Wladimir J. van der Laan
1646f9c760
Merge #11447: 0.15.1: Backports
20cdc2b Fix importmulti bug when importing an already imported key (Pedro Branco)
405e069 Update importprivkey named args documentation (Dusty Williams)
c94527a [Docs] Update Windows build instructions for using WSL and Ubuntu 17.04 (fanquake)
27e861a net: Improve and document SOCKS code (Wladimir J. van der Laan)
dea3b87 Add new step to clean $PATH var by removing /mnt specific Window's %PATH% paths that cause issues with the make system (Donal OConnor)
a43be5b rpc: Prevent `dumpwallet` from overwriting files (Wladimir J. van der Laan)
b6c0209 Fix validationinterface build on super old boost/clang (Matt Corallo)
6a62c74 qt: Backup former GUI settings on `-resetguisettings` (Wladimir J. van der Laan)
0fe2a9a when clearing addrman clear mapInfo and mapAddr (Gregory Sanders)
6b4d9f2 wallet: update stored witness in AddToWallet (Suhas Daftuar)
62d18cd doc: Prepare release notes for 0.15.1 (MarcoFalke)
8b61aee Put back inadvertently removed copyright notices (Paul Berg)
75997c3 Disallow uncompressed pubkeys in bitcoin-tx [multisig] output adds (Matt Corallo)
8d13b42 Replace save|restoreWindowGeometry with Qt functions (MeshCollider)
6642558 [Qt] Add delay before filtering transactions Fixes 3141 (Lucas Betschart)
19d63e8 Remove custom fee radio group (Andrew Chow)
b1a6c94 rpc: make estimatesmartfee argument naming consistent with documentation (Wladimir J. van der Laan)
921542e rpc: update cli for estimatefee argument rename (Wladimir J. van der Laan)
2e31b1d Fix division by zero in time remaining (MeshCollider)
47c02a8 qt: Use IsMine to validate custom change address (Chris Moore)
7310f1f [Qt] Fix display of package name on 'open config file' tooltip (Daniel Edgecumbe)
2cb720a Acquire cs_main lock before cs_wallet during wallet initialization (Russell Yanofsky)
b278a43 rpc: Write authcookie atomically (Wladimir J. van der Laan)
50bd3f6 Avoid returning a BIP9Stats object with uninitialized values (practicalswift)
9e8aae3 [wallet] Close DB on error. (Karl-Johan Alm)

Pull request description:

  This mostly backports various commits that fix(ed) bugs and issues.

  However, it also includes two patches for qt that only fix minor issues,
  as well as some doc patches.

Tree-SHA512: 5165e309faf6b4395fdf2f6662ccc0d58306971f3769e675504f17b2055efe29b2919f22d0dbf78c4c2dc7fd5c9d08a2c53345615e4a1df73914526687c9d571
2017-10-18 20:55:35 +02:00
Pedro Branco
20cdc2b36c Fix importmulti bug when importing an already imported key
Github-Pull: #11483
Rebased-From: a44a215177ab55b4a3b36a7980c313e908e2dd18
2017-10-17 21:44:23 +02:00
Wladimir J. van der Laan
51bad9195e
Merge #11445: [qa] 0.15.1 Backports
019c492 qa: Fix lcov for out-of-tree builds (MarcoFalke)
e169349 qa: Restore bitcoin-util-test py2 compatibility (MarcoFalke)
806c78f add functional test for mempoolreplacement command line arg (Gregory Sanders)
a825d4a Fix bip68-sequence rpc test (Johnson Lau)
a36f332 Verify DBWrapper iterators are taking snapshots (Matt Corallo)
8d2e51d qa: Fix bug introduced in p2p-segwit.py (Suhas Daftuar)
2f0b30a qa: Treat mininode p2p exceptions as fatal (Suhas Daftuar)
e4605d9 Tests for zmqpubrawtx and zmqpubrawblock (Andrew Chow)
2c4ff35 [script] Unit tests for IsMine (Jim Posen)
794a80e [script] Unit tests for script/standard functions (Jim Posen)
f9cf7b5 [tests] Check connectivity before sending in assumevalid.py (John Newbery)
f1ced0d [tests] Make p2p-leaktests.py more robust (John Newbery)
2e1ac70 [qa] zapwallettxes: Wait up to 3s for mempool reload (MarcoFalke)
b6468d3 Add listwallets RPC test to multiwallet.py (Cristian Mircea Messel)
d8dd8e7 [tests] fixup dbcrash interaction with add_nodes() (John Newbery)
2b97b36 [test] Replace check_output with low level version (João Barbosa)
e38211f [test] Add assert_raises_process_error to assert process errors (João Barbosa)
e0bfd28 [test] Add support for custom arguments to TestNodeCLI (João Barbosa)
812c870 [test] Improve assert_raises_jsonrpc docstring (João Barbosa)
eeb24a3 [qa] TestNode: Add wait_until_stopped helper method (MarcoFalke)
f3f7891 Stop test_bitcoin-qt touching ~/.bitcoin (MeshCollider)
f0b6795 Remove redundant testutil files (MeshCollider)
4424176 Improve signmessages functional test (Cristian Mircea Messel)
cef0319 [tests] fixups from set_test_params() (John Newbery)
82bf6fc [tests] Functional tests must explicitly set num_nodes (John Newbery)
801d2ae [tests] don't override __init__() in individual tests (John Newbery)
bb5e7cb [tests] Avoid passing around member variables in test_framework (John Newbery)
4d3ba18 [tests] TestNode: separate add_node from start_node (John Newbery)
11a5992 [tests] fix - use rpc_timeout as rpc timeout (John Newbery)
847c75e Add getmininginfo functional test (Cristian Mircea Messel)
2a5d099 RPC: gettxout: Slightly improve doc and tests (Jorge Timón)
716066d [tests] Add bitcoin_cli.py test script (John Newbery)
016b9ad [tests] add TestNodeCLI class for calling bitcoin-cli for a node (John Newbery)
5398f20 qa: Move wait_until to util (MarcoFalke)
1d80d1e [tests] fix timeout issues from TestNode (John Newbery)
c276c1e test: Increase initial RPC timeout to 60 seconds (Wladimir J. van der Laan)
fc2aa09 [tests] Introduce TestNode (John Newbery)

Pull request description:

  This includes test related backports for 0.15.1. The motivation is twofold:

  * Make backporting new tests written for current master easier
  * Fix the most common test issues that happen(ed) frequently on travis

  Even though this includes the new TestNode class, which comes with a lot
  of refactoring, I believe that the issues caused by refactoring are found
  and fixed by now.

Tree-SHA512: 6a0c4e5246da83ff0b3f7d2cb8df358d105ed548fb3857e5d882f26cc336553aa07b39e38c281879bf82f95078298b775334f9a60c0b23140f77c50174bd8347
2017-10-11 18:29:55 +02:00
Dusty Williams
405e069d3b Update importprivkey named args documentation
Fixes #11462. Updated documentation for importprivkey function to use the correct name for the first argument.
Also updates a call to importprivkey to use named args in functional test.

Github-Pull: #11465
Rebased-From: aa57590d7c5eab1df5443e8ac9ed53ad0db46c02
2017-10-09 22:31:41 +02:00
fanquake
c94527a973 [Docs] Update Windows build instructions for using WSL and Ubuntu 17.04
Github-Pull: #11437
Rebased-From: 696ce46306e40f48dc4b2d7010812d564a43289d
2017-10-09 22:31:41 +02:00
Wladimir J. van der Laan
27e861a9b3 net: Improve and document SOCKS code
Make the SOCKS code more consistent, and document the constants used.

Github-Pull: #11397
Rebased-From: 22f816ef4dd57785627d801c247714cace7fc5b5
2017-10-09 22:31:41 +02:00
Donal OConnor
dea3b87dd9 Add new step to clean $PATH var by removing /mnt specific Window's %PATH% paths that cause issues with the make system
Github-Pull: #11437
Rebased-From: 4f890ba6bc8caba5394c7a5388d7f07959ced78b
2017-10-05 18:56:54 +02:00
Wladimir J. van der Laan
a43be5bcdb rpc: Prevent dumpwallet from overwriting files
Prevent arbitrary files from being overwritten. There have been reports
that users have overwritten wallet files this way. It may also avoid
other security issues.

Fixes #9934. Adds mention to release notes and adds a test.

Github-Pull: #9937
Rebased-From: 0cd9273fd959c6742574259d026039f7da0309a2
2017-10-04 15:11:24 +02:00
MarcoFalke
019c492490 qa: Fix lcov for out-of-tree builds
Github-Pull: #11443
Rebased-From: fae60e338639b3a09d2f26d8eb5feb3bb576b1fd
2017-10-04 14:29:07 +02:00
MarcoFalke
e169349f8c qa: Restore bitcoin-util-test py2 compatibility
Github-Pull: #11433
Rebased-From: fafff1220cf798e25f02cdd8affb70506dd366cc
2017-10-04 11:59:33 +02:00
Matt Corallo
b6c0209aaf Fix validationinterface build on super old boost/clang
This should fix all the non-dependancy issues for termux builds.
See Github issue #11388.

Github-Pull: #11440
Rebased-From: 96c2ce9d343147608c197bc2333138b82141340f
2017-10-04 11:54:36 +02:00
Wladimir J. van der Laan
6a62c745a9 qt: Backup former GUI settings on -resetguisettings
Writes the GUI settings to `guisettings.bak` in the data directory
before wiping them. This can be used to retroactively troubleshoot
issues (e.g. #11262) where `-resetguisettings` solves the problem.

Github-Pull: #11338
Rebased-From: 723aa1b8752c1d6c6c0a76059c532ebe2f406fc1
2017-10-04 11:53:18 +02:00
Gregory Sanders
0fe2a9a196 when clearing addrman clear mapInfo and mapAddr
Github-Pull: #11252
Rebased-From: b86a42077a134888c53bfd406b87bf0a39c78264
2017-10-04 11:48:39 +02:00
Suhas Daftuar
6b4d9f2736 wallet: update stored witness in AddToWallet
Replace witness-stripped wallet transactions with full transactions;
this can happen when upgrading from a pre-segwit wallet to a segwit-
aware wallet.

Github-Pull: #11225
Rebased-From: d01a9682b126a5f83c7311e652e6e62f2c2e1d20
2017-10-04 11:47:44 +02:00
Gregory Sanders
806c78f014 add functional test for mempoolreplacement command line arg
Github-Pull: #11407
Rebased-From: 1088b5322d0e7a8366a285e2baa49c766a9ba5bd
2017-10-03 22:03:09 +02:00
Johnson Lau
a825d4af5e Fix bip68-sequence rpc test
Github-Pull: #11399
Rebased-From: 49f869fe91716785b3276925d64bf8955feff69f
2017-10-03 22:03:09 +02:00
Matt Corallo
a36f3320a9 Verify DBWrapper iterators are taking snapshots
The LevelDB docs seem to indicate that an iterator will not take
snapshots (even providing instructions on how to do so yourself).
In several of the places we use them, we assume snapshots to have
been taken.

In order to make sure LevelDB doesn't change out from under us
(and to prevent the next person who reads the docs from having the
same fright I did), verify that snapshots are taken in our tests.

Github-Pull: #11422
Rebased-From: bb8376bbc3d96af727444f90e5f60d47105609dc
2017-10-03 22:03:09 +02:00
Suhas Daftuar
8d2e51d862 qa: Fix bug introduced in p2p-segwit.py
Changing __init__() -> set_test_params() in the tests should not have
applied to NodeConnCB-derived objects.

Github-Pull: #11319
Rebased-From: f97ab35fa9687fd5c110ad6cca5be5b4a5c2142d
2017-10-03 22:03:09 +02:00
Suhas Daftuar
2f0b30a58a qa: Treat mininode p2p exceptions as fatal
Github-Pull: #11319
Rebased-From: a7820422e0b182db6f1df8904242e5d76d6c73fa
2017-10-03 22:03:09 +02:00
Andrew Chow
e4605d9dd4 Tests for zmqpubrawtx and zmqpubrawblock
Github-Pull: #10552
Rebased-From: d3677ab757ea57b21d8aed24d5bc3c4bfe9bb68c
2017-10-03 22:03:09 +02:00
Jim Posen
2c4ff35a8f [script] Unit tests for IsMine
Does not test watch-only addresses.

Github-Pull: #11116
Rebased-From: 7a1e873b27b790c965d9927ecd465710dc103136
2017-10-03 22:03:09 +02:00
Jim Posen
794a80eee3 [script] Unit tests for script/standard functions
Github-Pull: #11116
Rebased-From: d7afe2d1577eb3f6775301c81b94a191e0db99d9
2017-10-03 22:03:09 +02:00
John Newbery
f9cf7b589f [tests] Check connectivity before sending in assumevalid.py
assumevalid.py would try to send over a closed P2P connection in a loop,
hitting the following failure many times:

TestFramework.mininode (ERROR): Cannot send message. No connection to node!

The test still passes, but this is a lot of noise in the test log.

Just check that the connection is open before trying to send.

Github-Pull: #11345
Rebased-From: e9e9391083721ca9733cc00a1907384f83b6435e
2017-10-03 22:03:09 +02:00
John Newbery
f1ced0d776 [tests] Make p2p-leaktests.py more robust
Github-Pull: #11078
Rebased-From: 0063d2c3dce9d9c1678197d2c65ee878793d1ef9
2017-10-03 22:03:09 +02:00
MarcoFalke
2e1ac70df9 [qa] zapwallettxes: Wait up to 3s for mempool reload
Github-Pull: #11308
Rebased-From: fadd0c16b6bd62e9d663d906755320ae089e02d3
2017-10-03 22:03:08 +02:00
Cristian Mircea Messel
b6468d3c42 Add listwallets RPC test to multiwallet.py
Github-Pull: #11310
Rebased-From: fb1f3258225a7052f4fc9e3f2accc3811c53e221
2017-10-03 22:03:08 +02:00
John Newbery
d8dd8e7356 [tests] fixup dbcrash interaction with add_nodes()
Github-Pull: #11230
Rebased-From: 8fdb6f9126fe1e13b60de11fd34c204247679ef4
2017-10-03 22:03:08 +02:00
MarcoFalke
62d18cdb89 doc: Prepare release notes for 0.15.1 2017-10-03 20:28:38 +02:00
Paul Berg
8b61aee690 Put back inadvertently removed copyright notices
In an abundance of caution this restores "Bitcoin Developers" to the COPYING file in
case there were contributors before that point in time that would object to the
current label.  It's harmless and more pedantically correct.

[Change extracted from the Bitcoin-abc repository, commit message by gmaxwell]

Signed-off-by: Gregory Maxwell <greg@xiph.org>

Github-Pull: #11318
Rebased-From: d552ed678c2632bafeab695c639f5fe185dc9853
2017-10-03 20:18:01 +02:00
Matt Corallo
75997c3b35 Disallow uncompressed pubkeys in bitcoin-tx [multisig] output adds
Github-Pull: #11377
Rebased-From: 28d4542a0ac77a30a242d0568e580a5b437f53fa
2017-10-03 20:12:07 +02:00
MeshCollider
8d13b4298c Replace save|restoreWindowGeometry with Qt functions
Github-Pull: #11335
Rebased-From: 13baf7217bf8394ae02efc376208ae86eac4d0f6
2017-10-03 20:12:07 +02:00
Lucas Betschart
6642558078 [Qt] Add delay before filtering transactions
Fixes 3141

Github-Pull: #11015
Rebased-From: 7b137acedd5e2ff3fe5395a927c546a528b0cac6
2017-10-03 20:03:42 +02:00
Andrew Chow
19d63e8a93 Remove custom fee radio group
Removes the extraneous custom fee radio group and its single radio
button. The radio button is replaced with a label that has the
radio button's text.

Github-Pull: #11334
Rebased-From: e53fa4a1ca58ef46416c4a96542722601fb75c5a
2017-10-03 19:51:35 +02:00
Wladimir J. van der Laan
b1a6c94683 rpc: make estimatesmartfee argument naming consistent with documentation
Github-Pull: #11267
Rebased-From: 5acd82de9ad6df8cab922da66d49b8ff2bd35439
2017-10-03 19:30:27 +02:00
Wladimir J. van der Laan
921542e0bd rpc: update cli for estimatefee argument rename
The first argument of estimatesmartfee was renamed from nblocks to
conf_target in 06bcdb8da64502a64df03f3c89fbc6ccb72cd349. Update the
client-side table as well.

Github-Pull: #11267
Rebased-From: 24697c40ee6739b812259140042d426c81179977
2017-10-03 19:23:55 +02:00
MeshCollider
2e31b1d48d Fix division by zero in time remaining
Github-Pull: #11237
Rebased-From: 3b69a08c53c2ef738f32c270fdacf1e4ed5a4c97
2017-10-03 19:19:46 +02:00
João Barbosa
2b97b36e5d [test] Replace check_output with low level version
Github-Pull: #11125
Rebased-From: ce379b47b92d6c04250c21719bb1abfb41c586ad
2017-10-03 19:10:21 +02:00
João Barbosa
e38211f5e8 [test] Add assert_raises_process_error to assert process errors
Github-Pull: #11125
Rebased-From: 232e3e8471edb346c09f906c996b2f350cabc72a
2017-10-03 19:10:05 +02:00
João Barbosa
e0bfd28de2 [test] Add support for custom arguments to TestNodeCLI
Github-Pull: #11125
Rebased-From: 5c18a84b9a49e3f9dacf0502dbf7d5d755f38da6
2017-10-03 19:09:52 +02:00
João Barbosa
812c870043 [test] Improve assert_raises_jsonrpc docstring
Github-Pull: #11125
Rebased-From: e1274947d4574bb83a020d0e178f0e5db7fc6282
2017-10-03 19:09:43 +02:00
MarcoFalke
eeb24a3a01 [qa] TestNode: Add wait_until_stopped helper method
Github-Pull: #11067
Rebased-From: faa8d9581affde35a8242c63fca8a52004d4f943
2017-10-03 18:53:35 +02:00
MeshCollider
f3f7891776 Stop test_bitcoin-qt touching ~/.bitcoin
Github-Pull: #11210
Rebased-From: dea086f498097d19a2c9acbfc753c9c2d68dbb03
2017-10-03 18:53:16 +02:00
Chris Moore
47c02a8ae8 qt: Use IsMine to validate custom change address
(cherry picked from commit c41224dfd51c896341bbf2fa23e160bf5ffe27c3)

Github-Pull: #11247
Rebased-From: a1ea1cfbd8d4fc976f0ab2423d395e03ded6eedd
2017-10-03 18:52:28 +02:00
MeshCollider
f0b67954f0 Remove redundant testutil files
Github-Pull: #11234
Rebased-From: d1138e36208dac87a27f415f39c70377636e93f1
2017-10-03 18:50:43 +02:00
Cristian Mircea Messel
44241765e3 Improve signmessages functional test
This patch improves branch coverage of the test, making sure a
message can not be verified with the wrong address or signature.

Github-Pull: #11241
Rebased-From: b3d6fc654770e3b4d2f82e8d77e531df9e522982
2017-10-03 18:49:02 +02:00
Daniel Edgecumbe
7310f1f2eb [Qt] Fix display of package name on 'open config file' tooltip
Github-Pull: #11198
Rebased-From: 14ccd4d8d1847d64903224562ad3c7eb795b3781
2017-10-03 18:46:51 +02:00
John Newbery
cef03198dc [tests] fixups from set_test_params()
Github-Pull: #11215
Rebased-From: 3918d93f3cd2305dc12cb964aebba0fc1f8720b4
2017-10-03 18:45:11 +02:00
John Newbery
82bf6fc6d4 [tests] Functional tests must explicitly set num_nodes
Github-Pull: #11121
Rebased-From: 7148b74dc39110f53c665b94fa9d994c6ad6dc1c
2017-10-03 18:44:16 +02:00
John Newbery
801d2ae924 [tests] don't override __init__() in individual tests
Almost all test scripts currently need to override the __init__()
method. When they do that they need to call into super().__init__() as
the base class does some generic initialization.

This commit makes the base class __init__() call into set_test_params()
method. Individual test cases can override set_test_params() to setup
their test parameters.

Github-Pull: #11121
Rebased-From: 5448a1471d6fc638a2220ea5a2f3782172efe14c
2017-10-03 18:43:43 +02:00