Skip to content

Latest commit

 

History

History
41 lines (28 loc) · 1.83 KB

CONTRIBUTING.md

File metadata and controls

41 lines (28 loc) · 1.83 KB

Contributing to MultiTool Canary

We track open issues in GitHub and Linear. If there's a feature you'd like to see added, please check the list of open issues first, then open a new issue if you can't find a match for your feature request.

Before submitting a PR for a feature, we highly recommend you discuss the idea in an issue with us first.

Building from Source

This repository uses Cargo-Make, Rust, and Cargo. There are a couple of other tools required to run the entire workflow.

TODO: Note the tools, like Cargo-Sort. Pull this list from the Registry repo.

Documention

To see this crate's documentation, you can run cargo make show-docs, which will open the documentation in your browser.

Working with Merge Queues

This repository uses GitHub Merge Queues to control the delivery of Docker images.

GitHub Merge Queues are a fairly new feature, so there's still some unintuitive behavior to work through. For example, please note that "required status checks" must pass both before enqueueing a PR is allowed and for an enqueued PR to successfully merge. To facilitate running separate checks for PR readiness (i.e. light-weight tests to check if a PR ready to be merged) and validation (i.e. run heavy-weight tests running immediately before merging), we give two jobs the same name even though they fire on different events.

The job ⚡PR Ready is a special name we use for both jobs. The emoiji character is specifically used to distinguish it as a special type of job. The workflow should only ever call into other workflows, giving us the most flexibility with workflow reuse.

Below, you'll find resources for working with and understanding merge queues. It's pretty light for now, so feel free to add more links.