Liquid Stake with compassSOL for an 8.82% APY from staking, MEV + fees

Enjoy the freedom of liquid staking in Solana Defi while delegating your stake to the high performance Solana Compass validator. Stake or unstake at any time here, or with a Jupiter swap.

Benefit from our high staking returns and over 2 years experience operating a Solana validator, and receive additional yield from priority fees + MEV tips

Earn 7.1% APY staking with Solana Compass

Help decentralize and secure the Solana network delegating your stake to us and earn an impressive 7.1% APY yield on your SOL, while supporting us to create new guides and tools. Learn more

Stake your SOL

  1. Click to connect your wallet
  2. Enter the amount you wish to stake
  3. Kick back and enjoy your returns
  4. Unstake from your wallet or our staking dashboard

Earn 7.1% APY staking with Solana Compass

Help decentralize and secure the Solana network delegating your stake to us and earn an impressive 7.1% APY yield on your SOL, while supporting us to create new guides and tools.

Learn more

Solana Changelog - Nov 20 - Agave validator v2.0, loaded account costs

By Changelog

Published on 2024-11-20

Explore Solana's latest upgrades including Agave 2.0, performance improvements, and the upcoming Web3.js v2 release. Learn about new features, compute unit costs, and ecosystem developments.

The notes below are AI generated and may not be 100% accurate. Watch the video to be sure!

Solana Changelog: Agave 2.0 Launch, Performance Boosts, and Web3.js v2 Release

In the latest episode of the Solana Changelog, Nick from the Solana Foundation DevRel team and Jonas dive into the exciting developments within the Solana ecosystem. The conversation covers a wide range of topics, from major validator upgrades to new features and tools for developers. Let's explore the key highlights and what they mean for the Solana community.

Agave 2.0: A Major Milestone for Solana

One of the most significant announcements in this changelog is the successful launch of Agave 2.0 on the Solana mainnet. Agave, the software powering Solana validators, has reached a new milestone with this release. The adoption rate has been impressive, with Nick noting, "It's well past super majority at this point. I believe it's something close to like 95, 96% of the stake."

This widespread adoption is crucial for the network's performance and stability. Jonas highlights the immediate benefits: "It's also faster than the old one because lots of the validators who were still running 1.18, they actually fell behind at some point. And some of them had to upgrade earlier than they actually wanted."

The transition to Agave 2.0 brings more than just performance improvements. It also marks the end of several deprecated RPC calls. Jonas emphasizes the urgency for developers to update their code: "All the RPC calls that were deprecated, which we talked about hundreds of times, they are now actually gone. So if you're still using a get-recent block hash or something, now is the time to last chance to update, basically."

Agave 2.1: Looking Ahead to Future Improvements

While Agave 2.0 is still fresh, the Solana team is already preparing for the next iteration. The changelog for Agave version 2.1 was discussed, revealing several important updates and deprecations.

One of the key changes in 2.1 is the official removal of cargo build BPF and cargo test BPF commands. Nick explains, "These have been deprecated for about two years. And in 2.1, they're going to officially be removed. So you should be using cargo build SPF and test SPF."

Jonas highlights a new feature in 2.1 that could significantly improve program efficiency: "There's a new entry point, no Alok, which is like, I think kind of similar to the Pinocchio entry point. But basically what it does, it just saves you 20 to 30 p.u. per unique account in your entry point, which is like an improvement, which you can get for basically nothing, which is really, really cool."

Tools Version Declaration: Enhanced Control for Developers

Another notable addition in Agave 2.1 is the ability to declare specific tools versions for compiling programs. Nick elaborates on this feature: "You can basically declare, explicitly declare what tools version, what platform tools version you want to compile your programs with. You can specify it inside your cargo Toml using the package metadata that we've talked about before."

This new capability offers developers more control and consistency in their build processes. Nick adds, "You can both do it on your entire repo. Or if you're using a workspace, a cargo workspace, you can declare it on each individual program. But you can also still pass it via the CLI are when you actually run cargo build SPF."

Feature Gate Activations: A New Era of Network Upgrades

With the Solana network continually evolving, feature gate activations are becoming more frequent. Jonas explains, "Since now fire dancer is catching up, actually the feature gate activations are starting again. So you will see features getting activated over time now. There's maximum one per epoch."

This controlled rollout of new features allows for a more stable and predictable upgrade path for the network. One exciting feature mentioned is the increase in the maximum number of accounts in Cross-Program Invocations (CPIs). Jonas notes, "We have like a max CPI instruction data length increased and max CPI account and was now 128, which I think was 32 before."

