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

Release v0.6.0 (Cancun HF support) #397

Merged
merged 3 commits into from
Jul 15, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
125 changes: 82 additions & 43 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,53 +8,92 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

## [Unreleased]

## [0.6.0] - 2024-07-15

### Changed
- Implement EIP-4788 for Cancun ([#40](https://github.com/0xPolygonZero/zk_evm/pull/40))
- Implement Blob transactions (type-3) and BLOBHASH opcode ([#50](https://github.com/0xPolygonZero/zk_evm/pull/50))
- Fix beacons root contract bytecode ([#70](https://github.com/0xPolygonZero/zk_evm/pull/70))
- LxLy exit roots ([#90](https://github.com/0xPolygonZero/zk_evm/pull/90))
- Eip 1153 (TLOAD/TSTORE) ([#59](https://github.com/0xPolygonZero/zk_evm/pull/59))
- Remove blobbasefee from block header ([#100](https://github.com/0xPolygonZero/zk_evm/pull/100))
- Fix MCOPY from rebasing ([#103](https://github.com/0xPolygonZero/zk_evm/pull/103))
- Fix storage write for beacons root contract ([#102](https://github.com/0xPolygonZero/zk_evm/pull/102))
- EIP-4844 part 2: Point evaluation precompile ([#133](https://github.com/0xPolygonZero/zk_evm/pull/133))
- Some fixes to Cancun ([#187](https://github.com/0xPolygonZero/zk_evm/pull/187))
- Insert blob versioned hashes in signature payload for hashing ([#209](https://github.com/0xPolygonZero/zk_evm/pull/209))
- Fix KZG precompile context setup ([#210](https://github.com/0xPolygonZero/zk_evm/pull/210))
- Fix txn type encoding for receipts ([#214](https://github.com/0xPolygonZero/zk_evm/pull/214))
- Add blob gas fee burn for type-3 txns ([#219](https://github.com/0xPolygonZero/zk_evm/pull/219))
- Update decoder processing for cancun ([#207](https://github.com/0xPolygonZero/zk_evm/pull/207))
- cancun: Add a full block test ([#223](https://github.com/0xPolygonZero/zk_evm/pull/223))
- Fix KZG precompile I/O ([#213](https://github.com/0xPolygonZero/zk_evm/pull/213))
- Fix selfdestruct address listing ([#225](https://github.com/0xPolygonZero/zk_evm/pull/225))
- Fix withdrawals without txns and add test for empty block ([#228](https://github.com/0xPolygonZero/zk_evm/pull/228))
- doc: update README ([#242](https://github.com/0xPolygonZero/zk_evm/pull/242))
- Cleanup and bring back deadcode lint ([#232](https://github.com/0xPolygonZero/zk_evm/pull/232))
- fix(cancun): dummy payloads and public input retrieval ([#249](https://github.com/0xPolygonZero/zk_evm/pull/249))
- fix: encode calldata for EIP-4780 as U256 ([#253](https://github.com/0xPolygonZero/zk_evm/pull/253))
- fix: handle KZG precompile errors properly ([#251](https://github.com/0xPolygonZero/zk_evm/pull/251))
- fix(cancun): `mcopy` check offsets and overwrites ([#252](https://github.com/0xPolygonZero/zk_evm/pull/252))
- fix(cancun): correct search loop in transient storage ([#257](https://github.com/0xPolygonZero/zk_evm/pull/257))
- perf: Charge gas before tload search ([#272](https://github.com/0xPolygonZero/zk_evm/pull/272))
- fix: add check on decoded versioned hashes ([#278](https://github.com/0xPolygonZero/zk_evm/pull/278))
- fix: Add beacon roots touched slots into `state_access` with native tracer ([#353](https://github.com/0xPolygonZero/zk_evm/pull/353))
- feat(cancun): update test blocks ([#365](https://github.com/0xPolygonZero/zk_evm/pull/365))
- fix: failed to send proof ([#366](https://github.com/0xPolygonZero/zk_evm/pull/366))
- feat: cancun jerigon test network ([#367](https://github.com/0xPolygonZero/zk_evm/pull/367))
- fix(cancun): properly update accumulator in fake_exponential() ([#376](https://github.com/0xPolygonZero/zk_evm/pull/376))
- fix(cancun): tweak ranges in integration tests ([#377](https://github.com/0xPolygonZero/zk_evm/pull/377))
- `cancun`: cleanup pre-release ([#392](https://github.com/0xPolygonZero/zk_evm/pull/392))

## [0.5.0] - 2024-07-15

### Changed
- fix: docker images (#108)
- feat: add transaction hash to zero trace (#103)
- perf: add benchmarks for different components (#273)
- fix: add check on decoded versioned hashes (#278)
- fix: discard intermediate proofs (#106)
- feat: stdio parallel proving (#109)
- Fixes related to nightly and alloy (#101)
- Introduce native tracer support (#81)
- chore: bump alloy to v0.1.1 (#111)
- fix: docker images ([#108](https://github.com/0xPolygonZero/zk_evm/pull/108))
- feat: add transaction hash to zero trace ([#103](https://github.com/0xPolygonZero/zk_evm/pull/103))
- perf: add benchmarks for different components ([#273](https://github.com/0xPolygonZero/zk_evm/pull/273))
- fix: add check on decoded versioned hashes ([#278](https://github.com/0xPolygonZero/zk_evm/pull/278))
- fix: discard intermediate proofs ([#106](https://github.com/0xPolygonZero/zk_evm/pull/106))
- feat: stdio parallel proving ([#109](https://github.com/0xPolygonZero/zk_evm/pull/109))
- Fixes related to nightly and alloy ([#101](https://github.com/0xPolygonZero/zk_evm/pull/101))
- Introduce native tracer support ([#81](https://github.com/0xPolygonZero/zk_evm/pull/81))
- chore: bump alloy to v0.1.1 ([#111](https://github.com/0xPolygonZero/zk_evm/pull/111))
- Migrate `zero-bin` into `zk-evm`
- fix: Bring back Cargo.lock (#280)
- ci: add labeler flag for new `zero-bin` crate + update `CODEOWNERS` (#281)
- fix: only executables should choose a global allocator (#301)
- doc: fix typos (#298)
- misc: fix logging filename (#305)
- refactor zero_bin leader cli (#317)
- Removed non-existing dep public `__compat_primitive_types` (#321)
- perf: Check for zero amount early in 'add_eth' (#322)
- fix: interval (#324)
- fix: optimize previous hashes retrieval (#316)
- feat: add jerigon test workflow (#303)
- fix: do not add selfdestruct journal entry for empty accounts (#328)
- ci: add PR check job (#332)
- Constrain FP254 operations and SUBMOD to be kernel-only (#333)
- fix: add recipient to touched_addresses even when skipping empty transfer (#336)
- Fixed leader crashing when `.env` not present (#335)
- perf: reduce overhead in final iteration of memset (#339)
- Make leader work no matter what the CWD is (#307)
- Cleanup/clippy and update pass (#341)
- Add `Columns` and `DerefColumns` derive macros (#315)
- migrate compat to micro crate (#308)
- fix: docker build for worker and leader (#329)
- parse embedded short nodes (#345)
- Add `LogicColumnsView` struct for `LogicStark` (#347)
- fix: properly log final result when due (#352)
- fix: Check valid range for s and add test (#363)
- feat: add caching for `get_block` (#346)
- refactor!: docker builds (#357)
- fix: tweak fetching of previous block hashes (#370)
- fix(evm_arithmetization): Adjust layout of `CpuGeneralColumnsView` (#355)
- feat: skip range-checking `PUSH` operations in `KERNEL` mode (#373)
- Fix iterator length when fetching block hashes (#374)
- fix: scale withdrawals amount to gwei (#371)
- refactor: frontend of `trace_decoder` (#309)
- fix: Bring back Cargo.lock ([#280](https://github.com/0xPolygonZero/zk_evm/pull/280))
- ci: add labeler flag for new `zero-bin` crate + update `CODEOWNERS` ([#281](https://github.com/0xPolygonZero/zk_evm/pull/281))
- fix: only executables should choose a global allocator ([#301](https://github.com/0xPolygonZero/zk_evm/pull/301))
- doc: fix typos ([#298](https://github.com/0xPolygonZero/zk_evm/pull/298))
- misc: fix logging filename ([#305](https://github.com/0xPolygonZero/zk_evm/pull/305))
- refactor zero_bin leader cli ([#317](https://github.com/0xPolygonZero/zk_evm/pull/317))
- Removed non-existing dep public `__compat_primitive_types` ([#321](https://github.com/0xPolygonZero/zk_evm/pull/321))
- perf: Check for zero amount early in 'add_eth' ([#322](https://github.com/0xPolygonZero/zk_evm/pull/322))
- fix: interval ([#324](https://github.com/0xPolygonZero/zk_evm/pull/324))
- fix: optimize previous hashes retrieval ([#316](https://github.com/0xPolygonZero/zk_evm/pull/316))
- feat: add jerigon test workflow ([#303](https://github.com/0xPolygonZero/zk_evm/pull/303))
- fix: do not add selfdestruct journal entry for empty accounts ([#328](https://github.com/0xPolygonZero/zk_evm/pull/328))
- ci: add PR check job ([#332](https://github.com/0xPolygonZero/zk_evm/pull/332))
- Constrain FP254 operations and SUBMOD to be kernel-only ([#333](https://github.com/0xPolygonZero/zk_evm/pull/333))
- fix: add recipient to touched_addresses even when skipping empty transfer ([#336](https://github.com/0xPolygonZero/zk_evm/pull/336))
- Fixed leader crashing when `.env` not present ([#335](https://github.com/0xPolygonZero/zk_evm/pull/335))
- perf: reduce overhead in final iteration of memset ([#339](https://github.com/0xPolygonZero/zk_evm/pull/339))
- Make leader work no matter what the CWD is ([#307](https://github.com/0xPolygonZero/zk_evm/pull/307))
- Cleanup/clippy and update pass ([#341](https://github.com/0xPolygonZero/zk_evm/pull/341))
- Add `Columns` and `DerefColumns` derive macros ([#315](https://github.com/0xPolygonZero/zk_evm/pull/315))
- migrate compat to micro crate ([#308](https://github.com/0xPolygonZero/zk_evm/pull/308))
- fix: docker build for worker and leader ([#329](https://github.com/0xPolygonZero/zk_evm/pull/329))
- parse embedded short nodes ([#345](https://github.com/0xPolygonZero/zk_evm/pull/345))
- Add `LogicColumnsView` struct for `LogicStark` ([#347](https://github.com/0xPolygonZero/zk_evm/pull/347))
- fix: properly log final result when due ([#352](https://github.com/0xPolygonZero/zk_evm/pull/352))
- fix: Check valid range for s and add test ([#363](https://github.com/0xPolygonZero/zk_evm/pull/363))
- feat: add caching for `get_block` ([#346](https://github.com/0xPolygonZero/zk_evm/pull/346))
- refactor!: docker builds ([#357](https://github.com/0xPolygonZero/zk_evm/pull/357))
- fix: tweak fetching of previous block hashes ([#370](https://github.com/0xPolygonZero/zk_evm/pull/370))
- fix(evm_arithmetization): Adjust layout of `CpuGeneralColumnsView` ([#355](https://github.com/0xPolygonZero/zk_evm/pull/355))
- feat: skip range-checking `PUSH` operations in `KERNEL` mode ([#373](https://github.com/0xPolygonZero/zk_evm/pull/373))
- Fix iterator length when fetching block hashes ([#374](https://github.com/0xPolygonZero/zk_evm/pull/374))
- fix: scale withdrawals amount to gwei ([#371](https://github.com/0xPolygonZero/zk_evm/pull/371))
- refactor: frontend of `trace_decoder` ([#309](https://github.com/0xPolygonZero/zk_evm/pull/309))


## [0.4.0] - 2024-06-12
Expand Down
10 changes: 5 additions & 5 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

12 changes: 6 additions & 6 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -107,11 +107,12 @@ url = "2.5.2"
winnow = "0.6.13"

# local dependencies
evm_arithmetization = { path = "evm_arithmetization", version = "0.3.0" }
mpt_trie = { path = "mpt_trie", version = "0.4.0" }
proof_gen = { path = "proof_gen", version = "0.3.0" }
smt_trie = { path = "smt_trie", version = "0.1.0" }
trace_decoder = { path = "trace_decoder", version = "0.5.0" }
evm_arithmetization = { path = "evm_arithmetization", version = "0.4.0" }
mpt_trie = { path = "mpt_trie", version = "0.4.1" }
proof_gen = { path = "proof_gen", version = "0.4.0" }
smt_trie = { path = "smt_trie", version = "0.1.1" }
trace_decoder = { path = "trace_decoder", version = "0.6.0" }
zk_evm_proc_macro = { path = "proc_macro", version = "0.1.0" }

# zero-bin related dependencies
ops = { path = "zero_bin/ops" }
Expand All @@ -130,4 +131,3 @@ proc-macro2 = "1.0"
quote = "1.0"
syn = "2.0"
trybuild = "1.0"
zk_evm_proc_macro = { path = "proc_macro", version = "0.1.0" }
2 changes: 1 addition & 1 deletion evm_arithmetization/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[package]
name = "evm_arithmetization"
description = "Implementation of STARKs for the Ethereum Virtual Machine"
version = "0.3.0"
version = "0.4.0"
authors = [
"Daniel Lubarov <[email protected]>",
"William Borgeaud <[email protected]>",
Expand Down
2 changes: 1 addition & 1 deletion mpt_trie/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[package]
name = "mpt_trie"
description = "Types and utility functions for building/working with partial Ethereum tries."
version = "0.4.0"
version = "0.4.1"
authors = ["Polygon Zero <[email protected]>"]
readme = "README.md"
edition.workspace = true
Expand Down
2 changes: 1 addition & 1 deletion proof_gen/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[package]
name = "proof_gen"
description = "Generates block proofs from zero proof IR."
version = "0.3.0"
version = "0.4.0"
authors = ["Polygon Zero <[email protected]>"]
edition.workspace = true
license.workspace = true
Expand Down
2 changes: 1 addition & 1 deletion smt_trie/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[package]
name = "smt_trie"
description = "Types and utility functions for building/working with Polygon Hermez Sparse Merkle Trees."
version = "0.1.0"
version = "0.1.1"
authors = ["William Borgeaud <[email protected]>"]
readme = "README.md"
categories = ["cryptography"]
Expand Down
2 changes: 1 addition & 1 deletion trace_decoder/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
name = "trace_decoder"
description = "Ethereum node witness -> Prover input"
authors = ["Polygon Zero"]
version = "0.5.0"
version = "0.6.0"
edition.workspace = true
license.workspace = true
repository.workspace = true
Expand Down
Loading