Releases: 0xPolygonZero/zk_evm
Releases · 0xPolygonZero/zk_evm
v0.7.0
What's Changed
- Implement first iteration of continuations by @LindaGuiga in #69
- Add trimmed inputs to
ExtraSegmentData
by @hratoanina in #111 - Fix trace lengths by @hratoanina in #110
- Merge clock fix by @hratoanina in #114
- Update dependencies by @hratoanina in #120
- Add context pruning by @hratoanina in #112
- continuations: initial cleanup pass by @Nashtare in #181
- Generate all segments before proving. by @LindaGuiga in #135
- Put kernel code in first MemBefore by @hratoanina in #178
- continuations: Remove
GenerationInputs
cloning for segment generation by @Nashtare in #186 - Adapt the circuitry to zero-bin by @LindaGuiga in #184
- Add dummy segment to the left by @LindaGuiga in #185
- Add segment indexing by @Nashtare in #191
- Introduce verify_all_proofs and update integration tests by @LindaGuiga in #192
- New context pruning logic by @LindaGuiga in #170
- Merge with develop by @LindaGuiga in #195
- Add log for end of jumpdest analysis simulation. by @LindaGuiga in #201
- continuations: Remove redundant simulation by @Nashtare in #203
- feat(continuations): trim public values at block proof level by @Nashtare in #235
- Merge
develop
intofeat/continuations
by @LindaGuiga in #250 - Bring back support for multi-txn batches by @Nashtare in #227
- feat(continuations): reduce some memory overhead by @Nashtare in #260
- perf(continuations): Only copy non-stale contexts by @Nashtare in #264
- continuations: Remove the need for dummy segments by @LindaGuiga in #245
- Merge develop into
feat/continuations
by @LindaGuiga in #359 - Improve get_descriptor() by @LindaGuiga in #380
- feat: expand trace decoder tests by @atanmarko in #394
- refactor: use typed tries in trace_decoder by @0xaatif in #393
- Cleanup
KeccakSpongeStark
index accesses by @Nashtare in #418 - Serialize flaky inputs as 'json' files by @Nashtare in #420
- feat: Implement
Columns
view forMemoryStark
by @Nashtare in #417 - Now warns if file descriptor limit is too small for native mode by @BGluth in #411
- chore(deps): bump openssl from 0.10.64 to 0.10.66 by @dependabot in #431
- Make
prove_stdio.sh
work on apple chips by @Nashtare in #430 - feat: add conditional feature support in the kernel assembly by @Nashtare in #416
- Reinitialize TO transaction field in
main
by @LindaGuiga in #440 - Add overflow check in
codecopy
by @Nashtare in #444 - Check for overflow in
context_id
increment by @Nashtare in #443 - fix:
StorageTrie
,ReceiptTrie
andTransactionTrie
shouldn't useTypedMpt
by @0xaatif in #446 - fix: cleanup alloy dependencies by @atanmarko in #449
- Ensure proper
offset + size
bounds inwcopy
by @Nashtare in #445 - fix: set min stack length for transient opcodes by @Nashtare in #450
- feat: test native tracer by @atanmarko in #423
- Increase
MAXCODESIZE
for Polygon PoS by @Nashtare in #419 - Fix jump_to by @LindaGuiga in #453
- Fix Arithmetic trace length by @hratoanina in #454
- Linked lists for the state trie by @LindaGuiga in #402
- Added derives to
pub
types where possible formpt_trie
by @BGluth in #456 - perf(continuations): Improve initializations and reduce redundant computations by @Nashtare in #429
- feat(continuations): write storage values directly in linked lists by @LindaGuiga in #433
- Remove self destructs from the native tracer by @4l0n50 in #461
- implement version command for all zero bin binaries by @temaniarpit27 in #451
- Preinitialize segments in all contexts by @hratoanina in #466
- Fix 2-to-1 test for Cancun by @Nashtare in #464
- Process state trie at the end by @LindaGuiga in #476
- bug(zero-bin): verifier binary not picking up pre-processed circuits by @temaniarpit27 in #474
- feat: Implement
Columns
view forBytePackingStark
by @Nashtare in #422 - chore: flush logs upon success by @Nashtare in #481
- Fix account creation reversion in decoder processing by @Nashtare in #480
- Feat/237 mpt trie ext to branch collapse error by @BGluth in #455
- Fix
SELFDESTRUCT
by @Nashtare in #487 - Circuit cache dir now uses os cache dir by @BGluth in #405
- refactor: trace_decoder::decoding by @0xaatif in #469
- fix: do not force precompile address access in case of txn reversion by @Nashtare in #488
- chore: reorganize cli params and rename some types by @atanmarko in #485
- Fix txn indexing in error message by @Nashtare in #490
- Revert "Fix
SELFDESTRUCT
" by @Nashtare in #491 - Allow features with macros within macros by @LindaGuiga in #492
- Check the global variable
GLOBAL_METADATA_TRIE_DATA_SIZE
by @LindaGuiga in #483 - Update CODEOWNERS to add more folks by @muursh in #497
- Do not propagate zero values by @hratoanina in #484
- handle case when contract creation was reverted by @temaniarpit27 in #482
- refactor: use typed_mpt in the backend by @0xaatif in #494
- chore: add common crate for project wide definitions by @atanmarko in #500
- feat: Remove duplicate
new_txn_trie_node_byte
by @Nashtare in #477 - Parallelize test_only segment simulation by @hratoanina in #498
- Fix selfdestruct for EIP-6780 with non-empty balances by @Nashtare in #493
- Fix:
zero-bin
is now able again to accessesevm_arithmetization
for circuit versions by @BGluth in #310 - Add collapse strategy to
PartialTrie
variants by @Nashtare in #501 - refactor: remove dead
client_code_hash_resolve_f
by @0xaatif in #514 - Update specs for continuation by @hratoanina in #489
- continuations: have segment iterator return a
Result
by @Nashtare in #509 - Make test-only a CLI argument by @hratoanina in #521
- feat: retrieve prover input per block by @atanmarko in #499
- refactor: Hash2Code by @0xaatif in #522
- Made sub-trie errors better by @BGluth in #520
- Feat/continuations by @Nashtare in #171
- add check for checkpoint block number by @temaniarpit27 in #517
- feat: add
leader
command to flush cache by @Nashtare in #527 - fix: output block proof to array format by @atanmarko in #536
- Ignore `too_long_fi...
v0.6.0
What's Changed
- Implement EIP-4788 for Cancun by @Nashtare in #40
- Implement Blob transactions (type-3) by @Nashtare in #50
- Bring latest
main
tofeat/cancun
by @Nashtare in #61 - Fix beacons root contract bytecode by @Nashtare in #70
- LxLy exit roots by @wborgeaud in #90
- Eip 1153 (TLOAD/TSTORE) by @4l0n50 in #59
- Remove
blobbasefee
from block header by @Nashtare in #100 - Fix
MCOPY
from rebasing by @Nashtare in #103 - Fix storage write for beacons root contract by @Nashtare in #102
- EIP-4844 part 2: Point evaluation precompile by @Nashtare in #133
- Some fixes to Cancun by @Nashtare in #187
- Insert blob versioned hashes in signature payload for hashing by @Nashtare in #209
- Fix-kzg-precompile-init by @Nashtare in #210
- Fix receipts for type-3 txns by @Nashtare in #214
- Add blob gas fee burn for type-3 txns by @Nashtare in #219
- Update decoder processing for cancun by @Nashtare in #207
- cancun: Add a full block test by @Nashtare in #223
- Fix KZG precompile I/O by @Nashtare in #213
- cancun: Fix EIP-6780 implementation by @Nashtare in #225
- Fix withdrawals without txns and add test for empty block by @Nashtare in #228
- doc(cancun): update README by @Nashtare in #242
- chore(cancun): Cleanup and bring back
dead_code
lint forevm_arithmetization
by @Nashtare in #232 - fix(cancun): dummy payloads and public input retrieval by @Nashtare in #249
- fix(cancun): encode calldata for EIP-4780 as
U256
by @Nashtare in #253 - fix(cancun): handle KZG precompile errors properly by @Nashtare in #251
- fix(cancun):
mcopy
check offsets by @Nashtare in #252 - fix(cancun): correct search loop in transient storage by @Nashtare in #257
- perf: Charge gas before
tload
search by @Nashtare in #272 - fix(cancun): Check
versioned_hashes
validity during type-3 txn processing by @Nashtare in #278 - fix: Add beacon roots touched slots into
state_access
with native tracer by @Nashtare in #353 - feat(cancun): update test blocks by @Nashtare in #365
- fix: failed to send proof by @atanmarko in #369
- fix(cancun): properly update accumulator in
fake_exponential()
by @Nashtare in #376 - fix(cancun): tweak ranges in integration tests by @Nashtare in #377
cancun
: cleanup pre-release by @Nashtare in #392- Feat/cancun by @Nashtare in #31
- Release v0.6.0 (
Cancun
HF support) by @Nashtare in #397
Full Changelog: v0.5.0...v0.6.0
v0.5.0
What's Changed
- perf: add benchmarks for different components by @Nashtare in #273
- Zero bin merge by @BGluth in #279
- fix: Bring back Cargo.lock by @Nashtare in #280
- ci: add labeler flag for new
zero-bin
crate + updateCODEOWNERS
by @Nashtare in #281 - fix: only executables should choose a global allocator by @0xaatif in #301
- doc: fix typos by @Nashtare in #298
- misc(zero-bin): fix logging filename for test script by @Nashtare in #305
- Refactor
zero_bin
leader cli by @frisitano in #317 - Removed non-existing public dep
__compat_primitive_types
by @BGluth in #321 - perf(evm_arithmetization): Check for zero amount early in
add_eth
by @Nashtare in #322 - fix: interval by @atanmarko in #324
- fix: optimize previous hashes retrieval by @atanmarko in #316
- Bring
smt_trie
intodevelop
by @BGluth in #320 - feat: add jerigon test workflow by @atanmarko in #303
- fix: do not add selfdestruct journal entry for skipped accounts by @Nashtare in #328
- ci: add PR check job by @Nashtare in #332
- Constrain FP254 operations and SUBMOD to be kernel-only by @LindaGuiga in #333
- fix: add recipient to
touched_addresses
even when skipping empty transfer by @Nashtare in #336 - Fixed leader crashing when
.env
not present by @BGluth in #335 - perf: reduce overhead in final iteration of
memset
by @Nashtare in #339 - Make leader work no matter what the CWD is by @BGluth in #307
- Cleanup/clippy and update pass by @BGluth in #341
- Add
Columns
andDerefColumns
derive macros by @gio256 in #315 - migrate compat to trace_decoder crate by @frisitano in #308
- fix: docker build for worker and leader by @atanmarko in #329
- Parse embedded short nodes by @frisitano in #345
- Add
LogicColumnsView
struct forLogicStark
by @gio256 in #347 - fix: properly log final results when due by @Nashtare in #352
- fix(kernel): Check valid range for s and add test by @Nashtare in #363
- feat: add caching for
get_block
by @atanmarko in #346 - refactor!: docker builds by @0xaatif in #357
- fix: tweak fetching of previous block hashes by @Nashtare in #370
- fix(evm_arithmetization): Adjust layout of
CpuGeneralColumnsView
by @gio256 in #355 - feat: skip range-checking
PUSH
operations inKERNEL
mode by @Nashtare in #373 - fix: limit iterator length when fetching block hashes by @Nashtare in #374
- fix: scale withdrawals amount to gwei by @Nashtare in #371
- refactor: frontend of
trace_decoder
by @0xaatif in #309 - doc: Update global README and add mention of
ulimit
by @Nashtare in #378 - Two to one block aggregation by @einar-polygon in #318
- Add necessary 2-to-1 aggreg. components for
proof_gen
by @Nashtare in #364 - Release v0.5.0 by @Nashtare in #395
- Update config file for
proc-macro
crate by @Nashtare in #396
New Contributors
- @gio256 made their first contribution in #315
- @einar-polygon made their first contribution in #318
Full Changelog: v0.4.0...v0.5.0
v0.4.0
What's Changed
- Some cleanup by @Nashtare in #190
- Silence jumpdest analysis logs by @LindaGuiga in #193
- Charge call value gas prior to call by @frisitano in #199
- refactor: fix todos by @vladimir-trifonov in #162
- Remove print call in
trace_decoder
by @Nashtare in #208 - ci: add cargo audit job by @Nashtare in #236
- fix: Revert interpreter stack display by @Nashtare in #238
- fix:
clippy::doc_lazy_continuation
by @Nashtare in #247 - perf: Improve blake2 precompile by @Nashtare in #239
- fix: rustdoc by @0xaatif in #255
- Native trace processing support by @frisitano in #246
- Added
Clone
to a few error types inmpt_trie
by @BGluth in #259 - cleanup: remove outdated segment by @Nashtare in #262
- fix: add multiple witness version check by @atanmarko in #271
- fix: add G2 subgroup check for
ECPAIRING
by @Nashtare in #268 - Add partial trie builder by @frisitano in #258
- Release 0.4.0 by @Nashtare in #276
- Bring
v0.4.0
intomain
by @Nashtare in #277
New Contributors
- @frisitano made their first contribution in #199
- @0xaatif made their first contribution in #255
- @atanmarko made their first contribution in #271
Full Changelog: v0.3.1...v0.4.0
v0.3.1
v0.3.0
What's Changed
- Update plonky2 dependencies by @hratoanina in #119
- Charge gas before SLOAD and refactor
insert_accessed_storage_keys
by @wborgeaud in #117 - Increased the public interface for
trie_tools
by @BGluth in #123 - Mpt trie panic refactor by @vladimir-trifonov in #118
- refactor: remove some reallocations from decoder by @vladimir-trifonov in #126
- Charge cold access cost in CALL before accessing state by @wborgeaud in #124
- chore: add debug function for better logging in development by @vladimir-trifonov in #134
- Make test_receipt_encoding more meaningful. by @LindaGuiga in #131
- Add a getter for the KERNEL codehash by @Nashtare in #136
- Version bump for next release by @BGluth in #137
- feat: swap out the internal U512 inside nibbles by @vladimir-trifonov in #132
- Some clippy fixes by @muursh in #149
- Remove interpreter-specific preinialization logic from State trait by @Nashtare in #139
- Make some more functions constant by @Nashtare in #154
- fix(keccak-sponge): properly constrain padding bytes by @shuklaayush in #158
- Reduce verbosity in logs by @Nashtare in #160
- Bump with latest starky by @Nashtare in #161
- feat: decouple trace_decoder and proof_gen by @vladimir-trifonov in #163
Full Changelog: v0.2.0...v0.3.0
v0.2.0
What's Changed
- Lighten up logging upon Kernel Panic by @Nashtare in #74
- Fix blake2 precompile by @Nashtare in #78
- Cleanup needless imports by @Nashtare in #79
- Fix Cycle count in logs for interpreter by @Nashtare in #77
- Creating sub-tries now never hashes leaves by @BGluth in #76
- Fix generation inputs logging pre-transaction execution by @Nashtare in #89
- Reduce state trie size for dummy payloads by @Nashtare in #88
- Fixed trie diffs using inverted logic by @BGluth in #95
- Fix trie output when debugging final root mismatch by @Nashtare in #86
- Add automatic labeler for PRs by @Nashtare in #96
- A small clippy fix by @muursh in #99
- Fix simulation output result by @Nashtare in #101
- Added a test for trie cloning by @BGluth in #98
- Now prunes tries properly (and more aggressively!) without hack by @BGluth in #97
- Fixed trie hash collision issue when constructing storage tries by @BGluth in #75
- Update README.md by @muursh in #105
- Add dependency graph in README by @Nashtare in #107
- Add clock to GenerationStateCheckpoint and fix interpreter rollback by @LindaGuiga in #109
- Bumped all sub-crates by @BGluth in #115
Full Changelog: v0.1.1...v0.2.0