Hey folks! The Banff 9 Update (v.1.9.9) has just been released!
Main focuses of this release are the removal of the go-plugin, C-Chain State Sync Default*, and the enablement of the EVM JS TracerDisclaimer on C-Chain State Sync:
If you are not interested in state sync, you will need to make sure you specify state-sync-enabled:false. Nodes should not start state syncing if it has the contents of the previous block but are something to be aware of. This version is backwards to v.1.9.0. The update is optional but encouragwed.
Here is a copy of the full release notes: This version is backwards compatible to v1.9.0. It is optional but encouraged. The supported plugin version is 23.
Note: The --whitelisted-subnets flag was deprecated in v1.9.6. This is the last release in which it will be supported. Use --track-subnets instead.
Monitoring
- Added warning when the P2P server IP is private
- Added warning when the HTTP server IP is potentially publicly reachable
- Removed
merkledb.trieView#calculateIDstracing when no recalculation is needed
Databases
- Capped the number of goroutines that
merkledb.trieView#calculateIDsConcurrentwill create - Removed
nodbpackage - Refactored
Batchimplementations to share common code - Added
Batch.Replayinvariant tests - Converted to use
requirein alldatabaseinterface tests
Cryptography
- Moved the
secp256k1implementations to a newsecp256k1package out of thecryptopackage - Added
rfc6979compliance tests to thesecp256k1signing implementation - Removed unused cryptography implementations
ed25519,rsa, andrsapss - Removed unnecessary cryptography interfaces
crypto.Factory,crypto.RecoverableFactory,crypto.PublicKey, andcrypto.PrivateKey - Added verification when parsing
secp256k1public keys to ensure usage of the compressed format
API
- Removed delegators from
platform.getCurrentValidatorsunless a singlenodeIDis requested - Added
delegatorCountanddelegatorWeightto the validators returned byplatform.getCurrentValidators
Documentation
- Improved documentation on the
block.WithVerifyContextinterface - Fixed
--public-ipand--public-ip-resolution-serviceCLI flag descriptions - Updated
README.mdto explicitly referenceSECURITY.md
Coreth
- Enabled state sync by default when syncing from an empty database
- Increased block gas limit to 15M for
CortinaNetwork Upgrade - Added back file tracer endpoint
- Added back JS tracer
Miscellaneous
- Added
allowedNodesto the subnet config forvalidatorOnlysubnets - Removed the
hashicorp/go-plugindependency to improve plugin flexibility - Replaced specialized
bagimplementations with genericbagimplementations - Added
mempoolpackage to theavm - Added
chain.State#IsProcessingto simplify integration withblock.WithVerifyContext - Added
StateSyncMinVersiontosync.ClientConfig - Added validity checks for
InitialStakeDurationin a custom network genesis - Removed unnecessary reflect call when marshalling an empty slice
Cleanup
- Renamed
teleporterpackage towarp - Replaced
boolflags in P-chain state diffs with anenum - Refactored subnet configs to more closely align between the primary network and subnets
- Simplified the
utxo.Spenderinterface - Removed unused field
common.Config#Validators