Windows Support: Progress Towards Native Development

The Solana development team is making strides in improving the experience for Windows users. A recent commit fixes a Windows error, making it easier to build on the platform. Jonas expresses optimism about the future of Windows support: "Maybe at some point we will be able to run on Windows without WSL, right? I think this is going in that direction."

This improvement is a step towards enabling native Solana development on Windows, potentially broadening the developer base and making the ecosystem more accessible.

QUIC Protocol for Voting: Enhancing Network Efficiency

Another significant update discussed in the changelog is the implementation of QUIC protocol for validator voting. Nick explains, "The ANSA team has been hard at work, making it so votes will actually go over the QUIC protocol, making things a little bit faster."

This change requires validators to ensure they have the correct number of ports available. Nick advises, "If you're running a validator, you need to make sure that you have the correct number of ports have the minimum number of ports from that other PR, believe it's 17 now, in order to actually start using this whenever it does go live."

Jonas adds context to why this change is important: "I think it before it was using UDP, where it's like really hard to filter out messages they don't want. And if it's now also using QUIC and since Alessandro improved QUIC, so now we have these votes also going over QUIC. So that's cool."

Compute Unit Costs for Loaded Accounts: A New Pricing Model

One of the more impactful changes introduced in Agave 2.0 is the new compute unit (CU) cost associated with loaded accounts and program sizes. Jonas highlights this change: "Now loaded account, loaded program size actually contributes to the CU costs of your transactions."

Nick provides more detail on how this new pricing model works: "Every single account that is loaded, all that extra data in those bytes that are loaded in any transaction is now going to have a CU cost to it. Specifically, I believe it's 8 CU's per 32 kilobytes, because that's just like the heap page size."

This change incentivizes developers to optimize their programs and transactions for efficiency. Jonas notes, "It's not much, but it definitely makes sense to optimize your programs to save CU now, which is kind of makes sense. You should pay for what the validator needs to do work for."

Nick also points out a way for developers to optimize their transactions under this new model: "You can also optimize your transactions themselves too by using the new compute budget instruction for setting your max loaded. So you can set the max loaded value in your compute budget instruction inside your transaction. If you ratchet that down to as low as possible, the new scheduler in 2.0 will also better prioritize those transactions because they're smaller and less efficient and are more efficient and more of them can be packed into a block."

Solana Program Repository: Centralizing SPL Programs

The Solana team is working on consolidating all Solana Program Library (SPL) programs into a single GitHub repository. Nick explains, "It seems like all of the Solana program libraries is slowly moving over into this Solana program organization on GitHub."

This consolidation is particularly important for developers working with Web3.js version 2. Nick advises, "In order to use any of the Solana program library programs and clients, you actually need to start using these Solana program clients that are inside of here."

The new repository includes client libraries for popular programs such as account lookup tables, compute budget, memo, token, and token 22. Nick adds, "All of them have their new clients that are actually auto-generated using Kodama, which is really cool."

Web3.js Version 2: Preparing for the Transition

A significant update for Solana developers is the upcoming release of Web3.js version 2. Jonas reminds listeners of the importance of this update: "Solana Web3.js version 2 is coming, and it's currently already live, so you can use it as version 2. So you need to change on the 16th of December is that the latest will be set to version 2."

This change could potentially break existing projects that rely on the latest version. Jonas advises, "If you have any tutorials or guides or like new projects or something, and you want to install latest, this will probably break. So you need to add an add one to keep functionality like before or upgrade them to the new version."

Nick encourages developers to try out the new version, highlighting its improvements: "It's faster, better, nicer, so yeah, give it a try and give feedback as well."

Radar Hackathon Winners: Celebrating Innovation

The changelog also touched on the recent Radar Hackathon, which was described as the "biggest hackathon ever" for Solana. While specific details weren't provided in the transcript, the hosts encouraged listeners to check out the winners and their projects, particularly highlighting exciting developments in the gaming category.

Verified Programs: Enhancing Transparency and Trust

Jonas shared exciting news about an upcoming feature for verifiable builds. This feature will allow developers to verify that a deployed program was built from the source code they claim it was built from. Jonas explains, "What you can do is you basically deploy your program and then you can actually verify that this program was built from the source that you are saying it was built from. And everyone can verify it."

