github hashgraph/hedera-services v0.26.0
Hedera Services v0.26.0

latest releases: v0.49.5, v0.49.4, v0.49.3...
23 months ago

In Hedera Services 0.26 we are excited to deliver HIP-410 (Wrapping Ethereum Transaction Bytes in a Hedera Transaction), HIP-415 (Introduction Of Blocks), and HIP-376 (Support for ERC-20 and ERC-721 Standards); plus the mini-HIP-475 (Exchange Rate System Contract).

  • HIP-410 extends the Hedera API (HAPI) with a new EthereumTransaction, so that an account auto-created with an ECDSA(secp256k1) key can submit Ethereum transactions directly to Hedera. Standard Ethereum restrictions on the sender's nonce apply; please peruse the HIP for details, including a summary of use cases that the EthereumTransaction enables---for example, "I want to use MetaMask to create a transaction to transfer HBAR to another account".
  • HIP-415 works in concert toward the same use cases by standardizing the concept of a Hedera "block"; this is important for a full implementation of the Ethereum JSON-RPC API. The definition is simple: One block is all the transactions in a record stream file. The block hash is the 32-byte prefix of the transaction running hash at the end of the file. And the block number is the index of the record file in the full stream history, where the first file had index 0.
  • HIP-376 allows smart contract developers to use the familiar EIP-20 and EIP-721 "operator approval" with both fungible and non-fungible HTS tokens. Approved operators can manage an owner's tokens on their behalf; this is necessary for many consignment use cases with third party brokers/wallets/auctioneers. Any permissions granted in a contract through approve() or setApprovalForAll() have an equivalent HAPI cryptoApproveAllowance or cryptoDeleteAllowance expression that is externalized as a HAPI TransactionBody in the record stream. (That is, the HIP-376 system contracts expose a subset of the native HAPI operations, only within the EVM.)
  • Finally, HIP-475 adds a new system contract so that a "self-funding" smart contract can require exactly the tinybar value needed to cover its Hedera fees, which have a fixed USD price.

There are two other changes to the smart contract service.

  1. Before release 0.26, contract call and create HAPI operations could request up to 5M gas. We have increased this limit to 8M gas.
  2. As part of a transition to purely gas-based pricing for contract operations, in 0.26 we are also standardizing the gas resource price for ContractCall, ContractCreate, EthereumTransaction, and ContractCallLocal operations at $0.000_000_0852 per gas; and are removing all other forms of fees from ContractCall.

Contributors

We'd like to thank all the contributors who worked on this release!

Don't miss a new hedera-services release

NewReleases is sending notifications on new releases.