Skip to content

Releases: ava-labs/avalanchego

Helicon: Continuous Execution & Auto-Renewed Staking | Fuji Pre-Release

Choose a tag to compare

@StephenButtolph StephenButtolph released this 21 Jul 23:03
v1.15.0-fuji
e8f9781

Please note that this release is unable to run mainnet - and will display "mainnet is not supported" if attempted to run with a mainnet configuration.

This release schedules the activation of the following Avalanche Community Proposals (ACPs):

  • ACP-194 C-Chain Continuous Execution
  • ACP-236 Auto-Renewed Staking
  • ACP-267 Validator Uptime Requirements Increase
  • ACP-273 Reduce Minimum Validator Staking Duration
  • ACP-283 Dynamic Minimum C-Chain Gas Price
  • ACP-285 Reduce Minimum Consumption Rate

The ACPs in this upgrade go into effect at 11 AM ET (3 PM UTC) on Tuesday, July 28th, 2026 on the Fuji Testnet.

All Fuji nodes must upgrade before 11 AM ET, July 28th 2026.

Missing Features

After Helicon activates, this version does not support C-Chain state sync. A version supporting state sync will be released prior to scheduling the Mainnet Helicon upgrade.

APIs

The wallet now supports the transaction types:

  • NewAddAutoRenewedValidatorTx
  • NewSetAutoRenewedValidatorConfigTx

C-Chain RPCs

  • All RPCs that rely on state, if called after a block is accepted, will return after the block is executed.
  • The admin API namespace is deprecated.
  • The warp API namespace is deprecated.
  • The avax.getAtomicTxStatus RPC is deprecated.
  • All APIs that rely on state of pending blocks is deprecated.
  • In the debug namespace, the following APIs are deprecated:
    • debug_dumpBlock
    • debug_preimage
    • debug_getBadBlocks
    • debug_accountRange
    • debug_storageRangeAt
    • debug_getModifiedAccountsByNumber
    • debug_getModifiedAccountsByHash
    • debug_getAccessibleState

Metrics

  • Histogram avalanche_snowman_consensus_latencies creates 8 buckets instead of 4, each a second wide.
  • Added avalanche_evm_sae_last_executed_height and avalanche_evm_sae_last_settled_height gauges, exposing SAE async-execution and settlement heights.
  • Added SAE execution-pressure metrics:
    • avalanche_evm_sae_execution_queue_duration_seconds (histogram): time from a block's acceptance into the execution queue until its execution completes.
    • avalanche_evm_sae_execute_block_duration_seconds (histogram): wall-clock time to execute a single block, including state commit and post-execution work.
    • avalanche_evm_sae_execution_queue_blocks (gauge): number of accepted blocks that have not yet completed execution.
    • avalanche_evm_sae_execution_queue_gas_limit (gauge): sum of the gas limits of accepted blocks that have not yet completed execution.
    • avalanche_evm_sae_executed_gas_charged_total (counter): cumulative gas charged by executed blocks (transaction gas used plus end-of-block operation gas).
    • avalanche_evm_sae_executed_gas_limit_total (counter): cumulative gas limit (worst-case gas) of executed blocks.
  • Added avalanche_evm_sae_in_memory_blocks (gauge): number of SAE blocks still live in memory (created but not yet garbage collected).
  • Added avalanche_evm_sae_accepted_gas_limit_total (counter): cumulative gas limit (worst-case gas) of blocks accepted into the execution queue; the acceptance-side counterpart of executed_gas_limit_total.
  • Added SAE gas-time and pricing metrics:
    • avalanche_evm_sae_last_executed_gas_time_seconds (gauge): gas time reached by the latest executed block, as a Unix timestamp.
    • avalanche_evm_sae_gas_time_wall_time_gap_seconds (gauge): gas time minus wall time, observed when the latest block finished executing; negative when gas time lags the wall clock.
    • avalanche_evm_sae_worst_case_base_fee (gauge): worst-case base fee admitted by consensus for the latest enqueued block.
    • avalanche_evm_sae_executed_base_fee (gauge): base fee realized by execution of the latest executed block.
    • avalanche_evm_sae_worst_case_gas_excess (gauge): worst-case gas excess admitted by consensus for the latest enqueued block.
    • avalanche_evm_sae_executed_gas_excess (gauge): gas excess realized by execution of the latest executed block.
    • avalanche_evm_sae_gas_target (gauge): ACP-176 gas target in force as of the latest enqueued block.
  • Added avalanche_evm_cchain_min_block_delay_seconds (gauge): ACP-226 minimum block delay currently in force, taken from the most recently executed block.
  • Renamed Coreth and Subnet-EVM state-sync p2p metrics:
    • avalanche_{vmName}_eth_net_tracked_peers -> avalanche_{vmName}_sdk_sync_peer_tracker_num_tracked_peers
    • avalanche_{vmName}_eth_net_responsive_peers -> avalanche_{vmName}_sdk_sync_peer_tracker_num_responsive_peers
    • avalanche_{vmName}_eth_net_average_bandwidth -> avalanche_{vmName}_sdk_sync_peer_tracker_average_bandwidth