This feature will have significant implications for transparency and trust in the Solana ecosystem. Jonas highlights the user experience benefits: "The cool thing about it is that now on Chain, you can directly immediately see on a verified program the GitHub URL. And in there, you can find the programs IDL, the programs SDK, the docs, maybe a link to the front end."

This integration between on-chain programs and their source code repositories will make it easier for users and developers to understand and interact with Solana programs. Jonas expresses his excitement: "I think it's super cool. Like if you see a nice transaction somewhere in the Explorer and you just click on the program and then immediately go to GitHub and see what the program is about. And you can read the source code. I think this is super cool. And it improves the whole ecosystem, probably."

Stack Exchange: A Growing Knowledge Base for Solana

The hosts concluded the changelog by acknowledging the growing importance of the Solana Stack Exchange. Nick praises the community's involvement: "Shout out to all of the amazing people that have been answering questions and helping out on Stack Exchange. This is the best way with all the eyes on Solana right now. Everyone is coming in, answering questions and trying to learn all the different tech that is in the Solana ecosystem."

Jonas adds that the Stack Exchange is not just for community support, but also a place where core engineers engage: "You can also directly get feedback and questions here answered by the core engineers. So I think this is super cool. Help everybody and contribute."

This growing knowledge base is crucial for supporting the influx of new developers and users in the Solana ecosystem, especially as the platform continues to evolve and introduce new features.

In conclusion, this Solana Changelog episode highlights the rapid pace of development and improvement in the Solana ecosystem. From major validator upgrades to new developer tools and community initiatives, Solana continues to push the boundaries of blockchain technology and foster a vibrant, engaged community of developers and users.

Facts + Figures

  • Agave 2.0 has been adopted by approximately 95-96% of the stake on the Solana mainnet
  • Agave 2.1 will officially remove the deprecated cargo build BPF and cargo test BPF commands
  • The new "no Alok" entry point in Agave 2.1 can save 20-30 compute units per unique account
  • The maximum number of accounts in Cross-Program Invocations (CPIs) has been increased to 128, up from 32
  • Loaded account and program size now contribute to compute unit costs, at a rate of 8 CUs per 32 kilobytes
  • Web3.js version 2 will become the default "latest" version on December 16th
  • The Radar Hackathon was described as the "biggest hackathon ever" for Solana
  • A new feature for verifiable builds is expected to launch next week, allowing anyone to verify program sources
  • Feature gate activations are resuming, with a maximum of one activation per epoch
  • The minimum validator port range width for voting using QUIC has been increased, likely to 17 ports

Questions Answered

What is Agave 2.0 and why is it important for Solana?

Agave 2.0 is the latest version of the software powering Solana validators. It's important because it brings significant performance improvements to the Solana network. With about 95-96% of the stake now running on Agave 2.0, the network is faster and more efficient. This update also removes deprecated RPC calls, forcing developers to update their code to use the latest, more efficient methods.

How does the new compute unit cost for loaded accounts work?

The new compute unit (CU) cost for loaded accounts charges 8 CUs per 32 kilobytes of data loaded in a transaction. This applies to both account data and program data. The change incentivizes developers to optimize their programs and transactions for efficiency, as they now have to pay for the resources used when loading data onto the network. Developers can also use the new compute budget instruction to set a maximum loaded value, which can help prioritize their transactions in the new scheduler.

What changes are coming with Web3.js version 2?

Web3.js version 2 is a major update to the JavaScript library used for interacting with the Solana blockchain. It promises to be faster and more efficient than the previous version. On December 16th, version 2 will become the default "latest" version. This change may break existing projects that rely on the latest version without specifying a version number. Developers are encouraged to test their projects with version 2 and update their dependencies accordingly to ensure compatibility.

What is the new feature for verifiable builds in Solana?

The upcoming feature for verifiable builds allows developers to prove that a deployed program was built from a specific source code. This enhances transparency and trust in the Solana ecosystem. When a program is verified, users will be able to see the GitHub URL of the source code directly on the blockchain explorer. This URL will typically contain the program's IDL, SDK, documentation, and potentially links to associated front-end applications, making it easier for users and other developers to understand and interact with the program.

How is Solana improving support for Windows developers?

Solana is making progress towards native Windows support for development. Recent updates have fixed errors related to building on Windows, making it easier for developers to work on the platform without requiring the Windows Subsystem for Linux (WSL). While full native support is not yet available, these improvements are steps towards enabling developers to build and run Solana projects directly on Windows in the future.

What is the QUIC protocol and how does it improve Solana's network?

