Aucune description

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

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!