Contributing
Find something to do
Every repository labels beginner-friendly work good first issue. The organization-wide search is the fastest way in: open good first issues across the organization.
Design questions that cross repositories are RFCs: open RFCs.
Set up
cargo install pub
pub suite pull # every repository, at the pinned revisions
pub check # the conventions every repository must pass
Rust 1.90 or newer, edition 2024.
Make the change
- Open an issue, or pick one. If the change touches an interface or more than one repository, open an RFC first.
- Branch from
main. Keep the change to one concern. - Sign every commit off:
git commit -s. Sign it too;mainrequires signed commits. pub checkmust pass. So must the repository’s CI.- Open a pull request. One approving review from a code owner merges it; platform-ring repositories need two.
Provenance
If you consulted an existing implementation while working, say so in the pull request. PROVENANCE.md in each repository records what may and may not be consulted for that component; the kind/provenance label is for questions about it.
Conduct and security
The code of conduct applies everywhere in the organization. Security reports go to hello@publicsoftware.dev or through private vulnerability reporting on the repository; see the security policy.