Няма описание

steviez 6d171f4da5 Apply cargo fmt string formatting to rest of repo (#7893) преди 2 месеца
.buildkite d676f0e110 ci: improve step descriptions (#6664) преди 4 месеца
.cargo be73302abd force x86_64-v2 cpu for linux builds (fixup for #5674) (#5891) преди 7 месеца
.config 8c11ea8039 force gossip_ring test to run alone in ci (#7872) преди 2 месеца
.github be728afcf5 build(deps): bump actions/github-script from 7 to 8 (#7905) преди 2 месеца
account-decoder 44924ba782 Reapply "deps: Bump all sdk and spl crates to v3 compatibility (#7492… (#7592) преди 3 месеца
account-decoder-client-types 103fb21d00 ci: use cargo sort v2 (#6406) преди 5 месеца
accounts-cluster-bench eca9464fca Make AccountsDbConfig a non-option part of config (#7851) преди 2 месеца
accounts-db 6d171f4da5 Apply cargo fmt string formatting to rest of repo (#7893) преди 2 месеца
banking-bench 2c027cab65 PohController (#7703) преди 2 месеца
banking-stage-ingress-types 6b6a03ba8b Apply cleanups to solana-core for unified scheduler (#4123) преди 10 месеца
banks-client 44924ba782 Reapply "deps: Bump all sdk and spl crates to v3 compatibility (#7492… (#7592) преди 3 месеца
banks-interface 103fb21d00 ci: use cargo sort v2 (#6406) преди 5 месеца
banks-server 0da231c1d4 Simulate transaction with balances (#6750) преди 3 месеца
bench-streamer 2d1b481f0a chore: Use jemalloc in all bench crates and modules (#5053) преди 4 месеца
bench-tps 44924ba782 Reapply "deps: Bump all sdk and spl crates to v3 compatibility (#7492… (#7592) преди 3 месеца
bench-vote 6d171f4da5 Apply cargo fmt string formatting to rest of repo (#7893) преди 2 месеца
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 месеца
builtins eec3878cef remove stake program builtin (#7203) преди 3 месеца
builtins-default-costs eec3878cef remove stake program builtin (#7203) преди 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 c0ac9198fb Remove certain built binaries from published tarball (#7324) преди 3 месеца
clap-utils f1e55d7d94 revert 7849 (#7882) преди 2 месеца
clap-v3-utils f1e55d7d94 revert 7849 (#7882) преди 2 месеца
cli 6d171f4da5 Apply cargo fmt string formatting to rest of repo (#7893) преди 2 месеца
cli-config 103fb21d00 ci: use cargo sort v2 (#6406) преди 5 месеца
cli-output bc650cf411 cli: Resolve Rust 1.88 clippy lints and format strings (#7089) преди 3 месеца
client 5290d76162 Refactor ClientOption to solana-client crate (#7735) преди 2 месеца
client-test 44924ba782 Reapply "deps: Bump all sdk and spl crates to v3 compatibility (#7492… (#7592) преди 3 месеца
compute-budget 3e6288efb1 simd-0268: rename variables to use the right simd number (#7753) преди 2 месеца
compute-budget-instruction eec3878cef remove stake program builtin (#7203) преди 3 месеца
connection-cache 1e27642f93 refactor: use `Arc` to eliminate potentially expensive cloning (#7638) преди 2 месеца
core 6d171f4da5 Apply cargo fmt string formatting to rest of repo (#7893) преди 2 месеца
cost-model b9bec70d55 report number of contended accounts to metrics (#7855) преди 2 месеца
curves 103fb21d00 ci: use cargo sort v2 (#6406) преди 5 месеца
docker-solana e19a786c83 docs: fix docker link (#6180) преди 6 месеца
docs 82fb4b394f build(deps): bump brace-expansion from 1.1.11 to 1.1.12 in /docs (#6517) преди 2 месеца
dos 6d171f4da5 Apply cargo fmt string formatting to rest of repo (#7893) преди 2 месеца
download-utils fd07ce286a Finish clippy uninlined_format_args cleanup (#7825) преди 2 месеца
entry 2746dd239a Poh: RecordSummary (#7859) преди 2 месеца
faucet 6d171f4da5 Apply cargo fmt string formatting to rest of repo (#7893) преди 2 месеца
feature-set 9256b814d4 feature-set: Apply cargo fmt string formatting (#7868) преди 2 месеца
fee 1e11ee2b96 pub calculate_signature_fee (#7232) преди 3 месеца
genesis 6d171f4da5 Apply cargo fmt string formatting to rest of repo (#7893) преди 2 месеца
genesis-utils fd07ce286a Finish clippy uninlined_format_args cleanup (#7825) преди 2 месеца
geyser-plugin-interface 4221d962ba Update geyser documentations (#5571) преди 3 месеца
geyser-plugin-manager 5d692bd370 refactor: `GeyserPluginManager` doesn't need to implement an empty `new()` when it derives `Default` (#7750) преди 2 месеца
gossip 6d171f4da5 Apply cargo fmt string formatting to rest of repo (#7893) преди 2 месеца
install 6d171f4da5 Apply cargo fmt string formatting to rest of repo (#7893) преди 2 месеца
io-uring cd6d2cdeaa Add clippy rule to deny uninlined-format-args (#7826) преди 2 месеца
keygen fd07ce286a Finish clippy uninlined_format_args cleanup (#7825) преди 2 месеца
lattice-hash 51a114eeca add missing description for solana-lattice-hash (#3358) преди 1 година
ledger e14477a7b7 ledger: blockstore prepare for removing unchained (#7878) преди 2 месеца
ledger-tool 267efd570f Removes --accounts-db-hash-threads (#7896) преди 2 месеца
local-cluster 2746dd239a Poh: RecordSummary (#7859) преди 2 месеца
low-pass-filter b52fe73afc Change to agave-low-pass-filter and publish (#7577) преди 3 месеца
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 6d171f4da5 Apply cargo fmt string formatting to rest of repo (#7893) преди 2 месеца
multinode-demo 0ee477919c Remove --entrypoint from default args of bench-tps script (#7658) преди 3 месеца
net 5a1ad600bf remove stale integration tests that are not used (#7166) преди 2 месеца
net-utils ccebfa71da Multihoming: remove egress socket select (#7843) преди 2 месеца
notifier fd07ce286a Finish clippy uninlined_format_args cleanup (#7825) преди 2 месеца
perf cd6d2cdeaa Add clippy rule to deny uninlined-format-args (#7826) преди 2 месеца
platform-tools-sdk cfc4cdc211 Enable feature `rustls-tls-native-roots` for `reqwest` (#7697) преди 2 месеца
poh 2746dd239a Poh: RecordSummary (#7859) преди 2 месеца
poh-bench 94c3c84771 rayon-threadlimit: Deprecate get_max_thread_count() (#7071) преди 4 месеца
poseidon 103fb21d00 ci: use cargo sort v2 (#6406) преди 5 месеца
precompiles 44924ba782 Reapply "deps: Bump all sdk and spl crates to v3 compatibility (#7492… (#7592) преди 3 месеца
program-binaries eec3878cef remove stake program builtin (#7203) преди 3 месеца
program-runtime 592bb0cb12 program-runtime: create new `memory` module (#7836) преди 2 месеца
program-test eca9464fca Make AccountsDbConfig a non-option part of config (#7851) преди 2 месеца
programs 6d171f4da5 Apply cargo fmt string formatting to rest of repo (#7893) преди 2 месеца
pubsub-client 60a34ecc9c pubsub-client: Remove deprecated set_node_version (#7117) преди 4 месеца
quic-client 6d171f4da5 Apply cargo fmt string formatting to rest of repo (#7893) преди 2 месеца
rayon-threadlimit 94c3c84771 rayon-threadlimit: Deprecate get_max_thread_count() (#7071) преди 4 месеца
rbpf-cli 3f9a7a52ea [anza migration] rename crates (#10) преди 1 година
remote-wallet fd07ce286a Finish clippy uninlined_format_args cleanup (#7825) преди 2 месеца
reserved-account-keys 103fb21d00 ci: use cargo sort v2 (#6406) преди 5 месеца
rpc 7f4e64446c Removes AccountsDb::verify_accounts_hash_in_bg (#7839) преди 2 месеца
rpc-client 0da231c1d4 Simulate transaction with balances (#6750) преди 3 месеца
rpc-client-api 5bc175a794 rpc-client-api: reexport publicly used types (#7808) преди 2 месеца
rpc-client-nonce-utils 234afe489a chore: Fix several crate documentation links (#6601) преди 5 месеца
rpc-client-types d240fe57dd rpc-client-types: re-export types used in public API and switch to solana-address (#7737) преди 2 месеца
rpc-test fedd138f3a unique bind for rpc test (#7419) преди 3 месеца
runtime 43b06cb03a refactor: separate feature activation path for epoch boundary (#7830) преди 2 месеца
runtime-transaction 103fb21d00 ci: use cargo sort v2 (#6406) преди 5 месеца
scripts cd6d2cdeaa Add clippy rule to deny uninlined-format-args (#7826) преди 2 месеца
sdk d221ad4091 sdk: Remove everything from the repo (#4867) преди 9 месеца
send-transaction-service 89b5fa79d5 BankForks::sharable_banks (#7629) преди 2 месеца
stake-accounts 6d171f4da5 Apply cargo fmt string formatting to rest of repo (#7893) преди 2 месеца
storage-bigtable d429f6efcd ledger: Resolve Rust 1.88 clippy lints and format strings (#6964) преди 4 месеца
storage-proto 44924ba782 Reapply "deps: Bump all sdk and spl crates to v3 compatibility (#7492… (#7592) преди 3 месеца
streamer cd6d2cdeaa Add clippy rule to deny uninlined-format-args (#7826) преди 2 месеца
svm 03def80b51 refactor: adding builtin accounts (#7900) преди 2 месеца
svm-callback 03def80b51 refactor: adding builtin accounts (#7900) преди 2 месеца
svm-feature-set d68ec6574e Make SVM crates inherit workspace version (#7654) преди 3 месеца
svm-log-collector 173d1361de svm repo split: rename log collector (#7430) преди 3 месеца
svm-measure 5cad0f1c39 svm repo split: fork measure (#7441) преди 3 месеца
svm-rent-calculator 6fbbaf6783 svm: Remove SVMRentCollector, use Rent directly (#6782) преди 3 месеца
svm-timings 87a97a3266 svm repo split: rename timings (#7432) преди 3 месеца
svm-transaction 44924ba782 Reapply "deps: Bump all sdk and spl crates to v3 compatibility (#7492… (#7592) преди 3 месеца
svm-type-overrides ed847b333d chore: apply doc-comment to the module in svm-type-overrides/src/lib.rs (#7481) преди 3 месеца
syscalls 592bb0cb12 program-runtime: create new `memory` module (#7836) преди 2 месеца
test-validator eca9464fca Make AccountsDbConfig a non-option part of config (#7851) преди 2 месеца
thread-manager cd6d2cdeaa Add clippy rule to deny uninlined-format-args (#7826) преди 2 месеца
tls-utils 44924ba782 Reapply "deps: Bump all sdk and spl crates to v3 compatibility (#7492… (#7592) преди 3 месеца
tokens 6d171f4da5 Apply cargo fmt string formatting to rest of repo (#7893) преди 2 месеца
tps-client fd07ce286a Finish clippy uninlined_format_args cleanup (#7825) преди 2 месеца
tpu-client 6d171f4da5 Apply cargo fmt string formatting to rest of repo (#7893) преди 2 месеца
tpu-client-next 6d171f4da5 Apply cargo fmt string formatting to rest of repo (#7893) преди 2 месеца
transaction-context f800138860 Make runtime accounts contiguous in memory (#7712) преди 2 месеца
transaction-dos fd07ce286a Finish clippy uninlined_format_args cleanup (#7825) преди 2 месеца
transaction-metrics-tracker 2a2f6b976d chore: typo fixes (#7303) преди 3 месеца
transaction-status c859d8bc35 SPL: Use token interface crate (#7311) преди 3 месеца
transaction-status-client-types 64382a56ec rpc: Resolve Rust 1.88 clippy lints and format strings (#7047) преди 4 месеца
transaction-view cd6d2cdeaa Add clippy rule to deny uninlined-format-args (#7826) преди 2 месеца
turbine ccebfa71da Multihoming: remove egress socket select (#7843) преди 2 месеца
udp-client 1e27642f93 refactor: use `Arc` to eliminate potentially expensive cloning (#7638) преди 2 месеца
unified-scheduler-logic b66c365ac5 chore: typo fixes (#7254) преди 3 месеца
unified-scheduler-pool 2c027cab65 PohController (#7703) преди 2 месеца
validator 6d171f4da5 Apply cargo fmt string formatting to rest of repo (#7893) преди 2 месеца
verified-packet-receiver 18238bdfcb Restore vortexor receiver -- renamed to agave-verified-packet-receiver (#6542) преди 5 месеца
version fd07ce286a Finish clippy uninlined_format_args cleanup (#7825) преди 2 месеца
vortexor c68c510c78 Add local-cluster and dependents to dcou tainted list (#7132) преди 3 месеца
vote 672cf68bc8 feat: support vote state v4 in VoteStateView (#7548) преди 3 месеца
votor b0ffc10a7f replay: refactor set-root to enable alpenglow to take over (#7452) преди 3 месеца
watchtower fd07ce286a Finish clippy uninlined_format_args cleanup (#7825) преди 2 месеца
web3.js 18c22c7cef Add link to new web3.js repo (#30096) преди 2 години
wen-restart 7f4e64446c Removes AccountsDb::verify_accounts_hash_in_bg (#7839) преди 2 месеца
xdp 6d171f4da5 Apply cargo fmt string formatting to rest of repo (#7893) преди 2 месеца
zk-keygen 8508753bc9 Remove zk keygen crate (#7634) преди 3 месеца
zk-sdk a2ce908cfa [zk-sdk] Remove zk-sdk from the repo (#7126) преди 3 месеца
zk-token-sdk ad7fbe953d [zk-token-sdk] deprecate the crate (#6969) преди 3 месеца
.codecov.yml 0b9c040fcf Add .codecov.yml with checks disabled (#30666) преди 2 години
.gitignore f75263b29d Script: `fetch-core-bpf.sh` (#4844) преди 8 месеца
.mergify.yml 8508753bc9 Remove zk keygen crate (#7634) преди 3 месеца
CHANGELOG.md 1a5120004d validator: Deprecate --monitor flag for exit command (#7692) преди 2 месеца
CONTRIBUTING.md 305c98e869 Update contributing with more guidelines. (#5008) преди 7 месеца
Cargo.lock 1040553ec1 build(deps): bump js-sys from 0.3.77 to 0.3.78 (#7906) преди 2 месеца
Cargo.toml 1040553ec1 build(deps): bump js-sys from 0.3.77 to 0.3.78 (#7906) преди 2 месеца
LICENSE c65605802a Correct LICENSE to conform with https://apache.org/licenses/LICENSE-2.0 (#31860) преди 2 години
README.md da75eae6ec docs: Update URL's from solanalabs.com to anza.xyz (#7505) преди 3 месеца
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 eec3878cef remove stake program builtin (#7203) преди 3 месеца
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 месеца
rust-toolchain.toml b3fca5dd51 Downgrade Rust to 1.86.0 (#6980) преди 4 месеца
rustfmt.toml 6d171f4da5 Apply cargo fmt string formatting to rest of repo (#7893) преди 2 месеца
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!