Skip to content

Commit

Permalink
New Minor VM v5.9 Release, Client and Common Bugfix Releases (#1856)
Browse files Browse the repository at this point in the history
* Common: Bumped version to v2.6.4, Updated CHANGELOG (VM, Client CHANGELOG as well), updated upstream dependency versions

* Common: rebuild documentation

* VM: bumped version to v5.9.0, updated upstream dependency versions

* CLient: bumped version to v0.4.1

* rename MergeForkBlock to MergeForkIdTransition for increased clarity

* changelog updates/typos/fixes

* common: rebuild docs for renaming to MergeForkIdTransition

Co-authored-by: Ryan Ghods <[email protected]>
  • Loading branch information
holgerd77 and ryanio authored Apr 14, 2022
1 parent 2707449 commit 6b0fb9d
Show file tree
Hide file tree
Showing 21 changed files with 162 additions and 84 deletions.
2 changes: 1 addition & 1 deletion packages/block/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@
"test:browser": "karma start karma.conf.js"
},
"dependencies": {
"@ethereumjs/common": "^2.6.3",
"@ethereumjs/common": "^2.6.4",
"merkle-patricia-tree": "^4.2.4",
"@ethereumjs/tx": "^3.5.1",
"ethereumjs-util": "^7.1.4"
Expand Down
2 changes: 1 addition & 1 deletion packages/blockchain/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
"author": "mjbecze <[email protected]>",
"dependencies": {
"@ethereumjs/block": "^3.6.2",
"@ethereumjs/common": "^2.6.3",
"@ethereumjs/common": "^2.6.4",
"@ethereumjs/ethash": "^1.1.0",
"debug": "^4.3.3",
"ethereumjs-util": "^7.1.4",
Expand Down
15 changes: 13 additions & 2 deletions packages/client/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,17 @@ 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).

## 0.4.1 - 2022-04-14

- Allow `forkchoiceUpdated` method to properly work on a reorg if a previous block was sent as `headBlockHash`, PR [#1820](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1820)
- Fix to have `newPayload` properly handle already existing payload, PR [#1824](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1824)
- client/engine: add ability to add blocks to blockchain without setting the head (faster engine calls!), PR [#1827](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1827)
- chain: safer closing to not cause db corruption during shutdown while handling engine requests, PR [#1827](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1827)
- CLConnectionManager: starts on first `updateStatus` in case `MergeForkIdTransition` isn't reached before merge (Goerli shadow fork scenario), PR [#1827](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1827)
- `eth_call` bug fix on specific `data` value cases, PR [#1830](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1830)
- engine: Adds `remoteBlocks` to handle storing blocks with unknown parent in case fcU sets head to it when parent is later given to `newPayload`, PR [#1830](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1830)
- Moved the TxPool to `FullEthereumService` (internal refactor for merge preparation), PR [#1853](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1853)

## 0.4.0 - 2022-03-15

### Merge Kiln v2 Testnet Support
Expand All @@ -21,9 +32,9 @@ This release fully supports the Merge [Kiln](https://kiln.themerge.dev/) testnet
- Engine API (RPC): Renamed `message` to `validationError`, PR [#1565](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1565)
- Engine API (RPC): Allowed ws and http on the same port, PR [#1565](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1565)
- Engine API (RPC): Respect message ordering in forkchoiceUpdated, PR [#1565](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1565)
- Engine API (RPC): Rename `coinbase` to `feeRecipient` as per `v1.0.0-alpha.5` spec, PR [#1565](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1565)
- Engine API (RPC): Rename `coinbase` to `feeRecipient` as per `v1.0.0-alpha.5` spec, PR [#1565](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1565)
- Engine API (RPC): Support for [jwt](https://jwt.io) based auth through both http/websocket protocols, PR [#1751](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1751)
- Engine API (RPC): Tests for new Engine API endpoints, PR [#1727](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1727)
- Engine API (RPC): Tests for new Engine API endpoints, PR [#1727](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1727)
- Geth genesis files: Use `mergeForkBlock` if provided, PR [#1565](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1565)
- Execution module refactor: decoupling from `FullSync` module to prepare for a post-Merge execution/sync separation, PR [#1663](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1663)
- Added terminal block validation in `newPayload` and `forkchoiceUpdated` methods from Engine API, PR [#1797](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1797)
Expand Down
6 changes: 3 additions & 3 deletions packages/client/lib/rpc/util/CLConnectionManager.ts
Original file line number Diff line number Diff line change
Expand Up @@ -81,11 +81,11 @@ export class CLConnectionManager {
maximumFractionDigits: 1,
})

if (this.config.chainCommon.gteHardfork(Hardfork.MergeForkBlock)) {
if (this.config.chainCommon.gteHardfork(Hardfork.MergeForkIdTransition)) {
this.start()
} else {
this.config.events.on(Event.CHAIN_UPDATED, () => {
if (this.config.chainCommon.gteHardfork(Hardfork.MergeForkBlock)) {
if (this.config.chainCommon.gteHardfork(Hardfork.MergeForkIdTransition)) {
this.start()
}
})
Expand Down Expand Up @@ -248,7 +248,7 @@ export class CLConnectionManager {
}
}

if (this.config.chainCommon.hardfork() === Hardfork.MergeForkBlock) {
if (this.config.chainCommon.hardfork() === Hardfork.MergeForkIdTransition) {
if (this.connectionStatus === ConnectionStatus.Disconnected) {
this.config.logger.warn('CL client connection is needed, Merge HF happening soon')
this.config.logger.warn(
Expand Down
2 changes: 1 addition & 1 deletion packages/client/lib/sync/fullsync.ts
Original file line number Diff line number Diff line change
Expand Up @@ -205,7 +205,7 @@ export class FullSynchronizer extends Synchronizer {
}
} else {
if (
this.config.chainCommon.hardfork() === Hardfork.MergeForkBlock &&
this.config.chainCommon.hardfork() === Hardfork.MergeForkIdTransition &&
!this.config.chainCommon.gteHardfork(Hardfork.Merge)
) {
const mergeTD = this.config.chainCommon.hardforkTD(Hardfork.Merge)!
Expand Down
2 changes: 1 addition & 1 deletion packages/client/lib/util/parse.ts
Original file line number Diff line number Diff line change
Expand Up @@ -253,7 +253,7 @@ async function parseGethParams(json: any) {
[Hardfork.MuirGlacier]: 'muirGlacierBlock',
[Hardfork.Berlin]: 'berlinBlock',
[Hardfork.London]: 'londonBlock',
[Hardfork.MergeForkBlock]: 'mergeForkBlock',
[Hardfork.MergeForkIdTransition]: 'mergeForkBlock',
}
params.hardforks = Object.values(Hardfork)
.map((name) => ({
Expand Down
6 changes: 3 additions & 3 deletions packages/client/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@ethereumjs/client",
"version": "0.4.0",
"version": "0.4.1",
"description": "EthereumJS client implementation",
"license": "MPL-2.0",
"author": "Vinay Pulim ([email protected])",
Expand Down Expand Up @@ -52,11 +52,11 @@
"@chainsafe/libp2p-noise": "^4.1.1",
"@ethereumjs/block": "^3.6.2",
"@ethereumjs/blockchain": "^5.5.2",
"@ethereumjs/common": "^2.6.3",
"@ethereumjs/common": "^2.6.4",
"@ethereumjs/devp2p": "^4.2.1",
"@ethereumjs/ethash": "^1.1.0",
"@ethereumjs/tx": "^3.5.1",
"@ethereumjs/vm": "^5.8.0",
"@ethereumjs/vm": "^5.9.0",
"body-parser": "^1.19.2",
"chalk": "^4.1.2",
"connect": "^3.7.0",
Expand Down
19 changes: 19 additions & 0 deletions packages/common/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,25 @@ 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).

## 2.6.4 - 2022-04-14

### EIP-3651: Warm COINBASE

Small EIP - see [EIP-3651](https://eips.ethereum.org/EIPS/eip-3651) considered for inclusion (CFI) in Shanghai to address an initially overpriced `COINBASE` access, PR [#1814](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1814).

### EIP-1153: Transient Storage Opcodes

Experimental implementation of [EIP-1153](https://eips.ethereum.org/EIPS/eip-1153), see PR [#1768](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1768), thanks to [Mark Tyneway](https://github.com/tynes) from Optimism for the implementation! ❤️

The EIP adds opcodes for manipulating state that behaves identically to storage but is discarded after every transaction. This makes communication via storage (`SLOAD`/`SSTORE`) more efficient and would allow for significant gas cost reductions for various use cases.

Hardfork inclusion of the EIP was extensively discussed during [ACD 135, April 1 2022](https://github.com/ethereum/pm/issues/500).

### Other Changes

- Fixed non-option passing on `custom()` method, PR [#1851](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1851)
- `PreMerge` hardfork renamed to `MergeForkIdTransition` for increased clarity, PR [#1856](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1856)

## 2.6.3 - 2022-03-15

### Merge Kiln v2 Testnet Support
Expand Down
Loading

0 comments on commit 6b0fb9d

Please sign in to comment.