Commit graph

467 commits

Author SHA1 Message Date
MarcoFalke
cd66d8b1d8
Merge #20429: refactor: replace (sizeof(a)/sizeof(a[0])) with C++17 std::size
e829c9afbf refactor: replace sizeof(a)/sizeof(a[0]) by std::size (C++17) (Sebastian Falbesoner)
365539c846 refactor: init vectors via std::{begin,end} to avoid pointer arithmetic (Sebastian Falbesoner)
63d4ee1968 refactor: iterate arrays via C++11 range-based for loops if idx is not needed (Sebastian Falbesoner)

Pull request description:

  This refactoring PR picks up the idea of #19626 and replaces all occurences of `sizeof(x)/sizeof(x[0])` (or `sizeof(x)/sizeof(*x)`, respectively) with the now-available C++17 [`std::size`](https://en.cppreference.com/w/cpp/iterator/size)  (as [suggested by sipa](https://github.com/bitcoin/bitcoin/pull/19626#issuecomment-666487228)), making the macro `ARRAYLEN` obsolete.

  As preparation for this, two other changes are done to eliminate `sizeof(x)/sizeof(x[0])` usage:
  * all places where arrays are iterated via an index are changed to use C++11 range-based for loops If the index' only purpose is to access the array element (as [suggested by MarcoFalke](https://github.com/bitcoin/bitcoin/pull/19626#discussion_r463404541)).
  * `std::vector` initializations are done via `std::begin` and `std::end` rather than using pointer arithmetic to calculate the end (also [suggested by MarcoFalke](https://github.com/bitcoin/bitcoin/pull/20429#discussion_r567418821)).

ACKs for top commit:
  practicalswift:
    cr ACK e829c9afbf: patch looks correct
  fanquake:
    ACK e829c9afbf
  MarcoFalke:
    review ACK e829c9afbf 🌩

Tree-SHA512: b01d32c04b9e04d562b7717cae00a651ec9a718645047a90761be6959e0cc2adbd67494e058fe894641076711bb09c3b47a047d0275c736f0b2218e1ce0d193d
2021-02-18 07:53:37 +01:00
Jonas Schnelli
c286a22f7b Add debug startup parameter -fastprune for more effective pruning tests 2021-02-16 10:26:17 +01:00
James O'Beirne
7a6c46b37e
chainparams: add allowed assumeutxo values
Values for mainnet and testnet will be specified in a follow-up PR that can be
scrutinized accordingly. This structure is required for use in snapshot activation
logic.
2021-02-12 07:53:22 -06:00
Steven Roose
fe03729338
dynafed: Support changing mainnet dynafed activation
This should obviously only be done by blocksigners. The flag used is not
documented.
2021-02-10 14:07:06 +01:00
Sebastian Falbesoner
365539c846 refactor: init vectors via std::{begin,end} to avoid pointer arithmetic 2021-01-31 17:35:01 +01:00
Sjors Provoost
3e6657a14d
Move signet onion seed from v2 to v3 2020-12-15 14:12:01 +01:00
Andrew Poelstra
8712faa87c Merge 1e17114917 into merged_master (Bitcoin PR #20238) 2020-12-02 15:44:44 +00:00
Andrew Poelstra
0a4ca5becf Merge ca18860563 into merged_master (Bitcoin PR #20263) 2020-12-02 01:27:52 +00:00
Andrew Poelstra
eebfc818d0 Merge 0f86e7f128 into merged_master (Bitcoin PR #20157) 2020-12-01 14:25:00 +00:00
Andrew Poelstra
205b628304 Merge 2947ae6f85 into merged_master (Bitcoin PR #20035) 2020-12-01 04:33:11 +00:00
Andrew Poelstra
e765fc93ea Merge 3caee16946 into merged_master (Bitcoin PR #19953)
Taproot :D
2020-12-01 02:54:57 +00:00
Andrew Poelstra
3ce8ed9bb5 Merge 88067ddbe4 into merged_master (Elements PR #912)
Also fixed an intermittent failure in feature_assetsdir.py that has
been bugging me for the entire rebase.
2020-11-30 15:19:14 +00:00
Andrew Poelstra
e5875a75bc Merge 9fc2f011ba into merged_master (Bitcoin PR #20048) 2020-11-30 03:46:23 +00:00
Andrew Poelstra
86c430b852 Merge 3487e421a7 into merged_master (Bitcoin PR #20004) 2020-11-30 03:25:50 +00:00
Andrew Poelstra
e3853b414c Merge 5c435c78e3 into merged_master (Bitcoin PR #20036) 2020-11-30 02:29:24 +00:00
Andrew Poelstra
455f61c0db Merge 8c5f68118c into merged_master (Bitcoin PR #18267)
This commit adds signet support, which is a little bit silly/redundant for us :)
Was a surprisingly easy merge to handle, and hopefully in future Core is more
mindful of signed blocks when they are changing code architecture.

I had to change a couple lines of src/signet.cpp to add blank assets to the
CTxOuts and to find transaction input scriptWitnesses. No need to add any
other tx witness data (and the CAsset()s that I did add to make things compile
won't be used..) because signet will always have g_con_elementsmode off.
2020-11-29 16:57:55 +00:00
Andrew Poelstra
87a94621e7 Merge ce3bdd0ed1 into merged_master (Bitcoin PR #19316) 2020-11-27 16:20:25 +00:00
Andrew Poelstra
2942044881 Merge 62d137ac3b into merged_master (Bitcoin PR #19561) 2020-11-26 22:20:40 +00:00
Andrew Poelstra
b9258b80c0 Merge 86590c17fc into merged_master (Bitcoin PR #19284) 2020-11-26 01:09:06 +00:00
Andrew Poelstra
fd37b7c5d6 Merge 54f812d9d2 into merged_master (Bitcoin PR #18673) 2020-11-26 01:08:23 +00:00
Andrew Poelstra
6a9d7ff23b Merge b83565625e into merged_master (Bitcoin PR #18500) 2020-11-26 01:08:08 +00:00
Andrew Poelstra
70819cbab4 Merge 36f42e1bf4 into merged_master (Bitcoin PR #18037) 2020-11-26 01:07:43 +00:00
MarcoFalke
1e17114917
Merge #20238: doc: Missing comments for signet parameters
9c08f3332c doc: Missing comments for signet parameters (kanon)

Pull request description:

  We have such comment in chainparams.cpp. However in Signet the comments are missing.

  In example...

  - Mainnet
  d67883d01e/src/chainparams.cpp (L83-L84)

  - Testnet
  d67883d01e/src/chainparams.cpp (L196-L197)

  - Regtest
  d67883d01e/src/chainparams.cpp (L392-L393)

ACKs for top commit:
  theStack:
    ACK 9c08f3332c

Tree-SHA512: d4e488cf01e50d6320282b29d776c11e6b3d423f9268226749f738a57a51f456b6bd48334d2d5a43afa782df65ea15525a0af1688003c1be6ef915c05650e147
2020-11-16 10:40:56 +01:00
Andrew Poelstra
009bc2fdfb Merge 99813a9745 into merged_master (Bitcoin PR #17829) 2020-11-14 16:52:02 +00:00
Andrew Poelstra
28623acd36 Merge 45f04d9753 into merged_master (Elements PR #784) 2020-11-14 16:51:50 +00:00
Andrew Poelstra
2213cc6334 Merge 21ee676dd6 into merged_master (Bitcoin PR #17449) 2020-11-09 23:10:11 +00:00
Andrew Poelstra
19ad9587c8 Merge ccf6697e3b into merged_master (Elements PR #780) 2020-11-09 23:10:11 +00:00
Andrew Poelstra
3613ae283d Merge f60e0684d1 into merged_master (Elements PR #773) 2020-11-09 23:10:10 +00:00
Andrew Poelstra
ca29b12b22 Merge 53afce3b0b into merged_master (Elements PR #769)
This PR was broken; also pull in the change from #770 which fixes it,
so #770 will be an empty merge.
2020-11-09 21:20:52 +00:00
Andrew Poelstra
d4adfa0935 Merge f129170b85 into merged_master (Bitcoin PR #17306) 2020-11-09 21:20:47 +00:00
Andrew Poelstra
c7eefa8ea4 Merge 4b51ed89cf into merged_master (Bitcoin PR #17002) 2020-11-09 21:20:32 +00:00
Andrew Poelstra
d1ed1db7fc Merge 6b2210f101 into merged_master (Bitcoin PR #16713) 2020-11-09 21:20:29 +00:00
Andrew Poelstra
acb351bf48 Merge 690fed668c into merged_master (Elements PR #720) 2020-11-09 21:20:29 +00:00
Andrew Poelstra
dad5fd9884 Merge 1e5da20b5e into merged_master (Elements PR #717) 2020-11-09 21:20:28 +00:00
Andrew Poelstra
f818373174 Merge 4d9fa049af into merged_master (Elements PR #708) 2020-11-09 21:20:24 +00:00
Andrew Poelstra
9cc26a716a Merge 5b2fe5563b into merged_master (Elements PR #642)
FIXME: we disable standardness checks for the non-PAK node in the PAK tests.
This is because of a bug in Elements which causes non-PAK nodes to reject
pegouts for standardness reasons. Need to fix it after the rebase.
2020-11-09 21:20:21 +00:00
Andrew Poelstra
5f280a6068 Merge 1bf2ff2bf8 into merged_master (Bitcoin PR #16060) 2020-11-09 21:20:15 +00:00
Andrew Poelstra
29e9ba5bc9 Merge dfb7fd60f2 into merged_master (Bitcoin PR #16402) 2020-11-09 21:20:08 +00:00
Andrew Poelstra
b57516e11a Merge 24dbcf3808 into merged_master (Bitcoin PR #15891)
Disabled a test that `-acceptnonstdtxn` is disabled on mainnet, because
I couldn't figure out how to make the test jig choose mainnet.
2020-11-09 21:20:06 +00:00
Andrew Poelstra
69dd3ef807 Merge c799976c86 into merged_master (Bitcoin PR #16128) 2020-11-09 03:58:20 +00:00
MarcoFalke
fa90ba36d3
Update assumed chain params 2020-11-02 09:22:08 +01:00
kanon
9c08f3332c doc: Missing comments for signet parameters 2020-10-26 04:38:23 -04:00
MarcoFalke
0f86e7f128
Merge #20157: Bugfix: chainparams: Add missing (always enabled) Taproot deployment for Signet
2d5793c016 Bugfix: chainparams: Add missing (disabled) Taproot deployment for Signet (Luke Dashjr)

Pull request description:

  Is there a way we can trigger compiler warnings if a deployment is undefined?

ACKs for top commit:
  decryp2kanon:
    utACK 2d5793c016
  MarcoFalke:
    review ACK 2d5793c016

Tree-SHA512: 135cefae0f8dc552b0f682c2b87cabca7a4716290a36410a55968850e803a5049234e3cc597c8ef8d7917ae5d5ea3fb851e160df171b6793114c6bc01c5ea3e7
2020-10-21 14:19:33 +02:00
Luke Dashjr
2d5793c016 Bugfix: chainparams: Add missing (disabled) Taproot deployment for Signet 2020-10-20 13:32:23 +00:00
MarcoFalke
fa723e3d43
Initialize default-initialized uint256 consensus params to zero explicitly 2020-10-16 06:29:23 +02:00
MarcoFalke
fa729cdb2c
doc: Move assumed-values doxygen comments to header 2020-10-15 11:28:13 +02:00
MarcoFalke
fa64892b82
signet: Fix uninitialized read in validation 2020-10-15 11:27:43 +02:00
Pieter Wuille
d7ff237f29 Activate Taproot/Tapscript on regtest (BIP 341, BIP 342)
Define a versionbits-based activation for the new consensus rules on regtest.
No activation or activation mechanism is defined for testnet or mainnet.
2020-10-12 17:18:47 -07:00
Jon Atack
6fccad7f71
signet: do not log signet startup messages for other chains
and move signet network magic logging from chainparams.cpp to init.cpp
2020-10-01 11:25:42 +02:00
Steven Roose
afcb71f87d
Speficy dynafed deployment for Liquidv1
Bit: 25
Start: block 1,000,000 (recent past)
Timeout: never
2020-09-30 18:57:47 +02:00