PackageTrack
Sign in Get early access

agave-feature-set

Solana runtime feature declarations

4.2.1 4.4M downloads/mo #4794 most downloaded on crates.io anza-xyz/agave

What this package is like to depend on

Last release 2 days ago

21 Aug 2026

Ships on a steady schedule

a new release about every 2 weeks

Rarely documented

notes for 5 of 66 stable releases

1 version withdrawn

withdrawn after publishing

1 years old

93 releases · first in 2025

69 releases in the last 12 months

see the full history below

Release timeline

93 releases · Mar 2025 to Aug 2026
2026
Release Pre-release Withdrawn

Releases

latest 60 of 93
  1. 4.3.0-beta.2 21 Aug 2026 pre-release

    Nothing published for this version

  2. 4.3.0-beta.1 21 Aug 2026 pre-release withdrawn
    Release notes

    Warning

    This release has no binary artifacts and must not be deployed. Use v4.3.0-beta.2.

    The build for this tag failed cargo audit on
    RUSTSEC-2026-0258
    (h2 0.4.13), so no Linux, macOS, or Windows assets were produced.
    Crates for 4.3.0-beta.1 were published before the failure was detected and
    have since been yanked.

    Superseded by v4.3.0-beta.2, which carries the same changes plus the
    advisory mitigation.

    Changes since v4.3.0-beta.0

    • v4.3: fix(core): silence dead_code for alpenglow_slot_clock on non-unix (backport of #14542) (#14565)
    • v4.3: gossip: wrap epoch slots index after 254 (backport of #14566) (#14571)
    • v4.3: [ed25519] bump solana-signature version (backport of #14578) (#14602)
    • v4.3: replay: allow execution of leader banks after SwitchBank (backport of #14580) (#14604)

    All of the above are included in v4.3.0-beta.2.

    Open source →
  3. 4.3.0-beta.0 14 Aug 2026 pre-release
    Release notes

    What's Changed

    New Contributors

    Full Changelog: v4.3.0-alpha.3...v4.3.0-beta.0

    Open source →
  4. 4.3.0-alpha.3 05 Aug 2026 pre-release
    Release notes

    This is a pre-release for testing only. Do not deploy to mainnet, testnet, or any production host.

    https://github.com/anza-xyz/agave/blob/master/CHANGELOG.md#edge-channel

    Open source →
  5. 4.3.0-alpha.2 21 Jul 2026 pre-release
    Release notes

    This is a pre-release for testing only. Do not deploy to mainnet, testnet, or any production host.

    https://github.com/anza-xyz/agave/blob/master/CHANGELOG.md#edge-channel

    Open source →
  6. 4.3.0-alpha.1 13 Jul 2026 pre-release

    Nothing published for this version

  7. 4.2.1 13 Aug 2026
    Release notes

    What's Changed

    Full Changelog: v4.2.0...v4.2.1

    Open source →
  8. 4.2.0 07 Aug 2026
    Release notes

    This a stable release suitable for Testnet, Devnet and Mainnet Beta.

    https://github.com/anza-xyz/agave/blob/v4.2/CHANGELOG.md

    What's Changed

    • v4.2: runtime: do not rewrite inactive stakes (backport of #14213) by @mergify[bot] in #14263
    • v4.2: Sets stack size for accounts hasher rayon thread pool (backport of #14295) by @mergify[bot] in #14297
    • v4.2: feat: Migrate to spl-token-2022-interface 3.x and parse PermissionedBurn (backport of #13504) by @mergify[bot] in #14009
    • v4.2: feat(transaction-status): Parse the token Batch instruction (backport of #13512) by @mergify[bot] in #14259
    • v4.2: feat(transaction-status): Parse the permissioned burn ConfidentialBurn instruction (backport of #13511) by @mergify[bot] in #14258
    • v4.2: poh: wake replay after controller message completion (backport of #14038) by @mergify[bot] in #14276
    • v4.2: Sets default incremental snapshot interval to 200 slots (backport of #14350) by @mergify[bot] in #14393

    Full Changelog: v4.2.0-rc.1...v4.2.0

    Open source →
    Release notes

    RPC

    Breaking

    • The jsonParsed output for confidential transfer Deposit (depositConfidentialTransfer) and Withdraw (withdrawConfidentialTransfer) instructions has been corrected. These instructions operate on a single token account, so the mislabeled source and destination fields have been replaced by a single account field (the mint field is unchanged).
    • Blockstore reward column legacy format support removed.
      • The Rewards column was updated in v1.5 (Solana Labs client) to switch from storing bincode serialized values to protobuf encoded values. The old bincode format will no longer be supported for fallback reads as of v4.2

    Changes

    • Added RpcClient::get_latest_blockhash_with_commitment_and_context, which returns the getLatestBlockhash response together with its context (notably context.slot).

    Validator

    Breaking

    • XDP transmit in SKB (copy) mode is now enabled by default on Linux. The validator requires CAP_NET_ADMIN and CAP_NET_RAW capabilities (plus CAP_BPF and CAP_PERFMON for --xdp-zero-copy). Pass --no-xdp to fall back to UDP sockets. The XDP CPU core is auto-selected to avoid overlapping the PoH core; passing --xdp-cpu-cores with a core that conflicts with the PoH core is an error.

    Deprecations

    • --accounts-db-access-storages-method is now deprecated and a no-op (the mmap value was deprecated in v4.0.0; mmap mode has now been removed entirely). The flag is still accepted for backward compatibility, but account storages are always accessed via file I/O.
    • --accounts-db-cache-limit-mb is now deprecated. Use --accounts-db-write-cache-limit instead.
    • --experimental-poh-pinned-cpu-core is now deprecated. Use --poh-pinned-cpu-core instead.

    Changes

    • Turbine shred ingestion now rejects shreds more than half an epoch in the future (previously up to 2 full epochs ahead was accepted).
    • When XDP is enabled, gossip egress does not support private and loopback addresses. Operators running with --allow-private-addr must also pass --no-xdp.
    • The default incremental snapshot interval is now 200 slots.

    CLI

    Breaking

    Changes

    • vote-account supports Alpenglow and as such vote-account --output json breaks compatibility with older versions.
    • Support Keystone hardware wallets using usb://keystone
    Open source →
  9. 4.2.0-rc.1 31 Jul 2026 pre-release
    Release notes

    This is Mainnet-beta Upgrade Candidate release recommended for 10% adoption.
    It is also recommended for Testnet and Devnet.

    https://github.com/anza-xyz/agave/blob/v4.2/CHANGELOG.md

    What's Changed

    Full Changelog: v4.2.0-rc.0...v4.2.0-rc.1

    Open source →
  10. 4.2.0-rc.0 24 Jul 2026 pre-release
    Release notes

    This is Mainnet-beta Upgrade Candidate release recommended for 10% adoption.
    It is also recommended for Testnet and Devnet.

    https://github.com/anza-xyz/agave/blob/v4.2/CHANGELOG.md

    What's Changed

    Full Changelog: v4.2.0-beta.2...v4.2.0-rc.0

    Open source →
  11. 4.2.0-beta.2 17 Jul 2026 pre-release
    Release notes

    This is a testnet release.

    What's Changed

    • v4.2: Loads accounts in parallel for lt hash updates of stake accounts (backport of #13696) by @mergify[bot] in #13752
    • v4.2: receive_and_buffer: remove expensive status-cache check (backport of #13437) by @mergify[bot] in #13703
    • v4.2: xdp: improve packet drop perf (backport of #13658) by @mergify[bot] in #13723
    • v4.2: status_cache: use SmallVec instead of Vec for tx fork status (backport of #13876) by @mergify[bot] in #13893
    • v4.2: Handle dead keys secondary (backport of #13717) by @mergify[bot] in #13818

    Full Changelog: v4.2.0-beta.1...v4.2.0-beta.2

    Open source →
  12. 4.2.0-beta.1 10 Jul 2026 pre-release

    Nothing published for this version

  13. 4.2.0-beta.0 06 Jul 2026 pre-release

    Nothing published for this version

  14. 4.1.2 10 Jul 2026

    Nothing published for this version

  15. 4.1.1 02 Jul 2026

    Nothing published for this version

  16. 4.1.0 26 Jun 2026
    Release notes

    RPC

    Breaking

    Changes

    Validator

    Breaking

    • --block-production-method central-scheduler is no longer supported. If passed, a warning is emitted and behavior will default to the greedy-scheduler implementation.
    • scheduler-bindings version has been increased to 4. Connecting external schedulers must be updated.
    • Validator now requires 26 ports, --dynamic-port-range must be at least 26 wide.

    Deprecations

    • Using minimal for --accounts-index-limit is now deprecated.
    • --account-shrink-path is now deprecated.
    • sbf-sdk.tar.bz2 is not included anymore in the Agave release tarball. The file will be made available in the new cargo-build-sbf repository.
    • XDP support is no longer experimental. The --experimental-retransmit-xdp-interface, --experimental-retransmit-xdp-cpu-cores, and --experimental-retransmit-xdp-zero-copy flags have been deprecated. Use --xdp-interface, --xdp-cpu-cores, and --xdp-zero-copy instead. Behavior is unchanged: pass --xdp-cpu-cores to enable XDP on the specified cores.

    Changes

    Open source →
  17. 4.1.0-rc.1 16 Jun 2026 pre-release

    Nothing published for this version

  18. 4.1.0-rc.0 12 Jun 2026 pre-release

    Nothing published for this version

  19. 4.1.0-beta.3 05 Jun 2026 pre-release

    Nothing published for this version

  20. 4.1.0-beta.2 01 Jun 2026 pre-release

    Nothing published for this version

  21. 4.1.0-beta.1 22 May 2026 pre-release

    Nothing published for this version

  22. 4.0.3 16 Jun 2026

    Nothing published for this version

  23. 4.0.2 05 Jun 2026

    Nothing published for this version

  24. 4.0.1 29 May 2026

    Nothing published for this version

  25. 4.0.0 16 May 2026
    Release notes

    RPC

    Breaking

    • --public-tpu-address and --public-tpu-forwards-address CLI arguments and setPublicTpuForwardsAddress, setPublicTpuAddress RPC methods now specify QUIC ports, not UDP.
    • Blockstore PerfSamples column legacy format removed.
      • The PerfSamples column format was updated in agave v1.15 to write PerfSampleV2. The old format, PerfSampleV1, will no longer be supported for fallback reads as of v4.0.
    • Blockstore transaction metadata column legacy format support removed.
      • The TransactionStatus, TransactionMemos, and AddressSignatures columns were updated in v1.18 to write a new key format. The old key format will no no longer be supported for fallback reads as of v4.0
    • getSignaturesForAddress returns an error with code -32020 if the before or until signatures are not found, rather than a successful response with an empty array

    Changes

    • Added --enable-scheduler-bindings which binds an IPC server at <ledger-path>/scheduler_bindings.ipc for external schedulers to connect to.
    • Added clientId field to each node in getClusterNodes response

    Validator

    Breaking

    • Removed deprecated arguments
      • --accounts-db-clean-threads
      • --accounts-db-hash-threads
      • --accounts-db-read-cache-limit-mb
      • --accounts-hash-cache-path
      • --cuda
      • --disable-accounts-disk-index
      • --dev-halt-at-slot
      • --monitor (exit subcommand)
      • --transaction-struct
      • --wait-for-exit (exit subcommand)
      • --tpu-coalesce-ms
      • --tpu-disable-quic
      • --tpu-enable-udp
    • --block-verification-method blockstore-processor is no longer supported. Remove the argument or switch to --block-verification-method unified-scheduler instead.
    • Removed support for ingestion of transactions via UDP. QUIC is now the only option.
    • All monorepo crates falling outside the backward compatibility policy are now part of the Agave Unstable API and their symbols have been made private. Enable the agave-unstable-api crate feature to acknowledge use of an interface that may break without warning.
    • Linux Capability handling has been hardened wrt requirements for configuring XDP (#9133)
      • It is now an explicit error + exit(1) if the process has not been permitted a capability required by the current configuration
      • A warning is logged if the process has been permitted capabilities not required by any configuration supported by the binary
      • All permitted capabilities not required by the current configuration are now dropped at startup. This includes all validator subcommands which never require capabilities
      • Operations which require capabilities are now performed on the main thread and capabilities dropped before any other threads are spawned, with two exceptions
        1. One thread retains cap_net_admin in order to reinitialize its netlink socket upon error
        2. If any niceness flags are passed, all threads retain cap_sys_nice, which has been the case since those feature were originally added
      • Updated instructions for permitting Linux Capabilities for the validator process are as follow. Either of these two options is supported. Choose whichever best fits your operational procedures
        • Add the following to the [Service] section of you Systemd service file

          # Permit Linux Capabilities required to configure XDP
          AmbientCapabilities=CAP_NET_RAW CAP_NET_ADMIN CAP_BPF CAP_PERFMON
          
          # Disallow inheritance of any Linux Capabilities not required by any configuration
          CapabilityBoundingSet=CAP_NET_RAW CAP_NET_ADMIN CAP_BPF CAP_PERFMON
          
        -- OR --
        • set xattr capabilities directly on the binary file. note that this step must be repeated every time that the binary file is replaced

          sudo setcap cap_net_raw,cap_net_admin,cap_bpf,cap_perfmon=p /path/to/agave-validator
          
    • Interpretation of the Version struct fields in gossip ContactInfo has been changed to support communicating semver prerelease notation. Implementations lacking this support will observe a larger than expected min version field from node publishing from a prerelease version. The new interpretation is as follows:
      • The top two bits (14 and 15) of the minor field are now reserved for prerelease status
      • Prerelease status bit values are; 3 - alpha, 2 - beta, 1 - release candidate (rc), 0 - stable
      • When prerelease status bits are non-zero, the Version::patch field is interpreted as the prerelease number and the actual patch value is implicitly zero
      • Examples:
        • { min: 0x0001, patch: 0x0003 } -> X.1.3
        • { min: 0x4002, patch: 0x0002 } -> X.2.0-rc.2
        • { min: 0x8003, patch: 0x0001 } -> X.3.0-beta.1
        • { min: 0xC004, patch: 0x0000 } -> X.4.0-alpha.0
    • Blockstore SlotMeta and Index columns legacy format removed.
      • The Index column was updated in v2.2 to write IndexV2.
      • The SlotMeta column format was updated in v3.1 to write SlotMetaV2.
      • The old formats, SlotMetaV1 and IndexV1, will no longer be supported for fallback reads as of v4.0

    Deprecations

    • Using mmap for --accounts-db-access-storages-method is now deprecated.
    • The --enable-accounts-disk-index flag is now deprecated. Use --accounts-index-limit instead. To retain the same behavior, use --accounts-index-limit minimal.

    Changes

    • agave-validator exit now saves bank state before exiting. This enables restarts from local state when snapshot generation is disabled.
    • Added --accounts-index-limit to specify the memory limit of the accounts index.
    • Snapshot archive unpacking now uses direct I/O by default to improve performance by bypassing the OS page cache. Use --no-accounts-db-snapshots-direct-io to opt out if your file system does not support O_DIRECT. Direct I/O will be extended to snapshot creation in a future release.
    • --block-production-method central-scheduler is now deprecated and will be removed in a future release. Use central-scheduler-greedy instead.

    CLI

    Breaking

    • Removed deprecated arguments
      • --use-quic
      • --use-udp

    Deprecations

    • The ping command is deprecated and will be removed in v4.1.

    Changes

    • Support Trezor hardware wallets using usb://trezor

    Platform tools

    Breaking

    • cargo-build-sbf --debug now generates a file program.so.debug instead of program.debug.
    • cargo-build-sbf --debug places all debug related objects inside target/deploy/debug.

    Geyser

    Changes

    • Account update notifications have their fields populated from the account values post transaction execution. This means notifications for closed accounts (accounts with a balance of zero lamports) will no longer have their owner/data/etc manually zeroed out. Note that if the on-chain program does zero out any fields itself, those will remain zeroed out in the notification.

    Test Validator

    Changes

    • Now shows TPU QUIC address instead of TPU UDP in the dashboard.
    Open source →
  26. 4.0.0-rc.1 08 May 2026 pre-release

    Nothing published for this version

  27. 4.0.0-rc.0 24 Apr 2026 pre-release

    Nothing published for this version

  28. 4.0.0-beta.7 10 Apr 2026 pre-release

    Nothing published for this version

  29. 4.0.0-beta.6 03 Apr 2026 pre-release

    Nothing published for this version

  30. 4.0.0-beta.5 27 Mar 2026 pre-release

    Nothing published for this version

  31. 4.0.0-beta.4 23 Mar 2026 pre-release

    Nothing published for this version

  32. 4.0.0-beta.3 20 Mar 2026 pre-release

    Nothing published for this version

  33. 4.0.0-beta.2 13 Mar 2026 pre-release

    Nothing published for this version

  34. 4.0.0-beta.1 10 Mar 2026 pre-release

    Nothing published for this version

  35. 4.0.0-beta.0 06 Mar 2026 pre-release

    Nothing published for this version

  36. 4.0.0-alpha.0 27 Feb 2026 pre-release

    Nothing published for this version

  37. 3.1.14 24 Apr 2026

    Nothing published for this version

  38. 3.1.13 10 Apr 2026

    Nothing published for this version

  39. 3.1.12 03 Apr 2026

    Nothing published for this version

  40. 3.1.11 20 Mar 2026

    Nothing published for this version

  41. 3.1.10 10 Mar 2026

    Nothing published for this version

  42. 3.1.9 19 Feb 2026

    Nothing published for this version

  43. 3.1.8 26 Jan 2026

    Nothing published for this version

  44. 3.1.7 19 Jan 2026

    Nothing published for this version

  45. 3.1.6 10 Jan 2026

    Nothing published for this version

  46. 3.1.5 21 Dec 2025

    Nothing published for this version

  47. 3.1.4 03 Dec 2025

    Nothing published for this version

  48. 3.1.3 29 Nov 2025

    Nothing published for this version

  49. 3.1.2 22 Nov 2025

    Nothing published for this version

  50. 3.1.1 14 Nov 2025

    Nothing published for this version

  51. 3.0.14 10 Jan 2026

    Nothing published for this version

  52. 3.0.13 21 Dec 2025

    Nothing published for this version

  53. 3.0.12 29 Nov 2025

    Nothing published for this version

  54. 3.0.11 22 Nov 2025

    Nothing published for this version

  55. 3.0.10 04 Nov 2025

    Nothing published for this version

  56. 3.0.8 24 Oct 2025

    Nothing published for this version

  57. 3.0.7 17 Oct 2025

    Nothing published for this version

  58. 3.0.6 08 Oct 2025

    Nothing published for this version

  59. 3.0.5 01 Oct 2025

    Nothing published for this version

  60. 3.0.4 26 Sep 2025

    Nothing published for this version

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive