Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and publish to npm yourself or setup this action to publish automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to master, this PR will be updated.
master
is currently in pre mode so this branch has prereleases rather than normal releases. If you want to exit prereleases, runchangeset pre exit
onmaster
.Releases
@solana/web3.js-experimental@2.0.0-preview.4
Major Changes
4e7ec14
Thanks @steveluscher! - This version of the@solana/web3.js
Technology Preview fixes a bug with the default RPC transport, adds a utility that you can use to get an estimate of a transaction message's compute unit cost, and introduces@solana/react
hooks for interacting with Wallet Standard wallets.To install the fourth Technology Preview:
For an example of how to use the new
@solana/react
package to interact with wallets in a React application, see the example application inexamples/react-app
. We hope to see similar wallet-connection packages patterned off@solana/react
for other application frameworks soon.Try a demo of Technology Preview 4 in your browser at CodeSandbox.
#2858
22a34aa
Thanks @steveluscher! - Transaction signers' methods now takeminContextSlot
as an option. This is important for signers that simulate transactions, like wallets. They might be interested in knowing the slot at which the transaction was prepared, lest they run simulation at too early a slot.#2852
cec9048
Thanks @lorisleiva! - ThesignAndSendTransactionMessageWithSigners
function now automatically asserts that the provided transaction message contains a single sending signer and fails otherwise.#2707
cb49bfa
Thanks @mcintyre94! - Allow creating keypairs and keys from ReadonlyUint8Array#2715
26dae19
Thanks @lorisleiva! - ConsolidatedgetNullableCodec
andgetOptionCodec
with theirZeroable
counterparts and added more configurationsNamely, the
prefix
option can now be set tonull
and thefixed
option was replaced with thenoneValue
option which can be set to"zeroes"
forZeroable
codecs or a custom byte array for custom representations of none values. This means thegetZeroableNullableCodec
andgetZeroableOptionCodec
functions were removed in favor of the new options.Additionally, it is now possible to create nullable codecs that have no
prefix
nornoneValue
. In this case, the existence of the nullable item is indicated by the presence of any remaining bytes left to decode.Also note that it is now possible for custom
noneValue
byte arrays to be of any length — previously, it had to match the fixed-size of the nullable item.Here is a recap of all supported scenarios, using a
u16
codec as an example:encode(42)
/encode(null)
noneValue
(default)noneValue: "zeroes"
noneValue
(0xff
)u8
prefix (default)0x012a00
/0x00
0x012a00
/0x000000
0x012a00
/0x00ff
prefix
(u16
)0x01002a00
/0x0000
0x01002a00
/0x00000000
0x01002a00
/0x0000ff
prefix
0x2a00
/0x
0x2a00
/0x0000
0x2a00
/0xff
Reciprocal changes were made with
getOptionCodec
.#2785
4f19842
Thanks @steveluscher! - The development mode error message printer no longer fatals on Safari < 16.4.#2867
be36bab
Thanks @steveluscher! - TheinnerInstructions
property of JSON-RPC errors used snake case rather than camelCase forstackHeight
andprogramId
. This has been corrected.#2728
f1e9ac2
Thanks @joncinque! - Simulate with the maximum quantity of compute units (1.4M) instead ofu32::MAX
#2703
0908628
Thanks @steveluscher! - Created a utility function to estimate the compute unit consumption of a transaction message#2795
ce876d9
Thanks @steveluscher! - Added React hooks to which you can pass a Wallet StandardUiWalletAccount
and obtain aMessageModifyingSigner
,TransactionModifyingSigner
, orTransactionSendingSigner
for use in constructing, signing, and sending Solana transactions and messages#2772
8fe4551
Thanks @steveluscher! - Added a series of React hooks to which you can pass a Wallet StandardUiWalletAccount
to extract itssignMessage
,signTransaction
, andsignAndSendTransaction
features#2819
7ee47ae
Thanks @steveluscher! - Fixed a bug where coalesced RPC calls could end up aborted even though there were still interested consumers. This would happen if the consumer count fell to zero, then rose above zero again, in the same runloop.#2868
91fb1f3
Thanks @steveluscher! - ThesimulateTransaction
RPC method now accepts aninnerInstructions
param. Whentrue
, the simulation result will include an array of inner instructions, if any.#2866
73bd5a9
Thanks @steveluscher! - TheTransactionInstruction
RPC type now hasstackHeight
#2751
6340744
Thanks @mcintyre94! - Allow Rpc Request params to be any type, instead of requiring an arrayPatch Changes
#2728
f1e9ac2
Thanks @joncinque! - Simulate with the maximum quantity of compute units (1.4M) instead ofu32::MAX
#2606
367b8ad
Thanks @lorisleiva! - Use commonjs package type#2703
0908628
Thanks @steveluscher! - Created a utility function to estimate the compute unit consumption of a transaction messageUpdated dependencies [
7ee47ae
,26dae19
,4f19842
,73bd5a9
,cec9048
,be36bab
,cb49bfa
,3d90241
,367b8ad
,22a34aa
]:@solana/signers@2.0.0-preview.4
Minor Changes
22a34aa
Thanks @steveluscher! - Transaction signers' methods now takeminContextSlot
as an option. This is important for signers that simulate transactions, like wallets. They might be interested in knowing the slot at which the transaction was prepared, lest they run simulation at too early a slot.Patch Changes
#2852
cec9048
Thanks @lorisleiva! - ThesignAndSendTransactionMessageWithSigners
function now automatically asserts that the provided transaction message contains a single sending signer and fails otherwise.#2707
cb49bfa
Thanks @mcintyre94! - Allow creating keypairs and keys from ReadonlyUint8Array#2606
367b8ad
Thanks @lorisleiva! - Use commonjs package typeUpdated dependencies [
4f19842
,be36bab
,cb49bfa
,3d90241
,367b8ad
]:@solana/accounts@2.0.0-preview.4
Patch Changes
#2606
367b8ad
Thanks @lorisleiva! - Use commonjs package typeUpdated dependencies [
3bf31e7
,4f19842
,73bd5a9
,be36bab
,367b8ad
,6340744
]:@solana/addresses@2.0.0-preview.4
Patch Changes
#2606
367b8ad
Thanks @lorisleiva! - Use commonjs package typeUpdated dependencies [
3bf31e7
,4f19842
,be36bab
,367b8ad
]:@solana/assertions@2.0.0-preview.4
Patch Changes
#2606
367b8ad
Thanks @lorisleiva! - Use commonjs package typeUpdated dependencies [
4f19842
,be36bab
,367b8ad
]:@solana/codecs@2.0.0-preview.4
Patch Changes
#2715
26dae19
Thanks @lorisleiva! - ConsolidatedgetNullableCodec
andgetOptionCodec
with theirZeroable
counterparts and added more configurationsNamely, the
prefix
option can now be set tonull
and thefixed
option was replaced with thenoneValue
option which can be set to"zeroes"
forZeroable
codecs or a custom byte array for custom representations of none values. This means thegetZeroableNullableCodec
andgetZeroableOptionCodec
functions were removed in favor of the new options.Additionally, it is now possible to create nullable codecs that have no
prefix
nornoneValue
. In this case, the existence of the nullable item is indicated by the presence of any remaining bytes left to decode.Also note that it is now possible for custom
noneValue
byte arrays to be of any length — previously, it had to match the fixed-size of the nullable item.Here is a recap of all supported scenarios, using a
u16
codec as an example:encode(42)
/encode(null)
noneValue
(default)noneValue: "zeroes"
noneValue
(0xff
)u8
prefix (default)0x012a00
/0x00
0x012a00
/0x000000
0x012a00
/0x00ff
prefix
(u16
)0x01002a00
/0x0000
0x01002a00
/0x00000000
0x01002a00
/0x0000ff
prefix
0x2a00
/0x
0x2a00
/0x0000
0x2a00
/0xff
Reciprocal changes were made with
getOptionCodec
.#2606
367b8ad
Thanks @lorisleiva! - Use commonjs package typeUpdated dependencies [
3bf31e7
,26dae19
,a29bfee
,367b8ad
]:@solana/codecs-core@2.0.0-preview.4
Patch Changes
#2606
367b8ad
Thanks @lorisleiva! - Use commonjs package typeUpdated dependencies [
4f19842
,be36bab
,367b8ad
]:@solana/codecs-data-structures@2.0.0-preview.4
Patch Changes
#2715
26dae19
Thanks @lorisleiva! - ConsolidatedgetNullableCodec
andgetOptionCodec
with theirZeroable
counterparts and added more configurationsNamely, the
prefix
option can now be set tonull
and thefixed
option was replaced with thenoneValue
option which can be set to"zeroes"
forZeroable
codecs or a custom byte array for custom representations of none values. This means thegetZeroableNullableCodec
andgetZeroableOptionCodec
functions were removed in favor of the new options.Additionally, it is now possible to create nullable codecs that have no
prefix
nornoneValue
. In this case, the existence of the nullable item is indicated by the presence of any remaining bytes left to decode.Also note that it is now possible for custom
noneValue
byte arrays to be of any length — previously, it had to match the fixed-size of the nullable item.Here is a recap of all supported scenarios, using a
u16
codec as an example:encode(42)
/encode(null)
noneValue
(default)noneValue: "zeroes"
noneValue
(0xff
)u8
prefix (default)0x012a00
/0x00
0x012a00
/0x000000
0x012a00
/0x00ff
prefix
(u16
)0x01002a00
/0x0000
0x01002a00
/0x00000000
0x01002a00
/0x0000ff
prefix
0x2a00
/0x
0x2a00
/0x0000
0x2a00
/0xff
Reciprocal changes were made with
getOptionCodec
.#2606
367b8ad
Thanks @lorisleiva! - Use commonjs package typeUpdated dependencies [
4f19842
,be36bab
,367b8ad
]:@solana/codecs-numbers@2.0.0-preview.4
Patch Changes
#2606
367b8ad
Thanks @lorisleiva! - Use commonjs package typeUpdated dependencies [
4f19842
,be36bab
,367b8ad
]:@solana/codecs-strings@2.0.0-preview.4
Patch Changes
3bf31e7
Thanks @steveluscher! - Converting a base16 string to a byte buffer is now between 2-3x faster (Thanks @tibi77!)#2606
367b8ad
Thanks @lorisleiva! - Use commonjs package typeUpdated dependencies [
4f19842
,be36bab
,367b8ad
]:@solana/compat@2.0.0-preview.4
Patch Changes
#2606
367b8ad
Thanks @lorisleiva! - Use commonjs package typeUpdated dependencies [
4f19842
,be36bab
,cb49bfa
,367b8ad
]:@solana/errors@2.0.0-preview.4
Patch Changes
#2785
4f19842
Thanks @steveluscher! - The development mode error message printer no longer fatals on Safari < 16.4.#2867
be36bab
Thanks @steveluscher! - TheinnerInstructions
property of JSON-RPC errors used snake case rather than camelCase forstackHeight
andprogramId
. This has been corrected.#2606
367b8ad
Thanks @lorisleiva! - Use commonjs package type@solana/fast-stable-stringify@2.0.0-preview.4
Patch Changes
367b8ad
Thanks @lorisleiva! - Use commonjs package type@solana/functional@2.0.0-preview.4
Patch Changes
367b8ad
Thanks @lorisleiva! - Use commonjs package type@solana/instructions@2.0.0-preview.4
Patch Changes
#2606
367b8ad
Thanks @lorisleiva! - Use commonjs package typeUpdated dependencies [
4f19842
,be36bab
,367b8ad
]:@solana/keys@2.0.0-preview.4
Patch Changes
#2707
cb49bfa
Thanks @mcintyre94! - Allow creating keypairs and keys from ReadonlyUint8Array#2606
367b8ad
Thanks @lorisleiva! - Use commonjs package typeUpdated dependencies [
3bf31e7
,4f19842
,be36bab
,367b8ad
]:@solana/options@2.0.0-preview.4
Patch Changes
#2715
26dae19
Thanks @lorisleiva! - ConsolidatedgetNullableCodec
andgetOptionCodec
with theirZeroable
counterparts and added more configurationsNamely, the
prefix
option can now be set tonull
and thefixed
option was replaced with thenoneValue
option which can be set to"zeroes"
forZeroable
codecs or a custom byte array for custom representations of none values. This means thegetZeroableNullableCodec
andgetZeroableOptionCodec
functions were removed in favor of the new options.Additionally, it is now possible to create nullable codecs that have no
prefix
nornoneValue
. In this case, the existence of the nullable item is indicated by the presence of any remaining bytes left to decode.Also note that it is now possible for custom
noneValue
byte arrays to be of any length — previously, it had to match the fixed-size of the nullable item.Here is a recap of all supported scenarios, using a
u16
codec as an example:encode(42)
/encode(null)
noneValue
(default)noneValue: "zeroes"
noneValue
(0xff
)u8
prefix (default)0x012a00
/0x00
0x012a00
/0x000000
0x012a00
/0x00ff
prefix
(u16
)0x01002a00
/0x0000
0x01002a00
/0x00000000
0x01002a00
/0x0000ff
prefix
0x2a00
/0x
0x2a00
/0x0000
0x2a00
/0xff
Reciprocal changes were made with
getOptionCodec
.#2573
a29bfee
Thanks @lorisleiva! - Fix missing export of Zeroable Option codecs#2606
367b8ad
Thanks @lorisleiva! - Use commonjs package typeUpdated dependencies [
3bf31e7
,26dae19
,4f19842
,be36bab
,367b8ad
]:@solana/programs@2.0.0-preview.4
Patch Changes
#2606
367b8ad
Thanks @lorisleiva! - Use commonjs package typeUpdated dependencies [
4f19842
,be36bab
,367b8ad
]:@solana/react@2.0.0-preview.4
Patch Changes
#2795
ce876d9
Thanks @steveluscher! - Added React hooks to which you can pass a Wallet StandardUiWalletAccount
and obtain aMessageModifyingSigner
,TransactionModifyingSigner
, orTransactionSendingSigner
for use in constructing, signing, and sending Solana transactions and messages#2772
8fe4551
Thanks @steveluscher! - Added a series of React hooks to which you can pass a Wallet StandardUiWalletAccount
to extract itssignMessage
,signTransaction
, andsignAndSendTransaction
featuresUpdated dependencies [
4f19842
,cec9048
,be36bab
,cb49bfa
,367b8ad
,22a34aa
]:@solana/rpc@2.0.0-preview.4
Patch Changes
#2819
7ee47ae
Thanks @steveluscher! - Fixed a bug where coalesced RPC calls could end up aborted even though there were still interested consumers. This would happen if the consumer count fell to zero, then rose above zero again, in the same runloop.#2606
367b8ad
Thanks @lorisleiva! - Use commonjs package typeUpdated dependencies [
91fb1f3
,daf9691
,4f19842
,73bd5a9
,be36bab
,367b8ad
,6340744
]:@solana/rpc-api@2.0.0-preview.4
Patch Changes
#2868
91fb1f3
Thanks @steveluscher! - ThesimulateTransaction
RPC method now accepts aninnerInstructions
param. Whentrue
, the simulation result will include an array of inner instructions, if any.#2865
daf9691
Thanks @steveluscher! - Fixed a TypeScript error where the return value ofsimulateTransaction
claimed there was anaccounts
property at the top level when it is in factvalue.accounts
#2866
73bd5a9
Thanks @steveluscher! - TheTransactionInstruction
RPC type now hasstackHeight
#2606
367b8ad
Thanks @lorisleiva! - Use commonjs package typeUpdated dependencies [
3bf31e7
,4f19842
,73bd5a9
,be36bab
,cb49bfa
,3d90241
,367b8ad
,6340744
]:@solana/rpc-graphql@2.0.0-preview.4
Patch Changes
#2606
367b8ad
Thanks @lorisleiva! - Use commonjs package typeUpdated dependencies [
3bf31e7
,367b8ad
]:@solana/rpc-parsed-types@2.0.0-preview.4
Patch Changes
367b8ad
Thanks @lorisleiva! - Use commonjs package type@solana/rpc-spec@2.0.0-preview.4
Patch Changes
#2606
367b8ad
Thanks @lorisleiva! - Use commonjs package type#2751
6340744
Thanks @mcintyre94! - Allow Rpc Request params to be any type, instead of requiring an arrayUpdated dependencies [
4f19842
,be36bab
,367b8ad
]:@solana/rpc-spec-types@2.0.0-preview.4
Patch Changes
367b8ad
Thanks @lorisleiva! - Use commonjs package type@solana/rpc-subscriptions@2.0.0-preview.4
Patch Changes
#2606
367b8ad
Thanks @lorisleiva! - Use commonjs package typeUpdated dependencies [
4f19842
,73bd5a9
,be36bab
,367b8ad
]:@solana/rpc-subscriptions-api@2.0.0-preview.4
Patch Changes
#2606
367b8ad
Thanks @lorisleiva! - Use commonjs package typeUpdated dependencies [
73bd5a9
,cb49bfa
,3d90241
,367b8ad
]:@solana/rpc-subscriptions-spec@2.0.0-preview.4
Patch Changes
#2606
367b8ad
Thanks @lorisleiva! - Use commonjs package typeUpdated dependencies [
4f19842
,be36bab
,367b8ad
]:@solana/rpc-subscriptions-transport-websocket@2.0.0-preview.4
Patch Changes
#2606
367b8ad
Thanks @lorisleiva! - Use commonjs package typeUpdated dependencies [
4f19842
,be36bab
,367b8ad
]:@solana/rpc-transformers@2.0.0-preview.4
Patch Changes
#2606
367b8ad
Thanks @lorisleiva! - Use commonjs package typeUpdated dependencies [
73bd5a9
,367b8ad
,6340744
]:@solana/rpc-transport-http@2.0.0-preview.4
Patch Changes
#2606
367b8ad
Thanks @lorisleiva! - Use commonjs package typeUpdated dependencies [
4f19842
,be36bab
,367b8ad
,6340744
]:@solana/rpc-types@2.0.0-preview.4
Patch Changes
#2866
73bd5a9
Thanks @steveluscher! - TheTransactionInstruction
RPC type now hasstackHeight
#2606
367b8ad
Thanks @lorisleiva! - Use commonjs package typeUpdated dependencies [
3bf31e7
,4f19842
,be36bab
,367b8ad
]:@solana/sysvars@2.0.0-preview.4
Patch Changes
#2606
367b8ad
Thanks @lorisleiva! - Use commonjs package typeUpdated dependencies [
26dae19
,4f19842
,73bd5a9
,be36bab
,367b8ad
]:@solana/transaction-confirmation@2.0.0-preview.4
Patch Changes
#2606
367b8ad
Thanks @lorisleiva! - Use commonjs package typeUpdated dependencies [
7ee47ae
,3bf31e7
,4f19842
,73bd5a9
,be36bab
,cb49bfa
,3d90241
,367b8ad
]:@solana/transaction-messages@2.0.0-preview.4
Patch Changes
#2607
3d90241
Thanks @mcintyre94! - Freeze the instructions and lifetimeConstraint fields within transaction messages#2606
367b8ad
Thanks @lorisleiva! - Use commonjs package typeUpdated dependencies [
26dae19
,4f19842
,73bd5a9
,be36bab
,367b8ad
]:@solana/transactions@2.0.0-preview.4
Patch Changes
#2606
367b8ad
Thanks @lorisleiva! - Use commonjs package typeUpdated dependencies [
3bf31e7
,26dae19
,4f19842
,73bd5a9
,be36bab
,cb49bfa
,3d90241
,367b8ad
]:@solana/webcrypto-ed25519-polyfill@2.0.0-preview.4
Patch Changes
367b8ad
Thanks @lorisleiva! - Use commonjs package type