Agave v2.0 is coming soon and it is bringing some breaking changes that will require Solana developers to update their codebase to ensure compatibility with the new version. This article will provide an overview of the changes and the steps you need to take to prepare for the transition.
What is Agave?
Agave is a new validator client developed by Anza, a team comprising former engineers and executives from Solana Labs. This client represents a fork of the original Solana Labs validator client, now under the stewardship of the Anza team.
What is Anza?
Anza is a new corporate entity formed by approximately half of the staff from Solana Labs, including key figures like Jeff Washington and Jed Halfon. The establishment of Anza aims to further decentralize the Solana ecosystem, improve existing infrastructure, and develop new applications and products.
Agave v2.0
The Solana ecosystem is gearing up for a major milestone with the upcoming release of Agave v2.0 on Solana mainnet-beta. This update brings breaking changes that all Solana developers should be aware of and prepare for. At Ironforge, we want to ensure our users are ready for this transition. Here's what you need to know:
Key Changes in Agave v2.0
1. Renamed Crates
Several core Solana crates are being renamed to include the "agave-" prefix. This change is to distinguish Agave-specific dependencies as the ecosystem moves towards supporting multiple validator clients. Key renames include:
solana-validator
→agave-validator
solana-ledger-tool
→agave-ledger-tool
solana-watchtower
→agave-watchtower
solana-install
→agave-install
solana-geyser-plugin-interface
→agave-geyser-plugin-interface
solana-cargo-registry
→agave-cargo-registry
Action Item
Review any automation scripts or dependencies that reference these crates and update accordingly.
2. Removed RPC Endpoints
Several RPC endpoints are being removed with Agave v2.0. You can replace these removed endpoints with the new equivalents. The key changes include:
confirmTransaction
→getSignatureStatuses
getSignatureStatus
→getSignatureStatuses
getSignatureConfirmation
→getSignatureStatuses
getConfirmedSignaturesForAddress
→getSignaturesForAddress
getConfirmedBlock
→getBlock
getConfirmedBlocks
→getBlocks
getConfirmedBlocksWithLimit
→getBlocksWithLimit
getConfirmedTransaction
→getTransaction
getConfirmedSignaturesForAddress2
→getSignaturesForAddress
getRecentBlockhash
→getLatestBlockhash
getFees
→getFeeForMessage
getFeeCalculatorForBlockhash
→isBlockhashValid
orgetFeeForMessage
getFeeRateGovernor
→getFeeForMessage
getSnapshotSlot
→getHighestSnapshotSlot
getStakeActivation
→getAccountInfo
(alternative approach)
Action Item
Log into your Ironforge account and head to the Load Balancer Analytics page to check your RPC Method calls. Scroll down to the "Methods Usage" section to see the list of RPC Methods you are using.
We now highlight all the RPC Methods which are about to be removed, allowing you to easily identify which methods need updating.
You can refer to the Solana Documentation for the specifications of the HTTP Methods required to update your code.
3. Removed Validator Arguments
The following validator arguments will be removed:
-enable-rpc-obsolete_v1_7
-accounts-db-caching-enabled
-accounts-db-index-hashing
-no-accounts-db-index-hashing
-incremental-snapshots
-halt-on-known-validators-accounts-hash-mismatch
Action Item
If you're running a validator, ensure these arguments are not used in your setup.
4. GitHub Repository Changes
The original Solana Labs GitHub repository will be archived upon the release of Agave v2.0.
Timeline
- Current: Agave v2.0 is live on Solana testnet and devnet
- October 2024 (Post-Breakpoint): Expected mainnet-beta launch in a couple weeks.
We recommend you upgrade your code and infrastructure as soon as possible to ensure compatibility with Agave v2.0. Please follow the action items outlined above.
Follow for Latest News
To stay updated on developments regarding Agave, Anza, and the broader Solana ecosystem, consider following these official handles:
By following these channels, you can receive timely updates on releases, changes, and other important news related to the evolution of the Solana blockchain and its associated projects.