Releases: solana-labs/solana-program-library
SPL Associated Token Program - v1.1.2
Summary of Changes
- Support spl-token-2022 v0.5.0
SPL Token CLI - v2.2.0
Summary of changes
- convert all token cli functionality to run through the new rust token client and remove transaction building and execution logic from the cli for all commands
- implement
spl-token display, which displays detailed information for mints, accounts, and multisigs, including details on all extensions except confidential transfers - improve
spl-token accountsto show accounts from both programs by default. show program id, delegate, and close authority in verbose mode. allowaccountsto filter by presence of delegate or close authority, so users can audit these permissions for possible malicious usage - support
MintCloseAuthorityextension - support
InterestBearingConfigextension - support
MemoTransferextension - support
ImmutableOwnerextension - support
CpiGuardextension - support
NonTransferableextension - support
TransferFeeConfigextension - support
PermanentDelegateextension - add
--recipient-ownerflag tocommand_mintto infer recipient ATA address - infer program_id when possible from mints/accounts passed into cli commands
- properly load config file at all callsites
- fix bug with closing accounts not working for system recipients
- deprecate
account-infoin favor ofdisplay - deprecate
multisig-infoin favor ofdisplay - BREAKING:
--program-idis now restricted tospl_token::id()orspl_token_2022::id() - update solana version to 1.14.6
SPL Token 2022 - v0.5.0
Summary of changes
- Implement CPI Guard extension (#3712)
- Implement Permanent Delegate extension (#3725)
- Various Confidential Transfer changes
NOTE: This is still an alpha release, so backwards incompatible changes are possible in the future. Do not depend on the exact layout of extension data for your code.
SPL Account Compression JS - v0.1.4
Summary of Changes
Add pointer to docs in the @solana/spl-account-compression README.
SPL Token JS - v0.3.6
Summary of Changes
- Add support for the
CreateIdempotentinstruction in the associated-token-account program bindings.
SPL Account Compression JS - v0.1.3
Adds several features in addition to matching spl-account-compression v0.1.4's updated accounts interface (renaming Wrapper to Noop)
Fixes:
- Fix
@metaplex-foundation/beetand@metaplex-foundation/beet-solanadependencies by moving them to deps (from devDeps)
Additions:
- Add docs via typedoc
- Add linting & prettier
- Add all depth + size pairs for Concurrent Merkle Tree initialization
- Export the MerkleTree class used in the tests, so developers have rudimentary way of indexing their applications
Breaking changes:
- instructions:
- Helper functions reordered keys: tree, then authority, then arguments
- Helper functions now take PublicKeys, not Keypairs
- Initialize helper functions now take ValidDepthSizePair rather than raw numbers
- accounts:
- ConcurrentMerkleTreeAccount getActiveIndex renamed to getCurrentBufferIndex
Readme added examples:
- Creating a tree
- Minting a leaf to the tree
- Using the provided merkle tree lib to keep track of off-chain data
Tests:
- Test all initialization pairs
Note:
Skipped v0.1.2
Concurrent Merkle Tree - v0.1.2
Add additional leaf_index checks to prevent unexpected errors and add initialization checks
SPL Account Compression JS - v0.1.1
Minor improvements to JS SDK
- Expose all
maxDepth,maxBufferSizepairs - Add
canopyDepthgetter toConcurrentMerkleTreeAccount - Fix issue that required
@metaplex-foundation/beet*to be installed separately - Update README.md
SPL Account Compression Rust - v0.1.3
Minor improvements
- expose ChangeLogEventV1 in
spl-account-compression - update
spl-noopREADME.md
SPL Account Compression Rust - v0.1.2
spl-account-compression:
- Added method to easily emit arbitrary application data via
spl-noopprogram* - Add README file for crate
spl-noop:
- Add README file for crate
Update typescript SDK to have separate methods for deserializing event data emitted via spl-noop
*Emitted application data is prefixed with a different tag than emitted ChangeLog events. This is done to help indexers distinguish between spl-account-compression event data and their application-level data. However, it is not strictly necessary to interact with spl-noop, since any program can CPI to spl-noop with arbitrary data.