diff --git a/CHANGELOG.md b/CHANGELOG.md index 62c60f95c1..e577810ea9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,14 @@ The minor version will be incremented upon a breaking change and the patch versi ### Features +### Fixes + +### Breaking + +## [0.31.0] - 2024-09-19 + +### Features + - ts: Add optional `options.blockhash` to `Provider.sendAndConfirm` ([#3070](https://github.com/coral-xyz/anchor/pull/3070)). - ts: Add optional `commitment` parameter to `Program.addEventListener` ([#3052](https://github.com/coral-xyz/anchor/pull/3052)). - cli, idl: Pass `cargo` args to IDL generation when building program or IDL ([#3059](https://github.com/coral-xyz/anchor/pull/3059)). @@ -26,7 +34,7 @@ The minor version will be incremented upon a breaking change and the patch versi - lang: Remove the fallback function shortcut in `try_entry` function ([#3109](https://github.com/coral-xyz/anchor/pull/3109)). - ts: Get discriminator lengths dynamically ([#3120](https://github.com/coral-xyz/anchor/pull/3120)). - client: Support non-8-byte discriminators ([#3125](https://github.com/coral-xyz/anchor/pull/3125)). -- spl: Add `withdraw_withheld_tokens_from_accounts` instruction ([#3128]([https://github.com/coral-xyz/anchor/pull/3128)). +- spl: Add `withdraw_withheld_tokens_from_accounts` instruction ([#3128](https://github.com/coral-xyz/anchor/pull/3128)). - ts: Add optional `wallet` property to the `Provider` interface ([#3130](https://github.com/coral-xyz/anchor/pull/3130)). - cli: Warn if `anchor-spl/idl-build` is missing ([#3133](https://github.com/coral-xyz/anchor/pull/3133)). - client: Add `internal_rpc` method for `mock` feature ([#3135](https://github.com/coral-xyz/anchor/pull/3135)). @@ -39,7 +47,7 @@ The minor version will be incremented upon a breaking change and the patch versi - cli: Support non-8-byte discriminators ([#3165](https://github.com/coral-xyz/anchor/pull/3165)). - idl: Disallow empty discriminators ([#3166](https://github.com/coral-xyz/anchor/pull/3166)). - cli: Add `--no-idl` option to the `test` command ([#3175](https://github.com/coral-xyz/anchor/pull/3175)). -- spl: Add `burn_checked`, `mint_to_checked` and `approve_checked` instructions ([#3186]([https://github.com/coral-xyz/anchor/pull/3186)). +- spl: Add `burn_checked`, `mint_to_checked` and `approve_checked` instructions ([#3186](https://github.com/coral-xyz/anchor/pull/3186)). - cli: Migrate to `agave-install` when `solana_version` is `>= 1.18.19` ([#3185](https://github.com/coral-xyz/anchor/pull/3185)). - idl: Add `IdlBuilder` ([#3188](https://github.com/coral-xyz/anchor/pull/3188)). - cli: Make `clean` command also remove the `.anchor` directory ([#3192](https://github.com/coral-xyz/anchor/pull/3192)). @@ -48,7 +56,7 @@ The minor version will be incremented upon a breaking change and the patch versi - lang: Add `LazyAccount` ([#3194](https://github.com/coral-xyz/anchor/pull/3194)). - avm: Ask whether to install if the version is not installed with the `use` command ([#3230](https://github.com/coral-xyz/anchor/pull/3230)). - cli: Warn if a manifest has `solana-program` dependency ([#3250](https://github.com/coral-xyz/anchor/pull/3250)). -- cli: Add completions command to generate shell completions via the clap_complete crate ([#3251](https://github.com/coral-xyz/anchor/pull/3251)). +- cli: Add completions command to generate shell completions via the `clap_complete` crate ([#3251](https://github.com/coral-xyz/anchor/pull/3251)). ### Fixes diff --git a/Cargo.lock b/Cargo.lock index 8ce63837b8..e225f4f76b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -102,7 +102,7 @@ dependencies = [ [[package]] name = "anchor-attribute-access-control" -version = "0.30.1" +version = "0.31.0" dependencies = [ "anchor-syn", "proc-macro2", @@ -112,7 +112,7 @@ dependencies = [ [[package]] name = "anchor-attribute-account" -version = "0.30.1" +version = "0.31.0" dependencies = [ "anchor-syn", "bs58", @@ -123,7 +123,7 @@ dependencies = [ [[package]] name = "anchor-attribute-constant" -version = "0.30.1" +version = "0.31.0" dependencies = [ "anchor-syn", "quote", @@ -132,7 +132,7 @@ dependencies = [ [[package]] name = "anchor-attribute-error" -version = "0.30.1" +version = "0.31.0" dependencies = [ "anchor-syn", "quote", @@ -141,7 +141,7 @@ dependencies = [ [[package]] name = "anchor-attribute-event" -version = "0.30.1" +version = "0.31.0" dependencies = [ "anchor-syn", "proc-macro2", @@ -151,7 +151,7 @@ dependencies = [ [[package]] name = "anchor-attribute-program" -version = "0.30.1" +version = "0.31.0" dependencies = [ "anchor-lang-idl", "anchor-syn", @@ -166,7 +166,7 @@ dependencies = [ [[package]] name = "anchor-cli" -version = "0.30.1" +version = "0.31.0" dependencies = [ "anchor-client", "anchor-lang", @@ -203,7 +203,7 @@ dependencies = [ [[package]] name = "anchor-client" -version = "0.30.1" +version = "0.31.0" dependencies = [ "anchor-lang", "anyhow", @@ -220,7 +220,7 @@ dependencies = [ [[package]] name = "anchor-derive-accounts" -version = "0.30.1" +version = "0.31.0" dependencies = [ "anchor-syn", "quote", @@ -229,7 +229,7 @@ dependencies = [ [[package]] name = "anchor-derive-serde" -version = "0.30.1" +version = "0.31.0" dependencies = [ "anchor-syn", "borsh-derive-internal", @@ -240,7 +240,7 @@ dependencies = [ [[package]] name = "anchor-derive-space" -version = "0.30.1" +version = "0.31.0" dependencies = [ "proc-macro2", "quote", @@ -249,7 +249,7 @@ dependencies = [ [[package]] name = "anchor-lang" -version = "0.30.1" +version = "0.31.0" dependencies = [ "anchor-attribute-access-control", "anchor-attribute-account", @@ -271,7 +271,7 @@ dependencies = [ [[package]] name = "anchor-lang-idl" -version = "0.1.1" +version = "0.1.2" dependencies = [ "anchor-lang-idl-spec", "anyhow", @@ -292,7 +292,7 @@ dependencies = [ [[package]] name = "anchor-spl" -version = "0.30.1" +version = "0.31.0" dependencies = [ "anchor-lang", "borsh 0.10.3", @@ -308,7 +308,7 @@ dependencies = [ [[package]] name = "anchor-syn" -version = "0.30.1" +version = "0.31.0" dependencies = [ "anyhow", "bs58", @@ -655,7 +655,7 @@ checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" [[package]] name = "avm" -version = "0.30.1" +version = "0.31.0" dependencies = [ "anyhow", "cargo_toml", diff --git a/VERSION b/VERSION index 1a44cad74d..26bea73e81 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.30.1 +0.31.0 diff --git a/avm/Cargo.toml b/avm/Cargo.toml index 7dae86c129..378957f907 100644 --- a/avm/Cargo.toml +++ b/avm/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "avm" -version = "0.30.1" +version = "0.31.0" edition = "2021" [[bin]] diff --git a/bench/BINARY_SIZE.md b/bench/BINARY_SIZE.md index c9087121f2..f278cd6e8e 100644 --- a/bench/BINARY_SIZE.md +++ b/bench/BINARY_SIZE.md @@ -16,6 +16,18 @@ The programs and their tests are located in [/tests/bench](https://github.com/co Solana version: 2.0.8 +| Program | Binary Size | - | +| ------- | ----------- | --- | +| bench | 1,097,424 | - | + +### Notable changes + +--- + +## [0.31.0] + +Solana version: 2.0.8 + | Program | Binary Size | - | | ------- | ----------- | ------------------------ | | bench | 1,097,424 | 🔴 **+306,416 (38.74%)** | diff --git a/bench/COMPUTE_UNITS.md b/bench/COMPUTE_UNITS.md index d9196f7baf..b4aab56ee1 100644 --- a/bench/COMPUTE_UNITS.md +++ b/bench/COMPUTE_UNITS.md @@ -16,6 +16,104 @@ The programs and their tests are located in [/tests/bench](https://github.com/co Solana version: 2.0.8 +| Instruction | Compute Units | - | +| --------------------------- | ------------- | --- | +| accountInfo1 | 573 | - | +| accountInfo2 | 899 | - | +| accountInfo4 | 1,561 | - | +| accountInfo8 | 2,957 | - | +| accountEmptyInit1 | 5,014 | - | +| accountEmpty1 | 649 | - | +| accountEmptyInit2 | 9,155 | - | +| accountEmpty2 | 1,015 | - | +| accountEmptyInit4 | 17,465 | - | +| accountEmpty4 | 1,740 | - | +| accountEmptyInit8 | 34,115 | - | +| accountEmpty8 | 3,193 | - | +| accountSizedInit1 | 5,107 | - | +| accountSized1 | 690 | - | +| accountSizedInit2 | 9,313 | - | +| accountSized2 | 1,069 | - | +| accountSizedInit4 | 17,812 | - | +| accountSized4 | 1,834 | - | +| accountSizedInit8 | 34,706 | - | +| accountSized8 | 3,357 | - | +| accountUnsizedInit1 | 5,227 | - | +| accountUnsized1 | 746 | - | +| accountUnsizedInit2 | 9,599 | - | +| accountUnsized2 | 1,163 | - | +| accountUnsizedInit4 | 18,276 | - | +| accountUnsized4 | 2,000 | - | +| accountUnsizedInit8 | 35,328 | - | +| accountUnsized8 | 3,671 | - | +| boxedAccountEmptyInit1 | 5,106 | - | +| boxedAccountEmpty1 | 740 | - | +| boxedAccountEmptyInit2 | 9,268 | - | +| boxedAccountEmpty2 | 1,125 | - | +| boxedAccountEmptyInit4 | 17,619 | - | +| boxedAccountEmpty4 | 1,886 | - | +| boxedAccountEmptyInit8 | 34,346 | - | +| boxedAccountEmpty8 | 3,435 | - | +| boxedAccountSizedInit1 | 5,189 | - | +| boxedAccountSized1 | 780 | - | +| boxedAccountSizedInit2 | 9,411 | - | +| boxedAccountSized2 | 1,180 | - | +| boxedAccountSizedInit4 | 17,879 | - | +| boxedAccountSized4 | 1,974 | - | +| boxedAccountSizedInit8 | 34,842 | - | +| boxedAccountSized8 | 3,593 | - | +| boxedAccountUnsizedInit1 | 5,300 | - | +| boxedAccountUnsized1 | 838 | - | +| boxedAccountUnsizedInit2 | 9,609 | - | +| boxedAccountUnsized2 | 1,275 | - | +| boxedAccountUnsizedInit4 | 18,251 | - | +| boxedAccountUnsized4 | 2,138 | - | +| boxedAccountUnsizedInit8 | 35,562 | - | +| boxedAccountUnsized8 | 3,895 | - | +| boxedInterfaceAccountMint1 | 1,502 | - | +| boxedInterfaceAccountMint2 | 2,423 | - | +| boxedInterfaceAccountMint4 | 4,256 | - | +| boxedInterfaceAccountMint8 | 7,950 | - | +| boxedInterfaceAccountToken1 | 2,198 | - | +| boxedInterfaceAccountToken2 | 3,803 | - | +| boxedInterfaceAccountToken4 | 7,004 | - | +| boxedInterfaceAccountToken8 | 13,434 | - | +| interfaceAccountMint1 | 1,626 | - | +| interfaceAccountMint2 | 2,788 | - | +| interfaceAccountMint4 | 5,110 | - | +| interfaceAccountMint8 | 9,749 | - | +| interfaceAccountToken1 | 2,296 | - | +| interfaceAccountToken2 | 4,096 | - | +| interfaceAccountToken4 | 7,692 | - | +| interface1 | 774 | - | +| interface2 | 923 | - | +| interface4 | 1,214 | - | +| interface8 | 1,799 | - | +| program1 | 782 | - | +| program2 | 927 | - | +| program4 | 1,210 | - | +| program8 | 1,779 | - | +| signer1 | 779 | - | +| signer2 | 1,074 | - | +| signer4 | 1,657 | - | +| signer8 | 2,826 | - | +| systemAccount1 | 802 | - | +| systemAccount2 | 1,108 | - | +| systemAccount4 | 1,713 | - | +| systemAccount8 | 2,926 | - | +| uncheckedAccount1 | 785 | - | +| uncheckedAccount2 | 1,061 | - | +| uncheckedAccount4 | 1,604 | - | +| uncheckedAccount8 | 2,699 | - | + +### Notable changes + +--- + +## [0.31.0] + +Solana version: 2.0.8 + | Instruction | Compute Units | - | | --------------------------- | ------------- | --------------------- | | accountInfo1 | 573 | 🟢 **-28 (4.66%)** | diff --git a/bench/STACK_MEMORY.md b/bench/STACK_MEMORY.md index 24a49be117..5016cadb52 100644 --- a/bench/STACK_MEMORY.md +++ b/bench/STACK_MEMORY.md @@ -108,6 +108,104 @@ Solana version: 2.0.8 ### Notable changes +--- + +## [0.31.0] + +Solana version: 2.0.8 + +| Instruction | Stack Memory | - | +| ------------------------------ | ------------ | --- | +| account_info1 | 144 | - | +| account_info2 | 144 | - | +| account_info4 | 144 | - | +| account_info8 | 144 | - | +| account_empty_init1 | 144 | - | +| account_empty_init2 | 144 | - | +| account_empty_init4 | 192 | - | +| account_empty_init8 | 224 | - | +| account_empty1 | 144 | - | +| account_empty2 | 144 | - | +| account_empty4 | 144 | - | +| account_empty8 | 144 | - | +| account_sized_init1 | 176 | - | +| account_sized_init2 | 192 | - | +| account_sized_init4 | 224 | - | +| account_sized_init8 | 288 | - | +| account_sized1 | 144 | - | +| account_sized2 | 144 | - | +| account_sized4 | 144 | - | +| account_sized8 | 144 | - | +| account_unsized_init1 | 192 | - | +| account_unsized_init2 | 224 | - | +| account_unsized_init4 | 288 | - | +| account_unsized_init8 | 416 | - | +| account_unsized1 | 144 | - | +| account_unsized2 | 144 | - | +| account_unsized4 | 144 | - | +| account_unsized8 | 144 | - | +| boxed_account_empty_init1 | 144 | - | +| boxed_account_empty_init2 | 144 | - | +| boxed_account_empty_init4 | 192 | - | +| boxed_account_empty_init8 | 224 | - | +| boxed_account_empty1 | 144 | - | +| boxed_account_empty2 | 144 | - | +| boxed_account_empty4 | 144 | - | +| boxed_account_empty8 | 144 | - | +| boxed_account_sized_init1 | 144 | - | +| boxed_account_sized_init2 | 144 | - | +| boxed_account_sized_init4 | 192 | - | +| boxed_account_sized_init8 | 224 | - | +| boxed_account_sized1 | 144 | - | +| boxed_account_sized2 | 144 | - | +| boxed_account_sized4 | 144 | - | +| boxed_account_sized8 | 144 | - | +| boxed_account_unsized_init1 | 144 | - | +| boxed_account_unsized_init2 | 144 | - | +| boxed_account_unsized_init4 | 192 | - | +| boxed_account_unsized_init8 | 224 | - | +| boxed_account_unsized1 | 144 | - | +| boxed_account_unsized2 | 144 | - | +| boxed_account_unsized4 | 144 | - | +| boxed_account_unsized8 | 144 | - | +| boxed_interface_account_mint1 | 144 | - | +| boxed_interface_account_mint2 | 144 | - | +| boxed_interface_account_mint4 | 144 | - | +| boxed_interface_account_mint8 | 144 | - | +| boxed_interface_account_token1 | 144 | - | +| boxed_interface_account_token2 | 144 | - | +| boxed_interface_account_token4 | 144 | - | +| boxed_interface_account_token8 | 144 | - | +| interface_account_mint1 | 144 | - | +| interface_account_mint2 | 144 | - | +| interface_account_mint4 | 144 | - | +| interface_account_mint8 | 144 | - | +| interface_account_token1 | 144 | - | +| interface_account_token2 | 144 | - | +| interface_account_token4 | 144 | - | +| interface1 | 144 | - | +| interface2 | 144 | - | +| interface4 | 144 | - | +| interface8 | 144 | - | +| program1 | 144 | - | +| program2 | 144 | - | +| program4 | 144 | - | +| program8 | 144 | - | +| signer1 | 144 | - | +| signer2 | 144 | - | +| signer4 | 144 | - | +| signer8 | 144 | - | +| system_account1 | 144 | - | +| system_account2 | 144 | - | +| system_account4 | 144 | - | +| system_account8 | 144 | - | +| unchecked_account1 | 144 | - | +| unchecked_account2 | 144 | - | +| unchecked_account4 | 144 | - | +| unchecked_account8 | 144 | - | + +### Notable changes + - lang: Use closures for `init` constraints to reduce the stack usage of `try_accounts` ([#2939](https://github.com/coral-xyz/anchor/pull/2939)). --- diff --git a/cli/Cargo.toml b/cli/Cargo.toml index 768a7069ab..f6a8cf8d39 100644 --- a/cli/Cargo.toml +++ b/cli/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "anchor-cli" -version = "0.30.1" +version = "0.31.0" authors = ["Anchor Maintainers "] edition = "2021" repository = "https://github.com/coral-xyz/anchor" @@ -15,9 +15,9 @@ path = "src/bin/main.rs" dev = [] [dependencies] -anchor-client = { path = "../client", version = "0.30.1" } -anchor-lang-idl = { path = "../idl", version = "0.1.1", features = ["build", "convert"] } -anchor-lang = { path = "../lang", version = "0.30.1" } +anchor-client = { path = "../client", version = "0.31.0" } +anchor-lang-idl = { path = "../idl", version = "0.1.2", features = ["build", "convert"] } +anchor-lang = { path = "../lang", version = "0.31.0" } anyhow = "1.0.32" base64 = "0.21" bincode = "1.3.3" diff --git a/cli/npm-package/package.json b/cli/npm-package/package.json index e331f8f406..4837eac957 100644 --- a/cli/npm-package/package.json +++ b/cli/npm-package/package.json @@ -1,6 +1,6 @@ { "name": "@coral-xyz/anchor-cli", - "version": "0.30.1", + "version": "0.31.0", "description": "Anchor CLI tool", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/client/Cargo.toml b/client/Cargo.toml index c819b2497f..800423af7c 100644 --- a/client/Cargo.toml +++ b/client/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "anchor-client" -version = "0.30.1" +version = "0.31.0" authors = ["Anchor Maintainers "] edition = "2021" license = "Apache-2.0" @@ -16,7 +16,7 @@ debug = [] mock = [] [dependencies] -anchor-lang = { path = "../lang", version = "0.30.1" } +anchor-lang = { path = "../lang", version = "0.31.0" } anyhow = "1" futures = "0.3" regex = "1" diff --git a/client/src/lib.rs b/client/src/lib.rs index 84ad8bb747..1b0995cbb1 100644 --- a/client/src/lib.rs +++ b/client/src/lib.rs @@ -50,14 +50,14 @@ //! //! More examples can be found in [here]. //! -//! [here]: https://github.com/coral-xyz/anchor/tree/v0.30.1/client/example/src +//! [here]: https://github.com/coral-xyz/anchor/tree/v0.31.0/client/example/src //! //! # Features //! //! The client is blocking by default. To enable asynchronous client, add `async` feature: //! //! ```toml -//! anchor-client = { version = "0.30.1 ", features = ["async"] } +//! anchor-client = { version = "0.31.0 ", features = ["async"] } //! ```` use anchor_lang::solana_program::program_error::ProgramError; diff --git a/docker/Makefile b/docker/Makefile index 4a1eacec65..fbc53f8f7f 100644 --- a/docker/Makefile +++ b/docker/Makefile @@ -2,7 +2,7 @@ WORKDIR=$(PWD) # # Anchor version. # -ANCHOR_CLI=v0.30.1 +ANCHOR_CLI=v0.31.0 # # Solana toolchain. # diff --git a/docs/programs/tic-tac-toe/package.json b/docs/programs/tic-tac-toe/package.json index 4998bf601e..b9c9b66abc 100644 --- a/docs/programs/tic-tac-toe/package.json +++ b/docs/programs/tic-tac-toe/package.json @@ -1,14 +1,14 @@ { - "type": "module", - "dependencies": { - "@coral-xyz/anchor": "^0.30.1" - }, - "devDependencies": { - "@types/chai": "^4.3.0", - "@types/mocha": "^9.0.0", - "chai": "^5.1.1", - "mocha": "^10.7.0", - "tsx": "^4.16.2", - "typescript": "^4.3.5" - } + "type": "module", + "dependencies": { + "@coral-xyz/anchor": "^0.31.0" + }, + "devDependencies": { + "@types/chai": "^4.3.0", + "@types/mocha": "^9.0.0", + "chai": "^5.1.1", + "mocha": "^10.7.0", + "tsx": "^4.16.2", + "typescript": "^4.3.5" + } } diff --git a/docs/programs/tic-tac-toe/programs/tic-tac-toe/Cargo.toml b/docs/programs/tic-tac-toe/programs/tic-tac-toe/Cargo.toml index a93bef1acf..812da8bdcc 100644 --- a/docs/programs/tic-tac-toe/programs/tic-tac-toe/Cargo.toml +++ b/docs/programs/tic-tac-toe/programs/tic-tac-toe/Cargo.toml @@ -17,6 +17,6 @@ no-log-ix-name = [] idl-build = ["anchor-lang/idl-build"] [dependencies] -anchor-lang = "=0.30.1" +anchor-lang = "=0.31.0" num-traits = "0.2" num-derive = "0.3" diff --git a/docs/src/pages/_app.jsx b/docs/src/pages/_app.jsx index 12a155c361..e96d7b6b41 100644 --- a/docs/src/pages/_app.jsx +++ b/docs/src/pages/_app.jsx @@ -27,6 +27,7 @@ const navigation = [ { title: 'Release Notes', links: [ + { title: '0.31.0', href: '/release-notes/0.31.0' }, { title: '0.30.1', href: '/release-notes/0.30.1' }, { title: '0.30.0', href: '/release-notes/0.30.0' }, { title: '0.29.0', href: '/release-notes/0.29.0' }, diff --git a/docs/src/pages/docs/installation.md b/docs/src/pages/docs/installation.md index eaf48a14ed..56d7fba23a 100644 --- a/docs/src/pages/docs/installation.md +++ b/docs/src/pages/docs/installation.md @@ -63,7 +63,7 @@ Anchor binaries are available via an NPM package [`@coral-xyz/anchor-cli`](https We can also use Cargo to install the CLI directly. Make sure that the `--tag` argument uses the version you want (the version here is just an example). ```shell -cargo install --git https://github.com/coral-xyz/anchor --tag v0.30.1 anchor-cli --locked +cargo install --git https://github.com/coral-xyz/anchor --tag v0.31.0 anchor-cli --locked ``` On Linux systems you may need to install additional dependencies if cargo install fails. On Ubuntu, diff --git a/docs/src/pages/docs/manifest.md b/docs/src/pages/docs/manifest.md index 0f5e834c76..d2d5e03ff0 100644 --- a/docs/src/pages/docs/manifest.md +++ b/docs/src/pages/docs/manifest.md @@ -200,6 +200,6 @@ Override toolchain data in the workspace similar to [`rust-toolchain.toml`](http ```toml [toolchain] -anchor_version = "0.30.1" # `anchor-cli` version to use(requires `avm`) -solana_version = "1.18.17" # Solana version to use(applies to all Solana tools) +anchor_version = "0.31.0" # `anchor-cli` version to use(requires `avm`) +solana_version = "2.0.8" # Solana version to use(applies to all Solana tools) ``` diff --git a/docs/src/pages/docs/publishing-source.md b/docs/src/pages/docs/publishing-source.md index dc69723cca..0e44e44a42 100644 --- a/docs/src/pages/docs/publishing-source.md +++ b/docs/src/pages/docs/publishing-source.md @@ -35,8 +35,8 @@ An example `Anchor.toml` config looks as follows, ```toml [toolchain] -anchor_version = "0.30.1" -solana_version = "1.18.17" +anchor_version = "0.31.0" +solana_version = "2.0.8" [workspace] members = ["programs/multisig"] diff --git a/docs/src/pages/docs/verifiable-builds.md b/docs/src/pages/docs/verifiable-builds.md index 12e8832756..302db1dc48 100644 --- a/docs/src/pages/docs/verifiable-builds.md +++ b/docs/src/pages/docs/verifiable-builds.md @@ -37,10 +37,10 @@ If the program has an IDL, it will also check the IDL deployed on chain matches. ## Images -A docker image for each version of Anchor is published on [Docker Hub](https://hub.docker.com/r/backpackapp/build). They are tagged in the form `backpackapp/build:`. For example, to get the image for Anchor `v0.30.1` one can run +A docker image for each version of Anchor is published on [Docker Hub](https://hub.docker.com/r/backpackapp/build). They are tagged in the form `backpackapp/build:`. For example, to get the image for Anchor `v0.31.0` one can run ```shell -docker pull backpackapp/build:v0.30.1 +docker pull backpackapp/build:v0.31.0 ``` ## Removing an Image diff --git a/docs/src/pages/release-notes/0.31.0.md b/docs/src/pages/release-notes/0.31.0.md new file mode 100644 index 0000000000..2e416a84ea --- /dev/null +++ b/docs/src/pages/release-notes/0.31.0.md @@ -0,0 +1,321 @@ +--- +title: Release Notes 0.31.0 +description: Anchor - Release Notes 0.31.0 +--- + +This release includes [various stack memory improvements](#stack-memory-improvements), [ability to customize discriminators](#custom-discriminators), and a brand new account type ([`LazyAccount`](#lazy-account)). + +--- + +## How to upgrade + +1. Update `anchor-cli`: + + ```sh + avm install 0.31.0 + ``` + +2. Update Anchor crate(s) to `0.31.0`. + +3. Update TS package(s) to `0.31.0`. + +## Recommended Solana Version + +The recommended Solana version is `2.0.8`. This is a special upgrade because some of the Solana binaries have been renamed to Agave, see [Agave transition](https://github.com/anza-xyz/agave/wiki/Agave-Transition). + +You can install the newer tooling by running: + +``` +sh -c "$(curl -sSfL https://release.anza.xyz/v2.0.8/install)" +``` + +This change is handled automatically if you specify the `toolchain.solana_version`, see [Automatic Agave transition](#automatic-agave-transition). + +## IDL + +### Safety comment checks + +In v0.30.1, you'd run into panics in Rust Analyzer if you enabled all features because the `idl-build` feature expected an environment variable to be set. This was always set if you used `anchor build`, but since Rust Analyzer did not know about this environment variable, it would panic: + +``` +custom attribute panicked +message: Safety checks failed: Failed to get program path +``` + +It no longer panics if the environment variable is missing. + +### `address` constraint with non-const expressions + +There was a regression in v0.30 that made using non-const expressions with the `address` constraint fail: + +```rs +#[derive(Accounts)] +pub struct MyIx { + #[account(address = my_account.authority())] + pub authority: Signer<'info>, + pub my_account: Account<'info, MyAccount>, +} +``` + +This is now fixed and no longer results in build errors. + +See [coral-xyz/anchor#3216](https://github.com/coral-xyz/anchor/pull/3216) for more information. + +### `Program` accounts with full paths + +The following did not work in v0.30, but it works now: + +```rs +#[derive(Accounts)] +pub struct FullPath<'info> { + pub external_program: Program<'info, external::program::External>, +} +``` + +### `IdlBuilder` + +Building the IDL via the [`build_idl`](https://github.com/coral-xyz/anchor/blob/v0.31.0/idl/src/build.rs#L119) function made it impossible to extend its functionality e.g. add new parameters without a breaking change. To solve this problem, there is a new way to build IDLs programatically: + +```rs +let idl = IdlBuilder::new().program_path(path).skip_lint(true).build()?; +``` + +See [`IdlBuilder`](https://docs.rs/anchor-lang-idl/0.1.2/anchor_lang_idl/build/struct.IdlBuilder.html) for more information. + +## CLI + +### Automatic Agave transition + +As mentioned in [Recommended Solana version](#recommended-solana-version) section, some of the Solana binaries are renamed to Agave. `solana-install` is deprecated in `1.18.19` and logs a deprecation message when used (this results in parsing failure in older Anchor versions): + +``` +⚠️ solana-install is deprecated and will be discontinued when v1.18 is no longer supported. Please switch to Agave: https://github.com/anza-xyz/agave/wiki/Agave-Transition +``` + +In this release, if you specify `solana_version` field with a version greater than `1.18.19`, it automatically installs and switches to `agave-install`: + +```toml +[toolchain] +solana_version = "2.0.8" +``` + +### `solana-program` warning + +Adding `solana-program` as a dependency of Anchor programs should be avoided to decrease the possibility of version conflicts between Solana v1 and v2 crates. + +You'll see the following warning on builds if you have `solana-program` in your dependency list: + +``` +WARNING: Adding `solana-program` as a separate dependency might cause conflicts. +To solve, remove the `solana-program` dependency and use the exported crate from `anchor-lang`. +`use solana_program` becomes `use anchor_lang::solana_program`. +Program name: `my-program` +``` + +### Pass `cargo` args to IDL build + +Both `anchor build` and `anchor idl build` commands pass the `cargo` arguments to the underyling IDL build command. For example: + +``` +anchor build -- --features my-feature +``` + +now builds the IDL with `my-feature` enabled. + +### `--no-idl` flag for tests + +If you make a change to your program, but the API of the program stays the same, building the IDL is pointless and takes additional time. + +Similar to [`--no-idl` flag on builds](./0.30.0#no-idl-flag-on-builds), now you can use: + +``` +anchor test --no-idl +``` + +### `clean` + +`anchor clean` now also removes the generated `.anchor` directory. + +For those of you that don't know, this command is similar to `cargo clean`, but it keeps the program keypairs. + +### Shell completions + +You can now generate shell completions, see [Generating Shell Completions](../docs/installation#generating-shell-completions). + +## Lang + +### Stack memory improvements + +This is going to be a longer section, TL;DR is stack usage is improved massively when using `init` constraints, and stack warnings on builds are now reliable when using Solana v2 (`platform-tools v1.42`). Keep reading if you're interested in learning more, otherwise you can skip to [Custom discriminators](#custom-discriminators). + +The main place where Anchor programs are likely to hit stack violation errors is a generated function called `try_accounts`. This is where the instruction is deserialized and constraints are run. Although having everything at the same place is convenient for using constraints, this also makes it very easy to use the fixed amount of stack space (4096 bytes) SVM allocates just by increasing the number of accounts the instruction has. You might be familiar with it from the mangled build logs: + +``` +Error: Function _ZN71_$LT$pr..Test$u20$as$u20$anchor_lang..Accounts$LT$pr..TestBumps$GT$$GT$12try_accounts17h5572074d55b9e638E Stack offset of 4112 exceeded max offset of 4096 by 16 bytes, please minimize large stack variables. +``` + +The problem was made worse with the following external developments: + +1. Rust/LLVM changes shipped with Solana v1.18 made Anchor's `try_accounts` function use even more stack space, resulting in much lower threshold to hit stack-related problems. +2. The stack logs were unreliable, meaning you wouldn't always get warnings during builds if you went over the stack limit. +3. The feature ["Account data direct mapping"](https://github.com/solana-labs/solana/issues/29708), which is enabled by default when using local-validator, made the programs run into [undefined behavior](https://en.wikipedia.org/wiki/Undefined_behavior) when a function used more stack space than it had available. + +All of this combined meant that your programs used more stack space (1), but sometimes the errors didn't get caught during the compile time (2) or even the runtime (3). + +Undefined behavior is particularly challenging to debug because things may appear to work as expected during tests, but a different input to the same test might overwrite an account's data with unintended bytes. There are endless scenarios that could go wrong here, and some examples include [#2955](https://github.com/coral-xyz/anchor/issues/2955), [#3113](https://github.com/coral-xyz/anchor/issues/3113), and [#3196](https://github.com/coral-xyz/anchor/issues/3196). + +There isn't much we can do for problems 1 and 3, but the problem 2 is resolved with Solana v2 (`platform-tools v1.42`), meaning you'll reliably get warnings about all stack problems. + +Circling back to Anchor, the biggest offender to the stack usage was identified to be the `init` constraint. Each `init` constraint expands to a lengthy code inside `try_accounts`, resulting in excessive stack usage when multiple `init` constraints are used. This problem was fixed by moving the `init` code inside a closure and immediately calling it in order to create and use a different stack frame ([#2939](https://github.com/coral-xyz/anchor/pull/2939)). + +Related to this topic, there is [SIMD-0166](https://github.com/solana-foundation/solana-improvement-documents/pull/166), a proposal to introduce dynamic stack frames. + +In short, you'll have fewer problems related to stack memory when using Anchor v0.31 and Solana v2. If you're still running into problems, please create an issue in [coral-xyz/anchor](https://github.com/coral-xyz/anchor/issues/3097). + +### Custom discriminators + +Before this release, there were several problems regarding Anchor discriminators: + +- Due to the transaction size limits enforced by the Solana runtime (1232 bytes), 8 bytes can be too high for some use cases +- The `Discriminator` trait had a fixed size type field (`[u8; 8]`), which meant we wouldn't be able to implement it for non-Anchor programs (e.g. in `declare_program!`) +- Discriminators were not customizable +- Changing the name of the data type the discriminator was derived from resulted in a different discriminator + +This release solves all of the above problems by introducing support for custom discriminators. The default 8-byte discriminators have not changed, but you can override them via the `discriminator` argument implemented in various Anchor attribute macros: + +- `#[account(discriminator = 1)]` +- `#[event(discriminator = [1, 2])]` +- `#[instruction(discriminator = MY_CONST)]` + +All constant expressions are supported. + +See [example](https://github.com/coral-xyz/anchor/blob/v0.31.0/tests/custom-discriminator/programs/custom-discriminator/src/lib.rs). + +It's important that the discriminator is always unique for the type you're implementing it for. While the discriminator can be at any length (including zero), the IDL generation does not currently allow empty discriminators for safety and convenience reasons. However, the `Discriminator` trait definition still allows empty discriminators because some non-Anchor programs, e.g. the SPL Token program, don't have account discriminators. In that case, safety checks should never depend on the discriminator. + +Additionally, the IDL generation step also checks whether you have ambigious discriminators i.e. discriminators that can be used for multiple types. However, you should still consider future possibilities, especially when working with 1-byte discriminators. For example, having an account with discriminator `[1]` means you can't have any other discriminators that start with `1`, e.g. `[1, 2 , 3, 4]`, as it would not be unique. + +This change also enables using non-Anchor programs with both Rust (via [`declare_program!`](./0.30.0#dependency-free-program-declaration)) and in the TS client. + +### `LazyAccount` + +`LazyAccount` is an experimental account type that can be used to replace `Account` when you're running into performance-related problems. + +We'll skip the details to keep the release notes as short as possible, but if you're interested, check out [its documentation](https://docs.rs/anchor-lang/0.31.0/anchor_lang/accounts/lazy_account/struct.LazyAccount.html) to see if it fits your needs. + +**Note:** You need to enable `lazy-account` feature of `anchor-lang` to be able to use `LazyAccount`. + +### `cfg` attribute on instructions + +You can now use `cfg` attributes on instructions: + +```rs +#[program] +mod my_program { + #[cfg(feature = "my-feature")] + pub fn my_feature(ctx: Context) -> Result<()> {} +} +``` + +### Unnamed and unit structs with `InitSpace` + +Unnamed and unit struct support was added in v0.30, but deriving `InitSpace` did not work with these structs. This release adds support for both of them: + +```rs +#[derive(InitSpace)] +pub struct Unnamed(pub u64, #[max_len(64)] pub Vec); + +#[derive(InitSpace)] +pub struct Unit; +``` + +## SPL + +### New Token 2022 instructions + +The following Token 2022 instructions were added: + +- `burn_checked` +- `mint_to_checked` +- `approve_checked` +- `withdraw_withheld_tokens_from_accounts` + +## TypeScript + +### Simpler `Program` construction + +TypeScript's automatic inference of JSON files made it difficult to use the `Program` constructor without additional casting: + +```ts +import * as idl from './idl/my_program.json' +import type { MyProgram } from './types/my_program' + +const program = new Program(idl as unknown as MyProgram, provider) +``` + +Casting to `unknown` or `any` was necessary when TypeScript automatically inferred the type of the JSON file. + +In this release, the program constructor no longer infers the IDL type from the given `idl` argument. This makes it easier to specify the actual IDL type: + +```ts +const program = new Program(idl, provider) +``` + +### Error improvements + +Account resolution error now includes the accounts that weren't able to get resolved: + +``` +Reached maximum depth for account resolution. Unresolved accounts: `pda`, `anotherPda` +``` + +Similarly, unsupported `view` method error now includes the possible causes: + +``` +Error: Method does not support views. The instruction should return a value, and its accounts must be read-only +``` + +### Type improvements + +It's common to use `//@ts-ignore` to get the payer keypair in tests: + +```ts +// @ts-ignore +const payer = program.provider.wallet.payer +``` + +To fix this problem, the `Provider` interface now includes an optional `wallet: Wallet` field, and similarly, the `Wallet` interface now includes optional `payer: Keypair` field. + +You can now do: + +```ts +const payer = program.provider.wallet!.payer! +``` + +We're using `!` because we know these fields are going to be defined in our testing environment. + +### Confirmation improvements + +`Provider.sendAndConfirm` now takes in an optional `blockhash` and uses that for better transaction confirmation: + +```ts +await program.provider.sendAndConfirm(tx, signers, { blockhash: ... }); +``` + +## Rust Client + +### `tokio` support + +There was a problem that made it impossible to use `tokio` with [`anchor-client`](https://docs.rs/anchor-client/0.31.0/anchor_client/index.html). This problem is now fixed, and you can use `tokio` (with `async` feature). See [`tokio` example](https://github.com/coral-xyz/anchor/blob/v0.31.0/client/example/src/nonblocking.rs#L65-L99). + +### Mock client + +It's now possible to pass in a [mock RPC client](https://docs.rs/solana-client/2.0.8/solana_client/rpc_client/struct.RpcClient.html#method.new_mock) for testing by enabling the `mock` feature: + +```toml +anchor-client = { version = "0.31.0", features = ["mock"] } +``` + +--- + +See the full list of notable changes in the [CHANGELOG](https://github.com/coral-xyz/anchor/blob/v0.31.0/CHANGELOG.md#0310---2024-09-19). diff --git a/docs/src/pages/release-notes/changelog.md b/docs/src/pages/release-notes/changelog.md index de055fa54c..1fbc32271e 100644 --- a/docs/src/pages/release-notes/changelog.md +++ b/docs/src/pages/release-notes/changelog.md @@ -8,6 +8,95 @@ The minor version will be incremented upon a breaking change and the patch versi --- +## [0.31.0] - 2024-09-19 + +### Features + +- ts: Add optional `options.blockhash` to `Provider.sendAndConfirm` ([#3070](https://github.com/coral-xyz/anchor/pull/3070)). +- ts: Add optional `commitment` parameter to `Program.addEventListener` ([#3052](https://github.com/coral-xyz/anchor/pull/3052)). +- cli, idl: Pass `cargo` args to IDL generation when building program or IDL ([#3059](https://github.com/coral-xyz/anchor/pull/3059)). +- cli: Add checks for incorrect usage of `idl-build` feature ([#3061](https://github.com/coral-xyz/anchor/pull/3061)). +- lang: Export `Discriminator` trait from `prelude` ([#3075](https://github.com/coral-xyz/anchor/pull/3075)). +- lang: Add `Account` utility type to get accounts from bytes ([#3091](https://github.com/coral-xyz/anchor/pull/3091)). +- client: Add option to pass in mock rpc client when using anchor_client ([#3053](https://github.com/coral-xyz/anchor/pull/3053)). +- lang: Get discriminator length dynamically ([#3101](https://github.com/coral-xyz/anchor/pull/3101)). +- lang: Add non-8-byte discriminator support in `declare_program!` ([#3103](https://github.com/coral-xyz/anchor/pull/3103)). +- client: Make `ThreadSafeSigner` trait public ([#3107](https://github.com/coral-xyz/anchor/pull/3107)). +- lang: Update `dispatch` function to support dynamic discriminators ([#3104](https://github.com/coral-xyz/anchor/pull/3104)). +- lang: Remove the fallback function shortcut in `try_entry` function ([#3109](https://github.com/coral-xyz/anchor/pull/3109)). +- ts: Get discriminator lengths dynamically ([#3120](https://github.com/coral-xyz/anchor/pull/3120)). +- client: Support non-8-byte discriminators ([#3125](https://github.com/coral-xyz/anchor/pull/3125)). +- spl: Add `withdraw_withheld_tokens_from_accounts` instruction ([#3128](https://github.com/coral-xyz/anchor/pull/3128)). +- ts: Add optional `wallet` property to the `Provider` interface ([#3130](https://github.com/coral-xyz/anchor/pull/3130)). +- cli: Warn if `anchor-spl/idl-build` is missing ([#3133](https://github.com/coral-xyz/anchor/pull/3133)). +- client: Add `internal_rpc` method for `mock` feature ([#3135](https://github.com/coral-xyz/anchor/pull/3135)). +- lang: Add `#[instruction]` attribute proc-macro to override default instruction discriminators ([#3137](https://github.com/coral-xyz/anchor/pull/3137)). +- lang: Use associated discriminator constants instead of hardcoding in `#[account]` ([#3144](https://github.com/coral-xyz/anchor/pull/3144)). +- lang: Add `discriminator` argument to `#[account]` attribute ([#3149](https://github.com/coral-xyz/anchor/pull/3149)). +- lang: Add `discriminator` argument to `#[event]` attribute ([#3152](https://github.com/coral-xyz/anchor/pull/3152)). +- idl: Check ambiguous discriminators ([#3157](https://github.com/coral-xyz/anchor/pull/3157)). +- idl: Disallow all zero account discriminators ([#3159](https://github.com/coral-xyz/anchor/pull/3159)). +- cli: Support non-8-byte discriminators ([#3165](https://github.com/coral-xyz/anchor/pull/3165)). +- idl: Disallow empty discriminators ([#3166](https://github.com/coral-xyz/anchor/pull/3166)). +- cli: Add `--no-idl` option to the `test` command ([#3175](https://github.com/coral-xyz/anchor/pull/3175)). +- spl: Add `burn_checked`, `mint_to_checked` and `approve_checked` instructions ([#3186](https://github.com/coral-xyz/anchor/pull/3186)). +- cli: Migrate to `agave-install` when `solana_version` is `>= 1.18.19` ([#3185](https://github.com/coral-xyz/anchor/pull/3185)). +- idl: Add `IdlBuilder` ([#3188](https://github.com/coral-xyz/anchor/pull/3188)). +- cli: Make `clean` command also remove the `.anchor` directory ([#3192](https://github.com/coral-xyz/anchor/pull/3192)). +- lang: Deprecate `#[interface]` attribute ([#3195](https://github.com/coral-xyz/anchor/pull/3195)). +- ts: Include unresolved accounts in the resolution error message ([#3207](https://github.com/coral-xyz/anchor/pull/3207)). +- lang: Add `LazyAccount` ([#3194](https://github.com/coral-xyz/anchor/pull/3194)). +- avm: Ask whether to install if the version is not installed with the `use` command ([#3230](https://github.com/coral-xyz/anchor/pull/3230)). +- cli: Warn if a manifest has `solana-program` dependency ([#3250](https://github.com/coral-xyz/anchor/pull/3250)). +- cli: Add completions command to generate shell completions via the `clap_complete` crate ([#3251](https://github.com/coral-xyz/anchor/pull/3251)). + +### Fixes + +- idl: Make safety comment checks fail silently when program path env is not set ([#3045](https://github.com/coral-xyz/anchor/pull/3045)). +- idl: Avoid interference from rust tests during IDL generation ([#3058](https://github.com/coral-xyz/anchor/pull/3058)). +- lang: Fix `align` repr support in `declare-program!` ([#3056](https://github.com/coral-xyz/anchor/pull/3056)). +- lang: Make stack frames slimmer on ATA creation ([#3065](https://github.com/coral-xyz/anchor/pull/3065)). +- lang: Remove `getrandom` dependency ([#3072](https://github.com/coral-xyz/anchor/pull/3072)). +- lang: Make `InitSpace` support unnamed & unit structs ([#3084](https://github.com/coral-xyz/anchor/pull/3084)). +- lang: Fix using `owner` constraint with `Box`ed accounts ([#3087](https://github.com/coral-xyz/anchor/pull/3087)). +- lang: Add a sanity check for unimplemented token extensions ([#3090](https://github.com/coral-xyz/anchor/pull/3090)). +- cli: Skip IDL checks if `--no-idl` option is passed ([#3093](https://github.com/coral-xyz/anchor/pull/3093)). +- lang: Remove unnecessary clone in account exit routine ([#3139](https://github.com/coral-xyz/anchor/pull/3139)). +- cli: Fix installation with `--locked` argument using Rust v1.80 due to `time` crate issue ([#3143](https://github.com/coral-xyz/anchor/pull/3143)). +- lang: Fix compilation warnings due to unused deprecated program id macros ([#3170](https://github.com/coral-xyz/anchor/pull/3170)). +- ts: Remove `crypto-hash` dependency ([#3171](https://github.com/coral-xyz/anchor/pull/3171)). +- ts: Improve error message of unsupported `view` method ([#3177](https://github.com/coral-xyz/anchor/pull/3177)). +- idl: Fix panicking on tests ([#3197](https://github.com/coral-xyz/anchor/pull/3197)). +- lang: Remove `arrayref` dependency ([#3201](https://github.com/coral-xyz/anchor/pull/3201)). +- cli: Fix template code shouldn't escape ([#3210](https://github.com/coral-xyz/anchor/pull/3210)). +- idl: Fix using `address` constraint with non-const expressions ([#3216](https://github.com/coral-xyz/anchor/pull/3216)). +- idl: Fix using full path types with `Program` ([#3228](https://github.com/coral-xyz/anchor/pull/3228)). +- lang: Use closures for `init` constraints to reduce the stack usage of `try_accounts` ([#2939](https://github.com/coral-xyz/anchor/pull/2939)). +- lang: Allow the `cfg` attribute above the instructions ([#2339](https://github.com/coral-xyz/anchor/pull/2339)). + +### Breaking + +- syn: Remove `bpf` target support in `hash` feature ([#3078](https://github.com/coral-xyz/anchor/pull/3078)). +- client: Add `tokio` support to `RequestBuilder` with `async` feature ([#3057](https://github.com/coral-xyz/anchor/pull/3057)). +- lang: Remove `EventData` trait ([#3083](https://github.com/coral-xyz/anchor/pull/3083)). +- client: Remove `async_rpc` method ([#3053](https://github.com/coral-xyz/anchor/pull/3053)). +- lang: Make discriminator type unsized ([#3098](https://github.com/coral-xyz/anchor/pull/3098)). +- lang: Require `Discriminator` trait impl when using the `zero` constraint ([#3118](https://github.com/coral-xyz/anchor/pull/3118)). +- ts: Remove `DISCRIMINATOR_SIZE` constant ([#3120](https://github.com/coral-xyz/anchor/pull/3120)). +- lang: `#[account]` attribute arguments no longer parses identifiers as namespaces ([#3140](https://github.com/coral-xyz/anchor/pull/3140)). +- spl: Rename metadata interface instruction fields from `token_program_id` to `program_id` ([#3076](https://github.com/coral-xyz/anchor/pull/3076)). +- lang, ts: Remove "8 byte" requirement from discriminator error messages ([#3161](https://github.com/coral-xyz/anchor/pull/3161)). +- lang: Remove `discriminator` method from `Discriminator` trait ([#3163](https://github.com/coral-xyz/anchor/pull/3163)). +- docker: Upgrade `node` to 20.16.0 LTS ([#3179](https://github.com/coral-xyz/anchor/pull/3179)). +- ts: Change the `Program` constructor's `idl` parameter type to `any` ([#3181](https://github.com/coral-xyz/anchor/pull/3181)). +- lang, spl: Remove `borsh 0.9` support ([#3199](https://github.com/coral-xyz/anchor/pull/3199)). +- ts: Upgrade `typescript` to `5.5.4` and remove the generic parameters of `SimulateResponse` ([#3221](https://github.com/coral-xyz/anchor/pull/3221)). +- ts: Remove `StateCoder`([#3224](https://github.com/coral-xyz/anchor/pull/3224)). +- cli: Accept integers for `warp_slot` ([#3235](https://github.com/coral-xyz/anchor/pull/3235)). +- lang: Remove `EventIndex` ([#3244](https://github.com/coral-xyz/anchor/pull/3244)). +- spl: Remove `dex` feature ([#3257](https://github.com/coral-xyz/anchor/pull/3257)). +- client, lang, spl: Upgrade Solana to v2 and SPL to the latest ([#3219](https://github.com/coral-xyz/anchor/pull/3219)). + ## [0.30.1] - 2024-06-20 ### Features diff --git a/examples/tutorial/basic-0/package.json b/examples/tutorial/basic-0/package.json index 57b13033bf..a8df0532d0 100644 --- a/examples/tutorial/basic-0/package.json +++ b/examples/tutorial/basic-0/package.json @@ -1,6 +1,6 @@ { "name": "basic-0", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/examples/tutorial/basic-1/package.json b/examples/tutorial/basic-1/package.json index 349ee92fa2..dea2a6d65c 100644 --- a/examples/tutorial/basic-1/package.json +++ b/examples/tutorial/basic-1/package.json @@ -1,6 +1,6 @@ { "name": "basic-1", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/examples/tutorial/basic-2/package.json b/examples/tutorial/basic-2/package.json index 7e63322454..026070a3d9 100644 --- a/examples/tutorial/basic-2/package.json +++ b/examples/tutorial/basic-2/package.json @@ -1,6 +1,6 @@ { "name": "basic-2", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/examples/tutorial/basic-3/package.json b/examples/tutorial/basic-3/package.json index 2f4763adf5..fb612919b3 100644 --- a/examples/tutorial/basic-3/package.json +++ b/examples/tutorial/basic-3/package.json @@ -1,6 +1,6 @@ { "name": "basic-3", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/examples/tutorial/basic-4/package.json b/examples/tutorial/basic-4/package.json index e162df60a2..9285034666 100644 --- a/examples/tutorial/basic-4/package.json +++ b/examples/tutorial/basic-4/package.json @@ -1,6 +1,6 @@ { "name": "basic-4", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/examples/tutorial/basic-5/package.json b/examples/tutorial/basic-5/package.json index 4455561c29..89473d510c 100644 --- a/examples/tutorial/basic-5/package.json +++ b/examples/tutorial/basic-5/package.json @@ -1,6 +1,6 @@ { "name": "basic-5", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/idl/Cargo.toml b/idl/Cargo.toml index 82f218f148..d9bcadaa92 100644 --- a/idl/Cargo.toml +++ b/idl/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "anchor-lang-idl" -version = "0.1.1" +version = "0.1.2" authors = ["Anchor Maintainers "] repository = "https://github.com/coral-xyz/anchor" edition = "2021" diff --git a/lang/Cargo.toml b/lang/Cargo.toml index f1678680fe..db6d437f5d 100644 --- a/lang/Cargo.toml +++ b/lang/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "anchor-lang" -version = "0.30.1" +version = "0.31.0" authors = ["Anchor Maintainers "] repository = "https://github.com/coral-xyz/anchor" edition = "2021" @@ -39,18 +39,18 @@ interface-instructions = ["anchor-attribute-program/interface-instructions"] lazy-account = ["anchor-attribute-account/lazy-account", "anchor-derive-serde/lazy-account"] [dependencies] -anchor-attribute-access-control = { path = "./attribute/access-control", version = "0.30.1" } -anchor-attribute-account = { path = "./attribute/account", version = "0.30.1" } -anchor-attribute-constant = { path = "./attribute/constant", version = "0.30.1" } -anchor-attribute-error = { path = "./attribute/error", version = "0.30.1" } -anchor-attribute-event = { path = "./attribute/event", version = "0.30.1" } -anchor-attribute-program = { path = "./attribute/program", version = "0.30.1" } -anchor-derive-accounts = { path = "./derive/accounts", version = "0.30.1" } -anchor-derive-serde = { path = "./derive/serde", version = "0.30.1" } -anchor-derive-space = { path = "./derive/space", version = "0.30.1" } +anchor-attribute-access-control = { path = "./attribute/access-control", version = "0.31.0" } +anchor-attribute-account = { path = "./attribute/account", version = "0.31.0" } +anchor-attribute-constant = { path = "./attribute/constant", version = "0.31.0" } +anchor-attribute-error = { path = "./attribute/error", version = "0.31.0" } +anchor-attribute-event = { path = "./attribute/event", version = "0.31.0" } +anchor-attribute-program = { path = "./attribute/program", version = "0.31.0" } +anchor-derive-accounts = { path = "./derive/accounts", version = "0.31.0" } +anchor-derive-serde = { path = "./derive/serde", version = "0.31.0" } +anchor-derive-space = { path = "./derive/space", version = "0.31.0" } # `anchor-lang-idl` should only be included with `idl-build` feature -anchor-lang-idl = { path = "../idl", version = "0.1.1", optional = true } +anchor-lang-idl = { path = "../idl", version = "0.1.2", optional = true } base64 = "0.21" bincode = "1" diff --git a/lang/attribute/access-control/Cargo.toml b/lang/attribute/access-control/Cargo.toml index d375cb2ac1..29161c4cb4 100644 --- a/lang/attribute/access-control/Cargo.toml +++ b/lang/attribute/access-control/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "anchor-attribute-access-control" -version = "0.30.1" +version = "0.31.0" authors = ["Anchor Maintainers "] repository = "https://github.com/coral-xyz/anchor" license = "Apache-2.0" @@ -14,7 +14,7 @@ proc-macro = true anchor-debug = ["anchor-syn/anchor-debug"] [dependencies] -anchor-syn = { path = "../../syn", version = "0.30.1" } +anchor-syn = { path = "../../syn", version = "0.31.0" } proc-macro2 = "1" quote = "1" syn = { version = "1", features = ["full"] } diff --git a/lang/attribute/account/Cargo.toml b/lang/attribute/account/Cargo.toml index 8d4f0c74f0..e62756428f 100644 --- a/lang/attribute/account/Cargo.toml +++ b/lang/attribute/account/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "anchor-attribute-account" -version = "0.30.1" +version = "0.31.0" authors = ["Anchor Maintainers "] repository = "https://github.com/coral-xyz/anchor" license = "Apache-2.0" @@ -16,7 +16,7 @@ idl-build = ["anchor-syn/idl-build"] lazy-account = [] [dependencies] -anchor-syn = { path = "../../syn", version = "0.30.1", features = ["hash"] } +anchor-syn = { path = "../../syn", version = "0.31.0", features = ["hash"] } bs58 = "0.5" proc-macro2 = "1" quote = "1" diff --git a/lang/attribute/constant/Cargo.toml b/lang/attribute/constant/Cargo.toml index ce5f15a9fc..9894c1059b 100644 --- a/lang/attribute/constant/Cargo.toml +++ b/lang/attribute/constant/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "anchor-attribute-constant" -version = "0.30.1" +version = "0.31.0" authors = ["Anchor Maintainers "] repository = "https://github.com/coral-xyz/anchor" license = "Apache-2.0" @@ -15,6 +15,6 @@ anchor-debug = ["anchor-syn/anchor-debug"] idl-build = ["anchor-syn/idl-build"] [dependencies] -anchor-syn = { path = "../../syn", version = "0.30.1" } +anchor-syn = { path = "../../syn", version = "0.31.0" } quote = "1" syn = { version = "1", features = ["full"] } diff --git a/lang/attribute/error/Cargo.toml b/lang/attribute/error/Cargo.toml index 748b9993c2..da69dce198 100644 --- a/lang/attribute/error/Cargo.toml +++ b/lang/attribute/error/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "anchor-attribute-error" -version = "0.30.1" +version = "0.31.0" authors = ["Anchor Maintainers "] repository = "https://github.com/coral-xyz/anchor" license = "Apache-2.0" @@ -15,6 +15,6 @@ anchor-debug = ["anchor-syn/anchor-debug"] idl-build = ["anchor-syn/idl-build"] [dependencies] -anchor-syn = { path = "../../syn", version = "0.30.1" } +anchor-syn = { path = "../../syn", version = "0.31.0" } quote = "1" syn = { version = "1", features = ["full"] } diff --git a/lang/attribute/event/Cargo.toml b/lang/attribute/event/Cargo.toml index fd146bbf12..57d4efd791 100644 --- a/lang/attribute/event/Cargo.toml +++ b/lang/attribute/event/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "anchor-attribute-event" -version = "0.30.1" +version = "0.31.0" authors = ["Anchor Maintainers "] repository = "https://github.com/coral-xyz/anchor" license = "Apache-2.0" @@ -17,7 +17,7 @@ event-cpi = ["anchor-syn/event-cpi"] idl-build = ["anchor-syn/idl-build"] [dependencies] -anchor-syn = { path = "../../syn", version = "0.30.1", features = ["hash"] } +anchor-syn = { path = "../../syn", version = "0.31.0", features = ["hash"] } proc-macro2 = "1" quote = "1" syn = { version = "1", features = ["full"] } diff --git a/lang/attribute/program/Cargo.toml b/lang/attribute/program/Cargo.toml index fba2b27fe0..2212e772a9 100644 --- a/lang/attribute/program/Cargo.toml +++ b/lang/attribute/program/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "anchor-attribute-program" -version = "0.30.1" +version = "0.31.0" authors = ["Anchor Maintainers "] repository = "https://github.com/coral-xyz/anchor" license = "Apache-2.0" @@ -16,8 +16,8 @@ idl-build = ["anchor-syn/idl-build"] interface-instructions = ["anchor-syn/interface-instructions"] [dependencies] -anchor-lang-idl = { path = "../../../idl", version = "0.1.1", features = ["convert"] } -anchor-syn = { path = "../../syn", version = "0.30.1" } +anchor-lang-idl = { path = "../../../idl", version = "0.1.2", features = ["convert"] } +anchor-syn = { path = "../../syn", version = "0.31.0" } anyhow = "1" bs58 = "0.5" heck = "0.3" diff --git a/lang/attribute/program/src/lib.rs b/lang/attribute/program/src/lib.rs index 2eaa0f290a..a5d2b0c0c1 100644 --- a/lang/attribute/program/src/lib.rs +++ b/lang/attribute/program/src/lib.rs @@ -50,7 +50,7 @@ pub fn program( /// /// A full on-chain CPI usage example can be found [here]. /// -/// [here]: https://github.com/coral-xyz/anchor/tree/v0.30.1/tests/declare-program +/// [here]: https://github.com/coral-xyz/anchor/tree/v0.31.0/tests/declare-program #[proc_macro] pub fn declare_program(input: proc_macro::TokenStream) -> proc_macro::TokenStream { parse_macro_input!(input as DeclareProgram) diff --git a/lang/derive/accounts/Cargo.toml b/lang/derive/accounts/Cargo.toml index 9099584cd0..315c358a50 100644 --- a/lang/derive/accounts/Cargo.toml +++ b/lang/derive/accounts/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "anchor-derive-accounts" -version = "0.30.1" +version = "0.31.0" authors = ["Anchor Maintainers "] repository = "https://github.com/coral-xyz/anchor" license = "Apache-2.0" @@ -17,6 +17,6 @@ idl-build = ["anchor-syn/idl-build"] init-if-needed = ["anchor-syn/init-if-needed"] [dependencies] -anchor-syn = { path = "../../syn", version = "0.30.1" } +anchor-syn = { path = "../../syn", version = "0.31.0" } quote = "1" syn = { version = "1", features = ["full"] } diff --git a/lang/derive/serde/Cargo.toml b/lang/derive/serde/Cargo.toml index 43b5915082..2c0ba39167 100644 --- a/lang/derive/serde/Cargo.toml +++ b/lang/derive/serde/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "anchor-derive-serde" -version = "0.30.1" +version = "0.31.0" authors = ["Anchor Maintainers "] repository = "https://github.com/coral-xyz/anchor" license = "Apache-2.0" @@ -15,7 +15,7 @@ idl-build = ["anchor-syn/idl-build"] lazy-account = [] [dependencies] -anchor-syn = { path = "../../syn", version = "0.30.1" } +anchor-syn = { path = "../../syn", version = "0.31.0" } borsh-derive-internal = "0.10.3" proc-macro2 = "1" syn = { version = "1", features = ["full"] } diff --git a/lang/derive/space/Cargo.toml b/lang/derive/space/Cargo.toml index a61242f8a2..16a28558f4 100644 --- a/lang/derive/space/Cargo.toml +++ b/lang/derive/space/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "anchor-derive-space" -version = "0.30.1" +version = "0.31.0" authors = ["Anchor Maintainers "] repository = "https://github.com/coral-xyz/anchor" license = "Apache-2.0" diff --git a/lang/syn/Cargo.toml b/lang/syn/Cargo.toml index 53304f0cfe..37319d1be1 100644 --- a/lang/syn/Cargo.toml +++ b/lang/syn/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "anchor-syn" -version = "0.30.1" +version = "0.31.0" authors = ["Anchor Maintainers "] repository = "https://github.com/coral-xyz/anchor" license = "Apache-2.0" diff --git a/spl/Cargo.toml b/spl/Cargo.toml index 7d66df8fdf..72711289a8 100644 --- a/spl/Cargo.toml +++ b/spl/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "anchor-spl" -version = "0.30.1" +version = "0.31.0" authors = ["Anchor Maintainers "] edition = "2021" license = "Apache-2.0" @@ -25,7 +25,7 @@ token_2022 = ["spl-token-2022"] token_2022_extensions = ["spl-token-2022", "spl-token-group-interface", "spl-token-metadata-interface", "spl-pod"] [dependencies] -anchor-lang = { path = "../lang", version = "0.30.1", features = ["derive"] } +anchor-lang = { path = "../lang", version = "0.31.0", features = ["derive"] } borsh = { version = "0.10.3", optional = true } mpl-token-metadata = { version = "5.0.0-beta.0", optional = true } spl-associated-token-account = { version = "5", features = ["no-entrypoint"], optional = true } diff --git a/tests/anchor-cli-account/package.json b/tests/anchor-cli-account/package.json index 690bdc5362..8c2bdbe350 100644 --- a/tests/anchor-cli-account/package.json +++ b/tests/anchor-cli-account/package.json @@ -1,6 +1,6 @@ { "name": "anchor-cli-account", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/anchor-cli-idl/package.json b/tests/anchor-cli-idl/package.json index 4c31edba4c..26c8165b1f 100644 --- a/tests/anchor-cli-idl/package.json +++ b/tests/anchor-cli-idl/package.json @@ -1,6 +1,6 @@ { "name": "anchor-cli-idl", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/auction-house/package.json b/tests/auction-house/package.json index cbc3449b89..1aa7c07240 100644 --- a/tests/auction-house/package.json +++ b/tests/auction-house/package.json @@ -1,6 +1,6 @@ { "name": "auction-house", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/bench/bench.json b/tests/bench/bench.json index e4f57adf21..70da9e4e20 100644 --- a/tests/bench/bench.json +++ b/tests/bench/bench.json @@ -929,6 +929,192 @@ } } }, + "0.31.0": { + "solanaVersion": "2.0.8", + "result": { + "binarySize": { + "bench": 1097424 + }, + "computeUnits": { + "accountInfo1": 573, + "accountInfo2": 899, + "accountInfo4": 1561, + "accountInfo8": 2957, + "accountEmptyInit1": 5014, + "accountEmpty1": 649, + "accountEmptyInit2": 9155, + "accountEmpty2": 1015, + "accountEmptyInit4": 17465, + "accountEmpty4": 1740, + "accountEmptyInit8": 34115, + "accountEmpty8": 3193, + "accountSizedInit1": 5107, + "accountSized1": 690, + "accountSizedInit2": 9313, + "accountSized2": 1069, + "accountSizedInit4": 17812, + "accountSized4": 1834, + "accountSizedInit8": 34706, + "accountSized8": 3357, + "accountUnsizedInit1": 5227, + "accountUnsized1": 746, + "accountUnsizedInit2": 9599, + "accountUnsized2": 1163, + "accountUnsizedInit4": 18276, + "accountUnsized4": 2000, + "accountUnsizedInit8": 35328, + "accountUnsized8": 3671, + "boxedAccountEmptyInit1": 5106, + "boxedAccountEmpty1": 740, + "boxedAccountEmptyInit2": 9268, + "boxedAccountEmpty2": 1125, + "boxedAccountEmptyInit4": 17619, + "boxedAccountEmpty4": 1886, + "boxedAccountEmptyInit8": 34346, + "boxedAccountEmpty8": 3435, + "boxedAccountSizedInit1": 5189, + "boxedAccountSized1": 780, + "boxedAccountSizedInit2": 9411, + "boxedAccountSized2": 1180, + "boxedAccountSizedInit4": 17879, + "boxedAccountSized4": 1974, + "boxedAccountSizedInit8": 34842, + "boxedAccountSized8": 3593, + "boxedAccountUnsizedInit1": 5300, + "boxedAccountUnsized1": 838, + "boxedAccountUnsizedInit2": 9609, + "boxedAccountUnsized2": 1275, + "boxedAccountUnsizedInit4": 18251, + "boxedAccountUnsized4": 2138, + "boxedAccountUnsizedInit8": 35562, + "boxedAccountUnsized8": 3895, + "boxedInterfaceAccountMint1": 1502, + "boxedInterfaceAccountMint2": 2423, + "boxedInterfaceAccountMint4": 4256, + "boxedInterfaceAccountMint8": 7950, + "boxedInterfaceAccountToken1": 2198, + "boxedInterfaceAccountToken2": 3803, + "boxedInterfaceAccountToken4": 7004, + "boxedInterfaceAccountToken8": 13434, + "interfaceAccountMint1": 1626, + "interfaceAccountMint2": 2788, + "interfaceAccountMint4": 5110, + "interfaceAccountMint8": 9749, + "interfaceAccountToken1": 2296, + "interfaceAccountToken2": 4096, + "interfaceAccountToken4": 7692, + "interface1": 774, + "interface2": 923, + "interface4": 1214, + "interface8": 1799, + "program1": 782, + "program2": 927, + "program4": 1210, + "program8": 1779, + "signer1": 779, + "signer2": 1074, + "signer4": 1657, + "signer8": 2826, + "systemAccount1": 802, + "systemAccount2": 1108, + "systemAccount4": 1713, + "systemAccount8": 2926, + "uncheckedAccount1": 785, + "uncheckedAccount2": 1061, + "uncheckedAccount4": 1604, + "uncheckedAccount8": 2699 + }, + "stackMemory": { + "account_info1": 144, + "account_info2": 144, + "account_info4": 144, + "account_info8": 144, + "account_empty_init1": 144, + "account_empty_init2": 144, + "account_empty_init4": 192, + "account_empty_init8": 224, + "account_empty1": 144, + "account_empty2": 144, + "account_empty4": 144, + "account_empty8": 144, + "account_sized_init1": 176, + "account_sized_init2": 192, + "account_sized_init4": 224, + "account_sized_init8": 288, + "account_sized1": 144, + "account_sized2": 144, + "account_sized4": 144, + "account_sized8": 144, + "account_unsized_init1": 192, + "account_unsized_init2": 224, + "account_unsized_init4": 288, + "account_unsized_init8": 416, + "account_unsized1": 144, + "account_unsized2": 144, + "account_unsized4": 144, + "account_unsized8": 144, + "boxed_account_empty_init1": 144, + "boxed_account_empty_init2": 144, + "boxed_account_empty_init4": 192, + "boxed_account_empty_init8": 224, + "boxed_account_empty1": 144, + "boxed_account_empty2": 144, + "boxed_account_empty4": 144, + "boxed_account_empty8": 144, + "boxed_account_sized_init1": 144, + "boxed_account_sized_init2": 144, + "boxed_account_sized_init4": 192, + "boxed_account_sized_init8": 224, + "boxed_account_sized1": 144, + "boxed_account_sized2": 144, + "boxed_account_sized4": 144, + "boxed_account_sized8": 144, + "boxed_account_unsized_init1": 144, + "boxed_account_unsized_init2": 144, + "boxed_account_unsized_init4": 192, + "boxed_account_unsized_init8": 224, + "boxed_account_unsized1": 144, + "boxed_account_unsized2": 144, + "boxed_account_unsized4": 144, + "boxed_account_unsized8": 144, + "boxed_interface_account_mint1": 144, + "boxed_interface_account_mint2": 144, + "boxed_interface_account_mint4": 144, + "boxed_interface_account_mint8": 144, + "boxed_interface_account_token1": 144, + "boxed_interface_account_token2": 144, + "boxed_interface_account_token4": 144, + "boxed_interface_account_token8": 144, + "interface_account_mint1": 144, + "interface_account_mint2": 144, + "interface_account_mint4": 144, + "interface_account_mint8": 144, + "interface_account_token1": 144, + "interface_account_token2": 144, + "interface_account_token4": 144, + "interface1": 144, + "interface2": 144, + "interface4": 144, + "interface8": 144, + "program1": 144, + "program2": 144, + "program4": 144, + "program8": 144, + "signer1": 144, + "signer2": 144, + "signer4": 144, + "signer8": 144, + "system_account1": 144, + "system_account2": 144, + "system_account4": 144, + "system_account8": 144, + "unchecked_account1": 144, + "unchecked_account2": 144, + "unchecked_account4": 144, + "unchecked_account8": 144 + } + } + }, "unreleased": { "solanaVersion": "2.0.8", "result": { diff --git a/tests/bench/locks/0.31.0.lock b/tests/bench/locks/0.31.0.lock new file mode 100644 index 0000000000..651f46da37 --- /dev/null +++ b/tests/bench/locks/0.31.0.lock @@ -0,0 +1,2365 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "aead" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d122413f284cf2d62fb1b7db97e02edb8cda96d769b16e443a4f6195e35662b0" +dependencies = [ + "crypto-common", + "generic-array", +] + +[[package]] +name = "aes" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b169f7a6d4742236a0a00c541b845991d0ac43e546831af1249753ab4c3aa3a0" +dependencies = [ + "cfg-if", + "cipher", + "cpufeatures", +] + +[[package]] +name = "aes-gcm-siv" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae0784134ba9375416d469ec31e7c5f9fa94405049cf08c5ce5b4698be673e0d" +dependencies = [ + "aead", + "aes", + "cipher", + "ctr", + "polyval", + "subtle", + "zeroize", +] + +[[package]] +name = "ahash" +version = "0.8.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" +dependencies = [ + "cfg-if", + "once_cell", + "version_check", + "zerocopy", +] + +[[package]] +name = "aho-corasick" +version = "1.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" +dependencies = [ + "memchr", +] + +[[package]] +name = "anchor-attribute-access-control" +version = "0.31.0" +dependencies = [ + "anchor-syn", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "anchor-attribute-account" +version = "0.31.0" +dependencies = [ + "anchor-syn", + "bs58", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "anchor-attribute-constant" +version = "0.31.0" +dependencies = [ + "anchor-syn", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "anchor-attribute-error" +version = "0.31.0" +dependencies = [ + "anchor-syn", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "anchor-attribute-event" +version = "0.31.0" +dependencies = [ + "anchor-syn", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "anchor-attribute-program" +version = "0.31.0" +dependencies = [ + "anchor-lang-idl", + "anchor-syn", + "anyhow", + "bs58", + "heck", + "proc-macro2", + "quote", + "serde_json", + "syn 1.0.109", +] + +[[package]] +name = "anchor-derive-accounts" +version = "0.31.0" +dependencies = [ + "anchor-syn", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "anchor-derive-serde" +version = "0.31.0" +dependencies = [ + "anchor-syn", + "borsh-derive-internal", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "anchor-derive-space" +version = "0.31.0" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "anchor-lang" +version = "0.31.0" +dependencies = [ + "anchor-attribute-access-control", + "anchor-attribute-account", + "anchor-attribute-constant", + "anchor-attribute-error", + "anchor-attribute-event", + "anchor-attribute-program", + "anchor-derive-accounts", + "anchor-derive-serde", + "anchor-derive-space", + "anchor-lang-idl", + "base64 0.21.7", + "bincode", + "borsh 0.10.3", + "bytemuck", + "solana-program", + "thiserror", +] + +[[package]] +name = "anchor-lang-idl" +version = "0.1.2" +dependencies = [ + "anchor-lang-idl-spec", + "anyhow", + "heck", + "regex", + "serde", + "serde_json", + "sha2 0.10.8", +] + +[[package]] +name = "anchor-lang-idl-spec" +version = "0.1.0" +dependencies = [ + "anyhow", + "serde", +] + +[[package]] +name = "anchor-spl" +version = "0.31.0" +dependencies = [ + "anchor-lang", + "spl-associated-token-account", + "spl-pod", + "spl-token", + "spl-token-2022", + "spl-token-group-interface", + "spl-token-metadata-interface", +] + +[[package]] +name = "anchor-syn" +version = "0.31.0" +dependencies = [ + "anyhow", + "bs58", + "cargo_toml", + "heck", + "proc-macro2", + "quote", + "serde", + "serde_json", + "sha2 0.10.8", + "syn 1.0.109", + "thiserror", +] + +[[package]] +name = "anyhow" +version = "1.0.89" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "86fdf8605db99b54d3cd748a44c6d04df638eb5dafb219b135d0149bd0db01f6" + +[[package]] +name = "ark-bn254" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a22f4561524cd949590d78d7d4c5df8f592430d221f7f3c9497bbafd8972120f" +dependencies = [ + "ark-ec", + "ark-ff", + "ark-std", +] + +[[package]] +name = "ark-ec" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "defd9a439d56ac24968cca0571f598a61bc8c55f71d50a89cda591cb750670ba" +dependencies = [ + "ark-ff", + "ark-poly", + "ark-serialize", + "ark-std", + "derivative", + "hashbrown 0.13.2", + "itertools 0.10.5", + "num-traits", + "zeroize", +] + +[[package]] +name = "ark-ff" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec847af850f44ad29048935519032c33da8aa03340876d351dfab5660d2966ba" +dependencies = [ + "ark-ff-asm", + "ark-ff-macros", + "ark-serialize", + "ark-std", + "derivative", + "digest 0.10.7", + "itertools 0.10.5", + "num-bigint", + "num-traits", + "paste", + "rustc_version", + "zeroize", +] + +[[package]] +name = "ark-ff-asm" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3ed4aa4fe255d0bc6d79373f7e31d2ea147bcf486cba1be5ba7ea85abdb92348" +dependencies = [ + "quote", + "syn 1.0.109", +] + +[[package]] +name = "ark-ff-macros" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7abe79b0e4288889c4574159ab790824d0033b9fdcb2a112a3182fac2e514565" +dependencies = [ + "num-bigint", + "num-traits", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "ark-poly" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d320bfc44ee185d899ccbadfa8bc31aab923ce1558716e1997a1e74057fe86bf" +dependencies = [ + "ark-ff", + "ark-serialize", + "ark-std", + "derivative", + "hashbrown 0.13.2", +] + +[[package]] +name = "ark-serialize" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adb7b85a02b83d2f22f89bd5cac66c9c89474240cb6207cb1efc16d098e822a5" +dependencies = [ + "ark-serialize-derive", + "ark-std", + "digest 0.10.7", + "num-bigint", +] + +[[package]] +name = "ark-serialize-derive" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae3281bc6d0fd7e549af32b52511e1302185bd688fd3359fa36423346ff682ea" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "ark-std" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94893f1e0c6eeab764ade8dc4c0db24caf4fe7cbbaafc0eba0a9030f447b5185" +dependencies = [ + "num-traits", + "rand 0.8.5", +] + +[[package]] +name = "arrayref" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76a2e8124351fda1ef8aaaa3bbd7ebbcb486bbcd4225aca0aa0d84bb2db8fecb" + +[[package]] +name = "arrayvec" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" + +[[package]] +name = "autocfg" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0" + +[[package]] +name = "base64" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3441f0f7b02788e948e47f457ca01f1d7e6d92c693bc132c22b087d3141c03ff" + +[[package]] +name = "base64" +version = "0.21.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" + +[[package]] +name = "base64" +version = "0.22.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" + +[[package]] +name = "bench" +version = "0.1.0" +dependencies = [ + "anchor-lang", + "anchor-spl", +] + +[[package]] +name = "bincode" +version = "1.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad" +dependencies = [ + "serde", +] + +[[package]] +name = "bitflags" +version = "2.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" +dependencies = [ + "serde", +] + +[[package]] +name = "blake3" +version = "1.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "30cca6d3674597c30ddf2c587bf8d9d65c9a84d2326d941cc79c9842dfe0ef52" +dependencies = [ + "arrayref", + "arrayvec", + "cc", + "cfg-if", + "constant_time_eq", + "digest 0.10.7", +] + +[[package]] +name = "block-buffer" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" +dependencies = [ + "block-padding", + "generic-array", +] + +[[package]] +name = "block-buffer" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" +dependencies = [ + "generic-array", +] + +[[package]] +name = "block-padding" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8d696c370c750c948ada61c69a0ee2cbbb9c50b1019ddb86d9317157a99c2cae" + +[[package]] +name = "borsh" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4114279215a005bc675e386011e594e1d9b800918cea18fcadadcce864a2046b" +dependencies = [ + "borsh-derive 0.10.3", + "hashbrown 0.13.2", +] + +[[package]] +name = "borsh" +version = "1.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a6362ed55def622cddc70a4746a68554d7b687713770de539e59a739b249f8ed" +dependencies = [ + "borsh-derive 1.5.1", + "cfg_aliases", +] + +[[package]] +name = "borsh-derive" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0754613691538d51f329cce9af41d7b7ca150bc973056f1156611489475f54f7" +dependencies = [ + "borsh-derive-internal", + "borsh-schema-derive-internal", + "proc-macro-crate 0.1.5", + "proc-macro2", + "syn 1.0.109", +] + +[[package]] +name = "borsh-derive" +version = "1.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3ef8005764f53cd4dca619f5bf64cafd4664dada50ece25e4d81de54c80cc0b" +dependencies = [ + "once_cell", + "proc-macro-crate 3.2.0", + "proc-macro2", + "quote", + "syn 2.0.77", + "syn_derive", +] + +[[package]] +name = "borsh-derive-internal" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "afb438156919598d2c7bad7e1c0adf3d26ed3840dbc010db1a882a65583ca2fb" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "borsh-schema-derive-internal" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "634205cc43f74a1b9046ef87c4540ebda95696ec0f315024860cad7c5b0f5ccd" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "bs58" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf88ba1141d185c399bee5288d850d63b8369520c1eafc32a0430b5b6c287bf4" +dependencies = [ + "tinyvec", +] + +[[package]] +name = "bumpalo" +version = "3.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" + +[[package]] +name = "bv" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8834bb1d8ee5dc048ee3124f2c7c1afcc6bc9aed03f11e9dfd8c69470a5db340" +dependencies = [ + "feature-probe", + "serde", +] + +[[package]] +name = "bytemuck" +version = "1.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94bbb0ad554ad961ddc5da507a12a29b14e4ae5bda06b19f575a3e6079d2e2ae" +dependencies = [ + "bytemuck_derive", +] + +[[package]] +name = "bytemuck_derive" +version = "1.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0cc8b54b395f2fcfbb3d90c47b01c7f444d94d05bdeb775811dec868ac3bbc26" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.77", +] + +[[package]] +name = "byteorder" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" + +[[package]] +name = "cargo_toml" +version = "0.19.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a98356df42a2eb1bd8f1793ae4ee4de48e384dd974ce5eac8eee802edb7492be" +dependencies = [ + "serde", + "toml 0.8.19", +] + +[[package]] +name = "cc" +version = "1.1.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "07b1695e2c7e8fc85310cde85aeaab7e3097f593c91d209d3f9df76c928100f0" +dependencies = [ + "shlex", +] + +[[package]] +name = "cfg-if" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" + +[[package]] +name = "cfg_aliases" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" + +[[package]] +name = "chrono" +version = "0.4.38" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401" +dependencies = [ + "num-traits", +] + +[[package]] +name = "cipher" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad" +dependencies = [ + "crypto-common", + "inout", +] + +[[package]] +name = "console_error_panic_hook" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a06aeb73f470f66dcdbf7223caeebb85984942f22f1adb2a088cf9668146bbbc" +dependencies = [ + "cfg-if", + "wasm-bindgen", +] + +[[package]] +name = "console_log" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e89f72f65e8501878b8a004d5a1afb780987e2ce2b4532c562e367a72c57499f" +dependencies = [ + "log", + "web-sys", +] + +[[package]] +name = "constant_time_eq" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6" + +[[package]] +name = "cpufeatures" +version = "0.2.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "608697df725056feaccfa42cffdaeeec3fccc4ffc38358ecd19b243e716a78e0" +dependencies = [ + "libc", +] + +[[package]] +name = "crunchy" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" + +[[package]] +name = "crypto-common" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" +dependencies = [ + "generic-array", + "rand_core 0.6.4", + "typenum", +] + +[[package]] +name = "crypto-mac" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b584a330336237c1eecd3e94266efb216c56ed91225d634cb2991c5f3fd1aeab" +dependencies = [ + "generic-array", + "subtle", +] + +[[package]] +name = "ctr" +version = "0.9.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0369ee1ad671834580515889b80f2ea915f23b8be8d0daa4bbaf2ac5c7590835" +dependencies = [ + "cipher", +] + +[[package]] +name = "curve25519-dalek" +version = "3.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90f9d052967f590a76e62eb387bd0bbb1b000182c3cefe5364db6b7211651bc0" +dependencies = [ + "byteorder", + "digest 0.9.0", + "rand_core 0.5.1", + "serde", + "subtle", + "zeroize", +] + +[[package]] +name = "darling" +version = "0.20.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989" +dependencies = [ + "darling_core", + "darling_macro", +] + +[[package]] +name = "darling_core" +version = "0.20.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95133861a8032aaea082871032f5815eb9e98cef03fa916ab4500513994df9e5" +dependencies = [ + "fnv", + "ident_case", + "proc-macro2", + "quote", + "strsim", + "syn 2.0.77", +] + +[[package]] +name = "darling_macro" +version = "0.20.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" +dependencies = [ + "darling_core", + "quote", + "syn 2.0.77", +] + +[[package]] +name = "derivation-path" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e5c37193a1db1d8ed868c03ec7b152175f26160a5b740e5e484143877e0adf0" + +[[package]] +name = "derivative" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "digest" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" +dependencies = [ + "generic-array", +] + +[[package]] +name = "digest" +version = "0.10.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" +dependencies = [ + "block-buffer 0.10.4", + "crypto-common", + "subtle", +] + +[[package]] +name = "ed25519" +version = "1.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91cff35c70bba8a626e3185d8cd48cc11b5437e1a5bcd15b9b5fa3c64b6dfee7" +dependencies = [ + "signature", +] + +[[package]] +name = "ed25519-dalek" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c762bae6dcaf24c4c84667b8579785430908723d5c889f469d76a41d59cc7a9d" +dependencies = [ + "curve25519-dalek", + "ed25519", + "rand 0.7.3", + "serde", + "sha2 0.9.9", + "zeroize", +] + +[[package]] +name = "ed25519-dalek-bip32" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d2be62a4061b872c8c0873ee4fc6f101ce7b889d039f019c5fa2af471a59908" +dependencies = [ + "derivation-path", + "ed25519-dalek", + "hmac 0.12.1", + "sha2 0.10.8", +] + +[[package]] +name = "either" +version = "1.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0" + +[[package]] +name = "equivalent" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" + +[[package]] +name = "feature-probe" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "835a3dc7d1ec9e75e2b5fb4ba75396837112d2060b03f7d43bc1897c7f7211da" + +[[package]] +name = "fnv" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" + +[[package]] +name = "generic-array" +version = "0.14.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" +dependencies = [ + "serde", + "typenum", + "version_check", +] + +[[package]] +name = "getrandom" +version = "0.1.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce" +dependencies = [ + "cfg-if", + "js-sys", + "libc", + "wasi 0.9.0+wasi-snapshot-preview1", + "wasm-bindgen", +] + +[[package]] +name = "getrandom" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" +dependencies = [ + "cfg-if", + "js-sys", + "libc", + "wasi 0.11.0+wasi-snapshot-preview1", + "wasm-bindgen", +] + +[[package]] +name = "hashbrown" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e" +dependencies = [ + "ahash", +] + +[[package]] +name = "hashbrown" +version = "0.14.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" + +[[package]] +name = "heck" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c" +dependencies = [ + "unicode-segmentation", +] + +[[package]] +name = "hmac" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "126888268dcc288495a26bf004b38c5fdbb31682f992c84ceb046a1f0fe38840" +dependencies = [ + "crypto-mac", + "digest 0.9.0", +] + +[[package]] +name = "hmac" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" +dependencies = [ + "digest 0.10.7", +] + +[[package]] +name = "hmac-drbg" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "17ea0a1394df5b6574da6e0c1ade9e78868c9fb0a4e5ef4428e32da4676b85b1" +dependencies = [ + "digest 0.9.0", + "generic-array", + "hmac 0.8.1", +] + +[[package]] +name = "ident_case" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" + +[[package]] +name = "indexmap" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68b900aa2f7301e21c36462b170ee99994de34dff39a4a6a528e80e7376d07e5" +dependencies = [ + "equivalent", + "hashbrown 0.14.5", +] + +[[package]] +name = "inout" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5" +dependencies = [ + "generic-array", +] + +[[package]] +name = "itertools" +version = "0.10.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" +dependencies = [ + "either", +] + +[[package]] +name = "itertools" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569" +dependencies = [ + "either", +] + +[[package]] +name = "itoa" +version = "1.0.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" + +[[package]] +name = "js-sys" +version = "0.3.70" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1868808506b929d7b0cfa8f75951347aa71bb21144b7791bae35d9bccfcfe37a" +dependencies = [ + "wasm-bindgen", +] + +[[package]] +name = "keccak" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ecc2af9a1119c51f12a14607e783cb977bde58bc069ff0c3da1095e635d70654" +dependencies = [ + "cpufeatures", +] + +[[package]] +name = "lazy_static" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" + +[[package]] +name = "libc" +version = "0.2.158" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d8adc4bb1803a324070e64a98ae98f38934d91957a99cfb3a43dcbc01bc56439" + +[[package]] +name = "libsecp256k1" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c9d220bc1feda2ac231cb78c3d26f27676b8cf82c96971f7aeef3d0cf2797c73" +dependencies = [ + "arrayref", + "base64 0.12.3", + "digest 0.9.0", + "hmac-drbg", + "libsecp256k1-core", + "libsecp256k1-gen-ecmult", + "libsecp256k1-gen-genmult", + "rand 0.7.3", + "serde", + "sha2 0.9.9", + "typenum", +] + +[[package]] +name = "libsecp256k1-core" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d0f6ab710cec28cef759c5f18671a27dae2a5f952cdaaee1d8e2908cb2478a80" +dependencies = [ + "crunchy", + "digest 0.9.0", + "subtle", +] + +[[package]] +name = "libsecp256k1-gen-ecmult" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ccab96b584d38fac86a83f07e659f0deafd0253dc096dab5a36d53efe653c5c3" +dependencies = [ + "libsecp256k1-core", +] + +[[package]] +name = "libsecp256k1-gen-genmult" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67abfe149395e3aa1c48a2beb32b068e2334402df8181f818d3aee2b304c4f5d" +dependencies = [ + "libsecp256k1-core", +] + +[[package]] +name = "lock_api" +version = "0.4.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17" +dependencies = [ + "autocfg", + "scopeguard", +] + +[[package]] +name = "log" +version = "0.4.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24" + +[[package]] +name = "memchr" +version = "2.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" + +[[package]] +name = "memmap2" +version = "0.5.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "83faa42c0a078c393f6b29d5db232d8be22776a891f8f56e5284faee4a20b327" +dependencies = [ + "libc", +] + +[[package]] +name = "memoffset" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a" +dependencies = [ + "autocfg", +] + +[[package]] +name = "merlin" +version = "3.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "58c38e2799fc0978b65dfff8023ec7843e2330bb462f19198840b34b6582397d" +dependencies = [ + "byteorder", + "keccak", + "rand_core 0.6.4", + "zeroize", +] + +[[package]] +name = "num-bigint" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9" +dependencies = [ + "num-integer", + "num-traits", +] + +[[package]] +name = "num-derive" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.77", +] + +[[package]] +name = "num-integer" +version = "0.1.46" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f" +dependencies = [ + "num-traits", +] + +[[package]] +name = "num-traits" +version = "0.2.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" +dependencies = [ + "autocfg", +] + +[[package]] +name = "num_enum" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4e613fc340b2220f734a8595782c551f1250e969d87d3be1ae0579e8d4065179" +dependencies = [ + "num_enum_derive", +] + +[[package]] +name = "num_enum_derive" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af1844ef2428cc3e1cb900be36181049ef3d3193c63e43026cfe202983b27a56" +dependencies = [ + "proc-macro-crate 3.2.0", + "proc-macro2", + "quote", + "syn 2.0.77", +] + +[[package]] +name = "once_cell" +version = "1.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" + +[[package]] +name = "opaque-debug" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" + +[[package]] +name = "parking_lot" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27" +dependencies = [ + "lock_api", + "parking_lot_core", +] + +[[package]] +name = "parking_lot_core" +version = "0.9.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" +dependencies = [ + "cfg-if", + "libc", + "redox_syscall", + "smallvec", + "windows-targets", +] + +[[package]] +name = "paste" +version = "1.0.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" + +[[package]] +name = "pbkdf2" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "83a0692ec44e4cf1ef28ca317f14f8f07da2d95ec3fa01f86e4467b725e60917" +dependencies = [ + "digest 0.10.7", +] + +[[package]] +name = "percent-encoding" +version = "2.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" + +[[package]] +name = "polyval" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d1fe60d06143b2430aa532c94cfe9e29783047f06c0d7fd359a9a51b729fa25" +dependencies = [ + "cfg-if", + "cpufeatures", + "opaque-debug", + "universal-hash", +] + +[[package]] +name = "ppv-lite86" +version = "0.2.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" +dependencies = [ + "zerocopy", +] + +[[package]] +name = "proc-macro-crate" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d6ea3c4595b96363c13943497db34af4460fb474a95c43f4446ad341b8c9785" +dependencies = [ + "toml 0.5.11", +] + +[[package]] +name = "proc-macro-crate" +version = "3.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ecf48c7ca261d60b74ab1a7b20da18bede46776b2e55535cb958eb595c5fa7b" +dependencies = [ + "toml_edit", +] + +[[package]] +name = "proc-macro-error" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" +dependencies = [ + "proc-macro-error-attr", + "proc-macro2", + "quote", + "version_check", +] + +[[package]] +name = "proc-macro-error-attr" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" +dependencies = [ + "proc-macro2", + "quote", + "version_check", +] + +[[package]] +name = "proc-macro2" +version = "1.0.86" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "qstring" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d464fae65fff2680baf48019211ce37aaec0c78e9264c84a3e484717f965104e" +dependencies = [ + "percent-encoding", +] + +[[package]] +name = "quote" +version = "1.0.37" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "rand" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03" +dependencies = [ + "getrandom 0.1.16", + "libc", + "rand_chacha 0.2.2", + "rand_core 0.5.1", + "rand_hc", +] + +[[package]] +name = "rand" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" +dependencies = [ + "libc", + "rand_chacha 0.3.1", + "rand_core 0.6.4", +] + +[[package]] +name = "rand_chacha" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402" +dependencies = [ + "ppv-lite86", + "rand_core 0.5.1", +] + +[[package]] +name = "rand_chacha" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" +dependencies = [ + "ppv-lite86", + "rand_core 0.6.4", +] + +[[package]] +name = "rand_core" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19" +dependencies = [ + "getrandom 0.1.16", +] + +[[package]] +name = "rand_core" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" +dependencies = [ + "getrandom 0.2.15", +] + +[[package]] +name = "rand_hc" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c" +dependencies = [ + "rand_core 0.5.1", +] + +[[package]] +name = "redox_syscall" +version = "0.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0884ad60e090bf1345b93da0a5de8923c93884cd03f40dfcfddd3b4bee661853" +dependencies = [ + "bitflags", +] + +[[package]] +name = "regex" +version = "1.10.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4219d74c6b67a3654a9fbebc4b419e22126d13d2f3c4a07ee0cb61ff79a79619" +dependencies = [ + "aho-corasick", + "memchr", + "regex-automata", + "regex-syntax", +] + +[[package]] +name = "regex-automata" +version = "0.4.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax", +] + +[[package]] +name = "regex-syntax" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b" + +[[package]] +name = "rustc_version" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" +dependencies = [ + "semver", +] + +[[package]] +name = "rustversion" +version = "1.0.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "955d28af4278de8121b7ebeb796b6a45735dc01436d898801014aced2773a3d6" + +[[package]] +name = "ryu" +version = "1.0.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" + +[[package]] +name = "scopeguard" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" + +[[package]] +name = "semver" +version = "1.0.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b" + +[[package]] +name = "serde" +version = "1.0.210" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8e3592472072e6e22e0a54d5904d9febf8508f65fb8552499a1abc7d1078c3a" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde_bytes" +version = "0.11.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "387cc504cb06bb40a96c8e04e951fe01854cf6bc921053c954e4a606d9675c6a" +dependencies = [ + "serde", +] + +[[package]] +name = "serde_derive" +version = "1.0.210" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "243902eda00fad750862fc144cea25caca5e20d615af0a81bee94ca738f1df1f" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.77", +] + +[[package]] +name = "serde_json" +version = "1.0.128" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ff5456707a1de34e7e37f2a6fd3d3f808c318259cbd01ab6377795054b483d8" +dependencies = [ + "itoa", + "memchr", + "ryu", + "serde", +] + +[[package]] +name = "serde_spanned" +version = "0.6.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eb5b1b31579f3811bf615c144393417496f152e12ac8b7663bf664f4a815306d" +dependencies = [ + "serde", +] + +[[package]] +name = "serde_with" +version = "2.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "07ff71d2c147a7b57362cead5e22f772cd52f6ab31cfcd9edcd7f6aeb2a0afbe" +dependencies = [ + "serde", + "serde_with_macros", +] + +[[package]] +name = "serde_with_macros" +version = "2.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "881b6f881b17d13214e5d494c939ebab463d01264ce1811e9d4ac3a882e7695f" +dependencies = [ + "darling", + "proc-macro2", + "quote", + "syn 2.0.77", +] + +[[package]] +name = "sha2" +version = "0.9.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800" +dependencies = [ + "block-buffer 0.9.0", + "cfg-if", + "cpufeatures", + "digest 0.9.0", + "opaque-debug", +] + +[[package]] +name = "sha2" +version = "0.10.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest 0.10.7", +] + +[[package]] +name = "sha3" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f81199417d4e5de3f04b1e871023acea7389672c4135918f05aa9cbf2f2fa809" +dependencies = [ + "block-buffer 0.9.0", + "digest 0.9.0", + "keccak", + "opaque-debug", +] + +[[package]] +name = "sha3" +version = "0.10.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60" +dependencies = [ + "digest 0.10.7", + "keccak", +] + +[[package]] +name = "shlex" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" + +[[package]] +name = "signature" +version = "1.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "74233d3b3b2f6d4b006dc19dee745e73e2a6bfb6f93607cd3b02bd5b00797d7c" + +[[package]] +name = "siphasher" +version = "0.3.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d" + +[[package]] +name = "smallvec" +version = "1.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" + +[[package]] +name = "solana-curve25519" +version = "2.0.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "147c81e77b74f5d0a52579c1cf982fffb8c4491fb3baabf0e4fa19e2f6f39030" +dependencies = [ + "bytemuck", + "bytemuck_derive", + "curve25519-dalek", + "solana-program", + "thiserror", +] + +[[package]] +name = "solana-program" +version = "2.0.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8d899c2a1d37290dcfeeb9d1c0032915a29bd48f35759f19ff1e0f6b096eca0b" +dependencies = [ + "ark-bn254", + "ark-ec", + "ark-ff", + "ark-serialize", + "base64 0.22.1", + "bincode", + "bitflags", + "blake3", + "borsh 0.10.3", + "borsh 1.5.1", + "bs58", + "bv", + "bytemuck", + "bytemuck_derive", + "console_error_panic_hook", + "console_log", + "curve25519-dalek", + "getrandom 0.2.15", + "js-sys", + "lazy_static", + "libsecp256k1", + "log", + "memoffset", + "num-bigint", + "num-derive", + "num-traits", + "parking_lot", + "rand 0.8.5", + "rustc_version", + "rustversion", + "serde", + "serde_bytes", + "serde_derive", + "sha2 0.10.8", + "sha3 0.10.8", + "solana-sdk-macro", + "thiserror", + "wasm-bindgen", +] + +[[package]] +name = "solana-sdk" +version = "2.0.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b62d86ef4a245cec35b7b0c24a659e22cc2d1fbbad65c141e332cc5928ed04dc" +dependencies = [ + "bincode", + "bitflags", + "borsh 1.5.1", + "bs58", + "bytemuck", + "bytemuck_derive", + "byteorder", + "chrono", + "derivation-path", + "digest 0.10.7", + "ed25519-dalek", + "ed25519-dalek-bip32", + "generic-array", + "getrandom 0.1.16", + "hmac 0.12.1", + "itertools 0.12.1", + "js-sys", + "lazy_static", + "libsecp256k1", + "log", + "memmap2", + "num_enum", + "pbkdf2", + "qstring", + "rand 0.7.3", + "rand 0.8.5", + "rustc_version", + "rustversion", + "serde", + "serde_bytes", + "serde_derive", + "serde_json", + "serde_with", + "sha2 0.10.8", + "sha3 0.10.8", + "siphasher", + "solana-program", + "solana-sdk-macro", + "thiserror", + "uriparse", + "wasm-bindgen", +] + +[[package]] +name = "solana-sdk-macro" +version = "2.0.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23198ed620c4a61c97fe49bd907fc965659aea9a5ed0ea0cf90084eecc72a3c1" +dependencies = [ + "bs58", + "proc-macro2", + "quote", + "rustversion", + "syn 2.0.77", +] + +[[package]] +name = "solana-security-txt" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "468aa43b7edb1f9b7b7b686d5c3aeb6630dc1708e86e31343499dd5c4d775183" + +[[package]] +name = "solana-zk-sdk" +version = "2.0.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b497ac230fa5ccc7509cfd99be56cb819b22b111cf57fc7e23eaf9e6ffcbb4fd" +dependencies = [ + "aes-gcm-siv", + "base64 0.22.1", + "bincode", + "bytemuck", + "bytemuck_derive", + "curve25519-dalek", + "itertools 0.12.1", + "lazy_static", + "merlin", + "num-derive", + "num-traits", + "rand 0.7.3", + "serde", + "serde_derive", + "serde_json", + "sha3 0.9.1", + "solana-program", + "solana-sdk", + "subtle", + "thiserror", + "zeroize", +] + +[[package]] +name = "spl-associated-token-account" +version = "5.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "714b53f7312c2802c62f14bc8a07916c2c872761e3d6be97e99fd432be7799ca" +dependencies = [ + "borsh 1.5.1", + "num-derive", + "num-traits", + "solana-program", + "spl-associated-token-account-client", + "spl-token", + "spl-token-2022", + "thiserror", +] + +[[package]] +name = "spl-associated-token-account-client" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c5c1e2d53941ea7ebc4be3f86302a3c6c5178baa932bbc038468429e6900d36" +dependencies = [ + "solana-program", +] + +[[package]] +name = "spl-discriminator" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a38ea8b6dedb7065887f12d62ed62c1743aa70749e8558f963609793f6fb12bc" +dependencies = [ + "bytemuck", + "solana-program", + "spl-discriminator-derive", +] + +[[package]] +name = "spl-discriminator-derive" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9e8418ea6269dcfb01c712f0444d2c75542c04448b480e87de59d2865edc750" +dependencies = [ + "quote", + "spl-discriminator-syn", + "syn 2.0.77", +] + +[[package]] +name = "spl-discriminator-syn" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c1f05593b7ca9eac7caca309720f2eafb96355e037e6d373b909a80fe7b69b9" +dependencies = [ + "proc-macro2", + "quote", + "sha2 0.10.8", + "syn 2.0.77", + "thiserror", +] + +[[package]] +name = "spl-memo" +version = "5.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a0dba2f2bb6419523405d21c301a32c9f9568354d4742552e7972af801f4bdb3" +dependencies = [ + "solana-program", +] + +[[package]] +name = "spl-pod" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "00e38c99f09d58df06ca9a29fc0211786a4c34f4d099c1df27b1abaa206569a4" +dependencies = [ + "borsh 1.5.1", + "bytemuck", + "bytemuck_derive", + "solana-program", + "solana-zk-sdk", + "spl-program-error", +] + +[[package]] +name = "spl-program-error" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d7b28bed65356558133751cc32b48a7a5ddfc59ac4e941314630bbed1ac10532" +dependencies = [ + "num-derive", + "num-traits", + "solana-program", + "spl-program-error-derive", + "thiserror", +] + +[[package]] +name = "spl-program-error-derive" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6d375dd76c517836353e093c2dbb490938ff72821ab568b545fd30ab3256b3e" +dependencies = [ + "proc-macro2", + "quote", + "sha2 0.10.8", + "syn 2.0.77", +] + +[[package]] +name = "spl-tlv-account-resolution" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "29ffc5c76926c1cbc8d92ac1d9341328308d15bae04a67da5a226e36d5bc395a" +dependencies = [ + "bytemuck", + "solana-program", + "spl-discriminator", + "spl-pod", + "spl-program-error", + "spl-type-length-value", +] + +[[package]] +name = "spl-token" +version = "6.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70a0f06ac7f23dc0984931b1fe309468f14ea58e32660439c1cef19456f5d0e3" +dependencies = [ + "arrayref", + "bytemuck", + "num-derive", + "num-traits", + "num_enum", + "solana-program", + "thiserror", +] + +[[package]] +name = "spl-token-2022" +version = "5.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0b788a8c34a917b68b4ed2cdec255d03cc09ccba21545dac39c08a97fce640f" +dependencies = [ + "arrayref", + "bytemuck", + "num-derive", + "num-traits", + "num_enum", + "solana-program", + "solana-security-txt", + "solana-zk-sdk", + "spl-memo", + "spl-pod", + "spl-token", + "spl-token-confidential-transfer-ciphertext-arithmetic", + "spl-token-confidential-transfer-proof-extraction", + "spl-token-confidential-transfer-proof-generation", + "spl-token-group-interface", + "spl-token-metadata-interface", + "spl-transfer-hook-interface", + "spl-type-length-value", + "thiserror", +] + +[[package]] +name = "spl-token-confidential-transfer-ciphertext-arithmetic" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "48df72fb98b4069979aa4806d4a634ad6f08cb0358e732e6fbac231c5dc075bd" +dependencies = [ + "base64 0.22.1", + "bytemuck", + "solana-curve25519", + "solana-zk-sdk", +] + +[[package]] +name = "spl-token-confidential-transfer-proof-extraction" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae2ce92a0b9673c44207b21d99526b96d557d5a25752f36c38fae37c49129c3b" +dependencies = [ + "bytemuck", + "solana-curve25519", + "solana-zk-sdk", + "thiserror", +] + +[[package]] +name = "spl-token-confidential-transfer-proof-generation" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "216517cc8cd26dfe768521542f221f91049be102d1eefd8054cde881d1b5d267" +dependencies = [ + "curve25519-dalek", + "solana-zk-sdk", + "thiserror", +] + +[[package]] +name = "spl-token-group-interface" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c54728921a6f180525c4f3a4cc3b231db8da940681c8009259faa65d84c6196" +dependencies = [ + "bytemuck", + "solana-program", + "spl-discriminator", + "spl-pod", + "spl-program-error", +] + +[[package]] +name = "spl-token-metadata-interface" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "27c7a6d2a2a4f23c8f051ba2f7edb5689f1b534b4126bd9b4ae4177685e9a341" +dependencies = [ + "borsh 1.5.1", + "solana-program", + "spl-discriminator", + "spl-pod", + "spl-program-error", + "spl-type-length-value", +] + +[[package]] +name = "spl-transfer-hook-interface" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b82e5ad62ad342d8fbb907b2a7aede7a5a258ce16366c26a686acc1df431fc63" +dependencies = [ + "arrayref", + "bytemuck", + "solana-program", + "spl-discriminator", + "spl-pod", + "spl-program-error", + "spl-tlv-account-resolution", + "spl-type-length-value", +] + +[[package]] +name = "spl-type-length-value" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69c08deb8332a6c051f6e846b5e9c962695295dd97e0e151dccf3ef85dcf01b4" +dependencies = [ + "bytemuck", + "solana-program", + "spl-discriminator", + "spl-pod", + "spl-program-error", +] + +[[package]] +name = "strsim" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" + +[[package]] +name = "subtle" +version = "2.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" + +[[package]] +name = "syn" +version = "1.0.109" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "syn" +version = "2.0.77" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f35bcdf61fd8e7be6caf75f429fdca8beb3ed76584befb503b1569faee373ed" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "syn_derive" +version = "0.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1329189c02ff984e9736652b1631330da25eaa6bc639089ed4915d25446cbe7b" +dependencies = [ + "proc-macro-error", + "proc-macro2", + "quote", + "syn 2.0.77", +] + +[[package]] +name = "thiserror" +version = "1.0.63" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0342370b38b6a11b6cc11d6a805569958d54cfa061a29969c3b5ce2ea405724" +dependencies = [ + "thiserror-impl", +] + +[[package]] +name = "thiserror-impl" +version = "1.0.63" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4558b58466b9ad7ca0f102865eccc95938dca1a74a856f2b57b6629050da261" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.77", +] + +[[package]] +name = "tinyvec" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938" +dependencies = [ + "tinyvec_macros", +] + +[[package]] +name = "tinyvec_macros" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" + +[[package]] +name = "toml" +version = "0.5.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234" +dependencies = [ + "serde", +] + +[[package]] +name = "toml" +version = "0.8.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1ed1f98e3fdc28d6d910e6737ae6ab1a93bf1985935a1193e68f93eeb68d24e" +dependencies = [ + "serde", + "serde_spanned", + "toml_datetime", + "toml_edit", +] + +[[package]] +name = "toml_datetime" +version = "0.6.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41" +dependencies = [ + "serde", +] + +[[package]] +name = "toml_edit" +version = "0.22.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3b072cee73c449a636ffd6f32bd8de3a9f7119139aff882f44943ce2986dc5cf" +dependencies = [ + "indexmap", + "serde", + "serde_spanned", + "toml_datetime", + "winnow", +] + +[[package]] +name = "typenum" +version = "1.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" + +[[package]] +name = "unicode-ident" +version = "1.0.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe" + +[[package]] +name = "unicode-segmentation" +version = "1.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" + +[[package]] +name = "universal-hash" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc1de2c688dc15305988b563c3854064043356019f97a4b46276fe734c4f07ea" +dependencies = [ + "crypto-common", + "subtle", +] + +[[package]] +name = "uriparse" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0200d0fc04d809396c2ad43f3c95da3582a2556eba8d453c1087f4120ee352ff" +dependencies = [ + "fnv", + "lazy_static", +] + +[[package]] +name = "version_check" +version = "0.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" + +[[package]] +name = "wasi" +version = "0.9.0+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" + +[[package]] +name = "wasi" +version = "0.11.0+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" + +[[package]] +name = "wasm-bindgen" +version = "0.2.93" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a82edfc16a6c469f5f44dc7b571814045d60404b55a0ee849f9bcfa2e63dd9b5" +dependencies = [ + "cfg-if", + "once_cell", + "wasm-bindgen-macro", +] + +[[package]] +name = "wasm-bindgen-backend" +version = "0.2.93" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9de396da306523044d3302746f1208fa71d7532227f15e347e2d93e4145dd77b" +dependencies = [ + "bumpalo", + "log", + "once_cell", + "proc-macro2", + "quote", + "syn 2.0.77", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-macro" +version = "0.2.93" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "585c4c91a46b072c92e908d99cb1dcdf95c5218eeb6f3bf1efa991ee7a68cccf" +dependencies = [ + "quote", + "wasm-bindgen-macro-support", +] + +[[package]] +name = "wasm-bindgen-macro-support" +version = "0.2.93" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "afc340c74d9005395cf9dd098506f7f44e38f2b4a21c6aaacf9a105ea5e1e836" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.77", + "wasm-bindgen-backend", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-shared" +version = "0.2.93" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c62a0a307cb4a311d3a07867860911ca130c3494e8c2719593806c08bc5d0484" + +[[package]] +name = "web-sys" +version = "0.3.70" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26fdeaafd9bd129f65e7c031593c24d62186301e0c72c8978fa1678be7d532c0" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "windows-targets" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" +dependencies = [ + "windows_aarch64_gnullvm", + "windows_aarch64_msvc", + "windows_i686_gnu", + "windows_i686_gnullvm", + "windows_i686_msvc", + "windows_x86_64_gnu", + "windows_x86_64_gnullvm", + "windows_x86_64_msvc", +] + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" + +[[package]] +name = "windows_i686_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" + +[[package]] +name = "windows_i686_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" + +[[package]] +name = "windows_i686_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" + +[[package]] +name = "winnow" +version = "0.6.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68a9bda4691f099d435ad181000724da8e5899daa10713c2d432552b9ccd3a6f" +dependencies = [ + "memchr", +] + +[[package]] +name = "zerocopy" +version = "0.7.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" +dependencies = [ + "byteorder", + "zerocopy-derive", +] + +[[package]] +name = "zerocopy-derive" +version = "0.7.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.77", +] + +[[package]] +name = "zeroize" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4756f7db3f7b5574938c3eb1c117038b8e07f95ee6718c0efad4ac21508f1efd" +dependencies = [ + "zeroize_derive", +] + +[[package]] +name = "zeroize_derive" +version = "1.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.77", +] diff --git a/tests/bench/package.json b/tests/bench/package.json index 0817c9d3be..1d8033d53e 100644 --- a/tests/bench/package.json +++ b/tests/bench/package.json @@ -1,6 +1,6 @@ { "name": "bench", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/cashiers-check/package.json b/tests/cashiers-check/package.json index 4c178102ac..2d35bc77af 100644 --- a/tests/cashiers-check/package.json +++ b/tests/cashiers-check/package.json @@ -1,6 +1,6 @@ { "name": "cashiers-check", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/cfo/package.json b/tests/cfo/package.json index 46ffb91918..49c7f50ad7 100644 --- a/tests/cfo/package.json +++ b/tests/cfo/package.json @@ -1,6 +1,6 @@ { "name": "cfo", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/chat/package.json b/tests/chat/package.json index 3a552e0021..3a50da28d4 100644 --- a/tests/chat/package.json +++ b/tests/chat/package.json @@ -1,6 +1,6 @@ { "name": "chat", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/composite/package.json b/tests/composite/package.json index d937685d5d..a4346a3834 100644 --- a/tests/composite/package.json +++ b/tests/composite/package.json @@ -1,6 +1,6 @@ { "name": "composite", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/cpi-returns/package.json b/tests/cpi-returns/package.json index 69d795796a..e75122e0ef 100644 --- a/tests/cpi-returns/package.json +++ b/tests/cpi-returns/package.json @@ -1,6 +1,6 @@ { "name": "cpi-returns", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/custom-coder/package.json b/tests/custom-coder/package.json index e0c6039f27..058e62d839 100644 --- a/tests/custom-coder/package.json +++ b/tests/custom-coder/package.json @@ -1,6 +1,6 @@ { "name": "custom-coder", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/custom-discriminator/package.json b/tests/custom-discriminator/package.json index 1be7a54505..0def280149 100644 --- a/tests/custom-discriminator/package.json +++ b/tests/custom-discriminator/package.json @@ -1,6 +1,6 @@ { "name": "custom-discriminator", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/declare-id/package.json b/tests/declare-id/package.json index 1fc78018e3..5260e3b183 100644 --- a/tests/declare-id/package.json +++ b/tests/declare-id/package.json @@ -1,6 +1,6 @@ { "name": "declare-id", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/declare-program/package.json b/tests/declare-program/package.json index 9f4fd26763..aa894f2cb7 100644 --- a/tests/declare-program/package.json +++ b/tests/declare-program/package.json @@ -1,6 +1,6 @@ { "name": "declare-program", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/docs/package.json b/tests/docs/package.json index 7fa3731579..2fbe5411d8 100644 --- a/tests/docs/package.json +++ b/tests/docs/package.json @@ -1,6 +1,6 @@ { "name": "errors", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/errors/package.json b/tests/errors/package.json index 7fa3731579..2fbe5411d8 100644 --- a/tests/errors/package.json +++ b/tests/errors/package.json @@ -1,6 +1,6 @@ { "name": "errors", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/escrow/package.json b/tests/escrow/package.json index fafedc4363..5fa3800de0 100644 --- a/tests/escrow/package.json +++ b/tests/escrow/package.json @@ -1,6 +1,6 @@ { "name": "escrow", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/events/package.json b/tests/events/package.json index f39b99711d..dcfb6839e0 100644 --- a/tests/events/package.json +++ b/tests/events/package.json @@ -1,6 +1,6 @@ { "name": "events", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/floats/package.json b/tests/floats/package.json index be38a18bb9..e2928eeaeb 100644 --- a/tests/floats/package.json +++ b/tests/floats/package.json @@ -1,6 +1,6 @@ { "name": "floats", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/idl/package.json b/tests/idl/package.json index 283b0973fe..e8e488fc01 100644 --- a/tests/idl/package.json +++ b/tests/idl/package.json @@ -1,6 +1,6 @@ { "name": "idl", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/ido-pool/package.json b/tests/ido-pool/package.json index 9731ddb1b8..0c26cb51e8 100644 --- a/tests/ido-pool/package.json +++ b/tests/ido-pool/package.json @@ -1,6 +1,6 @@ { "name": "ido-pool", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/lazy-account/package.json b/tests/lazy-account/package.json index 9ac8822507..4dc6e77c5d 100644 --- a/tests/lazy-account/package.json +++ b/tests/lazy-account/package.json @@ -1,6 +1,6 @@ { "name": "lazy-account", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/lockup/package.json b/tests/lockup/package.json index ace9f2986f..c22df2174e 100644 --- a/tests/lockup/package.json +++ b/tests/lockup/package.json @@ -1,6 +1,6 @@ { "name": "lockup", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/misc/package.json b/tests/misc/package.json index 65396b55fa..9bca34282f 100644 --- a/tests/misc/package.json +++ b/tests/misc/package.json @@ -1,6 +1,6 @@ { "name": "misc", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/multiple-suites/package.json b/tests/multiple-suites/package.json index 1d560b537f..4c253c616c 100644 --- a/tests/multiple-suites/package.json +++ b/tests/multiple-suites/package.json @@ -1,6 +1,6 @@ { "name": "multiple-suites", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/multisig/package.json b/tests/multisig/package.json index 5fc36c1314..2ed8a5d8ea 100644 --- a/tests/multisig/package.json +++ b/tests/multisig/package.json @@ -1,6 +1,6 @@ { "name": "multisig", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/optional/package.json b/tests/optional/package.json index a5914f01cf..e4c9ac7517 100644 --- a/tests/optional/package.json +++ b/tests/optional/package.json @@ -1,6 +1,6 @@ { "name": "optional", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/pda-derivation/package.json b/tests/pda-derivation/package.json index 36b78953d2..dd05098ab8 100644 --- a/tests/pda-derivation/package.json +++ b/tests/pda-derivation/package.json @@ -1,6 +1,6 @@ { "name": "pda-derivation", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/pyth/package.json b/tests/pyth/package.json index 8d09d64ff0..21fd0aab0d 100644 --- a/tests/pyth/package.json +++ b/tests/pyth/package.json @@ -1,6 +1,6 @@ { "name": "pyth", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/realloc/package.json b/tests/realloc/package.json index 149233a774..87b1214d48 100644 --- a/tests/realloc/package.json +++ b/tests/realloc/package.json @@ -1,6 +1,6 @@ { "name": "realloc", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/relations-derivation/package.json b/tests/relations-derivation/package.json index 37870c0c2b..21fa2fd4e2 100644 --- a/tests/relations-derivation/package.json +++ b/tests/relations-derivation/package.json @@ -1,6 +1,6 @@ { "name": "relations-derivation", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/solang/package.json b/tests/solang/package.json index 9063210c76..136be5745d 100644 --- a/tests/solang/package.json +++ b/tests/solang/package.json @@ -1,6 +1,6 @@ { "name": "solang", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/spl/metadata/package.json b/tests/spl/metadata/package.json index fd2242b40a..c573b87e9f 100644 --- a/tests/spl/metadata/package.json +++ b/tests/spl/metadata/package.json @@ -1,6 +1,6 @@ { "name": "metadata", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/spl/token-extensions/package.json b/tests/spl/token-extensions/package.json index 487bc1297f..3e808e713a 100644 --- a/tests/spl/token-extensions/package.json +++ b/tests/spl/token-extensions/package.json @@ -1,6 +1,6 @@ { "name": "token-extensions", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/spl/token-proxy/package.json b/tests/spl/token-proxy/package.json index bda4e6f519..4c35473497 100644 --- a/tests/spl/token-proxy/package.json +++ b/tests/spl/token-proxy/package.json @@ -1,6 +1,6 @@ { "name": "token-proxy", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/spl/token-wrapper/package.json b/tests/spl/token-wrapper/package.json index ce70ff4b2f..9f73b921a4 100644 --- a/tests/spl/token-wrapper/package.json +++ b/tests/spl/token-wrapper/package.json @@ -1,6 +1,6 @@ { "name": "token-wrapper", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/spl/transfer-hook/package.json b/tests/spl/transfer-hook/package.json index c97b24f510..b81fa25646 100644 --- a/tests/spl/transfer-hook/package.json +++ b/tests/spl/transfer-hook/package.json @@ -1,6 +1,6 @@ { "name": "transfer-hook", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/swap/package.json b/tests/swap/package.json index 4327e5e233..9ee0934bbf 100644 --- a/tests/swap/package.json +++ b/tests/swap/package.json @@ -1,6 +1,6 @@ { "name": "swap", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/system-accounts/package.json b/tests/system-accounts/package.json index a3211bfe26..c2d0980924 100644 --- a/tests/system-accounts/package.json +++ b/tests/system-accounts/package.json @@ -1,6 +1,6 @@ { "name": "system-accounts", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/sysvars/package.json b/tests/sysvars/package.json index 54ffc6e258..f49a9f557e 100644 --- a/tests/sysvars/package.json +++ b/tests/sysvars/package.json @@ -1,6 +1,6 @@ { "name": "sysvars", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/tictactoe/package.json b/tests/tictactoe/package.json index a471abb8f3..9367954956 100644 --- a/tests/tictactoe/package.json +++ b/tests/tictactoe/package.json @@ -1,6 +1,6 @@ { "name": "tictactoe", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/typescript/package.json b/tests/typescript/package.json index c338ff7f3e..d3477df9fb 100644 --- a/tests/typescript/package.json +++ b/tests/typescript/package.json @@ -1,6 +1,6 @@ { "name": "typescript-example", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/validator-clone/package.json b/tests/validator-clone/package.json index 338257929c..077bbd0be2 100644 --- a/tests/validator-clone/package.json +++ b/tests/validator-clone/package.json @@ -1,6 +1,6 @@ { "name": "validator-clone", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/tests/zero-copy/package.json b/tests/zero-copy/package.json index 386538a86b..3cc1ea7bbe 100644 --- a/tests/zero-copy/package.json +++ b/tests/zero-copy/package.json @@ -1,6 +1,6 @@ { "name": "zero-copy", - "version": "0.30.1", + "version": "0.31.0", "license": "(MIT OR Apache-2.0)", "homepage": "https://github.com/coral-xyz/anchor#readme", "bugs": { diff --git a/ts/packages/anchor-errors/package.json b/ts/packages/anchor-errors/package.json index 65bd2080ef..b53899f431 100644 --- a/ts/packages/anchor-errors/package.json +++ b/ts/packages/anchor-errors/package.json @@ -1,6 +1,6 @@ { "name": "@coral-xyz/anchor-errors", - "version": "0.30.1", + "version": "0.31.0", "description": "Anchor error codes", "main": "dist/index.js", "types": "dist/index.d.ts", diff --git a/ts/packages/anchor/package.json b/ts/packages/anchor/package.json index 5e78c50279..4d7bcc5632 100644 --- a/ts/packages/anchor/package.json +++ b/ts/packages/anchor/package.json @@ -1,6 +1,6 @@ { "name": "@coral-xyz/anchor", - "version": "0.30.1", + "version": "0.31.0", "description": "Anchor client", "module": "./dist/esm/index.js", "main": "./dist/cjs/index.js", @@ -33,8 +33,8 @@ "test": "jest tests --detectOpenHandles" }, "dependencies": { - "@coral-xyz/anchor-errors": "^0.30.1", - "@coral-xyz/borsh": "^0.30.1", + "@coral-xyz/anchor-errors": "^0.31.0", + "@coral-xyz/borsh": "^0.31.0", "@noble/hashes": "^1.3.1", "@solana/web3.js": "^1.69.0", "bn.js": "^5.1.2", diff --git a/ts/packages/borsh/package.json b/ts/packages/borsh/package.json index 9b7ab3d96f..23e886f730 100644 --- a/ts/packages/borsh/package.json +++ b/ts/packages/borsh/package.json @@ -1,6 +1,6 @@ { "name": "@coral-xyz/borsh", - "version": "0.30.1", + "version": "0.31.0", "description": "Anchor Borsh", "main": "dist/index.js", "types": "dist/index.d.ts", diff --git a/ts/packages/spl-associated-token-account/package.json b/ts/packages/spl-associated-token-account/package.json index 7ad43ae5fd..48a657ca8b 100644 --- a/ts/packages/spl-associated-token-account/package.json +++ b/ts/packages/spl-associated-token-account/package.json @@ -27,7 +27,7 @@ "watch": "tsc -p tsconfig.cjs.json --watch" }, "dependencies": { - "@coral-xyz/anchor": "=0.30.1", + "@coral-xyz/anchor": "=0.31.0", "@native-to-anchor/buffer-layout": "=0.1.0" }, "devDependencies": { diff --git a/ts/packages/spl-binary-option/package.json b/ts/packages/spl-binary-option/package.json index ec5ab97da0..b8af30dc65 100644 --- a/ts/packages/spl-binary-option/package.json +++ b/ts/packages/spl-binary-option/package.json @@ -27,7 +27,7 @@ "watch": "tsc -p tsconfig.cjs.json --watch" }, "dependencies": { - "@coral-xyz/anchor": "=0.30.1", + "@coral-xyz/anchor": "=0.31.0", "@native-to-anchor/buffer-layout": "=0.1.0" }, "devDependencies": { diff --git a/ts/packages/spl-binary-oracle-pair/package.json b/ts/packages/spl-binary-oracle-pair/package.json index d84135810c..9e25140d33 100644 --- a/ts/packages/spl-binary-oracle-pair/package.json +++ b/ts/packages/spl-binary-oracle-pair/package.json @@ -27,7 +27,7 @@ "watch": "tsc -p tsconfig.cjs.json --watch" }, "dependencies": { - "@coral-xyz/anchor": "=0.30.1", + "@coral-xyz/anchor": "=0.31.0", "@native-to-anchor/buffer-layout": "=0.1.0" }, "devDependencies": { diff --git a/ts/packages/spl-feature-proposal/package.json b/ts/packages/spl-feature-proposal/package.json index b1795aebac..f96abf2053 100644 --- a/ts/packages/spl-feature-proposal/package.json +++ b/ts/packages/spl-feature-proposal/package.json @@ -27,7 +27,7 @@ "watch": "tsc -p tsconfig.cjs.json --watch" }, "dependencies": { - "@coral-xyz/anchor": "=0.30.1", + "@coral-xyz/anchor": "=0.31.0", "@native-to-anchor/buffer-layout": "=0.1.0" }, "devDependencies": { diff --git a/ts/packages/spl-governance/package.json b/ts/packages/spl-governance/package.json index 3d1282d85c..7658549d94 100644 --- a/ts/packages/spl-governance/package.json +++ b/ts/packages/spl-governance/package.json @@ -27,7 +27,7 @@ "watch": "tsc -p tsconfig.cjs.json --watch" }, "dependencies": { - "@coral-xyz/anchor": "=0.30.1", + "@coral-xyz/anchor": "=0.31.0", "@native-to-anchor/buffer-layout": "=0.1.0" }, "devDependencies": { diff --git a/ts/packages/spl-memo/package.json b/ts/packages/spl-memo/package.json index 88efed8148..849e0dcfdd 100644 --- a/ts/packages/spl-memo/package.json +++ b/ts/packages/spl-memo/package.json @@ -27,7 +27,7 @@ "watch": "tsc -p tsconfig.cjs.json --watch" }, "dependencies": { - "@coral-xyz/anchor": "=0.30.1" + "@coral-xyz/anchor": "=0.31.0" }, "devDependencies": { "@rollup/plugin-commonjs": "=21.0.2", diff --git a/ts/packages/spl-name-service/package.json b/ts/packages/spl-name-service/package.json index 2cae8b0eda..44a12ca389 100644 --- a/ts/packages/spl-name-service/package.json +++ b/ts/packages/spl-name-service/package.json @@ -27,7 +27,7 @@ "watch": "tsc -p tsconfig.cjs.json --watch" }, "dependencies": { - "@coral-xyz/anchor": "=0.30.1", + "@coral-xyz/anchor": "=0.31.0", "@native-to-anchor/buffer-layout": "=0.1.0" }, "devDependencies": { diff --git a/ts/packages/spl-record/package.json b/ts/packages/spl-record/package.json index e4df4a98a2..719cef964b 100644 --- a/ts/packages/spl-record/package.json +++ b/ts/packages/spl-record/package.json @@ -27,7 +27,7 @@ "watch": "tsc -p tsconfig.cjs.json --watch" }, "dependencies": { - "@coral-xyz/anchor": "=0.30.1", + "@coral-xyz/anchor": "=0.31.0", "@native-to-anchor/buffer-layout": "=0.1.0" }, "devDependencies": { diff --git a/ts/packages/spl-stake-pool/package.json b/ts/packages/spl-stake-pool/package.json index d8e9d07111..10fec8228d 100644 --- a/ts/packages/spl-stake-pool/package.json +++ b/ts/packages/spl-stake-pool/package.json @@ -27,7 +27,7 @@ "watch": "tsc -p tsconfig.cjs.json --watch" }, "dependencies": { - "@coral-xyz/anchor": "=0.30.1", + "@coral-xyz/anchor": "=0.31.0", "@native-to-anchor/buffer-layout": "=0.1.0" }, "devDependencies": { diff --git a/ts/packages/spl-stateless-asks/package.json b/ts/packages/spl-stateless-asks/package.json index 31d01dc43f..fa407b027a 100644 --- a/ts/packages/spl-stateless-asks/package.json +++ b/ts/packages/spl-stateless-asks/package.json @@ -27,7 +27,7 @@ "watch": "tsc -p tsconfig.cjs.json --watch" }, "dependencies": { - "@coral-xyz/anchor": "=0.30.1", + "@coral-xyz/anchor": "=0.31.0", "@native-to-anchor/buffer-layout": "=0.1.0" }, "devDependencies": { diff --git a/ts/packages/spl-token-lending/package.json b/ts/packages/spl-token-lending/package.json index d38348e80c..f5e5568f58 100644 --- a/ts/packages/spl-token-lending/package.json +++ b/ts/packages/spl-token-lending/package.json @@ -27,7 +27,7 @@ "watch": "tsc -p tsconfig.cjs.json --watch" }, "dependencies": { - "@coral-xyz/anchor": "=0.30.1", + "@coral-xyz/anchor": "=0.31.0", "@native-to-anchor/buffer-layout": "=0.1.0" }, "devDependencies": { diff --git a/ts/packages/spl-token-swap/package.json b/ts/packages/spl-token-swap/package.json index 1a8cc2a845..f5530a6213 100644 --- a/ts/packages/spl-token-swap/package.json +++ b/ts/packages/spl-token-swap/package.json @@ -27,7 +27,7 @@ "watch": "tsc -p tsconfig.cjs.json --watch" }, "dependencies": { - "@coral-xyz/anchor": "=0.30.1", + "@coral-xyz/anchor": "=0.31.0", "@native-to-anchor/buffer-layout": "=0.1.0" }, "devDependencies": { diff --git a/ts/packages/spl-token/package.json b/ts/packages/spl-token/package.json index fffbfd1877..b4c2eaf81e 100644 --- a/ts/packages/spl-token/package.json +++ b/ts/packages/spl-token/package.json @@ -1,7 +1,7 @@ { "name": "@coral-xyz/spl-token", "description": "Anchor client for Solana Program Library Token", - "version": "0.30.1", + "version": "0.31.0", "author": "acheron ", "license": "Apache-2.0", "repository": { @@ -27,7 +27,7 @@ "watch": "tsc -p tsconfig.cjs.json --watch" }, "dependencies": { - "@coral-xyz/anchor": "=0.30.1", + "@coral-xyz/anchor": "=0.31.0", "@native-to-anchor/buffer-layout": "=0.1.0" }, "devDependencies": {