Contributing¶
Thanks for helping with muscles. Issues and pull requests are welcome: bugs, docs, new notes (detectors), and features.
The full guide is CONTRIBUTING.md in the repository. In short:
git clone https://github.com/rossedman/muscles && cd muscles
make check # gofmt, go vet, one command per file, doc comments, go test
make cover # total coverage must stay at 90% or more
make lint # golangci-lint
make vuln # govulncheck
make docs # build this site (needs: pip install -r docs/requirements.txt)
- Open an issue first for anything bigger than a small fix.
- Read Design before changing how something works.
- A behavior change isn't done until its docs are: the page here, CLI reference, and the README.
- Every function has a doc comment, and the critical paths have benchmarks and fuzz targets.
- Every command lives in its own file in
internal/cli/withShort,Longand threeExamplelines.
For a security problem, don't open an issue: see SECURITY.md.