Skip to content

Commit

Permalink
spl: Bump to newest SPL crates for v2.1 release (#3431)
Browse files Browse the repository at this point in the history
* spl: Bump to newest SPL crates for v2.1 release

#### Problem

A lot of builds are currently broken due to the incompatibility between
v2.0 and v2.1. All of the SPL crates have been bumped to use the Solana
v2.1 crates, but it isn't being used in the monorepo.

#### Summary of changes

Bump the SPL crates to their newest versions, and correctly parse the
new token-2022 instructions and account types.

The trickiest changes are the confidential transfer / mint / burn
instruction parsing, otherwise the changes are straightforward.

* Address feedback

* Improve parsing logic per discussion

* Parse initialize instructions correctly

* Add comments for parsing

* Improve account labels

* Update lockfile from rebase
  • Loading branch information
joncinque authored Nov 14, 2024
1 parent 8bf688f commit 43cf84f
Show file tree
Hide file tree
Showing 13 changed files with 990 additions and 173 deletions.
200 changes: 158 additions & 42 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

30 changes: 21 additions & 9 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -564,14 +564,14 @@ solana-zk-sdk = { path = "zk-sdk", version = "=2.2.0" }
solana-zk-token-proof-program = { path = "programs/zk-token-proof", version = "=2.2.0" }
solana-zk-token-sdk = { path = "zk-token-sdk", version = "=2.2.0" }
solana_rbpf = "=0.8.5"
spl-associated-token-account = "=4.0.0"
spl-instruction-padding = "0.2"
spl-memo = "=5.0.0"
spl-pod = "=0.3.0"
spl-token = "=6.0.0"
spl-token-2022 = "=4.0.0"
spl-token-group-interface = "=0.3.0"
spl-token-metadata-interface = "=0.4.0"
spl-associated-token-account = "=6.0.0"
spl-instruction-padding = "0.3"
spl-memo = "=6.0.0"
spl-pod = "=0.5.0"
spl-token = "=7.0.0"
spl-token-2022 = "=6.0.0"
spl-token-group-interface = "=0.5.0"
spl-token-metadata-interface = "=0.6.0"
static_assertions = "1.1.0"
stream-cancel = "0.8.2"
strum = "0.24"
Expand Down Expand Up @@ -647,9 +647,21 @@ crossbeam-epoch = { git = "https://github.com/anza-xyz/crossbeam", rev = "fd279d
# There is a similar override in `programs/sbf/Cargo.toml`. Please keep both
# comments and the overrides in sync.
solana-curve25519 = { path = "curves/curve25519" }
solana-account-info = { path = "sdk/account-info" }
solana-borsh = { path = "sdk/borsh" }
solana-cpi = { path = "sdk/cpi" }
solana-decode-error = { path = "sdk/decode-error" }
solana-hash = { path = "sdk/hash" }
solana-instruction = { path = "sdk/instruction" }
solana-msg = { path = "sdk/msg" }
solana-program = { path = "sdk/program" }
solana-program-entrypoint = { path = "sdk/program-entrypoint" }
solana-program-error = { path = "sdk/program-error" }
solana-program-option = { path = "sdk/program-option" }
solana-program-pack = { path = "sdk/program-pack" }
solana-pubkey = { path = "sdk/pubkey" }
solana-sha256-hasher = { path = "sdk/sha256-hasher" }
solana-zk-sdk = { path = "zk-sdk" }
solana-zk-token-sdk = { path = "zk-token-sdk" }

# curve25519-dalek uses the simd backend by default in v4 if possible,
# which has very slow performance on some platforms with opt-level 0,
Expand Down
Loading

0 comments on commit 43cf84f

Please sign in to comment.