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

chore: merge upstream 7119bb1fe #25

Merged
merged 114 commits into from
Oct 21, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
114 commits
Select commit Hold shift + click to select a range
c4d7b59
perf(rpc): add optional block argument to `trace_block_until_with_ins…
joshieDo Oct 15, 2024
a235f72
feat(trie): sparse trie (#11741)
rkrasiuk Oct 15, 2024
6fb2710
feat: move RPC launch to add-ons (#11532)
klkvr Oct 15, 2024
5aceb3e
primitives: rm redundant `chain_id` function for Transaction (#11751)
tcoratger Oct 15, 2024
04f5b53
chore: touchups PayloadOrAttributes (#11749)
mattsse Oct 15, 2024
77a382f
chore: allow missing const (#11750)
mattsse Oct 15, 2024
7b1b1fc
chore(stage test): use with_capacity (#11759)
nkysg Oct 15, 2024
7f92760
fix: `estimateGas` edge case (#11764)
klkvr Oct 15, 2024
4144d6e
chore: add get_database_args (#11766)
mattsse Oct 15, 2024
78415ff
chore: include hash in trace (#11762)
mattsse Oct 15, 2024
d4be773
chore: move tests in reth_execution_types::chain to reth-evm-optimism…
0xriazaka Oct 15, 2024
3f3a7ef
unify &Option<T> to Option<&T> (#11755)
nkysg Oct 16, 2024
b814770
feat(txpool): function to return the next free nonce (#11744)
kien6034 Oct 16, 2024
183cea4
chore(provider): move `state_provider_from_state` to `BlockState` imp…
joshieDo Oct 16, 2024
a6358d2
feat(provider): add `*StateProviderRef` creation methods to `Database…
joshieDo Oct 16, 2024
a14a9fd
chore: add chain_id shortcut (#11782)
mattsse Oct 16, 2024
323d8ed
feat: implement batch executor (#11753)
fgimenez Oct 16, 2024
0f903b1
feat: add EthExecutionStrategy (#11584)
fgimenez Oct 16, 2024
e454b24
chore: use highest known nonce (#11784)
mattsse Oct 16, 2024
f49a4ae
feat: add OpExecutionStrategy (#11761)
fgimenez Oct 16, 2024
d421931
trie: simplify usage of `HashedStorage` with default (#11662)
tcoratger Oct 16, 2024
248b6b5
fix: task executor metrics (#11738)
greged93 Oct 16, 2024
87399ae
chore: rename executor and provider Generic -> Basic (#11788)
fgimenez Oct 16, 2024
eec861f
chore: rm unused optimism feature (#11794)
mattsse Oct 16, 2024
6f04110
chore: rename SenderId::into_id to SenderId::into_transaction_id (#11…
evchip Oct 16, 2024
c76d319
chore: rm optimism feature from reth-revm (#11797)
mattsse Oct 16, 2024
6ad1275
chore(sdk): move block traits into `reth-primitives-traits` (#11780)
emhane Oct 16, 2024
cb7fd08
chore: remove &self from update_estimated_gas_range (#11799)
greged93 Oct 16, 2024
281307f
chore(ci): update list of crates excluded from wasm checks (#11787)
fgimenez Oct 16, 2024
6b2ec42
docs: clarify max rpc tracing requests (#11796)
mattsse Oct 16, 2024
12cab20
fix(witness): branch node children decoding (#11599)
rkrasiuk Oct 16, 2024
099987f
chore(cli): add `default_client_version` to rethCli (#11773)
aroralanuk Oct 16, 2024
e5cd026
deps: `alloy-trie@0.7.2` (#11807)
rkrasiuk Oct 16, 2024
dcaa432
chore(trie): use `RlpNode::as_hash` (#11808)
rkrasiuk Oct 16, 2024
756a47e
chore: add `shekhirin` to trie code owners (#11809)
rkrasiuk Oct 16, 2024
a2249b0
fix(exex): filter only WAL files when walking the directory (#11802)
shekhirin Oct 16, 2024
b1cc168
feat(cli): make pruning block interval an option (#11810)
kien6034 Oct 16, 2024
82862fa
primitives: rm redundant functions for `Transaction` (#11747)
tcoratger Oct 16, 2024
d2ca8f3
fix: update block interval properly (#11546)
mattsse Oct 16, 2024
5a82f20
chore: rm 1 usage of optimism feature (#11813)
mattsse Oct 16, 2024
025cb3b
primitive-traits: rm redundant `EMPTY_ROOT_HASH` definition (#11811)
tcoratger Oct 16, 2024
24287e8
primitives: use `EMPTY_ROOT_HASH` when possible (#11822)
tcoratger Oct 16, 2024
1b97b1d
fix(staged-sync): prevent `StaticFileProducer` from running with an u…
joshieDo Oct 17, 2024
b57a560
test: make provider compile with cargo t (#11817)
mattsse Oct 17, 2024
e828b34
chore: rm features from test utils (#11816)
mattsse Oct 17, 2024
e3e83b7
docs(trie): revealed sparse trie invariants (#11825)
rkrasiuk Oct 17, 2024
63a75fd
fix(trie): intermediate trie node hashes (#11826)
rkrasiuk Oct 17, 2024
491f154
primitives-traits: rm redundant definitions of `EMPTY_OMMER_ROOT_HASH…
tcoratger Oct 17, 2024
bac244a
feat(trie): sparse trie leaf removal (#11752)
shekhirin Oct 17, 2024
4254b80
bench(trie): avoid unnecessary clones in hash builder repeated bench …
rkrasiuk Oct 17, 2024
b47ce92
replace ChainSpec to use EthereumHardforks trait (#11824)
stevencartavia Oct 17, 2024
f8902b5
chore: pedantic style change (#11832)
mattsse Oct 17, 2024
b77265e
reth-bench: rm redundant clone (#11829)
nkysg Oct 17, 2024
3bc3e71
primitives: use `EMPTY_OMMER_ROOT_HASH` const when possible (#11833)
tcoratger Oct 17, 2024
52407b1
chore(sdk): incorporate block module into `reth-primitives-traits` (#…
emhane Oct 17, 2024
6ba4bbe
chore: make op-evm compile with no-std (#11834)
mattsse Oct 17, 2024
2131c87
refactor: rm redundant clones in tests (#11840)
nkysg Oct 17, 2024
9db28d9
chore(sdk): Impl `alloy_consensus::Transaction` for `TransactionSigne…
emhane Oct 17, 2024
1aa3ce1
feat(cli): add ChainSpecParser type to rethCli (#11772)
aroralanuk Oct 17, 2024
0a1473b
perf(blockchain-tree:) use `Vec::reserve_exact` (#11839)
nkysg Oct 17, 2024
76edc38
fix(rpc): apply beacon root contract call in debug_traceTransaction (…
Rjected Oct 17, 2024
52848a3
fix: check for prague timestmap on pool init (#11847)
mattsse Oct 17, 2024
a6c8bda
primitives: use alloy `MAINNET_GENESIS_HASH` constant (#11848)
tcoratger Oct 17, 2024
8eb5d4f
Remove unsafe from impl Compact for ClientVersion (#11318)
0xriazaka Oct 17, 2024
b57cbfd
primitives: use alloy `DEV_GENESIS_HASH` constant (#11849)
tcoratger Oct 17, 2024
bc43613
chore: disable SC2034 in check_wasm.sh (#11854)
DaniPopes Oct 17, 2024
96ad6d5
chore: rm unused reth-revm c-kzg feature (#11860)
mattsse Oct 17, 2024
f3c0dda
perf: use existing block hash functions (#11858)
mattsse Oct 17, 2024
62e7625
primitives: use alloy `*_TX_TYPE_ID` constants (#11853)
tcoratger Oct 17, 2024
dfcaad4
chore: remove some cfg imports (#11864)
mattsse Oct 17, 2024
0c70f6b
primitives: use alloy `KECCAK_EMPTY` constant (#11851)
tcoratger Oct 18, 2024
5859f93
primitives: use alloy `EMPTY_` constants (#11852)
tcoratger Oct 18, 2024
cb60482
chore(sdk): Define `NodePrimitives::Block` (#11399)
emhane Oct 18, 2024
cfd066c
chore(sdk): `SignedTransaction` abstraction (#11432)
emhane Oct 18, 2024
8d32fd7
feat: allow awaiting payload in progress (#11823)
klkvr Oct 18, 2024
9c8f5d8
chore: rm v2 get bodies functions (#11870)
mattsse Oct 18, 2024
587c91f
Optimize Sender Recovery Process (#11385)
TheDhejavu Oct 18, 2024
a908f97
chore: simplify update fn (#11880)
mattsse Oct 18, 2024
eee5e0d
bump rust to 1.82 (#11876)
tcoratger Oct 18, 2024
655fc1a
rpc: add unit tests for `RpcModuleSelection` (#11883)
tcoratger Oct 18, 2024
a4126b3
feat: tasks executor metrics in grafana (#11815)
greged93 Oct 18, 2024
a6daafc
refactor(txpool): small refactor for `InMemoryBlobStore` impl (#11886)
tcoratger Oct 19, 2024
2f559c6
primitives: use alloy `MAXIMUM_EXTRA_DATA_SIZE` constant (#11881)
tcoratger Oct 19, 2024
da5079d
test(txpool): add unit test for `BlobStoreCanonTracker` (#11885)
tcoratger Oct 19, 2024
2ae9368
refactor: move `EngineValidator` setup to `RpcAddOns` (#11850)
klkvr Oct 19, 2024
3bd695e
feat: update el requests for devnet 4 (#11865)
onbjerg Oct 19, 2024
3793b90
chore: better start finish persisted block logs (#11893)
mattsse Oct 19, 2024
ddc5ac3
refactor(rpc): small refactor in `trace_filter` (#11894)
tcoratger Oct 19, 2024
1a1aa2f
feat: add map_pool fn (#11890)
mattsse Oct 19, 2024
1efa764
chore(engine): rename enveloped associated types to envelope (#11812)
Rjected Oct 19, 2024
c803012
chore: use `Requests` instead of `Vec<Bytes>` (#11895)
onbjerg Oct 19, 2024
a78de20
Refactor of state_change functionality (#11878)
Gerson2102 Oct 19, 2024
f8969cb
docs: add hardfork checklist (#11897)
mattsse Oct 19, 2024
e2ecb62
chore: remove unused deps (#11898)
hai-rise Oct 19, 2024
d0ac833
perf: avoid cloning in payload builder (#11899)
greged93 Oct 19, 2024
cd828c0
feat: switch to composable executor for Ethereum (#11838)
fgimenez Oct 19, 2024
6c026da
docs: explain how to add metrics to grafana (#11875)
greged93 Oct 19, 2024
cf4a445
fix: feature propagation (#11888)
liamaharon Oct 19, 2024
422ab17
feat: use next free nonce in eth_sendTransaction (#11873)
caglaryucekaya Oct 19, 2024
453ba2d
feat: switch to composable executor for Optimism (#11846)
fgimenez Oct 20, 2024
de07436
chore(deps): weekly `cargo update` (#11902)
github-actions[bot] Oct 20, 2024
e9c0972
docs(blockchain-tree): rm comment (#11903)
nkysg Oct 20, 2024
5fca07c
fix: impl BlockExecutionStrategy for OpExecutionStrategy generic over…
fgimenez Oct 20, 2024
a188597
ci: merge sync jobs (#11909)
onbjerg Oct 20, 2024
0270128
refactor(txpool): small refactor in `DiskFileBlobStoreInner` `get_exa…
tcoratger Oct 20, 2024
2e8a8fe
doc(storage): add missing documentation for `nippy-jar` (#11913)
tcoratger Oct 20, 2024
ddc82e2
test(static-file): add unit tests for `HighestStaticFiles` implementa…
tcoratger Oct 21, 2024
fbb27eb
chore(ci): update excluded crates in wasm checker (#11915)
fgimenez Oct 21, 2024
bdad91b
docs: update grafana docs (#11908)
greged93 Oct 21, 2024
aba4991
docs: note about type changes (#11925)
mattsse Oct 21, 2024
f25cceb
perf: use Vec::with_capacity and reserve_exact (#11904)
nkysg Oct 21, 2024
7119bb1
chore: introduce ExecuteOutput (#11929)
fgimenez Oct 21, 2024
f27b910
Merge branch 'main' into chore-merge-upstream-7119bb1fe
Thegaram Oct 21, 2024
7270aaf
update fork base commit
Thegaram Oct 21, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
40 changes: 40 additions & 0 deletions .config/zepter.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
version:
format: 1
# Minimum zepter version that is expected to work. This is just for printing a nice error
# message when someone tries to use an older version.
binary: 0.13.2

# The examples in the following comments assume crate `A` to have a dependency on crate `B`.
workflows:
check:
- [
"lint",
# Check that `A` activates the features of `B`.
"propagate-feature",
# These are the features to check:
"--features=std,optimism,dev,asm-keccak,jemalloc,jemalloc-prof,tracy-allocator,serde-bincode-compat,serde,test-utils,arbitrary,bench",
# Do not try to add a new section into `[features]` of `A` only because `B` expose that feature. There are edge-cases where this is still needed, but we can add them manually.
"--left-side-feature-missing=ignore",
# Ignore the case that `A` it outside of the workspace. Otherwise it will report errors in external dependencies that we have no influence on.
"--left-side-outside-workspace=ignore",
# Auxillary flags:
"--offline",
"--locked",
"--show-path",
"--quiet",
]
default:
# Running `zepter` with no subcommand will check & fix.
- [$check.0, "--fix"]

# Will be displayed when any workflow fails:
help:
text: |
Reth uses the Zepter CLI to detect abnormalities in Cargo features, e.g. missing propagation.

It looks like one more more checks failed; please check the console output.

You can try to automatically address them by installing zepter (`cargo install zepter --locked`) and simply running `zepter` in the workspace root.
links:
- "https://github.com/paradigmxyz/reth/pull/11888"
- "https://github.com/ggwpez/zepter"
2 changes: 1 addition & 1 deletion .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,6 @@ crates/tasks/ @mattsse
crates/tokio-util/ @fgimenez @emhane
crates/tracing/ @onbjerg
crates/transaction-pool/ @mattsse
crates/trie/ @rkrasiuk @Rjected
crates/trie/ @rkrasiuk @Rjected @shekhirin
etc/ @Rjected @onbjerg @shekhirin
.github/ @onbjerg @gakonst @DaniPopes
9 changes: 3 additions & 6 deletions .github/assets/check_wasm.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,10 @@ set +e # Disable immediate exit on error

# Array of crates to compile
crates=($(cargo metadata --format-version=1 --no-deps | jq -r '.packages[].name' | grep '^reth' | sort))

# Array of crates to exclude
# Used with the `contains` function.
# shellcheck disable=SC2034
exclude_crates=(
# The following are not working yet, but known to be fixable
reth-exex-types # https://github.com/paradigmxyz/reth/issues/9946
Expand All @@ -30,12 +33,9 @@ exclude_crates=(
reth-engine-util
reth-eth-wire
reth-ethereum-cli
reth-ethereum-engine
reth-ethereum-engine-primitives
reth-ethereum-payload-builder
reth-etl
reth-evm-ethereum
reth-execution-errors
reth-exex
reth-exex-test-utils
reth-ipc
Expand All @@ -49,7 +49,6 @@ exclude_crates=(
reth-node-events
reth-node-metrics
reth-optimism-cli
reth-optimism-evm
reth-optimism-node
reth-optimism-payload-builder
reth-optimism-rpc
Expand All @@ -63,9 +62,7 @@ exclude_crates=(
reth-rpc-eth-api
reth-rpc-eth-types
reth-rpc-layer
reth-rpc-types
reth-stages
reth-storage-errors
reth-engine-local
# The following are not supposed to be working
reth # all of the crates below
Expand Down
52 changes: 0 additions & 52 deletions .github/workflows/eth-sync.yml

This file was deleted.

21 changes: 19 additions & 2 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@ jobs:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@master
with:
toolchain: "1.81" # MSRV
toolchain: "1.82" # MSRV
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
Expand Down Expand Up @@ -163,7 +163,7 @@ jobs:
- uses: dtolnay/rust-toolchain@nightly
- uses: dtolnay/rust-toolchain@master
with:
toolchain: "1.81" # MSRV
toolchain: "1.82" # MSRV
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
Expand Down Expand Up @@ -219,6 +219,22 @@ jobs:
env:
RUSTFLAGS: -D warnings

# Check crates correctly propagate features
feature-propagation:
runs-on: ubuntu-latest
timeout-minutes: 20
steps:
- uses: actions/checkout@v4
- name: fetch deps
run: |
# Eagerly pull dependencies
time cargo metadata --format-version=1 --locked > /dev/null
- name: run zepter
run: |
cargo install zepter -f --locked
zepter --version
time zepter run check

lint-success:
name: lint success
runs-on: ubuntu-latest
Expand All @@ -236,6 +252,7 @@ jobs:
- grafana
- no-test-deps
- features
- feature-propagation
timeout-minutes: 30
steps:
- name: Decide whether the needed jobs succeeded or failed
Expand Down
54 changes: 0 additions & 54 deletions .github/workflows/op-sync.yml

This file was deleted.

62 changes: 62 additions & 0 deletions .github/workflows/sync.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
# Runs sync tests.

name: sync test

on:
merge_group:

env:
CARGO_TERM_COLOR: always

concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true

jobs:
sync:
name: sync (${{ matrix.chain.bin }})
runs-on: ubuntu-latest
env:
RUST_LOG: info,sync=error
RUST_BACKTRACE: 1
timeout-minutes: 60
strategy:
matrix:
chain:
- build: install
bin: reth
chain: mainnet
tip: "0x91c90676cab257a59cd956d7cb0bceb9b1a71d79755c23c7277a0697ccfaf8c4"
block: 100000
unwind-target: "0x52e0509d33a988ef807058e2980099ee3070187f7333aae12b64d4d675f34c5a"
- build: install-op
bin: op-reth
chain: base
tip: "0xbb9b85352c7ebca6ba8efc63bd66cecd038c92ec8ebd02e153a3e0b197e672b7"
block: 10000
unwind-target: "0x118a6e922a8c6cab221fc5adfe5056d2b72d58c6580e9c5629de55299e2cf8de"
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
- name: Build ${{ matrix.chain.bin }}
run: make ${{ matrix.chain.build }}
- name: Run sync
run: |
${{ matrix.chain.bin }} node \
--chain ${{ matrix.chain.chain }} \
--debug.tip ${{ matrix.chain.tip }} \
--debug.max-block ${{ matrix.chain.block }} \
--debug.terminate
- name: Verify the target block hash
run: |
${{ matrix.chain.bin }} db --chain ${{ matrix.chain.chain }} get static-file headers ${{ matrix.chain.block }} \
| grep ${{ matrix.chain.tip }}
- name: Run stage unwind for 100 blocks
run: |
${{ matrix.chain.bin }} stage --chain ${{ matrix.chain.chain }} unwind num-blocks 100
- name: Run stage unwind to block hash
run: |
${{ matrix.chain.bin }} stage --chain ${{ matrix.chain.chain }} unwind to-block ${{ matrix.chain.unwind-target }}
Loading
Loading