Kaynağa Gözat

Upgrade Solana to 1.18.8 (#2867)

acheron 1 yıl önce
ebeveyn
işleme
c66b323293

+ 1 - 1
.github/workflows/no-caching-tests.yaml

@@ -11,7 +11,7 @@ jobs:
     uses: ./.github/workflows/reusable-tests.yaml
     with:
       cache: false
-      solana_cli_version: 1.17.0
+      solana_cli_version: 1.18.8
       solang_version: 0.3.2
       node_version: 18.18.0
       cargo_profile: release

+ 1 - 1
.github/workflows/tests.yaml

@@ -14,7 +14,7 @@ jobs:
     uses: ./.github/workflows/reusable-tests.yaml
     with:
       cache: true
-      solana_cli_version: 1.17.0
+      solana_cli_version: 1.18.8
       solang_version: 0.3.2
       node_version: 18.18.0
       cargo_profile: debug

+ 1 - 0
CHANGELOG.md

@@ -63,6 +63,7 @@ The minor version will be incremented upon a breaking change and the patch versi
 - ts: Fix not being able to use numbers in instruction, account, or event names in some cases due to case conversion ([#2824](https://github.com/coral-xyz/anchor/pull/2824)).
 - cli: Fix excessive test validator requests ([#2828](https://github.com/coral-xyz/anchor/pull/2828)).
 - client: Fix `parse_logs_response` to prevent panics when more than 1 outer instruction exists in logs ([#2856](https://github.com/coral-xyz/anchor/pull/2856)).
+- avm, cli: Fix `stdsimd` feature compilation error from `ahash` when installing the CLI using newer Rust versions ([#2867](https://github.com/coral-xyz/anchor/pull/2867)).
 
 ### Breaking
 

Dosya farkı çok büyük olduğundan ihmal edildi
+ 233 - 155
Cargo.lock


+ 6 - 4
bench/BINARY_SIZE.md

@@ -14,14 +14,16 @@ The programs and their tests are located in [/tests/bench](https://github.com/co
 
 ## [Unreleased]
 
-Solana version: 1.17.0
+Solana version: 1.18.8
 
-| Program | Binary Size | -                   |
-| ------- | ----------- | ------------------- |
-| bench   | 743,208     | 🔴 **+152 (0.02%)** |
+| Program | Binary Size | -                      |
+| ------- | ----------- | ---------------------- |
+| bench   | 791,008     | 🔴 **+47,952 (6.45%)** |
 
 ### Notable changes
 
+- Upgrade Solana to `1.18.8` ([#2867](https://github.com/coral-xyz/anchor/pull/2867)).
+
 ---
 
 ## [0.29.0]

+ 92 - 90
bench/COMPUTE_UNITS.md

@@ -14,100 +14,102 @@ The programs and their tests are located in [/tests/bench](https://github.com/co
 
 ## [Unreleased]
 
-Solana version: 1.17.0
+Solana version: 1.18.8
 
-| Instruction                 | Compute Units | -   |
-| --------------------------- | ------------- | --- |
-| accountInfo1                | 695           | -   |
-| accountInfo2                | 1,035         | -   |
-| accountInfo4                | 1,730         | -   |
-| accountInfo8                | 3,342         | -   |
-| accountEmptyInit1           | 5,552         | -   |
-| accountEmpty1               | 819           | -   |
-| accountEmptyInit2           | 10,421        | -   |
-| accountEmpty2               | 1,275         | -   |
-| accountEmptyInit4           | 19,803        | -   |
-| accountEmpty4               | 2,177         | -   |
-| accountEmptyInit8           | 38,609        | -   |
-| accountEmpty8               | 3,990         | -   |
-| accountSizedInit1           | 5,647         | -   |
-| accountSized1               | 843           | -   |
-| accountSizedInit2           | 10,607        | -   |
-| accountSized2               | 1,317         | -   |
-| accountSizedInit4           | 20,225        | -   |
-| accountSized4               | 2,274         | -   |
-| accountSizedInit8           | 39,376        | -   |
-| accountSized8               | 4,185         | -   |
-| accountUnsizedInit1         | 5,740         | -   |
-| accountUnsized1             | 870           | -   |
-| accountUnsizedInit2         | 10,856        | -   |
-| accountUnsized2             | 1,379         | -   |
-| accountUnsizedInit4         | 20,652        | -   |
-| accountUnsized4             | 2,411         | -   |
-| accountUnsizedInit8         | 39,969        | -   |
-| accountUnsized8             | 4,478         | -   |
-| boxedAccountEmptyInit1      | 5,605         | -   |
-| boxedAccountEmpty1          | 856           | -   |
-| boxedAccountEmptyInit2      | 10,522        | -   |
-| boxedAccountEmpty2          | 1,347         | -   |
-| boxedAccountEmptyInit4      | 20,002        | -   |
-| boxedAccountEmpty4          | 2,324         | -   |
-| boxedAccountEmptyInit8      | 39,002        | -   |
-| boxedAccountEmpty8          | 4,311         | -   |
-| boxedAccountSizedInit1      | 5,686         | -   |
-| boxedAccountSized1          | 878           | -   |
-| boxedAccountSizedInit2      | 10,690        | -   |
-| boxedAccountSized2          | 1,394         | -   |
-| boxedAccountSizedInit4      | 20,338        | -   |
-| boxedAccountSized4          | 2,413         | -   |
-| boxedAccountSizedInit8      | 39,670        | -   |
-| boxedAccountSized8          | 4,493         | -   |
-| boxedAccountUnsizedInit1    | 5,774         | -   |
-| boxedAccountUnsized1        | 908           | -   |
-| boxedAccountUnsizedInit2    | 10,866        | -   |
-| boxedAccountUnsized2        | 1,457         | -   |
-| boxedAccountUnsizedInit4    | 20,688        | -   |
-| boxedAccountUnsized4        | 2,546         | -   |
-| boxedAccountUnsizedInit8    | 40,375        | -   |
-| boxedAccountUnsized8        | 4,759         | -   |
-| boxedInterfaceAccountMint1  | 2,196         | -   |
-| boxedInterfaceAccountMint2  | 3,847         | -   |
-| boxedInterfaceAccountMint4  | 7,132         | -   |
-| boxedInterfaceAccountMint8  | 13,743        | -   |
-| boxedInterfaceAccountToken1 | 2,126         | -   |
-| boxedInterfaceAccountToken2 | 3,706         | -   |
-| boxedInterfaceAccountToken4 | 6,853         | -   |
-| boxedInterfaceAccountToken8 | 13,184        | -   |
-| interfaceAccountMint1       | 2,285         | -   |
-| interfaceAccountMint2       | 4,178         | -   |
-| interfaceAccountMint4       | 7,964         | -   |
-| interfaceAccountMint8       | 15,538        | -   |
-| interfaceAccountToken1      | 2,212         | -   |
-| interfaceAccountToken2      | 4,030         | -   |
-| interfaceAccountToken4      | 7,663         | -   |
-| interface1                  | 741           | -   |
-| interface2                  | 934           | -   |
-| interface4                  | 1,315         | -   |
-| interface8                  | 2,086         | -   |
-| program1                    | 741           | -   |
-| program2                    | 934           | -   |
-| program4                    | 1,317         | -   |
-| program8                    | 2,086         | -   |
-| signer1                     | 675           | -   |
-| signer2                     | 987           | -   |
-| signer4                     | 1,606         | -   |
-| signer8                     | 2,846         | -   |
-| systemAccount1              | 729           | -   |
-| systemAccount2              | 1,093         | -   |
-| systemAccount4              | 1,817         | -   |
-| systemAccount8              | 3,271         | -   |
-| uncheckedAccount1           | 657           | -   |
-| uncheckedAccount2           | 949           | -   |
-| uncheckedAccount4           | 1,526         | -   |
-| uncheckedAccount8           | 2,688         | -   |
+| Instruction                 | Compute Units | -                      |
+| --------------------------- | ------------- | ---------------------- |
+| accountInfo1                | 601           | 🟢 **-94 (13.53%)**    |
+| accountInfo2                | 923           | 🟢 **-112 (10.82%)**   |
+| accountInfo4                | 1,583         | 🟢 **-147 (8.50%)**    |
+| accountInfo8                | 2,975         | 🟢 **-367 (10.98%)**   |
+| accountEmptyInit1           | 5,034         | 🟢 **-518 (9.33%)**    |
+| accountEmpty1               | 652           | 🟢 **-167 (20.39%)**   |
+| accountEmptyInit2           | 9,687         | 🟢 **-734 (7.04%)**    |
+| accountEmpty2               | 1,016         | 🟢 **-259 (20.31%)**   |
+| accountEmptyInit4           | 18,501        | 🟢 **-1,302 (6.57%)**  |
+| accountEmpty4               | 1,737         | 🟢 **-440 (20.21%)**   |
+| accountEmptyInit8           | 36,169        | 🟢 **-2,440 (6.32%)**  |
+| accountEmpty8               | 3,186         | 🟢 **-804 (20.15%)**   |
+| accountSizedInit1           | 5,106         | 🟢 **-541 (9.58%)**    |
+| accountSized1               | 668           | 🟢 **-175 (20.76%)**   |
+| accountSizedInit2           | 9,828         | 🟢 **-779 (7.34%)**    |
+| accountSized2               | 1,046         | 🟢 **-271 (20.58%)**   |
+| accountSizedInit4           | 18,837        | 🟢 **-1,388 (6.86%)**  |
+| accountSized4               | 1,807         | 🟢 **-467 (20.54%)**   |
+| accountSizedInit8           | 36,761        | 🟢 **-2,615 (6.64%)**  |
+| accountSized8               | 3,326         | 🟢 **-859 (20.53%)**   |
+| accountUnsizedInit1         | 5,199         | 🟢 **-541 (9.43%)**    |
+| accountUnsized1             | 702           | 🟢 **-168 (19.31%)**   |
+| accountUnsizedInit2         | 10,078        | 🟢 **-778 (7.17%)**    |
+| accountUnsized2             | 1,116         | 🟢 **-263 (19.07%)**   |
+| accountUnsizedInit4         | 19,259        | 🟢 **-1,393 (6.75%)**  |
+| accountUnsized4             | 1,953         | 🟢 **-458 (19.00%)**   |
+| accountUnsizedInit8         | 37,331        | 🟢 **-2,638 (6.60%)**  |
+| accountUnsized8             | 3,626         | 🟢 **-852 (19.03%)**   |
+| boxedAccountEmptyInit1      | 5,064         | 🟢 **-541 (9.65%)**    |
+| boxedAccountEmpty1          | 671           | 🟢 **-185 (21.61%)**   |
+| boxedAccountEmptyInit2      | 9,721         | 🟢 **-801 (7.61%)**    |
+| boxedAccountEmpty2          | 1,052         | 🟢 **-295 (21.90%)**   |
+| boxedAccountEmptyInit4      | 18,582        | 🟢 **-1,420 (7.10%)**  |
+| boxedAccountEmpty4          | 1,811         | 🟢 **-513 (22.07%)**   |
+| boxedAccountEmptyInit8      | 36,329        | 🟢 **-2,673 (6.85%)**  |
+| boxedAccountEmpty8          | 3,357         | 🟢 **-954 (22.13%)**   |
+| boxedAccountSizedInit1      | 5,119         | 🟢 **-567 (9.97%)**    |
+| boxedAccountSized1          | 686           | 🟢 **-192 (21.87%)**   |
+| boxedAccountSizedInit2      | 9,845         | 🟢 **-845 (7.90%)**    |
+| boxedAccountSized2          | 1,085         | 🟢 **-309 (22.17%)**   |
+| boxedAccountSizedInit4      | 18,825        | 🟢 **-1,513 (7.44%)**  |
+| boxedAccountSized4          | 1,874         | 🟢 **-539 (22.34%)**   |
+| boxedAccountSizedInit8      | 36,824        | 🟢 **-2,846 (7.17%)**  |
+| boxedAccountSized8          | 3,490         | 🟢 **-1,003 (22.32%)** |
+| boxedAccountUnsizedInit1    | 5,207         | 🟢 **-567 (9.82%)**    |
+| boxedAccountUnsized1        | 721           | 🟢 **-187 (20.59%)**   |
+| boxedAccountUnsizedInit2    | 10,015        | 🟢 **-851 (7.83%)**    |
+| boxedAccountUnsized2        | 1,157         | 🟢 **-300 (20.59%)**   |
+| boxedAccountUnsizedInit4    | 19,160        | 🟢 **-1,528 (7.39%)**  |
+| boxedAccountUnsized4        | 2,019         | 🟢 **-527 (20.70%)**   |
+| boxedAccountUnsizedInit8    | 37,496        | 🟢 **-2,879 (7.13%)**  |
+| boxedAccountUnsized8        | 3,776         | 🟢 **-983 (20.66%)**   |
+| boxedInterfaceAccountMint1  | 1,503         | 🟢 **-693 (31.56%)**   |
+| boxedInterfaceAccountMint2  | 2,555         | 🟢 **-1,292 (33.58%)** |
+| boxedInterfaceAccountMint4  | 4,645         | 🟢 **-2,487 (34.87%)** |
+| boxedInterfaceAccountMint8  | 8,859         | 🟢 **-4,884 (35.54%)** |
+| boxedInterfaceAccountToken1 | 2,285         | 🔴 **+159 (7.48%)**    |
+| boxedInterfaceAccountToken2 | 4,118         | 🔴 **+412 (11.12%)**   |
+| boxedInterfaceAccountToken4 | 7,774         | 🔴 **+921 (13.44%)**   |
+| boxedInterfaceAccountToken8 | 15,116        | 🔴 **+1,932 (14.65%)** |
+| interfaceAccountMint1       | 1,603         | 🟢 **-682 (29.85%)**   |
+| interfaceAccountMint2       | 2,893         | 🟢 **-1,285 (30.76%)** |
+| interfaceAccountMint4       | 5,475         | 🟢 **-2,489 (31.25%)** |
+| interfaceAccountMint8       | 10,636        | 🟢 **-4,902 (31.55%)** |
+| interfaceAccountToken1      | 2,359         | 🔴 **+147 (6.65%)**    |
+| interfaceAccountToken2      | 4,386         | 🔴 **+356 (8.83%)**    |
+| interfaceAccountToken4      | 8,437         | 🔴 **+774 (10.10%)**   |
+| interface1                  | 600           | 🟢 **-141 (19.03%)**   |
+| interface2                  | 745           | 🟢 **-189 (20.24%)**   |
+| interface4                  | 1,033         | 🟢 **-282 (21.44%)**   |
+| interface8                  | 1,616         | 🟢 **-470 (22.53%)**   |
+| program1                    | 596           | 🟢 **-145 (19.57%)**   |
+| program2                    | 737           | 🟢 **-197 (21.09%)**   |
+| program4                    | 1,019         | 🟢 **-298 (22.63%)**   |
+| program8                    | 1,584         | 🟢 **-502 (24.07%)**   |
+| signer1                     | 580           | 🟢 **-95 (14.07%)**    |
+| signer2                     | 872           | 🟢 **-115 (11.65%)**   |
+| signer4                     | 1,454         | 🟢 **-152 (9.46%)**    |
+| signer8                     | 2,618         | 🟢 **-228 (8.01%)**    |
+| systemAccount1              | 592           | 🟢 **-137 (18.79%)**   |
+| systemAccount2              | 894           | 🟢 **-199 (18.21%)**   |
+| systemAccount4              | 1,497         | 🟢 **-320 (17.61%)**   |
+| systemAccount8              | 2,707         | 🟢 **-564 (17.24%)**   |
+| uncheckedAccount1           | 563           | 🟢 **-94 (14.31%)**    |
+| uncheckedAccount2           | 836           | 🟢 **-113 (11.91%)**   |
+| uncheckedAccount4           | 1,378         | 🟢 **-148 (9.70%)**    |
+| uncheckedAccount8           | 2,468         | 🟢 **-220 (8.18%)**    |
 
 ### Notable changes
 
+- Upgrade Solana to `1.18.8` ([#2867](https://github.com/coral-xyz/anchor/pull/2867)).
+
 ---
 
 ## [0.29.0]

+ 92 - 90
bench/STACK_MEMORY.md

@@ -14,100 +14,102 @@ The programs and their tests are located in [/tests/bench](https://github.com/co
 
 ## [Unreleased]
 
-Solana version: 1.17.0
+Solana version: 1.18.8
 
-| Instruction                    | Stack Memory | -   |
-| ------------------------------ | ------------ | --- |
-| account_info1                  | 128          | -   |
-| account_info2                  | 128          | -   |
-| account_info4                  | 128          | -   |
-| account_info8                  | 128          | -   |
-| account_empty_init1            | 176          | -   |
-| account_empty_init2            | 208          | -   |
-| account_empty_init4            | 208          | -   |
-| account_empty_init8            | 240          | -   |
-| account_empty1                 | 128          | -   |
-| account_empty2                 | 128          | -   |
-| account_empty4                 | 128          | -   |
-| account_empty8                 | 128          | -   |
-| account_sized_init1            | 208          | -   |
-| account_sized_init2            | 256          | -   |
-| account_sized_init4            | 240          | -   |
-| account_sized_init8            | 304          | -   |
-| account_sized1                 | 128          | -   |
-| account_sized2                 | 128          | -   |
-| account_sized4                 | 128          | -   |
-| account_sized8                 | 128          | -   |
-| account_unsized_init1          | 224          | -   |
-| account_unsized_init2          | 296          | -   |
-| account_unsized_init4          | 304          | -   |
-| account_unsized_init8          | 432          | -   |
-| account_unsized1               | 128          | -   |
-| account_unsized2               | 144          | -   |
-| account_unsized4               | 128          | -   |
-| account_unsized8               | 128          | -   |
-| boxed_account_empty_init1      | 176          | -   |
-| boxed_account_empty_init2      | 208          | -   |
-| boxed_account_empty_init4      | 208          | -   |
-| boxed_account_empty_init8      | 240          | -   |
-| boxed_account_empty1           | 128          | -   |
-| boxed_account_empty2           | 128          | -   |
-| boxed_account_empty4           | 144          | -   |
-| boxed_account_empty8           | 144          | -   |
-| boxed_account_sized_init1      | 176          | -   |
-| boxed_account_sized_init2      | 208          | -   |
-| boxed_account_sized_init4      | 208          | -   |
-| boxed_account_sized_init8      | 240          | -   |
-| boxed_account_sized1           | 128          | -   |
-| boxed_account_sized2           | 128          | -   |
-| boxed_account_sized4           | 144          | -   |
-| boxed_account_sized8           | 144          | -   |
-| boxed_account_unsized_init1    | 176          | -   |
-| boxed_account_unsized_init2    | 208          | -   |
-| boxed_account_unsized_init4    | 208          | -   |
-| boxed_account_unsized_init8    | 240          | -   |
-| boxed_account_unsized1         | 128          | -   |
-| boxed_account_unsized2         | 144          | -   |
-| boxed_account_unsized4         | 128          | -   |
-| boxed_account_unsized8         | 128          | -   |
-| boxed_interface_account_mint1  | 128          | -   |
-| boxed_interface_account_mint2  | 128          | -   |
-| boxed_interface_account_mint4  | 144          | -   |
-| boxed_interface_account_mint8  | 144          | -   |
-| boxed_interface_account_token1 | 128          | -   |
-| boxed_interface_account_token2 | 128          | -   |
-| boxed_interface_account_token4 | 144          | -   |
-| boxed_interface_account_token8 | 144          | -   |
-| interface_account_mint1        | 128          | -   |
-| interface_account_mint2        | 128          | -   |
-| interface_account_mint4        | 128          | -   |
-| interface_account_mint8        | 128          | -   |
-| interface_account_token1       | 128          | -   |
-| interface_account_token2       | 128          | -   |
-| interface_account_token4       | 128          | -   |
-| interface1                     | 128          | -   |
-| interface2                     | 128          | -   |
-| interface4                     | 128          | -   |
-| interface8                     | 128          | -   |
-| program1                       | 128          | -   |
-| program2                       | 128          | -   |
-| program4                       | 128          | -   |
-| program8                       | 128          | -   |
-| signer1                        | 128          | -   |
-| signer2                        | 128          | -   |
-| signer4                        | 128          | -   |
-| signer8                        | 128          | -   |
-| system_account1                | 128          | -   |
-| system_account2                | 128          | -   |
-| system_account4                | 128          | -   |
-| system_account8                | 128          | -   |
-| unchecked_account1             | 128          | -   |
-| unchecked_account2             | 128          | -   |
-| unchecked_account4             | 128          | -   |
-| unchecked_account8             | 128          | -   |
+| Instruction                    | Stack Memory | -                   |
+| ------------------------------ | ------------ | ------------------- |
+| account_info1                  | 144          | 🔴 **+16 (12.50%)** |
+| account_info2                  | 144          | 🔴 **+16 (12.50%)** |
+| account_info4                  | 144          | 🔴 **+16 (12.50%)** |
+| account_info8                  | 144          | 🔴 **+16 (12.50%)** |
+| account_empty_init1            | 144          | 🟢 **-32 (18.18%)** |
+| account_empty_init2            | 144          | 🟢 **-64 (30.77%)** |
+| account_empty_init4            | 192          | 🟢 **-16 (7.69%)**  |
+| account_empty_init8            | 224          | 🟢 **-16 (6.67%)**  |
+| account_empty1                 | 144          | 🔴 **+16 (12.50%)** |
+| account_empty2                 | 144          | 🔴 **+16 (12.50%)** |
+| account_empty4                 | 144          | 🔴 **+16 (12.50%)** |
+| account_empty8                 | 144          | 🔴 **+16 (12.50%)** |
+| account_sized_init1            | 176          | 🟢 **-32 (15.38%)** |
+| account_sized_init2            | 192          | 🟢 **-64 (25.00%)** |
+| account_sized_init4            | 224          | 🟢 **-16 (6.67%)**  |
+| account_sized_init8            | 288          | 🟢 **-16 (5.26%)**  |
+| account_sized1                 | 144          | 🔴 **+16 (12.50%)** |
+| account_sized2                 | 144          | 🔴 **+16 (12.50%)** |
+| account_sized4                 | 144          | 🔴 **+16 (12.50%)** |
+| account_sized8                 | 144          | 🔴 **+16 (12.50%)** |
+| account_unsized_init1          | 192          | 🟢 **-32 (14.29%)** |
+| account_unsized_init2          | 224          | 🟢 **-72 (24.32%)** |
+| account_unsized_init4          | 288          | 🟢 **-16 (5.26%)**  |
+| account_unsized_init8          | 416          | 🟢 **-16 (3.70%)**  |
+| account_unsized1               | 144          | 🔴 **+16 (12.50%)** |
+| account_unsized2               | 144          | -                   |
+| account_unsized4               | 144          | 🔴 **+16 (12.50%)** |
+| account_unsized8               | 144          | 🔴 **+16 (12.50%)** |
+| boxed_account_empty_init1      | 144          | 🟢 **-32 (18.18%)** |
+| boxed_account_empty_init2      | 144          | 🟢 **-64 (30.77%)** |
+| boxed_account_empty_init4      | 192          | 🟢 **-16 (7.69%)**  |
+| boxed_account_empty_init8      | 224          | 🟢 **-16 (6.67%)**  |
+| boxed_account_empty1           | 144          | 🔴 **+16 (12.50%)** |
+| boxed_account_empty2           | 144          | 🔴 **+16 (12.50%)** |
+| boxed_account_empty4           | 144          | -                   |
+| boxed_account_empty8           | 144          | -                   |
+| boxed_account_sized_init1      | 144          | 🟢 **-32 (18.18%)** |
+| boxed_account_sized_init2      | 144          | 🟢 **-64 (30.77%)** |
+| boxed_account_sized_init4      | 192          | 🟢 **-16 (7.69%)**  |
+| boxed_account_sized_init8      | 224          | 🟢 **-16 (6.67%)**  |
+| boxed_account_sized1           | 144          | 🔴 **+16 (12.50%)** |
+| boxed_account_sized2           | 144          | 🔴 **+16 (12.50%)** |
+| boxed_account_sized4           | 144          | -                   |
+| boxed_account_sized8           | 144          | -                   |
+| boxed_account_unsized_init1    | 144          | 🟢 **-32 (18.18%)** |
+| boxed_account_unsized_init2    | 144          | 🟢 **-64 (30.77%)** |
+| boxed_account_unsized_init4    | 192          | 🟢 **-16 (7.69%)**  |
+| boxed_account_unsized_init8    | 224          | 🟢 **-16 (6.67%)**  |
+| boxed_account_unsized1         | 144          | 🔴 **+16 (12.50%)** |
+| boxed_account_unsized2         | 144          | -                   |
+| boxed_account_unsized4         | 144          | 🔴 **+16 (12.50%)** |
+| boxed_account_unsized8         | 144          | 🔴 **+16 (12.50%)** |
+| boxed_interface_account_mint1  | 144          | 🔴 **+16 (12.50%)** |
+| boxed_interface_account_mint2  | 144          | 🔴 **+16 (12.50%)** |
+| boxed_interface_account_mint4  | 144          | -                   |
+| boxed_interface_account_mint8  | 144          | -                   |
+| boxed_interface_account_token1 | 144          | 🔴 **+16 (12.50%)** |
+| boxed_interface_account_token2 | 144          | 🔴 **+16 (12.50%)** |
+| boxed_interface_account_token4 | 144          | -                   |
+| boxed_interface_account_token8 | 144          | -                   |
+| interface_account_mint1        | 144          | 🔴 **+16 (12.50%)** |
+| interface_account_mint2        | 144          | 🔴 **+16 (12.50%)** |
+| interface_account_mint4        | 144          | 🔴 **+16 (12.50%)** |
+| interface_account_mint8        | 144          | 🔴 **+16 (12.50%)** |
+| interface_account_token1       | 144          | 🔴 **+16 (12.50%)** |
+| interface_account_token2       | 144          | 🔴 **+16 (12.50%)** |
+| interface_account_token4       | 144          | 🔴 **+16 (12.50%)** |
+| interface1                     | 144          | 🔴 **+16 (12.50%)** |
+| interface2                     | 144          | 🔴 **+16 (12.50%)** |
+| interface4                     | 144          | 🔴 **+16 (12.50%)** |
+| interface8                     | 144          | 🔴 **+16 (12.50%)** |
+| program1                       | 144          | 🔴 **+16 (12.50%)** |
+| program2                       | 144          | 🔴 **+16 (12.50%)** |
+| program4                       | 144          | 🔴 **+16 (12.50%)** |
+| program8                       | 144          | 🔴 **+16 (12.50%)** |
+| signer1                        | 144          | 🔴 **+16 (12.50%)** |
+| signer2                        | 144          | 🔴 **+16 (12.50%)** |
+| signer4                        | 144          | 🔴 **+16 (12.50%)** |
+| signer8                        | 144          | 🔴 **+16 (12.50%)** |
+| system_account1                | 144          | 🔴 **+16 (12.50%)** |
+| system_account2                | 144          | 🔴 **+16 (12.50%)** |
+| system_account4                | 144          | 🔴 **+16 (12.50%)** |
+| system_account8                | 144          | 🔴 **+16 (12.50%)** |
+| unchecked_account1             | 144          | 🔴 **+16 (12.50%)** |
+| unchecked_account2             | 144          | 🔴 **+16 (12.50%)** |
+| unchecked_account4             | 144          | 🔴 **+16 (12.50%)** |
+| unchecked_account8             | 144          | 🔴 **+16 (12.50%)** |
 
 ### Notable changes
 
+- Upgrade Solana to `1.18.8` ([#2867](https://github.com/coral-xyz/anchor/pull/2867)).
+
 ---
 
 ## [0.29.0]

+ 5 - 5
cli/Cargo.toml

@@ -36,11 +36,11 @@ semver = "1.0.4"
 serde = { version = "1.0.122", features = ["derive"] }
 serde_json = "1.0"
 shellexpand = "2.1.0"
-solana-client = ">=1.16, <1.18"
-solana-cli-config = ">=1.16, <1.18"
-solana-faucet = ">=1.16, <1.18"
-solana-program = ">=1.16, <1.18"
-solana-sdk = ">=1.16, <1.18"
+solana-client = "1.16"
+solana-cli-config = "1.16"
+solana-faucet = "1.16"
+solana-program = "1.16"
+solana-sdk = "1.16"
 # Pin solang-parser because it may break in a backwards incompatible way in minor versions
 solang-parser = "=0.3.3"
 syn = { version = "1.0.60", features = ["full", "extra-traits"] }

+ 3 - 3
client/Cargo.toml

@@ -21,9 +21,9 @@ anyhow = "1"
 futures = "0.3"
 regex = "1"
 serde = { version = "1", features = ["derive"] }
-solana-account-decoder = ">=1.16, <1.18"
-solana-client = ">=1.16, <1.18"
-solana-sdk = ">=1.16, <1.18"
+solana-account-decoder = "1.16"
+solana-client = "1.16"
+solana-sdk = "1.16"
 thiserror = "1"
 tokio = { version = "1", features = ["rt", "sync"] }
 url = "2"

+ 1 - 1
client/example/Cargo.toml

@@ -20,5 +20,5 @@ events = { path = "../../tests/events/programs/events", features = ["no-entrypoi
 anyhow = "1.0.32"
 clap = { version = "4.2.4", features = ["derive"] }
 shellexpand = "2.1.0"
-solana-sdk = ">=1.16, <1.18"
+solana-sdk = "1.16"
 tokio = { version = "1", features = ["full"] }

+ 1 - 1
docker/Makefile

@@ -6,7 +6,7 @@ ANCHOR_CLI=v0.29.0
 #
 # Solana toolchain.
 #
-SOLANA_CLI=v1.17.0
+SOLANA_CLI=v1.18.8
 #
 # Build version should match the Anchor cli version.
 #

+ 1 - 4
lang/Cargo.toml

@@ -57,11 +57,8 @@ base64 = "0.21"
 bincode = "1"
 borsh = ">=0.9, <0.11"
 bytemuck = "1"
-solana-program = ">=1.16, <1.18"
+solana-program = "1.16"
 thiserror = "1"
 
 # TODO: Remove. This crate has been added to fix a build error with the 1.16.0 release.
 getrandom = { version = "0.2", features = ["custom"] }
-
-# TODO: Remove once https://github.com/solana-labs/solana/issues/33504 is resolved.
-ahash = "=0.8.6"

+ 2 - 2
setup-tests.sh

@@ -1,8 +1,8 @@
 #!/bin/bash
 
 active_version=$(solana -V | awk '{print $2}')
-if [ "$active_version" != "1.17.0" ]; then
-  solana-install init 1.17.0
+if [ "$active_version" != "1.18.8" ]; then
+  solana-install init 1.18.8
 fi
 
 git submodule update --init --recursive --depth 1

+ 1 - 1
spl/Cargo.toml

@@ -30,7 +30,7 @@ anchor-lang = { path = "../lang", version = "0.29.0", features = ["derive"] }
 borsh = { version = ">=0.9, <0.11", optional = true }
 mpl-token-metadata = { version = "3.1.0", optional = true }
 serum_dex = { git = "https://github.com/openbook-dex/program/", rev = "1be91f2", version = "0.4.0", features = ["no-entrypoint"], optional = true }
-solana-program = ">=1.16, <1.18"
+solana-program = "1.16"
 spl-associated-token-account = { version = "2.2", features = ["no-entrypoint"], optional = true }
 spl-memo = { version = "4", features = ["no-entrypoint"], optional = true }
 spl-token = { version = "4", features = ["no-entrypoint"], optional = true }

+ 166 - 166
tests/bench/bench.json

@@ -558,188 +558,188 @@
     }
   },
   "unreleased": {
-    "solanaVersion": "1.17.0",
+    "solanaVersion": "1.18.8",
     "result": {
       "binarySize": {
-        "bench": 743208
+        "bench": 791008
       },
       "computeUnits": {
-        "accountInfo1": 695,
-        "accountInfo2": 1035,
-        "accountInfo4": 1730,
-        "accountInfo8": 3342,
-        "accountEmptyInit1": 5552,
-        "accountEmpty1": 819,
-        "accountEmptyInit2": 10421,
-        "accountEmpty2": 1275,
-        "accountEmptyInit4": 19803,
-        "accountEmpty4": 2177,
-        "accountEmptyInit8": 38609,
-        "accountEmpty8": 3990,
-        "accountSizedInit1": 5647,
-        "accountSized1": 843,
-        "accountSizedInit2": 10607,
-        "accountSized2": 1317,
-        "accountSizedInit4": 20225,
-        "accountSized4": 2274,
-        "accountSizedInit8": 39376,
-        "accountSized8": 4185,
-        "accountUnsizedInit1": 5740,
-        "accountUnsized1": 870,
-        "accountUnsizedInit2": 10856,
-        "accountUnsized2": 1379,
-        "accountUnsizedInit4": 20652,
-        "accountUnsized4": 2411,
-        "accountUnsizedInit8": 39969,
-        "accountUnsized8": 4478,
-        "boxedAccountEmptyInit1": 5605,
-        "boxedAccountEmpty1": 856,
-        "boxedAccountEmptyInit2": 10522,
-        "boxedAccountEmpty2": 1347,
-        "boxedAccountEmptyInit4": 20002,
-        "boxedAccountEmpty4": 2324,
-        "boxedAccountEmptyInit8": 39002,
-        "boxedAccountEmpty8": 4311,
-        "boxedAccountSizedInit1": 5686,
-        "boxedAccountSized1": 878,
-        "boxedAccountSizedInit2": 10690,
-        "boxedAccountSized2": 1394,
-        "boxedAccountSizedInit4": 20338,
-        "boxedAccountSized4": 2413,
-        "boxedAccountSizedInit8": 39670,
-        "boxedAccountSized8": 4493,
-        "boxedAccountUnsizedInit1": 5774,
-        "boxedAccountUnsized1": 908,
-        "boxedAccountUnsizedInit2": 10866,
-        "boxedAccountUnsized2": 1457,
-        "boxedAccountUnsizedInit4": 20688,
-        "boxedAccountUnsized4": 2546,
-        "boxedAccountUnsizedInit8": 40375,
-        "boxedAccountUnsized8": 4759,
-        "boxedInterfaceAccountMint1": 2196,
-        "boxedInterfaceAccountMint2": 3847,
-        "boxedInterfaceAccountMint4": 7132,
-        "boxedInterfaceAccountMint8": 13743,
-        "boxedInterfaceAccountToken1": 2126,
-        "boxedInterfaceAccountToken2": 3706,
-        "boxedInterfaceAccountToken4": 6853,
-        "boxedInterfaceAccountToken8": 13184,
-        "interfaceAccountMint1": 2285,
-        "interfaceAccountMint2": 4178,
-        "interfaceAccountMint4": 7964,
-        "interfaceAccountMint8": 15538,
-        "interfaceAccountToken1": 2212,
-        "interfaceAccountToken2": 4030,
-        "interfaceAccountToken4": 7663,
-        "interface1": 741,
-        "interface2": 934,
-        "interface4": 1315,
-        "interface8": 2086,
-        "program1": 741,
-        "program2": 934,
-        "program4": 1317,
-        "program8": 2086,
-        "signer1": 675,
-        "signer2": 987,
-        "signer4": 1606,
-        "signer8": 2846,
-        "systemAccount1": 729,
-        "systemAccount2": 1093,
-        "systemAccount4": 1817,
-        "systemAccount8": 3271,
-        "uncheckedAccount1": 657,
-        "uncheckedAccount2": 949,
-        "uncheckedAccount4": 1526,
-        "uncheckedAccount8": 2688
+        "accountInfo1": 601,
+        "accountInfo2": 923,
+        "accountInfo4": 1583,
+        "accountInfo8": 2975,
+        "accountEmptyInit1": 5034,
+        "accountEmpty1": 652,
+        "accountEmptyInit2": 9687,
+        "accountEmpty2": 1016,
+        "accountEmptyInit4": 18501,
+        "accountEmpty4": 1737,
+        "accountEmptyInit8": 36169,
+        "accountEmpty8": 3186,
+        "accountSizedInit1": 5106,
+        "accountSized1": 668,
+        "accountSizedInit2": 9828,
+        "accountSized2": 1046,
+        "accountSizedInit4": 18837,
+        "accountSized4": 1807,
+        "accountSizedInit8": 36761,
+        "accountSized8": 3326,
+        "accountUnsizedInit1": 5199,
+        "accountUnsized1": 702,
+        "accountUnsizedInit2": 10078,
+        "accountUnsized2": 1116,
+        "accountUnsizedInit4": 19259,
+        "accountUnsized4": 1953,
+        "accountUnsizedInit8": 37331,
+        "accountUnsized8": 3626,
+        "boxedAccountEmptyInit1": 5064,
+        "boxedAccountEmpty1": 671,
+        "boxedAccountEmptyInit2": 9721,
+        "boxedAccountEmpty2": 1052,
+        "boxedAccountEmptyInit4": 18582,
+        "boxedAccountEmpty4": 1811,
+        "boxedAccountEmptyInit8": 36329,
+        "boxedAccountEmpty8": 3357,
+        "boxedAccountSizedInit1": 5119,
+        "boxedAccountSized1": 686,
+        "boxedAccountSizedInit2": 9845,
+        "boxedAccountSized2": 1085,
+        "boxedAccountSizedInit4": 18825,
+        "boxedAccountSized4": 1874,
+        "boxedAccountSizedInit8": 36824,
+        "boxedAccountSized8": 3490,
+        "boxedAccountUnsizedInit1": 5207,
+        "boxedAccountUnsized1": 721,
+        "boxedAccountUnsizedInit2": 10015,
+        "boxedAccountUnsized2": 1157,
+        "boxedAccountUnsizedInit4": 19160,
+        "boxedAccountUnsized4": 2019,
+        "boxedAccountUnsizedInit8": 37496,
+        "boxedAccountUnsized8": 3776,
+        "boxedInterfaceAccountMint1": 1503,
+        "boxedInterfaceAccountMint2": 2555,
+        "boxedInterfaceAccountMint4": 4645,
+        "boxedInterfaceAccountMint8": 8859,
+        "boxedInterfaceAccountToken1": 2285,
+        "boxedInterfaceAccountToken2": 4118,
+        "boxedInterfaceAccountToken4": 7774,
+        "boxedInterfaceAccountToken8": 15116,
+        "interfaceAccountMint1": 1603,
+        "interfaceAccountMint2": 2893,
+        "interfaceAccountMint4": 5475,
+        "interfaceAccountMint8": 10636,
+        "interfaceAccountToken1": 2359,
+        "interfaceAccountToken2": 4386,
+        "interfaceAccountToken4": 8437,
+        "interface1": 600,
+        "interface2": 745,
+        "interface4": 1033,
+        "interface8": 1616,
+        "program1": 596,
+        "program2": 737,
+        "program4": 1019,
+        "program8": 1584,
+        "signer1": 580,
+        "signer2": 872,
+        "signer4": 1454,
+        "signer8": 2618,
+        "systemAccount1": 592,
+        "systemAccount2": 894,
+        "systemAccount4": 1497,
+        "systemAccount8": 2707,
+        "uncheckedAccount1": 563,
+        "uncheckedAccount2": 836,
+        "uncheckedAccount4": 1378,
+        "uncheckedAccount8": 2468
       },
       "stackMemory": {
-        "account_info1": 128,
-        "account_info2": 128,
-        "account_info4": 128,
-        "account_info8": 128,
-        "account_empty_init1": 176,
-        "account_empty_init2": 208,
-        "account_empty_init4": 208,
-        "account_empty_init8": 240,
-        "account_empty1": 128,
-        "account_empty2": 128,
-        "account_empty4": 128,
-        "account_empty8": 128,
-        "account_sized_init1": 208,
-        "account_sized_init2": 256,
-        "account_sized_init4": 240,
-        "account_sized_init8": 304,
-        "account_sized1": 128,
-        "account_sized2": 128,
-        "account_sized4": 128,
-        "account_sized8": 128,
-        "account_unsized_init1": 224,
-        "account_unsized_init2": 296,
-        "account_unsized_init4": 304,
-        "account_unsized_init8": 432,
-        "account_unsized1": 128,
+        "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": 128,
-        "account_unsized8": 128,
-        "boxed_account_empty_init1": 176,
-        "boxed_account_empty_init2": 208,
-        "boxed_account_empty_init4": 208,
-        "boxed_account_empty_init8": 240,
-        "boxed_account_empty1": 128,
-        "boxed_account_empty2": 128,
+        "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": 176,
-        "boxed_account_sized_init2": 208,
-        "boxed_account_sized_init4": 208,
-        "boxed_account_sized_init8": 240,
-        "boxed_account_sized1": 128,
-        "boxed_account_sized2": 128,
+        "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": 176,
-        "boxed_account_unsized_init2": 208,
-        "boxed_account_unsized_init4": 208,
-        "boxed_account_unsized_init8": 240,
-        "boxed_account_unsized1": 128,
+        "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": 128,
-        "boxed_account_unsized8": 128,
-        "boxed_interface_account_mint1": 128,
-        "boxed_interface_account_mint2": 128,
+        "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": 128,
-        "boxed_interface_account_token2": 128,
+        "boxed_interface_account_token1": 144,
+        "boxed_interface_account_token2": 144,
         "boxed_interface_account_token4": 144,
         "boxed_interface_account_token8": 144,
-        "interface_account_mint1": 128,
-        "interface_account_mint2": 128,
-        "interface_account_mint4": 128,
-        "interface_account_mint8": 128,
-        "interface_account_token1": 128,
-        "interface_account_token2": 128,
-        "interface_account_token4": 128,
-        "interface1": 128,
-        "interface2": 128,
-        "interface4": 128,
-        "interface8": 128,
-        "program1": 128,
-        "program2": 128,
-        "program4": 128,
-        "program8": 128,
-        "signer1": 128,
-        "signer2": 128,
-        "signer4": 128,
-        "signer8": 128,
-        "system_account1": 128,
-        "system_account2": 128,
-        "system_account4": 128,
-        "system_account8": 128,
-        "unchecked_account1": 128,
-        "unchecked_account2": 128,
-        "unchecked_account4": 128,
-        "unchecked_account8": 128
+        "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
       }
     }
   }

+ 1 - 1
tests/bench/tests/stack-memory.ts

@@ -11,7 +11,7 @@ describe("Stack memory", () => {
   const STACK_CONTENT = [
     "",
     `let stack_limit: [u16; 2048] = [1; 2048];`,
-    `msg!("{}", stack_limit.len());`,
+    `msg!("{}", stack_limit[2047]);`,
     "",
   ].join("\n\t\t");
 

+ 0 - 8
tests/escrow/Anchor.toml

@@ -7,11 +7,3 @@ escrow = "Fg6PaFpoGXkYsidMpWTK6W2BeZ7FEfcYkg476zPFsLnS"
 
 [scripts]
 test = "yarn run ts-mocha -t 1000000 tests/*.ts"
-
-[features]
-
-[test.validator]
-url = "https://api.mainnet-beta.solana.com"
-
-[[test.validator.clone]]
-address = "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"

+ 0 - 8
tests/spl/token-proxy/Anchor.toml

@@ -7,11 +7,3 @@ token_proxy = "Fg6PaFpoGXkYsidMpWTK6W2BeZ7FEfcYkg476zPFsLnS"
 
 [scripts]
 test = "yarn run mocha -t 1000000 tests/"
-
-[features]
-
-[test.validator]
-url = "https://api.mainnet-beta.solana.com"
-
-[[test.validator.clone]]
-address = "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"

+ 0 - 8
tests/spl/token-wrapper/Anchor.toml

@@ -7,11 +7,3 @@ token_wrapper = "4ZPcGU8MX8oL2u1EtErHzixAbgNBNeE9yoYq3kKMqnAy"
 
 [scripts]
 test = "yarn run ts-mocha -t 1000000 tests/*.ts"
-
-[features]
-
-[test.validator]
-url = "https://api.mainnet-beta.solana.com"
-
-[[test.validator.clone]]
-address = "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"

+ 0 - 8
tests/spl/transfer-hook/Anchor.toml

@@ -7,11 +7,3 @@ transfer_hook = "9vaEfNU4HquQJuNQ6HYrpJW518a3n4wNUt5mAMY2UUHW"
 
 [scripts]
 test = "yarn run ts-mocha -t 1000000 tests/*.ts"
-
-[features]
-
-[test.validator]
-url = "https://api.mainnet-beta.solana.com"
-
-[[test.validator.clone]]
-address = "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"

+ 1 - 1
tests/zero-copy/programs/zero-copy/Cargo.toml

@@ -23,4 +23,4 @@ bytemuck = {version = "1.4.0", features = ["derive", "min_const_generics"]}
 
 [dev-dependencies]
 anchor-client = { path = "../../../../client", features = ["debug", "async"] }
-solana-program-test = ">=1.16, <1.18"
+solana-program-test = "1.16"

Bu fark içinde çok fazla dosya değişikliği olduğu için bazı dosyalar gösterilmiyor