Skip to content

@ethereumjs/util v9.1.0

Compare
Choose a tag to compare
@holgerd77 holgerd77 released this 15 Aug 10:48
· 1 commit to maintenance-v8 since this release
27e2c02

Support for Partial Accounts

For Verkle or other contexts it can be useful to create partial accounts not containing all the account parameters. This is now supported starting with this release, see PR #3269:

import { Account } from '@ethereumjs/util'

const account = Account.fromPartialAccountData({
  nonce: '0x02',
  balance: '0x0384',
})
console.log(`Partial account with nonce=${account.nonce} and balance=${account.balance} created`)

New requests Module

This release introduces a new requests module (see PRs #3372, #3393, #3398 and #3477) with various type and an abstract base class for EIP-7685 general purpose execution layer requests to the CL (Prague hardfork) as well as concrete implementations for the currently supported request types:

  • EIP-6110: DepositRequest (Prague Hardfork)
  • EIP-7002: WithdrawawlRequest (Prague Hardfork)
  • EIP-7251: ConsolidationRequest (Prague Hardfork)

These request types are mainly used within the @ethereumjs/block library where applied usage instructions are provided in the README.

Verkle Updates

  • Update kzg-wasm to 0.4.0, PR #3358
  • Shift Verkle to osaka hardfork, PR #3371
  • New verkle module with utility methods and interfaces, PR #3462
  • Rename verkle utils and refactor, PR #3468

Other Features

  • Stricter prefixed hex typing, PRs #3348, #3427 and #3357 (some changes removed in PR #3382 for backwards compatibility reasons, will be reintroduced along upcoming breaking releases)

Other Changes

  • Adjust Account.isContract() (in Verkle context work), PR #3343
  • Rename deposit receipt to deposit request, PR #3408
  • Adjust Account.isEmpty() to also work for partial accounts, PR #3405
  • Enhances typing of CL requests, PR #3398
  • Rename withdrawal request's validatorPublicKey to validatorPubkey, PR #3474