Glenn Willen
68eb0864cb
Refactor CBlockIndex to make proof and dynafed fields optional.
2022-12-12 09:46:04 -08:00
Byron Hambly
661c6c7094
feat: change getnewblockhex to take multiple commitments
...
Modifies the getnewblockhex json rpc call to accept an array of
commitments instead of a single commitment.
Backwards compatibility is maintained by first attempting to parse as a
string for a singular commitment.
2022-09-07 14:43:10 +02:00
Andrew Poelstra
47164a1e9c
Merge ddc6979b8b into merged_master (Bitcoin PR bitcoin/bitcoin#19438 )
2021-07-30 16:16:50 +00:00
Andrew Poelstra
34da23bd1a
Merge a55904a80c into merged_master (Bitcoin PR bitcoin/bitcoin#21866 )
...
Paying the piper for some lazy use of globals, including ones I added
in 8e770d3f21
Had to add another couple methods to interfaces::Chain
2021-07-29 13:18:11 +00:00
Andrew Poelstra
b654bb7f5e
Merge f63fc53c2a into merged_master (Bitcoin PR bitcoin/bitcoin#21767 )
2021-07-20 05:10:30 +00:00
Andrew Poelstra
13aa8af68b
Merge 0dd7b23489 into merged_master (Bitcoin PR #21391 )
2021-06-30 19:20:29 +00:00
Anthony Towns
c5f36725e8
[refactor] Move ComputeBlockVersion into VersionBitsCache
...
This also changes ComputeBlockVersion to take the versionbits cache
mutex once, rather than once for each versionbits deployment.
2021-06-30 08:19:12 +10:00
Anthony Towns
2b0d291da8
[refactor] Add deploymentstatus.h
...
Provides DeploymentEnabled, DeploymentActiveAt, and DeploymentActiveAfter
helpers for checking the status of buried deployments. Can be overloaded
so the same syntax works for non-buried deployments, allowing future
soft forks to be changed from signalled to buried deployments without
having to touch the implementation code.
Replaces IsWitnessEnabled and IsScriptWitnessEnabled.
2021-06-29 17:11:12 +10:00
Andrew Poelstra
bc51e4e896
Merge 80a699fda9 into merged_master (Bitcoin PR #21525 )
2021-06-29 01:29:25 +00:00
Andrew Poelstra
26fd4eb181
Merge a9d1b40d53 into merged_master (Bitcoin PR #21415 )
2021-06-27 15:02:35 +00:00
Andrew Poelstra
05bd3e6667
Merge 767bb7d5c5 into merged_master (Bitcoin PR #21270 )
2021-06-26 19:21:09 +00:00
Andrew Poelstra
2885d86bf7
Merge 44f4bcd302 into merged_master (Bitcoin PR #20749 )
...
More-or-less mechanical fixes to conflicts (checking upstream diff and chasing
compiler errors).
2021-06-20 14:54:25 +00:00
Andrew Poelstra
e5cb4cb00e
Merge f13e03cda2 into merged_master (Bitcoin PR #20584 )
2021-06-16 20:58:56 +00:00
Carl Dong
6c3b5dc0c1
scripted-diff: tree-wide: Remove all review-only assertions
...
-BEGIN VERIFY SCRIPT-
find_regex='((assert|CHECK_NONFATAL)\(std::addressof|TODO: REVIEW-ONLY)' \
&& git grep -l -E "$find_regex" -- . \
| xargs sed -i -E "/${find_regex}/d"
-END VERIFY SCRIPT-
2021-06-10 15:05:24 -04:00
Carl Dong
3e82abb8dd
tree-wide: Remove stray review-only assertion
...
Unfortunately, these assertion don't fit the regex in the scripted-diff.
Therefore, we remove it manually.
2021-06-10 15:04:39 -04:00
Carl Dong
e6b4aa6eb5
miner: Pass in chainman to RegenerateCommitments
...
Pass in chainman instead of prev_block so that we can enforce the
block.hashPrevBlock refers to prev_block invariant in the function
itself.
We should probably rethink BlockAssembler's API and somehow include
commitment regeneration functionality in there. Something like a variant
of CreateNewBlock that takes in a std::vector<TxRef> and return a CBlock
instead of CBlockTemplate. That could avoid reaching for
LookupBlockIndex at all.
2021-05-27 13:50:11 -04:00
Carl Dong
cced0f46c9
miner: Pass in previous CBlockIndex to RegenerateCommitments
2021-04-05 11:13:51 -04:00
Carl Dong
7b8e976cd5
miner: Add chainstate member to BlockAssembler
2021-03-24 15:40:56 -04:00
Carl Dong
e62067e7bc
Revert "miner: Pass in chainstate to BlockAssembler::CreateNewBlock"
...
This reverts commit d0de61b764 .
2021-03-24 15:40:56 -04:00
Carl Dong
0c1b2bc549
Revert "miner: Remove old CreateNewBlock w/o chainstate param"
...
This reverts commit 2afcf24408 .
2021-03-24 15:40:56 -04:00
fanquake
ebc4ab721b
refactor: post Optional<> removal cleanups
2021-03-17 14:56:20 +08:00
fanquake
57e980d13c
scripted-diff: remove Optional & nullopt
...
-BEGIN VERIFY SCRIPT-
git rm src/optional.h
sed -i -e 's/Optional</std::optional</g' $(git grep -l 'Optional<' src)
sed -i -e 's/{nullopt}/{std::nullopt}/g' $(git grep -l 'nullopt' src)
sed -i -e 's/ nullopt;/ std::nullopt;/g' $(git grep -l 'nullopt' src)
sed -i -e 's/ nullopt)/ std::nullopt)/g' $(git grep -l 'nullopt' src)
sed -i -e 's/(nullopt)/(std::nullopt)/g' $(git grep -l 'nullopt' src)
sed -i -e 's/ nullopt,/ std::nullopt,/g' $(git grep -l 'nullopt' src)
sed -i -e 's/? nullopt :/? std::nullopt :/g' $(git grep -l 'nullopt' src)
sed -i -e 's/: nullopt}/: std::nullopt}/g' $(git grep -l 'nullopt' src)
sed -i -e '/optional.h \\/d' src/Makefile.am
sed -i -e '/#include <optional.h>/d' src/test/fuzz/autofile.cpp src/test/fuzz/buffered_file.cpp src/test/fuzz/node_eviction.cpp
sed -i -e 's/#include <optional.h>/#include <optional>/g' $(git grep -l '#include <optional.h>' src)
-END VERIFY SCRIPT-
2021-03-15 10:41:30 +08:00
Carl Dong
2c3ba00693
miner: Pass in blockman to ::RegenerateCommitments
...
REQUIRES ATTENTION
2021-03-08 15:54:31 -05:00
Carl Dong
2afcf24408
miner: Remove old CreateNewBlock w/o chainstate param
2021-03-08 15:54:31 -05:00
Carl Dong
d0de61b764
miner: Pass in chainstate to BlockAssembler::CreateNewBlock
2021-03-08 15:54:31 -05:00
Carl Dong
9c300cc8b3
validation: Pass in chainstate to TestBlockValidity
...
[META] This commit should be followed up by removing the comments and
assertions meant only to show that the change is correct.
2021-01-28 14:15:26 -05:00
Carl Dong
eae54e6e60
scripted-diff: Use BlockManager::LookupBlockIndex
...
[META] In a previous commit, we moved ::LookupBlockIndex to become a
member function of BlockManager. This commit is split out from
that one since it can be expressed nicely as a scripted-diff.
-BEGIN VERIFY SCRIPT-
find_regex='LookupBlockIndex' \
&& git grep -l -E "$find_regex" -- src \
| grep -v '^src/validation\.\(cpp\|h\)$' \
| xargs sed -i -E "s@${find_regex}@g_chainman.m_blockman.LookupBlockIndex@g"
-END VERIFY SCRIPT-
2021-01-28 14:15:26 -05:00
practicalswift
1c65c075ee
Don't declare de facto const member functions as non-const
2020-12-06 18:44:25 +00:00
Andrew Poelstra
b2477dbf86
Merge 2aaff4813c into merged_master (Bitcoin PR #19283 )
2020-11-26 01:09:22 +00:00
Andrew Poelstra
fd37b7c5d6
Merge 54f812d9d2 into merged_master (Bitcoin PR #18673 )
2020-11-26 01:08:23 +00:00
Andrew Poelstra
5f85d5672b
Merge 51e2ce45d6 into merged_master (Bitcoin PR #17693 )
2020-11-26 01:08:16 +00:00
Andrew Poelstra
0246b86872
Merge 54a7ef612a into merged_master (Bitcoin PR #17399 )
2020-11-26 01:07:48 +00:00
Andrew Poelstra
d9db3e9012
Merge 17e14ac92f into merged_master (Bitcoin PR #17781 )
2020-11-14 16:52:03 +00:00
Andrew Poelstra
8746cbf50b
Merge a739d207a3 into merged_master (Bitcoin PR #17519 )
2020-11-09 23:10:14 +00:00
Andrew Poelstra
3613ae283d
Merge f60e0684d1 into merged_master (Elements PR #773 )
2020-11-09 23:10:10 +00:00
Andrew Poelstra
bde84fefc4
Merge 3c40bc6726 into merged_master (Bitcoin PR #15921 )
2020-11-09 21:20:48 +00:00
Andrew Poelstra
61e1882a27
Merge 1ff3a39d11 into merged_master (Elements PR #753 )
2020-11-09 21:20:46 +00:00
Andrew Poelstra
821f5256a5
Merge 46d6930f8c into merged_master (Bitcoin PR #16659 )
2020-11-09 21:20:41 +00:00
Andrew Poelstra
e25e16c65e
Merge ccaef6c28b into merged_master (Bitcoin PR #16908 )
2020-11-09 21:20:33 +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
68d9951825
Merge d0f81a96d9 into merged_master (Bitcoin PR #16129 )
2020-11-06 15:20:13 +00:00
Andrew Poelstra
c91184f6c2
Merge b2a6b02161 into merged_master (Bitcoin PR #15948 )
2020-10-29 02:36:55 +00:00
Andrew Poelstra
a8581ea138
Merge 6a135fbe5b into merged_master (Bitcoin PR #15638 )
2020-10-28 03:16:57 +00:00
MarcoFalke
fa6d5ab674
refactor: Remove unused BlockAssembler::pblock member var
2020-06-15 08:08:19 -04:00
MarcoFalke
fa488f131f
scripted-diff: Bump copyright headers
...
-BEGIN VERIFY SCRIPT-
./contrib/devtools/copyright_header.py update ./
-END VERIFY SCRIPT-
2020-04-16 13:33:09 -04:00
Andrew Toth
dcc8332543
Add generateblock rpc
2020-03-27 11:00:10 -04:00
Jeffrey Czyz
0aed17ef28
Refactor FormatStateMessage into ValidationState
2020-02-27 17:59:07 -08:00
MarcoFalke
faa92a2297
rpc: Remove mempool global from miner
2019-12-23 06:12:10 +07:00
Neha Narula
e9a27cf338
refactor: Remove unused COINBASE_FLAGS
...
Commit d449772cf6 stopped setting
COINBASE_FLAGS, and it looks like it hasn't been used since P2SH.
Update the help string to remove "flags", which is not specified in
BIP 22.
2019-11-20 19:06:52 -05:00
Gregory Sanders
1d7847305c
HF: Dyanfed pruned header now has extra root
2019-11-08 14:07:01 -05:00