- Removed deprecated
ExportKey
,ExportAVAX
,Export
,ImportKey
,ImportAVAX
,Import
APIs - IMPORTANT:
eth_getProof
calls for historical state will be rejected by default.- On archive nodes (
"pruning-enabled": false
): queries for historical proofs for state older than approximately 24 hours preceding the last accepted block will be rejected by default. This can be adjusted with the new optionhistorical-proof-query-window
which defines the number of blocks before the last accepted block which should be accepted for state proof queries, or set to0
to accept any block number state query (previous behavior). - On
pruning
nodes: queries for proofs past the tip buffer (32 blocks) will be rejected. This is in support of moving to a path based storage scheme, which does not support historical state proofs.
- On archive nodes (
- Remove API eth_getAssetBalance that was used to query ANT balances (deprecated since v0.10.0)
- Remove legacy gossip handler and metrics (deprecated since v0.10.0)
- Refactored trie_prefetcher.go to be structurally similar to upstream.
- Minor version update to correspond to avalanchego v1.12.0 / Etna.
- Remove unused historical opcodes CALLEX, BALANCEMC
- Remove unused pre-AP2 handling of genesis contract
- Fix to track tx size in block building
- Test fixes
- Update go version to 1.22
- Update geth dependency to v1.13.14
- eupgrade: lowering the base fee to 1 nAVAX
- eupgrade/cancun: verify no blobs in header
- Supports ACP-118 message types
- Gets network upgrade timestamps from avalanchego
- Remove cross-chain handlers
- Add EUpgrade base definitions
- Remove Block Status
- Fix and improve "GetBlockIDAtHeight"
- Bump golang version requirement to 1.21.12
- Bump AvalancheGo to v1.11.10-prerelease
- rpc: truncate call error data logs
- logging: remove path prefix (up to coreth@version/) from logged file names.
- cleanup: removes pre-Durango scripts
- Bump AvalancheGo to v1.11.7
- Bump golang version requirement to 1.21.12
- Switches timestamp log back to "timestamp" (as was before v0.13.4)
- Add missing fields to "toCallArg"
- Fix state sync ETA overflow
- Fix state sync crash bug
- Fixes snapshot use when state sync was explicitly enabled
- Fixes v0.13.3 locking regression in async snapshot generation
- Update go-ethereum to v1.13.8
- Bump AvalancheGo to v1.11.6
- Bump golang version requirement to 1.21.10
- "timestamp" in logs is changed to "t"
- Update go-ethereum to v1.13.2
- Bump AvalancheGo to v1.11.5
- Bump golang version requirement to 1.21.9
- Respect local flag in legacy tx pool
- Disable blobpool
- Testing improvements
- Integrate stake weighted gossip selection
- Update go-ethereum to v1.12.2
- Force precompile modules registration in ethclient
- Bump Avalanchego to v1.11.3
- Bump AvalancheGo to v1.11.2
- Remove Legacy Gossipper
- Tune default gossip parameters
- Bump AvalancheGo to v1.11.1
- Bump minimum Go version to 1.21.7
- Add more error messages to warp backend
- Add support for off-chain warp messages
- Add support for getBlockReceipts RPC API
- Fix issue with state sync for large blocks
- Migrating Push Gossip to avalanchego network SDK handlers
- Add concurrent prefetching of trie nodes during block processing
- Add
skip-tx-indexing
flag to disable transaction indexing and unindexing - Update acceptor tip before sending chain events to subscribers
- Add soft cap on total block data size for state sync block requests
- Bump AvalancheGo to v1.10.15
- Fix crash in prestate tracer on memory read
- Bump AvalancheGo to v1.10.14
- Remove lock options from HTTP handlers
- Fix deadlock in
eth_getLogs
when matcher session hits a missing block - Replace Kurtosis E2E tests with avctl test framework
- Add P2P SDK Pull Gossip to mempool
- Fix hanging requests on shutdown that could cause ungraceful shutdown
- Increase batch size writing snapshot diff to disk
- Migrate geth changes from v1.11.4 through v1.12.0
- Bump AvalancheGo dependency to v1.10.10
- Fix API handler crash for
lookupState
inprestate
tracer - Fix API handler crash for LOG edge cases in the
callTracer
- Fix regression in
eth_getLogs
serving request for blocks containing no Ethereum transactions - Export
CalculateDynamicFee
- Migrate go-ethereum changes through v1.11.4
- Downgrade API error log from
Warn
toInfo
- Increase default trie dirty cache size from 256MB to 512MB
- Bump AvalancheGo dependency to v1.10.1
- Improve block building logic
- Use shorter ctx while reading snapshot to serve state sync requests
- Remove proposer activation time from gossiper
- Fail outstanding requests on shutdown
- Make state sync request sizes configurable
- Increase C-Chain block gas limit to 15M in Cortina
- Add Mainnet and Fuji Cortina Activation timestamps
- Downgrade SetPreference log from warn to debug
- Fix shutdown hanging during state sync
- Add pre-check for imported UTXOs
- Fix bug in
BadBlockReason
output to display error string correctly - Update golangci-lint version to v1.51.2
- Enable state sync by default when syncing from an empty database
- Increase block gas limit to 15M for Cortina Network Upgrade
- Add back file tracer endpoint
- Add back JS tracer
- Bump AvalancheGo to v1.9.6
- Add support for eth_call over VM2VM messaging
- Add config flags for tx pool behavior
- Add config option to perform database inspection on startup
- Add configurable transaction indexing to reduce disk usage
- Add special case to allow transactions using Nick's Method to bypass API level replay protection
- Add counter metrics for number of accepted/processed logs
- Improve header and logs caching using maximum accepted depth cache
- Add counter for number of processed and accepted transactions
- Wait for state sync goroutines to complete on shutdown
- Bump go-ethereum dependency to v1.10.26
- Increase soft cap on transaction size limits
- Add back isForkIncompatible checks for all existing forks
- Clean up Apricot Phase 6 code
- Add trie clean cache journaling to disk to improve processing time on restart
- Fix regression where snapshot could be marked as stale by async acceptor during block processing
- Add fine-grained block processing metrics
- Add cache size config parameters for
trie-clean-cache
,trie-dirty-cache
,trie-dirty-commit-target
, andsnapshot-cache
- Increase default
trie-clean-cache
size from 256 MB to 512 MB - Increase default
snapshot-cache
size from 128 MB to 256 MB - Add optional flag to skip chain config upgrade check on startup (allows VM to start after missing a network upgrade)
- Make Avalanche blockchainID (separate from EVM ChainID) available within the EVM
- Record block height when performing state sync
- Add support for VM-to-VM messaging
- Move
eth_getChainConfig
under theBlockChainAPI
- Simplify block builder timer logic to a simple retry delay
- Add Opentelemetry support
- Simplify caching logic for gas price estimation
- Update Chain Config compatibility check to compare against last accepted block timestamp
- Bump go-ethereum dependency to v1.10.25
- Add Banff activation times for Mainnet and Fuji for October 18 4pm UTC and October 3 2pm UTC respectively
- Banff cleanup
- Deprecate Native Asset Call and Native Asset Balance
- Deprecate Import/Export of non-AVAX Avalanche Native Tokens via Atomic Transactions
- Add failure reason to bad block API
- Migrate to go-ethereum v1.10.23
- Add API to fetch Chain Config
- Fix bug in
codeToFetch
database accessors that caused an error when starting/stopping state sync - Bump go-ethereum version to v1.10.21
- Update gas price estimation to limit lookback window based on block timestamps
- Add metrics for processed/accepted gas
- Simplify syntactic block verification
- Ensure statedb errors during block processing are logged
- Remove deprecated gossiper/block building logic from pre-Apricot Phase 4
- Add marshal function for duration to improve config output
- Add optional JSON logging
- Bump minimum go version to v1.18.1
- Add interface for suppporting stateful precompiles
- Remove legacy code format from the database
- Enable expensive metrics by default
- Fix atomic trie sync bug that could result in storing incorrect metadata
- Update state sync metrics to use counter for number of items received
- Bump go-ethereum dependency to v1.10.20
- Update API names used to enable services in
eth-api
config flag. Prior names are supported but deprecated, please update your configuration accordingly - Optimizes state sync by parallelizing trie syncing
- Adds
eth_syncing
API for compatibility. Note: This API is only accessible after bootstrapping and always returns"false"
, since the node will no longer be syncing at that point. - Adds metrics to atomic transaction mempool
- Adds metrics for incoming/outgoing mempool gossip
- Bump go-ethereum dependency to v1.10.18
- Parallelize state sync code fetching
- Deprecated CB58 format for API calls
- Add peer bandwidth tracking to optimize state sync message routing
- Fix leaf request handler bug to ensure the handler delivers a valid range proof
- Remove redundant proof keys from leafs response message format
- Improve state sync request retry logic
- Improve state sync handler metrics
- Improve state sync ETA
- Improve state sync leaf request serving by optimistically reading leaves from snapshot
- Add acceptor queue within
core/blockchain.go
- Cap size of TrieDB dirties cache during block acceptance to reduce commit size at 4096 block interval
- Refactor state sync block fetching
- Improve state sync metrics
- Add beta support for fast sync
- Bump trie tip buffer size to 32
- Fix bug in metrics initialization
- Fix deadlock bug on shutdown causing historical re-generation on restart
- Add API endpoint to fetch running VM Config
- Add AvalancheGo custom log formatting to C-Chain logs
- Deprecate support for JS Tracer
- Reduced log level of snapshot regeneration logs
- Enabled atomic tx replacement with higher gas fees
- Parallelize trie index re-generation
- Optimize FeeHistory API
- Add protection to prevent accidental corruption of archival node trie index
- Add capability to restore complete trie index on best effort basis
- Round up fastcache sizes to utilize all mmap'd memory in chunks of 64MB
- Migrate go-ethereum v1.10.16 changes
- Increase FeeHistory maximum historical limit to improve MetaMask UI on C-Chain
- Enable chain state metrics
- Add support for offline pruning
- Refactor VM networking layer
- Enable metrics by default
- Mark RPC call specific metrics as expensive
- Add Abigen support for native asset call precompile
- Fix bug in BLOCKHASH opcode during traceBlock
- Fix bug in handling updated chain config on startup