mirror of
https://github.com/status-im/evmc.git
synced 2025-02-24 17:08:26 +00:00
Merge pull request #381 from ethereum/changelog_reformat
CHANGELOG reformat
This commit is contained in:
commit
024154dbdb
408
CHANGELOG.md
408
CHANGELOG.md
@ -1,235 +1,311 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
Documentation of all notable changes to the **EVMC** project.
|
||||||
|
|
||||||
|
The format is based on [Keep a Changelog],
|
||||||
|
and this project adheres to [Semantic Versioning].
|
||||||
|
|
||||||
## [6.3.0] - unreleased
|
## [6.3.0] - unreleased
|
||||||
|
|
||||||
- Added: [[#267](https://github.com/ethereum/evmc/pull/267)]
|
### Added
|
||||||
Experimental support for _Precompiles_ -
|
|
||||||
|
- Experimental support for _Precompiles_ -
|
||||||
EVMC modules containing implementations of Ethereum precompiled contracts.
|
EVMC modules containing implementations of Ethereum precompiled contracts.
|
||||||
To learn more read
|
To learn more read
|
||||||
the [EVMC Precompiles](https://github.com/ethereum/evmc/issues/259) feature description.
|
the [EVMC Precompiles](https://github.com/ethereum/evmc/issues/259) feature description.
|
||||||
- Added: [[#301](https://github.com/ethereum/evmc/pull/301)]
|
[[#267](https://github.com/ethereum/evmc/pull/267)]
|
||||||
The `vm::get_capabilities()` method has been added in C++ API.
|
- The `vm::get_capabilities()` method has been added in C++ API.
|
||||||
- Added: [[#303](https://github.com/ethereum/evmc/pull/303)]
|
[[#301](https://github.com/ethereum/evmc/pull/301)]
|
||||||
A CMake helper for running evmc-vmtester.
|
- A CMake helper for running evmc-vmtester.
|
||||||
- Added: [[#313](https://github.com/ethereum/evmc/pull/313)]
|
[[#303](https://github.com/ethereum/evmc/pull/303)]
|
||||||
The loader module introduces standardized EVMC module configuration string
|
- The loader module introduces standardized EVMC module configuration string
|
||||||
which contains path to the module and additional options.
|
which contains path to the module and additional options.
|
||||||
E.g. `./modules/vm.so,engine=compiler,trace,verbosity=2`.
|
E.g. `./modules/vm.so,engine=compiler,trace,verbosity=2`.
|
||||||
A VM can be loaded, created and configured atomically with
|
A VM can be loaded, created and configured atomically with
|
||||||
new `evmc_load_and_configure()` function.
|
new `evmc_load_and_configure()` function.
|
||||||
- Added: [[#327](https://github.com/ethereum/evmc/pull/327)]
|
[[#313](https://github.com/ethereum/evmc/pull/313)]
|
||||||
Full support for 32-bit architectures has been added.
|
- Full support for 32-bit architectures has been added.
|
||||||
- Added: [[#333](https://github.com/ethereum/evmc/pull/333)]
|
[[#327](https://github.com/ethereum/evmc/pull/327)]
|
||||||
The C/C++ API for creating execution results in VMs has been extended
|
- The C/C++ API for creating execution results in VMs has been extended
|
||||||
to handle common usage cases.
|
to handle common usage cases.
|
||||||
- Added: [[#341](https://github.com/ethereum/evmc/pull/341)]
|
[[#333](https://github.com/ethereum/evmc/pull/333)]
|
||||||
Support for moving `evmc::vm` objects in C++ API.
|
- Support for moving `evmc::vm` objects in C++ API.
|
||||||
- Added: [[#357](https://github.com/ethereum/evmc/pull/357)]
|
[[#341](https://github.com/ethereum/evmc/pull/341)]
|
||||||
The basic types `address` and `bytes32` have received their C++ wrappers
|
- The basic types `address` and `bytes32` have received their C++ wrappers
|
||||||
to assure they are always initialized.
|
to assure they are always initialized.
|
||||||
They also have convenient overloaded operators for comparison
|
They also have convenient overloaded operators for comparison
|
||||||
and usage as keys in standard containers.
|
and usage as keys in standard containers.
|
||||||
- Added: [[#359](https://github.com/ethereum/evmc/pull/359)]
|
[[#357](https://github.com/ethereum/evmc/pull/357)]
|
||||||
The C++ EVMC basic types `address` and `bytes32` have user defined literals.
|
- The C++ EVMC basic types `address` and `bytes32` have user defined literals.
|
||||||
|
[[#359](https://github.com/ethereum/evmc/pull/359)]
|
||||||
```cpp
|
```cpp
|
||||||
auto a = 0xfB6916095ca1df60bB79Ce92cE3Ea74c37c5d359_address;
|
auto a = 0xfB6916095ca1df60bB79Ce92cE3Ea74c37c5d359_address;
|
||||||
auto b = 0xd4e56740f876aef8c010b86a40d5f56745a118d0906a34e69aec8c0db1cb8fa3_bytes32;
|
auto b = 0xd4e56740f876aef8c010b86a40d5f56745a118d0906a34e69aec8c0db1cb8fa3_bytes32;
|
||||||
```
|
```
|
||||||
- Added: [[#360](https://github.com/ethereum/evmc/pull/360)]
|
- CMake option `EVMC_INSTALL` (`ON` by default) to disable installing EVMC targets.
|
||||||
CMake option `EVMC_INSTALL` (`ON` by default) to disable installing EVMC targets.
|
|
||||||
This may be useful when EVMC is included in other project as git submodule or subtree.
|
This may be useful when EVMC is included in other project as git submodule or subtree.
|
||||||
- Added: [[#366](https://github.com/ethereum/evmc/pull/366)]
|
[[#360](https://github.com/ethereum/evmc/pull/360)]
|
||||||
The `evmc-vmtester` tool received support for EVMC module configuration.
|
- The `evmc-vmtester` tool received support for EVMC module configuration.
|
||||||
E.g. `evmc-vmtester ./my_vm,mode=interpreter`.
|
E.g. `evmc-vmtester ./my_vm,mode=interpreter`.
|
||||||
- Changed:
|
[[#366](https://github.com/ethereum/evmc/pull/366)]
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
|
||||||
|
- A lot of documentation fixes, improvements and cleanups.
|
||||||
[[#271](https://github.com/ethereum/evmc/pull/271),
|
[[#271](https://github.com/ethereum/evmc/pull/271),
|
||||||
[#272](https://github.com/ethereum/evmc/pull/272),
|
[#272](https://github.com/ethereum/evmc/pull/272),
|
||||||
[#276](https://github.com/ethereum/evmc/pull/276),
|
[#276](https://github.com/ethereum/evmc/pull/276),
|
||||||
[#280](https://github.com/ethereum/evmc/pull/280),
|
[#280](https://github.com/ethereum/evmc/pull/280),
|
||||||
[#345](https://github.com/ethereum/evmc/pull/345)]
|
[#345](https://github.com/ethereum/evmc/pull/345)]
|
||||||
A lot of documentation fixes, improvements and cleanups.
|
- In C++ API `evmc::result::raw()` renamed to `evmc::result::release_raw()`.
|
||||||
- Changed: [[#293](https://github.com/ethereum/evmc/pull/293)]
|
[[#293](https://github.com/ethereum/evmc/pull/293)]
|
||||||
In C++ API `evmc::result::raw()` renamed to `evmc::result::release_raw()`.
|
- In `evmc_load_and_create()` the `error_code` is optional (can be `NULL`).
|
||||||
- Changed: [[#311](https://github.com/ethereum/evmc/pull/311)]
|
[[#311](https://github.com/ethereum/evmc/pull/311)]
|
||||||
In `evmc_load_and_create()` the `error_code` is optional (can be `NULL`).
|
|
||||||
- Deprecated: [[#358](https://github.com/ethereum/evmc/pull/358)]
|
### Deprecated
|
||||||
The usage of `evmc/helpers.hpp` has been deprecated. Use `evmc/evmc.hpp`
|
|
||||||
|
- The usage of `evmc/helpers.hpp` has been deprecated. Use `evmc/evmc.hpp`
|
||||||
which provides the same features.
|
which provides the same features.
|
||||||
- Deprecated: [[#376](https://github.com/ethereum/evmc/pull/376)]
|
[[#358](https://github.com/ethereum/evmc/pull/358)]
|
||||||
The tracing API has been deprecated as there have been some design flaws discovered.
|
- The tracing API has been deprecated as there have been some design flaws discovered.
|
||||||
New API is expected to be introduced in future.
|
New API is expected to be introduced in future.
|
||||||
- Fixed:
|
[[#376](https://github.com/ethereum/evmc/pull/376)]
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
|
||||||
|
- The `vmtester` tool now builds with MSVC with `/std:c++17`.
|
||||||
[[#261](https://github.com/ethereum/evmc/issues/261),
|
[[#261](https://github.com/ethereum/evmc/issues/261),
|
||||||
[#263](https://github.com/ethereum/evmc/pull/263)]
|
[#263](https://github.com/ethereum/evmc/pull/263)]
|
||||||
The `vmtester` tool now builds with MSVC with `/std:c++17`.
|
- The `evmc_release_result()` helper has been fixed.
|
||||||
- Fixed:
|
|
||||||
[[#266](https://github.com/ethereum/evmc/issues/266),
|
[[#266](https://github.com/ethereum/evmc/issues/266),
|
||||||
[#279](https://github.com/ethereum/evmc/pull/279)]
|
[#279](https://github.com/ethereum/evmc/pull/279)]
|
||||||
The `evmc_release_result()` helper has been fixed.
|
- The missing include guard in `evmc.hpp` has been fixed.
|
||||||
- Fixed:
|
|
||||||
[[#300](https://github.com/ethereum/evmc/pull/300)]
|
[[#300](https://github.com/ethereum/evmc/pull/300)]
|
||||||
The missing include guard in `evmc.hpp` has been fixed.
|
- A loaded VM with incompatible ABI version is now properly destroyed.
|
||||||
- Fixed:
|
|
||||||
[[#305](https://github.com/ethereum/evmc/issues/305),
|
[[#305](https://github.com/ethereum/evmc/issues/305),
|
||||||
[#306](https://github.com/ethereum/evmc/pull/306)]
|
[#306](https://github.com/ethereum/evmc/pull/306)]
|
||||||
A loaded VM with incompatible ABI version is not properly destroyed.
|
|
||||||
|
|
||||||
## [6.2.2] - 2019-05-16
|
## [6.2.2] - 2019-05-16
|
||||||
|
|
||||||
- Fixed: [[#281](https://github.com/ethereum/evmc/pull/281)]
|
### Fixed
|
||||||
Compilation error of `evmc::result::raw()` in Visual Studio fixed.
|
|
||||||
- Fixed: [[#282](https://github.com/ethereum/evmc/pull/282)]
|
- Compilation error of `evmc::result::raw()` in Visual Studio fixed.
|
||||||
The `evmc::result`'s move assignment operator fixed.
|
[[#281](https://github.com/ethereum/evmc/pull/281)]
|
||||||
|
- The `evmc::result`'s move assignment operator fixed.
|
||||||
|
[[#282](https://github.com/ethereum/evmc/pull/282)]
|
||||||
|
|
||||||
## [6.2.1] - 2019-04-29
|
## [6.2.1] - 2019-04-29
|
||||||
|
|
||||||
- Fixed:
|
### Fixed
|
||||||
[[#256](https://github.com/ethereum/evmc/issues/256),
|
|
||||||
[#257](https://github.com/ethereum/evmc/issues/257)]
|
- Disallow implicit conversion from C++ `evmc::result` to `evmc_result`
|
||||||
Disallow implicit conversion from C++ `evmc::result` to `evmc_result`
|
|
||||||
causing unintendent premature releasing of resources.
|
causing unintendent premature releasing of resources.
|
||||||
|
[[#256](https://github.com/ethereum/evmc/issues/256),
|
||||||
|
[#257](https://github.com/ethereum/evmc/issues/257)]
|
||||||
|
|
||||||
|
|
||||||
## [6.2.0] - 2019-04-25
|
## [6.2.0] - 2019-04-25
|
||||||
|
|
||||||
- Added: [[#216](https://github.com/ethereum/evmc/pull/216)]
|
### Added
|
||||||
CMake option `EVMC_TEST_TOOLS` to build evmc-vmtester without bothering with internal unit tests.
|
|
||||||
- Added:
|
- CMake option `EVMC_TEST_TOOLS` to build evmc-vmtester without bothering with internal unit tests.
|
||||||
[[#217](https://github.com/ethereum/evmc/pull/217)]
|
[[#216](https://github.com/ethereum/evmc/pull/216)]
|
||||||
[[#226](https://github.com/ethereum/evmc/pull/226)]
|
- The full C++ EVMC API for both VM and Host implementations.
|
||||||
The full C++ EVMC API for both VM and Host implementations.
|
[[#217](https://github.com/ethereum/evmc/pull/217),
|
||||||
- Added: [[#201](https://github.com/ethereum/evmc/pull/201), [#202](https://github.com/ethereum/evmc/pull/202), [#233](https://github.com/ethereum/evmc/pull/233)]
|
[#226](https://github.com/ethereum/evmc/pull/226)]
|
||||||
Initial and rough bindings for Rust. It is possible to implement an
|
- Initial and rough **bindings for Rust**. It is possible to implement an
|
||||||
EVMC VM in Rust utilising some helpers.
|
EVMC VM in Rust utilising some helpers.
|
||||||
- Added:
|
[[#201](https://github.com/ethereum/evmc/pull/201),
|
||||||
[[#230](https://github.com/ethereum/evmc/pull/230)]
|
[#202](https://github.com/ethereum/evmc/pull/202),
|
||||||
[[#232](https://github.com/ethereum/evmc/pull/232)]
|
[#233](https://github.com/ethereum/evmc/pull/233)]
|
||||||
Handling of DLL loading errors greatly improved by `evmc_last_error_msg()` function.
|
- Handling of DLL loading errors greatly improved by
|
||||||
- Changed: [[#195](https://github.com/ethereum/evmc/pull/195)]
|
new `evmc_last_error_msg()` function.
|
||||||
The minimum supported GCC version is 6 (bumped from undocumented version 4.8).
|
[[#230](https://github.com/ethereum/evmc/pull/230),
|
||||||
- Changed: [[#197](https://github.com/ethereum/evmc/pull/197)]
|
[#232](https://github.com/ethereum/evmc/pull/232)]
|
||||||
Go bindings improved by introduction of the `TxContext` struct.
|
|
||||||
- Changed:
|
### Changed
|
||||||
[[#221](https://github.com/ethereum/evmc/pull/221)]
|
|
||||||
[[#234](https://github.com/ethereum/evmc/pull/234)]
|
- The minimum supported GCC version is 6 (bumped from undocumented version 4.8).
|
||||||
[[#238](https://github.com/ethereum/evmc/pull/238)]
|
[[#195](https://github.com/ethereum/evmc/pull/195)]
|
||||||
[[#241](https://github.com/ethereum/evmc/pull/241)]
|
- Go bindings improved by introduction of the `TxContext` struct.
|
||||||
[[#242](https://github.com/ethereum/evmc/pull/242)]
|
[[#197](https://github.com/ethereum/evmc/pull/197)]
|
||||||
A lot of evmc-vmtester improvements.
|
- A lot improvements to the `evmc-vmtester` tool.
|
||||||
- Changed: [[#251](https://github.com/ethereum/evmc/pull/251)]
|
[[#221](https://github.com/ethereum/evmc/pull/221),
|
||||||
[Cable] upgraded to version 0.2.17.
|
[#234](https://github.com/ethereum/evmc/pull/234),
|
||||||
- Deprecated: [[#196](https://github.com/ethereum/evmc/pull/196)]
|
[#238](https://github.com/ethereum/evmc/pull/238),
|
||||||
The `EVMC_CONSTANTINOPLE2` revision name is deprecated, replaced with `EVMC_PETERSBURG`.
|
[#241](https://github.com/ethereum/evmc/pull/241),
|
||||||
|
[#242](https://github.com/ethereum/evmc/pull/242)]
|
||||||
|
- [Cable] upgraded to version 0.2.17.
|
||||||
|
[[#251](https://github.com/ethereum/evmc/pull/251)]
|
||||||
|
|
||||||
|
### Deprecated
|
||||||
|
|
||||||
|
- The `EVMC_CONSTANTINOPLE2` revision name is deprecated, replaced with `EVMC_PETERSBURG`.
|
||||||
|
[[#196](https://github.com/ethereum/evmc/pull/196)]
|
||||||
|
|
||||||
|
|
||||||
## [6.1.1] - 2019-02-13
|
## [6.1.1] - 2019-02-13
|
||||||
|
|
||||||
- Added: [[#192](https://github.com/ethereum/evmc/pull/192)]
|
### Added
|
||||||
Documentation of elements of evmc_revision.
|
|
||||||
- Fixed: [[#190](https://github.com/ethereum/evmc/pull/190)]
|
- Documentation of elements of `evmc_revision`.
|
||||||
Compilation with GCC 5 because of the "deprecated" attribute applied
|
[[#192](https://github.com/ethereum/evmc/pull/192)]
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
|
||||||
|
- Fixed compilation with GCC 5 because of the "deprecated" attribute applied
|
||||||
to an enum element.
|
to an enum element.
|
||||||
|
[[#190](https://github.com/ethereum/evmc/pull/190)]
|
||||||
|
|
||||||
|
|
||||||
## [6.1.0] - 2019-01-24
|
## [6.1.0] - 2019-01-24
|
||||||
|
|
||||||
- Added: [[#174](https://github.com/ethereum/evmc/pull/174)]
|
### Added
|
||||||
The **Istanbul** EVM revision.
|
|
||||||
- Added: [[#182](https://github.com/ethereum/evmc/pull/182)]
|
- The **Istanbul** EVM revision has been added.
|
||||||
The `is_zero()` C++ helper for basic data types.
|
[[#174](https://github.com/ethereum/evmc/pull/174)]
|
||||||
- Added: [[#186](https://github.com/ethereum/evmc/pull/186)]
|
- The `is_zero()` C++ helper for basic data types has been added.
|
||||||
Reserved the post-Constantinople EVM revision number.
|
[[#182](https://github.com/ethereum/evmc/pull/182)]
|
||||||
- Added: [[#187](https://github.com/ethereum/evmc/pull/187)]
|
- Reserved the post-Constantinople EVM revision number.
|
||||||
C++ wrappers for VM and execution result objects.
|
[[#186](https://github.com/ethereum/evmc/pull/186)]
|
||||||
- Deprecated: [[#184](https://github.com/ethereum/evmc/pull/184)]
|
- The C++ wrappers for VM and execution result objects have been added.
|
||||||
The `EVMC_LATEST_REVISION` is deprecated, replaced with `EVMC_MAX_REVISION`.
|
[[#187](https://github.com/ethereum/evmc/pull/187)]
|
||||||
|
|
||||||
|
### Deprecated
|
||||||
|
|
||||||
|
- The `EVMC_LATEST_REVISION` name has been deprecated, replaced with `EVMC_MAX_REVISION`.
|
||||||
|
[[#184](https://github.com/ethereum/evmc/pull/184)]
|
||||||
|
|
||||||
|
|
||||||
## [6.0.2] - 2019-01-16
|
## [6.0.2] - 2019-01-16
|
||||||
|
|
||||||
- Fixed: [[#179](https://github.com/ethereum/evmc/pull/179)]
|
### Fixed
|
||||||
Add missing salt argument for CREATE2 in Host in Go bindings.
|
|
||||||
|
- Add missing salt argument for CREATE2 in Host in Go bindings.
|
||||||
|
[[#179](https://github.com/ethereum/evmc/pull/179)]
|
||||||
|
|
||||||
|
|
||||||
## [6.0.1] - 2018-11-10
|
## [6.0.1] - 2018-11-10
|
||||||
|
|
||||||
- Fixed: [[#169](https://github.com/ethereum/evmc/pull/169)]
|
### Fixed
|
||||||
Integration of EVMC as a CMake subproject is easier because
|
|
||||||
|
- Integration of EVMC as a CMake subproject is easier because
|
||||||
Hunter is not loaded unless building tests (`EVMC_TESTING=ON`) is requested.
|
Hunter is not loaded unless building tests (`EVMC_TESTING=ON`) is requested.
|
||||||
|
[[#169](https://github.com/ethereum/evmc/pull/169)]
|
||||||
|
|
||||||
|
|
||||||
## [6.0.0] - 2018-10-24
|
## [6.0.0] - 2018-10-24
|
||||||
|
|
||||||
- Added: [[#116](https://github.com/ethereum/evmc/pull/116)]
|
### Added
|
||||||
[EVMC Host implementation example](https://github.com/ethereum/evmc/blob/master/examples/example_host.cpp).
|
|
||||||
- Added: [[#127](https://github.com/ethereum/evmc/pull/127)]
|
- [EVMC Host implementation example](https://github.com/ethereum/evmc/blob/master/examples/example_host.cpp).
|
||||||
Support for Constantinople SSTORE net gas metering.
|
[[#116](https://github.com/ethereum/evmc/pull/116)]
|
||||||
- Added: [[#133](https://github.com/ethereum/evmc/pull/133)]
|
- Support for Constantinople SSTORE net gas metering.
|
||||||
Support for Constantinople CREATE2 salt in Go bindings.
|
[[#127](https://github.com/ethereum/evmc/pull/127)]
|
||||||
- Added: [[#144](https://github.com/ethereum/evmc/pull/144)]
|
- Support for Constantinople CREATE2 salt in Go bindings.
|
||||||
A VM can now report its **capabilities** (i.e. EVM and/or ewasm).
|
[[#133](https://github.com/ethereum/evmc/pull/133)]
|
||||||
- Added: [[#159](https://github.com/ethereum/evmc/pull/159)]
|
- A VM can now report its **capabilities** (i.e. EVM and/or ewasm).
|
||||||
[EVMC Host implementation guide](https://ethereum.github.io/evmc/hostguide.html).
|
[[#144](https://github.com/ethereum/evmc/pull/144)]
|
||||||
- Added: [[#160](https://github.com/ethereum/evmc/pull/160)]
|
- Introduction of the `evmc_bytes32` type.
|
||||||
[EVMC VM implementation guide](https://ethereum.github.io/evmc/vmguide.html).
|
[[#152](https://github.com/ethereum/evmc/pull/152)]
|
||||||
- Changed: [[#119](https://github.com/ethereum/evmc/pull/119)]
|
- [EVMC Host implementation guide](https://ethereum.github.io/evmc/hostguide.html).
|
||||||
EVMC loader symbol searching has been generalized.
|
[[#159](https://github.com/ethereum/evmc/pull/159)]
|
||||||
- Changed: [[#125](https://github.com/ethereum/evmc/pull/125)]
|
- [EVMC VM implementation guide](https://ethereum.github.io/evmc/vmguide.html).
|
||||||
The `evmc_context_fn_table` renamed to `evmc_host_interface`.
|
[[#160](https://github.com/ethereum/evmc/pull/160)]
|
||||||
- Changed: [[#128](https://github.com/ethereum/evmc/pull/128)]
|
|
||||||
The `evmc_message` fields reordered.
|
### Changed
|
||||||
- Changed: [[#136](https://github.com/ethereum/evmc/pull/136)]
|
|
||||||
The `evmc_set_option()` now returns more information about the failure cause.
|
- EVMC loader symbol searching has been generalized.
|
||||||
- Changed: [[#138](https://github.com/ethereum/evmc/pull/138)], [[#140](https://github.com/ethereum/evmc/pull/140)]
|
[[#119](https://github.com/ethereum/evmc/pull/119)]
|
||||||
In C the `bool` type is used instead of `int` for true/false flags.
|
- The `evmc_context_fn_table` renamed to `evmc_host_interface`.
|
||||||
- Changed: [[#152](https://github.com/ethereum/evmc/pull/152)]
|
[[#125](https://github.com/ethereum/evmc/pull/125)]
|
||||||
Introduction of the `evmc_bytes32` type.
|
- The `evmc_message` fields reordered.
|
||||||
- Changed: [[#154](https://github.com/ethereum/evmc/pull/154)]
|
[[#128](https://github.com/ethereum/evmc/pull/128)]
|
||||||
Simplification of signatures of Host methods.
|
- The `evmc_set_option()` now returns more information about the failure cause.
|
||||||
|
[[#136](https://github.com/ethereum/evmc/pull/136)]
|
||||||
|
- In C the `bool` type is used instead of `int` for true/false flags.
|
||||||
|
[[#138](https://github.com/ethereum/evmc/pull/138),
|
||||||
|
[#140](https://github.com/ethereum/evmc/pull/140)]
|
||||||
|
- Simplification of signatures of Host methods.
|
||||||
|
[[#154](https://github.com/ethereum/evmc/pull/154)]
|
||||||
|
|
||||||
|
|
||||||
## [5.2.0] - 2018-08-28
|
## [5.2.0] - 2018-08-28
|
||||||
|
|
||||||
- Feature: [[#81](https://github.com/ethereum/evmc/pull/81)]
|
### Added
|
||||||
Use also "evmc_create" function name for loading EVMC DLLs.
|
|
||||||
- Fix: [[#92](https://github.com/ethereum/evmc/pull/92)]
|
- Use also "evmc_create" function name for loading EVMC DLLs.
|
||||||
The evmc.h header compatibility with C++98 fixed.
|
[[#81](https://github.com/ethereum/evmc/pull/81)]
|
||||||
- Fix: [[#93](https://github.com/ethereum/evmc/pull/93)], [[#103](https://github.com/ethereum/evmc/pull/103)]
|
|
||||||
Compilation and build configuration fixes.
|
### Changed
|
||||||
- Improved: [[#97](https://github.com/ethereum/evmc/pull/97)], [[#107](https://github.com/ethereum/evmc/pull/107)]
|
|
||||||
Documentation improvements, including documentation for the VM Tester.
|
- Documentation improvements, including documentation for the VM Tester.
|
||||||
|
[[#97](https://github.com/ethereum/evmc/pull/97),
|
||||||
|
[#107](https://github.com/ethereum/evmc/pull/107)]
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
|
||||||
|
- The `evmc.h` header compatibility with C++98 fixed.
|
||||||
|
[[#92](https://github.com/ethereum/evmc/pull/92)]
|
||||||
|
- Compilation and build configuration fixes.
|
||||||
|
[[#93](https://github.com/ethereum/evmc/pull/93),
|
||||||
|
[#103](https://github.com/ethereum/evmc/pull/103)]
|
||||||
|
|
||||||
|
|
||||||
## [5.1.0] - 2018-08-23
|
## [5.1.0] - 2018-08-23
|
||||||
|
|
||||||
- Feature: [[#41](https://github.com/ethereum/evmc/pull/41)]
|
### Added
|
||||||
Go language bindings for EVMC.
|
|
||||||
- Feature: [[#56](https://github.com/ethereum/evmc/pull/56), [#62](https://github.com/ethereum/evmc/pull/62)]
|
- **Go language bindings** for EVMC.
|
||||||
New error codes.
|
[[#41](https://github.com/ethereum/evmc/pull/41)]
|
||||||
- Feature: [[#67](https://github.com/ethereum/evmc/pull/67), [#68](https://github.com/ethereum/evmc/pull/68), [#70](https://github.com/ethereum/evmc/pull/70)]
|
- New error codes.
|
||||||
More helper functions.
|
[[#56](https://github.com/ethereum/evmc/pull/56),
|
||||||
- Fix: [[#72](https://github.com/ethereum/evmc/pull/72)]
|
[#62](https://github.com/ethereum/evmc/pull/62)]
|
||||||
Go bindings: Properly handle unknown error codes.
|
- More helper functions.
|
||||||
- Improved: [[#58](https://github.com/ethereum/evmc/pull/58)]
|
[[#67](https://github.com/ethereum/evmc/pull/67),
|
||||||
Documentation has been extended.
|
[#68](https://github.com/ethereum/evmc/pull/68),
|
||||||
- Improved: [[#59](https://github.com/ethereum/evmc/pull/59)]
|
[#70](https://github.com/ethereum/evmc/pull/70)]
|
||||||
Optional Result Storage helper module has been separated.
|
|
||||||
- Improved: [[#75](https://github.com/ethereum/evmc/pull/75)]
|
### Changed
|
||||||
Cable upgraded to 0.2.11.
|
|
||||||
- Improved: [[#77](https://github.com/ethereum/evmc/pull/77)]
|
- Documentation has been extended.
|
||||||
The license changed from MIT to Apache 2.0.
|
[[#58](https://github.com/ethereum/evmc/pull/58)]
|
||||||
|
- Optional Result Storage helper module has been separated.
|
||||||
|
[[#59](https://github.com/ethereum/evmc/pull/59)]
|
||||||
|
- [Cable] upgraded to 0.2.11.
|
||||||
|
[[#75](https://github.com/ethereum/evmc/pull/75)]
|
||||||
|
- The license changed from MIT to **Apache 2.0**.
|
||||||
|
[[#77](https://github.com/ethereum/evmc/pull/77)]
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
|
||||||
|
- Go bindings: Properly handle unknown error codes.
|
||||||
|
[[#72](https://github.com/ethereum/evmc/pull/72)]
|
||||||
|
|
||||||
|
|
||||||
## [5.0.0] - 2018-08-10
|
## [5.0.0] - 2018-08-10
|
||||||
|
|
||||||
- Feature: [[#23](https://github.com/ethereum/evmc/pull/23), [#24](https://github.com/ethereum/evmc/pull/24)]
|
### Added
|
||||||
List of status codes extended and reordered.
|
|
||||||
- Feature: [[#32](https://github.com/ethereum/evmc/pull/32)]
|
- List of status codes extended and reordered.
|
||||||
VM Tracing API.
|
[[#23](https://github.com/ethereum/evmc/pull/23),
|
||||||
- Feature: [[#33](https://github.com/ethereum/evmc/pull/33), [#34](https://github.com/ethereum/evmc/pull/34)]
|
[#24](https://github.com/ethereum/evmc/pull/24)]
|
||||||
The support library with metrics tables for EVM1 instructions.
|
- VM Tracing API.
|
||||||
- Feature: [[#35](https://github.com/ethereum/evmc/pull/35)]
|
[[#32](https://github.com/ethereum/evmc/pull/32)]
|
||||||
Ability to create EVMC CMake package.
|
- The support library with **metrics tables for EVM1 instructions**.
|
||||||
- Feature: [[#40](https://github.com/ethereum/evmc/pull/40)]
|
[[#33](https://github.com/ethereum/evmc/pull/33),
|
||||||
The loader support library for VM dynamic loading.
|
[#34](https://github.com/ethereum/evmc/pull/34)]
|
||||||
- Feature: [[#45](https://github.com/ethereum/evmc/pull/45)]
|
- Ability to create EVMC CMake package.
|
||||||
Constantinople: Support for `CREATE2` instruction.
|
[[#35](https://github.com/ethereum/evmc/pull/35)]
|
||||||
- Feature: [[#49](https://github.com/ethereum/evmc/pull/49)]
|
- The loader support library for VM dynamic loading.
|
||||||
Constantinople: Support for `EXTCODEHASH` instruction.
|
[[#40](https://github.com/ethereum/evmc/pull/40)]
|
||||||
- Feature: [[#52](https://github.com/ethereum/evmc/pull/52)]
|
- Constantinople: Support for `CREATE2` instruction.
|
||||||
Constantinople: Storage status is reported back from `evmc_set_storage()`.
|
[[#45](https://github.com/ethereum/evmc/pull/45)]
|
||||||
|
- Constantinople: Support for `EXTCODEHASH` instruction.
|
||||||
|
[[#49](https://github.com/ethereum/evmc/pull/49)]
|
||||||
|
- Constantinople: Storage status is reported back from `evmc_set_storage()`.
|
||||||
|
[[#52](https://github.com/ethereum/evmc/pull/52)]
|
||||||
|
|
||||||
|
|
||||||
[6.3.0]: https://github.com/ethereum/evmc/compare/v6.2.1...master
|
[6.3.0]: https://github.com/ethereum/evmc/compare/v6.2.1...master
|
||||||
@ -246,3 +322,5 @@
|
|||||||
[5.0.0]: https://github.com/ethereum/evmc/releases/tag/v5.0.0
|
[5.0.0]: https://github.com/ethereum/evmc/releases/tag/v5.0.0
|
||||||
|
|
||||||
[Cable]: https://github.com/ethereum/cable
|
[Cable]: https://github.com/ethereum/cable
|
||||||
|
[Keep a Changelog]: https://keepachangelog.com/en/1.0.0/
|
||||||
|
[Semantic Versioning]: https://semver.org
|
Loading…
x
Reference in New Issue
Block a user