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

feat: boojum integration #235

Merged
merged 35 commits into from
Dec 15, 2023
Merged

feat: boojum integration #235

merged 35 commits into from
Dec 15, 2023

Conversation

AntonD3
Copy link
Collaborator

@AntonD3 AntonD3 commented Dec 6, 2023

What 💻

  1. System contracts updated to the version currently used on the mainnet
  2. zksync-era update to the last commit of the main branch
  3. The latest vm version being used
  4. Added EcAdd and EcMul precompiles
  5. Account impersonating now works using a specialized bootloader
  6. eth_sendTransaction supported
  7. Added account impersonating to the fee estimation method
  8. etc/system-contracts/SystemConfig.json file added to track the system contracts version and changes
  9. System contracts building scripts were updated

Why ✋

1-4. to have the same state as on the mainnet after the Boojum upgrade
5. It allows us to avoid all the checks, the sender can be a contract, from kernel space, or anything. May be useful for some tests, widely used in the system contracts tests.
6. It allows to use the hardhat tools while impersonating accounts, which is really convenient
7. To have the same behavior as during executing
8. It will be easier to track the SC version, update it.
9. To work with the new system contracts

Evidence 📷

Include screenshots, screen recordings, or console output here demonstrating that your changes work as intended

AntonD3 and others added 22 commits October 1, 2023 19:31
* chore: adds proper null response to zks_batchDetails method (#152)

* fix: add back call stacks, console logs, and correct call stack count (#155)

* fix: add back call stacks, console logs, and correct call stack count

* Add comments. Fix typo.

* fix lint

* feat: add eth_getStorageAt (#134)

* add get_storage_at

* add eth_getStorageAt

* limit max archived blocks to 128

* remove ethers-contract dep

* feat: add evm_snapshot/revert (#158)

* fix: update compiled smart contracts to latest (#157)

* Update compile smart contracts checked into source
* Hide Notes section of PR template by default
* Update e2e tests to also be run on MacOS
* Add commented link to YouTube video at the top of release notes
* Limit rust/clippy linting to only the era_test_node package/crate
* Re-enable e2e test for zks_estimateFee
* Add more trace level logs for gas estimation

* feat: add eth_getTransactionByBlockHashAndIndex and eth_getTransactionByBlockNumberAndIndex (#159)

* feat: add eth_protocolVersion (#161)

* feat: impl debug_traceCall (#151)

* feat: impl debug_traceCall

* feat: adds test contract dir

* add refresh_test_contracts in Makefile

* fix: rename contacts_for_l2_call -> contracts_for_l2_call

* move not_implemented() to crate::utils, replace usage of macro

---------

Co-authored-by: Nicolas Villanueva <[email protected]>

* feat: Add well-known log selectors to console output (#162)

* add aarch64-unknown-linux-gnu target (#164)

* feat: add rustbook (#163)

* fix: install mdbook for ci (#169)

* feat: impl debug_traceTransaction (#165)

* feat: impl `debug_traceBlockByHash` and `debug_traceBlockByNumber` (#168)

* fix: update zksync-era deps to v16.0.0 (#173)

* chore: remove hub usage in favour of gh for draft releases (#175)

* feat: add hardhat_setCode (#171)

* feat: impl `zks_getTransactionDetails` (#176)

* feat: forbid ".only" from e2e-tests (#179)

* feat: impl zks_getBlockDetails (#182)

* feat: support builtInWithoutSecurity option (#186)

* feat: add zks_getBridgeContracts (#184)

* feat: add zks_getBytecodeByHash (#180)

* feat: refactor logging to use tracing crate and make it dynamic (#187)

* feat: impl zks_getRawBlockTransactions (#185)

* fix: unit-tests fixed on main (#193)

* fix: fix forking for [email protected] (#194)

* fix: Release drafts now attach files correctly (#196)

* contracts_for_l2_call was missed during merge

* Fix compilation errors

* Fix tests

---------

Co-authored-by: Dustin Brickwood <[email protected]>
Co-authored-by: Nicolas Villanueva <[email protected]>
Co-authored-by: Nisheeth Barthwal <[email protected]>
Co-authored-by: George W <[email protected]>
@AntonD3 AntonD3 marked this pull request as ready for review December 6, 2023 20:25
@AntonD3 AntonD3 requested a review from a team as a code owner December 6, 2023 20:26
Copy link
Collaborator

@MexicanAce MexicanAce left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 🚀

@MexicanAce MexicanAce merged commit 104da8e into main Dec 15, 2023
10 checks passed
@MexicanAce MexicanAce deleted the boojum-integration-merge-main branch December 15, 2023 17:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants