This file describes the process for contributing to snarkops
.
We use the xtask convention to add helpful commands for development. We also recommend usage of cargo-watch, to help for development purposes.
The xtask
commands can be triggered by doing cargo xtask cmd
.
The list of commands are as follows, and you can always do --help
for more info:
clipages
: updates the markdown files in./snops_book/user_guide/clis
.mangen
: generates man files and puts them in the target directory.fmt
: can be used to format the codebase, requires nightly, or check the formatting is ok.lint
: runs clippy against the codebase, requires nightly.udeps
: installs cargo-shear to do a naive unused dependencies check.install-upx
: linux only command to install upx, which can be used in the build command to super compress binaries.- `build: gives makes building the different binaries easier, by automatically setting flags and etc for specific linkers, cranelift, or other options.
dev
: runs cargo-watch for the specified binary target.
All commits are to follow the Conventional Commits standard. Commit messages should always be meaningful.
This section describes actions to keep in mind while developing.
Please ensure your code is formatted and the formatting tool gives no warnings(if using a local snarkos/vm you can ignore warnings given from those repos).
For creating the PR, please follow the instructions below.
- Firstly, please open a
PR from your branch
to the
main
branch ofsnarkops
. - Please fill in the PR template that is there.
- Then assign it to yourself and anyone else who worked on the issue with you.
- Make sure all CI tests pass.
- Finally, please assign at least two of the following reviewers to your PR: