Nav apraksta

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

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!