Нема описа

Brennan 37fa8c8cb2 ag diff пре 3 месеци
.buildkite 37fa8c8cb2 ag diff пре 3 месеци
.cargo be73302abd force x86_64-v2 cpu for linux builds (fixup for #5674) (#5891) пре 7 месеци
.github 37fa8c8cb2 ag diff пре 3 месеци
account-decoder a6c51d44e2 account-decoder: Remove deprecated AccountAdditionalData and AccountAdditionalDataV2 (#7118) пре 4 месеци
account-decoder-client-types 103fb21d00 ci: use cargo sort v2 (#6406) пре 5 месеци
accounts-cluster-bench 2d1b481f0a chore: Use jemalloc in all bench crates and modules (#5053) пре 4 месеци
accounts-db 6d8f43698b Shuffle order of scanning account storages in calculate_accounts_lt_hash_at_startup (#7226) пре 3 месеци
banking-bench eba01dde77 Remove pubkey from DecisionMaker (#7077) пре 3 месеци
banking-stage-ingress-types 6b6a03ba8b Apply cleanups to solana-core for unified scheduler (#4123) пре 10 месеци
banks-client bfebc57dcf Add missing features to banks-client crate deps (#6445) пре 5 месеци
banks-interface 103fb21d00 ci: use cargo sort v2 (#6406) пре 5 месеци
banks-server 520f85a56c send-transaction-service: use message hash and blockhash to look up committed tx status (#6585) пре 5 месеци
bench-streamer 2d1b481f0a chore: Use jemalloc in all bench crates and modules (#5053) пре 4 месеци
bench-tps a2525643e3 TPU: deprecate ways to enable UDP in TPU via command-line args. (#6860) пре 4 месеци
bench-vote a2525643e3 TPU: deprecate ways to enable UDP in TPU via command-line args. (#6860) пре 4 месеци
bloom 7db66d550d bloom: move benchmarks to bencher 0.1.5 (#6044) пре 4 месеци
bucket_map 0b53c005b8 Revert "bucket-map: move benchmarks to bencher 0.1.5 (#6092)" (#7211) пре 3 месеци
build-alpenglow-vote 37fa8c8cb2 ag diff пре 3 месеци
builtins 246300b2b6 slashing: enshrine the slashing program (#4942) пре 7 месеци
builtins-default-costs 21e149ee55 remove get_builtin_instruction_cost (#7231) пре 3 месеци
cargo-registry 31cd4ef859 cargo-registry: Resolve Rust 1.88 clippy lints and format strings (#7002) пре 4 месеци
cd e48456dbbc Create continuous delivery directory and add readme with canary details. (#27683) пре 3 година
ci 37fa8c8cb2 ag diff пре 3 месеци
clap-utils 37fa8c8cb2 ag diff пре 3 месеци
clap-v3-utils aefebdfc95 [clap-v3-utils] Update dependency from zk-token-sdk to zk-sdk (#6985) пре 4 месеци
cli 37fa8c8cb2 ag diff пре 3 месеци
cli-config 103fb21d00 ci: use cargo sort v2 (#6406) пре 5 месеци
cli-output e72266ca6f Airgap`TransactionError` type from RPC (#6435) пре 4 месеци
client 64382a56ec rpc: Resolve Rust 1.88 clippy lints and format strings (#7047) пре 4 месеци
client-test 103fb21d00 ci: use cargo sort v2 (#6406) пре 5 месеци
compute-budget 103fb21d00 ci: use cargo sort v2 (#6406) пре 5 месеци
compute-budget-instruction 103fb21d00 ci: use cargo sort v2 (#6406) пре 5 месеци
connection-cache 0cdebbcff8 net-utils: Deprecate explicit reuseport (#6639) пре 5 месеци
core 37fa8c8cb2 ag diff пре 3 месеци
cost-model c8567ac00c SIMD-0286 (#7124) пре 3 месеци
curves 37fa8c8cb2 ag diff пре 3 месеци
docker-solana e19a786c83 docs: fix docker link (#6180) пре 6 месеци
docs 704f3f7b09 docs: move pages from contributing section (#7255) пре 3 месеци
dos 103fb21d00 ci: use cargo sort v2 (#6406) пре 5 месеци
download-utils ce73ca8f9a Removes deprecated snapshot archive formats (#6541) пре 5 месеци
entry 94c3c84771 rayon-threadlimit: Deprecate get_max_thread_count() (#7071) пре 4 месеци
faucet fc4104fc62 build(deps): bump solana-transaction from 2.2.2 to 2.2.3 (#6464) пре 5 месеци
feature-set 6634fd2239 SIMD-0306 (#7127) пре 3 месеци
fee 1e11ee2b96 pub calculate_signature_fee (#7232) пре 3 месеци
genesis 37fa8c8cb2 ag diff пре 3 месеци
genesis-utils 103fb21d00 ci: use cargo sort v2 (#6406) пре 5 месеци
geyser-plugin-interface 6b566ba9cd geyser: update to `ReplicaTransactionInfoV3` (#6515) пре 5 месеци
geyser-plugin-manager 64382a56ec rpc: Resolve Rust 1.88 clippy lints and format strings (#7047) пре 4 месеци
gossip 37fa8c8cb2 ag diff пре 3 месеци
install 64a3969a99 chore: Typo fixes (#6599) пре 5 месеци
io-uring 6c80057133 Use io_uring for creating files when unpacking snapshot (#6671) пре 3 месеци
keygen 37fa8c8cb2 ag diff пре 3 месеци
lattice-hash 51a114eeca add missing description for solana-lattice-hash (#3358) пре 1 година
ledger 37fa8c8cb2 ag diff пре 3 месеци
ledger-tool 37fa8c8cb2 ag diff пре 3 месеци
local-cluster 37fa8c8cb2 ag diff пре 3 месеци
log-analyzer 103fb21d00 ci: use cargo sort v2 (#6406) пре 5 месеци
log-collector 103fb21d00 ci: use cargo sort v2 (#6406) пре 5 месеци
measure a0b2c73cfe relax measure macros test check (#3517) пре 1 година
memory-management 076329381a Moves a clippy attribute (#194) пре 1 година
merkle-tree 103fb21d00 ci: use cargo sort v2 (#6406) пре 5 месеци
metrics 37fa8c8cb2 ag diff пре 3 месеци
multinode-demo 37fa8c8cb2 ag diff пре 3 месеци
net 37fa8c8cb2 ag diff пре 3 месеци
net-shaper 103fb21d00 ci: use cargo sort v2 (#6406) пре 5 месеци
net-utils 37fa8c8cb2 ag diff пре 3 месеци
notifier 103fb21d00 ci: use cargo sort v2 (#6406) пре 5 месеци
perf 37fa8c8cb2 ag diff пре 3 месеци
platform-tools-sdk 58d7da606d Generate toolchain name inside condition (#7024) пре 4 месеци
poh 37fa8c8cb2 ag diff пре 3 месеци
poh-bench 94c3c84771 rayon-threadlimit: Deprecate get_max_thread_count() (#7071) пре 4 месеци
poseidon 103fb21d00 ci: use cargo sort v2 (#6406) пре 5 месеци
precompiles dc824a2a66 bump solana-secp256k1-program from 2.2.1 to 2.2.3 (#6507) пре 5 месеци
program-runtime 37fa8c8cb2 ag diff пре 3 месеци
program-test 37fa8c8cb2 ag diff пре 3 месеци
programs 37fa8c8cb2 ag diff пре 3 месеци
pubsub-client 60a34ecc9c pubsub-client: Remove deprecated set_node_version (#7117) пре 4 месеци
quic-client 9d97d498bd Support closing connections when QUIC connection drop (#6857) пре 4 месеци
rayon-threadlimit 94c3c84771 rayon-threadlimit: Deprecate get_max_thread_count() (#7071) пре 4 месеци
rbpf-cli 3f9a7a52ea [anza migration] rename crates (#10) пре 1 година
remote-wallet 103fb21d00 ci: use cargo sort v2 (#6406) пре 5 месеци
reserved-account-keys 103fb21d00 ci: use cargo sort v2 (#6406) пре 5 месеци
rpc 37fa8c8cb2 ag diff пре 3 месеци
rpc-client 37fa8c8cb2 ag diff пре 3 месеци
rpc-client-api 75458d78cd Add `slot` to the error context of `EpochRewardsPeriodActiveErrorData` and `SlotNotEpochBoundaryErrorData` (#6962) пре 4 месеци
rpc-client-nonce-utils 234afe489a chore: Fix several crate documentation links (#6601) пре 5 месеци
rpc-client-types e72266ca6f Airgap`TransactionError` type from RPC (#6435) пре 4 месеци
rpc-test 64382a56ec rpc: Resolve Rust 1.88 clippy lints and format strings (#7047) пре 4 месеци
runtime 37fa8c8cb2 ag diff пре 3 месеци
runtime-transaction 37fa8c8cb2 ag diff пре 3 месеци
scripts a2ce908cfa [zk-sdk] Remove zk-sdk from the repo (#7126) пре 3 месеци
sdk 37fa8c8cb2 ag diff пре 3 месеци
send-transaction-service 64382a56ec rpc: Resolve Rust 1.88 clippy lints and format strings (#7047) пре 4 месеци
stake-accounts ebe554559c solana-stake-accounts: support configurable commitment level and no wait (#6644) пре 4 месеци
storage-bigtable d429f6efcd ledger: Resolve Rust 1.88 clippy lints and format strings (#6964) пре 4 месеци
storage-proto d849be8cb2 Airgap`TransactionError` type from blockstore (#6434) пре 5 месеци
streamer cbc864f483 agave-validator: move socket_addr_space parsing into run command logic (#7139) пре 3 месеци
svm 37fa8c8cb2 ag diff пре 3 месеци
svm-callback 96bef97b80 Run rustfmt with format_strings = true (1 / N) (#6907) пре 4 месеци
svm-conformance 103fb21d00 ci: use cargo sort v2 (#6406) пре 5 месеци
svm-feature-set 5b6880a3f4 Remove - `lift_cpi_caller_restriction` (#6828) пре 4 месеци
svm-rent-collector e36fdb83eb clean up `disable_rent_fees_collection` feature (#6622) пре 5 месеци
svm-transaction 19c78ed41f SIMD-0242: Static Nonce Account Only (#5555) пре 7 месеци
syscalls 37fa8c8cb2 ag diff пре 3 месеци
system-test 3f9a7a52ea [anza migration] rename crates (#10) пре 1 година
test-validator 37fa8c8cb2 ag diff пре 3 месеци
thin-client 64382a56ec rpc: Resolve Rust 1.88 clippy lints and format strings (#7047) пре 4 месеци
thread-manager 222d32e7ea thread-manager: Resolve Rust 1.88 clippy lints and format strings (#7088) пре 4 месеци
timings 103fb21d00 ci: use cargo sort v2 (#6406) пре 5 месеци
tls-utils 29a06f5c84 fix imports in tls-utils to avoid cargo doc error (#5861) пре 7 месеци
tokens c9e85009eb SPL: Use ATA interface crate instead of program crate (#7256) пре 3 месеци
tps-client 103fb21d00 ci: use cargo sort v2 (#6406) пре 5 месеци
tpu-client 46d151a191 Update Leader Slot Info Atomically (#7241) пре 3 месеци
tpu-client-next 64382a56ec rpc: Resolve Rust 1.88 clippy lints and format strings (#7047) пре 4 месеци
transaction-context 2c8930d86c Remove `index_in_caller` from `InstructionAccount` (#7220) пре 3 месеци
transaction-dos 103fb21d00 ci: use cargo sort v2 (#6406) пре 5 месеци
transaction-metrics-tracker 103fb21d00 ci: use cargo sort v2 (#6406) пре 5 месеци
transaction-status c9e85009eb SPL: Use ATA interface crate instead of program crate (#7256) пре 3 месеци
transaction-status-client-types 64382a56ec rpc: Resolve Rust 1.88 clippy lints and format strings (#7047) пре 4 месеци
transaction-view 103fb21d00 ci: use cargo sort v2 (#6406) пре 5 месеци
turbine 37fa8c8cb2 ag diff пре 3 месеци
type-overrides 103fb21d00 ci: use cargo sort v2 (#6406) пре 5 месеци
udp-client 8d614dd91d dcou test only code in streamer (#6936) пре 4 месеци
unified-scheduler-logic cfdfc391d0 Avoid large block for unified scheduler bp testing (#7223) пре 3 месеци
unified-scheduler-pool 37fa8c8cb2 ag diff пре 3 месеци
upload-perf 103fb21d00 ci: use cargo sort v2 (#6406) пре 5 месеци
validator 37fa8c8cb2 ag diff пре 3 месеци
verified-packet-receiver 18238bdfcb Restore vortexor receiver -- renamed to agave-verified-packet-receiver (#6542) пре 5 месеци
version 103fb21d00 ci: use cargo sort v2 (#6406) пре 5 месеци
vortexor 37fa8c8cb2 ag diff пре 3 месеци
vote 37fa8c8cb2 ag diff пре 3 месеци
votor 37fa8c8cb2 ag diff пре 3 месеци
votor-messages 37fa8c8cb2 ag diff пре 3 месеци
watchtower 103fb21d00 ci: use cargo sort v2 (#6406) пре 5 месеци
web3.js 18c22c7cef Add link to new web3.js repo (#30096) пре 2 година
wen-restart de646bd9a1 ledger: Mark pub test functions as dcou (#7184) пре 3 месеци
xdp 219f805fcb xdp: always populate the fill ring (#6836) пре 4 месеци
zk-keygen 37fa8c8cb2 ag diff пре 3 месеци
zk-sdk a2ce908cfa [zk-sdk] Remove zk-sdk from the repo (#7126) пре 3 месеци
zk-token-sdk 2f015527c5 fix: typos (#7013) пре 4 месеци
.codecov.yml 0b9c040fcf Add .codecov.yml with checks disabled (#30666) пре 2 година
.gitignore f75263b29d Script: `fetch-core-bpf.sh` (#4844) пре 8 месеци
.mergify.yml bb48baebc1 [mergify] add notification for ZK directory changes (#6913) пре 4 месеци
CHANGELOG.md 6c80057133 Use io_uring for creating files when unpacking snapshot (#6671) пре 3 месеци
CONTRIBUTING.md 305c98e869 Update contributing with more guidelines. (#5008) пре 7 месеци
Cargo.lock 37fa8c8cb2 ag diff пре 3 месеци
Cargo.toml 37fa8c8cb2 ag diff пре 3 месеци
LICENSE c65605802a Correct LICENSE to conform with https://apache.org/licenses/LICENSE-2.0 (#31860) пре 2 година
README.md c22b2b5fe4 readme: Update agave logo (#6597) пре 5 месеци
RELEASE.md d060c30b5e Update RELEASE.md (#1901) пре 1 година
SECURITY.md 5e80a7ca7b Update security email to security@anza.xyz (#2598) пре 1 година
cargo 6cd4bc5e60 Speed up net.sh builds (#16360) пре 4 година
cargo-build-sbf 92687e91ed BPF Loader: Hoist syscalls into their own crate (#5559) пре 3 месеци
cargo-test-sbf f9f73a952a sdk: Move out things that won't be in the sdk (#4624) пре 9 месеци
clippy.toml c3509de5be Replace lazy_static dependency (#6057) пре 6 месеци
fetch-core-bpf.sh ef4f90f9e1 Run 'fetch-core-bpf.sh' from any directory (#5518) пре 8 месеци
fetch-perf-libs.sh 9393dce1ff Take v0.19.3 of perf libs which improves sigverify perf 2x (#11894) пре 5 година
fetch-programs.sh f75263b29d Script: `fetch-core-bpf.sh` (#4844) пре 8 месеци
fetch-spl.sh 597947830a spl: Update to newest token-2022 binary on mainnet (#5628) пре 7 месеци
nextest.toml 37fa8c8cb2 ag diff пре 3 месеци
run.sh fc2a8794be [docs] updated readme and fix links (#34565) пре 1 година
rust-toolchain.toml b3fca5dd51 Downgrade Rust to 1.86.0 (#6980) пре 4 месеци
rustfmt.toml 70ebab2c82 Add rustfmt.toml and `cargo fmt` (#23238) пре 3 година
test-abi.sh cadba689cb Make solana-frozen-abi optional in all remaining crates (#1278) пре 1 година
vercel.json 1c36af158f removing the "autoJobCancelation": false пре 4 година

README.md

Anza

Solana crate Solana documentation Build status codecov

Building

1. Install rustc, cargo and rustfmt.

$ curl https://sh.rustup.rs -sSf | sh
$ source $HOME/.cargo/env
$ rustup component add rustfmt

When building the master branch, please make sure you are using the latest stable rust version by running:

$ rustup update

When building a specific release branch, you should check the rust version in ci/rust-version.sh and if necessary, install that version by running:

$ rustup install VERSION

Note that if this is not the latest rust version on your machine, cargo commands may require an override in order to use the correct version.

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!