Hedera
  • Welcome to Hedera — let’s build the future
  • Getting Started
    • Environment Setup
    • Web2 Developers
      • Transfer HBAR
      • Create a Token
      • Create a Topic
    • EVM Developers
      • Deploy a Contract
  • Tutorials
    • Smart Contracts
      • How to Mint & Burn an ERC-721 Token Using Hardhat and Ethers (Part 1)
      • How to Set Access Control, a Token URI, Pause, and Transfer an ERC-721 Token Using Hardhat (Part 2)
      • How to Upgrade an ERC-721 Token with OpenZeppelin UUPS Proxies and Hardhat (Part 3)
      • How to Verify a Smart Contract on HashScan
      • Deploy a Smart Contract Using Remix
      • Deploy a Smart Contract Using Hardhat and Hiero JSON-RPC Relay
      • Deploy Your First Smart Contract
      • Deploy a Contract Using the Hedera Token Service
      • Send and Receive HBAR Using Solidity Smart Contracts
      • Deploy By Leveraging Ethereum Developer Tools On Hedera
      • Deploy a Subgraph Using The Graph and Hedera JSON-RPC Relay
      • Deploy Smart Contracts on Hedera Using Truffle
      • The Power of Native Hedera Tokens as ERC-20 Tokens: A step-by-step guide
      • HTS x EVM - Part 1: How to Mint NFTs
      • HTS x EVM - Part 2: KYC & Update
      • HTS x EVM - Part 3: How to Pause, Freeze, Wipe, and Delete NFTs
      • Hedera Smart Contracts Workshop
        • Setup
        • Solidity
        • Hedera SDK JS
        • Hardhat and EthersJs
        • Outro
      • Foundry
        • How to Setup Foundry and Write a Basic Unit Test
        • How to Deploy and Verify a Hedera Smart Contract with Foundry
        • How to Test A Solidity Event
        • How to Fork Testnet on Latest Block
    • Consensus
      • Submit Your First Message
      • Submit Message to Private Topic
      • Query Messages with Mirror Node
    • Tokens
      • Create and Transfer Your First NFT
      • Create and Transfer Your First Fungible Token
      • Create and Transfer an NFT using a Solidity Contract
      • Structure Your Token Metadata Using JSON Schema V2
      • Hedera Token Service - Part 1: How to Mint NFTs
      • Hedera Token Service - Part 2: KYC, Update, and Scheduled Transactions
      • Hedera Token Service - Part 3: How to Pause, Freeze, Wipe, and Delete NFTs
      • Create Your First Frictionless Airdrop Campaign
    • Local Node
      • How to Run Hedera Local Node in a Cloud Development Environment (CDE)
        • Run a Local Node in Gitpod
        • Run a Local Node in Codespaces
      • How to Set Up a Hedera Local Node
      • Set Up a Hedera Local Node using the NPM CLI
    • More Tutorials
      • Create and Fund Your Hedera Testnet Account
      • How to Create a Personal Access Token (API Key) on the Hedera Portal
      • How to Auto-Create Hedera Accounts with HBAR and Token Transfers
      • How to Configure a Mirror Node and Query Data
      • How to Generate a Random Number on Hedera
      • Get Started with the Hedera Consensus Service Fabric Plugin
        • Virtual Environment Setup
      • Schedule Your First Transaction
      • How to Connect to Hedera Networks Over RPC
        • Configuring Hashio RPC endpoints
        • Configuring Hiero JSON-RPC Relay endpoints
        • Configuring Validation Cloud RPC endpoints
      • JavaScript Testing
      • Create a Hedera DApp Integrated with WalletConnect
      • How to Connect MetaMask to Hedera
    • Demo Applications
    • Starter Projects
    • Building on Hedera (course)
  • Networks
    • Mainnet
      • Mainnet Accounts
      • Mainnet Consensus Nodes
        • Node Requirements
          • FAQ
      • Fees
        • Transaction Records
    • Testnets
      • Testnet Accounts
      • Testnet Consensus Nodes
    • Localnet
      • Single Node Configuration
      • Multinode Configuration
    • Network Explorers and Tools
    • Release Notes
      • Consensus Node
      • Hedera Mirror Node
  • Core Concepts
    • Accounts
      • Account Creation
      • Auto Account Creation
      • Account Properties
    • Keys and Signatures
    • Schedule Transaction
    • Smart Contracts
      • Understanding Hedera's EVM Differences and Compatibility
        • For EVM Developers Migrating to Hedera
          • Accounts, Signature Verification & Keys (ECDSA vs. ED25519)
          • JSON-RPC Relay and EVM Tooling
          • Token Management with Hedera Token Service
          • Decimal Handling (8 vs. 18 Decimals)
          • Handling HBAR Transfers in Contracts
        • For Hedera-Native Developers Adding Smart Contract Functionality
          • Integrating ED25519 Accounts and Advanced Features Into Smart Contracts
          • JSON-RPC Relay and State Queries
          • Extending Token Management with Smart Contracts
      • Creating Smart Contracts
      • Compiling Smart Contracts
      • System Smart Contracts
        • Hedera Account Service
        • Hedera Schedule Service
      • Gas and Fees
      • JSON-RPC Relay
      • Deploying Smart Contracts
      • Smart Contract Addresses
      • Verifying Smart Contracts
      • Smart Contract Traceability
      • Tokens Managed by Smart Contracts
        • ERC-20 (Fungible Tokens)
        • ERC-721 (Non-Fungible Token)
        • ERC-3643 Real World Assets (RWA)
        • ERC-1363 (Payable Tokens)
        • Hedera Token Service System Contract
      • Wrapped HBAR (WHBAR)
      • Smart Contract Rent
      • Smart Contract Security
      • EVM Archive Node Queries
    • Tokens
      • Tokenization on Hedera
      • Hedera Token Service (HTS) Native Tokenization
        • Token Types and ID Formats
        • Token Properties
        • Token Creation
        • Custom Fee Schedule
        • Token Airdrops
      • ERC/EVM-Compatible Tokenization
      • Hybrid (HTS + EVM ) Tokenization
    • Staking
      • Staking Program
      • Stake HBAR
    • Hashgraph Consensus Algorithm
      • Gossip About Gossip
      • Virtual Voting
    • Transactions and Queries
      • Transaction Properties
    • State and History
    • Mirror Nodes
      • Hedera Mirror Node
      • One Click Mirror Node Deployment
      • Run Your Own Mirror Node
        • Run Your Own Mirror Node with Google Cloud Storage (GCS)
        • Run Your Mirror Node with Amazon Web Services S3 (AWS)
  • Open Source Solutions and Integrations
    • AI Studio on Hedera
      • ElizaOS Plugin for Hedera
      • Hedera AI Agent Kit
      • MCP Server
      • OpenConvAI
    • AI Tools for Developers
      • Hedera Hivemind
      • Kapa AI
    • Asset Tokenization Studio (ATS)
      • Web User Interface (UI)
      • Frequently Asked Questions (FAQs)
    • HashioDAO
      • Governance Token DAO
      • NFT DAO
      • Multisig DAO
      • DAO Proposals
      • Local Environment Setup
    • Hedera CLI
    • Hedera Contract Builder
    • Hedera Custodians Library
      • How to use it
    • Hedera Developers Code Repository
    • Hedera Developer Playground
    • Hedera Wallet Snap By MetaMask
      • Hedera Wallet Snap Documentation
      • Tutorial: MetaMask Snaps – What Are They and How to Use Them
    • Interoperability and Bridging
      • LayerZero
    • NFT Studio
      • Airdrop List Verifier
      • Metadata Validator
      • NFT Rarity Inspector
      • NFT Token Holders List Builder
      • NFT Risk Calculator
      • Token Balance Snapshot
      • Hedera NFT SDK
    • Oracle Networks
      • Chainlink Oracles
      • Pyth Oracles
      • Supra Oracles
    • Stablecoin Studio
      • Core Concepts
      • Web UI Application
      • CLI Management
      • TypeScript SDK
    • Hedera Guardian
    • Hedera WalletConnect
  • SDKs & APIs
    • SDKs
      • Build Your Hedera Client
      • Set Up Your Local Network
      • Network Address Book
      • Keys
        • Generate a new key pair
        • Import an existing key
        • Create a key list
        • Create a threshold key
        • Generate a mnemonic phrase
        • Recover keys from a mnemonic phrase
      • HBAR
      • Specialized Types
      • Pseudorandom Number Generator
      • Transactions
        • Create a Batch Transaction
        • Transaction ID
        • Modify transaction fields
        • Create an unsigned transaction
        • Manually sign a transaction
        • Submit a transaction
        • Sign a multisignature transaction
        • Get a transaction receipt
        • Get a transaction record
      • Schedule Transaction
        • Schedule ID
        • Create a schedule transaction
        • Sign a scheduled transaction
        • Delete a schedule transaction
        • Get schedule info
        • Network Response Messages
      • Queries
      • General Network Response Messages
      • Accounts and HBAR
        • Create an account
        • Update an account
        • Transfer cryptocurrency
        • Approve an allowance
        • Delete an allowance
        • Delete an account
        • Get account balance
        • Get account info
        • Network Response Messages
      • Consensus Service
        • Create a topic
        • Update a topic
        • Submit a message
        • Delete a topic
        • Get topic messages
        • Get topic info
        • Network Response
      • Token Service
        • Token ID
        • NFT ID
        • Token types
        • Create a token
        • Custom token fees
        • Update a token
        • Update token custom fees
        • Update NFT metadata
        • Transfer tokens
        • Airdrop a token
        • Claim a token
        • Cancel a token
        • Reject a token
        • Delete a token
        • Mint a token
        • Burn a token
        • Freeze an account
        • Unfreeze an account
        • Enable KYC account flag
        • Disable KYC account flag
        • Associate tokens to an account
        • Dissociate tokens from an account
        • Pause a token
        • Unpause a token
        • Wipe a token
        • Atomic swaps
        • Get account token balance
        • Get token info
        • Get NFT info
        • Network Response Messages
      • File Service
        • Create a file
        • Append to a file
        • Update a file
        • Delete a file
        • Get file contents
        • Get file info
        • Network Response Messages
      • Smart Contract Service
        • Delegate Contract ID
        • Create a smart contract
        • Update a smart contract
        • Delete a smart contract
        • Call a smart contract function
        • Ethereum transaction
        • Get a smart contract function
        • Get smart contract bytecode
        • Get smart contract info
        • Hedera Service Solidity Libraries
        • Network Response Messages
      • Signature Provider
        • Provider
        • Signer
        • Wallet
        • Local Provider
    • Mirror Node REST API
      • Accounts
      • Balances
      • Blocks
      • Schedule Transactions
      • Smart Contracts
      • Tokens
      • Topics
      • Transactions
      • Network
    • Hedera Consensus Service gRPC API
    • Hedera APIs
      • Basic Types
        • AccountAmount
        • AccountID
        • ContractID
        • CryptoAllowance
        • CurrentAndNextFeeSchedule
        • FeeComponents
        • FeeData
        • FeeSchedule
        • FileID
        • Fraction
        • HederaFunctionality
        • Key
        • KeyList
        • NftAllowance
        • NftTransfer
        • NodeAddress
        • NodeAddressBook
        • RealmID
        • ScheduleID
        • SemanticVersion
        • ServicesConfigurationList
        • ServiceEndpoint
        • Setting
        • ShardID
        • Signature
        • SignatureList
        • SignatureMap
        • SignaturePair
        • SubType
        • TransferList
        • TransactionID
        • ThresholdKey
        • ThresholdSignature
        • TokenAllowance
        • TokenBalance
        • TokenBalances
        • TokenFreezeStatus
        • TokenPauseStatus
        • TokenID
        • TokenKycStatus
        • TokenRelationship
        • TokenTransferList
        • TokenType
        • TokenSupplyType
        • TopicID
        • TransactionFeeSchedule
      • Cryptocurrency Accounts
        • CryptoService
        • CryptApproveAllowance
        • CryptoDeleteAllowance
        • CryptoCreate
        • CryptoTransfer
        • CryptoUpdate
        • CryptoDelete
        • CryptoGetAccountBalance
        • CryptoGetAccountRecords
        • CryptoGetInfo
        • CryptoGetStakers
      • Consensus Service
        • Consensus Service
        • ConsensusCreateTopic
        • ConsensusUpdateTopic
        • ConsensusSubmitMessage
        • ConsensusDeleteTopic
        • ConsensusTopicInfo
        • ConsensusGetTopicInfo
      • Schedule Service
        • ScheduleService
        • SchedulableTransactionBody
        • ScheduleCreate
        • ScheduleDelete
        • ScheduleSign
        • ScheduleGetInfo
      • Token Service
        • TokenService
        • CustomFees
          • AssessedCustomFee
          • CustomFee
          • FractionalFee
          • FixedFee
          • RoyaltyFee
        • TokenCreate
        • TokenUpdate
        • TokenFeeScheduleUpdate
        • TokenDelete
        • TokenMint
        • TokenBurn
        • TokenFreezeAccount
        • TokenUnfreezeAccount
        • TokenGrantKyc
        • TokenRevokeKyc
        • TokenAssociate
        • TokenDissociate
        • TokenWipeAccount
        • TokenPause
        • TokenUnpause
        • TokenGetInfo
        • TokenGetNftInfo
        • TokenGetNftInfos
        • TokenGetAccountNftInfo
      • File Service
        • FileService
        • FileCreate
        • FileAppend
        • FileUpdate
        • FileDelete
        • FileGetContents
        • FileGetInfo
      • Smart Contracts
        • SmartContractService
        • ContractCall
        • ContractCallLocal
        • ContractCreate
        • ContractUpdate
        • ContractDelete
        • ContractGetByteCode
        • ContractGetInfo
        • ContractGetRecords
      • Miscellaneous
        • Duration
        • ExchangeRate
        • Freeze
        • FreezeType
        • GetByKey
        • GetBySolidityID
        • NetworkGetVersionInfo
        • NetworkService
        • Query
        • QueryHeader
        • Response
        • ResponseCode
        • ResponseHeader
        • SystemDelete
        • SystemUndelete
        • TimeStamp
        • Transaction
        • TransactionBody
        • TransactionContents
        • TransactionGetFastRecord
        • TransactionGetReceipt
        • TransactionGetRecord
        • TransactionReceipt
        • TransactionRecord
        • TransactionResponse
        • UncheckedSubmit
    • Hedera Status API
  • Support & Community
    • Glossary
    • Contributing to Hedera documentation
      • Contribution Guidelines
        • Creating Issues
        • Creating Pull Requests
        • Hedera Improvement Proposal (HIP)
        • Submit Demo Applications
      • Style Guide
        • Understanding different types of documentation
        • Use of HBAR and tinybars
        • Use of web2 and web3
        • Language and grammar
        • Formatting
        • Punctuation
        • GitBook Markdown Syntax
    • Discord
    • GitHub
    • Stack Overflow
    • Hedera Blog
    • Bug Bounty
    • Hedera Help
    • Documentation Survey
    • Meetups
    • Brand Guidelines
    • Status Page
Powered by GitBook
LogoLogo

INTRODUCTION

  • Fees
  • Core Concepts
  • Network Information

TOOLS

  • Bridge
  • Oracles
  • Explorers
  • Developer Portal & Faucet

RESOURCES

  • Status
  • Bug Bounty
  • Build on Hedera (course)
  • Documentation Survey
On this page
  • Release v0.62
  • Build 0.62.2
  • Build 0.62.1
  • Build 0.62.0
  • Release v0.61
  • Release Highlights
  • Build 0.61.7
  • Build 0.61.6
  • Build 0.61.5
  • Build 0.61.4
  • Build 0.61.3
  • Build 0.61.2
  • Build 0.61.1
  • Build 0.61.0
  • Release v0.60
  • Release Highlights
  • Build 0.60.1
  • Build 0.60.0
  • Performance Results
  • Release v0.59
  • Release Highlights
  • Build 0.59.5
  • Build 0.59.4
  • Build 0.59.3
  • Build 0.59.2
  • Build 0.59.0
  • Release v0.58
  • Release Highlights
  • Build 0.58.13
  • Build 0.58.11
  • Build 0.58.10
  • Build 0.58.9
  • Build 0.58.8
  • Build 0.58.7
  • Build 0.58.6
  • Build 0.58.5
  • Build 0.58.3
  • Build 0.58.0
  • Release v0.57
  • Release Highlights
  • Build 0.57.5
  • Build 0.57.4
  • Build 0.57.3
  • Build 0.57.2
  • Build 0.57.1
  • Performance Results
  • Release v0.56
  • Release Highlights
  • Build 0.56.7
  • Build 0.56.6
  • Build 0.56.5
  • Build 0.56.0
  • Performance Results
  • Release v0.55
  • Release Highlights
  • Build 0.55.2
  • Build 0.55.1
  • Build 0.55.0
  • Performance Results
  • Release v0.54
  • Release Highlights
  • Build 0.54.2
  • Build 0.54.1
  • Build 0.54.0
  • Performance Results
  • Release v0.53
  • Release Highlights
  • Build 0.53.5
  • Build 0.53.1
  • Build 0.53.0
  • Performance Results
  • Release v0.52
  • Release Highlights
  • Build 0.52.3
  • Build 0.52.2
  • Build 0.52.1
  • Build 0.52.0
  • Performance Results
  • v0.51
  • Release Highlights
  • 0.51.5
  • Performance Results
  • v0.50
  • 0.50.1
  • 0.50.0
  • Performance Results
  • v0.49
  • 0.49.7
  • 0.49.6
  • 0.49.5
  • 0.49.1
  • 0.49.0
  • Performance Results
  • v0.48
  • 0.48.1
  • 0.48.0
  • Performance Results
  • v0.47
  • 0.47.4
  • 0.47.3
  • 0.47.2
  • 0.47.1
  • 0.47.0
  • Performance Results
  • v0.46
  • 0.46.3
  • 0.46.2
  • 0.46.1
  • 0.46.0
  • Performance Results
  • v0.45
  • 0.45.2
  • 0.45.0
  • Performance Results
  • v0.44
  • 0.44.3
  • 0.44.2
  • 0.44.1
  • 0.44.0
  • Performance Results
  • v0.43
  • Performance Results
  • v0.42
  • 0.42.6
  • 0.42.2
  • 0.42.1
  • 0.42.0
  • Performance Results
  • v0.41
  • Performance Results
  • v0.40
  • Performance Results
  • v0.39
  • Performance Results
  • v0.38
  • Performance Results
  • v0.37
  • Features
  • Performance Results
  • v0.36
  • Security Updates: Hedera Smart Contract Service Security Model Changes
  • Performance Results
  • v0.35
  • 0.35.2 Hedera Smart Contract Service Security Model Changes
  • Performance Results
  • v0.34
  • 0.34.3
  • 0.34.0
  • Performance Results
  • v0.33
  • v0.31
  • v0.30
  • v0.29
  • Contract-managed tokens 🪙
  • Deprecations
  • v0.28
  • v0.27
  • v0.27.7
  • v0.27.0
  • v0.26
  • v0.25
  • Enhancements
  • Fixes
  • v0.24
  • v0.23
  • v0.22
  • v0.21.0
  • v0.20.0
  • v0.19.4
  • v0.19.3
  • v0.18.1
  • v0.18.0
  • v0.17.4
  • v0.17.3
  • v0.17.2
  • v0.16.1
  • v0.15.1
  • v0.14.0
  • v0.13.2
  • v0.12.0
  • v0.11.0
  • v0.10.0
  • v0.9.0
  • v0.8.1
  • v0.8.0
  • Enhancements
  • v0.7.0
  • v0.6.0
  • v0.5.8
  • v0.5.0
  • v0.4.1
  • v0.4.0
  • Miscellaneous
  • SDKs
  • SDK Extension Components

