@mysten/sui
Version:
Sui TypeScript API
1,702 lines (1,111 loc) • 64.5 kB
Markdown
# @mysten/sui.js
## 2.13.0
### Minor Changes
- 329350a: Add `tx.coin()` and `tx.balance()` methods and rewrite CoinWithBalance intent resolution.
- `tx.coin({ type, balance })` — produces a `Coin<T>` of the requested balance, sourced from owned
coins and gas
- `tx.balance({ type, balance })` — produces a `Balance<T>` of the requested balance, sourced from
address balance or owned coins
- When balance intents are used, the merged pool remainder is converted to Balance and returned to
the sender's address balance via `send_funds`
- Multiple intents of the same coin type are now resolved with a single combined `SplitCoins`
instead of per-intent splits
- 3c83909: Optimize transaction resolver to parallelize independent network requests (system state,
balance, coins, protocol config) and add coin reservation compat mode for address balance gas
payment when `coin_reservation` feature flag is enabled.
## 2.12.1
### Patch Changes
- f9067d5: Fix JSON-RPC `simulateTransaction` failing when passed a Transaction instance with
unresolved object inputs
## 2.12.0
### Minor Changes
- bfeff69: Add `checksEnabled` option to `simulateTransaction` to allow disabling transaction
validation checks during simulation, enabling inspection of non-public/non-entry Move functions.
## 2.11.0
### Minor Changes
- 319aae1: Remove WebSocket client and streaming subscription APIs from the JSON-RPC transport. The
`subscribe` method, `WebSocketConstructor` option, `websocket` option,
`JsonRpcTransportSubscribeOptions` type, and `Unsubscribe` type have been removed from the public
API.
## 2.10.0
### Minor Changes
- 78a577b: Add `getProtocolConfig()` Core API method returning protocol version, feature flags, and
config attributes.
### Patch Changes
- 2ee1a2a: Improve `waitForTransaction` polling with schedule-based timing tuned to actual indexing
latency. Default schedule polls at 0, 300, 600, 1500, 3500ms then every 2s. Add `pollSchedule`
option for custom absolute-time schedules.
## 2.9.1
### Patch Changes
- 8835d80: Only set ValidDuring expiration when there are no versioned objects in transaction
## 2.9.0
### Minor Changes
- c769abb: Add `SUI_COIN_REGISTRY_OBJECT_ID` constant
## 2.8.0
### Minor Changes
- e51dc5d: Add credentialId support to PasskeyKeypair for targeted credential selection during
signing
### Patch Changes
- 43e69f8: Add embedded LLM-friendly docs to published packages
- Updated dependencies [43e69f8]
- @mysten/bcs@2.0.3
## 2.7.0
### Minor Changes
- 2faaf69: Add `include: { display: true }` support to `getObject`, `getObjects`, and
`listOwnedObjects` across all three transports (gRPC, GraphQL, JSON-RPC). Returns a `Display`
object with `output` and `errors` fields when a Display template exists for the object type, or
`null` when no template is registered.
## 2.6.0
### Minor Changes
- 903eecc: Add `childId` to `getDynamicField` response for dynamic object fields.
- e33fea3: Add `json` field to event data in transaction responses. When `events: true` is included,
each event now contains a `json` field with the JSON representation of the event's Move struct
data (or `null` if unavailable). Supported across all three transports (gRPC, GraphQL, JSON-RPC).
- 903eecc: Add `include: { value: true }` option to `listDynamicFields` on `SuiGrpcClient` and
`SuiGraphQLClient` to optionally return the field values
### Patch Changes
- e33fea3: Fix gas payment resolution to check sender's address balance when sender is their own gas
payer. Previously, address balance was only checked for sponsored transactions, causing "No valid
gas coins found" errors for accounts with sufficient address balance but no coin objects.
- 903eecc: Fix IDE autocomplete for `include` option in client and client.core methods
- 903eecc: Update GraphQL schema and remove references to dropped `SimulationResult.error` and
`ExecutionResult.errors` fields
## 2.5.1
### Patch Changes
- e8f985e: Fix duplicate `storageCost` in `ParallelTransactionExecutor` gas calculation, which was
double-counting storage costs.
## 2.5.0
### Minor Changes
- 1c97aa2: Add childId for listDyanamicFields response and fix name encoding for dynamic field
objects
### Patch Changes
- 9ab9a50: Fix `parseTypeTag` to correctly handle vector type parameters containing struct types
(e.g. `vector<0x2::sui::SUI>`). Previously, the `::` inside the vector's type parameter caused the
entire vector to be incorrectly parsed as a struct tag. Also reject malformed vector inputs like
`vector<>` (empty type parameter) and `vector<u8` (missing closing bracket).
## 2.4.0
### Minor Changes
- 5270eaf: Add `isValidStructTag` validation utility. `isValidNamedType` now also validates the full
struct tag structure (completing the TODO that previously returned `true` unconditionally).
## 2.3.2
### Patch Changes
- 99d1e00: Add default export condition
- Updated dependencies [99d1e00]
- @mysten/utils@0.3.1
- @mysten/bcs@2.0.2
## 2.3.1
### Patch Changes
- 265ec25: Add `isPreparedForSerialization` method to Transaction class for checking if a
transaction is ready for JSON serialization. Update `Transaction.from` to validate that
transactions are prepared before copying and automatically register the CoinWithBalance intent
resolver when needed.
## 2.3.0
### Minor Changes
- 724a13a: Improve handling of clever errors during simulation
### Patch Changes
- fcbf952: Fix `$extend` chaining so that `client.$extend(sdk1()).$extend(sdk2())` works correctly.
Previously, the second `$extend` call would lose the extensions from the first call.
## 2.2.0
### Minor Changes
- 6125fbd: Add getCoinMetadata to core api
## 2.1.0
### Minor Changes
- f950118: Use a Proxy for client extensions
## 2.0.1
### Patch Changes
- Updated dependencies [339d1e0]
- @mysten/utils@0.3.0
- @mysten/bcs@2.0.1
## 2.0.0
### Major Changes
- e00788c: Align BCS Object and Effects schemas exactly with Rust implementation
**Breaking Changes:**
- **ExecutionStatus**: Renamed variant `Failed` → `Failure` to match Rust implementation
- **UnchangedSharedKind**: Renamed to `UnchangedConsensusKind` and removed obsolete variants
(`MutateDeleted`, `ReadDeleted`)
- **ExecutionCancelledDueToSharedObjectCongestion**: Fixed field name from `congestedObjects` to
`congested_objects` (snake_case)
- Renamed BCS Owner enum variant: `ConsensusV2` → `ConsensusAddressOwner`
- Renamed Data enum variant: `data.MoveObject` → `data.Move`
- Renamed exported schema: `ObjectBcs` → `bcs.Object`
- Renamed TransactionEffectsV2 field: `unchangedSharedObjects` → `unchangedConsensusObjects`
**New Error Variants Added:**
ExecutionFailureStatus:
- `MoveVectorElemTooBig`
- `MoveRawValueTooBig`
- `InvalidLinkage`
- `InsufficientBalanceForWithdraw`
- `NonExclusiveWriteInputObjectModified`
CommandArgumentError:
- `InvalidArgumentArity`
- `InvalidTransferObject`
- `InvalidMakeMoveVecNonObjectArgument`
- `ArgumentWithoutValue`
- `CannotMoveBorrowedValue`
- `CannotWriteToExtendedReference`
- `InvalidReferenceArgument`
**New Types:**
- Added complete Object BCS schema matching Rust's ObjectInner
- Added `MovePackage` type for package objects
- Added `TypeOrigin` for tracking type definitions
- Added `UpgradeInfo` for package upgrade tracking
- Added `Data.Package` variant (was missing)
- Added accumulator types: `AccumulatorWriteV1`, `AccumulatorAddress`, `AccumulatorOperation`,
`AccumulatorValue`
- Added `ObjectOut.AccumulatorWriteV1` variant
- Added UnchangedConsensusKind variants: `MutateConsensusStreamEnded`, `ReadConsensusStreamEnded`,
`Cancelled`, `PerEpochConfig`
- Moved all Object BCS definitions from separate file into main bcs.ts
**Migration Guide:**
```typescript
// ExecutionStatus variant name change
// Before
if (effects.status.$kind === 'Success') { ... }
const error = effects.status.Failed.error;
// After
if (effects.status.$kind === 'Success') { ... }
const error = effects.status.Failure.error;
// UnchangedSharedKind → UnchangedConsensusKind
// Before
effects.unchangedSharedObjects.forEach(([id, obj]) => {
if (obj.$kind === 'MutateDeleted') { ... }
});
// After
effects.unchangedConsensusObjects.forEach(([id, obj]) => {
if (obj.$kind === 'MutateConsensusStreamEnded') { ... }
});
```
- e00788c: Consolidate GraphQL schema exports into a single version:
- Removed versioned schema exports: `@mysten/sui/graphql/schemas/2024.1`,
`@mysten/sui/graphql/schemas/2024.4`, `@mysten/sui/graphql/schemas/latest`
- Added single unified schema export: `@mysten/sui/graphql/schema`
- The SDK now tracks only the latest mainnet GraphQL schema version
See the migration guide for updating your code to use the new export
- e00788c: Rename `Commands` export to `TransactionCommands` to fix ESM resolution for React Native
- e00788c: Remove default client used for verifying zklogin signatures
- e00788c: `network` is now a required option on SuiGraphQLClient and SuiJsonRpcClient
- e00788c: Make legacyAddress parameter in all methods to reduce confusion and inconsistency around
default values
- e00788c: Remove named-packages plugin and global plugin registry APIs. MVR resolution is now built
directly into the transaction resolution process, making the plugin-based approach obsolete.
**Removed from @mysten/sui:**
- `namedPackagesPlugin` function
- `NamedPackagesPluginOptions` type
- `Transaction.registerGlobalSerializationPlugin()` static method
- `Transaction.unregisterGlobalSerializationPlugin()` static method
- `Transaction.registerGlobalBuildPlugin()` static method
- `Transaction.unregisterGlobalBuildPlugin()` static method
- Global plugin registry system
**Changed:**
- MVR name resolution (`.move` names) now happens automatically during transaction building for
all clients (JSON-RPC and gRPC)
- No manual plugin registration is required - MVR resolution is integrated into the standard
transaction resolution flow
- e00788c: Remove SuiClient exports from @mysten/sui/client
BREAKING CHANGE: All exports from `@mysten/sui/client` have been removed. Use
`@mysten/sui/jsonRpc` instead:
- `SuiClient` -> `SuiJsonRpcClient`
- `SuiClientOptions` -> `SuiJsonRpcClientOptions`
- `isSuiClient` -> `isSuiJsonRpcClient`
- `SuiTransport` -> `JsonRpcTransport`
- `getFullnodeUrl` -> `getJsonRpcFullnodeUrl`
Migration example:
```ts
// Before
import { SuiClient, getFullnodeUrl } from '@mysten/sui/client';
const client = new SuiClient({ url: getFullnodeUrl('devnet'), network: 'devnet' });
// After
import { SuiJsonRpcClient, getJsonRpcFullnodeUrl } from '@mysten/sui/jsonRpc';
const client = new SuiJsonRpcClient({ url: getJsonRpcFullnodeUrl('devnet'), network: 'devnet' });
```
- e00788c: Remove deprecated exports and properties:
- Removed `fromB64`, `toB64`, `fromHEX`, `toHEX` exports from utils (use `fromBase64`, `toBase64`,
`fromHex`, `toHex` instead)
- Removed `schema` property from `ParsedKeypair` (use `scheme` instead)
- Removed `requestType` parameter from `executeTransactionBlock`
- Removed deprecated faucet methods: `requestSuiFromFaucetV0`, `requestSuiFromFaucetV1`,
`getFaucetRequestStatus` (use `requestSuiFromFaucetV2` instead)
- Removed deprecated subscription methods: `subscribeEvent`, `subscribeTransaction`
- Removed `blockData` property from Transaction class (use `getData()` instead)
- Removed `gasConfig` property from TransactionDataBuilder (use `gasData` instead)
- Removed `NamedPackagesPluginCache` type export (use `NamedPackagesOverrides` instead)
- Removed unnamed plugin registration methods from Transaction class
- e00788c: Stabilize experimental client API by moving it from `@mysten/sui/experimental` to
`@mysten/sui/client`:
- Moved client implementation from `src/experimental/` to `src/client/`
- Removed `Experimental_` prefix from all client types and classes
- Updated all internal packages to use the new stable API
Breaking changes:
- `@mysten/sui/experimental` module has been removed
- All `Experimental_` prefixed types/classes have been renamed (e.g., `Experimental_CoreClient` →
`CoreClient`)
- Client types namespace changed from `Experimental_SuiClientTypes` to `SuiClientTypes`
### Minor Changes
- e00788c: Transactions now default the expiration to the current epoch + 1 using `ValidDuring`
- e00788c: Update transaction executor APIs to accept `ClientWithCoreApi` for gRPC, GraphQL, and
JSON-RPC compatibility.
**Breaking Changes:**
- `CachingTransactionExecutor`, `SerialTransactionExecutor`, and `ParallelTransactionExecutor` now
accept any client implementing `ClientWithCoreApi` instead of requiring `SuiJsonRpcClient`
- The `executeTransaction()` return type changed: `data` property renamed to `result` and uses
core API types (`SuiClientTypes.TransactionResult`)
- The second parameter of `executeTransaction()` changed from JSON-RPC options to core API
`include` options
### Patch Changes
- Updated dependencies [e00788c]
- Updated dependencies [e00788c]
- @mysten/bcs@2.0.0
## 1.45.2
### Patch Changes
- 29e8b92: Fix available commands check after resolving intents
## 1.45.1
### Patch Changes
- e3811f1: update valibot
## 1.45.0
### Minor Changes
- 88bdbac: Add TranasctionData.insertTransaction method
## 1.44.0
### Minor Changes
- 44d9b4f: Update GraphQL client to use beta schema"
## 1.43.2
### Patch Changes
- Updated dependencies [89fa2dc]
- @mysten/bcs@1.9.2
## 1.43.1
### Patch Changes
- Updated dependencies [a37829f]
- @mysten/bcs@1.9.1
## 1.43.0
### Minor Changes
- f3b19a7: Use bcs.byteVector and bcs.bytes instead of bcs.vector(bcs.u8()) and bcs.fixedArrray(n,
bcs.u8()) to improve performance
- bf9f85c: deprecate asClientExtension methods
### Patch Changes
- Updated dependencies [f3b19a7]
- Updated dependencies [f3b19a7]
- @mysten/bcs@1.9.0
## 1.42.0
### Minor Changes
- 98c8a27: Update grpc to rc
## 1.41.0
### Minor Changes
- d554cd2: Add new @mysten/sui/jsonRpc export
- 04fcfbc: Add GRPC client
### Patch Changes
- Updated dependencies [a17c337]
- @mysten/bcs@1.8.1
## 1.40.0
### Minor Changes
- f5fc0c0: Update Transaction.from to improve parsing Transaction instances from other SDK versions
## 1.39.1
### Patch Changes
- a9f9035: Added previousTransaction to GetDynamicFieldResponse
## 1.39.0
### Minor Changes
- ca92487: Add mvr support to more core API methods
- 5ab3c0a: Update graphql schema and add getMoveFunction to core client API
## 1.38.0
### Minor Changes
- ea1ac70: Update dependencies and improve support for typescript 5.9
### Patch Changes
- 3c1741f: Adds `deriveObjectID` helper to calculate `derived_object` addresses.
- Updated dependencies [ea1ac70]
- @mysten/utils@0.2.0
- @mysten/bcs@1.8.0
## 1.37.6
### Patch Changes
- c689b98: Fix tx.object.random and tx.object.denyList helpers
- 5b9ff1a: Lock version of poseidon-lite used
## 1.37.5
### Patch Changes
- 3980d04: Fix bad transaction state after transaction building fails
## 1.37.4
### Patch Changes
- 6b03e57: Fix remaining balance check in ParallelExecutor
## 1.37.3
### Patch Changes
- 8ff1471: Fix system objects to avoid unnecessary network calls
- Clock (0x6) and Random (0x8) now return fully resolved SharedObject references with mutable:
false
- System (0x5) and DenyList (0x403) now accept optional `mutable` parameter:
- When undefined, returns UnresolvedObject with initialSharedVersion for backward compatibility
- When explicitly set, returns SharedObjectRef with the specified mutability
- Improves transaction building performance by avoiding unnecessary network lookups
Fixes #424
## 1.37.2
### Patch Changes
- 660377c: Mark type-only exports as being type-only so that bundlers do not attempt to bundle empty
files.
## 1.37.1
### Patch Changes
- Updated dependencies [33230ed]
- Updated dependencies [33230ed]
- Updated dependencies [33230ed]
- @mysten/bcs@1.7.0
## 1.37.0
### Minor Changes
- 72168f0: handle transfer of party objects through ptb command
## 1.36.2
### Patch Changes
- 44354ab: Fix tx.pure return type when used with a typename
## 1.36.1
### Patch Changes
- c76ddc5: passkey: add it to multisig
## 1.36.0
### Minor Changes
- 783bb9e: make verifyZkLoginSignature a required part of the core api
- 783bb9e: Add ConsensusAddressOwner support
- 5cbbb21: Add default mvr urls
### Patch Changes
- Updated dependencies [1c4a82d]
- @mysten/utils@0.1.1
- @mysten/bcs@1.6.4
## 1.35.0
### Minor Changes
- 888afe6: Run mvr plugin during serialization instead of build
## 1.34.0
### Minor Changes
- 3fb7a83: Fix transaction resolution when transactions are built with clients from older SDK
versions
## 1.33.0
### Minor Changes
- a00522b: Add mvr APIs to core client
### Patch Changes
- Updated dependencies [a00522b]
- @mysten/utils@0.1.0
- @mysten/bcs@1.6.3
## 1.32.0
### Minor Changes
- 6b7deb8: Defer resolution of object contents in core api methods
## 1.31.0
### Minor Changes
- 1ff4e57: Add `resolveNameServiceNames` to the core client
- 550e2e3: Add tx.isFullyResolved method that checks if all transaction data has been resolved
- 550e2e3: Added option digest to TransactionDataV2 for transaction data that has been fully
resolved
## 1.30.5
### Patch Changes
- 5bd6ca3: Fix graphql get object for package
## 1.30.4
### Patch Changes
- 5dce590: fix epoch in experimental core api
- 4a5aef6: Update thunk results after build
## 1.30.3
### Patch Changes
- 4457f10: Fix adding references to existing results to Transaction restored from bytes or json
- bb7c03a: Update dependencies
- Updated dependencies [bb7c03a]
- @mysten/utils@0.0.1
- @mysten/bcs@1.6.2
## 1.30.2
### Patch Changes
- b265f7e: Fix mutating transactions after building or restoring from Transaction.from
## 1.30.1
### Patch Changes
- ec519fc: Deprecate schema on `ParsedKeypair` returned by `decodeSuiPrivateKey` which should have
always been called `scheme`
## 1.30.0
### Minor Changes
- 2456052: Add signAndExecuteTransaction to Signer class
- 2456052: Add `address` option to to publicKeyFromRawBytes that verifies the expected address and
disambiguates legacy vs non legacy versions of zklogin public addresses
- 2456052: Added fromBytes static method to ZkLoginPublicIdentifier
- 2456052: Use new core API for transaction resolution
- 2456052: defer objectTypes in core API and add parsed transaction representation
### Patch Changes
- 5264038: expose ZkLoginCompatibleClient, use ZkLoginCompatibleClient for SessionKey constructor
## 1.29.1
### Patch Changes
- Updated dependencies [7e1c525]
- @mysten/bcs@1.6.1
## 1.29.0
### Minor Changes
- 7d66a32: Add support for async thunks inn tx.add
- eb91fba: memoize tx.add calls to avoid accidental duplicate inputs and commands in transactions
- 19a8045: Add verifyZkLoginSignature to core API and support SuiClient in verifySignature methods
## 1.28.2
### Patch Changes
- 9a94aea: Add client.core.getObject method for fetching single objects
## 1.28.1
### Patch Changes
- 3cd4e53: Fix coinWithBalance with a 0 balance when using a gas coin
## 1.28.0
### Minor Changes
- 2705dc8: Added a requestSuiFromFaucetV2 and added a deprecation comment on the previous
requestSuiFromFaucetV0, V1, and status.
## 1.27.1
### Patch Changes
- 5cea435: Allow coinWithBalance return value to be used in multiple commands
## 1.27.0
### Minor Changes
- 4d13ef8: Add abort signals to all SuiClient methods
- 4d13ef8: Add effects parsing and dynamic field queries to experimental core client
## 1.26.1
### Patch Changes
- 7ba32a4: update dependencies
- Updated dependencies [7ba32a4]
- Updated dependencies [c3a788c]
- @mysten/bcs@1.6.0
## 1.26.0
### Minor Changes
- 906dd14: Parallel Executor: add additional signatures
## 1.25.0
### Minor Changes
- e8b5d04: Update NamedPackagesPlugin to use the new MVR API and support single-types in the cache
## 1.24.0
### Minor Changes
- cf3d12d: Update json rpc types
## 1.23.0
### Minor Changes
- 8baac61: remove jose dependency
### Patch Changes
- 8baac61: Add check for malformed google iss in toZkLoginPublicIdentifier
## 1.22.0
### Minor Changes
- 03975f4: replace bs58 and bech32 packages with @scure/base
### Patch Changes
- Updated dependencies [03975f4]
- @mysten/bcs@1.5.0
## 1.21.2
### Patch Changes
- Updated dependencies [95b1ea5]
- @mysten/bcs@1.4.0
## 1.21.1
### Patch Changes
- Updated dependencies [10e2724]
- @mysten/bcs@1.3.0
## 1.21.0
### Minor Changes
- 3d8a0d9: expose `pureBcsSchemaFromTypeName` utility
### Patch Changes
- 20a5aaa: remove dependency on deprecate webauthn types
## 1.20.0
### Minor Changes
- 827a200: add recover passkey option to sdk
## 1.19.0
### Minor Changes
- 539168a: expose isArgument util from @mysten/sui/transactions
### Patch Changes
- c39f32f: Reduce number of imports required when importing keypairs
## 1.18.1
### Patch Changes
- 7abd243: Update repo links
- Updated dependencies [7abd243]
- @mysten/bcs@1.2.1
## 1.18.0
### Minor Changes
- 4f012b9: Improve typing for the return type of splitCoins and update the splitCoins result type to
have a concrete size
- 85bd9e4: Add a new `address` options on methods that verify signatures that ensures the signature
is valid for the provided address
- 5e3709d: remove dependency on tweetnacl
- b2928a9: Update generated openrpc types which removes deprecated/non-functional filters for events
- 85bd9e4: Add a new `publicKey.verifyAddress` method on PublicKey instances
- a872b97: Add `latest` as an exported graphql schema
### Patch Changes
- dc0e21e: Remove duplicate applyEffects in serial transaction executor
## 1.17.0
### Minor Changes
- 20af12d: add passkey sdk
## 1.16.2
### Patch Changes
- 100207f: Fixes replacements on `namedPackagesPlugin` to only replace the package target if it is a
mvr name.
## 1.16.1
### Patch Changes
- Updated dependencies [ad24b95]
- @mysten/bcs@1.2.0
## 1.16.0
### Minor Changes
- ec2dc7f: Add legacyAddress flag to zklogin methods that generate addresses
- ec2dc7f: All functionality from `@mysten/zklogin` has been moved to `@mysten/sui/zklogin`
For most methods, simply replace the `@mysten/zklogin` import with `@mysten/sui/zklogin`
2 Methods require one small additional change:
`computeZkLoginAddress` and `jwtToAddress` have new `legacyAddress` flags which must be set to
true for backwards compatibility:
```diff
- import { computeZkLoginAddress, jwtToAddress } from '@mysten/zklogin';
+ import { computeZkLoginAddress, jwtToAddress } from '@mysten/sui/zklogin';
const address = jwtToAddress(
jwtAsString,
salt,
+ true
);
const address = computeZkLoginAddress({
claimName,
claimValue,
iss,
aud,
userSalt: BigInt(salt),
+ legacyAddress: true,
});
```
## 1.15.1
### Patch Changes
- Updated dependencies [1dd7713]
- @mysten/bcs@1.1.1
## 1.15.0
### Minor Changes
- 6460e45: Adding back 'Client-Request-Method' header
## 1.14.4
### Patch Changes
- 938fb6e: fix bug in object cache's applyEffects method that doesn't correctly await cache deletes
## 1.14.3
### Patch Changes
- d5a23d7: Add tx.object.option for creatnig object options in transaction builder
## 1.14.2
### Patch Changes
- e7bc63e: Allow 0 amounts with `coinWithBalance` intent when the wallet has no coin objects of the
required type.
## 1.14.1
### Patch Changes
- 69ef100: revert adding client-request-method header
## 1.14.0
### Minor Changes
- c24814b: Adds a custom header; 'Client-Request-Method' which will contain the method name used in
each outgoing jsonrpc request
## 1.13.0
### Minor Changes
- 477d2a4: Add new errors to ExecutionFailureStatus enum
## 1.12.0
### Minor Changes
- 5436a90: Update GraphQL schemas
- 5436a90: add deriveDynamicFieldID util
## 1.11.0
### Minor Changes
- 489f421: Updated hex, base64, and base58 utility names for better consistency
All existing methods will continue to work, but the following methods have been deprecated and
replaced with methods with improved names:
- `toHEX` -> `toHEX`
- `fromHEX` -> `fromHex`
- `toB64` -> `toBase64`
- `fromB64` -> `fromBase64`
- `toB58` -> `toBase58`
- `fromB58` -> `fromBase58`
- 489f421: support Bech32 secrets in the Keypair.fromSecretKey methods
### Patch Changes
- Updated dependencies [489f421]
- @mysten/bcs@1.1.0
## 1.10.0
### Minor Changes
- 830b8d8: Introduce new naming scheme for named packages plugin
## 1.9.0
### Minor Changes
- 2c96b06: Adds experimental named packages plugin
- 1fd22cc: Require name to register global transaction plugins
## 1.8.0
### Minor Changes
- 569511a: Add data to result of executeTransaction methods on Transaction executor classes
## 1.7.0
### Minor Changes
- 143cd9d: Add new tx.object methods for defining inputs for well known object ids:
- `tx.object.system()`: `0x5`
- `tx.object.clock()`: `0x6`
- `tx.object.random()`: `0x8`
- `tx.object.denyList()`: `0x403`
- 4019dd7: Add default budget to transactions executed through the SerialTransactionExecutor class
- 4019dd7: Add options argument to executeTransaction methods on transaction executor classes
- 00a974d: Add global registry for transaction plugins
### Patch Changes
- 4357ac6: Add options argument to verifyTransactionSignature
## 1.6.0
### Minor Changes
- a3e32fe: `WaitForLocalExecution` now waits using client.waitForTransaction rather than sending
requestType to the RPC node. This change will preserve readAfterWrite consistency when local
execution is removed from fullnodes, at the cost of more network requests and higher latency.
## 1.5.0
### Minor Changes
- 0851b31: Deprecate requestType option when executing transactions
### Patch Changes
- f37b3c2: Add PerEpochConfig and Cancelled to UnchangedSharedKind
- Updated dependencies [f37b3c2]
- @mysten/bcs@1.0.4
## 1.4.0
### Minor Changes
- 4419234: Add setGasBudgetIfNotSet helper to Transaction class
## 1.3.1
### Patch Changes
- a45f461: Shared objects passed to MakeMoveVec, MergeCoins, and SplitCoin are now marked as mutable
## 1.3.0
### Minor Changes
- 086b2bc: Add waitForLastTransaction methods to all executor classes
- cdedf69: Add Argument helpers for constructing transaction arguments without a Transaction
instance
- beed646: Add tx.pure.vector and tx.pure.option methods
### Patch Changes
- 7fc464a: Remove unique symbols from types to improve compatability between version
- 0fb0628: Mark subscription methods as deprecated.
- 0f27a97: Update dependencies
- Updated dependencies [7fc464a]
- Updated dependencies [0f27a97]
- @mysten/bcs@1.0.3
## 1.2.1
### Patch Changes
- 06a900c1ab: Fix nonce generation inconsistency
- 45877014d1: Improve return type when passing functions to tx.add
- 87d6f75403: Parallel executor now only re-uses gasCoins if the gas coin is only used for gas
## 1.2.0
### Minor Changes
- fef99d377f: Update parallel executor class to handle gasPrice and budgeting to remove extra rpc
calls during execution"
## 1.1.2
### Patch Changes
- 0dfff33b95: Fix bug that prevents coinWithBalance intent from being resolved
## 1.1.1
### Patch Changes
- 101f1ff4b8: Fix coinWithBalance when passing balance using a number instead of a bigint
## 1.1.0
### Minor Changes
- bae8f9683c: Remove address from parseSerializedSignature
## 1.0.5
### Patch Changes
- 369b924343: Fix serializing bcs<u8> inputs from pure strings in v1 json
- Updated dependencies [369b924343]
- @mysten/bcs@1.0.2
## 1.0.4
### Patch Changes
- f1e828f557: Export types needed for defining Transaction plugins
- Updated dependencies [f1e828f557]
- @mysten/bcs@1.0.1
## 1.0.3
### Patch Changes
- 1f20580841: Fix parsing of object refs from v1 json
## 1.0.2
### Patch Changes
- f0a839f874: Fix serialization bug when converting object inputs to v1 JSON
## 1.0.1
### Patch Changes
- 6fc6235984: Fix parsing of struct tags
## 1.0.0
### Major Changes
- a92b03de42: The Typescript SDK has been renamed to `@mysten/sui` and includes many new features
and breaking changes. See the
[full migration guide](https://sdk.mystenlabs.com/sui/migrations/sui-1.0) for details on how to
upgrade.
### Patch Changes
- ebdfe7cf21: Add support for more JSON RPC error codes
- Updated dependencies [a92b03de42]
- @mysten/bcs@1.0.0
## 0.54.1
### Patch Changes
- 99b112178c: Fix gql.tada dependency issue
## 0.54.0
### Minor Changes
- b7f673dbd9: Update versioned graphql schema imports
### Patch Changes
- 123b42c75c: Only accept 1 keypair on getSigner method of MultiSigPubKey
## 0.53.0
### Minor Changes
- 774bfb41a8: Add MultiSigSigner class to simplify multisig signing
## 0.52.0
### Minor Changes
- 929db4976a: Add normalizeSuiNSName and isValidSuiNSName utils, and add a format option to
SuiClient.resolveNameServiceNames
## 0.51.2
### Patch Changes
- b4ecdb5860: Fix fetch being incorrectly bound to GraphQL client
## 0.51.1
### Patch Changes
- 6984dd1e38: Update gql.tada and add type definitions for custom scalars
## 0.51.0
### Minor Changes
- 0cafa94027: Remove deprecated types directory
## 0.50.1
### Patch Changes
- 4830361fa4: Updated typescript version
- Updated dependencies [4830361fa4]
- @mysten/bcs@0.11.1
## 0.50.0
### Minor Changes
- a34f1cb67d: Use Bech32 instead of Hex for private key export, supports both Hex and Bech32 for
importing
### Patch Changes
- a34f1cb67d: deprecate ExportedKeypair
- c08e3569ef: Export all keypair utilities
- 9a14e61db4: Allow signer in signAndExecuteTransactionBlock to be a Signer rather than a Keypair
- 13e922d9b1: Fix multiple shared objects not respecting mutable correctly
- 220a766d86: Fix WebSocket constructor not being properly assigned in SuiClient HTTP transport
- Updated dependencies [bae8802fe3]
- @mysten/bcs@0.11.0
## 0.49.1
### Patch Changes
- 9ac0a4ec01: Add extensions to all sdk import paths
- Updated dependencies [9ac0a4ec01]
- @mysten/bcs@0.10.1
## 0.49.0
### Minor Changes
- e5f9e3ba21: Replace tsup based build to fix issues with esm/cjs dual publishing
### Patch Changes
- Updated dependencies [e5f9e3ba21]
- @mysten/bcs@0.10.0
## 0.48.1
### Patch Changes
- dd362ec1d6: Update docs url to sdk.mystenlabs.com
- Updated dependencies [dd362ec1d6]
- @mysten/bcs@0.9.1
## 0.48.0
### Minor Changes
- cdcfa76c43: Add a new client method for retrieving epoch metrics (suix_getEpochMetrics)
### Patch Changes
- Updated dependencies [fce0a08d0f]
- @mysten/bcs@0.9.0
## 0.47.0
### Minor Changes
- 0259aec82: Removed dependency on @open-rpc/client-js and replaced it with standard fetch and
WebSocket based APIs
If you are using the `subscribeEvent` or `subscribeTransaction` in environments that do not
support the `WebSocket` api natively (This will be true for most versions of Node.js) you will
need to provide a WebSocket implementation when creating your SuiClient. You can either use a
global polyfill for the WebSocket class, or pass a compatible WebSocket implementation into
SuiHTTPTransport (eg, using the `ws` package)
```typescript
import { getFullnodeUrl, SuiClient, SuiHTTPTransport } from '@mysten/sui.js/client';
import { WebSocket } from 'ws';
new SuiClient({
transport: new SuiHTTPTransport({
url: getFullnodeUrl('mainnet'),
// The typescript definitions may not match perfectly, casting to never avoids these minor incompatibilities
WebSocketConstructor: WebSocket as never,
}),
});
```
- 64d45ba27: Add support for zklogin sig inside multisig
### Patch Changes
- 194c980cb: Properly determine shared object mutability when being passed by value.
- 9ac7e2f3d: Add additional type exports to zklogin package
## 0.46.1
### Patch Changes
- 652bcdd92: Remove some multisig methods that had previously been deprecated and are no longer
exported
## 0.46.0
### Minor Changes
- 093554a0d: Remove deprecated framework code.
### Patch Changes
- 28c2c3330: Use the same issuer string in address derivation for the two google's iss values
- 43444c58f: Extend the `TransactionBlock#object()` API to accept the `TransactionResult` type as
well, so that it can be used flexibly in SDKs.
- 8d1e74e52: Fix setting gasPrice for devInspectTransactionBlock
- 3718a230b: Adds `txb.pure.id()` to pass ID pure values more intuitively
## 0.45.1
### Patch Changes
- 30b47b758: Fix formatting when parsing addresses with bcs.Address
## 0.45.0
### Minor Changes
- b9afb5567: adds "transfer to object" (receivingRef) support
## 0.44.0
### Minor Changes
- 11cf4e68b: Remove deprecated methods.
### Patch Changes
- b48289346: Mark packages as being side-effect free.
- Updated dependencies [b48289346]
- @mysten/bcs@0.8.1
## 0.43.3
### Patch Changes
- 004fb1991: Export TransactionResult type
## 0.43.2
### Patch Changes
- 9b052166d: Register Option enum to sdk bcs registry
## 0.43.1
### Patch Changes
- faa13ded9: Ensure that TransactionBlocks can be copied via structuredClone to workaround bug in
sui wallet
- c5684bb52: rename zk to zkLogin
## 0.43.0
### Minor Changes
- 781d073d9: Update getFaucetRequestStatus to GET request
- e4484852b: Improve APIs for building transaction inputs
- txb.splitCoins now accepts `amounts`` as raw JavaScript number
- txb.transferObjects now accepts `address` as JavaScript string
- All single objects, or lists of objects, now also accepts object IDs as JavaScript strings
- txb.pure accepts `SerializedBcs` (eg `txb.pure(bcs.U64.serialize(123))`)
- Added pure helpers (`txb.pure.address()`, `txb.bool()`, and `txb.pure.u{8-256}()`) to simplify
serialization of pure values
- Deprecated using `txb.pure` with raw JavaScript values, or an explicit type argument.
- 1bc430161: Updated BCS defintions to use new BCS schema builder
### Patch Changes
- 3764c464f: - add support for basic parsing of zkLogin signatures
- new zklogin package
- 71e0a3197: zklogin improvements
- use new bcs api
- rename `toBufferBE` to `toBigEndianBytes`
- stop exporting `ZkLoginSignatureInputs` and `extractClaimValue`
- Updated dependencies [1bc430161]
- Updated dependencies [e4484852b]
- @mysten/bcs@0.8.0
## 0.42.0
### Minor Changes
- fd8589806: Remove all previously deprecated exports from @mysten/sui.js
## 0.41.2
### Patch Changes
- Updated dependencies [290c8e640]
- @mysten/bcs@0.7.4
## 0.41.1
### Patch Changes
- 24c21e1f0: Fix defaults not being applied correctly in websocket client
## 0.41.0
### Minor Changes
- ba8e3b857: Rename TransactionBlock generated type in @mysten/sui.js/client to SuiTransactionBlock
to avoid conflicting names in exports
### Patch Changes
- f4b7b3474: Adds zk signature scheme
## 0.40.0
### Minor Changes
- a503cad34: Add exports to `@mysten/sui.js/client` for rpc method params
### Patch Changes
- 8281e3d25: Add new `sign` method to the TransactionBlock class, so that implementing transaction
signing is easier.
## 0.39.0
### Minor Changes
- 47ea5ec7c: Update keypair signature methods to return bytes as a base64 encoded string for better
compatability
## 0.38.0
### Minor Changes
- 67e581a5a: Added FromOrToAddress Transaction Filter
- cce6ffbcc: Add toSuiPublicKey method for retrieving the Sui representation of a raw public key
- 0f06d593a: Added a MultiSigPublicKey class for verifying multisig signatures
- 09f4ed3fc: update signMessage to correctly wrap PersonalMessages before signing
- 6d41059c7: Deprecate imports from the root path which can be imported from a modular export
- cc6441f46: The Sui TS SDK has been broken up into a set of modular exports, and all exports from
the root of the package have been deprecated. The following export paths have been added:
- `@mysten/sui.js/client` - A client for interacting with Sui RPC nodes.
- `@mysten/sui.js/bcs` - A BCS builder with pre-defined types for Sui.
- `@mysten/sui.js/transaction` - Utilities for building and interacting with transactions.
- `@mysten/sui.js/keypairs/*` - Modular exports for specific KeyPair implementations.
- `@mysten/sui.js/verify` - Methods for verifying transactions and messages.
- `@mysten/sui.js/cryptography` - Shared types and classes for cryptography.
- `@mysten/sui.js/multisig` - Utilities for working with multisig signatures.
- `@mysten/sui.js/utils` - Utilities for formatting and parsing various Sui types.
- `@mysten/sui.js/faucet`- Methods for requesting sui from a faucet.
As part of this refactor we are deprecating a number of existing APIs:
- `JsonRPCProvider` - This Provider pattern is being replaced by a new `SuiClient`
- `SignerWithProver` and `RawSigner` - The Concept of Signers is being removed from the SDK.
Signing in verifying has been moved to the KeyPair classes, and the
`signAndExecuteTransactionBlock` method has been moved to the new `SuiClient`.
- The `superstruct` type definitions for types used by JsonRPCProvider are being replaced with
generated types exported from `@mysten/sui.js/client`. The new type definitions are pure
typescript types and can't be used for runtime validation. By generating these as types, it will
be easier to keep them in sync with the RPC definitions and avoid discrepancies between the type
definitions in the SDK and the data returned by RPC methods.
- A large number of "getters" are being deprecated. These getters were intended to reduce friction
caused by rapid iteration in the RPC layer leading up to the mainnet launch. Now that mainnet
has been launched the RPC API should be more stable, and many of these helpers can be replaced
by simply accessing the nested properties in the returned data directly.
The current release should be mostly backwards compatible, and all existing exports will continue
to be available in this release (with deprecation warnings). With the large number of deprecations
there may be functionality that should be moved into the new modular version of the SDK. If you
find there are features that were deprecated without a suitable replacement, we have created a
[Github Discussion thread](https://github.com/MystenLabs/sui/discussions/13150) to track those
use-cases.
#### Migrating imports
To migrate imports, you should be able to hover over the deprecated import in the editor of you
choice, this should provide either the deprecation message letting you know where to import the
replacement from, or a like "The declaration was marked as deprecated here." with a link to the
deprecation comment which will tell you how to update your import
#### Migrating JsonRpcProvider
The new SuiClient should mostly work as a drop in replacement for the `JsonRpcProvider` provider.
Setting up a `SuiClient` is slightly different, but once constructed should work just like a
provider.
```diff
- import { JsonRpcProvider, devnetConnection } from '@mysten/sui.js';
+ import { SuiClient, getFullnodeUrl } from '@mysten/sui.js/client';
- const provider = new JsonRpcProvider(localnetConnection);
+ const client = new SuiClient({ url: getFullnodeUrl('localnet')});
```
#### Signing TransactionBlocks
Signing and sending transaction blocks has change slightly with the deprecation of the `Signer`
pattern:
```diff
- import {
- Ed25519Keypair,
- JsonRpcProvider,
- RawSigner,
- TransactionBlock,
- localnetConnection,
- } from '@mysten/sui.js';
+ import { Ed25519Keypair } from '@mysten/sui.js/keypairs/ed25519';
+ import { SuiClient, getFullnodeUrl } from '@mysten/sui.js/client';
+ import { TransactionBlock } from '@mysten/sui.js/transactions';
const keypair = new Ed25519Keypair()
- const provider = new JsonRpcProvider(localnetConnection);
- const signer = new RawSigner(keyPair, provider);
+ const client = new SuiClient({ url: getFullnodeUrl('localnet')});
- const result = await signer.signAndExecuteTransactionBlock({
+ const result = await client.signAndExecuteTransactionBlock({
+ signer: keypair,
transactionBlock: tx,
options: { ... }
})
```
#### Migrating faucet requests
The ability to request Sui from a faucet was not added to `SuiClient`, instead you will need to
use a method `@mysten/sui.js/faucet` to make these requests
```diff
- import { JsonRpcProvider, devnetConnection } from '@mysten/sui.js';
- const provider = new JsonRpcProvider(devnetConnection);
+ import { requestSuiFromFaucetV0, getFaucetHost } from '@mysten/sui.js/faucet';
- await provider.requestSuiFromFaucet(
- '<YOUR SUI ADDRESS>'
- );
+ await requestSuiFromFaucetV0({
+ host: getFaucetHost('devnet'),
+ recipient: '<YOUR SUI ADDRESS>',
+});
```
- 001148443: Introduce new `@mysten/sui.js/faucet` export, which should be used for all faucet
interactions. This deprecates the previous `requestSuiFromFaucet` APIs that existed on the
`JsonRpcProvider` and `Signer` classes.
### Patch Changes
- ad46f9f2f: add getAllEpochAddressMetrics method to rpc-provider
- 34242be56: Add new `isTransactionBlock` method, and deprecate the previous `TransactionBlock.is`
method
- 4e2a150a1: websocket client memory leak fix in reconnect logics
- 83d0fb734: Deprecate type aliases for strings.
## 0.37.1
### Patch Changes
- 34cc7d610: Fix unhandled rejections thrown by waitForTransaction
## 0.37.0
### Minor Changes
- 93794f9f2: Update build to avoid bundling for better modularity
- a17d3678a: Add keypair exports to allow modular imports for various keypair types
### Patch Changes
- 36f2edff3: Use splitGenericParamaters util from bcs
- 75d1a190d: Fix bug that prevented deserializing transaction blocks with a set expiration
- c3a4ec57c: Add explicit dependency on events package
- 2f37537d5: Update `SuiEventFilter` structure for `TimeRange` query.
- 00484bcc3: add method to create Ed25519Keypair from a mnemonic seed
- Updated dependencies [36f2edff3]
- @mysten/bcs@0.7.3
## 0.36.0
### Minor Changes
- 3ea9adb71a: Add multisig support
- 1cfb1c9da3: The `TransactionBlock` builder now uses the protocol config from the chain when
constructing and validating transactions, instead of using hard-coded limits. If you wish to
perform signing offline (without a provider), you can either define a `protocolConfig` option when
building a transaction, or explicitly set `limits`, which will be used instead of the protocol
config.
- fb3bb9118a: Remove logging of RPCValidation errors when typescript types do not match RPC response
types
### Patch Changes
- 1cfb1c9da3: Added `getProtocolConfig()` method to the provider.
- Updated dependencies [ca5c72815d]
- Updated dependencies [fdb569464e]
- @mysten/bcs@0.7.2
## 0.35.1
### Patch Changes
- 09d77325a9: Add new SuiNS Toolkit package.
## 0.35.0
### Minor Changes
- 470c27af50: Added network address metrics
- 671faefe3c: Add `getChainIdentifier` method
- 9ce7e051b4: Update internal client to use `@open-rpc/client-js` instead of `jayson` and
`rpc-websockets`. This results in a more consistent experience and better error messaging.
### Patch Changes
- 4ea96d909a: the event BCS data is a base64 string
- bcbb178c44: Fixes BCS definition so it matches the RPC one
- 03828224c9: Previously, effects had an unwrapped_then_deleted field on ts-sdk. This is an issue
since jsonrpc returns the field as unwrappedThenDeleted. Update the transaction type definition to
use camelcase.
- 9ce7e051b4: Add `subscribeTransaction` method.
- bb50698551: Fixes BCS type definition in the type layout
## 0.34.1
### Patch Changes
- 85719ac933: Add `tryGetPastObject` support in the provider.
- c3d9cc87f3: Update ts-sdk e2e test to reflect new rpc error language
- 02a6063f82: Add `normalizeStructTag` and `parseStructTag` helper functions
## 0.34.0
### Minor Changes
- 280821e0ab: Add "mainnet" connection to the list of available connections
### Patch Changes
- 6a9abe9e38: Fix `type` field in MakeMoveVec
## 0.33.0
### Minor Changes
- 7915de531: Strip disassembled modules from publish/upgrade transaction inputs.
- e61ed2bac: Added new TransactionFilter fields
### Patch Changes
- 6f9fc94ca: Increase max size of pure inputs
- 605eac8c6: Bugfix for makeMoveVec when not providing type arguments.
- 262e3dfdd: Add support for account switching in Wallet Kit.
- 91c63e4f8: Fix transaction building with >50 input objects.
- 5053a8dc8: Add getValidatorsApy to rpc
## 0.32.2
### Patch Changes
- 4ae3cbea3: Response for `getCoinMetadata` is now nullable, in the event that no metadata can be
found.
- d2755a496: Fix dependency on msw
- f612dac98: Change the default gas budgeting to take storage rebates into account.
- c219e7470: Changed the response type of `getRpcApiVersion` to string.
- 59ae0e7d6: Removed `skipDataValidation` option, this is now not configurable and is the default
behavior.
- c219e7470: Fix type of `limit` on `getCheckpoints` and `getEpochs` API so that is correctly a
number.
- 4e463c691: Add `waitForTransactionBlock` API to wait for a transaction to be available over the
API.
- b4f0bfc76: Fix type definitions for package exports.
- Updated dependencies [b4f0bfc76]
- @mysten/bcs@0.7.1
## 0.32.1
### Patch Changes
- 3224ffcd0: Adding support for the `upgrade` transaction type.
## 0.32.0
### Minor Changes
- 9b42d0ada: This release replaces all uint64 and uint128 numbers with BigInt in all JSON RPC
responses to preserve precision. This is a Major Breaking Change - you must update your TS-SDK to
latest version
## 0.31.0
### Minor Changes
- 976d3e1fe: Add new `getNetworkMetrics` endpoint to JSONRPCProvider.
- 5a4e3e416: Change getOwnedObject to ignore checkpoint and return latest objects
### Patch Changes
- 0419b7c53: Match ts Publish schema to rust sdk
- f3c096e3a: Fix PaginatedObjectsResponse schema
- 27dec39eb: Make getOwnedObjects backward compatible from 0.29 to 0.30.
## 0.30.0
### Minor Changes
- 956ec28eb: Change `signMessage` to return message bytes. Add support for sui:signMessage in the
wallet standard
- 4adfbff73: Use Blake2b instead of sha3_256 for address generation
- 4c4573ebe: Removed DevInspectResultsType and now DevInspectResults has a property results of
ExecutionResultType and a property error
- acc2edb31: Update schema for `SuiSystemState` and `DelegatedStake`
- 941b03af1: Change functions in transactions.ts of ts-sdk such that: `getTotalGasUsed` and
`getTotalGasUsedUpperBound` of ts-sdk return a `bigint`,fields of `gasCostSummary` are defined as
`string`, `epochId` is defined as `string`. In `sui-json-rpc` the corresponding types are defined
as `BigInt`. Introduce `SuiEpochId` type to `sui-json-rpc` types that is a `BigInt`.
- a6690ac7d: Changed the default behavior of `publish` to publish an upgreadeable-by-sender package
instead of immutable.
- a211dc03a: Change object digest from Base64 encoded to Base58 encoded for rpc version >= 0.28.0
- 4c1e331b8: Gas budget is now optional, and will automatically be computed by executing a dry-run
when not provided.
- 19b567f21: Unified self- and delegated staking flows. Removed fields from `Validator`
(`stake_amount`, `pending_stake`, and `pending_withdraw`) and renamed `delegation_staking_pool` to
`staking_pool`. Additionally removed the `validator_stake` and `delegated_stake` fields in the
`ValidatorSet` type and replaced them with a `total_stake` field.
- 7659e2e91: Introduce new `Transaction` builder class, and deprecate all existing methods of
sending transactions. The new builder class is designed to take full advantage of Programmable
Transactions. Any transaction using the previous `SignableTransaction` interface will be converted
to a `Transaction` class when possible, but this interface will be fully removed soon.
- 0d3cb44d9: Change all snake_case field in ts-sdk normalized.ts to camelCase.
- 36c264ebb: Remove `generateTransactionDigest`. Use one of the following instead:
`signer.getTransactionDigest`, `Transaction.getDigest()` or
`TransactionDataBuilder.getDigestFromBytes()` instead.
- 891abf5ed: Remove support for RPC Batch Request in favor of multiGetTransactions and
multiGetObjects
- 2e0ef59fa: Added VALIDATORS_EVENTS_QUERY
- 33cb357e1: Change functions in json-rpc-provider.ts of ts-sdk such that:
`getTotalTransactionBlocks`, `getReferenceGasPrice` return a `bigint`,
`getLatestCheckpointSequenceNumber` returns a `string`, `gasPrice` of `devInspectTransactionBlock`
is defined as a `string`, checkpoint sequence number of `getCheckpoint` is defined as a `string`,
`cursor` of `getCheckpoints` is defined as a `string`. Introduce `SuiCheckpointSequenceNumber`
type in sui-json-rpc-types that is a `BigInt` to use instead of `CheckpointSequenceNumber` of
sui-types.
- 6bd88570c: Rework all coin APIs to take objects as arguments instead of positional arguments.
- f1e42f792: Consolidate get_object and get_raw_object into a single get_object endpoint which now
takes an additional config parameter with type `SuiObjectDataOptions` and has a new return type
`SuiObjectResponse`. By default, only object_id, version, and digest are fetched.
- 272389c20: Support for new versioned TransactionData format
- 3de8de361: Remove `getSuiSystemState` method. Use `getLatestSuiSystemState` method instead.
- be3c4f51e: Add `display` field in `SuiObjectResponse` for frontend rendering. See more details in
https://forums.sui.io/t/nft-object-display-proposal/4872
- dbe73d5a4: Update `executeTransaction` and `signAndExecuteTransaction` to take in an additional
parameter `SuiTransactionBlockResponseOptions` which is used to specify which fields to include in
`SuiTransactionBlockResponse` (e.g., transaction, effects, events, etc). By default, o