NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #4867 most downloaded on npm
Codecs for numbers of different sizes and endianness
Last release 7 days ago
28 Sep 2026
Ships fairly regularly
a new release about every 8 days
Nearly every release is documented
notes for 39 of 39 stable releases
1 version withdrawn
withdrawn after publishing
3 years old
2248 releases · first in 2023
One column per quarter.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
🎉 @solana/kit is the new name for the 2.x line of @solana/web3.js.
🎉 @solana/kit is the new name for the 2.x line of @solana/web3.js.
This should make it easier to adopt in projects that will continue to depend on the legacy 1.x line of web3.js for the time being. It will also prevent confusion for new developers who might install the 2.x line while following a legacy 1.x tutorial.
In time, more guide-based content will be released; in the meantime take a look at the READMEs, the examples/ directory, and https://tsdocs.dev/docs/@solana/kit. If you have questions, please post at https://sola.na/sse.
1adf435 Thanks @leantOnSol! - A two-versions-old version of Node LTS is now specified everywhere via the engines field, including the one in the root of the pnpm workspace, and engine-strictness is delegated to the .npmrc files.
Updated dependencies [1adf435, c7b7dd9, 5af7f20, 704d8a2]:
5af7f20 Thanks @steveluscher! - When the HTTP transport throws an error, you can now access the response headers through e.context.headers. This can be useful, for instance, if the HTTP error is a 429 Rate Limit error, and the response contains a Retry-After header.
try {
const { value: latestBlockhash } = await rpc.getLatestBlockhash().send();
} catch (e) {
if (isSolanaError(e, SOLANA_ERROR__RPC__TRANSPORT_HTTP_ERROR)) {
if (e.context.code === 429 /* rate limit error */) {
const retryAfterHeaderValue = e.context.headers.get('Retry-After');
if (retryAfterHeaderValue != null) {
// ...
}
}
}
}
1adf435 Thanks @leantOnSol! - A two-versions-old version of Node LTS is now specified everywhere via the engines field, including the one in the root of the pnpm workspace, and engine-strictness is delegated to the .npmrc files.
#130 c7b7dd9 Thanks @lorisleiva! - Gracefully handle JSON RPC errors that do not provide a code attribute in their response
704d8a2 Thanks @mcintyre94! - Change data field of transaction message instructions to use ReadonlyUint8Array
5af7f20 Thanks @steveluscher! - When the HTTP transport throws an error, you can now access the response headers through e.context.headers. This can be useful, for instance, if the HTTP error is a 429 Rate Limit error, and the response contains a Retry-After header.
try {
const { value: latestBlockhash } = await rpc.getLatestBlockhash().send();
} catch (e) {
if (isSolanaError(e, SOLANA_ERROR__RPC__TRANSPORT_HTTP_ERROR)) {
if (e.context.code === 429 /* rate limit error */) {
const retryAfterHeaderValue = e.context.headers.get('Retry-After');
if (retryAfterHeaderValue != null) {
// ...
}
}
}
}
1adf435, c7b7dd9, 5af7f20, 704d8a2]:
c880687 Thanks @steveluscher! - Removed the fees sysvar which has been disabled on the network for a year, and has now been removed from the test validator in Agave 2.0
% solana feature status JAN1trEUEtZjgXYzNBYHU9DYd7GnThhXfFP7SzPXkPsG
Feature | Status | Activation Slot | Description
JAN1trEUEtZjgXYzNBYHU9DYd7GnThhXfFP7SzPXkPsG | active since epoch 483 | 208656004 | disable fees sysvar
1adf435 Thanks @leantOnSol! - A two-versions-old version of Node LTS is now specified everywhere via the engines field, including the one in the root of the pnpm workspace, and engine-strictness is delegated to the .npmrc files.
Updated dependencies [1adf435, c7b7dd9, 9b179dc, 400f4d5, 5af7f20, 704d8a2]:
9b179dc Thanks @lorisleiva! - Add missing space attribute to AccountInfoBase and BaseAccount
Updated dependencies [1adf435, 0c577eb, c7b7dd9, 9b179dc, 400f4d5, 5af7f20, 704d8a2]:
1adf435 Thanks @leantOnSol! - A two-versions-old version of Node LTS is now specified everywhere via the engines field, including the one in the root of the pnpm workspace, and engine-strictness is delegated to the .npmrc files.
Updated dependencies [1adf435, c7b7dd9, 5af7f20, 704d8a2]:
1adf435, cfe6910]:
1adf435 Thanks @leantOnSol! - A two-versions-old version of Node LTS is now specified everywhere via the engines field, including the one in the root of the pnpm workspace, and engine-strictness is delegated to the .npmrc files.
Updated dependencies [1adf435, c7b7dd9, 5af7f20, 704d8a2]:
1adf435 Thanks @leantOnSol! - A two-versions-old version of Node LTS is now specified everywhere via the engines field, including the one in the root of the pnpm workspace, and engine-strictness is delegated to the .npmrc files.
cfe6910 Thanks @Jasu! - LiteralUnionCodec is now exported from @solana/codecs-data-structures
Updated dependencies [1adf435, c7b7dd9, 5af7f20, 704d8a2]:
1adf435 Thanks @leantOnSol! - A two-versions-old version of Node LTS is now specified everywhere via the engines field, including the one in the root of the pnpm workspace, and engine-strictness is delegated to the .npmrc files.
Updated dependencies [1adf435, c7b7dd9, 5af7f20, 704d8a2]:
1adf435 Thanks @leantOnSol! - A two-versions-old version of Node LTS is now specified everywhere via the engines field, including the one in the root of the pnpm workspace, and engine-strictness is delegated to the .npmrc files.
Updated dependencies [1adf435, c7b7dd9, 5af7f20, 704d8a2]:
1adf435 Thanks @leantOnSol! - A two-versions-old version of Node LTS is now specified everywhere via the engines field, including the one in the root of the pnpm workspace, and engine-strictness is delegated to the .npmrc files.
#40 790b050 Thanks @steveluscher! - yAdded a helper to convert legacy TransactionInstruction objects to modern IInstruction objects
#57 9029dc1 Thanks @nickfrosty! - updated readme to include instruction compat functions
Updated dependencies [1adf435, d1c787c, 0c577eb, c7b7dd9, 5af7f20, 704d8a2]:
704d8a2 Thanks @mcintyre94! - Change data field of transaction message instructions to use ReadonlyUint8Array
Updated dependencies [1adf435, c7b7dd9, 5af7f20, 704d8a2]:
1adf435 Thanks @leantOnSol! - A two-versions-old version of Node LTS is now specified everywhere via the engines field, including the one in the root of the pnpm workspace, and engine-strictness is delegated to the .npmrc files.
#60 d1c787c Thanks @steveluscher! - Key operations now work in versions of Firefox that support Ed25519 natively
Updated dependencies [1adf435, c7b7dd9, 5af7f20, 704d8a2]:
#101 4662f52 Thanks @mcintyre94! - Add a new function fetchAddressesForLookupTables to fetch the addresses contained in a list of lookup tables'
Updated dependencies [a1e45a1, 1adf435, d1c787c, 0c577eb, c7b7dd9, 9b179dc, 29d1e28, 400f4d5, 5af7f20, 70eb596, 704d8a2, c880687]:
1adf435 Thanks @leantOnSol! - A two-versions-old version of Node LTS is now specified everywhere via the engines field, including the one in the root of the pnpm workspace, and engine-strictness is delegated to the .npmrc files.
Updated dependencies [1adf435, cfe6910, c7b7dd9, 5af7f20, 704d8a2]:
1adf435, 0c577eb, c7b7dd9, 5af7f20, 704d8a2]:
1adf435 Thanks @leantOnSol! - A two-versions-old version of Node LTS is now specified everywhere via the engines field, including the one in the root of the pnpm workspace, and engine-strictness is delegated to the .npmrc files.
Updated dependencies [a1e45a1, 1adf435, d1c787c, 0c577eb, c7b7dd9, 5af7f20, 704d8a2]:
29d1e28 Thanks @steveluscher! - Disabled the MaxListenersExceededWarning in Node when creating event targets for internal use
Updated dependencies [1adf435, c7b7dd9, 9b179dc, 3c25e7f, 400f4d5, 5af7f20, 704d8a2]:
#85 3c25e7f Thanks @mcintyre94! - Fix accountKeys type in getTransaction JSON parsed
Updated dependencies [1adf435, d1c787c, 0c577eb, c7b7dd9, 9b179dc, 400f4d5, 5af7f20, 704d8a2]:
#153 400f4d5 Thanks @steveluscher! - The values of the rewardType property have been corrected. They previously were specified as having a lowercase initial character.
Updated dependencies [1adf435]:
1adf435, c7b7dd9, 5af7f20, 704d8a2]:
29d1e28 Thanks @steveluscher! - Disabled the MaxListenersExceededWarning in Node when creating event targets for internal use
70eb596 Thanks @steveluscher! - The online/offline checker in the subscriptions implementation no longer throws an error when hosted in the Content Scripts environment of a browser extension
Updated dependencies [1adf435, c7b7dd9, 9b179dc, 29d1e28, 400f4d5, 5af7f20, 704d8a2]:
1adf435, d1c787c, 0c577eb, 9b179dc, 29d1e28, 400f4d5, 704d8a2]:
29d1e28 Thanks @steveluscher! - Disabled the MaxListenersExceededWarning in Node when creating event targets for internal use
Updated dependencies [1adf435, c7b7dd9, 29d1e28, 5af7f20, 704d8a2]:
29d1e28 Thanks @steveluscher! - Disabled the MaxListenersExceededWarning in Node when creating event targets for internal use
Updated dependencies [1adf435, c7b7dd9, 29d1e28, 5af7f20, 704d8a2]:
1adf435, c7b7dd9, 9b179dc, 400f4d5, 5af7f20, 704d8a2]:
9b179dc Thanks @lorisleiva! - Add missing space attribute to AccountInfoBase and BaseAccount
#153 400f4d5 Thanks @steveluscher! - The values of the rewardType property have been corrected. They previously were specified as having a lowercase initial character.
Updated dependencies [1adf435, 0c577eb, c7b7dd9, 5af7f20, 704d8a2]:
#151 a1e45a1 Thanks @lorisleiva! - addSignersToTransactionMessage now upgrades feePayer to a signer when applicable
1adf435 Thanks @leantOnSol! - A two-versions-old version of Node LTS is now specified everywhere via the engines field, including the one in the root of the pnpm workspace, and engine-strictness is delegated to the .npmrc files.
Updated dependencies [1adf435, d1c787c, 0c577eb, c7b7dd9, 5af7f20, 704d8a2]:
1adf435 Thanks @leantOnSol! - A two-versions-old version of Node LTS is now specified everywhere via the engines field, including the one in the root of the pnpm workspace, and engine-strictness is delegated to the .npmrc files.
29d1e28 Thanks @steveluscher! - Disabled the MaxListenersExceededWarning in Node when creating event targets for internal use
Updated dependencies [1adf435, c7b7dd9, 5af7f20, 704d8a2]:
1adf435 Thanks @leantOnSol! - A two-versions-old version of Node LTS is now specified everywhere via the engines field, including the one in the root of the pnpm workspace, and engine-strictness is delegated to the .npmrc files.
29d1e28 Thanks @steveluscher! - Disabled the MaxListenersExceededWarning in Node when creating event targets for internal use
Updated dependencies [1adf435, d1c787c, 0c577eb, c7b7dd9, 9b179dc, 29d1e28, 400f4d5, 5af7f20, 70eb596, 704d8a2]:
704d8a2 Thanks @mcintyre94! - Change data field of transaction message instructions to use ReadonlyUint8Array
Updated dependencies [1adf435, 0c577eb, cfe6910, c7b7dd9, 9b179dc, 400f4d5, 5af7f20, 704d8a2]:
1adf435, d1c787c, 0c577eb, cfe6910, c7b7dd9, 9b179dc, 400f4d5, 5af7f20, 704d8a2]:
1adf435 Thanks @leantOnSol! - A two-versions-old version of Node LTS is now specified everywhere via the engines field, including the one in the root of the pnpm workspace, and engine-strictness is delegated to the .npmrc files.
#59 710e571 Thanks @steveluscher! - Fixed a bug where specifying Ed25519 in a different case, or as an object { name: 'Ed25519' } would cause key operations to be delegated to the underlying runtime instead of the polyfill
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →