Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: solana-labs/solana
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v1.18.7
Choose a base ref
...
head repository: solana-labs/solana
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v1.18
Choose a head ref
Loading
Showing with 6,714 additions and 3,023 deletions.
  1. +1 −0 .github/CODEOWNERS
  2. +2 −1 .github/scripts/downstream-project-spl-common.sh
  3. +9 −0 .github/workflows/downstream-project-spl.yml
  4. +38 −0 .github/workflows/release.yml
  5. +1 −0 CHANGELOG.md
  6. +128 −125 Cargo.lock
  7. +107 −92 Cargo.toml
  8. +11 −2 accounts-db/src/accounts_db.rs
  9. +7 −3 accounts-db/src/accounts_hash.rs
  10. +20 −18 accounts-db/src/accounts_index.rs
  11. +1 −0 bench-streamer/src/main.rs
  12. +14 −0 ci/do-audit.sh
  13. +1 −1 ci/rust-version.sh
  14. +1 −0 cli/Cargo.toml
  15. +1 −1 cli/src/cli.rs
  16. +461 −93 cli/src/program.rs
  17. +49 −24 cli/src/stake.rs
  18. +303 −34 cli/tests/program.rs
  19. +59 −54 cli/tests/stake.rs
  20. +3 −1 client/src/connection_cache.rs
  21. +110 −79 client/src/send_and_confirm_transactions_in_parallel.rs
  22. +1 −0 core/Cargo.toml
  23. +1 −1 core/src/banking_stage.rs
  24. +0 −1 core/src/banking_stage/consume_worker.rs
  25. +14 −12 core/src/banking_stage/consumer.rs
  26. +0 −1 core/src/banking_stage/forward_worker.rs
  27. +3 −2 core/src/banking_stage/forwarder.rs
  28. +42 −4 core/src/banking_stage/immutable_deserialized_packet.rs
  29. +82 −43 core/src/banking_stage/leader_slot_metrics.rs
  30. +95 −19 core/src/banking_stage/packet_deserializer.rs
  31. +55 −0 core/src/banking_stage/packet_filter.rs
  32. +7 −6 core/src/banking_stage/packet_receiver.rs
  33. +35 −18 core/src/banking_stage/transaction_scheduler/prio_graph_scheduler.rs
  34. +73 −18 core/src/banking_stage/transaction_scheduler/scheduler_controller.rs
  35. +38 −60 core/src/banking_stage/transaction_scheduler/transaction_state.rs
  36. +11 −33 core/src/banking_stage/transaction_scheduler/transaction_state_container.rs
  37. +30 −20 core/src/consensus.rs
  38. +1 −1 core/src/consensus/progress_map.rs
  39. +3 −0 core/src/fetch_stage.rs
  40. +28 −0 core/src/next_leader.rs
  41. +3 −0 core/src/repair/ancestor_hashes_service.rs
  42. +1 −1 core/src/repair/repair_generic_traversal.rs
  43. +1 −0 core/src/repair/repair_weight.rs
  44. +2 −2 core/src/repair/serve_repair.rs
  45. +1 −0 core/src/repair/serve_repair_service.rs
  46. +475 −35 core/src/replay_stage.rs
  47. +2 −176 core/src/shred_fetch_stage.rs
  48. +3 −1 core/src/tpu.rs
  49. +17 −12 core/src/tvu.rs
  50. +1 −2 core/src/validator.rs
  51. +22 −6 core/src/voting_service.rs
  52. +23 −0 core/src/window_service.rs
  53. +184 −36 cost-model/src/cost_model.rs
  54. +4 −0 genesis/src/stakes.rs
  55. +101 −17 gossip/src/cluster_info.rs
  56. +11 −0 gossip/src/cluster_info_metrics.rs
  57. +12 −7 gossip/src/contact_info.rs
  58. +8 −4 gossip/src/crds.rs
  59. +2 −0 gossip/src/crds_gossip.rs
  60. +1 −1 gossip/src/crds_value.rs
  61. +169 −51 gossip/src/duplicate_shred.rs
  62. +22 −3 gossip/src/duplicate_shred_handler.rs
  63. +1 −0 gossip/src/gossip_service.rs
  64. +152 −60 gossip/src/weighted_shuffle.rs
  65. +6 −74 install/src/command.rs
  66. +5 −0 install/src/main.rs
  67. +1 −1 ledger-tool/src/ledger_utils.rs
  68. +13 −11 ledger-tool/src/program.rs
  69. +1 −0 ledger/Cargo.toml
  70. +1,025 −39 ledger/src/blockstore.rs
  71. +2 −0 ledger/src/blockstore_db.rs
  72. +68 −6 ledger/src/blockstore_meta.rs
  73. +5 −0 ledger/src/blockstore_processor.rs
  74. +1 −0 ledger/src/leader_schedule_cache.rs
  75. +301 −182 ledger/src/shred.rs
  76. +71 −18 ledger/src/shred/merkle.rs
  77. +7 −0 ledger/src/shred/shred_code.rs
  78. +7 −0 ledger/src/shred/shred_data.rs
  79. +12 −12 ledger/src/shred/stats.rs
  80. +14 −8 ledger/src/shredder.rs
  81. +44 −12 local-cluster/src/local_cluster.rs
  82. +1 −0 local-cluster/tests/local_cluster.rs
  83. +51 −53 poh/src/poh_recorder.rs
  84. +1 −4 poh/src/poh_service.rs
  85. +40 −9 program-runtime/src/invoke_context.rs
  86. +116 −25 program-runtime/src/loaded_programs.rs
  87. +8 −8 program-runtime/src/message_processor.rs
  88. +8 −16 program-test/src/lib.rs
  89. +10 −12 programs/address-lookup-table/src/processor.rs
  90. +6 −43 programs/bpf_loader/benches/serialization.rs
  91. +83 −137 programs/bpf_loader/src/lib.rs
  92. +22 −43 programs/bpf_loader/src/serialization.rs
  93. +27 −57 programs/bpf_loader/src/syscalls/cpi.rs
  94. +66 −7 programs/bpf_loader/src/syscalls/mod.rs
  95. +1 −1 programs/config/src/config_processor.rs
  96. +21 −18 programs/loader-v4/src/lib.rs
  97. +134 −132 programs/sbf/Cargo.lock
  98. +25 −25 programs/sbf/Cargo.toml
  99. +2 −8 programs/sbf/benches/bpf_loader.rs
  100. +23 −0 programs/sbf/rust/sanity/src/lib.rs
  101. +1 −1 programs/sbf/tests/programs.rs
  102. +4 −33 programs/stake/src/stake_instruction.rs
  103. +37 −68 programs/stake/src/stake_state.rs
  104. +7 −15 programs/system/src/system_instruction.rs
  105. +55 −7 programs/system/src/system_processor.rs
  106. +86 −44 programs/vote/src/vote_state/mod.rs
  107. +5 −9 programs/zk-token-proof/src/lib.rs
  108. +14 −3 quic-client/tests/quic_client.rs
  109. +12 −0 rpc-client-api/src/custom_error.rs
  110. +1 −2 rpc-client-api/src/filter.rs
  111. +4 −0 rpc-client-api/src/request.rs
  112. +10 −0 rpc-client-api/src/response.rs
  113. +5 −0 rpc-client/src/mock_sender.rs
  114. +7 −0 rpc-client/src/nonblocking/rpc_client.rs
  115. +7 −0 rpc-client/src/rpc_client.rs
  116. +0 −1 rpc/src/cluster_tpu_info.rs
  117. +51 −3 rpc/src/rpc.rs
  118. +4 −10 runtime/src/accounts/mod.rs
  119. +79 −79 runtime/src/bank.rs
  120. +261 −75 runtime/src/bank/tests.rs
  121. +1 −0 runtime/src/snapshot_package.rs
  122. +12 −2 scripts/increment-cargo-version.sh
  123. +1 −1 scripts/spl-token-cli-version.sh
  124. +3 −3 sdk/bpf/scripts/install.sh
  125. +1 −1 sdk/cargo-build-sbf/src/main.rs
  126. +2 −2 sdk/cargo-build-sbf/tests/crates/fail/Cargo.toml
  127. +2 −2 sdk/cargo-build-sbf/tests/crates/noop/Cargo.toml
  128. +1 −1 sdk/docker-solana/Dockerfile
  129. +1 −0 sdk/macro/src/lib.rs
  130. +1 −1 sdk/program/Cargo.toml
  131. +16 −10 sdk/program/src/alt_bn128/compression.rs
  132. +7 −4 sdk/program/src/alt_bn128/mod.rs
  133. +1 −1 sdk/program/src/epoch_schedule.rs
  134. +3 −1 sdk/program/src/poseidon.rs
  135. +1 −1 sdk/program/src/pubkey.rs
  136. +1 −1 sdk/program/src/rent.rs
  137. +11 −3 sdk/program/src/vote/state/mod.rs
  138. +1 −1 sdk/sbf/c/sbf.mk
  139. +2 −2 sdk/sbf/scripts/install.sh
  140. +1 −90 sdk/src/account.rs
  141. +17 −6 sdk/src/feature_set.rs
  142. +12 −0 sdk/src/packet.rs
  143. +27 −69 sdk/src/transaction_context.rs
  144. +18 −4 send-transaction-service/src/send_transaction_service.rs
  145. +1 −0 streamer/Cargo.toml
  146. +145 −46 streamer/src/nonblocking/quic.rs
  147. +52 −31 streamer/src/nonblocking/stream_throttle.rs
  148. +46 −11 streamer/src/quic.rs
  149. +8 −1 streamer/src/streamer.rs
  150. +71 −4 test-validator/src/lib.rs
  151. +5 −1 tpu-client/src/tpu_client.rs
  152. +3 −0 transaction-dos/src/main.rs
  153. +3 −2 turbine/benches/cluster_nodes.rs
  154. +2 −0 turbine/src/broadcast_stage.rs
  155. +5 −3 turbine/src/broadcast_stage/broadcast_duplicates_run.rs
  156. +0 −9 turbine/src/broadcast_stage/broadcast_utils.rs
  157. +161 −189 turbine/src/broadcast_stage/standard_broadcast_run.rs
  158. +81 −23 turbine/src/cluster_nodes.rs
  159. +16 −0 validator/src/cli.rs
  160. +30 −5 validator/src/main.rs