NOTE: {vmName} is evm for Coreth/C-Chain and subnetevm for Subnet-EVM chains

Configs

New

  • helicon-min-stake-duration (only on local networks)
  • min-price-target for C-Chain

Deprecated in C-Chain

  • skip-upgrade-check
  • admin-api-enabled
  • admin-api-dir
  • warp-api-enabled
  • continuous-profiler-dir
  • continuous-profiler-frequency
  • continuous-profiler-max-files
  • rpc-gas-cap
  • rpc-tx-fee-cap
  • trie-dirty-cache
  • trie-dirty-commit-target
  • trie-prefetcher-parallelism
  • preimages-enabled
  • snapshot-wait
  • snapshot-verification-enabled
  • accepted-queue-limit
  • populate-missing-tries-parallelism
  • prune-warp-db-enabled
  • historical-proof-query-window
  • metrics-expensive-enabled
  • price-options-slow-fee-percentage
  • price-options-fast-fee-percentage
  • price-options-max-tip
  • tx-pool-price-limit
  • tx-pool-price-bump
  • tx-pool-lifetime
  • api-max-duration
  • ws-cpu-refill-rate
  • ws-cpu-max-stored
  • allow-unfinalized-queries
  • allow-unprotected-tx-hashes
  • keystore-directory
  • keystore-external-signer
  • keystore-insecure-unlock-allowed
  • push-gossip-percent-stake
  • push-gossip-num-validators
  • push-gossip-num-peers
  • push-regossip-num-validators
  • push-regossip-num-peers
  • push-gossip-frequency
  • pull-gossip-frequency
  • regossip-frequency
  • log-level
  • log-json-format
  • enable-db-inspecting-api
  • enable-profiling-api
  • offline-pruning-bloom-filter-size
  • max-outbound-active-requests
  • state-sync-skip-resume
  • state-sync-server-trie-cache
  • state-sync-commit-interval
  • state-sync-min-blocks
  • state-sync-request-size
  • inspect-database
  • accepted-cache-size
  • state-history
  • skip-tx-indexing
  • http-body-limit
  • batch-response-max-size

Features

  • Subnet-EVM allows providing the initial block delay at genesis via InitialMinDelayMS in the chain config.
  • Add transitionvm as a type of VM that can swap between two different implementations at a specific fork.

Fixes

  • Updated minimum Go version from v1.25.8 to v1.25.10.
  • Archival nodes with re-execution will correctly skip atomic transaction application.
  • Fixed bug where code syncer could finish with improper disk artifacts.
  • P-Chain ERROR logs during close are downgraded to WARN.

Full Changelog: v1.14.2...v1.15.0-fuji

What's Changed

Read more

Granite.2 - Benchlist Redesign

Choose a tag to compare

@StephenButtolph StephenButtolph released this 30 Mar 23:31
v1.14.2
6e5acf9

This version is backwards compatible to v1.14.0. It is optional, but encouraged.

The plugin version is updated to 45; all plugins must update to be compatible.

Breaking Changes

  • Removed graft/subnet-evm/compatibility.json in favor of using a single source of truth in version/compatibility.json. External tools that relied on this file should now use version/compatibility.json from the main AvalancheGo repository.

Config

  • Added:
    • --simplex-max-network-delay
    • --simplex-max-rebroadcast-wait
    • --benchlist-halflife
    • --benchlist-unbench-probability
    • --benchlist-bench-probability
    • snowParameters in subnet configs
    • simplexParameters in subnet configs
  • Deprecated:
    • consensusParameters in subnet configs
  • Removed:
    • --benchlist-fail-threshold
    • --benchlist-min-failing-duration
    • pull-gossip-poll-size from the X-chain and P-chain configs
    • proposerMinBlockDelay from subnet configs

