github ava-labs/avalanchego v1.15.3
v1.15.3 - API Cleanup

4 hours ago

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

The plugin version is unchanged at 47 and is compatible with version v1.15.2.

APIs

  • Added a Gas-Used header to C-Chain /rpc responses with the total gas used by every completed eth_call in the request.
  • admin.lockProfile and continuous profiling now write lock.profile in the binary pprof format, like the CPU and memory profiles.

Configs

  • Added --profile-continuous-mutex-fraction (default 1, which keeps the existing behavior) to set the mutex profile fraction used by continuous profiling. Set it to 0 to stop recording mutex contention, or to n to sample 1 of every n events.
  • Added the filter API to the C-Chain apis option. It serves the polling filter methods (eth_newFilter, eth_newBlockFilter, eth_newPendingTransactionFilter, eth_getFilterChanges, eth_getFilterLogs, eth_uninstallFilter), which moved out of subscription. It is enabled by default. A config that sets apis must add filter to keep serving these methods.
  • Added the logs API to the C-Chain apis option. It serves eth_getLogs, which moved out of subscription. It is enabled by default. A config that sets apis must add logs to keep serving eth_getLogs.

Metrics

  • SAE state sync scores peers separately for each sync protocol, so avalanche_evm_p2p_peer_tracker_{num_tracked_peers,num_responsive_peers,average_bandwidth} are replaced by one set per protocol: avalanche_evm_p2p_peer_tracker_<protocol>_* with <protocol> one of leaf, code, block or cchain_leaf.

Fixes

  • Fixed C-Chain log queries (eth_getLogs, eth_getFilterLogs) failing with failed to get logs for block #N when the range reached an accepted block that had not yet executed. Range queries now stop at the last executed block, and blockHash queries for an unexecuted block return unknown block.
  • Fixed admin.stopCPUProfiler leaving mutex profiling enabled, which kept recording mutex contention until the node restarted.
  • Fixed the C-Chain block builder ordering pending transactions inconsistently. Transactions could be out of effective gas tip order, and a sender's later nonce could come before an earlier one, which left it out of the block.
  • Fixed UnmarshalText implementations which prevented usage of jsonv2 (default in Go 1.27).

What's Changed

New Contributors

Full Changelog: v1.15.2...v1.15.3

Don't miss a new avalanchego release

NewReleases is sending notifications on new releases.