QUIC is a transport layer network protocol that is being implemented for validator voting in Solana. It replaces the previous UDP-based system, which had difficulties filtering unwanted messages. By using QUIC, the voting process becomes faster and more efficient. This change requires validators to ensure they have the correct number of ports available (likely 17) to support QUIC-based voting when it goes live.

How are Solana Program Library (SPL) programs being reorganized?

The Solana team is consolidating all SPL programs into a single GitHub repository under the Solana program organization. This reorganization is particularly important for developers working with Web3.js version 2, as they will need to use the new Solana program clients found in this repository. These clients are auto-generated using Kodama and cover popular programs such as account lookup tables, compute budget, memo, token, and token 22.

What resources are available for Solana developers seeking help or information?

The Solana Stack Exchange has become a valuable resource for developers seeking help or information about Solana. It's a platform where both community members and core Solana engineers answer questions and provide feedback. This growing knowledge base is crucial for supporting new developers and users as they learn about the various technologies in the Solana ecosystem. Additionally, the Solana Foundation provides newsletters, changelog videos, and other resources to keep the community informed about the latest developments.

Related Content

Solana Changelog - EpochStakes, SolFuzz, and Optimizations

Explore the latest Solana updates including validator reward proposals, snapshot enhancements, and significant performance optimizations. Learn about new development tools and ecosystem improvements.

Solana Changelog Jul 17 - Deprecations, Precompiles, and Developer Resources

Explore Solana's latest changes including precompile improvements, deprecated code removals, and exciting new developer resources in this comprehensive update.

Solana Changelog May 31 - Interfaces, Solang, and Solana ChatGPT

Explore Solana's latest updates including interfaces, Solang Compiler v0.3.0, and the new Solana ChatGPT plugin. Learn about developer tickets for Breakpoint and Form Function's open-source move.

Solana Changelog: Trident, Unruggable, and SyscallGetSysvar

Explore the latest Solana updates including ZK-SDK additions, core BPF program migrations, and the disabling of rent collection. Learn about new developer tools and ecosystem improvements.

Solana Changelog - Token Extensions and Transaction Size Fees

Explore Solana's latest developments including token extensions, transaction size fees, and the upcoming Mountain Dew 5 event in this comprehensive changelog.

Solana Changelog - April 9 - Flare and GetEpochStake

Discover the latest Solana upgrades including GetEpochStake, improved indexing, and the Flare CLI tool. Learn how these changes enhance performance and developer experience on Solana.

Solana Changelog Jul 3 - RPC Deprecations, Actions, and Blinks

Explore Solana's latest developments including RPC method deprecations, new Actions and Blinks features, and upcoming changes to compute unit charging.

Solana Changelog July 11 - Merkle Shreds, Turbine, and a Security Series

Explore Solana's latest innovations including Merkle shreds, QUIC Turbine, and crucial security insights. Learn about upcoming events and developer resources in this comprehensive update.

Solana Changelog - EpochStakes, SolFuzz, and Optimizations

Explore Solana's recent advancements including validator reward proposals, performance optimizations, and new developer resources in this comprehensive changelog.

Solana Changelog - February 14, 2023 - Diet Clients, 1.15 Release, and Metaplex Fusion

Explore Solana's newest features including Diet Clients, the 1.15 release, and Metaplex Fusion. Learn about the Grizzly Thon hackathon and exciting ecosystem updates.

Solana Changelog - MoveStake, Core Concepts, and Bigtable Support

Explore the latest Solana developments including MoveStake proposal, CLI improvements, and revamped core concept documentation. Learn how these changes enhance the Solana ecosystem.

Solana Changelog - October 10 - Solana StackExchange, sRFC, and future Feature Activations

Explore Solana's latest updates including the 1.16 release, upcoming confidential transfers, SRFCs, and the importance of Solana StackExchange for developers.

Solana Changelog July 6 - Cubik, SPL-token, and Solana-Tools

Explore the latest Solana updates including Cardinal Labs shutdown, Jupiter's Token 2022 support, Cubik's tooling round, and new developer resources

Solana Changelog - Optional Borsh, Precompiles, and new Web3.js

Explore Solana's latest developments including optional Borsh, precompiles standardization, core BPF migration progress, and exciting Web3.js updates in this comprehensive changelog.

Solana Changelog - February 14, 2023 - Diet Clients, 1.15 Release, and Metaplex Fusion

Explore Solana's newest features including diet clients for improved security, the 1.15 release, and innovative NFT farming with Metaplex Fusion.