Skip to content

Latest commit

 

History

History
42 lines (25 loc) · 3.15 KB

CHANGELOG.md

File metadata and controls

42 lines (25 loc) · 3.15 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog (modification: no type change headlines) and this project adheres to Semantic Versioning.

10.0.0 (EXPERIMENTAL) - 2025-04-29

Note: This library is in an experimental stage and should not be used in production!

Overview

This release is part of the v10 breaking release round making the EthereumJS libraries compatible with the Pectra hardfork going live on Ethereum mainnet on May 7 2025. Beside the hardfork update these releases mark a milestone in our release history since they - for the first time ever - bring the full Ethereum protocol stack - including the EVM - to the browser without any restrictions anymore, coming along with other substantial updates regarding library security and functionality.

Some highlights:

  • 🌴 Introduction of a tree-shakeable API
  • 👷🏼 Substantial dependency reduction to a "controlled dependency set" (no more than 10 + @Noble crypto)
  • 📲 EIP-7702 readiness
  • 🛵 Substantial bundle size reductions for all libraries
  • 🏄🏾‍♂️ All libraries now pure JS being WASM-free by default
  • 🦋 No more propriatary Node.js primitives

So: All libraries now work in the browser "out of the box".

Release Notes

Major release notes for this release can be found in the alpha.1 release notes here, with some additions along with the RC.1 releases, see here.

10.0.0-rc.1 - 2025-03-24

This is the first (and likely the last) round of RC releases for the upcoming breaking releases, following the alpha releases from October 2024 (see alpha release release notes for full/main change description). The releases are somewhat delayed (sorry for that), but final releases can now be expected very very soon, to be released once the Ethereum Pectra hardfork is scheduled for mainnet and all EIPs are fully finalized. Pectra will then also be the default hardfork setting for all EthereumJS libraries.

New Versioning Scheme

This breaking release round will come with a new versioning scheme (thanks to paulmillr for the suggestion), aligning the package numbers on breaking releases for all EthereumJS packages. This will make it easier to report bugs ("bug happened on EthereumJS version 10 releases"), reason about release series and make library compatibility more transparent and easier to grasp.

As a start we bump all major release versions to version 10, these RC releases are the first to be released with the new versioning scheme.

Note: This is the initial developer release of a binary tree package. While we also directly bump the binarytree package version for consistency reasons please be aware that this package is still in a very early stage and not production ready!