1 change: 1 addition & 0 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
* @anza-xyz/backport-reviewers @anza-xyz/releng
3 changes: 2 additions & 1 deletion .github/scripts/downstream-project-spl-common.sh
Original file line number Diff line number Diff line change
@@ -8,7 +8,7 @@ source "$here"/../../ci/downstream-projects/common.sh

set -x
rm -rf spl
git clone https://github.com/solana-labs/solana-program-library.git spl
git clone https://github.com/solana-labs/solana-program-library.git spl -b v1.18

# copy toolchain file to use solana's rust version
cp "$SOLANA_DIR"/rust-toolchain.toml spl/
@@ -18,6 +18,7 @@ project_used_solana_version=$(sed -nE 's/solana-sdk = \"[>=<~]*(.*)\"/\1/p' <"to
echo "used solana version: $project_used_solana_version"
if semverGT "$project_used_solana_version" "$SOLANA_VER"; then
echo "skip"
export SKIP_SPL_DOWNSTREAM_PROJECT_TEST=1
return
fi

9 changes: 9 additions & 0 deletions .github/workflows/downstream-project-spl.yml
Original file line number Diff line number Diff line change
@@ -54,6 +54,9 @@ jobs:
run: |
source .github/scripts/downstream-project-spl-common.sh
source .github/scripts/downstream-project-spl-install-deps.sh
if [ -n "$SKIP_SPL_DOWNSTREAM_PROJECT_TEST" ]; then
exit 0
fi
cargo check
@@ -103,6 +106,9 @@ jobs:
run: |
source .github/scripts/downstream-project-spl-common.sh
source .github/scripts/downstream-project-spl-install-deps.sh
if [ -n "$SKIP_SPL_DOWNSTREAM_PROJECT_TEST" ]; then
exit 0
fi
programStr="${{ tojson(matrix.arrays.required_programs) }}"
IFS=', ' read -ra programs <<<"${programStr//[\[\]$'\n'$'\r' ]/}"
@@ -153,6 +159,9 @@ jobs:
- shell: bash
run: |
source .github/scripts/downstream-project-spl-common.sh
if [ -n "$SKIP_SPL_DOWNSTREAM_PROJECT_TEST" ]; then
exit 0
fi
programStr="${{ tojson(matrix.programs) }}"
IFS=', ' read -ra programs <<<"${programStr//[\[\]$'\n'$'\r' ]/}"
38 changes: 38 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
name: Release

on:
push:
tags:
- "*"

jobs:
trigger-buildkite-pipeline:
runs-on: ubuntu-latest
steps:
- name: Trigger a Buildkite Build
uses: "buildkite/trigger-pipeline-action@v2.0.0"
with:
buildkite_api_access_token: ${{ secrets.TRIGGER_BK_BUILD_TOKEN }}
pipeline: "solana-labs/solana-secondary"
branch: "${{ github.ref_name }}"
build_env_vars: '{"TRIGGERED_BUILDKITE_TAG": "${{ github.ref_name }}"}'
commit: "HEAD"
message: ":github: Triggered from a GitHub Action"

draft-release:
runs-on: ubuntu-latest
steps:
- name: Create Release
uses: actions/github-script@v7
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
script: |
github.rest.repos.createRelease({
owner: context.repo.owner,
repo: context.repo.repo,
tag_name: '${{ github.ref_name }}',
name: 'Release ${{ github.ref_name }}',
body: '🚧',
draft: false,
prerelease: true
})
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -34,6 +34,7 @@ Release channels have their own copy of this changelog:
* New program deployments default to the exact size of a program, instead of
double the size. Program accounts must be extended with `solana program extend`
before an upgrade if they need to accommodate larger programs.
* CLI: Can specify `--with-compute-unit-price`, `--max-sign-attempts`, and `--use-rpc` during program deployment
* Upgrade Notes
* `solana-program` and `solana-sdk` default to support for Borsh v1, with
limited backward compatibility for v0.10 and v0.9. Please upgrade to Borsh v1.
Loading