Skip to content

Commit

Permalink
Introduce Scroll Binary Patricia Merkle Trie Components (#36)
Browse files Browse the repository at this point in the history
* feat: introduce scroll trie hash builder

* refactor: refactor HashBuilder implementation

* feat: introduce StateCommitment in StateProviders

* feat: introduce binary partricia trie state components

* refactor: introduce StateCommimentProvider

* feat: introduce HashedPostStateProvider

* feat: HashedPostState from reverts

* feat: introduce HashedStorageProvider

* lint: revm/test-utils feature propogation

* fix: add Send + Sync bound on introduced storage state api methods

* feat: introduce KeyHasherProvider

* feat: introduce StateRootProviderExt and integrate it (and StateRootProvider) with StateCommitment

* chore: address PR feedback and enhance test coverage

* fix: add merge files

* fix lint

* fix lint

* fmt

* add KeyHasher generic to DatabaseHashedStorage::from_reverts trait

* add merge files

* add merge files

* fix: propagate feature

* add merge files

* cleanup Cargo.toml files

* fix: Cargo.toml dependencies

* refactor: refactor Cargo.toml and put tests behind scroll feature

* lints and replace keccak with poseidon for HashedStorage instantiation

* fix deny license and add scroll specific tests to ci

* fix unit github workflow

* lint and deny

* fix Cargo.toml

* add go build to allowed sources

* update Cargo.lock

* update unit ci workflow to exclude --workspace by default

* fix ci and address PR feedback

* replace TODO(frisitano) with TODO(scroll)

* replace use of unwrap(..) in library code with expect(..)

* add zktrie specification to crates/scroll/trie

* chore: fix clsoing bracket in Cargo.toml
  • Loading branch information
frisitano authored Dec 8, 2024
1 parent ba07042 commit 883d508
Show file tree
Hide file tree
Showing 41 changed files with 2,945 additions and 287 deletions.
20 changes: 12 additions & 8 deletions .github/workflows/unit.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,23 +26,27 @@ jobs:
matrix:
include:
- type: ethereum
args: --features "asm-keccak ethereum" --locked
args: --features "asm-keccak ethereum" --locked --workspace --exclude ef-tests
partition: 1
total_partitions: 2
- type: ethereum
args: --features "asm-keccak ethereum" --locked
args: --features "asm-keccak ethereum" --locked --workspace --exclude ef-tests
partition: 2
total_partitions: 2
- type: optimism
args: --features "asm-keccak optimism" --locked --exclude reth --exclude reth-bench --exclude "example-*" --exclude "reth-ethereum-*" --exclude "*-ethereum"
args: --features "asm-keccak optimism" --locked --exclude reth --exclude reth-bench --exclude "example-*" --exclude "reth-ethereum-*" --exclude "*-ethereum" --workspace --exclude ef-tests
partition: 1
total_partitions: 2
- type: optimism
args: --features "asm-keccak optimism" --locked --exclude reth --exclude reth-bench --exclude "example-*" --exclude "reth-ethereum-*" --exclude "*-ethereum"
args: --features "asm-keccak optimism" --locked --exclude reth --exclude reth-bench --exclude "example-*" --exclude "reth-ethereum-*" --exclude "*-ethereum" --workspace --exclude ef-tests
partition: 2
total_partitions: 2
- type: scroll
args: -p reth-scroll-state-commitment --locked --features "scroll"
partition: 1
total_partitions: 1
- type: book
args: --manifest-path book/sources/Cargo.toml
args: --manifest-path book/sources/Cargo.toml --workspace --exclude ef-tests
partition: 1
total_partitions: 1
timeout-minutes: 30
Expand All @@ -62,9 +66,9 @@ jobs:
- name: Run tests
run: |
cargo nextest run \
${{ matrix.args }} --workspace \
--exclude ef-tests --no-tests=warn \
--partition hash:${{ matrix.partition }}/2 \
${{ matrix.args }} \
--no-tests=warn \
--partition hash:${{ matrix.partition }}/${{ matrix.total_partitions }} \
-E "!kind(test)"
state:
Expand Down
Loading

0 comments on commit 883d508

Please sign in to comment.