-
Notifications
You must be signed in to change notification settings - Fork 759
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
4844 Browser Readiness Releases #3297
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files
Flags with carried forward coverage won't be shown. Click here to find out more. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Please do not merge yet, this still needs to be updated with the KZG changes! |
… verkle dependencies a caret range
… to new EVM async create() constructor)
…fication of EVM.create() constructor calling
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some small comments
|
||
### Other Changes | ||
|
||
- Remove internal `_init()` method along EVM/VM constructor refactoring, PRs [#3304](https://github.com/ethereumjs/ethereumjs-monorepo/pull/3304/) and [#3315](https://github.com/ethereumjs/ethereumjs-monorepo/pull/3315) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also in blockchain!
@@ -183,6 +183,7 @@ export interface EVMOpts { | |||
* - [EIP-2537](https://eips.ethereum.org/EIPS/eip-2537) - BLS precompiles (removed in v4.0.0, see latest v3 release) | |||
* - [EIP-2565](https://eips.ethereum.org/EIPS/eip-2565) - ModExp gas cost | |||
* - [EIP-2718](https://eips.ethereum.org/EIPS/eip-2565) - Transaction Types | |||
* - [EIP-2935](https://eips.ethereum.org/EIPS/eip-2935) - Save historical block hashes in state (`experimental`) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Aha, I forgot to add this! Thanks :)
@@ -19,7 +19,7 @@ npm install @ethereumjs/evm | |||
|
|||
This package provides the core Ethereum Virtual Machine (EVM) implementation which is capable of executing EVM-compatible bytecode. The package has been extracted from the [@ethereumjs/vm](https://github.com/ethereumjs/ethereumjs-monorepo/tree/master/packages/vm) package along the VM `v6` release. | |||
|
|||
**Note:** If you want to work with `EIP-4844` related functionality, you will have additional manual installation steps for the **KZG setup**, see related section below. | |||
**Note:** Starting with the Dencun hardfork `EIP-4844` related functionality will become an integrated part of the EVM functionality with the activation of the point evaluation precompile. It is therefore strongly recommended to _always_ run the EVM with a KZG library installed and initialized, see [KZG Setup](https://github.com/ethereumjs/ethereumjs-monorepo/tree/master/packages/tx/README.md#kzg-setup) for instructions. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
(side note, for EVM I think this only matters if you call into the kzg precompile)
|
||
#### Trie Node.js Import Bug | ||
|
||
Since this fits well also to be placed here relatively prominently for awareness: we had a relatively nasty bug in the `@ethereumjs/trie` library with a `Node.js` web stream import also affecting browser compatibility, see PR [#3280](https://github.com/ethereumjs/ethereumjs-monorepo/pull/3280). This bug has been fixed along with these releases and this library now references the updated trie library version. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If you want to add specific Tx changelogs here, we now have getEffectivePriorityFee
in tx:
This returns the "tip" the miner/coinbase will get.
@@ -6,6 +6,10 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) | |||
(modification: no type change headlines) and this project adheres to | |||
[Semantic Versioning](http://semver.org/spec/v2.0.0.html). | |||
|
|||
## 9.0.3 - 2024-03-05 | |||
|
|||
- Allow optional `trustedSetupPath` for the `initKZG()` method, PR [#3296](https://github.com/ethereumjs/ethereumjs-monorepo/pull/3296) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hmm, I think we should maybe mention here that if you want to use kzg-wasm
but if you want to use another trustedSetupPath
(so another trusted setup than the official one), then this is not possible with kzg-wasm
. (Not sure if we throw if you try to initKzg
the kzg-wasm
with this optional path param..? I don't think so? Might be confusing for the end user if they try this.)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM assuming CI passes
Just published the following releases on npm:
|
Follow-up on #3261
This is a (relatively big) release round following relatively shortly after the main Dencun hardfork releases.
Biggest addition is the integration of the kzg-wasm library (together with an also browser-compatibility-affecting trie bug) which now makes all 4844 functionality fully browser compatible! 🎉