Commit Graph

19326 Commits

Author SHA1 Message Date
Wladimir J. van der Laan
e0eea2db3c
Merge #12856: Tests: Add Metaclass for BitcoinTestFramework
c9cce0a Tests: Add Metaclass for BitcoinTestFramework (Will Ayd)

Pull request description:

  BitcoinTestFramework instructs developers in its docstring to override
  `set_test_params` and `run_test` in subclasses while being sure NOT to
  override `__init__` and `main` . This change adds a metaclass to ensure
  that developers adhere to that protocol, raising a ``TypeError`` in
  instances where they have not.

  closes #12835

Tree-SHA512: 5a47a7ead1f18361138cad4374747c4a8f29d25506f7b2c2a8c1c966a0b65e5ccf7317f9a078df8680fdab5d3fb71fee46a159c9f381878a3683c1e9f874abbe
2021-05-23 01:19:32 +03:00
Wladimir J. van der Laan
546c263eab
Merge #12860: Add testmempoolaccept to release-notes, Add missing const
fafcad3 doc: Add testmempoolaccept to release-notes (MarcoFalke)

Pull request description:

  Some fixups for #11742:

  * Add release notes for the new rpc
  * Fix a typo in the original pull
  * Make the mempool reference passed to `CheckInputsFromMempoolAndCache` const, since that function is called before we return from ATMP and we must not modify the mempool.

Tree-SHA512: 72c459ba69f7698a69c91d2592f10f7fb1864846c7d8c525050d48286f92ba5ec5fe554c54235b52fbd9a8f00226c526ad84584641ec39084e1a1310a261510d
2021-05-23 01:19:32 +03:00
Wladimir J. van der Laan
213e509f30
Merge #12766: [Tests] Tidy up REST interface functional tests
55efc1f [tests] simplify binary and hex response parsing in interface_rest.py (Roman Zeyde)
ade5964 [tests] only use 2 nodes in interface_rest.py (John Newbery)
ad00fbe [tests] refactor interface_rest.py to avoid code repetition (John Newbery)
7a3181a [tests] Make json request building more consistent in interface_rest.py (John Newbery)
3fd4490 [tests] improve logging and documentation in interface_rest.py (John Newbery)
abf190e [tests] fix flake8 warnings in interface_rest.py test (John Newbery)

Pull request description:

  Following the comment at https://github.com/bitcoin/bitcoin/pull/12717#pullrequestreview-106189117.

Tree-SHA512: b55560f0d8f3069584f5a2398285483a0a23514b2b2bd2c1ced2db1cb30dc24f60f720d0fa4de30259f7918d3178d94680ae9321649544d1d04d687a2e672559
2021-05-23 01:19:32 +03:00
MarcoFalke
778d749e16
Merge #12853: qa: Match full plain text by default
faace13868 qa: Match full plain text by default (MarcoFalke)

Pull request description:

  Instead of escaping all full plain text error strings, just compare their strings by default.

Tree-SHA512: 42e28f55105eb947ac6af6ce4056f0ec0f701d85f1c2a38b35ab777bbdf2296bdb79639c345621b8adc03a98b28c7630ded9a67b8b04a48e2c3a49d598ecdcd7
2021-05-23 01:19:32 +03:00
MarcoFalke
376457d129
Merge #12846: [moveonly] Extract HelpRequested to dry up the help options testing
b386970d07 [moveonly] Extract HelpRequested to dry up the help options testing (Ben Woosley)

Pull request description:

  This ensures consistency across interfaces and makes the version handling more clear.

Tree-SHA512: d3f46d34dae6cf98902b0bbb279ada65c3215a25f69e5ff98b88e68f37a6b027ded265d15c12303998e31b390aa30fdb689455c61c983ab4b7527cbce8f4ec61
2021-05-23 01:19:32 +03:00
MarcoFalke
31e0fb550f
Merge #14819: Bugfix: test/functional/mempool_accept: Ensure oversize transaction is actually oversize
29aeed1734 Bugfix: test/functional/mempool_accept: Ensure oversize transaction is actually oversize (Luke Dashjr)

Pull request description:

  Simply integer dividing results in an acceptable size if the limit isn't an exact multiple of the input size.
  Use math.ceil to ensure the transaction is always oversize.

  (This issue can be triggered by changing the address style used.)