API

  • Added avalanche_snowman_consensus_latencies histogram for each chain

Fixes

  • Fixed potential FATAL during startup due to an incorrect initialization of remaining disk space
  • Fixed crash in TraceCall with BlockOverrides
  • Fixed snapshot generation shutdown race
  • Downgraded flaky ERROR log to WARN if recently bootstrapped
  • Updated minimum Go version from 1.24 to v1.25.8

Consensus

  • Redesigned benchlisting with predicated failure rates
  • Added health checks to ensure average block acceptance times are reasonable
  • Introduced Simplex consensus engine and parameters (experimental)

Firewood

  • Enabled Firewood deferred persistence for non-pruning nodes
  • Fixed Firewood metrics registration
  • Unsupported APIs now return an error when Firewood is enabled
  • Updated Firewood to v0.3.1 (from v0.0.18)

What's Changed

Read more

Granite.1 - Grafting EVM Repos

Choose a tag to compare

@StephenButtolph StephenButtolph released this 06 Jan 22:06
1a59a6f

This version is backwards compatible to v1.14.0. It is optional, but encouraged.

The plugin version is unchanged at 44 and is compatible with version v1.14.0.

Config

  • Added:
    • --system-tracker-disk-required-available-space-percentage
    • --system-tracker-disk-warning-available-space-percentage
  • Deprecated:
    • --system-tracker-disk-required-available-space
    • --system-tracker-disk-warning-threshold-available-space

EVM

  • Removed avax.version API
  • Removed customethclient package in favor of ethclient package and temporary type registrations (WithTempRegisteredLibEVMExtras)
    • Removed blockHook extension in ethclient package.
  • Enabled Firewood to run with pruning disabled.
    • This change modified the filepath of Firewood. Any nodes using Firewood will need to resync.

What's Changed

The changelog is omitted, as the Coreth and Subnet-EVM repositories were grafted into the repository.

Full Changelog: v1.14.0...v1.14.1

Granite - Improving ICM and Dynamic Block Times

Choose a tag to compare

@StephenButtolph StephenButtolph released this 05 Nov 20:05
dce38e9

This release schedules the activation of the following Avalanche Community Proposals (ACPs):

  • ACP-181 P-Chain Epoched Views
  • ACP-204 Precompile for secp256r1 Curve Support
  • ACP-226 Dynamic Minimum Block Times

The ACPs in this upgrade go into effect at 11 AM ET (4 PM UTC) on Wednesday, November 19th, 2025 on Mainnet.

All Mainnet nodes must upgrade before 11 AM ET, November 19th 2025.

The plugin version is updated to 44; all plugins must update to be compatible.

LibEVM Hook Registration

This release includes changes for how EVM modifications are registered with libevm. For consumers of avalanchego as a library, manual registration of libevm callbacks is now required.

APIs

  • Added support for specifying multiple Avalanche-Api-Route headers for more complex routing.
  • Added proposervm gRPC, connectrpc, and jsonrpc APIs for GetProposedHeight and GetCurrentEpoch.
    • The gRPC and connectrpc APIs are routed by adding a second Avalanche-Api-Route header with the value proposervm.
    • The jsonrpc APIs are added to all chains with the base endpoint /proposervm.
  • Added platformvm platform.GetAllValidatorsAt API.

Configs

  • Changed default proposerMinBlockDelay for L1s (other than Primary Network) to 0.

Fixes

  • Improved bootstrapping ETA predictions.

What's Changed

Read more

Granite - Improving ICM and Dynamic Block Times - Fuji Pre-Release

Choose a tag to compare

@StephenButtolph StephenButtolph released this 21 Oct 16:42
b4cae25

Please note that this release is unable to run mainnet - and will display "mainnet is not supported" if attempted to run with a mainnet configuration.

This release schedules the activation of the following Avalanche Community Proposals (ACPs):

  • ACP-181 P-Chain Epoched Views
  • ACP-204 Precompile for secp256r1 Curve Support
  • ACP-226 Dynamic Minimum Block Times

The ACPs in this upgrade go into effect at 11 AM ET (3 PM UTC) on Wednesday, October 29th, 2025 on the Fuji testnet.

