暫無描述

dependabot[bot] b96c85ae98 chore(deps): bump solana-instruction from 3.0.0 to 3.1.0 5 天之前
.buildkite 7659dddd30 Run merge queue tasks with higher priority (#8708) 3 周之前
.cargo 7b66701c49 ci: move xtask under ci subdir (#8544) 1 月之前
.config 360411c0e5 blockstore: Remove slow test_purge_huge (#9087) 1 周之前
.github b435b6a132 chore(deps): bump buildkite/trigger-pipeline-action from 2.4.0 to 2.4.1 (#8942) 2 周之前
account-decoder 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
account-decoder-client-types 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
accounts-cluster-bench e7af356486 Refactor: move SocketAddrSpace to net-utils to decouple from streamer (#9037) 6 天之前
accounts-db 95370a4502 Removes shrink_to_fit() in accounts index (#9026) 1 周之前
banking-bench e7af356486 Refactor: move SocketAddrSpace to net-utils to decouple from streamer (#9037) 6 天之前
banking-stage-ingress-types 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
banks-client 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
banks-interface 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
banks-server 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
bench-streamer 0adb875291 ibrl: remove tpu coalesce (#8356) 3 周之前
bench-tps e7af356486 Refactor: move SocketAddrSpace to net-utils to decouple from streamer (#9037) 6 天之前
bench-vote dac6a5fbef TPU: split staked and unstaked max_connections_per_peer (#8843) 2 周之前
bloom 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
bucket_map 0f654662c7 chore(bucket_map): switch to rand=0.9.2 (#9074) 6 天之前
builtins 58eb815ef2 remove `solana-stake-program` (#8834) 2 周之前
builtins-default-costs 58eb815ef2 remove `solana-stake-program` (#8834) 2 周之前
cargo-registry 5af914802e Move solana-logger back to agave as agave-logger (#8622) 3 周之前
ci 8fc6bff2d3 Update Rust to 1.90.0 (#8962) 1 周之前
clap-utils 28c8acc544 (Alpenglow) Add Alpenglow mode in genesis. (#8482) 3 周之前
clap-v3-utils 3377d34db0 suppress erroneous lints related to nested deprecation blocks (#8899) 2 周之前
cli b96c85ae98 chore(deps): bump solana-instruction from 3.0.0 to 3.1.0 5 天之前
cli-config 7c8c4091c9 remove public interfaces from `agave-unstable-api` (#8818) 2 周之前
cli-output 46d54f3b17 clippy: derive Default impl for enums instead of manual impl (#8792) 3 周之前
client 7c8c4091c9 remove public interfaces from `agave-unstable-api` (#8818) 2 周之前
client-test e7af356486 Refactor: move SocketAddrSpace to net-utils to decouple from streamer (#9037) 6 天之前
compute-budget f12e46b798 SIMD-0339: Increase CPI Account Infos Limit (#8513) 3 周之前
compute-budget-instruction 0f761dca1d clippy: manual_is_multiple_of (#8959) 2 周之前
connection-cache 5af914802e Move solana-logger back to agave as agave-logger (#8622) 3 周之前
core e7af356486 Refactor: move SocketAddrSpace to net-utils to decouple from streamer (#9037) 6 天之前
cost-model 926b206f77 chore: fix rust_2024_incompatible_pat warnings (#8991) 1 周之前
curves 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
dev-bins e978f80303 chore(runtime): switch to rand=0.9.2 and rand_chacha=0.9 (dev dependeny) (#9095) 5 天之前
docker-solana e19a786c83 docs: fix docker link (#6180) 6 月之前
docs 8921f0437d [docs] Use the proper rewinding lemma and fix typos in zk-docs (#8871) 2 周之前
dos e7af356486 Refactor: move SocketAddrSpace to net-utils to decouple from streamer (#9037) 6 天之前
download-utils f14ddc3714 Move SnapshotKind to agave-snapshots (#8744) 3 周之前
entry 5af914802e Move solana-logger back to agave as agave-logger (#8622) 3 周之前
faucet b96c85ae98 chore(deps): bump solana-instruction from 3.0.0 to 3.1.0 5 天之前
feature-set 0356684899 SIMD-0284: Add little-endian compatibility for alt_bn128 (#8771) 3 周之前
fee 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
fs 35c3d0ac3f add `agave-unstable-api` deprecation warning to new `agave-fs` crate (#9012) 1 周之前
genesis 58eb815ef2 remove `solana-stake-program` (#8834) 2 周之前
genesis-utils 0af564a66f Move genesis related helpers from agave-snapshots to solana_genesis_utils (#8658) 3 周之前
geyser-plugin-interface 7c8c4091c9 remove public interfaces from `agave-unstable-api` (#8818) 2 周之前
geyser-plugin-manager 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
gossip e7af356486 Refactor: move SocketAddrSpace to net-utils to decouple from streamer (#9037) 6 天之前
gossip-bin e7af356486 Refactor: move SocketAddrSpace to net-utils to decouple from streamer (#9037) 6 天之前
install 504b84503c clippy: fix mismatched_lifetime_syntaxes in monorepo (#8796) 3 周之前
io-uring a8f32fd52c chore: annotate code with unsafe blocks to fix unsafe_op_in_unsafe_fn (#9070) 6 天之前
keygen b96c85ae98 chore(deps): bump solana-instruction from 3.0.0 to 3.1.0 5 天之前
lattice-hash 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
ledger 360411c0e5 blockstore: Remove slow test_purge_huge (#9087) 1 周之前
ledger-tool e7af356486 Refactor: move SocketAddrSpace to net-utils to decouple from streamer (#9037) 6 天之前
local-cluster e7af356486 Refactor: move SocketAddrSpace to net-utils to decouple from streamer (#9037) 6 天之前
logger a604464a32 chore: Cleanup logger functions (#9067) 1 周之前
measure 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
merkle-tree 0f761dca1d clippy: manual_is_multiple_of (#8959) 2 周之前
metrics 0f761dca1d clippy: manual_is_multiple_of (#8959) 2 周之前
multinode-demo dcd98dcb63 feat(scheduler-bindings): add `--enable-scheduler-bindings` (#8850) 2 周之前
net 2018618765 Modify buildscripts to work with offline builds (e.g. nix builds) (#7811) 1 月之前
net-utils e7af356486 Refactor: move SocketAddrSpace to net-utils to decouple from streamer (#9037) 6 天之前
notifier 926b206f77 chore: fix rust_2024_incompatible_pat warnings (#8991) 1 周之前
perf 44d181a5f1 clippy: manual_is_multiple_of (#9072) 1 周之前
platform-tools-sdk 7fa5341369 Bump version to v4.0.0-alpha.0 (#8789) 3 周之前
poh 34943b03f3 fix(poh): don't process service messages if we have a record (#9047) 1 周之前
poh-bench 5af914802e Move solana-logger back to agave as agave-logger (#8622) 3 周之前
poseidon 3da465153b SIMD-0359: Enforce padding in Poseidon hash inputs (#8534) 3 周之前
precompiles 5af914802e Move solana-logger back to agave as agave-logger (#8622) 3 周之前
program-binaries 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
program-runtime 1597fffdac chore(svm): fix rust_2024_incompatible_pat warnings (#8990) 1 周之前
program-test ae15902040 clippy: use std::ptr::with_exposed_provenance_mut instead of transmute (#8794) 2 周之前
programs e978f80303 chore(runtime): switch to rand=0.9.2 and rand_chacha=0.9 (dev dependeny) (#9095) 5 天之前
pubsub-client 7c8c4091c9 remove public interfaces from `agave-unstable-api` (#8818) 2 周之前
quic-client a099fcc17a streamer: API cleanup (#8842) 2 周之前
rayon-threadlimit 3377d34db0 suppress erroneous lints related to nested deprecation blocks (#8899) 2 周之前
rbpf-cli 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
remote-wallet 46d54f3b17 clippy: derive Default impl for enums instead of manual impl (#8792) 3 周之前
reserved-account-keys 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
rpc e7af356486 Refactor: move SocketAddrSpace to net-utils to decouple from streamer (#9037) 6 天之前
rpc-client 3377d34db0 suppress erroneous lints related to nested deprecation blocks (#8899) 2 周之前
rpc-client-api 7c8c4091c9 remove public interfaces from `agave-unstable-api` (#8818) 2 周之前
rpc-client-nonce-utils 926b206f77 chore: fix rust_2024_incompatible_pat warnings (#8991) 1 周之前
rpc-client-types 7c8c4091c9 remove public interfaces from `agave-unstable-api` (#8818) 2 周之前
rpc-test e7af356486 Refactor: move SocketAddrSpace to net-utils to decouple from streamer (#9037) 6 天之前
runtime e978f80303 chore(runtime): switch to rand=0.9.2 and rand_chacha=0.9 (dev dependeny) (#9095) 5 天之前
runtime-transaction 5e23be1d91 clippy: fix mismatched_lifetime_syntaxes in tx-metadata (#8797) 3 周之前
scheduler-bindings 7bda20f4cd feat(scheduler-bindings): add drop on failure & all or nothing flags (#8878) 2 周之前
scheduling-utils 85ebde9323 feat(scheduling-utils): TransactionBatchPtr meta data (#9048) 1 周之前
scripts ffe96791dc ci: add missing coverage tests (#9025) 1 周之前
sdk d221ad4091 sdk: Remove everything from the repo (#4867) 9 月之前
send-transaction-service 5af914802e Move solana-logger back to agave as agave-logger (#8622) 3 周之前
snapshots 73af3c20aa chore: deny already satisfied edition 2024 warnings for workspace (#8989) 1 周之前
stake-accounts 58eb815ef2 remove `solana-stake-program` (#8834) 2 周之前
storage-bigtable 550789aef0 Reduce allocation and lifetimes complexity in call to get_confirmed_blocks_with_data (#9008) 1 周之前
storage-proto 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
streamer e7af356486 Refactor: move SocketAddrSpace to net-utils to decouple from streamer (#9037) 6 天之前
svm 1597fffdac chore(svm): fix rust_2024_incompatible_pat warnings (#8990) 1 周之前
svm-callback 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
svm-feature-set 0356684899 SIMD-0284: Add little-endian compatibility for alt_bn128 (#8771) 3 周之前
svm-log-collector 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
svm-measure 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
svm-rent-calculator 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
svm-test-harness fff036c486 clippy: fix and deny unsafe_attr_outside_unsafe warning for edition 2024 migration (#9011) 1 周之前
svm-timings 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
svm-transaction d215b77c44 clippy: fix mismatched_lifetime_syntaxes in svm (#8798) 3 周之前
svm-type-overrides 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
syscalls 3c8947962f chore: fix and deny unsafe-op-in-unsafe-fn for rust 2024 migration (#9018) 1 周之前
test-validator e7af356486 Refactor: move SocketAddrSpace to net-utils to decouple from streamer (#9037) 6 天之前
thread-manager 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
tls-utils 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
tokens e7af356486 Refactor: move SocketAddrSpace to net-utils to decouple from streamer (#9037) 6 天之前
tps-client 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
tpu-client 593a2aadd0 rm QUIC_PORT_OFFSET outside of gossip (#8820) 1 周之前
tpu-client-next 944d47a112 fix test_connection_denied_until_allowed (#9090) 5 天之前
transaction-context 47fd923101 suppress another erroneous nested deprecation lint (#9006) 1 周之前
transaction-dos e7af356486 Refactor: move SocketAddrSpace to net-utils to decouple from streamer (#9037) 6 天之前
transaction-metrics-tracker 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
transaction-status 504b84503c clippy: fix mismatched_lifetime_syntaxes in monorepo (#8796) 3 周之前
transaction-status-client-types 8e86c30a4e Cleanup derive attributes to list all traits in one place (#8824) 2 周之前
transaction-view a8f32fd52c chore: annotate code with unsafe blocks to fix unsafe_op_in_unsafe_fn (#9070) 6 天之前
turbine e7af356486 Refactor: move SocketAddrSpace to net-utils to decouple from streamer (#9037) 6 天之前
udp-client 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
unified-scheduler-logic a8f32fd52c chore: annotate code with unsafe blocks to fix unsafe_op_in_unsafe_fn (#9070) 6 天之前
unified-scheduler-pool 77b01e0470 Validate and expire bp unified scheduler tasks (#8664) 2 周之前
validator bb79fdb4e5 rm UDP TPU path from cli (#9092) 5 天之前
verified-packet-receiver 0adb875291 ibrl: remove tpu coalesce (#8356) 3 周之前
version 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
vortexor e7af356486 Refactor: move SocketAddrSpace to net-utils to decouple from streamer (#9037) 6 天之前
vote 63266f04e7 chore(vote): switch to rand=0.9.2 (#9071) 6 天之前
votor e7af356486 Refactor: move SocketAddrSpace to net-utils to decouple from streamer (#9037) 6 天之前
votor-messages 6d6740f350 frozen-abi: fix derives for agave-votor-messages and agave-votor (#9034) 1 周之前
watchtower 5af914802e Move solana-logger back to agave as agave-logger (#8622) 3 周之前
web3.js 18c22c7cef Add link to new web3.js repo (#30096) 2 年之前
wen-restart e7af356486 Refactor: move SocketAddrSpace to net-utils to decouple from streamer (#9037) 6 天之前
xdp 07345d33df XDP: add bond interface support for zero copy (#9004) 1 周之前
xdp-ebpf 73af3c20aa chore: deny already satisfied edition 2024 warnings for workspace (#8989) 1 周之前
zk-keygen 8508753bc9 Remove zk keygen crate (#7634) 3 月之前
zk-sdk a2ce908cfa [zk-sdk] Remove zk-sdk from the repo (#7126) 3 月之前
zk-token-sdk 0f761dca1d clippy: manual_is_multiple_of (#8959) 2 周之前
.codecov.yml 0b9c040fcf Add .codecov.yml with checks disabled (#30666) 2 年之前
.gitignore f75263b29d Script: `fetch-core-bpf.sh` (#4844) 8 月之前
.mergify.yml b210780a70 Update mergify config for v3.1 backport label (#8814) 3 周之前
CHANGELOG.md 593a2aadd0 rm QUIC_PORT_OFFSET outside of gossip (#8820) 1 周之前
CONTRIBUTING.md 8650813f1b Add a first time contributors section to CONTRIBUTING.md (#7818) 1 月之前
Cargo.lock b96c85ae98 chore(deps): bump solana-instruction from 3.0.0 to 3.1.0 5 天之前
Cargo.toml b96c85ae98 chore(deps): bump solana-instruction from 3.0.0 to 3.1.0 5 天之前
LICENSE c65605802a Correct LICENSE to conform with https://apache.org/licenses/LICENSE-2.0 (#31860) 2 年之前
README.md b4ed07a719 Fixup status badges in README.md (#8222) 1 月之前
RELEASE.md 3cd14f8254 docs: Add step to update CODEOWNERS in RELEASE.md (#8833) 2 周之前
SECURITY.md 34d8b55d4a Update security instructions for SPL programs (#8253) 1 月之前
cargo 2018618765 Modify buildscripts to work with offline builds (e.g. nix builds) (#7811) 1 月之前
cargo-build-sbf 92687e91ed BPF Loader: Hoist syscalls into their own crate (#5559) 3 月之前
cargo-test-sbf f9f73a952a sdk: Move out things that won't be in the sdk (#4624) 9 月之前
clippy.toml c3509de5be Replace lazy_static dependency (#6057) 6 月之前
fetch-core-bpf.sh ef6d141079 fetch-core-bpf: Add "v" to release name (#8195) 1 月之前
fetch-perf-libs.sh 2018618765 Modify buildscripts to work with offline builds (e.g. nix builds) (#7811) 1 月之前
fetch-programs.sh f75263b29d Script: `fetch-core-bpf.sh` (#4844) 8 月之前
fetch-spl.sh 597947830a spl: Update to newest token-2022 binary on mainnet (#5628) 7 月之前
rust-toolchain.toml 8fc6bff2d3 Update Rust to 1.90.0 (#8962) 1 周之前
rustfmt.toml 6d171f4da5 Apply cargo fmt string formatting to rest of repo (#7893) 2 月之前
vercel.json 1c36af158f removing the "autoJobCancelation": false 4 年之前

README.md

Anza

Agave validator Agave documentation Build status Release status codecov

Building

1. Install rustc, cargo and rustfmt.

$ curl https://sh.rustup.rs -sSf | sh
$ source $HOME/.cargo/env
$ rustup component add rustfmt

The rust-toolchain.toml file pins a specific rust version and ensures that cargo commands run with that version. Note that cargo will automatically install the correct version if it is not already installed.

On Linux systems you may need to install libssl-dev, pkg-config, zlib1g-dev, protobuf etc.

On Ubuntu:

$ sudo apt-get update
$ sudo apt-get install libssl-dev libudev-dev pkg-config zlib1g-dev llvm clang cmake make libprotobuf-dev protobuf-compiler libclang-dev

On Fedora:

$ sudo dnf install openssl-devel systemd-devel pkg-config zlib-devel llvm clang cmake make protobuf-devel protobuf-compiler perl-core libclang-dev

2. Download the source code.

$ git clone https://github.com/anza-xyz/agave.git
$ cd agave

3. Build.

$ ./cargo build

[!NOTE] Note that this builds a debug version that is not suitable for running a testnet or mainnet validator. Please read docs/src/cli/install.md for instructions to build a release version for test and production uses.

Testing

Run the test suite:

$ ./cargo test

Starting a local testnet

Start your own testnet locally, instructions are in the online docs.

Accessing the remote development cluster

  • devnet - stable public cluster for development accessible via devnet.solana.com. Runs 24/7. Learn more about the public clusters

Benchmarking

First, install the nightly build of rustc. cargo bench requires the use of the unstable features only available in the nightly build.

$ rustup install nightly

Run the benchmarks:

$ cargo +nightly bench

Release Process

The release process for this project is described here.

Code coverage

To generate code coverage statistics:

$ scripts/coverage.sh
$ open target/cov/lcov-local/index.html

Why coverage? While most see coverage as a code quality metric, we see it primarily as a developer productivity metric. When a developer makes a change to the codebase, presumably it's a solution to some problem. Our unit-test suite is how we encode the set of problems the codebase solves. Running the test suite should indicate that your change didn't infringe on anyone else's solutions. Adding a test protects your solution from future changes. Say you don't understand why a line of code exists, try deleting it and running the unit-tests. The nearest test failure should tell you what problem was solved by that code. If no test fails, go ahead and submit a Pull Request that asks, "what problem is solved by this code?" On the other hand, if a test does fail and you can think of a better way to solve the same problem, a Pull Request with your solution would most certainly be welcome! Likewise, if rewriting a test can better communicate what code it's protecting, please send us that patch!