Fără Descriere

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

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!