mirror of https://github.com/status-im/evmc.git
8.0 KiB
8.0 KiB
Changelog
[6.2.1] - unreleased
- Fixed:
[#256,
#257]
Disallow implicit conversion from C++
evmc::result
toevmc_result
causing unintendent premature releasing of resources.
6.2.0 - 2019-04-25
- Added: [#216]
CMake option
EVMC_TEST_TOOLS
to build evmc-vmtester without bothering with internal unit tests. - Added: [#217] [#226] The full C++ EVMC API for both VM and Host implementations.
- Added: [#201, #202, #233] Initial and rough bindings for Rust. It is possible to implement an EVMC VM in Rust utilising some helpers.
- Added:
[#230]
[#232]
Handling of DLL loading errors greatly improved by
evmc_last_error_msg()
function. - Changed: [#195] The minimum supported GCC version is 6 (bumped from undocumented version 4.8).
- Changed: [#197]
Go bindings improved by introduction of the
TxContext
struct. - Changed: [#221] [#234] [#238] [#241] [#242] A lot of evmc-vmtester improvements.
- Changed: [#251] Cable upgraded to version 0.2.17.
- Deprecated: [#196]
The
EVMC_CONSTANTINOPLE2
revision name is deprecated, replaced withEVMC_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 withEVMC_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 toevmc_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 ofint
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()
.