evmc/CHANGELOG.md

6.4 KiB

Changelog

6.2.0 - Unreleased

  • Added: [#217] The evmc::host C++ wrapper for EVMC host context and interface to be used by VM implementations.
  • Deprecated: [#196] The EVMC_CONSTANTINOPLE2 revision name is deprecated, replaced with EVMC_PETERSBURG.

6.1.1 - 2019-02-13

  • Added: [#192] Documentation of elements of evmc_revision.
  • Fixed: [#190] Compilation with GCC 5 because of the "deprecated" attribute applied to an enum element.

6.1.0 - 2019-01-24

  • Added: [#174] The Istanbul EVM revision.
  • Added: [#182] The is_zero() C++ helper for basic data types.
  • Added: [#186] Reserved the post-Constantinople EVM revision number.
  • Added: [#187] C++ wrappers for VM and execution result objects.
  • Deprecated: [#184] The EVMC_LATEST_REVISION is deprecated, replaced with EVMC_MAX_REVISION.

6.0.2 - 2019-01-16

  • Fixed: [#179] Add missing salt argument for CREATE2 in Host in Go bindings.

6.0.1 - 2018-11-10

  • Fixed: [#169] Integration of EVMC as a CMake subproject is easier because Hunter is not loaded unless building tests (EVMC_TESTING=ON) is requested.

6.0.0 - 2018-10-24

  • Added: [#116] EVMC Host implementation example.
  • Added: [#127] Support for Constantinople SSTORE net gas metering.
  • Added: [#133] Support for Constantinople CREATE2 salt in Go bindings.
  • Added: [#144] A VM can now report its capabilities (i.e. EVM and/or ewasm).
  • Added: [#159] EVMC Host implementation guide.
  • Added: [#160] EVMC VM implementation guide.
  • Changed: [#119] EVMC loader symbol searching has been generalized.
  • Changed: [#125] The evmc_context_fn_table renamed to evmc_host_interface.
  • Changed: [#128] The evmc_message fields reordered.
  • Changed: [#136] The evmc_set_option() now returns more information about the failure cause.
  • Changed: [#138], [#140] In C the bool type is used instead of int for true/false flags.
  • Changed: [#152] Introduction of the evmc_bytes32 type.
  • Changed: [#154] Simplification of signatures of Host methods.

5.2.0 - 2018-08-28

  • Feature: [#81] Use also "evmc_create" function name for loading EVMC DLLs.
  • Fix: [#92] The evmc.h header compatibility with C++98 fixed.
  • Fix: [#93], [#103] Compilation and build configuration fixes.
  • Improved: [#97], [#107] Documentation improvements, including documentation for the VM Tester.

5.1.0 - 2018-08-23

  • Feature: [#41] Go language bindings for EVMC.
  • Feature: [#56, #62] New error codes.
  • Feature: [#67, #68, #70] More helper functions.
  • Fix: [#72] Go bindings: Properly handle unknown error codes.
  • Improved: [#58] Documentation has been extended.
  • Improved: [#59] Optional Result Storage helper module has been separated.
  • Improved: [#75] Cable upgraded to 0.2.11.
  • Improved: [#77] The license changed from MIT to Apache 2.0.

5.0.0 - 2018-08-10

  • Feature: [#23, #24] List of status codes extended and reordered.
  • Feature: [#32] VM Tracing API.
  • Feature: [#33, #34] The support library with metrics tables for EVM1 instructions.
  • Feature: [#35] Ability to create EVMC CMake package.
  • Feature: [#40] The loader support library for VM dynamic loading.
  • Feature: [#45] Constantinople: Support for CREATE2 instruction.
  • Feature: [#49] Constantinople: Support for EXTCODEHASH instruction.
  • Feature: [#52] Constantinople: Storage status is reported back from evmc_set_storage().