All Fuji nodes must upgrade before 11 AM ET, October 29th 2025.

libevm Hook Registration

This release includes changes for how EVM modifications are registered with libevm. For consumers of avalanchego as a library, manual registration of libevm callbacks is now required.

The plugin version is updated to 44 all plugins must update to be compatible.

APIs

  • Added support for specifying multiple Avalanche-Api-Route headers for more complex routing.
  • Added proposervm gRPC, connectrpc, and jsonrpc APIs for GetProposedHeight and GetCurrentEpoch.
    • The gRPC and connectrpc APIs are routed by adding a second Avalanche-Api-Route header with the value proposervm.
    • The jsonrpc APIs are added to all chains with the base endpoint /proposervm.
  • Added platformvm platform.GetAllValidatorsAt API.

Configs

  • Changed default proposerMinBlockDelay for L1s (other than Primary Network) to 0.

Fixes

  • Improved bootstrapping ETA predications.

What's Changed

Read more

Fortuna.5 - Mempool Rate Limiting Improvements

Choose a tag to compare

@StephenButtolph StephenButtolph released this 29 Aug 15:00
c2563d1

This version is backwards compatible to v1.13.0. It is optional, but encouraged.

The plugin version is unchanged at 43 and is compatible with version v1.13.4.

Configs

  • Replaced pull-gossip-throttling-limit with pull-gossip-requests-per-validator in the X-Chain and P-Chain configs

Fixes

  • Fixed Firewood performance regression
  • Fixed duplicate C-Chain eth gossip registration
  • Fixed various C-Chain atomic mempool edge cases

What's Changed

New Contributors

Full Changelog: v1.13.4...v1.13.5

Fortuna.4 - Cubist Signer Integration

Choose a tag to compare

@StephenButtolph StephenButtolph released this 01 Aug 23:55
752e12f

This version is backwards compatible to v1.13.0. It is optional, but encouraged.

The plugin version is updated to 43 all plugins must update to be compatible.

Configs

  • Added staking-rpc-signer-endpoint flag.

What's Changed

New Contributors

Full Changelog: v1.13.3...v1.13.4

Fortuna.3 - ToEngine Channel Removal

Choose a tag to compare

@StephenButtolph StephenButtolph released this 22 Jul 19:12
e2bcbaf

This version is backwards compatible to v1.13.0. It is optional, but encouraged.

The plugin version is updated to 42 all plugins must update to be compatible.

This release removes the support for running on Windows. Any users running on Windows should utilize Windows Subsystem for Linux.

APIs

  • Converted HTTP2 support to route by the Avalanche-Api-Route header.
  • Added avalanche_snowman_blks_built_time_skew metric.
  • Added p2p bloomfilter_hit_rate metrics for the P-chain, X-chain, C-chain atomic, and C-chain mempools.

Fixes

  • Fixed HTTP2 update request handling.
  • Fixed plugin handling of special errors during HTTP request handling.
  • Fixed plugin forwarding of HTTP headers.
  • Fixed C-chain shared memory UTXO parsing by the Primary Network Wallet.

What's Changed

New Contributors

Full Changelog: v1.13.2...v1.13.3

Fortuna.2 - VM HTTP2 Support

Choose a tag to compare

@StephenButtolph StephenButtolph released this 24 Jun 21:43
092cf18

This version is backwards compatible to v1.13.0. It is optional, but encouraged.

The plugin version is updated to 41 all plugins must update to be compatible.

APIs

  • Added initial support for HTTP2 connections into VMs
  • Removed native support for gzip compression of HTTP requests

Fixes

  • Fixed message timeout handling on L1s configured with validatorOnly=true
  • Fixed segfault on ARM64 when profiling is enabled

What's Changed

New Contributors

Full Changelog: v1.13.1...v1.13.2

Fortuna.1 - LibEVM Migration

Choose a tag to compare

@StephenButtolph StephenButtolph released this 04 Jun 17:39
9d1f232

This version is backwards compatible to v1.13.0. It is optional, but encouraged.

The plugin version is updated to 40 all plugins must update to be compatible.

APIs

  • Removed avm.getAddressTxs api
  • Added L1 validators to platformvm.GetCurrentValidators client implementation

Configs

  • Removed --tracing-enabled and added disabled as an option to --tracing-exporter-type
  • Removed AVM indexer configs
    • index-transactions
    • index-allow-incomplete

What's Changed

Read more