EVMC – Ethereum Client-VM Connector API https://evmc.ethereum.org
Go to file
Paweł Bylica 4335f434b8
Merge pull request #216 from ethereum/cmake-test-tools
CMake: Add option EVMC_TEST_TOOLS
2019-03-14 18:31:01 +01:00
bindings Always generate Rust enums 2019-03-13 20:34:54 +01:00
cmake Fix Cable subtree 2019-03-14 12:04:44 +01:00
docs docs: Extend versioning description 2019-01-21 11:29:20 +01:00
examples examples: Fix and extend example VM with NUMBER example code 2019-03-12 17:59:06 +01:00
include/evmc Rename Constantinople2 to Petersburg 2019-03-12 00:43:32 +01:00
lib test: Rewrite loader unit tests by mocking DLL loading 2019-03-13 22:07:13 +01:00
test CMake: Add option EVMC_TEST_TOOLS 2019-03-14 17:37:26 +01:00
.bumpversion.cfg Add higher-level evmc-vm binding 2019-03-13 15:54:20 +01:00
.clang-format Add clang-format config 2018-05-11 13:17:50 +02:00
.codespell-whitelist CI: run codespell 2018-09-06 13:40:57 +01:00
.gitignore Add workspace Cargo file 2019-03-13 15:54:22 +01:00
AUTHORS.md Introduce AUTHORS file 2018-08-21 09:39:42 +02:00
CHANGELOG.md Rename Constantinople2 to Petersburg 2019-03-12 00:43:32 +01:00
CMakeLists.txt CMake: Add option EVMC_TEST_TOOLS 2019-03-14 17:37:26 +01:00
Cargo.toml Add workspace Cargo file 2019-03-13 15:54:22 +01:00
Doxyfile docs: Document example_vm.c 2018-10-18 15:38:10 +02:00
LICENSE Change license to Apache 2.0 2018-08-22 13:54:30 +02:00
README.md Circle CI: Test only Go 1.9 and the latest (1.12) 2019-03-14 12:42:52 +01:00
appveyor.yml CI: Do not use redundant EVMC_EXAMPLES 2019-03-14 17:55:07 +01:00
circle.yml CI: Do not use redundant EVMC_EXAMPLES 2019-03-14 17:55:07 +01:00

README.md

EVMC

chat: on gitter readme style: standard

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.

Usage

Documentation

Please visit the documentation.

Languages support

Language Supported Versions Supported Compilers
C C90, C99, C11 GCC 6+, clang 3.8+
C++ (helpers)1 C++11, C++14, C++17 GCC 6+, clang 3.8+
Go (bindings) 1.9 - 1.12

EVMs

Clients

Maintainers

See also the list of EVMC Authors.

Contributing

chat: on gitter

Talk with us on the EVMC Gitter chat.

License

Licensed under the MIT License.

Internal

Making new release

  1. Update CHANGELOG.md, put the release date, update release link.
  2. git add CHANGELOG.md.
  3. Tag new release: bumpversion --allow-dirty prerel.
  4. Prepare CHANGELOG for next release: add unreleased section and link.
  5. git add CHANGELOG.md.
  6. Start new release series: bumpversion --allow-dirty --no-tag minor.

  1. C++ support is provided by C headers and some optional C++ helpers. ↩︎