Was this helpful?

Edit on GitHub
  1. Networks
  2. Release Notes

Consensus Node

Consensus Node release information

PreviousRelease NotesNextHedera Mirror Node

Last updated 19 hours ago

Was this helpful?

Visit the for the latest versions supported on each network.

Release v0.62

MAINNET UPDATE SCHEDULED: JUNE 11, 2025

TESTNET UPDATE SCHEDULED: JUNE 3, 2025

What's Changed
  • fix: (cherry-pick) Change default decline_reward to true for nodes created during genesis by in

  • chore: Disable Batch Transactions by in

  • chore: Config changes for batch transactions by in

  • fix: (cherry-pick) Flaky Jumbo transactions tests by in

  • chore: increase transactionMaxBytes by in

  • fix: 19107 Corrected classId of BenchmarkMerkleInternal to prevent classId conflict. by in

  • chore: Fix the ConsensusSubmitMessage fee scaling for topic with customFees by in

Full Changelog:

What's Changed
  • feat: Limit the callData field instead of ethereumData (cherry-pick) by in

  • chore: (cherry-pick) Write marker files for sidecars () by in

  • feat: enable the jumbo transaction feature flag (cherry-pick) by in

  • fix: (cherry-pick) Update Roster Schema isUpgrade check () by in

  • feat: Implement fee changes for HIP-991 () by in

  • feat: Cherry-pick: Implement feature flag for gRPC web proxy endpoint () by in

Full Changelog:

What's Changed

Features

  • remove code deposit gas charge waiver ()

  • decouple backend throttle config from front end and add support for burst ()

  • Update consensus to use nGen for determining when to recalculate metadata ()

  • add cGen ()

  • HIP-1046 Extend node address book with gRPC web proxy endpoint ()

  • EventCreator uses nGen instead of generation ()

  • Otter test logging improvements ()

  • Add new v0.62 module and HederaEVM class ()

  • Modifications to EventHeader for Block Stream ()

  • Add otter test module ()

  • handle ResendBlock block node responses ()

  • Handle BlockAcknowledgements received from Block Nodes ()

  • 18593: Need a mechanism to repair key to path mapping from data files at startup ()

  • Jumbo bytes throttle ()

  • Use existing key to create an account ()

  • Remove use of generation from sync ()

  • move parent event descriptors ()

  • Long Term Schedule Transaction Support For DAB transactions ()

  • Implement Non-deterministic Generation ()

  • Stream to Block Node's immediately without waiting BlockProofs ()

  • Enhance yahcli rekey with ECDSA support ()

  • Implement daily node rewards ()

  • add HAPI verb to override the hederaFunctionality ()

  • Increase the buffer size of ethereumCall gRPC endpoint ()

  • Add ingest workflow jumbo checks ()

  • try using non-zero realm/shard ()

Bug Fixes

  • 18903: Tighten HDHM repair checks ()

  • detach FCQueue copy when serializing ()

  • Fix failing test in crypto-base ()

  • fix copy paste error in TipsetEventCreatorTests ()

  • disable GasCalculationIntegrityTest test suite ()

  • 18844: HDHM repair mechanism should not be enabled for snapshots ()

  • 18856: ReconnectHashLeafFlusher uses a wrong config ()

  • NPE in HalfDiskHashMap ()

  • Remove unused injections and fix tests ()

  • Fix transactionFee in batch transactions ()

  • Correctly populate sysfiles with node info ()

  • Revalidate collector token association on transfer ()

  • Fix the NPE in DefaultIssDetector.handleCatastrophic ()

  • flaky completedHollowAccountOperationsFuzzing test ()

  • Fix flakiness in HIP-1064 tests ()

  • 18813: VirtualMapLargeReconnectTest.multipleAbortedReconnectsCanSucceed is unstable ()

  • Use getIfUsable() in ApproveAllowanceValidator ()

  • add auto-renew check for negative values ()

  • 18795: HDHM repair mechanism can be improved to clean stale buckets ()

  • Only allow creation of accounts that match the configured shard/realm ()

  • Move sort before filterLikelyDuplicates ()

  • adding validation for deleted token on unpause ()

  • Update flow-pull-request-formatting.yaml ()

  • 18658: ReconnectNodeRemover.setPathInformation() may cause OOM ()

  • Remove mono logic returning the wrong response code ()

  • 1280 hip 1056 block item with failed contract create result contains a contract ()

  • Improved error handling for airdrops with multiple senders ()

  • Use getIfUsable() when validate custom fees ()

  • Fix TokenCreateTransaction TCK issues ()

  • Add guard around LATEST_XTS_PASS_TAG ()

  • Also archive config.txt as part of network archiving process ()

  • Add back sorting of sync events ()

  • memory leak in HalfDiskHashMap.endWriting() ()

  • Call endRound after dispatch ()

  • Only "go back" in cons time for post-restart system work ()

  • 18561 Threads outlive the SequentialTaskScheduler created during test ()

  • airdrop TCK issues fixes ()

  • 18571: Current path range should be respected when path to hash and path to KV indices are restored ()

  • contract get bytecode query to return the redirect code for hts token addresses () ()

  • Fix flaky PcesFile tests ()

  • Utilize more than one thread for SSL accept handling ()

  • Ensure BlockStreamManager#endRound() is called after dispatching system txns ()

  • 17180 EventCreator ignores HealthMonitor update when squelching enabled ()

  • Import sentinel key from hapi utils ()

  • compile fix ()

  • Should reject a FILE_UPDATE to 0.0.123 with an invalid throttle definition ()

  • 18410: Bucket integrity check in HDHM.ReadUpdateBucketTask can be improved ()

  • HIP-1028 cleanup and versioning for GetTokenKey ()

  • update reference to unhex method ()

Release v0.61

MAINNET UPDATE SCHEDULED: MAY 30, 2025

TESTNET UPDATE SCHEDULED: MAY 20, 2025

Release Highlights

This release focuses on enhancing network incentivization and improving overall system robustness and developer experience.

Hiero Improvement Proposals (HIPs)

    • As a result, users attempting to submit Atomic Batch Transactions will receive a status code of BUSY from the network. We are actively working to resolve these issues and plan to enable this feature in a future update.

New Features

  • Node Reward Opt-Out (HIP-1064): Node operators can now decline daily node rewards using a new decline_reward boolean flag in NodeCreateTransactionBody and NodeUpdateTransactionBody. This offers greater control and flexibility for node operators based on their specific requirements. The default value for this flag will be set to true to decline rewards by default.

    • // Example: Opting out of node rewards during node creation
      NodeCreateTransactionBody createBody = NodeCreateTransactionBody.newBuilder()
          // ... other fields like accountID, description, etc.
          .setDeclineReward(true) // Set to true to decline node rewards
          .build();

Notable Bug Fixes

What's Changed
What's Changed
What's Changed
What's Changed
What's Changed
What's Changed
What's Changed

What's Changed

What's Changed

Features

Bug Fixes

Release v0.60

MAINNET UPDATE SCHEDULED: APRIL 16, 2025

TESTNET UPDATE SCHEDULED: April 9, 2025

Release Highlights

This release focuses on significant performance improvements, enhanced developer tooling, and improved error handling.

Hiero Improvement Proposals (HIPs)

  • Full implementation of improved auto-renew account ID assignment for topics, enabling setting autoRenewAccountId during topic creation without an admin key.

  • Developers benefit from simplified topic management and reduced risk of unexpected expirations.

What's Changed
What's Changed

Performance Results

Release v0.59

MAINNET UPDATE SCHEDULED: MARCH 26, 2025

TESTNET UPDATE SCHEDULED: MARCH 18, 2025

Release Highlights

HIPs:

  • Description: ​HIP-991 introduces an optional fee system for submitting messages to topics on the Hedera network, aiming to enhance economic scalability and simplify operations for topic operators.

  • Benefits: Empowers topic operators with greater control over their topics, offering mechanisms to monetize and manage access. Key features include:

    • Optional Submission Fees: Topic operators can set optional fees for message submissions, payable in HBAR or Hedera Token Service (HTS) fungible tokens.​

    • Fee Schedule Key: A new 'Fee Schedule Key' allows operators to manage and update fee structures. This key must be set during topic creation.​

    • Custom Fee Distribution: Collected fees can be distributed to multiple accounts, supporting both HBAR and HTS tokens.​

    • Fee Exemptions: Operators can specify a list of keys that are exempt from fees, allowing certain users to submit messages without incurring charges.​

  • Description: This HIP introduces a Schedule Service System Contract to enhance the Hedera Smart Contract Service (HSCS) by enabling smart contracts to interact with scheduled transactions. This release includes signSchedule(address, bytes).

  • Benefits: HIP-755 introduces a Schedule Service System Contract to enhance the Hedera Smart Contract Service by enabling smart contracts to interact with scheduled transactions. signSchedule(address, bytes) method, allows smart contracts to pass along the signature from an EOA needed for a scheduled transaction.

  • Description: Enables scheduling token create and update operations through smart contracts, with implementation of the scheduleNative system contract function.

  • Benefits: Expands smart contract functionality by allowing developers to schedule token operations directly from smart contracts, providing more flexibility in DApp development.

What's Changed
What's Changed
What's Changed
What's Changed
What's Changed

Release v0.58

MAINNET UPDATE SCHEDULED: MARCH 12, 2025

TESTNET UPDATE SCHEDULED: FEBRUARY 11, 2025

Release Highlights

This release introduces several new features, improvements, and bug fixes, including:

HIPs

Other Notable Changes

  • Enhancing Dynamic Address Book v2 NodeCreate and NodeDelete transaction signature requirements changed:

    • The NodeCreate transaction now requires the admin key and one of the treasury account key, system admin key, or address book admin key to sign.

What's Changed
  • Fail NFT airdrops that would trigger royalty fee payments.

