Skip to content

@holgerd77 holgerd77 released this Feb 7, 2019 · 61 commits to master since this release

Petersburg Support

Support for the Petersburg (aka constantinopleFix) hardfork by integrating
Petersburg ready versions of associated libraries, see also
PR #433:

  • ethereumjs-common (chain and HF logic and helper functionality) v1.1.0
  • ethereumjs-blockchain v3.4.0
  • ethereumjs-block v2.2.0

To instantiate the VM with Petersburg HF rules set the opts.hardfork
constructor parameter to petersburg. This will run the VM on the new
Petersburg rules having removed the support for
EIP 1283.

Goerli Readiness

The VM is now also ready to execute on blocks from the final version of the
Goerli cross-client testnet and can
therefore be instantiated with opts.chain set to goerli.

Bug Fixes

  • Fixed mixed sync/async functions in cache,
    PR #422
  • Fixed a bug in setStateroot and caching by clearing the stateManager cache
    after setting the state root such that stale values are not returned,
    PR #420
  • Fixed cache access on the hooked VM (deprecated),
    PR #434

Refactoring

Following changes might be relevant for you if you are hotfixing/monkey-patching
on parts of the VM:

  • Moved bloom to its own directory,
    PR #429
  • Moved opcodes, opFns and logTable to lib/vm,
    PR #425
  • Converted Bloom to ES6 class,
    PR #428
  • Converted Cache to ES6 class, added unit tests,
    PR 427
Assets 2
You can’t perform that action at this time.