Skip to content

Releases: hashgraph/hedera-json-rpc-relay

v0.2.0-rc3

27 Jun 21:35
709b595
Compare
Choose a tag to compare
v0.2.0-rc3 Pre-release
Pre-release
Bump v0.2.0rc3 (#276)

Signed-off-by: Nana-EC <nana@swirldslabs.com>

v0.2.0-rc2

23 Jun 21:19
d5a7739
Compare
Choose a tag to compare
v0.2.0-rc2 Pre-release
Pre-release
Bump v0.2.0-rc2 (#266)

Signed-off-by: Nana-EC <nana@swirldslabs.com>

v0.2.0-rc1

23 Jun 21:17
2294a03
Compare
Choose a tag to compare
v0.2.0-rc1 Pre-release
Pre-release
Bump v0.2.0-rc1 (#246)

Signed-off-by: Nana-EC <nana@swirldslabs.com>

v0.1.0

14 Jun 15:42
438e1ca
Compare
Choose a tag to compare

This marks the first hedera-json-rpc-relay release and with it brings a wealth of EVM smart contract capabilities. The repository is now fully open source and accepting community contributions.

HIP-482 sees its implementation with the goal of providing an API gateway that improves the Ethereum developer onboarding experience by utilizing the EthereumTransaction type and logic captured in HIP-410. The relay takes the raw transactions and interfaces with the Hedera consensus and mirror nodes to provide a seamless experience as if they were the EVM. Developers will now be able to interact with their smart contracts on the Hedera network as they did on the Ethereum network using the Ethereum JSON-RPC API standard.

The following Ethereum JSON-RPC API endpoints were implemented with a variation of default, partial and complete logic to enable multiple development flows and interactions

JSON-RPC APIs

Network

  • eth_chainId
  • eth_gasPrice
  • eth_feeHistory

Account

  • eth_getBalance
  • eth_getTransactionCount

Contract

  • eth_getCode
  • eth_call
  • eth_estimateGas

Block

These response entities of the following methods map to RecordFile entities on the Hedera network.

  • eth_blockNumber
  • eth_getBlockByHash
  • eth_getBlockByNumber
  • eth_getBlockTransactionCountByHash
  • eth_getBlockTransactionCountByNumber

Transaction

The response entities of the following methods map to ContractResult entities execution details on the Hedera network.

  • eth_getTransactionByBlockHashAndIndex
  • eth_getTransactionByBlockNumberAndIndex
  • eth_getTransactionByHash
  • eth_getTransactionReceipt
  • eth_sendRawTransaction

CI/CD and Documentation

Efforts were made to improve the CI/CD flow with the addition of end-to-end acceptance tests which can be run locally and in Github actions to improve stability. Docker images are now automatically published on every change to the main branch and tagged release. A new Helm chart was also added to support declarative deployment to Kubernetes clusters.

Documentation was improved to give greater context to the relay as well as how to configure, run and test it.

Monitoring and logging improvements increase visibility and tracking of user requests.

Enhancements

  • Add gas cache logic to release 0.1 #182
  • Remove org path from artifact build command #158
  • Add artifact build and upload to 0.1 release branch #148
  • Bump release to 0.1.0-rc1 #145
  • Bump version to 0.1.0-rc1 #144
  • add postman tests #143
  • Improve server logging and metrics #132
  • Improve server logging and metrics #131
  • Acceptance test CICD #120
  • Add relay acceptance tests #119
  • fix issue returning transaction hash when submission passed precheck #106
  • Pulled over all the helm-chart componenets plus included the README.m… #105
  • eth_getLogs #103
  • Bring getBlockBy... into execution-api schema compliance #100
  • Block returned from eth_getBlockBy... does not conform to schema #99
  • Implement eth_getWork and add route handlers for unsupported methods #94
  • Add prometheus support and health endpoints #93
  • Support block tags on getBlock endpoints #92
  • Support block tags in 5 APIs #91
  • Add Prometheus monitoring support #88
  • Add liveness and readiness endpoint to relay #87
  • Add support for eth_getTransactionByHash with mocked data #84
  • eth_getTransactionReceiptByHash #83
  • Chain ID and FeeHistory Tweaks #82
  • Update getBlockByHash and getBlockByNumber to populate transactions #81
  • Add support for getBlockBy, getBlockTransactionCountBy and getTransactionByBlock endpoints #80
  • Clarify development purpose of docker compose #79
  • Updated README to highlight development purposes of docker-compose #78
  • Add rpc call test suite for simple testing #77
  • Add rpc endpoint acceptance tests #76
  • Return Ethereum Hash for sendRawTransaction that do not fail precheck #75
  • Implement eth_blockNumber #74
  • Add MirrorNode Client to make calls to real Mirror Node #73
  • Add a MirrorNode Client Stub #72
  • metamask properly estimating gas #71
  • Update docker compose to point to ghcr main tagged image #69
  • Docker compose image should reference main image #68
  • Add github action to publish main tagged docker image #67
  • Deploy docker image for main branch #66
  • Dummy up eth_feehistory enabling previewnet demo #64
  • Add simple Helm chart to support deployment #61
  • Deploy relay to integration environment #60
  • Implement all non supported endpoints #56
  • Implement eth_getWork #55
  • Implement eth_getTransactionByBlockNumberAndIndex #54
  • Implement eth_getTransactionByBlockHashAndIndex #53
  • Implement eth_getBlockTransactionCountByNumber #51
  • Implement eth_getBlockTransactionCountByHash #50
  • Add code coverage for relay and server packages #48
  • Add docker image and container support #47
  • Update README w Support, Contributing and License #46
  • Add docker container and deployment support #45
  • Add Repo Code Coverage #43
  • Add License headers to all code files #42
  • Replace bridge and hashio references with relay #41
  • Add Apache License 2.0 file #39
  • Add deployment instructions to readme #38
  • Add license headers to code files #37
  • Add License file #36
  • Eth tx integration #35
  • Implement eth_getBlockTransactionCountByNumber #32
  • Implement eth_getBlockTransactionCountByHash #31
  • Implement eth_getBlockByNumber #30
  • Implement eth_getBlockByHash #29
  • Implement eth_blockNumber #28
  • Implement eth_getLogs #20
  • Implemen...
Read more

v0.1.0-rc4

09 Jun 20:45
fd6c6c7
Compare
Choose a tag to compare
v0.1.0-rc4 Pre-release
Pre-release

Add gas cache logic to release 0.1 (#182)

Release 0.1 is missing cache logic for gas calls.

  • Add cache for feeHistory
  • Add cache for gasPrice

Signed-off-by: Nana-EC nana@swirldslabs.com

v0.1.0-rc3

03 Jun 23:31
d145b0b
Compare
Choose a tag to compare
v0.1.0-rc3 Pre-release
Pre-release
Remove org path from artifact build command (#158)

* Remove org path

- Use explicit package name instead of full org path
- Move docker build flow above npm package in terms of priority

Signed-off-by: Nana-EC <nana@swirldslabs.com>

v0.1.0-rc1

03 Jun 13:20
0c701c0
Compare
Choose a tag to compare
v0.1.0-rc1 Pre-release
Pre-release
Bump version to 0.1.0-rc1 (#144)

* Bump version to 0.1.0-rc1

- Bump version to 0.1.0-rc1
- Add Production github action to support release tags

Signed-off-by: Nana-EC <nana@swirldslabs.com>