Aucune description

Joe C b411caf311 svm-test-harness: refactor for entrypoint composability (#8669) il y a 3 semaines
.buildkite 56e367e4a4 ci: run sanity on merge queue (#8667) il y a 4 semaines
.cargo 7b66701c49 ci: move xtask under ci subdir (#8544) il y a 1 mois
.config d9638e0151 Reapply "build: move dcou-dependent bins to their own workspace (#8403)" (#8646) (#8657) il y a 4 semaines
.github fccef82a12 build(deps): bump actions/download-artifact from 4 to 6 (#8696) il y a 3 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 b70cf5e2b9 Remove obsolete stat scan_time (#8704) il y a 3 semaines
banking-bench 5af914802e Move solana-logger back to agave as agave-logger (#8622) 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 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
bench-tps 5af914802e Move solana-logger back to agave as agave-logger (#8622) il y a 3 semaines
bench-vote 5af914802e Move solana-logger back to agave as agave-logger (#8622) il y a 3 semaines
bloom 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
bucket_map 5af914802e Move solana-logger back to agave as agave-logger (#8622) il y a 3 semaines
builtins 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
builtins-default-costs 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
cargo-registry 5af914802e Move solana-logger back to agave as agave-logger (#8622) il y a 3 semaines
ci c14b017916 xtask: add version bump command (#8526) il y a 4 semaines
clap-utils 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
clap-v3-utils 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
cli 5af914802e Move solana-logger back to agave as agave-logger (#8622) il y a 3 semaines
cli-config 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
cli-output 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
client 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
client-test 5af914802e Move solana-logger back to agave as agave-logger (#8622) il y a 3 semaines
compute-budget 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
compute-budget-instruction 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
connection-cache 5af914802e Move solana-logger back to agave as agave-logger (#8622) il y a 3 semaines
core 3e822577a3 runtime: Add `Bank::new_from_parent_with_bank_forks`, reduce repetition (#8702) il y a 3 semaines
cost-model 5af914802e Move solana-logger back to agave as agave-logger (#8622) il y a 3 semaines
curves 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
dev-bins 99ec26b79d Move SnapshotError to agave-snapshots (#8631) il y a 3 semaines
docker-solana e19a786c83 docs: fix docker link (#6180) il y a 6 mois
docs e5f99a1bdc docs: fixed broken links (#8450) il y a 1 mois
dos 5af914802e Move solana-logger back to agave as agave-logger (#8622) il y a 3 semaines
download-utils 3572983cc2 Move snapshot_hash and snapshot_config to agave-snapshots (#8609) il y a 1 mois
entry 5af914802e Move solana-logger back to agave as agave-logger (#8622) il y a 3 semaines
faucet 5af914802e Move solana-logger back to agave as agave-logger (#8622) il y a 3 semaines
feature-set 60ba168d54 SIMD-0194: Deprecate rent exemption threshold (#7373) il y a 4 semaines
fee 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
fs 5c05d521c2 Introduce agave-fs crate, move file_io and filesystem ops there (#8654) il y a 3 semaines
genesis 0af564a66f Move genesis related helpers from agave-snapshots to solana_genesis_utils (#8658) il y a 3 semaines
genesis-utils 0af564a66f Move genesis related helpers from agave-snapshots to solana_genesis_utils (#8658) il y a 3 semaines
geyser-plugin-interface 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
geyser-plugin-manager 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
gossip 29bf789d59 Add socket for quic_alpenglow_client and utility functions for Alpenglow port. (#8655) il y a 3 semaines
install 5af914802e Move solana-logger back to agave as agave-logger (#8622) il y a 3 semaines
io-uring 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
keygen 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
lattice-hash 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
ledger 99ec26b79d Move SnapshotError to agave-snapshots (#8631) il y a 3 semaines
ledger-tool 0af564a66f Move genesis related helpers from agave-snapshots to solana_genesis_utils (#8658) il y a 3 semaines
local-cluster 0af564a66f Move genesis related helpers from agave-snapshots to solana_genesis_utils (#8658) il y a 3 semaines
logger 5af914802e Move solana-logger back to agave as agave-logger (#8622) il y a 3 semaines
measure 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
merkle-tree 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
metrics 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
multinode-demo d9638e0151 Reapply "build: move dcou-dependent bins to their own workspace (#8403)" (#8646) (#8657) il y a 4 semaines
net 2018618765 Modify buildscripts to work with offline builds (e.g. nix builds) (#7811) il y a 1 mois
net-utils 5af914802e Move solana-logger back to agave as agave-logger (#8622) il y a 3 semaines
notifier 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
perf 5af914802e Move solana-logger back to agave as agave-logger (#8622) il y a 3 semaines
platform-tools-sdk 5af914802e Move solana-logger back to agave as agave-logger (#8622) il y a 3 semaines
poh 5af914802e Move solana-logger back to agave as agave-logger (#8622) il y a 3 semaines
poh-bench 5af914802e Move solana-logger back to agave as agave-logger (#8622) il y a 3 semaines
poseidon 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
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 3208094dde vm, cpi: make order of checks consistent in both ABIs (#8683) il y a 3 semaines
program-test 5af914802e Move solana-logger back to agave as agave-logger (#8622) il y a 3 semaines
programs 99ec26b79d Move SnapshotError to agave-snapshots (#8631) il y a 3 semaines
pubsub-client 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
quic-client 5af914802e Move solana-logger back to agave as agave-logger (#8622) il y a 3 semaines
rayon-threadlimit 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
rbpf-cli 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
remote-wallet 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
reserved-account-keys 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
rpc 3572983cc2 Move snapshot_hash and snapshot_config to agave-snapshots (#8609) il y a 1 mois
rpc-client 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
rpc-client-api 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
rpc-client-nonce-utils 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
rpc-client-types 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
rpc-test 5af914802e Move solana-logger back to agave as agave-logger (#8622) il y a 3 semaines
runtime 3e822577a3 runtime: Add `Bank::new_from_parent_with_bank_forks`, reduce repetition (#8702) il y a 3 semaines
runtime-transaction 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
scheduler-bindings 04f8e0a6e3 feat(schduling-utils): client & server handshake implementations (#8572) il y a 4 semaines
scheduling-utils 04f8e0a6e3 feat(schduling-utils): client & server handshake implementations (#8572) il y a 4 semaines
scripts d9638e0151 Reapply "build: move dcou-dependent bins to their own workspace (#8403)" (#8646) (#8657) il y a 4 semaines
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 99ec26b79d Move SnapshotError to agave-snapshots (#8631) il y a 3 semaines
stake-accounts 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
storage-bigtable 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
storage-proto 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
streamer 5af914802e Move solana-logger back to agave as agave-logger (#8622) il y a 3 semaines
svm 5af914802e Move solana-logger back to agave as agave-logger (#8622) il y a 3 semaines
svm-callback 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
svm-feature-set 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
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 b411caf311 svm-test-harness: refactor for entrypoint composability (#8669) il y a 3 semaines
svm-timings 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
svm-transaction 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
svm-type-overrides 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
syscalls ad9286451d Refactor - Move `ProgramCache::environments` to `TransactionBatchProcessor` (#8471) il y a 4 semaines
test-validator 0af564a66f Move genesis related helpers from agave-snapshots to solana_genesis_utils (#8658) il y a 3 semaines
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 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
tpu-client-next a06cca6ecb Revert "TPU: Replace governor crate with TokenBucket (#8154)" (#8627) il y a 1 mois
transaction-context 1dc7e0af5f Introduce new account layout for program-runtime (#8372) il y a 4 semaines
transaction-dos 5af914802e Move solana-logger back to agave as agave-logger (#8622) il y a 3 semaines
transaction-metrics-tracker 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
transaction-status 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
transaction-status-client-types 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
transaction-view 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
turbine 5af914802e Move solana-logger back to agave as agave-logger (#8622) il y a 3 semaines
udp-client 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
unified-scheduler-logic 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
unified-scheduler-pool 5af914802e Move solana-logger back to agave as agave-logger (#8622) il y a 3 semaines
validator 29bf789d59 Add socket for quic_alpenglow_client and utility functions for Alpenglow port. (#8655) il y a 3 semaines
verified-packet-receiver 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
version 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
vortexor 5af914802e Move solana-logger back to agave as agave-logger (#8622) il y a 3 semaines
vote 5af914802e Move solana-logger back to agave as agave-logger (#8622) il y a 3 semaines
votor 6e0c430626 refactor: give certificate related types better names (#8685) il y a 3 semaines
votor-messages 6e0c430626 refactor: give certificate related types better names (#8685) il y a 3 semaines
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 0af564a66f Move genesis related helpers from agave-snapshots to solana_genesis_utils (#8658) il y a 3 semaines
xdp 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
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 22faf53e8f introduce `agave-unstable-api` throughout the monorepo (#8424) il y a 1 mois
.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 8508753bc9 Remove zk keygen crate (#7634) il y a 3 mois
CHANGELOG.md d8ec8014b5 fix: return error for malformed program account filters (#4599) il y a 1 mois
CONTRIBUTING.md 8650813f1b Add a first time contributors section to CONTRIBUTING.md (#7818) il y a 1 mois
Cargo.lock b411caf311 svm-test-harness: refactor for entrypoint composability (#8669) il y a 3 semaines
Cargo.toml 5af914802e Move solana-logger back to agave as agave-logger (#8622) il y a 3 semaines
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 d060c30b5e Update RELEASE.md (#1901) il y a 1 an
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 b3fca5dd51 Downgrade Rust to 1.86.0 (#6980) il y a 4 mois
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!