What's Changed
  • Add safety checks before Besu secp256k1 native library invocations (c.f. here.

  • Ignore approval flag when de-duplicating account ids in a TokenTransferList.

What's Changed
What's Changed
What's Changed

Re-tag of v0.58.7 to trigger workflow

What's Changed
What's Changed
What's Changed
What's Changed
What's Changed

New Contributors

Release v0.57

MAINNET UPDATE SCHEDULED: JANUARY 28, 2025

TESTNET UPDATE SCHEDULED: JANUARY 8, 2025

Release Highlights

This release introduces several new features, improvements, and bug fixes, including:

HIPs

    • Automated Transactions: Schedule transactions to execute automatically at a specific time.

    • Time-Based Applications: Build applications that rely on time-based events, such as recurring payments or token distributions.

    • Enhanced Security: Schedule transactions can be signed by multiple parties, ensuring that they are executed only when all required approvals are obtained.

New Features

  • Node Operator Queries: This release introduces a dedicated gRPC port for node operators to perform free queries. This enables node operators to monitor the network and their nodes more efficiently without incurring transaction fees.

  • Proxy Redirect Contract for Schedule Entities: This release adds support for a proxy redirect contract for calls to schedule transactions. This allows EOAs to make function calls in schedule entity addresses, enabling more flexible and dynamic interactions with scheduled transactions.

  • HSS System Contract: This release introduces the Hedera Schedule Service (HSS) system contract, providing a set of functions for managing scheduled transactions, including signing and authorizing schedules.

  • Support for Extra Dispatch Authorizations: The ScheduleSignHandler now supports authorizing Key{contractID=0.0.X} and Key{delegatable_contract_id=0.0.X} keys in a schedule's signatories list, enabling more granular control over schedule execution.

What's Changed
What's Changed
What's Changed
What's Changed
What's Changed

Performance Results

Release v0.56

MAINNET UPDATE SCHEDULED: DECEMBER 11, 2024

TESTNET UPDATE SCHEDULED: DECEMBER 4, 2024

Release Highlights

HIPs

What's Changed
What's Changed
What's Changed
What's Changed

New Contributors

Performance Results

Release v0.55

MAINNET UPDATE SCHEDULED: NOVEMBER 13, 2024

TESTNET UPDATE SCHEDULED: NOVEMBER 5, 2024

Release Highlights

Notable Change

Throttle for AccountBalanceQuery

  • A new throttle for AccountBalanceQuery requests to manage and optimize query load on the network.

What's Changed

TESTNET UPDATE SCHEDULED: OCTOBER 29, 2024

What's Changed
What's Changed

New Contributors

Performance Results

Release v0.54

MAINNET UPDATE SCHEDULED: OCTOBER 23, 2024

TESTNET UPDATE SCHEDULED: OCTOBER 16, 2024

Release Highlights

This release introduces exciting new features and improvements, including HIP-904 for token airdrops, and HIP-1010 for updating custom fee via smart contracts.

HIPs

Implementation: Partial implementation

Delivered in this release:

  • TokenAirdrop transaction is similar to crypto transfers, but differs in one fundamental way - when an airdrop is performed and the receiver does not have available or automatic association slots, rather than failing, the transfer will be kept in state as a pending transfer.

  • TokenClaimAirdrop transaction introduced for recipients to claim pending airdropped tokens.

  • TokenCancelAirdrop transaction introduced giving senders the ability to cancel unclaimed airdrops.

Benefits:

  • Streamlines token distribution, empowers token creators, developers, and projects by allowing them to distribute tokens more efficiently to a wider audience.\

Implementation: Full implementation

Delivered in this release:

  • updateFungibleTokenCustomFees system contract function for updating custom fees for fungible tokens.

  • updateNonFungibleTokenCustomFees system contract function for updating custom fees for non-fungible tokens.

Benefits:

  • Enables smart contracts to manage token custom fees, providing more dynamic and autonomous token management capabilities.

What's Changed

TESTNET UPDATE SCHEDULED: OCTOBER 2, 2024

What's Changed
What's Changed

Performance Results

Release v0.53

MAINNET UPDATE SCHEDULED: SEPTEMBER 11, 2024

TESTNET UPDATE SCHEDULED: SEPTEMBER 4, 2024

Release Highlights

Functionality

Delivered in release 0.53

  • isAssociated for token association via proxy facade contract.

    • Syntax

      • <tokenAddress>.isAssociated()

    • Example

      • IHRC719(<tokenAddress>).isAssociated()

Delivered in prior release(0.38)

  • Associate and Dissociate Tokens via proxy facade contract

Benefits

  • Token functions are callable by both EOAs and contracts.

Functionality

Partial completion of HIP-904 Delivered in 0.53

  • Sender pays for association

    • Sender now pays for token association at the time of HTS transaction execution.

  • Max_auto_associations

    • Default value for max_auto_assocations will now be -1 meaning that if an account is created automatically by performing a token transfer to an alias that does not yet exist the account is configured with unlimited automatic token association.

    • HAPI:CryptoCreate will continue to have max_auto_associations defaulting to 0.

    • Accounts created before the launch of this feature will remain unchanged.

  • Token reject

    • Introduces TokenReject Transaction.

Benefits

  • maxAutoAssociation users can update their account preferences to unlimited association giving the ability to receive any airdrops without explicitly having to associate with that token.

  • Slots are only paid for when used, and are initially paid for by the sender during automatic associations.

Functionality

  • Entire scope of HIP-850 delivered in release 0.53.

  • Enables the Supply Key to update an NFT metadata field while the NFT is held in the treasury account via TokenUpdateNftsTransaction function for a specific NFT serial number.

Benefits

  • NFT owners can return an NFT to treasury custody in order to update parameters within the metadata of the NFT.

  • NFT cannot be updated by unauthorized parties once distributed.

Functionality

Delivered in release .53:

  • Itemized auto-creation fees

  • Unified child consensus times

  • Clean hollow account completion records

  • Synthetic file creations at genesis

  • Use natural order for preceding dispatch records

Planned for delivery in release .54:

  • Fail fast on throttled child transactions

Benefits

  • This HIP refines the legibility and extensibility of the record stream.

What's Changed

What's changed

What's Changed

Performance Results

Release v0.52

Release Highlights

Functionality

  • Accepts three parameters:

    • address

    • messageHash

    • signatureBlob

  • Validates the provided address (Hedera Account ID or virtual address)

  • Determines signature type based on signatureBlob length:

    • 65 bytes: ECDSA

    • 64 bytes: ED25519

ECDSA Signature Handling

  • Extracts v, r, and s components

  • Runs ECRECOVER to recover signing address

  • Compares result with the account's virtual addresses

ED25519 Signature Handling

  • Retrieves Hedera address

  • Checks for single associated key on account

  • Verifies signature against message hash and account key

Benefits

  • Similar functionality to Ethereum's ECRECOVER precompile

  • Supports both ECDSA and ED25519 signature verification

  • Works with Hedera Account IDs and virtual addresses

  • Simplifies signature verification in smart contracts

  • Streamlines transaction authentication within contracts

  • Enhances Hedera-Ethereum authorization flow compatibility

  • Improves developer experience with familiar authorization mechanism

TokenRect Functionality

  • Allows users to reject undesired tokens

  • Transfers thefull balance of one or more tokens from the requesting account to the treasury

  • Supports rejection of both fungible and non-fungible tokens

  • Handles up to 10 token rejections in a single transaction

  • Bypasses custom fees and royalties defined for the rejected tokens

Benefits of TokenReject

  • Enables users to remove unwanted tokens from their accounts

  • Protects users from potential scams or unwanted airdrops

  • Allows rejection of tokens regardless of how they were acquired (manual or automatic association)

  • Helps users manage their token holdings more effectively

  • Prevents users from being forced to pay exorbitant or potentially malicious fees to remove tokens

  • Maintains account association with the token, allowing for future transactions if desired

  • Provides a simple mechanism for users to clean up their accounts

  • Enhances user control over their token portfolio

  • Improves overall user experience in token management

MAINNET UPDATE SCHEDULED: AUGUST 28, 2024

What's Changed

TESTNET UPDATE SCHEDULED: AUGUST 14, 2024

What's Changed

What's Changed

TESTNET UPDATE SCHEDULED: JULY 31, 2024

What's Changed

  • The accounts.maxNumber and nfts.MaxAllowedMints values both remain at 20 million for this release

Performance Results

MAINNET UPDATE: JULY 17, 2024

TESTNET UPDATE: JULY 2, 2024

Release Highlights

Functionality

  • Defines a new function to the Hedera Token Service system contract that allows for the atomic transfer of HBAR, fungible tokens and non-fungible tokens.

    • Function cryptoTransfer(TransferList transferList,TokenTransferList[] tokenTransfer)

  • Exposes an existing HAPI call via smart contracts.

  • Transfer respects granted allowances.

Benefits

  • Enables native royalty support on the EVM since native $hbar can now be transferred using spending allowances

  • Direct interaction with HBAR and HTS tokens

  • Eliminates the need for token wrapping.

  • Enhances efficiency and reduces complexity.

  • Cuts costs by removing intermediary steps i.e., wrapping assets to interact with them.

  • Enables native royalty support on the EVM since native HBAR can now be transferred using spending allowances

Functionality

  • Introduces a new Hedera Account Service system contract.

  • Enables querying and granting approval of HBAR to a spender account from smart contracts code

    • hbarAllowance, hbarApprove

  • Developers do not have to context switch out of smart contract code

Benefits

  • Introduces new account proxy contract for HBAR allowances

  • Enables grant, retrieve, and manage HBAR allowances within smart contracts

    • Developers do not have to context switch out of smart contracts code

  • Simplifies workflows and enhances security

  • Expands potential use cases, especially for DeFi and token marketplaces

What's Changed

Performance Results

MAINNET UPDATE: JUNE 20, 2024

TESTNET UPDATE: JUNE 5, 2024

What's Changed

What's Changed

Performance Results

MAINNET UPDATE: MAY 22, 2024

TESTNET UPDATE: MAY 14, 2024

What's Changed

What's Changed

What's Changed

What's Changed

What's changed

Performance Results

MAINNET UPDATE: APRIL 25, 2024

TESTNET UPDATE: APRIL 18, 2024

What's Changed

TESTNET UPDATE: APRIL 11, 2024

What's Changed

Performance Results

MAINNET UPDATE: APRIL 4, 2024

TESTNET UPDATE: MARCH 28, 2024

What's Changed

TESTNET UPDATE: MARCH 20, 2024

What's Changed

What's Changed

  • fix: Update Configuration hashesRamToDiskThreshold to 0 in MerkleDbConfig

  • fix: Backport the fix for virtual map flushes.

TESTNET UPDATE: FEBRUARY 29, 2024

What's Changed

What's Changed

Performance Results

MAINNET UPDATE: FEBRUARY 21, 2024

TESTNET UPDATE: FEBRUARY 6, 2024

What's Changed

TESTNET UPDATE: JANUARY 30, 2024

What's Changed

What's Changed

TESTNET UPDATE: JANUARY 23, 2024

What's Changed

Performance Results

MAINNET UPDATE: JANUARY 9, 2024

TESTNET UPDATE: DECEMBER 28, 2023

What's Changed

Performance Results

MAINNET UPDATE: DECEMBER 19, 2023

TESTNET UPDATE: DECEMBER 12, 2023

What's Changed

What's Changed

Bug Fixes

Features

Performance Results

MAINNET UPDATE: NOVEMBER 27, 2023

TESTNET UPDATE: NOVEMBER 2, 2023

Services v0.43.0 adds the following features:

Enhancements

Services v0.43.0 adds the following enhancements:

Performance Results

MAINNET UPDATE: OCTOBER 24, 2023

TESTNET UPDATE: SEPTEMBER 26, 2023

This release updates the platform SDK version from 0.42.0 to 0.42.6, which removes reconnect.asyncStreamTimeout from the settings files. Doing so ensures that this property will default to the value specified in code (300 seconds).

Changes

Changes

Changes

Performance Results

MAINNET UPDATE: SEPTEMBER 20, 2023

TESTNET UPDATE: AUGUST 22, 2023

Performance Results

MAINNET UPDATE: AUGUST 15, 2023

TESTNET UPDATE: AUGUST 8, 2023

TESTNET UPDATE: JULY 19, 2023

Performance Results

MAINNET UPDATE: JULY 11, 2023

TESTNET UPDATE: JUNE 21, 2023

Services v0.39.0 adds the following features:

Performance Results

MAINNET UPDATE: JUNE 8, 2023

TESTNET UPDATE: JUNE 1, 2023

TESTNET UPDATE: MAY 18, 2023

Performance Results

MAINNET UPDATE: MAY 17, 2023

TESTNET UPDATE: APRIL 24, 2023

Features

Performance Results

MAINNET UPDATE: APRIL 20, 2023

TESTNET UPDATE: APRIL 13, 2023

TESTNET UPDATE: APRIL 4, 2023

Features

Services v0.36.0 adds the following functionality:

  • update hedera-services to use FSTS CLI instead of system properties

  • 6166: Migrate VirtualMap data from JasperDB to MerkleDb data sources

  • Implementation of current network functionality in new, modularized application architecture: consensus operations, query workflow, and various preHandle implementations

Security Updates: Hedera Smart Contract Service Security Model Changes

Changes from services v0.35.2 have also been ported to v0.36.0.

  • After the security incident on March 9th, the engineers conducted a thorough analysis of the Smart Contract Service and the Hedera Token Service system contracts.

  • As part of this exercise, we did not find any additional vulnerabilities that could result in an attack that that which we witnessed on March 9th.

  • The team also looked for any disparities between the expectations of a typical smart contract developer who is used to working with the Ethereum Virtual Machine (EVM) or ERC token APIs and the behaviors of the Hedera Token Service system contract APIs. Such differences in behavior could be used by a malicious smart contract developer in unexpected ways.

  • In order to eliminate the possibility of these behavioral differences being utilized as attack vectors in the future, the consensus node software will align the behaviors of the Hedera Smart Contract Service token system contracts with those of EVM and typical token APIs such as ERC 20 and ERC 721.

  • As a result, the following changes are made as of the mainnet 0.35.2 release on March 31st:

    • An EOA (externally owned account) will have to provide explicit approval/allowance to a contract if they want the contract to transfer value from their account balance.

    • The behavior of transferFrom system contract will be exactly the same as that of the ERC 20 and ERC 721 spec transferFrom function.

    • For HTS specific token functionality (e.g. Pause, Freeze, or Grant KYC), a contract will be authorized to perform the associated token management function only if the ContractId is listed as a key on the token (i.e. Pause Key, Freeze Key, KYC Key respectively).

    • The transferToken and transferNFT APIs will behave as transfer in ERC20/721 if the caller owns the value being transferred, otherwise it will rely on approve spender allowances from the token owner.

    • The above model will dictate entity (EOA and contracts) permissions during contract executions when modifying state. Contracts will no longer rely on Hedera transaction signature presence, but will instead be in accordance with EVM, ERC and ContractId key models noted.

  • As part of this release, the network will include logic to grandfather in previous contracts.

    • Any contracts created from this release onwards will utilize the stricter security model and as such will not have considerations for top-level signatures on transactions to provide permissions.

    • Existing contracts deployed prior to this upgrade will be automatically grandfathered in and continue to use the old model that was in place prior to this release for a limited time to allow for DApp/UX modification to work with the new security model.

    • The grandfather logic will be maintained for an approximate period of 3 months from this release. In a future release in July 2023, the network will remove the grandfather logic, and all contracts will follow the new security model.

    • Developers are encouraged to test their DApps with new contracts and UX using the new security model to avoid unintended consequences. If any DApp developers fail to modify their applications or upgrade their contracts (as applicable) to adhere to the new security model, they may experience issues in their applications.

Performance Results

MAINNET UPDATE: MARCH 31, 2023

TESTNET UPDATE: MARCH 16, 2023

  • After the security incident on March 9th, the engineers conducted a thorough analysis of the Smart Contract Service and the Hedera Token Service system contracts.

  • As part of this exercise, we did not find any additional vulnerabilities that could result in an attack that that which we witnessed on March 9th.

  • The team also looked for any disparities between the expectations of a typical smart contract developer who is used to working with the Ethereum Virtual Machine (EVM) or ERC token APIs and the behaviors of the Hedera Token Service system contract APIs. Such differences in behavior could be used by a malicious smart contract developer in unexpected ways.

  • In order to eliminate the possibility of these behavioral differences being utilized as attack vectors in the future, the consensus node software will align the behaviors of the Hedera Smart Contract Service token system contracts with those of EVM and typical token APIs such as ERC 20 and ERC 721.

  • As a result, the following changes are made as of the mainnet 0.35.2 release on March 31st:

    • An EOA (externally owned account) will have to provide explicit approval/allowance to a contract if they want the contract to transfer value from their account balance.

    • The behavior of transferFrom system contract will be exactly the same as that of the ERC 20 and ERC 721 spec transferFrom function.

    • For HTS specific token functionality (e.g. Pause, Freeze, or Grant KYC), a contract will be authorized to perform the associated token management function only if the ContractId is listed as a key on the token (i.e. Pause Key, Freeze Key, KYC Key respectively).

    • The transferToken and transferNFT APIs will behave as transfer in ERC20/721 if the caller owns the value being transferred, otherwise it will rely on approve spender allowances from the token owner.

    • The above model will dictate entity (EOA and contracts) permissions during contract executions when modifying state. Contracts will no longer rely on Hedera transaction signature presence, but will instead be in accordance with EVM, ERC and ContractId key models noted.

  • As part of this release, the network will include logic to grandfather in previous contracts.

    • Any contracts created from this release onwards will utilize the stricter security model and as such will not have considerations for top-level signatures on transactions to provide permissions.

    • Existing contracts deployed prior to this upgrade will be automatically grandfathered in and continue to use the old model that was in place prior to this release for a limited time to allow for DApp/UX modification to work with the new security model.

    • The grandfather logic will be maintained for an approximate period of 3 months from this release. In a future release in July 2023, the network will remove the grandfather logic, and all contracts will follow the new security model.

    • Developers are encouraged to test their DApps with new contracts and UX using the new security model to avoid unintended consequences. If any DApp developers fail to modify their applications or upgrade their contracts (as applicable) to adhere to the new security model, they may experience issues in their applications.

Features

This includes,

  • CryptoTransfer to non-existing EVM address alias causing hollow-account creation.

  • Finalizing a hollow account with the payer signature in an incoming transaction

Use cases for HIP-583 that work in this release :

  1. As a user with an ECDSA based account from another chain I can have a new Hedera account created based on my evm-address alias.

  2. As a developer, I can create a new account using a evm-address alias via the CryptoTransfer transaction.

  3. As a developer, I can transfer HBAR or tokens to a Hedera account using their evm-address alias.

  4. As a Hedera user with an Ethereum-native wallet, I can receive HBAR or tokens in my account by sharing only my evm-address alias.

  5. As a Hedera user with a Hedera-native wallet, I can transfer HBAR or tokens to another account using only the recipient's evm-address alias.

Configuration Changes

autoCreation.enabled=true
lazyCreation.enabled=true
cryptoCreateWithAliasAndEvmAddress.enabled=false
contracts.evm.version=v0.34

Performance Results

MAINNET UPDATE: FEBRUARY 9, 2023

TESTNET UPDATE: JANUARY 24, 2023

Use v0.34.3 SDK.

To ensure full test coverage of this intricate feature, it will first be enabled only on previewnet.

This release will not enable smart contract rent.

Performance Results

MAINNET UPDATE: JANUARY 12, 2023

TESTNET UPDATE: DECEMBER 22, 2022

Services v0.33.0 adds the following features:

  • Hyperledger Besu EVM updated to version 22.10.x

  • 'accounts send' subcommand added to yahcli to support sending HTS token units

  • Developer documentation updates

MAINNET UPDATE: DECEMBER 9, 2022

TESTNET UPDATE: DECEMBER 1, 2022

TESTNET UPDATE: NOVEMBER 11, 2022

TESTNET UPDATE: OCTOBER 27, 2022

Services 0.31 completes the following features:

In addition to the above features,

  • Enables Smart Contract Traceability.

  • Adds some changes related to testability improvements.

MAINNET UPDATE: OCTOBER 21, 2022

TESTNET UPDATE: OCTOBER 19, 2022

TESTNET UPDATE: OCTOBER 6, 2022

The updateTokenInfo(address, HederaToken) call is especially powerful. If a token's admin key signs the transaction calling a contract, that contract can now make itself the token's treasury, assume authority to mint or burn units or NFTs, and so on.

  • All non-deleted contracts will have their expiry extended to at least 90 days after the upgrade date.

  • Deleted contracts will start to be purged from state; so a getContractInfo query that previously returned CONTRACT_DELETED may now report INVALID_CONTRACT_ID.

About 90 days after the 0.30 upgrade, some contracts will begin to expire. The network will try to automatically charge the renewal fee (approximately $0.026 for 90 days) to the expired contract's auto-renew account. If an auto-renew account has zero balance, the network will then try to charge the contract itself.

A contract unable to pay renewal fees will enter a week-long "grace period" during which it is unusable, unless its expiry is extended via ContractUpdate or it receives hbar. After this grace period, the contract will be purged from state.

We strongly encourage all contract authors to set an auto-renew account for their contract. This isolates the contract logic from the existence of rent.

This release also brings two peripheral improvements:

  1. It will become possible to schedule a CryptoApproveAllowance transaction.

MAINNET UPDATE: SEPTEMBER 27, 2022

TESTNET UPDATE: SEPTEMBER 7, 2022

TESTNET UPDATE: AUGUST 30, 2022

Contract-managed tokens 🪙

The HIP enumerates the ways; examples include a contract that revokes an account's KYC for a token, or deletes a token for which it has admin privileges, or even changes a token's supply key based on the metadata in an NFT!

Note there are four HIP-514 functions that will be part of release 0.30, as follows: getTokenExpiryInfo(address), updateTokenExpiryInfo(address, Expiry), updateTokenInfo(address, HederaToken), isToken(address token) and getTokenType(address token).

Deprecations

MAINNET UPDATE: AUGUST 25, 2022

TESTNET UPDATE: JULY 29, 2022

📝 The HIP-351 text does not yet reflect the name change from RandomGenerate to prng, or the system contract specification. It does explain in detail how prng derives its entropy from the running hash of transaction records generated by the network.

This release also includes some bug fixes and smaller improvements; notably, it:

  1. Permits staking to contract accounts.

v0.27.7

MAINNET UPDATE: AUGUST 9, 2022

Any ledger that will grow to billions of entities must have an efficient way to remove expired entities. In the Hedera network, this means keeping a list of NFTs owned by an account, so that when an account expires, we can return its NFTs to their respective treasury accounts.

Under certain conditions in the 0.27.5 release, a bug in the logic maintaining these lists could cause NFT transfers to fail, without refunding fees.

We appreciate the Hedera community working with us on this issue. We invite any users who were affected by this bug to contact support at support@hedera.com.

v0.27.0

MAINNET UPDATE: JULY 21, 2022

TESTNET UPDATE: JULY 1, 2022

As wallets and exchanges roll out client support, users will now have the choice to stake their hbar to a node. As nodes accumulate stake, from both individuals and organizations, they will become eligible to pay rewards to their stakers. At this point, once the 0.0.800 account balance has crossed a threshold to be set by the council coin committee, rewards will be permanently activated.

This will set the stage for the second phase of staking, in which a node’s contribution to consensus becomes a direct function of its stake, and community nodes with sufficient stake can begin to participate in consensus. Please note the decentralized nature of this process makes it hard to predict exactly when each milestone and phase will be achieved. The immediately visible consequences of the 0.27 release will be simply,

  1. The consensus nodes handle CryptoCreate and CryptoUpdate transactions with staking elections---even if not all wallets and exchanges are updated to make these elections just yet.

MAINNET UPDATE: JUNE 9, 2022

TESTNET UPDATE: MAY 25, 2022

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---and this expression 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.

MAINNET UPDATE: MAY 19, 2022

TESTNET UPDATE: APRIL 26, 2022

TESTNET UPDATE: APRIL 21, 202

Enhancements

Fixes

MAINNET UPDATE: APRIL 15, 2022

TESTNET UPDATE: APRIL 7, 2022

TESTNET UPDATE: MARCH 31, 2022

TESTNET UPDATE: MARCH 24, 2022

This upgrade also creates two new system accounts 0.0.800 and 0.0.801 that will hold reward funds.

MAINNET UPDATE: MARCH 10, 2022

TESTNET UPDATE: FEBRUARY 17, 2022

MAINNET UPDATE: FEBRUARY 3, 2022

TESTNET UPDATE: JANUARY 20, 2022

Highlights of this release include:

  • Gas limit per ContractCreate or ContractCall raised to 4M.

  • Per-contract storage capacity increased to 10MB.

MAINNET UPDATE: JANUARY 13, 2022

TESTNET UPDATE: DECEMBER 21, 2021

The Ethereum network makes heavy use of ECDSA cryptography with the secp256k1 curve, and by supporting these keys we ease the developer experience of migrating a dApp to Hedera. Anywhere a Ed25519 key can be used in the Hedera API, it is now possible to substitute an ECDSA(secp256k1) key.

Meanwhile, our team continues exhaustive due diligence for Smart Contracts 2.0... 🚀

MAINNET UPDATE: DECEMBER 2,2021

TESTNET UPDATE: NOVEMBER 18, 2021

Consensus Node 0.20 is primarily a scaffolding release, as our team is working heads-down to deliver the Smart Contract Service refresh with massive new scale and performance; as well as smart contract integration with native tokens created using the Hedera Token Service. The scope of this refresh is significant, and we believe it will be well worth the wait.

Please also note the following deprecations in the Hedera API protobufs:

MAINNET UPDATE: NOVEMBER 4,2021

TESTNET UPDATE: OCTOBER 28, 2021

TESTNET UPDATE: OCTOBER 21, 2021

MAINNET UPDATE: OCTOBER 7, 2021

In Consensus Node 0.18.1, we have a new scalability profile for NFTs in the Hedera Token Service (HTS). Up to fifty million (50M) NFTs, each with 100 bytes of metadata, may now be minted. Of course our CryptoTransfer and ConsensusSubmitMessage operations are still supported at 10k TPS even with this scale.

In this release, we have also enabled automatic reconnect. This feature comes into play when a network partition causes a node to "fall behind" in the consensus protocol. With reconnect enabled, the node can use a special form of gossip to "catch up" and resume participation in the network with no human intervention. This works even when the node has missed many millions of transactions, and the world state is very different from when it was last active.

Once HIP-23 is fully enabled in release 0.19, when their account receives units or NFT's of a new token type via a CryptoTransfer, the network will automatically create the needed association---no explicit TokenAssociate transaction needed. This supports several interesting use cases; please see the linked HIP-23 for more details.

There are three other points of interest in this release.

First, we have removed the HIP-18 limitations noted in the previous release. The tokenFeeScheduleUpdate transaction has been re-enabled, and multiple royalty fees can now be charged for a non-fungible token type.

Second, the address books in system files 0.0.101 and 0.0.102 will now populate their ServiceEndpoint fields. (However, the deprecated ipAddress, portno, and memo fields will no longer be populated after the next release.)

Third, please note that the TokenService getTokenNftInfos and getAccountNftInfos queries are now deprecated and will be removed in a future release. The best answers to such queries demand historical context that only Mirror Nodes have; so these and related queries will move to mirror REST APIs.

v0.18.0

TESTNET UPDATE: SEPTEMBER 23, 2021

Then, when their account receives units or NFT's of a new token type via a CryptoTransfer, the network automatically creates the needed association---no explicit TokenAssociate transaction needed. This supports several interesting use cases; please see the linked HIP-23 for more details.

There are three other points of interest in this release.

First, we have removed the HIP-18 limitations noted in the previous release. The tokenFeeScheduleUpdate transaction has been re-enabled, and multiple royalty fees can now be charged for a non-fungible token type.

Second, the address books in system files 0.0.101 and 0.0.102 will now populate their ServiceEndpoint fields. (However, the deprecated ipAddress, portno, and memo fields will not be no longer be populated after the next release.)

Third, please note that the TokenService getTokenNftInfos and getAccountNftInfos queries are now deprecated and will be removed in a future release. The best answers to such queries demand historical context that only Mirror Nodes have; so these and related queries will move to mirror REST APIs.

Performance Measurement Results:

MAINNET UPDATE: SEPTEMBER 2, 2021

TESTNET UPDATE: AUGUST 30, 2021

Unique token types and minted NFTs are more natural for many use cases than fungible token types. The Hedera Token Service now supports both natively, so that a single CryptoTransfer can perform atomic swaps with any arbitrary combination of fungible, non-fungible, and ℏ transfers. (Please do note that the "paged" getAccountNftInfos and getTokenNftInfos queries will remain disabled until release 0.18.0, as several large performance improvements are pending.)

In this release we have made it possible to denominate a fixed fee in the units of the token to which it is attached (assuming the type of this token is FUNGIBLE_COMMON). Custom fractional fees may now also be set as "net-of-transfer". In this case the recipient(s) in the transfer list receive the stated amounts, and the assessed fee is charged to the sender.

There are a few final points of more specialized interest. First, users of the scheduled transaction facility may now also schedule TokenBurn and TokenMint transactions. Second, network administrators issuing a CryptoUpdate to change the treasury account's key must now sign with the new treasury key. Third, the supported TLS cipher suites have been updated to the following list:

  1. TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 (TLS v1.2)

  2. TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 (TLS v1.2)

  3. TLS_AES_256_GCM_SHA384 (TLS v1.3)

⚠️ There are two temporary limitations to HIP-18 in this release. First, the tokenFeeScheduleUpdate transaction is not currently available. Second, only one royalty fee will be charged for a non-fungible token type. Both limitations will be removed in release 0.18.0.

Performance Measurement Results:

TESTNET UPDATE: AUGUST 24, 2021

Please see 0.17.4 release notes.

TESTNET UPDATE: AUGUST 19, 2021

Please see 0.17.4 release notes.

MAINNET UPDATE COMPLETED: AUGUST 5, 2021

TESTNET UPDATE COMPLETED: JULY 22, 2021

Hedera tokens can now be created with a schedule of up to 10 custom fees, which are either fixed in units of ℏ or another token; or fractional and computed in the units of the owning token. The ledger automatically charges custom fees to accounts as they send units of a fungible token (or ownership of a NFT, see below) via a CryptoTransfer.

When a custom fee cannot be charged, the CryptoTransfer fails atomically, changing no balances other than for the Hedera network fees.

We are very grateful to the Hedera user community for these interesting and powerful new feature sets.

Performance Measurement Results:

MAINNET UPDATE COMPLETED: JULY 1, 2021

TESTNET UPDATE COMPLETED: JUNE 17, 2021

In Consensus Node 0.15.1, we improved performance and integrated with the latest Platform SDK to enable full support of network reconnect.

These performance improvements let us augment the Hedera world state with records of all transactions handled in the three minutes of consensus time, even when handling 10,000 transactions per second. The HAPI GetAccountRecords query now returns, from state, all such records for which the queried account was the payer account.

MAINNET UPDATE COMPLETED: JUNE 3, 2021

TESTNET UPDATE COMPLETED: MAY 20, 2021

This release includes notable infrastructure work to enable use of the Platform reconnect feature. Reconnect allows a node that has fallen behind in consensus gossip to catch back up dynamically.

A minor improvement to the Hedera API is that the GetVersionInfo query now includes the optional pre-release version and build metadata fields from the Semantic Versioning spec (if applicable).

To simplify life for system admins who are updating a system account's key, we now waive the signing requirement for the account's new key.

MAINNET UPDATE COMPLETED: MAY 6, 2021

TESTNET UPDATE COMPLETED: APRIL 29, 2021 [v0.13.2]

TESTNET UPDATE COMPLETED: APRIL 22, 2021 [v0.13.0]

Note: The schedule transactions feature will not be enabled in this release; it's expected to be enabled on testnet in a subsequent v0.13.2 update on April 29th. This feature is enabled on previewnet.

The new protobuf avoid this duplication, letting us represent node 0 in a protobuf equivalent of,

{
    "nodeId" : 0,
    "certHash" : "337390d8fea144afc12e81254a28dac6ea82893836ac072effd85e0a7748580ef28096648c5a7f8dbb4ce81476815137",
    "nodeAccount" : "0.0.3",
    "serviceEndpoints" : [ {
      "ipAddressV4" : "13.82.40.153",
      "port" : 50211
    }, {
      "ipAddressV4" : "34.239.82.6",
      "port" : 50211
    }, {
      "ipAddressV4" : "35.237.200.180",
      "port" : 50211
    } ]
}

However, Services will continue to populate the deprecated fields in duplicate entries for six months, to give all consumers of files 0.0.101 and 0.0.102 time to prepare for exclusive use of the new format. After six months, we will eliminate the duplication and the ipAddress, portno, and memo fields will be left empty. (The fields will never be removed to ensure it remains possible to parse early versions of these system files.)

In a minor point, Services now rejects any protobuf string field whose UTF-8 encoding includes the zero-byte character; that is, Unicode code point 0, NUL. Databases (for example, PostgreSQL) commonly reserve this character as a delimiter in their internal formats, so allowing it to occur in entity fields can make life harder for Mirror Node operators.

To simplify tasks for network admins, we have also streamlined the signing requirements for updates to system accounts, and introduced a Docker-based utility called "yahcli" for admin actions such as updating system files.

MAINNET UPDATE COMPLETED: MARCH 12, 2021

TESTNET UPDATE COMPLETED: FEBRUARY 26, 2021

We have given users of the Hedera Token Service (HTS) more control over the lifecycle of their token associations. In v0.11.0, deleted tokens were immediately dissociated from all accounts. This automatic dissociation no longer occurs. If account X is associated with token Y, then even if token Y is marked for deletion, a getAccountInfo query for X will continue to show the association with Y _until_it is explicitly removed via a tokenDissociateFromAccount transaction. Note that for convenience, queries that return token balances now also return the decimals value for the relevant token. This allows a user to interpret e.g. balance=10050 as 100.50 tokens given decimals=2.

MAINNET UPDATE COMPLETED: FEBRUARY 4, 2021

TESTNET UPDATE COMPLETED: JANUARY 26, 2021

MAINNET UPDATE COMPLETED: JANUARY 7, 2021

TESTNET UPDATE COMPLETED: DECEMBER 17, 2020

Also for HTS, we added a property fees.tokenTransferUsageMultiplier that scales the resource usage assigned to a CryptoTransfer that changes token balances. This scaling factor is expected to be set so that the cost of a CryptoTransfer that changes two token balances is roughly 10x the cost of a CryptoTransfer that changes only two hbar balances.

Apart from HTS, this release drops a restriction on what payer accounts can be used for CryptoUpdate transactions that target system accounts. (That is, accounts with numbers not greater than hedera.numReservedSystemEntities.) In earlier versions, only three payers were accepted: The target account itself, the system admin account, or the treasury account. Other payers resulted in a status of AUTHORIZATION_FAILED. This entire restriction is removed, with one exception---the treasury must pay for a CryptoUpdate targeting the treasury.

Apart from these functional changes, we fixed an unintentional change in the naming of the crypto balances CSV file, and improved the usefulness of clients under test-clients/ for testing reconnect scenarios.

MAINNET UPDATE COMPLETED: DECEMBER 3, 2020

TESTNET UPDATE COMPLETED: NOVEMBER 19, 2020

We made several changes to the HAPI protobuf. First, we removed the deprecated SignatureList message type. Second, we added a top-level signedTransactionBytes field to the Transaction message to ensure deterministic transaction hashes across different client libraries; the top-level bodyBytes and sigMap fields are now deprecated and the already-deprecated body field is removed. Third, we deprecated all fields related to non-payer records, include account send and receive thresholds. This followed from the effective removal of non-payer records in v0.8.1.

For the same reason, the semantics of the CryptoGetRecords and ContractGetRecords queries have also changed. The only queryable records are now those granted to the effective payer of a transaction that was handled while the network property ledger.keepRecordsInState=true. Such records have an expiry of 180 seconds. It is important to note that because a contract account can never be the effective payer for a transaction, any ContractGetRecords query will always return an empty record list, and we have deprecated the query.

MAINNET UPDATE COMPLETED: OCTOBER 22, 2020

TESTNET UPDATE COMPLETED: OCTOBER 7, 2020

The mainnet release includes the 0.8.0 version updates.

TESTNET UPDATE COMPLETED: SEPTEMBER 17, 2020

In Consensus Node v0.8.0, we made several minor fixes and improvements. This tag also includes pre-release implementations of several operations for an incipient Hedera Token Service (HTS).

NOTE: HTS operations will remain disabled in non-development environments for some time. These operations are under active development; please consult master for up-to-date semantics.

Enhancements

  • Update Receipt proto to pair each Status with NodeID - Receipt is deleted only when the latest (duplicate) transaction expires. getTxRecord API will continue to return ALL records with the transaction ID.

MAINNET UPDATE COMPLETED: SEPTEMBER 8, 2020

TESTNET UPDATE COMPLETED: AUGUST 20, 2020

In Consensus Node v0.7.0, we’ve moved to Swirlds SDK release 0.7.3 which enables zero-stake nodes to be part of a network without affecting consensus. Consensus Node v0.7.0 migrated to new interfaces and methods provided in this version of the Swirlds SDK. HCS topic running hashes are now calculated including the payer account id. The release includes other minor fixes and improvements.

Enhancements

Documentation changes

Bug fixes

MAINNET UPGRADE COMPLETED: AUGUST 6, 2020

TESTNET UPGRADE COMPLETED: JULY 16, 2020

Enhancements

  • Add support for HCS Topic Fragmentation

Documentation changes

  • Protobuf v0.6.0 with HAPI doc update to support HCS Topic Fragmentation

MAINNET UPGRADE COMPLETED: JUNE 18, 2020

TESTNET UPGRADE COMPLETED: JUNE 8, 2020

Version 0.5.8 includes a patch which addresses the resilience of peer-to-peer networking in the hashgraph consensus platform.

v0.5.0

TESTNET UPGRADE COMPLETED: MAY 5, 2020

In Consensus Node v0.5.0, we’ve added TLS for trusted communication with nodes on the Hedera network. For better security, only TLS v1.2 and v1.3 with TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 and TLS_RSA_WITH_AES_256_GCM_SHA384 cipher suites are allowed.

We’ve added new metadata in the Hedera NodeAddressBook, accessible in system file 0.0.101. The versions of the node software and gRPC Hedera API (HAPI) are now queryable via GetVersionInfo under the new NetworkService for node and network-scoped operations.

For Hedera Consensus Service, we’ve updated the topic running hash calculation to use the SHA-384 hash of the submitted message, rather than the message itself. This reduces the storage requirements needed to validate the hash of a topic. The record of a ConsensusSubmitMessage transaction that uses the new hashing scheme will have a new topicRunningHashVersion field in its receipt. The value of the field will be 2.

Hedera File Service also has several fixes of note. First, we enabled immutable files. Second, we relaxed the signing requirements for a FileDelete transaction to match the semantics of a revocation service. Third, we fixed a fee calculation bug that overcharged certain FileUpdate transactions.

For Hedera Smart Contract Service, we’ve improved visibility into transactions that create child contracts using the new keyword by putting created ids in the record of the transaction; and we now propagate parent contract metadata to created children.

Finally, if you use the throttle properties in system file 0.0.121 to estimate network performance limits, you will also be interested in a new standardized format of those properties. The lists below contain these and other minor updates, bug fixes, and documentation changes.

Enhancements

  • Add support for TLS

  • Expand address book metadata

  • Return all created contract ids

  • Propagate creator contract metadata

  • Introduce GetVersionInfo query

  • Standardize throttle configuration

  • Enforce file.encoding=utf-8 on startup

  • Make duration properties inclusive for readability

Bug fixes

  • Use message SHA-384 hash in running hash

  • Enable immutable files

  • Relax FileDelete signing requirements

  • Fix sbh calculation in FileUpdate

  • Return metadata for deleted files

  • Enforce receiver signing requirements during contract execution

  • Reject invalid CryptoGetInfo

  • Reject CryptoCreate with empty key

  • Return NOT_SUPPORTED for state proof queries

  • Waive fees for 0.0.57 updating 0.0.111

  • Waive signing requirements for 0.0.55 updating 0.0.121/0.0.122

  • Waive all fees for 0.0.2

  • Do not throttle system accounts

Documentation changes

  • Replace “claim” with “livehash” as appropriate

  • Standardize and clarify HAPI doc

v0.4.1

  • Software update includes the ability for Hedera to dynamically set throttles on network transaction types.

  • The following throttles would be updated to: 1000 submit messages per second and 5 topic creates per second.

  • Reassigning of new Council Member nodes

v0.4.0

  • Say hello to the Hedera Consensus Service! This release is the first to include HCS, allowing verifiable timestamping and ordering of application messages.

  • Network pricing has been updated to include HCS transactions and queries

  • Network throttle for HCS set to 1000 tps for submitting messages, and 100 tps for each of the other HCS operations.

  • Improved end to end testing.

  • General code clean up and refactoring.

  • ContractCall - TransactionReceipt response to ContractCall no longer includes the contractID called

  • CryptoUpdate - TransactionReceipt response to CryptoUpdate no longer includes the accountID updated

  • CryptoTransfer – CryptoTransfer transactions resulting in INSUFFICIENT_ACCOUNT_BALANCE error no longer list Transfers in the TransactionRecord transferList that were not applied

Miscellaneous

SDKs

  • Java SDK has been updated to support the Hedera Consensus Service

  • JavaScript/Typescript SDK has reached version 1.0.0, supporting all four mainnet services

  • JavaScript/Typescript SDK supports both running in the browser (with Envoy Proxy) and in Node.

  • Go SDK now supports all four mainnet services.

Fees

  • Transfer list within transaction records now shows only a single net amount in or out for each account, reflecting both transfers and any fees paid.

  • Fixed bug in fee schedule that had resulted in fees for ContractCallLocal, ContractGetBytecode, and getVersion queries being undercharged by ~33%

SDK Extension Components

  • The Hedera SDK Extension Components (SXC) is an open sourced set of pre-built components that aim to provide additional functionality over and above HCS to make it easier and quicker to develop applications, particularly if they require secure communications between participants.

  • Components use the Hedera Java SDK to communicate with the Hedera Consensus Service.

Daily rewards for active nodes : Full implementation of a daily reward mechanism for active consensus nodes, including an option for node operators to decline these rewards. This enhances network health by incentivizing consistent node uptime and participation, while providing operators flexibility in managing their rewards and improving network decentralization.

HIP-551 (Atomic Batch Transactions): This release includes the implementation of Atomic Batch Transactions; however, due to technical challenges identified in testing, this feature has been temporarily disabled.

: Corrected Cancun SELFDESTRUCT Semantics: Fixed incorrect SELFDESTRUCT behavior per EIP-6780 post-Cancun, where a contract specifying itself as the beneficiary in a non-creation transaction erroneously triggered a SELF_DESTRUCT_TO_SELF error. The fix ensures compliance with EIP-6780, allowing the operation to proceed without deleting the contract or transferring its balance, including native tokens. Additionally, refactored CustomSelfDestructOperation.execute to streamline validation checks before state changes. Impact: Enhances EVM compatibility and reliability on Hedera for contracts using SELFDESTRUCT, ensuring correct execution under post-Cancun rules.

fix: Fix the transactionFee in the record for ConsensusSubmitMessage with custom fees by in

chore: Disable AtomicBatch prod throttles by in

Full Changelog:

chore: Config changes for batch transactions by in

Full Changelog:

chore: Disable Batch Transactions by in

Full Changelog:

fix: 0.61 cherry-pick: Correctly populate sysfiles with node info by in

fix: 18771: Backport fixes for 18593, 18795, 18844, and 18903 to release 0.61 by in

chore: (0.61) add fee refund mechanism, use for successful EthereumTransaction by in

Full Changelog:

chore: (cherry-pick) Update flow-pull-request-formatting.yaml by in

chore: (cherry-pick) adjust path to protobufs in 'Update Hedera Protobufs' step by in

chore: (cherry-pick) remove github-committers team from codeowners by in

chore: (cherry-pick) Update CODEOWNERS for tools-and-libs rename by in

chore: (cherry-pick) update codeowners with new team names by in

fix: Cherry-pick transactionFee fix for atomic batch transactions by in

Full Changelog:

chore: (cherry-pick) Delay initializing snark keys () by in

fix: (cherry-pick) Utilize more than one thread for SSL accept handling () by in

fix: 18720: Backport the fix for 18571 to release 0.61 by in

feat: (cherry-pick) try using non-zero realm/shard by in

Full Changelog:

chore: Remove the entityCounts migration code in 0.61 () by in

refactor: cherry-pick "Use a list of signed bytes for transactions in AtomicBatchTransaction" by in

fix: State changes out of order in HAPI Tests (Restart) by in

fix: 18410: Bucket integrity check in HDHM.ReadUpdateBucketTask can be improved - rel/0.61 by in

fix: Ensure BlockStreamManager#endRound() is called after dispatching by in

feat: Cherry-pick Daily Node Rewards by in

fix: Call BlockRecordManager.endRound after system dispatch by in

fix: Only "go back" in cons time for post-restart system work by in

chore: cherry-pick fix NPE when using records by in

chore: Cherry-pick Add metrics for active node percentage by in

Full Changelog:

Dynamic peers for the sync network ()

Add JumboTransactionsConfig ()

implement exponential backoff for connections to Block Nodes ()

HIP-1028 Fungible and NFT Token Info versioning ()

add SCHEDULE_EXPIRY_NOT_CONFIGURABLE validation ()

Add messages for skip and resend block to block service ()

Create a HAPI test to validate birth round migration ()

Close blocks during fatal ISS ()

HIP-1028 apply versioning to Update Token and Update Token Keys System Contracts ()

Add feature flag for CRS ()

change version to 0.61 ()

Support non-zero realms for contracts service ()

HIP-551 atomic batch transactions ()

Detect ISSes when states are not produced for every round ()

remove @OrderedInIsolation from contract bdd tests ()

HIP-632 fix alias length check ()

Extended suite failure during insertRemoveAndModifyOneMillion ()

18393 metrics not updated in PlatformWiring ()

Fix candidate roster adoption logic (v61) ()

: Improve Assignment of Auto-Renew Account ID for Topics

fix: Update MTT Version by in

fix: 18424 Fixed initialization of MigrationTestingToolState by in

fix: 18722: Backport the fix for 18571 to release 0.60 by in

Full Changelog:

feat: add feature flag for disabling precompile contracts by in

fix: Fail cleanly on negative gas limit by in

test: fix MerkleRehashTests.failedRehash() unit test by in

feat: Use decrementCounter on ENTITY_COUNTS when remove() is called by in

feat: Implement ECDSA key support for yahcli accounts create by in

feat: update onSealConsensusRound() to return a boolean by in

fix: Reference correct main obj in test by in

ci: Fix Check Integration Job State step to detect properly by in

feat: add synthetic node creates to record stream at genesis by in

fix(17537): Fix Test Flake startAtFirstFileDiscontinuityInMiddleTest by in

Full Changelog:

: Topic Fees

: Schedule Service System Contract signSchedule(address, bytes)

: Scheduled Token Create/Update Transactions via Smart Contract

fix: Fix candidate roster adoption logic (v59) by in

Full Changelog:

fix: 18267: Backport the fix for 18235 to 0.59 by in

fix: 18268: Bucket integrity check in HDHM.ReadUpdateBucketTask can be improved by in

Full Changelog:

chore: Prohibit all airdrop royalty fees by in

Full Changelog:

chore: (0.59) Cherry-pick misc fixes by in

Full Changelog:

refactor: 16436 Removed MerkleRoot interface. by in

fix: move and change value of Dockerfile environment variable by in

build: Roll hiero gradle conventions to version 0.1.4 by in

build(deps): bump actions/setup-java from 4.5.0 to 4.6.0 by in

build(deps): bump gradle/actions from 4.2.1 to 4.2.2 by in

chore: Update hedera-services to rename develop as main by in

chore: Update workrflow names to point to main instead of develop by in

ci: Update Check Integration/XTS Job State to include GH_TOKEN by in

ci: add id_token write permission to node-flow-deploy-release-artifact.yaml by in

feat: Support overwrites for interface bindings and endpoints by in

chore: Refactor hapi tests to use hapiTest(...) instead of defaultHapiSpec(...) (Part 3) by in

feat: consolidate hbar transfer list when decoding cryptoTransfer function by in

Full Changelog:

HIP-423 Long-Term Scheduled Transactions: Update to ScheduleSign throttles changed: The ScheduleSign transaction is now throttled like other transactions and can now be managed by the default throttling mechanism on the network. (, ) This completes HIP-423.

HIP-755 authorizeSchedule(address) Adds functionality to the Hedera Schedule Service System contract so that a smart contract can sign a referenced scheduled transaction using its contract key, enabling automated execution of scheduled transactions directly from smart contracts. (), the remaining outstanding features to complete HIP-755 will be provisioned in release .59.

Enabled mirror node to simulate contract calls: The standalone transaction executor now supports custom Operations. Developers can use this feature to create and execute custom operations that are not part of the standard Hedera API. ()

The NodeDelete transaction is now a non-privileged transaction and requires one of the admin key, treasury account key, system admin key, or address book admin key to sign. (, , , )

Ensuring state changes are now in block streams: Refactored out-of-band state modifications: All out-of-band state modifications have been refactored to be done in Schemas. ()

Increased CryptoGetAccountBalance throttle: The throttle for the CryptoGetAccountBalance query has been increased to the number of network nodes times 1,000,000 plus a buffer. This change addresses an issue where the throttle was too low, leading to throttling errors. (, )

Full Changelog:

Full Changelog:

Full Changelog:

chore: Use weights from reclamped stakes in current address book by in

Full Changelog:

chore: (0.58) Remove unwanted post-upgrade work by in

chore: 0.58-specific state migrations by in

ull Changelog:

chore: (0.58) Remove unwanted post-upgrade work by in

chore: 0.58-specific state migrations by in

Full Changelog:

chore: Reapply "FileService address book and node details" by in

Full Changelog:

fix: 17283: Backport the fix for to release 0.58 by in

chore: (0.58) Support custom Operations in standalone executor by in

fix: retain override values on ConfigProviderImpl.update() () by in

fix: cherry-pick: FileService address book and node details should be updated at genesis by in

fix: 17467: Back out changes for 15448 from release 0.58 by in

fix: Revert "cherry-pick: FileService address book and node details" by in

Full Changelog:

feat: cherry-pick: Generated Files 101 & 102 Sequentially Ordered by Node ID by in

Full Changelog:

chore: Modify and mount default block streams output directory by in

fix: 16657: State validation fails for round 191161423 on LSE by in

feat: Add time-driven event processing for triggering scheduled transactions by in

chore: Integrate latest cryptography library changes by in

fix: Add validation for grpc certificate hash by in

ci: Add workflow for manual XTS failed tests log collection by in

ci: Update slack reporting for XTS failure and CITR build promotion by in

ci: Change from setup-gradle action to ./gradlew command usage by in

build(deps): bump codecov/codecov-action from 5.0.2 to 5.0.7 by in

fix: 16748 Fixed serialization for AddressBookTestingToolState by in

build(deps): bump docker/setup-qemu-action from 3.0.0 to 3.2.0 by in

made their first contribution in

made their first contribution in

made their first contribution in

Full Changelog:

HIP-423: Long-Term Scheduled Transactions: This release completes the implementation of , enabling schedules to execute transactions at a future date and time. This provides developers with a powerful tool for automating on-chain actions and building time-based applications. Benefits include:

chore: Cherry pick fixes for update of default branch to main () by in

Full Changelog:

chore: (0.57) Keep default schedule lifetime 30min no matter max lifetime by in

Full Changelog:

fix: tokenClaimAirdrop throws NPE on null sender or receiver by in

Full Changelog:

fix: Revert HIP-796 Protobuf changes (cherry-pick 0.57) by in

Full Changelog:

ci: Fix cron jobs to use github token for gh cli calls and specify java version by in

build(deps): bump actions/setup-java from 4.0.0 to 4.5.0 by in

build(deps): bump actions/setup-python from 5.0.0 to 5.3.0 by in

build(deps): bump actions/cache from 4.0.1 to 4.1.2 by in

refactor: create event creator modules by in

refactor: gossip module names and extract FallenBehindManager to gossip module by in

ci: disable release 0.53 regression by in

feat: HIP-904 Reject Tokens System Contract implementation by in

feat: HIP 904 SetUnlimitedAutoAssociations System Contract Implementation by in

fix: LegacyConfigPropertiesLoader should not suppress ParseException by in

Full Changelog:

HIP-869 Dynamic Address Book—Stage 1: This release includes the implementation of HIP-869, enabling the Dynamic Address Book. Node operators can now update node details and address books via Hedera transactions. This streamlines network operations and enables node operators to manage their associated node entries directly in the Address Book. HIP-904 System Contract Functions: Implements the System Contract Functions section within . Introduces Hedera Token Service (HTS) support for the airdrop-related capabilities. These functions are implemented as system contract functions, making it possible for smart contracts to issue Frictionless Airdrops, Token Reject, and AutomaticToken Association configurations for efficient management. HIP-632 - isAuthorized(): The isAuthorized() function introduced in extends the Hedera Account Service (HAS) System Contract, enabling smart contracts to authenticate signatures against Hedera accounts. This provides functionality akin to the validation step following Ethereum's ECRECOVER, without recovering public keys. It supports ECDSA, ED25519, and complex keys such as threshold keys, though ECDSA is recommended for compatibility and interoperability with Ethereum. This builds on the previous functionality of isAuthorizedRaw() released in 0.52. Other Notable Changes: Block Streams - Dev Access Preview: Block Streams is a new output stream that will replace Hedera’s existing event and record streams into a single stream of verifiable data. This consolidated approach not only simplifies data consumption but also enhances Hedera's capabilities by including state data. Starting with version 0.56, consensus nodes will publish preview block stream files alongside the existing record stream, which remains the authoritative source of truth for Hedera. This preview allows the community to explore, test, and provide feedback on this new feature, paving the way for its future adoption. Migration from .pfx to .pem Cryptography Files: The consensus node cryptography system was migrated from using .pfx files to more manageable .pem files.

chore: Cherry-Pick (0.56): Increase CryptoGetAccountBalance throttle by in

Full Changelog:

chore: Cherry Pick: Modify and mount default block streams output directory by in

Full Changelog:

fix: correct a missing conversion between AddressBook cert hash hex-string-as-bytes and actual SHA2-384 hash bytes for Node entries. by in

chore: Do stricter validation of X.509 gossip cert in DAB transactions by in

Full Changelog:

test: Added a test to submit DAB transactions for JRS test by in

chore: cover HIP-869 test plan by in

test: Use DAB upgrade test in CI runs by in

ci: continuous integration tests and release initial phase 1 changes by in

perf: increase Health Monitor invocation frequency by in

feat: created iterface for inline PCES writer by in

feat: Add TSS related system transaction and state protobufs (Services) by in

feat: increase version to 0.56 by in

ci: Remove unnecessary check in node-flow-deploy-release-artifact by in

feat: Activate smart contract module 0.51 by in

chore: Add missing config files to previewnet config dir by in

test: Extend HAPI tests for TokenAirdrop with custom fees - royalty fees by in

feat: Added states for TssService by in

chore: remove unnecessary checks for value xfer to system contracts by in

chore: Cleanup Signature by in

chore: Add configuration properties for HIP-904 System Contracts by in

feat: Regenerate keys and update node names for tests by in

feat: Replaced AddressBook based NetworkInfo implementations by in

chore: Address review comments by in

chore: add node details/address book export validation in DabEnabledUpgradeTest by in

fix: Handle non-existent token IDs in token fee schedule updates by in

chore: Add Configuration support for GRPC messages by in

feat: use FileChannel for PCES by in

feat: create inline pces wiring by in

chore: remove nextNodeId from config.txt by in

chore: Make hedera-services also code owner of hedera-app by in

fix(container): adds resiliency to the deterministic image entrypoint script by in

chore: Correct locations of various TSS protos by in

chore: Add constructor for Bytes in Hash to avoid copying by in

fix: Add query handling metrics upload by in

fix: Airdrop transfer list size validation by in

ci: Move jenkins checks into its own workflow that executes when node-zxc-build-release artifact completes by in

ci: Fix invalid workflow introduced by 15928 by in

ci: Add skipped status as possible triggering conclusion by in

ci: ensure prepare xts branch launches when node deploy production build finishes by in

fix: 15959: Add more logging for 12311 by in

chore: remove unused wiring options by in

build(deps): bump actions/upload-artifact from 4.3.1 to 4.4.3 by in

build(deps): bump actions/checkout from 4.1.1 to 4.2.1 by in

ci: Checkout the code with GH_ACCESS_TOKEN and persist the credentials by in

ci: Updated XTS job to check statuses and added gpg key to prepare XTS by in

ci: Update tag scheme in prepare XTS flow by in

ci: Add message parameter to forced tag step by in

fix: support restarting from RECORDS -> BOTH by in

ci: Fix issue with zxf prepare extended test suite by in

fix: ensure configuration loading and name resolution is resilient by in

feat: wire skeleton TssBaseService handlers to submission-enabled AppContext by in

feat: permit unpaid queries when executed from localhost by in

feat: introduce NodeId.of(long) by in

feat: 15154 Added createSnapshot method to State API by in

fix: 15994: Need more logging in AbstractHashListener by in

build(deps): bump org.gradlex:java-module-dependencies from 1.7 to 1.7.1 in /gradle/plugins by in

fix: Ensure getAccountInfo returns correct EVM address by in

chore: Fix compiler warnings in token service by in

test: add block contents validator by in

build: update Java Module patching by in

chore: add links to TSS issues by in

build: generalize publishing setup by in

fix: detect post-upgrade txn in presence of pre-upgrade events by in

fix: update the Schema class import statement by in

fix: stabilize keyRotationDoesNotChangeEvmAddress() by in

feat: updateNode needs both admin key and council to sign. by in

chore: enable BLOCKS-only stream mode by in

test: create fake TSS library for testing by in

chore: Fix ownership of services protobufs by in

feat: Remove default memo for lazy created accounts and auto created accounts by in

chore: use 0s as @RepeatableHapiTest valid start offset by in

fix: DefaultKycStatusCall correct returned values from System Contract by in

chore: Remove hedera-base as code owner by in

chore: use fireAndForget() for freeze period background traffic by in

chore: cherry-pick, Do not update file 102 during the first transaction after a freeze upgrade when DAB is disabled by in

chore: tolerate nextNodeId field in config.txt by in

feat: 14726: Proposal for consensus node architecture update by in

refactor: gossip modules creation by in

ci: Updating workflow permissions as per step-security recommendations. by in

chore: standardize and simplify ScheduleService by in

ci: Enable build promotion tagging and XTS completion by in

feat: Readable and Writable Roster state stores by in

chore: eliminate duplicated signature verification logic by in

test: add test to validate null admin key for contract can still xfer value by in

feat: Add logic for TssMessageHandler for happy path by in

ci: Temporarily disable Trigger ZXF Deploy Integration. by in

feat: HIP-904 Token Airdrop System Contract by in

docs: Provide Design document for HIP-904 System Contracts flows by in

chore: migrate cryptography from .pfx to .pem files by in

ci: Add logic to only delete xts-candidate tag if it already exists by in

ci: Fix ZXCron Promote Build Candidate Checkout Tagged Code step by in

ci: Fix bug with deleting xts-candidate tag prior to creation or use by in

feat: HIP-904 Implement TokenClaimAirdrop System Contract by in

ci: Specify java major minor and patch versions by in

feat: counting get balance throttle by in

feat: HIP-904 Implement Token Cancel Airdrop System Contract by in

feat: align state and records for self managed contract keys on create by in

feat: Update BlockStreamConfig StreamMode default to BOTH by in

chore: replace usages of AddressBook with Roster in tipset by in

chore: Address review comments on PR in protobufs by in

feat: throttled tx metrics by in

feat: Set TSS candidate roster logic by in

chore: schedule 0.56 release branch creation by in

feat: Initial TssVoteHandler by in

made their first contribution in

made their first contribution in

made their first contribution in

Full Changelog:

chore: 16356 cherry pick java version fixes by in

feat: Cherry-Pick (0.55): Define throttle for GetBalance queries by in

Full Changelog:

chore: cherry-pick, do not update file 102 during the first transaction after a freeze upgrade when DAB is disabled by in

Full Changelog:

docs: tss ledger id platform design proposal by in

chore: remove unused hedera-evm-* and cli-clients modules by in

chore: 11771 Added more unit tests for WritablePlatformStateStore by in

test: Token Claim Airdrop with receiverSigReq test by in

chore: rename directory 'swirlds-jasperdb' to 'swirlds-merkledb' by in

chore: remove 'itest' test set by in

fix: code style and javadoc fixes by in

test: add a sigRequired true additional test by in

fix: use ServicesSoftwareVersion by in

fix: if the directory exist, don't create it in UnzipUtility by in

fix: 10342: HashListByteBuffer releases DirectByteBuffers lazily, adds memory pressure by in

feat: 15146 Added calculateHash, setHash and getHash methods to State interface by in

chore: Refactor and Remove Duplicate Documentation in Services by in

fix: stop using raw types in Call{Attempt,Translator} by in

chore: Integrate protobufs to build by in

ci: disable release 0.52 regression by in

chore: Remove the script forensic/start-investigation.py by in

chore: add unit tests for ServicesSoftwareVersion utilities by in

fix: Prevent designating deleted accounts as custom fee collectors by in

chore: Bump services version to 0.55 by in

fix: skip checkSignatures when state.isPcesRound() by in

fix: ensure StakePeriodManager current stake period is always up-to-date by in

feat: HIP-632 alias-to-accounts and back by in

fix: allow absent agreement keys on disk and in state by in

chore: Allow injection of CacheWarmer's Executor by in

fix: complete block -> record translation for all PR checks by in

chore: logging config is automatically reloaded by in

build: update to latest versions - Gradle / Develocity plugin / Dependency Analysis plugin by in

build: add 'timeConsuming' test set by in

fix: Remove HederaFileNumbers and HederaAccountNumbers by in

chore: cleanup exception behavior and add javadocs by in

chore: use correct Nullable annotation in 'smart-contract-service-impl' by in

feat: add PBJ support to platform streams by in

chore: Use GossipEvent in PlatformEvent by in

build: avoid mergeJar / Protobuf gRPC update by in

chore: improve noStakingInteractionsForExtendedPeriodIsFine() spec by in

chore: 15405 move tss to hedera cryptography by in

docs: 15091: Design proposal: migrate Queue states from FCQueue to VirtualMap by in

chore: add StateHashedNotification by in

chore: remove hapiProtoVersion by in

chore: implement and test indirect block proofs by in

fix: set active ExchangeRateSet on triggered txn receipts by in

chore: fix/disable hammer tests that are not working by in

chore: default TransactionExecutor simulator to no-op system contract authorization checks by in

fix: 15385 Used MerkleStateRoot.getReadablePlatformState where possible to prevent race conditions by in

fix: permit 100:1 deflation for upgrade ZIP files by in

feat: BlockStreams-Inversion of control by in

fix: Check for usability in various ops by in

chore: Remove PeerInfo.nodeName by in

refactor: remove AbortException by in

feat: metadata view functions via smart contracts by in

fix: freeze time reset check by in

chore: correct the variable name in roster.proto by in

fix: Precision loss for gas calculation of HTS system contracts v2 by in

feat: introduce PbjRecordHasher and RosterUtils.hash(Roster) by in

feat: Add TokenUpdateNFTs as a smart contract operation v2 by in

chore: remove snapshot ops by in

fix: 15167: Remove timeout from reconnect/rehash Iterators by in

chore: testnet event hashing by in

docs: Proposal Process Update - Specify post-acceptance non-material update procedure by in

fix: recreate block hash from state by in

test: fix CryptographyTests by in

build: cleanup settings.gradle.kts / remove build.gradle.kts by in

fix: 15438: Eliminate busy loop in HalfDiskHashMap.endWriting() by in

docs: tss block signing proposal by in

fix: 15494: Improve VirtualLeafRecord serialization to bytes during flushes by in

feat: migrate event serialization to protobuf by in

fix: Validate CustomFees input arrays in UpdateTokenCustomFeesDecoder by in

chore: Add missing javadocs in Consensus Service by in

chore: add TracerBinding interface for TransactionExecutors. by in

test: unit test verifySyncInvalidEd25519() is not stable by in

test: New HAPI test for TokenAirdrop transaction by in

fix: remove dependencies to 'org.testcontainers' in production code by in

chore: use 4.28.2 for com.google.protobuf artifacts by in

refactor: 15413 Split PlatformStateAccessor into two interfaces by in

feat: decouple event constraints from deserialization by in

feat: add file 101 update during the first transaction after a freeze upgrade by in

docs: Update Tss-Library proposal by in

chore: reduce EthereumTransaction relayer fees by in

chore: Remove ImmutableHash by in

feat: create release branch 0.55 by in

test: (cherry-pick) Added a test to submit DAB transactions for JRS test () by in

ci: cherry pick changes to HAPI version checks into release 0.55 by in

feat: cherry pick smart contract module 051 activation by in

chore: (Cherry Pick) Standardize previewnet config dir with other envs by in

fix: Cherry-Pick: Handle non-existent token IDs in token fee schedule updates by in

fix: Cherry-Pick: Add query handling metrics upload by in

fix: Cherry-Pick (0.55): Airdrop transfer list size validation by in

chore: disable dab in 0.55 by in

fix: (0.55) post-upgrade txn detection in presence of pre-upgrade events by in

made their first contribution in

Full Changelog:

: Token Airdrops and Claims

: Update Token Custom Fee Schedules via Smart Contracts

fix: Cherry-Pick (0.54): Airdrop transfer list size validation by in

Full Changelog:

fix: cherry-pick: remove dependencies to 'org.testcontainers' in production code by in

chore: reducer EthTx relayer fees by in

Full Changelog:

feat: Enable health monitor by in

chore: rename detailed consensus event by in

refactor: Use PBJ EventDescriptor by in

fix: split new Reconnect metrics by NodeId in Grafana by in

perf: VirtualHasher.hash() keeps too many tasks in memory by in

feat: refactor CryptoTransferHandler by in

feat: improve hashing performance by in

test: add test for validating numeric values for HAS and ExchangeRate functions by in

ci: Add registry mirrors to daemon-config on crazy-max/ghaction-setup-docker by in

docs: Update glossary defns of aliases, triplets by in

➡ See the full list of changes .

Binaries ()


: Associate and Dissociate Tokens via Facade Contract

Enables developers to call functions in a way familiar to and .

: tokenReject, account infinite maxAutoAssociation & Sender pays auto association

: HTS Mutable metadata in treasury

: Improve record stream legibility and extensibility

feat: add enableDAB flag to enable and disable DAB features by in

ci: resolves release issue preventing the publication of the docker images by in

fix: hedera-evm and hedera-evm-impl are overwriting each other in MC by in

fix: change order of descriptor variables by in

docs: 13690 Added a design doc for Ledger State API by in

chore: update Gradle to 8.8 / setup-gradle to v3.4.2 by in

chore: Cleanup obsolete test-clients code and resources by in

docs: update token reject design doc by in

fix: passing upgrade @HapiTest by in

feat: Ensure overwritten operations check for sufficient gas first by in

test: HIP-904 Create HAPI tests for a hollow account on an alias on which we have a deleted account by in

feat: HIP-904 Charge automatic associations during CryptoTransfer by in

chore: inline pces proposal 2.0 by in

feat: implement HIP-632 isAuthorizedRaw method by in

➡ See the full list of changes .

- isAuthorizedRaw

fix: invalid feeSchedules.json by in

chore(0.52): updates the buildkit and docker daemon configuration to use the registry mirror by in

fix: immediately finalize transfer lists for scheduled crypto transfer by in

ci: fix gradle publish failures in release-0.52 for hedera.com.evm by in

fix: 14489 cherry pick docker rate limit fix in release052 by in

fix(bug): Removed daemon config changes () by in

fix: cherry pick misc fixes by in

feat: extract HederaNetwork interface with initial SubProcessNetwork impl by in

build: make annotation library dependencies transitive by in

chore: Address compiler warnings in LoggerApiSpecAssertions by in

chore: disabled new backpressure via settings by in

chore: Add FakePlatform and FakeServicesRegistry by in

docs: File Service design doc by in

build: (de)activate selection of javac lint features by in

fix(reconnect): use AtomicLong for anticipatedMessages counter by in

feat: Move to fully connected network by in

docs: add design document for HIP-904 token cancel airdrop transaction by in

➡ See the full list of changes .

feat(reconnect): introduce ReconnectMapStats interface by in

chore: revert removal of CLI report tool by in

docs: add design document for HIP-904 token reject operation by in

feat: gossip facade by in

feat: add the ability to disable the running event hasher by in

fix: ignore token expiry status in TokenDissociate by in

feat: add javadoc and diagram, delete dead code by in

fix: use civilian payer for modified variants by in

fix: 12853: Memory leak from MerkleDbDataSource.copyStatisticsFrom() by in

feat: Updated hedera-services code to support DAB protobuf changes. by in

➡ See the full list of changes .

chore: Cherry pick 13648 into release 0.50 branch by in

fix(ci): cherry pick milestone assignee checks rel 50 by in

fix: (cherry-pick) Use restart method to all token schemas by in

fix: Enable tokens.balancesInQueries.enabled by in

chore: Enable tokens.balancesInQueries in code by in

➡ See the full list of changes .

feat: reorganize ISS wiring by in

feat(diff-testing): Script (python) to pull intervals - up to a day - from GCP by in

fix: 11750 Fixed synchronization in BreakableDataSource.saveRecords by in

feat: Differential testing: Enhance account store dumper to handle modular representation by in

test: add security v2 model tests for token associate by in

fix: stop checking for minimum birth round by in

feat: make the state compatible with birth rounds by in

fix: FilteredLoggingMonitor by in

feat: diagram tweaks by in

fix: wait longer for freeze transaction to be handled by in

➡ See the full list of changes .

fix: support crypto admin keys in system contract tokenCreate() by in

fix: remove balance adjustment limit from record in state, use 0 for initial gas snapshot by in

fix: cherry-pick midnight rate management on restart () by in

feat: auto-resubmit operations with modifications () by in

fix: ignore token expiry status in TokenDissociate by in

fix: avoid NPE when migrating from genesis (non-prod) state by in

fix: storage link management by in

fix: manage StakingInfos in restart by in

feat: address cold read issue in ExtCodeHash operation by in

fix: 11348: The fix for 11231 doesn't cover ParsedBucket by in

chore: Create ISS detector component by in

chore: Add orderedSolderTo method to OutputWire by in

chore: remove hashgraph demo by in

➡ See the full list of changes .

fix: remove adjustments limit by in

feat: Check platform status before syncing () by in

chore: cherry-pick unified CryptoCreate throttle reclamation ().

chore: Configure maxAggregateRels to 15 million (all envs) ().

fix: only compare child time created against self-parent time created by in

chore: add an old-style queue thread for intake by in

fix: 11746: Backport the fix for to release 0.47 by in

fix: bug when node is removed by in

fix: Fuzzy matching for CreateOperationSuite and Create2OperationSuite 09431 by in

fix: recordCache to commit added entries and implemented correctly the remove elements from the queue by in

fix: Fix and enable all Schedule HapiTests by in

fix: implement sidecars by in

feat: add setting for birth round ancient threshold by in

chore: drop chatter by in

chore: remove state info by in

chore: Rename contract causing services regression due to long name by in

fix: state leak by in

➡ See the full list of changes .

chore: bump HAPI proto version by in

fix: Ensure that the pending creation customizer applies to the address being created by in

chore: bump HAPI proto version by in

feat: wiring diagram improvements by in

chore: Change HashMap to LinkedHashMap in custom fees assessment by in

feat: add implementation in throttling facility to handle N-Of-Unscaled type of throttling by in

build: do not publish test fixtures by in

build: patch everything we use to be a real Java Module by in

chore!: More common tests moved to correct module by in

feat: Config constants created & used by in

feat: script for cleaning build files by in

fix: Compact last PCES file at boot time by in

feat: sync++- by in

➡ See the full list of changes .

fix: Added a feature flag which is by default enabled to disable tokenBalances and tokenRelationships in getAccountInfo, getAccountBalance and getContractInfo queries.

Populate evm function result on failing eth transaction by in

Disable compression. by in

Fix tests in unique token management spec by in

enaled one more test and remove the other one that not really in use by in

Enable tests from CannotDeleteSystemEntitiesSuite by in

Fix tests in ContractBurnHTSSuite by in

Tune dependency scopes by in

unneeded calls to swirlds-common removed by in

Fixed CryptoRecordsSanityCheckSuite by in

Enable test from AssociatePrecompileSuite by in

Enforce NFT allowance check on auto-creation by in

Catch UncheckedIOException during PCES file copy. () by in

Fix PCES copy bugs. ()

Re-add bootstrap.properties file to maintain downstream processes and increase accounts.maxNumber=20_000_000

8815: sort dirty leaves during flush

Add setting to disable critical quorum.

Add a doc for all system entity numbers

08566 - Validate PCES Events When Loading State On Different Network

Differential testing analytic engine: State file file dumper now dumps special files

Added improved startup ASCII art.

Characterize invalid id failure modes for classic HTS calls

Add ordinals to status diagram, and update javadocs

5552: Create a Grafana Data Dashboard to view all existing relevant data metrics

Update Besu to version 23.10.0

➡ See the full list of changes .

HIP-786 ()

Update Besu to 23.10.0 - cherry pick ()

Update the Besu EVM library to version 23.7.2 ()

"Productizing" contract disassembler at last ()

Auto sidecar validations ()

Create fat jar with services CLI so it can be run standalone ()

Upgrade platform SDK ()

0.42 account balance test ()

Re-add bootstrap.properties file and increase accounts.maxNumber=20_000_000 ()

Chore: normalize configuration values (release/0.42) ()

8751: No data source metrics for accounts, NFTs, or token rels ()

Add EIP 2930 support to EthTXData ()

Provide entity and throttle dashboards ()

07748 Postconsensus signature gathering ()

Enable EIP-2930 transactions by default ()

7570: Remove JasperDB ()

Remove support for legacy sync gossip. ()

Disable account balance exports ()

Modify config to support state on disk by default ()

Ethereum transaction type support is expanded to include type 1 transactions () which follow EIP 2930 RLP encoding. This increases the number of native EVM tools and scenarios the Hedera Smart Contract Service supports.

NFT mint pricing is changed to linearly scale based on number of serials minted. Also, minting a single NFT in collection is changed to cost $0.02 from $0.05.

The 0.40 release of Consensus Node delivers . Smart contract developers using the Hedera public mirror node can now track contract nonces as they would on e.g., Ethereum. Use cases might include troubleshooting failed contract calls or writing unit tests that validate transaction ordering based on CREATE1 addresses (once these are set by default in release 0.41+).

Open source contributors to the project will notice major refinements in the Gradle build, thanks to 's expert touch.

VirtualRootNode constructor creates a cache object that doesn't get reused

Implement blocklisting of EVM addresses

Optimize virtual node cache flush strategy

HIP-721: 06026 - add software version to events

Implement CryptoCreate handle method

UtilPrng handle Implementation

Add a PCLI sub command to sign services stream files

Implement token freeze handling

Implement token unfreeze handle()

Combine Admin and Network modules

Implement the modular Pre-Handle Workflow

Move hashes out of leaves node in VirtualMap

TokenFeeScheduleUpdate handle() implementation

Basic File service implementation

Implement Token Association to Account

Implementation of handle workflow

Implement the modular record cache

CryptoDelete handle implementation

Upgrade EVM to Shanghai

EVM version update and optimizations

Turn on the Shanghai version of the EVM in previewnet

Update hedera-protobufs-java version to 0.38.10

Add PCLI command to sign account balance files

Implement topic deletion prehandle ()

Generalize workflows enabled and add workflow ports ()

Pre-handle improvements ()

Support auto-scheduling operations by type within a suite ()

Add SPI and App components supporting TransactionDispatcher for modularized HCS ()

added the missing functionality to FileSignTool ()

Consensus Message Submission Prehandle ()

Add IngestChecker mono adapters for sigs and solvency ()

[HIP-583] Finalize hollow accounts via any required signature in a txn ()

Remove CryptoCreate capability to create hollow accounts ()

Populate EVM Address in CryptoTranscation ()

Enable All EVM E2E suites to run with Ethereum Calls ()

Add tracking of property changes for hollow account completion ()

Adding support for Redirect Token Calls fro evm-module ()

Update FileSignTool ()

Adding block number tool ()

Add client.workflow.operations and test with workflows ()

to expand alias support in CryptoCreate & CryptoTransfer Transactions.

Services v0.34.0 completes the implementation of .

for making payer of the CryptoTransfer sponsor for auto-creation. It also enables auto-creation with Token transfers in addition to Hbar transfers.

for allowing zero unit fungible token transfers

for enabling token creators an option to exempt all of their token’s fee collectors from a custom fee.

Adds support of the ERC20/721 transferFrom method for HTS precompiles from .

Services 0.30 completes the for making Hedera native tokens manageable via smart contracts. There are five new system contracts: getTokenExpiryInfo(address), updateTokenExpiryInfo(address, Expiry), isToken(address token), getTokenType(address token), and updateTokenInfo(address, HederaToken).

⚠️ Contract authors should know this release initiates Hedera's . There will be two visible effects immediately after the 0.30 upgrade:

Mirror node operators will be able to use the daily NodeStakeUpdate export to track the current values of . Please review the linked protobuf comments for more details on these properties.

In Services 0.29 we have followed the to give contract authors many new ways to inspect and manage HTS tokens.

will be enabled on testnet and mainnet in this release.

Please note this that will change how clients fetch token associations and balances after the November release in this year. At that time, mirror nodes will become the exclusive source of token association metadata. This is because made token associations unlimited, so in the long run it will not be efficient for consensus nodes to serve this information.

Services 0.28 gives Hedera devs a new dApp building block in . HAPI has a new with a prng transaction that generates a record with either a pseudorandom 48-byte seed, or an integer in a requested range.

Smart contracts can also get pseudorandom values by calling a new system contract at address 0x169, using the interface as in . Applications might include NFT mint contracts, lotteries, and so on.

Extends to the ERC-20 and ERC-721 functions allowance, getApproved, and isApprovedForAll.

The 0.27 release of Consensus Node initiates the first phase of . We deeply appreciate the community’s feedback on this critical feature!

Observant readers might recall that an earlier of Services 0.27 also enabled . This is a complex feature with some deep implications, and we have decided to defer for one more release before going to production.

In this release, we are excited to deploy support for . and .

HIP-410 adds a HAPI EthereumTransaction by which an account that was with an can submit Ethereum transactions to Hedera by signing with its ECDSA key. (Standard Ethereum restrictions on the sender's nonce apply.) Please see HIP-410 for details, including a summary of some very compelling 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 also anticipates such use cases by standardizing the concept of a Hedera "block"; this is important for a full implementation of the . 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.

Consensus Node 0.26 implements , allowing smart contract developers to use the familiar and "operator approval" with both fungible and non-fungible HTS tokens.

The Consensus Node 0.25 release brings good news for HTS users who manage large numbers of token types, as it delivers . In particular, a single account can now serve as treasury for any number of token types. (Please do note the CryptoService HAPI queries still return information for only an account’s 1000 most recently associated tokens; mirror nodes remain the best source for full history.)

We are also very excited to announce support for . This HIP supercharges contract integration, making it possible for a smart contract to create a new HTS token---fungible or non-fungible, with or without custom fees. (An interested Solidity developer might consult the examples in .)

In a harbinger of , this release will also enable . Token owners can now approve other accounts to manage their HTS tokens or NFTs, in direct analogy to the approve() and transferFrom() mechanisms in ERC-20 and ERC-721 style tokens.

HIP-336 implementation

HIP-358 implementation

HIP-367 implementation

ERC view functions now usable in ContractCallLocalQuery

In the 0.24 release of Consensus Node, we are excited to give smart contract developers a new level of interoperability with native Hedera Token Service (HTS) tokens via . The Hedera EVM now exposes every HTS fungible token as an ERC-20 token at the address of the token’s 0.0.X entity id; and analogously, every HTS non-fungible token appears as an ERC-721 token. This means a smart contract can look up its balance of a fungible HTS token; or change its behavior based on the owner of a particular HTS NFT. Please see the linked HIP for full details.

One change to the Hedera API (HAPI) is that we now have enough evidence to conclude the experimental getAccountNftInfos and getTokenNftInfos queries do not have a favorable cost/benefit ratio, and these queries are now .

Consensus Node 0.23 fleshes out our smart contract service via the implementation of . Smart contract developers are now free to use the CREATE2 EVM opcode. A typical use case is a distributed exchange that wants its pair contracts to have deterministic addresses based on the tokens in the pair.

Please note two issues fixed in this release. , in release 0.22, the nodes returned the bytes ledger_id stipulated by as a UTF-8 encoding of a hex string. The returned bytes are now the big-endian representation of the ledger's numeric id. , prior to this release, the record of a dissociateToken from a deleted token did not list the discarded balance of the dissociated account if the token's treasury was missing. This is now fixed.

The 0.22 release is a paradigm shift for Consensus Node, as we deliver the next major step in our Smart Contracts 2.0 roadmap on the strength of the protean , a technical foundation for scaling the world state of our ledger to billions of entities without sacrificing the high TPS enabled by the hashgraph consensus algorithm.

Network EVM capacity increased to 15M gas-per-second. (Please see for details.)

Solidity integration with native HTS tokens. (Please see for details.)

We expect more progress in these directions over the coming releases. Do note that the gas usage of the HTS integrations is still evolving; follow to track the finalized gas charges leading up to mainnet release.

There are two other HIP's included in this release not related to the smart contract service. First, enhances queries like CryptoGetInfo with a ledger id that marks which Hedera network answered the query. Second, allows a client to include the expected decimals for a token in a CryptoTransfer. This means a hardware wallet can guarantee its token transactions will have the precision seen by the user in the device display.

While we are gaining momentum in our smart contracts roadmap, we are also deeply committed to improving the developer experience, and welcome issues and ideas in our and !

In Consensus Node 0.21 we are pleased to announce support for and .

Auto-account creation lets a new user receive ℏ via a CryptoTransfer without having already created an 0.0.X id on the network. The new user only needs to provide their public key, and when a sponsor account sends ℏ "to" their key via a new , the network automatically creates an account with their key. Additional transfers to and from an auto-created account may also use its alias instead of the account id.

An alias may also be used to get the account balance and account info for the account. (Do note there is a that causes the getAccountInfo query response to echo back the account alias instead of its 0.0.<num> id; this will be fixed in the next release. Please use the free getAccountBalance query to check the 0.0.<num> id that corresponds to an alias.) You will be able to use the alias in all other transactions and queries in a future release.

The main deliverables in this release are improved automation for node operators to use in software upgrades; and a handful of minor bug fixes, including for .

The , which is redundant given the existence of the .

The , as this limit is now simply a side-effect of the given gas limit.

In Consensus Node 0.19, we are thrilled to announce migration of the Hedera smart contract service to the Hyperledger Besu EVM, as laid out in . This enables support for the latest v0.8.9 Solidity contracts, and harmonizes our gas schedule with that of the “London” hard fork. The Besu migration also sets the stage for a step change in smart contract performance on Hedera.

Two other HIPs targeting the Hedera Token Service go live in this release. First, the feature set is now enabled, so that any account that has been configured with a non-zero maxAutoAssociations can receive air-drops (i.e., units or NFTs of a token type without explicit association). Second, we have also implemented , which provides a safety measure for token types created with a pauseKey. If a TokenPause is submitted with this key’s signature, then all operations on the token will be suspended until a subsequent TokenUnpause.

We are happy to also announce that accounts can be customized to take advantage of the upcoming feature set. That is, an account owner can now "pre-pay" for token associations via a or transaction, without knowing in advance which specific token types they will use.

Developers will likely appreciate two other release 0.18.1 items. First, we have migrated to for dependency injection. Second, there is a new getExecutionTime query in the that supports granular performance testing in development environments.

In Consensus Node 0.18.0, we are happy to announce support for . This feature lets an Hedera account owner "pre-pay" for token associations via a or transaction, without knowing in advance which specific token types they will use.

Developers will likely appreciate two other release 0.18.0 items. First, we have migrated to for dependency injection. Second, there is a new getExecutionTime query in the that supports granular performance testing in development environments.

In Consensus Node 0.17.2, we are excited to announce support for , with a complementary extension to that lets an NFT creator set a royalty fee to be charged when fungible value is exchanged for one of their creations.

In Consensus Node 0.16.0, we are excited to announce support for .

The five case studies in show the basics of how custom fees are charged, and how they appear in records. Note that at most two "levels" of custom HTS fees are allowed, and custom fee-charging cannot require changing more than 20 account balances.

⚠️ There is one variation on custom fees that requires a work-around in this release. Specifically, if a fixed fee should be collected in the units of the "parent" token to whose schedule it belongs, then in Release 0.16.0 this must be accomplished using a FractionalFee as described in . In Release 0.17.0 the more natural FixedFee configuration will be available.

In this release, we have also enabled previewnet support for . Unique token types and minted NFTs are more natural for many use cases than fungible token types. The Hedera Token Service will soon support both natively, so that a single CryptoTransfer can perform atomic swaps with any arbitrary combination of fungible, non-fungible, and ℏ transfers.

We have also finalized the design for the non-fungible token (NFT) support to be added to the Hedera Token Service (HTS) in release 0.16.0. The protobufs for new HAPI operations are available in the 0.15.0 tag of the GitHub repository. To simplify fee calculations, there is now a maximum entity lifetime of a century for any entity whose lifetime is not _already_ constrained by the maximum auto-renew period. A HAPI transaction that tries to set an expiration further than a century from the current consensus time will resolve to INVALID_EXPIRATION_TIME.

In Consensus Node 0.14.0, we have implemented account auto-renewal according to the specifications of . This feature will not be enabled until a later date, after ensuring universal awareness of its impact in the user community.

In Consensus Node v0.13.0, we have schedule transactions. The new design gives collaborating nodes a well-defined workflow if they happen to schedule identical transactions, even if they are using different gRPC client libraries (for example, Go and JavaScript). The new design also reduces the number of signatures required to submit a valid ScheduleSign transaction in many common use cases. Users will be able to schedule CryptoTransfer and ConsensusSubmitMessage transactions in this release. Other transaction types will be introduced in future releases.

This release deprecates three fields in the for system files 0.0.101 and 0.0.102. The three deprecated fields are ipAddress, portno, and memo. When we rely on these fields, we cannot concisely represent node with multiple IP addresses. For example, take mainnet node 0 (account 0.0.3), which as of this writing has proxy IPs 13.82.40.153, 34.239.82.6, and 35.237.200.180. The mainnet 0.0.101 file must include a NodeAddress entry for each proxy, which means duplicating fields like nodeCertHash.

In Consensus Node v0.12.0, we completed the MVP implementation of the Hedera Scheduled Transaction Service (HSTS) as detailed in design document. This service decouples what should execute on the ledger from when it should execute, giving new flexibility and programmability to users. Note that HSTS operations are enabled on Previewnet, but remain disabled on Testnet and Mainnet at this time.

In a final Hedera API (HAPI) change, we have extended the memo field present on contract and topic entities to the account, file, token, and scheduled transaction entities. (Note this memo is distinct from the short-lived memo that may be given to any TransactionBodyfor inclusion in the TransactionRecord.) All of these changes to HAPI are now more easily browsed via GitHub pages ; the new is now the authoritative source of the protobuf files defining HAPI.

Apart from these enhancements to HAPI, the "streams" consumable by mirror node operators now include an alpha version of a protobuf file that contains the same information as the _Balances.csv files. The type of this file is .

In Consensus Node v0.11.0, we upgraded the record stream format from v2 to v5 and the event stream format from v3 to v5. These changes are described in detail in the "Record and Event Stream File Formats" .

We also updated startup code to make the number of system accounts in development and pre-production networks match the number of system accounts on mainnet, account numbers 900-1000 on startup if they do not exist.

In Consensus Node v0.10.0, we improved the usability of the Hedera Token Service (HTS) with a newTotalSupply field in the receipts of TokenMint and TokenBurn transactions. Without this field, a client must follow the entire record stream of a token's supply changes to be certain of its supply at the consensus timestamp in the receipt. (Note that HTS operations are now enabled on Previewnet and Testnet, but remain disabled on Mainnet at this time. Please consult the for HTS semantics.)

In Consensus Node v0.9.0, we finished the alpha implementation of the Hedera Token Service (HTS). Note that all HTS operations are enabled on Previewnet, but remain disabled on Testnet and Mainnet. Please consult the for HTS semantics.

Deprecated fields related to threshold records in HAPI protobuf

First drafts of tokenCreate, tokenUpdate, tokenDelete, tokenTransfer, tokenFreeze, tokenUnfreeze, tokenGrantKyc, tokenRevokeYc, tokenWipe, and getTokenInfo HAPI operations. and

Migrate to Swirlds SDK release 0.7.3 with appropriate settings and logging configurations ,

Update HCS topic running hash to include the payer account id

Add zero-stake node functionality

Add new stats for the average size of HCS submit message transactions that got handled and for counting the number of platform transactions not created per second ,

Change gRPC CipherSuite to be CNSA compliant

Make recordLogPeriod dynamic with a default of 2 seconds

Add record with 3-min expiry to effective payer account after handling transaction

Enhancements for going open source ,

Clarify interpretation of response codes UNKNOWN and PLATFORM_TRANSACTION_NOT_CREATED ,

Prevent CryptoCreate and CryptoUpdate transactions from giving an account an empty key ,

Fix incorrect submitted smart contract transactions count

Validate total ledger balance before starting up Services

Add a new rolling file to log all queries with controlled maximum rate

Other minor bugs

In Consensus Node v0.6.0, we’ve enhanced the Hedera Consensus Service by supporting . We added, into the ConsensusSubmitMessageTransactionBody, an optional field for the current chunk information. For every chunk, the payer account that is part of the initialTransactionID must match the Payer Account of this transaction. The entire initialTransactionID should match the transactionID of the first chunk, but this is not checked or enforced by Hedera except when the chunk number is 1.

v0.5.8 includes all of the updates found in

You may get more information regarding transaction record fees .

Learn more about Hedera SXC .

Build version.0 -

Build version.1 -

Build version.2 -

Build version.3 -

Build version.4 -

Build version.5 -

Hedera status page
Build 0.62.2
@Neeharika-Sompalli
#19087
@Neeharika-Sompalli
#19115
@Neeharika-Sompalli
#19130
@derektriley
#19140
@lpetrovic05
#19104
@imalygin
#19108
@Neeharika-Sompalli
#19144
v0.62.1...v0.62.2
Build 0.62.1
@vtronkov
#18968
#18916
@Neeharika-Sompalli
#18992
@vtronkov
#19012
#19006
@derektriley
#19057
#18991
@Neeharika-Sompalli
#19050
#19051
@mhess-swl
#19073
v0.62.0...v0.62.1
Build 0.62.0
#18797
#18743
#18882
#18867
#18766
#18737
#18850
#18535
#18548
#18646
#18747
#18536
#18625
#18389
#18611
#18590
#18524
#18539
#18506
#18450
#18515
#18441
#18481
#18321
#18312
#18092
#18906
#18863
#18888
#18876
#18868
#18859
#18857
#18854
#18651
#18835
#18834
#18674
#18830
#18816
#18822
#18814
#18580
#18765
#18796
#18806
#18802
#18671
#18790
#18708
#18698
#18728
#18604
#18576
#18577
#18687
#18427
#18657
#18659
#18620
#18654
#18391
#18582
#18592
#18464
#18563
#18474
#18557
#18554
#18387
#18512
#18510
#18417
#18411
#18304
#18470
HIP-1064
HIP-551
#17478
Build 0.61.7
@Neeharika-Sompalli
#19195
@tinker-michaelj
#19217
v0.61.6...v0.61.7
Build 0.61.6
@Neeharika-Sompalli
#19127
v0.61.5...v0.61.6
Build 0.61.5
@Neeharika-Sompalli
#19114
v0.61.4...v0.61.5
Build 0.61.4
@mhess-swl
#18884
@artemananiev
#18799
@tinker-michaelj
#18913
v0.61.3...v0.61.4
Build 0.61.3
@derektriley
#18792
@derektriley
#18787
@derektriley
#18808
@derektriley
#18788
@derektriley
#18807
@Neeharika-Sompalli
#18853
v0.61.2...v0.61.3
Build 0.61.2
#18699
@Neeharika-Sompalli
#18701
#18557
@abies
#18586
@artemananiev
#18736
@derektriley
#18732
v0.61.1...v0.61.2
Build 0.61.1
#18500
@Neeharika-Sompalli
#18511
@ibankov
#18522
@derektriley
#18564
@imalygin
#18505
@tinker-michaelj
#18562
@Neeharika-Sompalli
#18570
@Neeharika-Sompalli
#18621
@tinker-michaelj
#18660
@Neeharika-Sompalli
#18679
@Neeharika-Sompalli
#18680
v0.61.0...v0.61.1
Build 0.61.0
#18051
#18277
#18055
#18013
#18239
#18133
#18005
#17942
#17994
#18073
#18088
#18010
#17333
#18399
#18400
#18385
#18407
#18394
#18372
HIP-1021
Build 0.60.1
@timo0
#18423
@imalygin
#18432
@artemananiev
#18723
v0.60.0...v0.60.1
Build 0.60.0
@lukelee-sl
#17548
@kimbor
#17486
@OlegMazurov
#17575
@Neeharika-Sompalli
#17513
@mhess-swl
#17293
@mhess-swl
#17529
@mhess-swl
#17581
@rbarker-dev
#17583
@MiroslavGatsanoga
#17461
@mxtartaglia-sl
#17580
v0.59.5...v0.60.0
HIP-991
HIP-755
HIP-756
Build 0.59.5
@poulok
#18359
v0.59.4...v0.59.5
Build 0.59.4
@artemananiev
#18303
@artemananiev
#18272
v0.59.3...v0.59.4
Build 0.59.3
@tinker-michaelj
#18261
v0.59.2...v0.59.3
Build 0.59.2
@tinker-michaelj
#18128
v0.59.1...v0.59.2
Build 0.59.0
@imalygin
#17130
@matteriben
#16239
@andrewb1269hg
#17149
@dependabot
#17113
@dependabot
#17111
@rbarker-dev
#17091
@rbarker-dev
#17158
@rbarker-dev
#17160
@rbarker-dev
#17161
@timo0
#17117
@mhess-swl
#16698
@lukelee-sl
#17165
v0.58.9...v0.59.0
#16958
#16959
#16983
#17354
#16900
#17021
#16990
#17029
#16843
#16850
#16857
Build 0.58.13
v0.58.11...v0.58.13
Build 0.58.11
v0.58.10...v0.58.11
Build 0.58.10
v0.58.9...v0.58.10
Build 0.58.9
@tinker-michaelj
#17777
v0.58.7...v0.58.9
Build 0.58.8
@tinker-michaelj
#17637
@tinker-michaelj
#17690
v0.58.6...v0.58.7
Build 0.58.7
@tinker-michaelj
#17637
@tinker-michaelj
#17690
v0.58.6...v0.58.7
Build 0.58.6
@mhess-swl
#17543
v0.58.5...v0.58.6
Build 0.58.5
#17218
@artemananiev
#17296
@tinker-michaelj
#17354
#17424
@tinker-michaelj
#17430
@iwsimon
#17368
@artemananiev
#17473
@mhess-swl
#17539
v0.58.3...v0.58.5
Build 0.58.3
@iwsimon
#17289
v0.58.2...v0.58.3
Build 0.58.0
@mhess-swl
#16719
@artemananiev
#16757
@JivkoKelchev
#16017
@Neeharika-Sompalli
#16615
@Neeharika-Sompalli
#16776
@mishomihov00
#16662
@rbarkerSL
#16760
@mishomihov00
#16706
@dependabot
#16725
@imalygin
#16799
@dependabot
#16232
@boooby19
#16767
@PavelSBorisov
#16701
@timfn-hg
#16917
v0.57.3...v0.58.0
HIP-423
Build 0.57.5
#17200
@rbarkerSL
#17235
v0.57.4...v0.57.5
Build 0.57.4
@tinker-michaelj
#17196
v0.57.3...v0.57.4
Build 0.57.3
@kimbor
#17096
v0.57.2...v0.57.3
Build 0.57.2
@thomas-swirlds-labs
#17028
v0.57.1...v0.57.2
Build 0.57.1
@rbarkerSL
#16175
@dependabot
#16168
@dependabot
#16169
@dependabot
#16101
@mustafauzunn
#16138
@mustafauzunn
#16113
@JeffreyDallas
#16188
@stoyanov-st
#16118
@stoyanov-st
#16141
@leninmehedy
#16133
v0.56.7...v0.57.1
HIP-904
HIP-632
Build 0.56.7
@kimbor
#16852
v0.56.6...v0.56.7
Build 0.56.6
@mhess-swl
#16753
v0.56.5...v0.56.6
Build 0.56.5
@jsync-swirlds
#16659
@tinker-michaelj
#16666
v0.56.4...v0.56.5
Build 0.56.0
@Neeharika-Sompalli
#15549
@tinker-michaelj
#15568
@Neeharika-Sompalli
#15618
@rbarkerSL
#15363
@OlegMazurov
#15627
@timo0
#15629
@thomas-swirlds-labs
#15515
@povolev15
#15765
@rbarkerSL
#15768
@david-bakin-sl
#15772
@mhess-swl
#15778
@Evdokia-Georgieva
#15518
@Neeharika-Sompalli
#15622
@lukelee-sl
#15774
@timo0
#15570
@stoyanov-st
#15800
@anthony-swirldslabs
#15793
@Neeharika-Sompalli
#15781
@Neeharika-Sompalli
#15826
@tinker-michaelj
#15764
@mhess-swl
#15831
@thomas-swirlds-labs
#15472
@lpetrovic05
#15604
@lpetrovic05
#15785
@edward-swirldslabs
#15791
@netopyr
#15911
@nathanklick
#15914
@mhess-swl
#15780
@timo0
#15783
@mhess-swl
#15900
@JivkoKelchev
#15933
@rbarkerSL
#15928
@rbarkerSL
#15948
@rbarkerSL
#15956
@rbarkerSL
#15957
@artemananiev
#15960
@lpetrovic05
#15931
@dependabot
#15940
@dependabot
#15902
@rbarkerSL
#15965
@rbarkerSL
#15967
@rbarkerSL
#15968
@rbarkerSL
#15970
@tinker-michaelj
#15904
@rbarkerSL
#15974
@nathanklick
#15943
@tinker-michaelj
#15975
@MiroslavGatsanoga
#15554
@anthony-swirldslabs
#15952
@imalygin
#15543
@artemananiev
#15995
@dependabot
#15958
@tinker-michaelj
#15969
@derektriley
#15265
@MiroslavGatsanoga
#15522
@jjohannes
#15578
@tinker-michaelj
#15999
@jjohannes
#15471
@tinker-michaelj
#15834
@albertopasqualetto
#15927
@tinker-michaelj
#16006
@iwsimon
#15988
@tinker-michaelj
#15634
@MiroslavGatsanoga
#15908
@netopyr
#16015
@netopyr
#15302
@tinker-michaelj
#16028
@stoyanov-st
#15595
@netopyr
#16043
@tinker-michaelj
#16031
@iwsimon
#16050
@edward-swirldslabs
#16048
@rbair23
#14772
@mustafauzunn
#15837
@san-est
#16036
@tinker-michaelj
#16053
@rbarkerSL
#15971
@derektriley
#16120
@tinker-michaelj
#16075
@lukelee-sl
#16063
@Neeharika-Sompalli
#16062
@rbarkerSL
#16122
@stoyanov-st
#15912
@stoyanov-st
#15435
@edward-swirldslabs
#16025
@rbarkerSL
#16140
@rbarkerSL
#16154
@rbarkerSL
#16159
@stoyanov-st
#16054
@mishomihov00
#16176
@netopyr
#16178
@stoyanov-st
#15996
@lukelee-sl
#16095
@derektriley
#16167
@anthony-swirldslabs
#16102
#420
@Neeharika-Sompalli
#16148
@kimbor
#16130
@mhess-swl
#16131
@kimbor
#16184
@derektriley
#16061
@albertopasqualetto
#15927
@san-est
#16036
@mishomihov00
#16176
v0.55.1...v0.56.0
Build 0.55.2
@rbarkerSL
#16358
@vtronkov
#16339
v0.55.1...v0.55.2
Build 0.55.1
@iwsimon
#16045
v0.55.0...v0.55.1
Build 0.55.0
@edward-swirldslabs
#13747
@tinker-michaelj
#15271
@imalygin
#15268
@ibankov
#15279
@jjohannes
#15143
@jjohannes
#15276
@kimbor
#15298
@povolev15
#15267
@tinker-michaelj
#15294
@iwsimon
#15319
@artemananiev
#15296
@imalygin
#15274
@thomas-swirlds-labs
#15286
@tinker-michaelj
#15331
@tinker-michaelj
#15324
@JeffreyDallas
#15228
@tungbq
#14264
@tinker-michaelj
#15326
@mhess-swl
#15339
@mhess-swl
#15321
@edward-swirldslabs
#15289
@tinker-michaelj
#15346
@david-bakin-sl
#15281
@edward-swirldslabs
#15340
@netopyr
#15353
@tinker-michaelj
#15300
@hendrikebbers
#13919
@jjohannes
#15372
@jjohannes
#15371
@povolev15
#15360
@lukelee-sl
#15364
@jjohannes
#15373
@lpetrovic05
#15400
@timo0
#15207
@jjohannes
#15374
@tinker-michaelj
#15388
@mxtartaglia-sl
#15406
@artemananiev
#15165
@tinker-michaelj
#15395
@jjohannes
#15399
@tinker-michaelj
#15387
@tinker-michaelj
#15396
@jjohannes
#15370
@tinker-michaelj
#15392
@imalygin
#15389
@tinker-michaelj
#15422
@Neeharika-Sompalli
#15325
@mhess-swl
#15390
@anthony-swirldslabs
#15441
@lukelee-sl
#15004
@mustafauzunn
#15019
@tinker-michaelj
#15429
@edward-swirldslabs
#15465
@stoyanov-st
#15446
@anthony-swirldslabs
#15457
@stoyanov-st
#15445
@tinker-michaelj
#15462
@artemananiev
#15468
@lpetrovic05
#15432
@poulok
#15447
@tinker-michaelj
#15444
@OlegMazurov
#15529
@jjohannes
#15470
@artemananiev
#15439
@edward-swirldslabs
#15160
@artemananiev
#15512
@lpetrovic05
#15417
@stoyanov-st
#15520
@petreze
#15299
@tinker-michaelj
#15480
@OlegMazurov
#15534
@Evdokia-Georgieva
#15348
@jjohannes
#15473
@tinker-michaelj
#15564
@imalygin
#15544
@lpetrovic05
#15519
@iwsimon
#15563
@mxtartaglia-sl
#15170
@tinker-michaelj
#15577
@timo0
#15556
@povolev15
#15609
#15549
@Neeharika-Sompalli
#15616
@rbarkerSL
#15771
@david-bakin-sl
#15776
@mhess-swl
#15779
@mhess-swl
#15832
@mhess-swl
#15901
@mhess-swl
#15936
@iwsimon
#15951
@tinker-michaelj
#15835
@tungbq
#14264
v0.54.2...v0.55.0
HIP-904
HIP-1010
Build 0.54.2
@mhess-swl
#15937
v0.54.1...v0.54.2
Build 0.54.1
@iwsimon
#15559
@tinker-michaelj
#15580
v0.54.0...v0.54.1
Build 0.54.0
@litt3
#14392
@lpetrovic05
#14364
@timo0
#14432
@anthony-swirldslabs
#14430
@OlegMazurov
#14470
@JivkoKelchev
#14278
@lpetrovic05
#14444
@stoyanov-st
#14424
@rbarkerSL
#14469
@david-bakin-sl
#14372
here
builds.hedera.com
zip
sha384
zip
sha384
zip
sha384
zip
sha384
zip
sha384
zip
sha384
HIP-719
ERC-20
ERC-721
HIP-904
HIP-850
HIP-993
Build 0.53.5
@iwsimon
#15232
@nathanklick
#15158
@rbarkerSL
#15175
Build 0.53.1
@lpetrovic05
#15016
Build 0.53.0
@imalygin
#13730
@jjohannes
#13757
@tinker-michaelj
#14050
@MiroslavGatsanoga
#14061
@tinker-michaelj
#13992
@lukelee-sl
#11441
@zhpetkov
#14036
@Neeharika-Sompalli
#14107
@cody-littley
#14056
@david-bakin-sl
#14130
here
HIP-632
HIP 904
Build 0.52.3
@Neeharika-Sompalli
#14881
Build 0.52.2
@nathanklick
#14777
@tinker-michaelj
#14799
Build 0.52.1
@rbarkerSL
#14513
@rbarkerSL
#14490
#14599
@rbarkerSL
#14602
@tinker-michaelj
#14609
Build 0.52.0
@tinker-michaelj
#13540
@jjohannes
#13643
@jjohannes
#13644
@cody-littley
#13635
@Neeharika-Sompalli
#13549
@derektriley
#13615
@jjohannes
#11838
@anthony-swirldslabs
#13650
@kfa-aguda
#13010
@MiroslavGatsanoga
#12787
here
v0.51
HIP 206
HIP 906
0.51.5
@anthony-swirldslabs
#13027
@lpetrovic05
#13002
@MiroslavGatsanoga
#12786
@cody-littley
#12897
@cody-littley
#13083
@tinker-michaelj
#13104
@tinker-michaelj
#13070
@tinker-michaelj
#13020
@artemananiev
#13097
@iwsimon
#13090
here
v0.50
0.50.1
@lukelee-sl
#13662
@rbarkerSL
#13712
@Neeharika-Sompalli
#13676
@netopyr
#13716
@netopyr
#13769
here
0.50.0
@alittley
#11685
@david-bakin-sl
#11409
@imalygin
#11756
@vtronkov
#11489
@anastasiya-kovaliova
#11327
@cody-littley
#11769
@cody-littley
#11780
@mxtartaglia-sl
#11754
@cody-littley
#11801
@JeffreyDallas
#11790
here
v0.49
0.49.7
@tinker-michaelj
#13148
@tinker-michaelj
#13185
0.49.6
#13071
@povolev15
#13091
#12811
@Neeharika-Sompalli
#13088
@tinker-michaelj
#13106
@tinker-michaelj
#13123
0.49.5
@tinker-michaelj
#13056
0.49.1
@tinker-michaelj
#12911
0.49.0
@lukelee-sl
#11323
@artemananiev
#11349
@lpetrovic05
#11075
@poulok
#11330
@lpetrovic05
#11352
here
v0.48
0.48.1
@tinker-michaelj
#12826
0.48.0
#11429
@alittley
#12679
v0.47
0.47.4
#12339
0.47.3
#12053
0.47.2
0.47.1
@alittley
#11673
@cody-littley
#11671
#11304
@artemananiev
#11747
0.47.0
@cody-littley
#10687
@JivkoKelchev
#10185
@povolev15
#10523
@povolev15
#10551
@JivkoKelchev
#9815
@cody-littley
#10660
@cody-littley
#10670
@cody-littley
#10685
@stoqnkpL
#10700
@cody-littley
#10690
here
v0.46
0.46.3
@tinker-michaelj
#11232
0.46.2
@lukelee-sl
#11213
0.46.1
@tinker-michaelj
#11232
0.46.0
@cody-littley
#10233
@Neeharika-Sompalli
#10240
@MiroslavGatsanoga
#10142
@jjohannes
#10147
@jjohannes
#10056
@hendrikebbers
#10133
@hendrikebbers
#10117
@cody-littley
#10190
@cody-littley
#10257
@cody-littley
#10260
here
v0.45
0.45.2
#10639
0.45.0
@stoqnkpL
#9453
@cody-littley
#9554
@mhess-swl
#9537
@povolev15
#9557
@Ivo-Yankov
#9440
@agadzhalov
#9572
@jjohannes
#8455
@hendrikebbers
#9003
@iwsimon
#9551
@mustafauzunn
#9571
v0.44
0.44.3
@tinker-michaelj
e69d0a9
0.44.2
#10083
@cody-littley
#10087
0.44.1
#10057
#10062
0.44.0
#8915
#8981
#8961
#8993
#8568
#8991
#9028
#9053
#9108
#8845
#9168
here
v0.43
#8620
#9199
#8472
#8563
#8404
#8519
v0.42
0.42.6
#9224
0.42.2
#8866
#8928
0.42.1
#8668
#8798
0.42.0
#7696
#7774
#7776
#7786
#7803
#8059
#8272
#8510
v0.41
#7670
#7769
v0.40
HIP-729 ~ "Contract Accounts Nonce Externalization"
@jjohannes
v0.39
#6321
#5799
#5568
#6236
#6112
#6310
#6309
#6467
#6502
#6511
#6291
#5825
#6582
#6522
#6609
#6476
#6754
#6694
v0.38
#5964
#5962
#6212
#6579
#6264
v0.37
#5033
#5032
#5056
#5054
#5062
#5100
#5059
#5098
#4990
#4998
#5010
#4375
v0.36
#4647
#4880
#4988
#4997
#5053
v0.35
0.35.2 Hedera Smart Contract Service Security Model Changes
HIP-583
v0.34
0.34.3
0.34.0
HIP-583
v0.33
v0.31
HIP-542 roadmap
HIP-564 roadmap
HIP-573 roadmap
HIP-514 roadmap
v0.30
HIP-514 roadmap
expiration and rent model for contracts
several key staking properties
v0.29
HIP-514 roadmap
HIP-435 Record Stream v6
important deprecation
HIP-367
v0.28
HIP-351 (Pseudorandom Numbers)
UtilService
here
this example
ContractCallLocal support
v0.27
HIP-406 (Staking)
alpha release
HIP-423 (Long Term Scheduled Transactions)
v0.26
HIP-410 (Wrapping Ethereum Transaction Bytes in a Hedera Transaction)
HIP-415 (Introduction Of Blocks)
auto-created
ECDSA(secp256k1) key
Ethereum JSON-RPC API
HIP-376
EIP-20
EIP-721
v0.25
HIP-367 (Unlimited Token Associations per Account)
HIP-358 (Allow TokenCreate through Hedera Token Service Precompiled Contract)
this contract
more upcoming HTS precompile support
HIP-336 (Approval and Allowance API for Tokens)
#2814
#3015
#2917
#3061
v0.24
HIP-218 (Smart Contract interactions with Hedera Token Accounts)
permanently disabled
v0.23
HIP-329 (Support CREATE2 opcode)
First
HIP-33
Second
v0.22
HIP-25
HIP-185
HIP-206
this issue
HIP-33
HIP-31
GitHub repository
Discord
v0.21.0
ECDSA(secp256k1) keys
auto-account creation
AccountID.alias field
known issue
v0.20.0
#2432
ContractUpdateTransactionBody.fileID field
ContractGetBytecode query
ContractCallLocalQuery.maxResultSize field
v0.19.4
v0.19.3
HIP-26
HIP-23
HIP-24
v0.18.1
HIP-23 (Opt-in Token Associations)
CryptoCreate
CryptoUpdate
Dagger2
NetworkService
HIP-23 (Opt-in Token Associations)
CryptoCreate
CryptoUpdate
Dagger2
NetworkService
v0.17.4
HIP-17 (Non-fungible Tokens)
HIP-18 (Custom Hedera Token Service Fees)
v0.17.3
v0.17.2
v0.16.1
HIP-18 (Custom Hedera Token Service Fees)
this document
this issue
HIP-17 (Non-fungible Tokens)
v0.15.1
hedera-protobufs
v0.14.0
HIP-16
v0.13.2
redesigned
protobuf
v0.12.0
this
here
hashgraph/hedera-protobufs repository
AllAccountBalances
v0.11.0
article
creating
v0.10.0
SDK documentation
v0.9.0
SDK documentation
v0.8.1
v0.8.0
#506
#505
#522
v0.7.0
#347
#427
#88
#274
#316
#334
#215
#315
#348
#378
#379
#314
#394
#58
#60
#371
#258
#59
#373
v0.6.0
HCS Topic Fragmentation
v0.5.8
here
here
v0.5.0