Tree-SHA512: e45062b0e8a3e9cb08e9dac5275b68d86e4377b460f1b3b995944090a055b0542a6986826312ec0e223369838094e42e20d8614b5c2bab9975b9a6f749295b21
2021-05-23 01:19:32 +03:00
Wladimir J. van der Laan
50607de7b2
Merge #11742: rpc: Add testmempoolaccept
b55555d rpc: Add testmempoolaccept (MarcoFalke)

Pull request description:

  To check if a single raw transaction makes it into the current transaction pool, one had to call `sendrawtransaction`. However, on success, this adds the transaction to the mempool with no easy way to undo.

  The call `testmempoolaccept` is introduced to provide a way to solely check the result without changing the mempool state.

Tree-SHA512: 5afd9311190135cee8fc1f229c7d39bf893f1028f29e28d34f70df820198ff97b4bf86b41cbbd6e6c36a5c30073cefa92d541c74a4939c7a2a6fa283dfd41b63
2021-05-23 01:19:31 +03:00
PastaPastaPasta
b76e7fec1f
Merge pull request #4164 from kittywhiskers/auxprs
Merge #19660, #19373, #19841, #13862, #13866, #17280, #17682 and partial #19326, #14978: Auxiliary Backports
2021-05-21 14:25:27 -05:00
Kittywhiskers Van Gogh
170551bb94 Merge #17682: Update tinyformat to upstream 2021-05-20 10:15:17 +05:30
Kittywhiskers Van Gogh
6a73b70131 Merge #17280: Change occurences of c_str() used with size() to data() 2021-05-20 10:15:17 +05:30
Kittywhiskers Van Gogh
abffb58b5e Merge #13866: Use _wfopen and _wfreopen on Windows 2021-05-20 10:15:17 +05:30
Kittywhiskers Van Gogh
96eaef33ee Merge #13862: drop boost::interprocess::file_lock 2021-05-20 10:15:17 +05:30
Kittywhiskers Van Gogh
e3443643f3 Partial #14978: Factor out PSBT utilities from RPCs for use in GUI code; related refactoring
Only contains 162ffefd2f562169725559906601c25c579aa91c
2021-05-20 10:15:17 +05:30
Kittywhiskers Van Gogh
41eaee235e Merge #19841: Implement Keccak and SHA3_256 2021-05-20 10:15:17 +05:30
Kittywhiskers Van Gogh
56f1b2d01c Partial #19326: Simplify hash.h interface using Spans 2021-05-20 10:15:17 +05:30
Kittywhiskers Van Gogh
01272b159d Merge #19373: Replace HexStr(o.begin(), o.end()) with HexStr(o) 2021-05-20 10:15:17 +05:30
Kittywhiskers Van Gogh
bc2f11f230 Partial #19660: Make HexStr take a span
Comment from 6f7b52ac63a71d2706022ca58d69a1a622e0fa37: "The fix for CPubKey is a part of `#13557: BIP 174 PSBT Serializations and RPCs` which wasn't backported yet"
2021-05-20 10:15:17 +05:30
PastaPastaPasta
2f555f87d1
Merge pull request #4028 from kittywhiskers/asmap
merge #17812, #16702, #16730, #18023: supplying and using asmap to improve IP bucketing in addrman
2021-05-19 18:18:44 -05:00
UdjinM6
8cfd2fc514
Merge branch 'master' into merge_master_0.17.0.2 2021-05-20 00:08:34 +03:00
Kittywhiskers Van Gogh
f3819c4eef Merge #18023: Fix some asmap issues 2021-05-20 00:05:12 +05:30
Kittywhiskers Van Gogh
401098283e Merge #17812: asmap feature refinements and functional tests 2021-05-20 00:05:12 +05:30
Kittywhiskers Van Gogh
4b2b5f78d4 Merge #16702: supplying and using asmap to improve IP bucketing 2021-05-20 00:05:09 +05:30
UdjinM6
79a1b1aa47
Merge pull request #4163 from xdustinface/backport-bls-1.1.0
[v0.17.x] Backport #4162 and bump to v0.17.0.2
2021-05-19 05:00:56 +03:00
xdustinface
139b87f865 doc: Update man page 2021-05-19 03:39:35 +02:00
xdustinface
17b7ab1b63 Bump version to 0.17.0.2 2021-05-19 03:39:35 +02:00
xdustinface
fd9ff7d03c depends: Bump bls-dash to 1.1.0 (#4162) 2021-05-19 03:39:24 +02:00
dustinface
021671bc4e
depends: Bump bls-dash to 1.1.0 (#4162) 2021-05-19 04:20:44 +03:00
UdjinM6
85cf890b3a
Merge pull request #4161 from UdjinM6/upgrade_isdb_on_dip20_v0.17.0.1
[v0.17.x] Backport 4159+4160 and bump to v0.17.0.1
2021-05-19 03:04:25 +03:00
UdjinM6
e0f95ae113
Update man pages 2021-05-19 02:04:24 +03:00
UdjinM6
1536a05d41
Bump version to 0.17.0.1 2021-05-19 02:04:24 +03:00
UdjinM6
3ff90110cb
instantsend: Use NotifyEntryRemoved signal instead of calling CInstantSendManager::TransactionRemovedFromMempool from CTxMemPool::removeUnchecked directly (#4160)
* instantsend: Use `NotifyEntryRemoved` signal instead of calling `CInstantSendManager::TransactionRemovedFromMempool` from `CTxMemPool::removeUnchecked` directly

Fixes potential mempool.cs vs cs_main (in RemoveConflictingLock) deadlock

* Apply suggestions from code review

yay, typso!

Co-authored-by: PastaPastaPasta <6443210+PastaPastaPasta@users.noreply.github.com>

Co-authored-by: PastaPastaPasta <6443210+PastaPastaPasta@users.noreply.github.com>
2021-05-19 02:04:18 +03:00
UdjinM6
cd7cd85fe7
instantsend: Use NotifyEntryRemoved signal instead of calling CInstantSendManager::TransactionRemovedFromMempool from CTxMemPool::removeUnchecked directly (#4160)
* instantsend: Use `NotifyEntryRemoved` signal instead of calling `CInstantSendManager::TransactionRemovedFromMempool` from `CTxMemPool::removeUnchecked` directly

Fixes potential mempool.cs vs cs_main (in RemoveConflictingLock) deadlock

* Apply suggestions from code review

yay, typso!

Co-authored-by: PastaPastaPasta <6443210+PastaPastaPasta@users.noreply.github.com>

Co-authored-by: PastaPastaPasta <6443210+PastaPastaPasta@users.noreply.github.com>
2021-05-19 01:02:31 +02:00
UdjinM6
8b831eeb7e
instantsend: Postpone mempool related cleanup fixes until dip0020 activation (#4159)
* instantsend: Upgrade IS db on dip0020 activation

* instantsend: Do not remove islocks for txes removed from mempool until dip0020 is activated

* refactor: introduce fUpgradedDB to avoid excessive locking and checking the state

* llmq: Decouple `fUpgradedDB` from `cs`

* Update src/llmq/quorums_instantsend.cpp

Co-authored-by: dustinface <35775977+xdustinface@users.noreply.github.com>

* Fix deadlock

Upgrade locks cs_main via GetTransaction

Co-authored-by: xdustinface <xdustinfacex@gmail.com>
Co-authored-by: dustinface <35775977+xdustinface@users.noreply.github.com>
2021-05-19 00:49:45 +03:00
UdjinM6
a02f8302d9
instantsend: Postpone mempool related cleanup fixes until dip0020 activation (#4159)
* instantsend: Upgrade IS db on dip0020 activation

* instantsend: Do not remove islocks for txes removed from mempool until dip0020 is activated

* refactor: introduce fUpgradedDB to avoid excessive locking and checking the state

* llmq: Decouple `fUpgradedDB` from `cs`

* Update src/llmq/quorums_instantsend.cpp

Co-authored-by: dustinface <35775977+xdustinface@users.noreply.github.com>

* Fix deadlock

Upgrade locks cs_main via GetTransaction

Co-authored-by: xdustinface <xdustinfacex@gmail.com>
Co-authored-by: dustinface <35775977+xdustinface@users.noreply.github.com>
2021-05-18 15:29:51 -05:00
Kittywhiskers Van Gogh
6a25151bbd Merge #16730: Support serialization of std::vector<bool> 2021-05-18 22:31:54 +05:30
PastaPastaPasta
0e3aea8c4e
Update CLIENT_VERSION_IS_TRUE in configure.ac (#4148) 2021-05-18 01:02:18 +03:00
UdjinM6
876173241f
doc: Archive v0.16.1.1 release notes, draft v0.17 release notes (#4156)
* doc: Archive 0.16.1.1 release notes

* doc: Draft v0.17 release notes

* Apply suggestions from code review

Co-authored-by: thephez <thephez@users.noreply.github.com>

* tweak downgrade note

* move PS->CJ section down

* Statoshi

* Update doc/release-notes.md

Co-authored-by: thephez <thephez@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: dustinface <35775977+xdustinface@users.noreply.github.com>

* Add more details about upgrades/downgrades

* 0.17 -> 0.17.0.0

Co-authored-by: thephez <thephez@users.noreply.github.com>
Co-authored-by: dustinface <35775977+xdustinface@users.noreply.github.com>
2021-05-18 01:01:55 +03:00
UdjinM6
8b1350962d
Merge pull request #4157 from PastaPastaPasta/more-backports
v0.17: additional backports
2021-05-18 00:58:53 +03:00
UdjinM6
d34286fa3e
build: Fix cmake prefix for bls-dash package (#4158) 2021-05-17 16:29:24 -04:00
UdjinM6
288f5976a8
build: Fix cmake prefix for bls-dash package (#4158) 2021-05-17 23:22:48 +03:00
UdjinM6
598932748c qt: Transaltions202105 (#4137)
* Abstract some error specifics away

* `make translate`

* ru

* fi
2021-05-15 20:14:54 -05:00
UdjinM6
45420739c9
Merge pull request #4151 from PastaPastaPasta/0.17-backport-candidates
v17: backport candidates
2021-05-15 23:50:29 +03:00
UdjinM6
f18d4e1d1c instantsend: Remove islocks for rejected/removed txes (#4155)
* instantsend: Resolve block conflicts first and take care of mempool ones later

* refactor: Rename RemoveChainLockConflictingLock -> RemoveConflictingLock

* instantsend: Handle transaction removal from mempool (for all reasons besides inclusion in blocks)

* instantsend: Remove old islocks with no known txes from db (once)

* refactor: Replace magic number with CURRENT_VERSION

* fix: Do not remove islocks for (yet) valid orphans

* Apply suggestions from code review

Co-authored-by: dustinface <35775977+xdustinface@users.noreply.github.com>

Co-authored-by: dustinface <35775977+xdustinface@users.noreply.github.com>
2021-05-14 19:17:50 -05:00
UdjinM6
a89202726f
instantsend: Remove islocks for rejected/removed txes (#4155)
* instantsend: Resolve block conflicts first and take care of mempool ones later

* refactor: Rename RemoveChainLockConflictingLock -> RemoveConflictingLock

* instantsend: Handle transaction removal from mempool (for all reasons besides inclusion in blocks)

* instantsend: Remove old islocks with no known txes from db (once)

* refactor: Replace magic number with CURRENT_VERSION

* fix: Do not remove islocks for (yet) valid orphans

* Apply suggestions from code review

Co-authored-by: dustinface <35775977+xdustinface@users.noreply.github.com>

Co-authored-by: dustinface <35775977+xdustinface@users.noreply.github.com>
2021-05-14 19:17:16 -05:00
UdjinM6
20b71700dc
Merge pull request #4037 from kittywhiskers/serialize
merge #12752, #10785, #17896, #17957, #18021, #18112: serialization improvements
2021-05-15 02:06:43 +03:00
UdjinM6
9f9a08ae80 evo: Fix two mempool issues (#4154)
* evo: Remove all protx-es that refer to a ProRegTx removed from mempool

* tests: Check that removal of ProRegTx causes removal of other protx-es that refer to it

* evo: Consider tx itself a collateral in mempool maps when payload collateral hash is null

* tests: Should not allow a ProRegTx which uses another ProRegTx as an external collateral to enter mempool

Signed-off-by: pasta <pasta@dashboost.org>
2021-05-14 15:00:26 -05:00
Kittywhiskers Van Gogh
027c4653ba depends: update Qt 5.9 source url (#4153) 2021-05-14 13:19:13 -05:00
dustinface
8bd3fd32ca contrib|src: Update hard coded seeds (#4152)
* contrib: Update IPs in nodes_main.txt and nodes_test.txt

Mainnet: 1469339
Testnet: 498026

* src: Update static seeds in chainparamsseeds.h
2021-05-14 13:19:04 -05:00
PastaPastaPasta
5f79a02d26 increase BLOCK_CHAIN_SIZE marginally (#4150) 2021-05-14 13:18:52 -05:00
thephez
b7c47b5729 docs: update bips.md for v0.17 (#4149) 2021-05-14 13:17:40 -05:00