暫無描述

Michal R 8dcbbd43dd runtime: Test epoch rewards cache for multiple forks (#8802) 2 周之前
.buildkite 7659dddd30 Run merge queue tasks with higher priority (#8708) 3 周之前
.cargo 7b66701c49 ci: move xtask under ci subdir (#8544) 1 月之前
.config d9638e0151 Reapply "build: move dcou-dependent bins to their own workspace (#8403)" (#8646) (#8657) 4 周之前
.github 010b8919a7 v3.1: Update CODEOWNERS to backport-reviewers (#8831) 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 5af914802e Move solana-logger back to agave as agave-logger (#8622) 3 周之前
accounts-db 99945ca72d deprecate `solana-stake-program` (#8860) 1 周之前
banking-bench 5af914802e Move solana-logger back to agave as agave-logger (#8622) 3 周之前
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 5af914802e Move solana-logger back to agave as agave-logger (#8622) 3 周之前
bench-vote f2ec733e1a Support simple QOS -- with QOS trait refactoring (#8437) 3 周之前
bloom 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
bucket_map 504b84503c clippy: fix mismatched_lifetime_syntaxes in monorepo (#8796) 3 周之前
builtins 99945ca72d deprecate `solana-stake-program` (#8860) 1 周之前
builtins-default-costs 99945ca72d deprecate `solana-stake-program` (#8860) 1 周之前
cargo-registry 5af914802e Move solana-logger back to agave as agave-logger (#8622) 3 周之前
ci 9aa699fc73 v3.1: Update xtask version to 0.1.0 since we will never publish the xtask crate (backport of #8950) (#8954) 1 周之前
clap-utils 28c8acc544 (Alpenglow) Add Alpenglow mode in genesis. (#8482) 3 周之前
clap-v3-utils db914777eb v3.1: suppress erroneous lints related to nested deprecation blocks (backport of #8899) (#8905) 2 周之前
cli 120b35249f Bump solana-accounts crate (#8754) 3 周之前
cli-config faa9c2935a v3.1: remove public interfaces from `agave-unstable-api` (backport of #8818) (#8864) 2 周之前
cli-output 46d54f3b17 clippy: derive Default impl for enums instead of manual impl (#8792) 3 周之前
client faa9c2935a v3.1: remove public interfaces from `agave-unstable-api` (backport of #8818) (#8864) 2 周之前
client-test 5af914802e Move solana-logger back to agave as agave-logger (#8622) 3 周之前
compute-budget f12e46b798 SIMD-0339: Increase CPI Account Infos Limit (#8513) 3 周之前
compute-budget-instruction 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
connection-cache 5af914802e Move solana-logger back to agave as agave-logger (#8622) 3 周之前
core 13083961ac v3.1: XDP: add bond interface support for zero copy (backport of #9004) (#9053) 4 天之前
cost-model 504b84503c clippy: fix mismatched_lifetime_syntaxes in monorepo (#8796) 3 周之前
curves 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
dev-bins b3eef94a82 Bump version to v3.1.2 (#9086) 2 天之前
docker-solana e19a786c83 docs: fix docker link (#6180) 6 月之前
docs e5f99a1bdc docs: fixed broken links (#8450) 1 月之前
dos 5af914802e Move solana-logger back to agave as agave-logger (#8622) 3 周之前
download-utils f14ddc3714 Move SnapshotKind to agave-snapshots (#8744) 3 周之前
entry 5af914802e Move solana-logger back to agave as agave-logger (#8622) 3 周之前
faucet db914777eb v3.1: suppress erroneous lints related to nested deprecation blocks (backport of #8899) (#8905) 2 周之前
feature-set 0da9819405 SIMD-0266: Efficient Token program (#7125) 3 周之前
fee 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
fs c45dee2772 v3.1: add `agave-unstable-api` deprecation warning to new `agave-fs` crate (backport of #9012) (#9016) 1 周之前
genesis 99945ca72d deprecate `solana-stake-program` (#8860) 1 周之前
genesis-utils 0af564a66f Move genesis related helpers from agave-snapshots to solana_genesis_utils (#8658) 3 周之前
geyser-plugin-interface faa9c2935a v3.1: remove public interfaces from `agave-unstable-api` (backport of #8818) (#8864) 2 周之前
geyser-plugin-manager 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
gossip db914777eb v3.1: suppress erroneous lints related to nested deprecation blocks (backport of #8899) (#8905) 2 周之前
install 504b84503c clippy: fix mismatched_lifetime_syntaxes in monorepo (#8796) 3 周之前
io-uring 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
keygen 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
lattice-hash 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
ledger 99945ca72d deprecate `solana-stake-program` (#8860) 1 周之前
ledger-tool 99945ca72d deprecate `solana-stake-program` (#8860) 1 周之前
local-cluster 99945ca72d deprecate `solana-stake-program` (#8860) 1 周之前
logger 8d1b74edf6 logger: Update functions to take PathBuf/Path (#8726) 3 周之前
measure 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
merkle-tree 504b84503c clippy: fix mismatched_lifetime_syntaxes in monorepo (#8796) 3 周之前
metrics 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
multinode-demo d9638e0151 Reapply "build: move dcou-dependent bins to their own workspace (#8403)" (#8646) (#8657) 4 周之前
net 2018618765 Modify buildscripts to work with offline builds (e.g. nix builds) (#7811) 1 月之前
net-utils db914777eb v3.1: suppress erroneous lints related to nested deprecation blocks (backport of #8899) (#8905) 2 周之前
notifier 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
perf 504b84503c clippy: fix mismatched_lifetime_syntaxes in monorepo (#8796) 3 周之前
platform-tools-sdk b3eef94a82 Bump version to v3.1.2 (#9086) 2 天之前
poh 864843df49 add ProgressMessage::leader_state (#8788) 3 周之前
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 d215b77c44 clippy: fix mismatched_lifetime_syntaxes in svm (#8798) 3 周之前
program-test 99945ca72d deprecate `solana-stake-program` (#8860) 1 周之前
programs b3eef94a82 Bump version to v3.1.2 (#9086) 2 天之前
pubsub-client faa9c2935a v3.1: remove public interfaces from `agave-unstable-api` (backport of #8818) (#8864) 2 周之前
quic-client f2ec733e1a Support simple QOS -- with QOS trait refactoring (#8437) 3 周之前
rayon-threadlimit db914777eb v3.1: suppress erroneous lints related to nested deprecation blocks (backport of #8899) (#8905) 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 99945ca72d deprecate `solana-stake-program` (#8860) 1 周之前
rpc-client db914777eb v3.1: suppress erroneous lints related to nested deprecation blocks (backport of #8899) (#8905) 2 周之前
rpc-client-api faa9c2935a v3.1: remove public interfaces from `agave-unstable-api` (backport of #8818) (#8864) 2 周之前
rpc-client-nonce-utils faa9c2935a v3.1: remove public interfaces from `agave-unstable-api` (backport of #8818) (#8864) 2 周之前
rpc-client-types faa9c2935a v3.1: remove public interfaces from `agave-unstable-api` (backport of #8818) (#8864) 2 周之前
rpc-test 5af914802e Move solana-logger back to agave as agave-logger (#8622) 3 周之前
runtime 8dcbbd43dd runtime: Test epoch rewards cache for multiple forks (#8802) 2 天之前
runtime-transaction 5e23be1d91 clippy: fix mismatched_lifetime_syntaxes in tx-metadata (#8797) 3 周之前
scheduler-bindings 864843df49 add ProgressMessage::leader_state (#8788) 3 周之前
scheduling-utils 864843df49 add ProgressMessage::leader_state (#8788) 3 周之前
scripts 9aa699fc73 v3.1: Update xtask version to 0.1.0 since we will never publish the xtask crate (backport of #8950) (#8954) 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 edf68b8338 Add test for genesis unpack size limit (#8800) 3 周之前
stake-accounts 99945ca72d deprecate `solana-stake-program` (#8860) 1 周之前
storage-bigtable 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
storage-proto 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
streamer 217ff3cd72 Streamer: cleanup API after QoS refactoring (#8724) 3 周之前
svm b3eef94a82 Bump version to v3.1.2 (#9086) 2 天之前
svm-callback 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
svm-feature-set 74ee02a474 SIMD-0344: fix alt_bn128 pairing length check (#8747) 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 c3968171d2 Use .keys() instead of .iter().map(..strip values) (#8566) 3 周之前
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 74ee02a474 SIMD-0344: fix alt_bn128 pairing length check (#8747) 3 周之前
test-validator f12e46b798 SIMD-0339: Increase CPI Account Infos Limit (#8513) 3 周之前
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 5af914802e Move solana-logger back to agave as agave-logger (#8622) 3 周之前
tps-client 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
tpu-client 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
tpu-client-next f2ec733e1a Support simple QOS -- with QOS trait refactoring (#8437) 3 周之前
transaction-context 06c77fcf3a v3.1: suppress another erroneous nested deprecation lint (backport of #9006) (#9029) 1 周之前
transaction-dos 5af914802e Move solana-logger back to agave as agave-logger (#8622) 3 周之前
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 46d54f3b17 clippy: derive Default impl for enums instead of manual impl (#8792) 3 周之前
transaction-view 5e23be1d91 clippy: fix mismatched_lifetime_syntaxes in tx-metadata (#8797) 3 周之前
turbine 13083961ac v3.1: XDP: add bond interface support for zero copy (backport of #9004) (#9053) 4 天之前
udp-client 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
unified-scheduler-logic 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
unified-scheduler-pool 5af914802e Move solana-logger back to agave as agave-logger (#8622) 3 周之前
validator f664622563 v3.1: deprecate the --cuda cli argument (backport of #9055) (#9066) 1 周之前
verified-packet-receiver 0adb875291 ibrl: remove tpu coalesce (#8356) 3 周之前
version 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
vortexor 8d1b74edf6 logger: Update functions to take PathBuf/Path (#8726) 3 周之前
vote c5001c1ad8 v3.1: Optimize LockoutIntervals in collect_vote_lockouts (backport of #8865) (#8965) 1 周之前
votor 88b7fc9114 refactor: fix some fragile code in `CertificateBuilder` (#8772) 3 周之前
votor-messages 61165f958c nit: refactor: remove accessor functions on simple vote types (#8725) 3 周之前
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 e65003def4 Move snapshot_archive_info to agave-snapshots (#8721) 3 周之前
xdp 13083961ac v3.1: XDP: add bond interface support for zero copy (backport of #9004) (#9053) 4 天之前
xdp-ebpf eb96d19f13 v3.1: agave-xdp-ebpf: fix package includes (backport of #8854) (#8868) 2 周之前
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 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) 1 月之前
.codecov.yml 0b9c040fcf Add .codecov.yml with checks disabled (#30666) 2 年之前
.gitignore f75263b29d Script: `fetch-core-bpf.sh` (#4844) 8 月之前
.mergify.yml 8508753bc9 Remove zk keygen crate (#7634) 3 月之前
CHANGELOG.md 13083961ac v3.1: XDP: add bond interface support for zero copy (backport of #9004) (#9053) 4 天之前
CONTRIBUTING.md 8650813f1b Add a first time contributors section to CONTRIBUTING.md (#7818) 1 月之前
Cargo.lock b3eef94a82 Bump version to v3.1.2 (#9086) 2 天之前
Cargo.toml b3eef94a82 Bump version to v3.1.2 (#9086) 2 天之前
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 d060c30b5e Update RELEASE.md (#1901) 1 年之前
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 b3fca5dd51 Downgrade Rust to 1.86.0 (#6980) 4 月之前
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!