Go to file
Jack May 96366cb4ff
Improve CI coverage (#141)
* Improve CI coverage

* install fmt
2020-07-21 14:37:34 -07:00
.github Add dependabot.yml (#97) 2020-07-08 17:06:19 +08:00
.travis Improve CI coverage (#141) 2020-07-21 14:37:34 -07:00
ci Improve CI coverage (#141) 2020-07-21 14:37:34 -07:00
docs Implement docusaurus build, deployment and CI hooks (#129) 2020-07-16 10:13:45 -06:00
memo Bump memo (#126) 2020-07-13 21:40:32 +00:00
token Improve CI coverage (#141) 2020-07-21 14:37:34 -07:00
token-swap Improve CI coverage (#141) 2020-07-21 14:37:34 -07:00
.gitignore Consolidate .gitignore (#80) 2020-07-06 21:38:18 -07:00
.mergify.yml Mergify squash commits (#125) 2020-07-13 15:15:10 -06:00
.travis.yml Implement docusaurus build, deployment and CI hooks (#129) 2020-07-16 10:13:45 -06:00
LICENSE Update contributors (#42) 2020-06-17 14:12:46 -07:00
README.md Update README.md 2020-06-24 10:56:25 -07:00
bpf-sdk-install.sh Bump to Solana v1.2.3 and Solana-web3.js v0.60.0 (#46) 2020-06-18 11:02:42 -07:00
do.sh Improve CI coverage (#141) 2020-07-21 14:37:34 -07:00
package-lock.json Add rustdocs (#39) 2020-06-17 11:25:19 -07:00

README.md

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>