diff --git a/.github/workflows/solana-native.yml b/.github/workflows/solana-native.yml index c3462dd52..8982d11d1 100644 --- a/.github/workflows/solana-native.yml +++ b/.github/workflows/solana-native.yml @@ -179,26 +179,27 @@ jobs: # Install pnpm npm install --global pnpm - - name: Setup Solana stable + - name: Setup Solana Beta uses: heyAyushh/setup-solana@v5.5 with: - solana-cli-version: stable - - name: Build and Test with Stable + solana-cli-version: beta + - name: Build and Test with Beta run: | source build_and_test.sh solana -V rustc -V - process_projects "stable" - - name: Setup Solana 1.18.17 + process_projects "beta" + - name: Setup Solana Stable uses: heyAyushh/setup-solana@v5.5 with: - solana-cli-version: 1.18.17 - - name: Build and Test with 1.18.17 + solana-cli-version: stable + - name: Build and Test with Stable + continue-on-error: true run: | source build_and_test.sh solana -V rustc -V - process_projects "1.18.17" + process_projects "stable" - name: Set failed projects output id: set-failed diff --git a/.github/workflows/steel.yml b/.github/workflows/steel.yml index 86da8c663..94d486cff 100644 --- a/.github/workflows/steel.yml +++ b/.github/workflows/steel.yml @@ -252,11 +252,11 @@ jobs: # Make the script executable chmod +x build_and_test.sh - - name: Setup Solana stable + - name: Setup Solana Beta uses: heyAyushh/setup-solana@v5.5 with: - solana-cli-version: stable - - name: Build and Test with Stable + solana-cli-version: beta + - name: Build and Test with Beta env: SCCACHE_GHA_ENABLED: "true" RUSTC_WRAPPER: "sccache" @@ -265,13 +265,13 @@ jobs: solana -V rustc -V solana-keygen new --no-bip39-passphrase - process_projects "stable" + process_projects "beta" sccache --show-stats - - name: Setup Solana 1.18.17 + - name: Setup Solana Stable uses: heyAyushh/setup-solana@v5.5 with: - solana-cli-version: 1.18.17 - - name: Build and Test with 1.18.17 + solana-cli-version: stable + - name: Build and Test with Stable env: SCCACHE_GHA_ENABLED: "true" RUSTC_WRAPPER: "sccache" @@ -280,7 +280,7 @@ jobs: solana -V rustc -V solana-keygen new --no-bip39-passphrase --force - process_projects "1.18.17" + process_projects "stable" sccache --show-stats - name: Set failed projects output diff --git a/README.md b/README.md index b4b59a85a..27125cda7 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,8 @@ ## Onchain program examples for :anchor: Anchor :crab: Native Rust, [TS] TypeScript and :snake: Python +[![Native](https://github.com/solana-developers/program-examples/actions/workflows/solana-native.yml/badge.svg?event=schedule)](https://github.com/solana-developers/program-examples/actions/workflows/solana-native.yml) [![Anchor](https://github.com/solana-developers/program-examples/actions/workflows/anchor.yml/badge.svg?event=schedule)](https://github.com/solana-developers/program-examples/actions/workflows/anchor.yml) [![Steel](https://github.com/solana-developers/program-examples/actions/workflows/steel.yml/badge.svg?event=schedule)](https://github.com/solana-developers/program-examples/actions/workflows/steel.yml) [![Poseidon](https://github.com/solana-developers/program-examples/actions/workflows/poseidon.yml/badge.svg?event=schedule)](https://github.com/solana-developers/program-examples/actions/workflows/poseidon.yml) + This repo contains Solana onchain programs (referred to as 'Smart Contracts' in other blockchains). > [!NOTE] diff --git a/basics/account-data/native/program/Cargo.toml b/basics/account-data/native/program/Cargo.toml index cfc0d193c..25023e8d4 100644 --- a/basics/account-data/native/program/Cargo.toml +++ b/basics/account-data/native/program/Cargo.toml @@ -4,7 +4,7 @@ version = "0.1.0" edition = "2021" [dependencies] -solana-program = "=1.18.17" +solana-program = "2.1" borsh = "0.9.3" borsh-derive = "0.9.1" diff --git a/basics/checking-accounts/native/program/Cargo.toml b/basics/checking-accounts/native/program/Cargo.toml index 8c3ba342f..bdd40da65 100644 --- a/basics/checking-accounts/native/program/Cargo.toml +++ b/basics/checking-accounts/native/program/Cargo.toml @@ -4,7 +4,7 @@ version = "0.1.0" edition = "2021" [dependencies] -solana-program = "=1.18.17" +solana-program = "2.1" [lib] crate-type = ["cdylib", "lib"] diff --git a/basics/close-account/native/program/Cargo.toml b/basics/close-account/native/program/Cargo.toml index 40fbc7c21..bf651f76e 100644 --- a/basics/close-account/native/program/Cargo.toml +++ b/basics/close-account/native/program/Cargo.toml @@ -6,7 +6,7 @@ edition = "2021" [dependencies] borsh = "0.9.3" borsh-derive = "0.9.1" -solana-program = "=1.18.17" +solana-program = "2.1" [lib] crate-type = ["cdylib", "lib"] diff --git a/basics/counter/mpl-stack/Cargo.toml b/basics/counter/mpl-stack/Cargo.toml index b3508072a..becdb0f9d 100644 --- a/basics/counter/mpl-stack/Cargo.toml +++ b/basics/counter/mpl-stack/Cargo.toml @@ -14,4 +14,4 @@ default = [] [dependencies] borsh = "0.9" shank = "0.0.8" -solana-program = "=1.18.17" +solana-program = "2.1" diff --git a/basics/counter/native/program/Cargo.toml b/basics/counter/native/program/Cargo.toml index faa2ce501..3f1f51130 100644 --- a/basics/counter/native/program/Cargo.toml +++ b/basics/counter/native/program/Cargo.toml @@ -13,4 +13,4 @@ default = [] [dependencies] borsh = "0.9.3" -solana-program = "=1.18.17" +solana-program = "2.1" diff --git a/basics/create-account/native/program/Cargo.toml b/basics/create-account/native/program/Cargo.toml index 4fdd7baaa..db6ea4956 100644 --- a/basics/create-account/native/program/Cargo.toml +++ b/basics/create-account/native/program/Cargo.toml @@ -4,7 +4,7 @@ version = "0.1.0" edition = "2021" [dependencies] -solana-program = "=1.18.17" +solana-program = "2.1" [lib] crate-type = ["cdylib", "lib"] diff --git a/basics/cross-program-invocation/native/programs/hand/Cargo.toml b/basics/cross-program-invocation/native/programs/hand/Cargo.toml index e3c6e17ac..9e66eac8e 100644 --- a/basics/cross-program-invocation/native/programs/hand/Cargo.toml +++ b/basics/cross-program-invocation/native/programs/hand/Cargo.toml @@ -10,7 +10,7 @@ cpi = ["no-entrypoint"] [dependencies] borsh = "0.10" borsh-derive = "0.10" -solana-program = "=1.18.17" +solana-program = "2.1" cross-program-invocatio-native-lever = { path = "../lever", features = ["cpi"] } [lib] diff --git a/basics/cross-program-invocation/native/programs/lever/Cargo.toml b/basics/cross-program-invocation/native/programs/lever/Cargo.toml index 2dbacf4e0..dcf63a467 100644 --- a/basics/cross-program-invocation/native/programs/lever/Cargo.toml +++ b/basics/cross-program-invocation/native/programs/lever/Cargo.toml @@ -10,7 +10,7 @@ cpi = ["no-entrypoint"] [dependencies] borsh = "0.10" borsh-derive = "0.10" -solana-program = "=1.18.17" +solana-program = "2.1" [lib] crate-type = ["cdylib", "lib"] diff --git a/basics/hello-solana/native/program/Cargo.toml b/basics/hello-solana/native/program/Cargo.toml index ba62538ed..d83fa9588 100644 --- a/basics/hello-solana/native/program/Cargo.toml +++ b/basics/hello-solana/native/program/Cargo.toml @@ -4,7 +4,7 @@ version = "0.1.0" edition = "2021" [dependencies] -solana-program = "=1.18.17" +solana-program = "2.1" [lib] crate-type = ["cdylib", "lib"] diff --git a/basics/hello-solana/steel/Cargo.toml b/basics/hello-solana/steel/Cargo.toml index 64649f8cb..0698b60ce 100644 --- a/basics/hello-solana/steel/Cargo.toml +++ b/basics/hello-solana/steel/Cargo.toml @@ -13,9 +13,10 @@ readme = "./README.md" keywords = ["solana"] [workspace.dependencies] +hello-solana-api = { path = "./api", version = "0.1.0" } bytemuck = "1.14" num_enum = "0.7" -solana-program = "=2.0.13" -steel = "=2.1.1" +solana-program = "2.1" +steel = "2.0" thiserror = "1.0" solana-sdk = "1.18" diff --git a/basics/pda-rent-payer/native/program/Cargo.toml b/basics/pda-rent-payer/native/program/Cargo.toml index cfcae94de..c6950d080 100644 --- a/basics/pda-rent-payer/native/program/Cargo.toml +++ b/basics/pda-rent-payer/native/program/Cargo.toml @@ -4,7 +4,7 @@ version = "0.1.0" edition = "2021" [dependencies] -solana-program = "=1.18.17" +solana-program = "2.1" borsh = "0.9.3" borsh-derive = "0.9.1" diff --git a/basics/processing-instructions/native/program/Cargo.toml b/basics/processing-instructions/native/program/Cargo.toml index 8c692c2bd..fe2ad52a5 100644 --- a/basics/processing-instructions/native/program/Cargo.toml +++ b/basics/processing-instructions/native/program/Cargo.toml @@ -6,7 +6,7 @@ edition = "2021" [dependencies] borsh = "0.9.3" borsh-derive = "0.9.1" -solana-program = "=1.18.17" +solana-program = "2.1" [lib] crate-type = ["cdylib", "lib"] diff --git a/basics/program-derived-addresses/native/program/Cargo.toml b/basics/program-derived-addresses/native/program/Cargo.toml index e77d37e47..bc28f7408 100644 --- a/basics/program-derived-addresses/native/program/Cargo.toml +++ b/basics/program-derived-addresses/native/program/Cargo.toml @@ -4,7 +4,7 @@ version = "0.1.0" edition = "2021" [dependencies] -solana-program = "=1.18.17" +solana-program = "2.1" borsh = "0.9.3" borsh-derive = "0.9.1" diff --git a/basics/realloc/native/program/Cargo.toml b/basics/realloc/native/program/Cargo.toml index 02f008153..5966142f6 100644 --- a/basics/realloc/native/program/Cargo.toml +++ b/basics/realloc/native/program/Cargo.toml @@ -6,7 +6,7 @@ edition = "2021" [dependencies] borsh = "0.9.3" borsh-derive = "0.9.1" -solana-program = "=1.18.17" +solana-program = "2.1" [lib] crate-type = ["cdylib", "lib"] diff --git a/basics/rent/native/program/Cargo.toml b/basics/rent/native/program/Cargo.toml index b34b898df..3597297a1 100644 --- a/basics/rent/native/program/Cargo.toml +++ b/basics/rent/native/program/Cargo.toml @@ -6,7 +6,7 @@ edition = "2021" [dependencies] borsh = "0.9.3" borsh-derive = "0.9.1" -solana-program = "=1.18.17" +solana-program = "2.1" [lib] crate-type = ["cdylib", "lib"] diff --git a/basics/repository-layout/native/program/Cargo.toml b/basics/repository-layout/native/program/Cargo.toml index 3274e5568..4ea2ab0ec 100644 --- a/basics/repository-layout/native/program/Cargo.toml +++ b/basics/repository-layout/native/program/Cargo.toml @@ -6,7 +6,7 @@ edition = "2021" [dependencies] borsh = "0.9.3" borsh-derive = "0.9.1" -solana-program = "=1.18.17" +solana-program = "2.1" [lib] crate-type = ["cdylib", "lib"] diff --git a/basics/transfer-sol/native/program/Cargo.toml b/basics/transfer-sol/native/program/Cargo.toml index dff1138bb..01688927e 100644 --- a/basics/transfer-sol/native/program/Cargo.toml +++ b/basics/transfer-sol/native/program/Cargo.toml @@ -6,7 +6,7 @@ edition = "2021" [dependencies] borsh = "0.9.3" borsh-derive = "0.9.1" -solana-program = "=1.18.17" +solana-program = "2.1" [lib] crate-type = ["cdylib", "lib"] diff --git a/tokens/create-token/native/program/Cargo.toml b/tokens/create-token/native/program/Cargo.toml index 91e2212a8..d9ab7a4a6 100644 --- a/tokens/create-token/native/program/Cargo.toml +++ b/tokens/create-token/native/program/Cargo.toml @@ -6,7 +6,7 @@ edition = "2021" [dependencies] borsh = "0.9.3" borsh-derive = "0.9.1" -solana-program = "1.16.10" +solana-program = "2.1" spl-token = { version = "4.0.0", features = [ "no-entrypoint" ] } spl-associated-token-account = { version = "2.0.0", features = [ "no-entrypoint" ] } mpl-token-metadata = { version = "1.11", features = [ "no-entrypoint" ] } diff --git a/tokens/nft-minter/native/program/Cargo.toml b/tokens/nft-minter/native/program/Cargo.toml index 551217948..887cf52c4 100644 --- a/tokens/nft-minter/native/program/Cargo.toml +++ b/tokens/nft-minter/native/program/Cargo.toml @@ -6,7 +6,7 @@ edition = "2021" [dependencies] borsh = "0.9.3" borsh-derive = "0.9.1" -solana-program = "1.16.10" +solana-program = "2.1" spl-token = { version="4.0.0", features = [ "no-entrypoint" ] } spl-associated-token-account = { version="2.0.0", features = [ "no-entrypoint" ] } mpl-token-metadata = { version="1.11" } diff --git a/tokens/pda-mint-authority/native/program/Cargo.toml b/tokens/pda-mint-authority/native/program/Cargo.toml index 751bf055a..998d3dd47 100644 --- a/tokens/pda-mint-authority/native/program/Cargo.toml +++ b/tokens/pda-mint-authority/native/program/Cargo.toml @@ -6,7 +6,7 @@ edition = "2021" [dependencies] borsh = "0.9.3" borsh-derive = "0.9.1" -solana-program = "1.16.10" +solana-program = "2.1" spl-token = { version="4.0.0", features = [ "no-entrypoint" ] } spl-associated-token-account = { version="2.0.0", features = [ "no-entrypoint" ] } mpl-token-metadata = { version="1.11", features = [ "no-entrypoint" ] } diff --git a/tokens/spl-token-minter/native/program/Cargo.toml b/tokens/spl-token-minter/native/program/Cargo.toml index 99d312064..c9e30a9e7 100644 --- a/tokens/spl-token-minter/native/program/Cargo.toml +++ b/tokens/spl-token-minter/native/program/Cargo.toml @@ -6,7 +6,7 @@ edition = "2021" [dependencies] borsh = "0.9.3" borsh-derive = "0.9.1" -solana-program = "1.16.10" +solana-program = "2.1" spl-token = { version="4.0.0", features = [ "no-entrypoint" ] } spl-associated-token-account = { version="2.0.0", features = [ "no-entrypoint" ] } mpl-token-metadata = { version="1.11", features = [ "no-entrypoint" ] } diff --git a/tokens/token-2022/mint-close-authority/native/program/Cargo.toml b/tokens/token-2022/mint-close-authority/native/program/Cargo.toml index 58360f9d8..de40f4ee4 100644 --- a/tokens/token-2022/mint-close-authority/native/program/Cargo.toml +++ b/tokens/token-2022/mint-close-authority/native/program/Cargo.toml @@ -6,7 +6,7 @@ edition = "2021" [dependencies] borsh = "0.9.3" borsh-derive = "0.9.1" -solana-program = "1.16.10" +solana-program = "2.1" spl-associated-token-account = { version="2.0.0", features = [ "no-entrypoint" ] } spl-token-2022 = {version = "0.7.0", features = [ "no-entrypoint" ] } diff --git a/tokens/token-2022/non-transferable/native/program/Cargo.toml b/tokens/token-2022/non-transferable/native/program/Cargo.toml index d03cd5d4c..e98868f3e 100644 --- a/tokens/token-2022/non-transferable/native/program/Cargo.toml +++ b/tokens/token-2022/non-transferable/native/program/Cargo.toml @@ -6,7 +6,7 @@ edition = "2021" [dependencies] borsh = "0.9.3" borsh-derive = "0.9.1" -solana-program = "=1.18.17" +solana-program = "2.1" spl-associated-token-account = { version="2.0.0", features = [ "no-entrypoint" ] } spl-token-2022 = {version = "0.7.0", features = [ "no-entrypoint" ] } diff --git a/tokens/token-2022/transfer-fee/native/program/Cargo.toml b/tokens/token-2022/transfer-fee/native/program/Cargo.toml index f1c31c8f0..36b8c7b23 100644 --- a/tokens/token-2022/transfer-fee/native/program/Cargo.toml +++ b/tokens/token-2022/transfer-fee/native/program/Cargo.toml @@ -6,7 +6,7 @@ edition = "2021" [dependencies] borsh = "0.10.3" borsh-derive = "0.9.1" -solana-program = "=1.18.17" +solana-program = "2.1" spl-associated-token-account = { version="2.0.0", features = [ "no-entrypoint" ] } spl-token-2022 = {version = "0.7.0", features = [ "no-entrypoint" ] } diff --git a/tokens/transfer-tokens/native/program/Cargo.toml b/tokens/transfer-tokens/native/program/Cargo.toml index 8810f4f95..035b9c3e6 100644 --- a/tokens/transfer-tokens/native/program/Cargo.toml +++ b/tokens/transfer-tokens/native/program/Cargo.toml @@ -6,7 +6,7 @@ edition = "2021" [dependencies] borsh = "0.9.3" borsh-derive = "0.9.1" -solana-program = "1.16.10" +solana-program = "2.1" spl-token = { version="4.0.0", features = [ "no-entrypoint" ] } spl-associated-token-account = { version = "2.0.0", features = [ "no-entrypoint" ] } mpl-token-metadata = { version="1.11", features = ["no-entrypoint"] }