Ethereum Client-VM Connector API
The EVMC is the low-level ABI between Ethereum Virtual Machines (EVMs) and Ethereum Clients. On the EVM side it supports classic EVM1 and ewasm. On the Client-side it defines the interface for EVM implementations to access Ethereum environment and state.
Please visit the documentation.
Language | Supported Versions | Supported Compilers |
---|---|---|
C | C90¹, C99, C11 | GCC 6+, clang 3.8+, MSVC 2015+ |
C++ | C++11, C++14, C++17 | GCC 6+, clang 3.8+, MSVC 2015+ |
Go (bindings) | 1.9 - 1.12 | |
Rust (bindings)² | 2018 edition | 1.31.0 and newer |
1. The C90 support is limited to the core evmc.h
header only.
2. Rust support is limited and not complete yet.
- aleth
- nim-evmc
- go-ethereum (in progress)
- pyevm (in progress)
- pyethereum (abandoned)
See also the list of EVMC Authors.
Talk with us on the EVMC Gitter chat.
Licensed under the MIT License.
- Update CHANGELOG.md, put the release date, update release link.
git add CHANGELOG.md
.- Tag new release:
bumpversion --allow-dirty prerel
. - Prepare CHANGELOG for next release: add unreleased section and link.
git add CHANGELOG.md
.- Start new release series:
bumpversion --allow-dirty --no-tag minor
.