/solana-program-library

A collection of Solana-maintained on-chain programs

Primary LanguageRustOtherNOASSERTION

Build status

Solana Program Library

The Solana Program Library (SPL) is a collection of on-chain programs targeting the Sealevel parallel runtime. These programs are tested against Solana's implementation of Sealevel, solana-runtime, and deployed to its mainnet. As others implement Sealevel, we will graciously accept patches to ensure the programs here are portable across all implementations.

Building

These programs cannot be built directly via cargo and instead require the build scripts located in Solana's BPF-SDK.

Download or update the BPF-SDK by running:

$ ./do.sh update

To build all programs, run:

$ ./do.sh build

Or choose a specific program:

$ ./do.sh build <program>

Testing

Unit tests contained within all projects can be built via:

$ ./do.sh test

Or:

$ ./do.sh test <program>

End-to-end testing may be performed via the per-project .js bindings. See the token program's js project for an example.

Clippy

Clippy is also supported via:

$ ./do.sh clippy

Or:

$ ./do.sh clippy <program>