Releases: VaultaFoundation/evm-node
EOS EVM Node v0.6.2
This latest patch release includes a bug fix and updates to calls to match current Ethereum client standards.
This release contains changes to EOS EVM Node and EOS EVM RPC.
Read on for more details.
Bug fixes
Patch for blockscout trace calls edge case
It was observed in EOS EVM Node v0.6.0 that blockscout would mark some failed transactions as successful. The root cause was that the traces had both error and result fields set but blockscout does not anticipate that behavior.
Currently, the blockscout team plans to keep their designed behavior until there is stronger support for an update. For now, we have implemented a patch to accomodate for this discrepancy. The explorer nodes had already been patched with this verison, and this release is now formalizing this change across all nodes.
Other changes
Support for block_number_or_hash as parameter in eth_call
eth_call now supports the parameter, block_number_or_hash properly. Previously, this call only accepted block_id.
Partial support for block_tag parameter in eth_estimateGas
eth_estimateGas now partially supports the second parameter, block_tag. For now, the call will return a -39001: Unknown block error if the block tag2 is earliest, finalized, or safe. If the tag is latest or pending then it will execute the transaction to estimate gas on the latest block. This means pending is acting like latest.
Building, compatibility, and upgrading
Building
The README in the eos-evm-node repository contains instructions on how to build EOS EVM Node and EOS EVM RPC.
Compatibility and upgrading
EOS EVM Node and EOS EVM RPC can be upgraded from the prior 0.6.1 version by replacing the binaries.
Further details on changes since last release
Contributors
Special thanks to the contributors that submitted patches for this release:
Full list of changes since last release
PRs
EOS EVM Node v0.6.1
This latest patch release includes several bug fixes and updates to calls to match current Ethereum client standards.
This release contains changes to EOS EVM Node, EOS EVM RPC, and tx_proxy.
Read on for more details.
Bug fixes
Support for batch requests in tx_proxy
Support for batch requests was introduced in EOS EVM Node v0.6.0, however, an issue was recently found with tx_proxy. If a batch request included methods to send transaction or get gas price (which EOS EVM RPC does not support since EOS EVM Miner is supposed to handle it), then the batch requests could previously fail.
Correction to trace_block API reports for mining rewards
No EOS was ever actually minted per block as mining rewards. However, an error in the trace_block API incorrectly reported that 2 EOS was minted per block. This error has now been fixed to correctly report that 0 EOS is minted per block as mining rewards.
Other changes
Support for input parameter in eth_call
Due to recent updates to use the field name input instead of data in transactions by other clients, an update has been made with the following logic for best compatibility:
- If only one field is set, use that field.
- If both fields are set and identical, just pick a field one.
- If both fields are set but not the same, reject the call.
Building, compatibility, and upgrading
Building
The README in the eos-evm-node repository contains instructions on how to build EOS EVM Node and EOS EVM RPC.
Compatibility and upgrading
EOS EVM Node and EOS EVM RPC can be upgraded from the prior 0.6.0 version by replacing the binaries.
Further details on changes since last release
Contributors
Special thanks to the contributors that submitted patches for this release:
Full list of changes since last release
PRs
EOS EVM Node v0.6.0
EOS EVM Node brings the components EOS EVM Node and EOS EVM RPC from the eos-evm repository into its own repository: eos-evm-node. In addition, the 0.6.0 release of EOS EVM Node introduces improvements over prior versions.
New features
Recent changes from upstream silkworm
More recent improvements from the upstream silkworm repository were brought into the ENF fork of silkworm which is a critical component of EOS EVM Node.
That automatically gives EOS EVM Node some enhancements such as batch request support.
Batch requests support
Users can now submit multiple actions or transactions to the EVM as a single request. This enhances efficiency, reduces transaction costs, and provides a better user experience for interacting with smart contracts and dApps.
Bug fixes
Trace executor now generates trace for calls to pre-compiled contract addresses
In the previous versions, a transfer or call to an address of a pre-compiled contract would erroneously not generate a trace. Traces are now generated for calls to pre-compiled contract addresses.
Building, compatibility, and upgrading
Building
The README in the eos-evm-node repository contains instructions on how to build EOS EVM Node and EOS EVM RPC.
Compatibility and upgrading
EOS EVM Node and EOS EVM RPC can be upgraded from the prior 0.5.2 version by replacing the binaries and relaunching with a replay.
Further details on changes since last release
Contributors
Special thanks to the contributors that submitted patches for this release:
Full list of changes since last release
This is the first stable release from the new repository, so a GitHub link to compare all changes since the 0.5.2 release cannot be provided. But the list of all PRs merged in the new repository is provided below.
PRs
- (1) Many fixes
- (4) Merge elmato/dev
- (7) Update silkworm
- (8) Use regular endpoints as the default values in command line options
- (10) Fix compilation
- (16) Get EOS EVM Node Build job to succeed
- (17) eos-evm-node repo integration test
- (18) Update supported Ubuntu and gcc versions in README
- (3) Refactor to allow reconnection to SHiP endpoints after connection lost.
- (21) Replace tx_wrapper with eos-evm-miner for integration test.
- (27) fix special signature handling
- (32) Correct processing of pushtx actions in ship_receiver_plugin
- (42) Add conan install to build instructions
- (41) Fix nodeos_eos_evm_server.py
- (43) Fix eos-evm-rpc crash
- (44) Bump 0.6.0-rc1 version
- (47) [0.6] Fix eth_call id bug
- (53) [0.6] Update silkworm
- (55) [0.6] update submodule to contain the fix.
- (58) [0.6] Bump 0.6.0-rc2 version
- (72)[0.6] Update silkworm (fix HashState stage, speed up Senders stage)
- (79) Bump 0.6.0 version
EOS EVM Node v0.6.0-rc2
Changes
Handle string id fields within requests
The previous version of EOS EVM RPC would fail to accept requests that had a string value for the id field. This release now accepts string values for the id field.
Fixed bug in eth_getLogs
A bug existed in the previous version of EOS EVM RPC in which some eth_getLogs requests could fail with an error message "failed alloc while reading". That bug has now been fixed.
Trace executor now generates trace for calls to pre-compiled contract addresses
In the previous version, a transfer or call to an address of a pre-compiled contract would erroneously not generate a trace. Traces are now generated for calls to pre-compiled contract addresses.
Building, compatibility, and upgrading
Building
The README in the eos-evm-node repository contains instructions on how to build EOS EVM Node and EOS EVM RPC.
Compatibility and upgrading
EOS EVM Node and EOS EVM RPC can be upgraded from the prior 0.6.0-rc1 version by replacing the binaries. It is recommended to replay to ensure there are no missing traces.
Further details on changes since last release
Contributors
Special thanks to the contributors that submitted patches for this release:
Full list of changes since last release
PRs
Full Changelog: v0.6.0-rc1...v0.6.0-rc2
EOS EVM Node v0.6.0-rc1
EOS EVM Node brings the components EOS EVM Node and EOS EVM RPC from the eos-evm repository into its own repository: eos-evm-node. In addition, the 0.6.0 release of EOS EVM Node introduces improvements over prior versions.
New features
Recent changes from upstream silkworm
More recent improvements from the upstream silkworm repository were brought into the ENF fork of silkworm which is a critical component of EOS EVM Node.
That automatically gives EOS EVM Node some enhancements such as batch request support.
Batch requests support
Users can now submit multiple actions or transactions to the EVM as a single request. This enhances efficiency, reduces transaction costs, and provides a better user experience for interacting with smart contracts and dApps.
Building, compatibility, and upgrading
Building
The README in the eos-evm-node repository contains instructions on how to build EOS EVM Node and EOS EVM RPC.
Compatibility and upgrading
EOS EVM Node and EOS EVM RPC can be upgraded from the prior 0.5.2 version by replacing the binaries and relaunching with a replay.
Further details on changes since last release
Contributors
Special thanks to the contributors that submitted patches for this release:
Full list of changes since last release
This is the first release from the new repository, so a GitHub link to compare all changes since the 0.5.2 release cannot be provided. But the list of all PRs merged in the new repository is provided below.
PRs
- (1) Many fixes
- (4) Merge elmato/dev
- (7) Update silkworm
- (8) Use regular endpoints as the default values in command line options
- (10) Fix compilation
- (16) Get EOS EVM Node Build job to succeed
- (17) eos-evm-node repo integration test
- (18) Update supported Ubuntu and gcc versions in README
- (3) Refactor to allow reconnection to SHiP endpoints after connection lost.
- (21) Replace tx_wrapper with eos-evm-miner for integration test.
- (27) fix special signature handling
- (32) Correct processing of pushtx actions in ship_receiver_plugin
- (42) Add conan install to build instructions
- (41) Fix nodeos_eos_evm_server.py
- (43) Fix eos-evm-rpc crash
- (44) Bump 0.6.0-rc1 version