Sen descrición

Will Hickey 962f17ee6f Update docs that reference Solana Labs in roles that have been taken over by Anza (#9219) hai 7 horas
.buildkite 7659dddd30 Run merge queue tasks with higher priority (#8708) hai 3 semanas
.cargo 7b66701c49 ci: move xtask under ci subdir (#8544) hai 1 mes
.config 360411c0e5 blockstore: Remove slow test_purge_huge (#9087) hai 1 semana
.github 8a969f8d6b chore(deps): bump actions/checkout from 5 to 6 (#9201) hai 17 horas
account-decoder 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) hai 1 mes
account-decoder-client-types 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) hai 1 mes
accounts-cluster-bench bc457203aa Update solana-gossip spy to support multiple entrypoints (#7060) hai 2 días
accounts-db 771fa68a0d accounts-db: Remove remove_dead_slots_metadata counter (#9187) hai 9 horas
banking-bench afb60f70a5 chore: Fix typos (#8681) hai 3 días
banking-stage-ingress-types 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) hai 1 mes
banks-client 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) hai 1 mes
banks-interface 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) hai 1 mes
banks-server 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) hai 1 mes
bench-streamer 4f08cb9585 delet gpu code (#8967) hai 4 días
bench-tps 6a8374ca50 remove connection-cache for TPU txs from validator (#9099) hai 1 día
bench-vote 432d810d94 streamer: refactor config structs (#9093) hai 3 días
bloom 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) hai 1 mes
bucket_map afb60f70a5 chore: Fix typos (#8681) hai 3 días
builtins 58eb815ef2 remove `solana-stake-program` (#8834) hai 2 semanas
builtins-default-costs afb60f70a5 chore: Fix typos (#8681) hai 3 días
cargo-registry 27b7339dfc Nonblocking RPC for cli (#8687) hai 1 día
ci 2d29308e6d chore(deps): bump bytes from 1.10.1 to 1.11.0 (#9174) hai 1 día
clap-utils 28c8acc544 (Alpenglow) Add Alpenglow mode in genesis. (#8482) hai 3 semanas
clap-v3-utils 3377d34db0 suppress erroneous lints related to nested deprecation blocks (#8899) hai 2 semanas
cli 27b7339dfc Nonblocking RPC for cli (#8687) hai 1 día
cli-config 7c8c4091c9 remove public interfaces from `agave-unstable-api` (#8818) hai 2 semanas
cli-output 46d54f3b17 clippy: derive Default impl for enums instead of manual impl (#8792) hai 3 semanas
client 7c8c4091c9 remove public interfaces from `agave-unstable-api` (#8818) hai 2 semanas
client-test e7af356486 Refactor: move SocketAddrSpace to net-utils to decouple from streamer (#9037) hai 6 días
compute-budget f12e46b798 SIMD-0339: Increase CPI Account Infos Limit (#8513) hai 3 semanas
compute-budget-instruction 5f99ddfdb2 feat(svm): split out static elements of `SVMMessage` (#9001) hai 4 días
connection-cache 5af914802e Move solana-logger back to agave as agave-logger (#8622) hai 3 semanas
core da03d1be01 Use rlim_t instead of u64 which breaks build on some OS's (#9194) hai 7 horas
cost-model afb60f70a5 chore: Fix typos (#8681) hai 3 días
curves afb60f70a5 chore: Fix typos (#8681) hai 3 días
dev-bins 934ede0829 chore(deps): bump rustls from 0.23.34 to 0.23.35 (#9206) hai 17 horas
docker-solana e19a786c83 docs: fix docker link (#6180) hai 6 meses
docs 962f17ee6f Update docs that reference Solana Labs in roles that have been taken over by Anza (#9219) hai 7 horas
dos bc457203aa Update solana-gossip spy to support multiple entrypoints (#7060) hai 2 días
download-utils cc6eedd6ba Splitting snapshot type into snapshot type and snapshot archive type (#9050) hai 4 días
entry cfc447b98b chore: Move rand to dev-dependency for solana-entry (#9193) hai 1 día
faucet 5e9bc2312b bump solana-transaction to 3.0.2, solana-hash to 3.1.0, solana-sha256-hasher to 3.1.0 (#9145) hai 1 día
feature-set afb60f70a5 chore: Fix typos (#8681) hai 3 días
fee 1538a5d782 feat(cost): compute cost without needing ALTs (#9110) hai 4 días
fs 35c3d0ac3f add `agave-unstable-api` deprecation warning to new `agave-fs` crate (#9012) hai 1 semana
genesis 58eb815ef2 remove `solana-stake-program` (#8834) hai 2 semanas
genesis-utils 0af564a66f Move genesis related helpers from agave-snapshots to solana_genesis_utils (#8658) hai 3 semanas
geyser-plugin-interface 7c8c4091c9 remove public interfaces from `agave-unstable-api` (#8818) hai 2 semanas
geyser-plugin-manager 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) hai 1 mes
gossip ba3d045d65 Remove generic type from WeightedShuffle forcing it to u64 (#9147) hai 1 día
gossip-bin bc457203aa Update solana-gossip spy to support multiple entrypoints (#7060) hai 2 días
install 5e9bc2312b bump solana-transaction to 3.0.2, solana-hash to 3.1.0, solana-sha256-hasher to 3.1.0 (#9145) hai 1 día
io-uring a8f32fd52c chore: annotate code with unsafe blocks to fix unsafe_op_in_unsafe_fn (#9070) hai 6 días
keygen 0f761dca1d clippy: manual_is_multiple_of (#8959) hai 2 semanas
lattice-hash 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) hai 1 mes
ledger 108e72547a blockstore: Chain merkle root for slot 0 to genesis hash (#9163) hai 13 horas
ledger-tool dfe2a34904 ledger-tool: Add --log arg to support logfile (#9065) hai 13 horas
local-cluster 6a8374ca50 remove connection-cache for TPU txs from validator (#9099) hai 1 día
logger a604464a32 chore: Cleanup logger functions (#9067) hai 1 semana
measure 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) hai 1 mes
merkle-tree 0f761dca1d clippy: manual_is_multiple_of (#8959) hai 2 semanas
metrics afb60f70a5 chore: Fix typos (#8681) hai 3 días
multinode-demo 0d664e9d6c remove GPU from docs and scripts (#9076) hai 4 días
net 0d664e9d6c remove GPU from docs and scripts (#9076) hai 4 días
net-utils e8cbabe410 Streamer: transition SimpleQos to TokenBucket (#8896) hai 10 horas
notifier 926b206f77 chore: fix rust_2024_incompatible_pat warnings (#8991) hai 1 semana
perf 54d95e1a8d Support send client pubkey (#8836) hai 2 días
platform-tools-sdk 7fa5341369 Bump version to v4.0.0-alpha.0 (#8789) hai 3 semanas
poh afb60f70a5 chore: Fix typos (#8681) hai 3 días
poh-bench 4f08cb9585 delet gpu code (#8967) hai 4 días
poseidon 3da465153b SIMD-0359: Enforce padding in Poseidon hash inputs (#8534) hai 3 semanas
precompiles 5af914802e Move solana-logger back to agave as agave-logger (#8622) hai 3 semanas
program-binaries 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) hai 1 mes
program-runtime 4adc658db1 Use u16 for deduplication map (#9132) hai 12 horas
program-test ae15902040 clippy: use std::ptr::with_exposed_provenance_mut instead of transmute (#8794) hai 2 semanas
programs 934ede0829 chore(deps): bump rustls from 0.23.34 to 0.23.35 (#9206) hai 17 horas
pubsub-client 7c8c4091c9 remove public interfaces from `agave-unstable-api` (#8818) hai 2 semanas
quic-client afb60f70a5 chore: Fix typos (#8681) hai 3 días
rayon-threadlimit 3377d34db0 suppress erroneous lints related to nested deprecation blocks (#8899) hai 2 semanas
rbpf-cli 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) hai 1 mes
remote-wallet 46d54f3b17 clippy: derive Default impl for enums instead of manual impl (#8792) hai 3 semanas
reserved-account-keys 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) hai 1 mes
rpc afb60f70a5 chore: Fix typos (#8681) hai 3 días
rpc-client afb60f70a5 chore: Fix typos (#8681) hai 3 días
rpc-client-api 7c8c4091c9 remove public interfaces from `agave-unstable-api` (#8818) hai 2 semanas
rpc-client-nonce-utils 926b206f77 chore: fix rust_2024_incompatible_pat warnings (#8991) hai 1 semana
rpc-client-types 7c8c4091c9 remove public interfaces from `agave-unstable-api` (#8818) hai 2 semanas
rpc-test e7af356486 Refactor: move SocketAddrSpace to net-utils to decouple from streamer (#9037) hai 6 días
runtime aa5ef42e04 Remove unused block_height field (#9195) hai 11 horas
runtime-transaction 43e34eee2e feat(runtime-transaction): support borrowed sanitized views (#9190) hai 7 horas
scheduler-bindings afb60f70a5 chore: Fix typos (#8681) hai 3 días
scheduling-utils 8e68644319 feat(scheduling-utils): add `from_raw_parts` for pointers (#9209) hai 8 horas
scripts c832757d6f ci: remove outdated scripts/coverage-in-disk.sh (#9179) hai 1 día
sdk d221ad4091 sdk: Remove everything from the repo (#4867) hai 9 meses
send-transaction-service 5af914802e Move solana-logger back to agave as agave-logger (#8622) hai 3 semanas
snapshots afb60f70a5 chore: Fix typos (#8681) hai 3 días
stake-accounts 58eb815ef2 remove `solana-stake-program` (#8834) hai 2 semanas
storage-bigtable 550789aef0 Reduce allocation and lifetimes complexity in call to get_confirmed_blocks_with_data (#9008) hai 1 semana
storage-proto f370f916ac chore(deps): bump solana-instruction-error from 2.0.0 to 2.1.0 (#9043) hai 2 días
streamer e8cbabe410 Streamer: transition SimpleQos to TokenBucket (#8896) hai 10 horas
svm abcf518f40 runtime: resolve compute budget in `check_transaction()` (#9155) hai 22 horas
svm-callback 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) hai 1 mes
svm-feature-set 0356684899 SIMD-0284: Add little-endian compatibility for alt_bn128 (#8771) hai 3 semanas
svm-log-collector 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) hai 1 mes
svm-measure 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) hai 1 mes
svm-rent-calculator 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) hai 1 mes
svm-test-harness fff036c486 clippy: fix and deny unsafe_attr_outside_unsafe warning for edition 2024 migration (#9011) hai 1 semana
svm-timings 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) hai 1 mes
svm-transaction 5f99ddfdb2 feat(svm): split out static elements of `SVMMessage` (#9001) hai 4 días
svm-type-overrides 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) hai 1 mes
syscalls 3c8947962f chore: fix and deny unsafe-op-in-unsafe-fn for rust 2024 migration (#9018) hai 1 semana
test-validator 27b7339dfc Nonblocking RPC for cli (#8687) hai 1 día
thread-manager 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) hai 1 mes
tls-utils 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) hai 1 mes
tokens e7af356486 Refactor: move SocketAddrSpace to net-utils to decouple from streamer (#9037) hai 6 días
tps-client 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) hai 1 mes
tpu-client 6a8374ca50 remove connection-cache for TPU txs from validator (#9099) hai 1 día
tpu-client-next afb60f70a5 chore: Fix typos (#8681) hai 3 días
transaction-context 4adc658db1 Use u16 for deduplication map (#9132) hai 12 horas
transaction-dos 27b7339dfc Nonblocking RPC for cli (#8687) hai 1 día
transaction-metrics-tracker 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) hai 1 mes
transaction-status 504b84503c clippy: fix mismatched_lifetime_syntaxes in monorepo (#8796) hai 3 semanas
transaction-status-client-types 8e86c30a4e Cleanup derive attributes to list all traits in one place (#8824) hai 2 semanas
transaction-view 43e34eee2e feat(runtime-transaction): support borrowed sanitized views (#9190) hai 7 horas
turbine ba3d045d65 Remove generic type from WeightedShuffle forcing it to u64 (#9147) hai 1 día
udp-client 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) hai 1 mes
unified-scheduler-logic a8f32fd52c chore: annotate code with unsafe blocks to fix unsafe_op_in_unsafe_fn (#9070) hai 6 días
unified-scheduler-pool 35f53334b1 fix: re-enable test_scheduler_drop_idle by resolving race condition (#9042) hai 2 días
validator 6a8374ca50 remove connection-cache for TPU txs from validator (#9099) hai 1 día
verified-packet-receiver afb60f70a5 chore: Fix typos (#8681) hai 3 días
version 1921bd3bf3 gossip: add additional reserved client identifiers (#8980) hai 4 días
vortexor f85f1af6bb chore: Remove unused rand dep from vortexor (#9192) hai 1 día
vote 89ae1969d5 ci: improve frozen abi test (#9044) hai 5 días
votor 98c168ed6c refactor: update `certificate_limits_and_vote_types()` (#9082) hai 2 días
votor-messages 6d6740f350 frozen-abi: fix derives for agave-votor-messages and agave-votor (#9034) hai 1 semana
watchtower 5e9bc2312b bump solana-transaction to 3.0.2, solana-hash to 3.1.0, solana-sha256-hasher to 3.1.0 (#9145) hai 1 día
web3.js 18c22c7cef Add link to new web3.js repo (#30096) %!s(int64=2) %!d(string=hai) anos
wen-restart afb60f70a5 chore: Fix typos (#8681) hai 3 días
xdp 07345d33df XDP: add bond interface support for zero copy (#9004) hai 1 semana
xdp-ebpf afb60f70a5 chore: Fix typos (#8681) hai 3 días
zk-keygen 8508753bc9 Remove zk keygen crate (#7634) hai 3 meses
zk-sdk a2ce908cfa [zk-sdk] Remove zk-sdk from the repo (#7126) hai 3 meses
zk-token-sdk afb60f70a5 chore: Fix typos (#8681) hai 3 días
.codecov.yml 0b9c040fcf Add .codecov.yml with checks disabled (#30666) %!s(int64=2) %!d(string=hai) anos
.gitignore f75263b29d Script: `fetch-core-bpf.sh` (#4844) hai 8 meses
.mergify.yml b210780a70 Update mergify config for v3.1 backport label (#8814) hai 3 semanas
CHANGELOG.md 6045e25cc0 docs: Add step to update CHANGELOG.md in RELEASE.md (#8856) hai 2 días
CONTRIBUTING.md 962f17ee6f Update docs that reference Solana Labs in roles that have been taken over by Anza (#9219) hai 7 horas
Cargo.lock 934ede0829 chore(deps): bump rustls from 0.23.34 to 0.23.35 (#9206) hai 17 horas
Cargo.toml 934ede0829 chore(deps): bump rustls from 0.23.34 to 0.23.35 (#9206) hai 17 horas
LICENSE c65605802a Correct LICENSE to conform with https://apache.org/licenses/LICENSE-2.0 (#31860) %!s(int64=2) %!d(string=hai) anos
README.md b4ed07a719 Fixup status badges in README.md (#8222) hai 1 mes
RELEASE.md 6045e25cc0 docs: Add step to update CHANGELOG.md in RELEASE.md (#8856) hai 2 días
SECURITY.md 34d8b55d4a Update security instructions for SPL programs (#8253) hai 1 mes
cargo 2018618765 Modify buildscripts to work with offline builds (e.g. nix builds) (#7811) hai 1 mes
cargo-build-sbf 92687e91ed BPF Loader: Hoist syscalls into their own crate (#5559) hai 3 meses
cargo-test-sbf f9f73a952a sdk: Move out things that won't be in the sdk (#4624) hai 9 meses
clippy.toml c3509de5be Replace lazy_static dependency (#6057) hai 6 meses
fetch-core-bpf.sh ef6d141079 fetch-core-bpf: Add "v" to release name (#8195) hai 1 mes
fetch-perf-libs.sh 2018618765 Modify buildscripts to work with offline builds (e.g. nix builds) (#7811) hai 1 mes
fetch-programs.sh f75263b29d Script: `fetch-core-bpf.sh` (#4844) hai 8 meses
fetch-spl.sh 597947830a spl: Update to newest token-2022 binary on mainnet (#5628) hai 7 meses
rust-toolchain.toml 8fc6bff2d3 Update Rust to 1.90.0 (#8962) hai 1 semana
rustfmt.toml 6d171f4da5 Apply cargo fmt string formatting to rest of repo (#7893) hai 2 meses
vercel.json 1c36af158f removing the "autoJobCancelation": false %!s(int64=4) %!d(string=hai) anos

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!