Skip to content

Instantly share code, notes, and snippets.

@krebernisak
Last active November 6, 2024 22:51
Show Gist options
  • Save krebernisak/ab92c3943c90364eb93b6010f9cd2565 to your computer and use it in GitHub Desktop.
Save krebernisak/ab92c3943c90364eb93b6010f9cd2565 to your computer and use it in GitHub Desktop.
Solana mainnet feature set
Feature | Status | Description
E3PHP7w8kB7np3CTQ1qQ2tW3KCtjRSXBQgW9vM2mWv2Y | active since slot 41040000 | secp256k1 program
E5JiFDQCwyC6QfT9REFyMpfK2mHcmv1GUDySU1Ue7TYv | active since slot 41040000 | spl-token multisig fix
4kpdyrcj5jS47CZb2oJGfVxjYbsMm2Kx97gFyZrxxwXz | active since slot 51408000 | no overflow rent distribution
GaBtBJvmS4Arjj5W1NmFcyvPjsHN38UGYDq2MDwbs9Qu | active since slot 55728001 | deprecate unused rewards sysvar
4RWNif6C2WCNiKVW7otP4G7dkmkHGyKQWRpuZ1pxKU5m | active since slot 57456000 | pico inflation
GE7fRxmW46K6EmCD9AMZSbnaJ2e3LfqCZzdHi9hmYAgi | active since slot 57888004 | filter stake_delegation_accounts #14062
7XRJcS5Ud5vxGB54JbK9N2vBZVwnwdBNeJW1ibRgD9gx | active since slot 64800004 | full inflation enabled by Certus One
BzBBveUDymEYoYzcMWNQCx3cd4jQs7puaVFHLtsbB6fm | active since slot 64800004 | community vote allowing Certus One to enable full inflation
BL99GYhdjjcv6ys22C9wPgn2aTVERDbPHHo4NbS3hgp7 | active since slot 66528004 | spl-token self-transfer fix
GvDsGDkH5gyzwpDhxNixx8vtx1kwYHH13RiNAPw27zXb | active since slot 66528004 | warp timestamp again, adjust bounding to 25% fast 80% slow #15204
3ccR6QpxGYsAbWyfevEtBNGfWV4xBffxRj2tD6A9i39F | active since slot 68688000 | check initialized Vote data
D4jsDcXaqdW8tDAWn8H4R25Cdns2YwLneujSL1zvjW6R | active since slot 71712000 | require custodian to authorize withdrawer change for locked stake
BcWknVcgvonN8sL4HE4XFuEVgfcee5MwxWPAgP6ZV89X | active since slot 92448000 | vote/state program checked instructions #18345
BrTR9hzw4WBGFP65AJMbpAo64DcA3U6jdPSga9fMV5cS | active since slot 93312000 | perform all checks for transfers of 0 lamports
FToKNBYyiF4ky9s8WsmLBXHCht17Ek7RXaLZGHzzQhJ1 | active since slot 93312000 | spl-token set_authority fix
3E3jV7v9VcdJL8iYZUMax9DiDno8j7EWUVbhm9RtShj2 | active since slot 100656000 | demote program write locks to readonly, except when upgradeable loader present #19593 #20265
C5fh68nJ7uyKAuYZg2x9sEQ5YrVf3dkW6oojNBSc3Jvo | active since slot 101088000 | send votes to the tpu vote port
EBeznQDjcPG8491sFsKZYBi5S5jTVXMpAKNDJMQPS2kq | active since slot 102816004 | reduce required payer balance for program deploys
EVW9B5xD9FFK7vw1SBARwMA4s5eRo5eKJdKpsBikzKBz | active since slot 102816004 | prohibit extra transaction signatures
SAdVFw3RZvzbo6DvySbSdBnHN4gkzSTH9dSxesyKKPj | active since slot 104112000 | Enable advancing credits observed for activation epoch #19309
meRgp4ArRPhD3KtCY9c5yAf2med7mBLsjKTPeVUHqBL | active since slot 104112000 | allow merging active stakes with unmatched credits_observed #18985
6RvdSWHh8oh72Dp7wMTS2DBkf3fRPtChfNrAo3cZZoXJ | active since slot 104976000 | secp256k1_recover syscall
BKCPBQQBZqggVnFso5nQ8rQ4RwwogYwjuUt9biBjxwNF | active since slot 104976000 | collect rent from accounts owned by sysvars
265hPS8k8xJ37ot82KEgjRunsUp5w4n4Q4VwwiN9i9ps | active since slot 109728000 | optimize epoch boundary updates
8kEuAshXLsgkUEdcFVLqrjCGGHVWFW99ZZpxvAzzMtBp | active since slot 110592000 | dedupe config program signers
DhsYfRjxfnh2g7HKJYSzT79r74Afa1wbHkAgHndrA1oy | active since slot 110592000 | upgrade libsecp256k1 to v0.5.0
HFpdDDNQjvcXnXKec697HDDsyk6tFoWS2o8fkxuhQZpL | active since slot 110592000 | remove delegations from stakes cache when inactive
4d5AKtxoh93Dwm1vHXUU3iRATuMndx1c431KgT2td52r | active since slot 117072004 | Add compute_budget_program
7txXZZD6Um59YoLMF7XUNimbMjsqsWhc7g2EniiTrmp1 | active since slot 117072004 | fail vote withdraw instructions which leave the account non-rent-exempt
EMX9Q7TVFAmQ9V1CggAkhMzhXSg8ECp7fHrWQX2G1chf | active since slot 117072004 | evict invalid stakes cache entries on epoch boundaries
Ftok2jhqAqxUWEiCVRrfRs9DPppWP8cgTB7NQNKL88mS | active since slot 117072004 | spl-token v3.3.0 release
HTTgmruMYRZEntyL3EdCDdnS6e4D5wRq1FA7kQsb66qq | active since slot 117072004 | remove support for the native loader
6ppMXNYLhVd7GcsZ5uV11wQEW7spppiMVfqQv5SXhDpX | active since slot 117936008 | enable builtin ed25519 signature verify program
6uaHcKPGUy4J7emLBgUTeufhJdiwhngW6a1R9B7c2ob9 | active since slot 117936008 | enable sol_log_data syscall
DwScAzPUjuv65TMbDnFY7AgwmotzWy3xpEJMXM3hZFaB | active since slot 117936008 | enable sol_{set,get}_return_data syscall
FjSRMpFe7mofQ3WrEMT7Smjk2sME1XdAoRxcv55V6M44 | active since slot 119232004 | deterministic shred seed
4VvpgRD6UsHvkXwpuQhtR5NG1G4esMaExeWuSEpsYRUa | active since slot 127008000 | turbine peers shuffle patch
21AWDosvp3pBamFW91KB35pNoaoZVTM7ess8nr2nt53B | inactive | merge NonceError into SystemError
2h63t332mGCCsWK2nqqqHhN4U9ayyqhLVFvczznHDoTZ | inactive | update syscall base costs
2jXx2yDmGysmBKfKYNgLj2DQyAQv6mMk2BPh4eSbyB4H | inactive | deprecate fee calculator
2ry7ygxiYURULZCrypHhveanvP5tzZ4toRwVp89oCNSj | inactive | validator checks block cost against max limit in realtime, reject if exceeds.
36PRUK2Dz6HWYdG9SpjeAsF5F3KxnFCakA2BZMbtMhSb | inactive | use correct check for nonoverlapping regions in memcpy syscall
3KZZ6Ks1885aGBQ45fwRcPXVBCtzUvxhUTkwKMR41Tca | inactive | enable versioned transaction message processing
3XgNukcZWf9o3HdA3fpJbm94XFc4qpvTXc8h1wxYwiPi | inactive | disable ldabs* and ldind* BPF instructions
3aJdcZqxoLpSBxgeYGjPwaYS1zzcByxUDqJkbzWAH1Zb | inactive | move the CPI stack overflow check to the end of push
3gtZPqvPpsbXZVCx6hceMfWxtsmrjMzmg8C7PLKSxS2d | inactive | filter vote slots older than the slot hashes history
4ApgRX3ud6p7LNMJmsuaAcZY5HWctGPr5obAsjB3A54d | inactive | prevent calling precompiles as programs
4yuaYAj2jGMGTh1sSmi4G2eFscsDq8qjugJXZoBN6YEa | inactive | disable reporting of unresolved BPF symbols at runtime
5ekBxc8itEnPv4NzGJtr8BVVQLNMQuLMNQQj7pHoLNZ9 | inactive | transaction wide compute cap
75m6ysz33AfLA5DDEzWM1obBrnPQRSsdVQ2nRmc8Vuu1 | inactive | support account data reallocation
7g9EUwj4j7CS21Yx1wvgWLjSZeh5aPq8x9kpoPwXM8n8 | inactive | limit secp256k1 recovery id
8aXvSuopd1PUj7UhehfXJRg6619RHp8ZvwTyyJHdUYsj | inactive | fail libsec256k1_verify if count appears wrong
9kdtFSrXHQg3hKkbXkQ6trJ3Ja1xpJ22CTFSNAciEwmL | inactive | fail instructions which have native_loader as program_id directly
ALBk3EWdeAg2WAGf6GPDUf1nynyNqCdEVmgouG7rpuCj | inactive | fail vote account withdraw to 0 unless account earned 0 credits in last completed epoch
AVZS3ZsN4gi6Rkx2QUibYuSJG3S6QHib7xCYhG6vGJxU | inactive | vote account withdraw authority may change the authorized voter #22521
BiCU7M5w8ZCMykVSyhZ7Q3m2SWoR2qrEQ86ERcDX77ME | inactive | nonce must be writable
BkFDxiJQWZXGTZaJQxH7wVEHkAmwCgSEVkrvswFfRJPD | inactive | require all new transaction accounts with data to be rent-exempt
CBkDroRDqm8HwHe6ak9cguPjUomrASEkfmxEaZ5CNNxz | inactive | enforce max number of locked accounts per transaction
CCu4boMmfLuqcmfTLPHQiUo22ZdUsXjgzPAURYaWt1Bw | inactive | Requestable heap frame size
CFK1hRCNy8JJuAAY8Pb2GjLFNdCThS2qwZNe3izzBMgn | inactive | add add_get_processed_sibling_instruction_syscall
DT4n6ABDqs6w4bnfwrXT9rsprcPf6cdDga1egctaPkLC | inactive | full inflation on devnet and testnet
E8MkiWZNNPGU6n55jkGzyj8ghUmjCHRmDFdYYFYHxWhQ | inactive | leave nonce as is on success
FaTa4SpiaSNH44PGC4z8bnGVTkSRYaWvrBs3KTu8XQQq | inactive | SPL Associated Token Account Program release version 1.0.4, tied to token 3.3.0 #22648
Ff8b1fBeB86q8cjq47ZhsQLgv5EkHu3G1C99zjUfAzrq | inactive | enable direct vote state update
GLrVvDPkQi5PMYUrsYWT9doZhSHr1BVZXqj5DbFps3rS | inactive | bump neon_evm's compute budget
GTUMCZ8LTNxVfxdrw7ZsDFTxXb7TutYkzJnFwinpE6dg | inactive | disable the deprecated BPF loader
H3kBSaKdeiUsyHmeHqjJYNc27jesXZ6zWj3zWkowQbkV | inactive | fix owner for instructions sysvar
HTW2pSyErTj4BV6KBM9NZ9VBUJVxt7sacNWcf76wtzb3 | inactive | blake3 syscall
HyrbKftCdJ5CrUfEti6x26Cj7rZLNe32weugk7tLcWb8 | inactive | syscalls use saturated math
JAN1trEUEtZjgXYzNBYHU9DYd7GnThhXfFP7SzPXkPsG | inactive | disable fees sysvar
Vo5siZ442SaZBKPXNocthiXysNviW4UYPwRFggmbgAp | inactive | fixes Bank::transaction_count to include all committed transactions, not just successful ones
capRxUrBjNkkCpjrJxPGfPaWijB7q3JoDfsWXAnt46r | inactive | cap the accounts data len
nWBqjr3gpETbiaVj3CBJ3HFC5TMdnJDGt21hnvSTvVZ | inactive | check physical overlapping regions
zk1snxsc6Fh3wsGNbbHAJNHiJoYgF29mMnTSusGx5EJ | inactive | enable Zk Token proof program and syscalls
To activate features the stake must be >= 95%
To activate features the RPC nodes must be >= 95%
Tool Feature Set: 3235626988
Software Version Feature Set Stake RPC
1.11.0 805162261 0.00% 0.59%
1.10.4, 1.10.5, 1.10.6, 1.11.0 3235626988 0.05% 1.17% <-- me
1.10.3 3801236799 0.06% 0.00%
1.9.10, 1.9.11, 1.9.12, 1.9.13, 1.9.14, 1.9.15 1070292356 97.77% 74.56%
1.9.9 3246413280 0.00% 1.17%
1.9.5 3125401026 0.00% 0.20%
1.9.4 3258470607 0.00% 0.20%
1.8.17 3263758455 0.00% 0.20%
1.8.15, 1.8.16 1886190546 0.03% 1.17%
1.8.12, 1.8.13, 1.8.14 1006352700 0.38% 1.96%
1.8.5 52865992 0.00% 0.20%
unknown unknown 0.00% 18.59%
Feature activation is not allowed at this time
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment