diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 89b3efb2..67afc015 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -2,6 +2,14 @@ Contributions to Containerization are welcomed and encouraged. +## Index + +- [How you can help](#how-you-can-help) +- [Submitting issues and pull requests](#submitting-issues-and-pull-requests) +- [New to open source?](#new-to-open-source) +- [AI contribution guidelines](#ai-contribution-guidelines) +- [Code of conduct](#code-of-conduct) + ## How you can help We would love your contributions in the form of: @@ -14,7 +22,7 @@ We would love your contributions in the form of: Anything else that could enhance the project! -## Submitting Issues and Pull Requests +## Submitting issues and pull requests ### Issues @@ -22,7 +30,7 @@ To file a bug or feature request, use [GitHub issues](https://github.com/apple/c 🚧 For unexpected behavior or usability limitations, detailed instructions on how to reproduce the issue are appreciated. This will greatly help the priority setting and speed at which maintainers can get to your issue. -### Pull Requests +### Pull requests We require all commits be signed with any of GitHub's supported methods, such as GPG or SSH. Information on how to set this up can be found on [GitHub's docs](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification#about-commit-signature-verification). @@ -55,7 +63,7 @@ We do not currently accept contributions to add editor specific additions to the git config --global core.excludesfile ~/.gitignore ``` -#### Formatting Contributions +#### Formatting contributions Make sure your contributions are consistent with the rest of the project's formatting. You can do this using our Makefile: @@ -63,7 +71,7 @@ Make sure your contributions are consistent with the rest of the project's forma make fmt ``` -#### Applying License Header to New Files +#### Applying license header to new files If you submit a contribution that adds a new file, please add the license header. You can do this using our Makefile: @@ -71,7 +79,29 @@ If you submit a contribution that adds a new file, please add the license header make update-licenses ``` -### AI Contribution Guidelines +## New to open source? + +### How do I pick something to work on? + +Take a look at the `good first issue` label in the [containerization](https://github.com/apple/containerization/contribute) or [container](https://github.com/apple/container/contribute) project. +Before you start working on an issue: +* Check the comments, assignees, and any references to pull requests — make sure nobody else is actively working on it, or awaiting help or review. +* If someone is assigned to the issue or volunteered to work on it, and there are no signs of progress or activity over at least the past month, don't hesitate to check in with them +* Leave a comment that you have started working on it. + +### Getting help + +Don't be afraid to ask for help! When asking for help, provide as much information as possible, while highlighting anything you think may be important. Refer to the [MAINTAINERS.txt](MAINTAINERS.txt) file for the appropriate people to ping. + +### I didn't get a response from someone. What should I do? + +It's possible that you ask someone a question in an issue/pull request and you don't get a response as quickly as you'd like. If you don't get a response within a week, it's okay to politely ping them using an `@` mention. If you don't get a response for 2-3 weeks in a row, please ping someone else. + +### I can't finish the contribution I started. + +Sometimes an issue ends up bigger, harder, or more time-consuming than expected — **and that’s completely fine.** Be sure to comment on the issue saying you’re stepping away, so that someone else is able to pick it up. + +## AI contribution guidelines We welcome thoughtful use of AI tools in your contributions to this repository. We ask that you adhere to these rules in order to preserve the project's integrity, clarity, and quality, and to respect maintainer bandwidth: @@ -81,6 +111,6 @@ We welcome thoughtful use of AI tools in your contributions to this repository. AI tools should be used to **enhance, not replace** the human elements that make OSS special: learning, collaboration, and community growth. -## Code of Conduct +## Code of conduct To clarify of what is expected of our contributors and community members, the Containerization team has adopted the code of conduct defined by the Contributor Covenant. This document is used across many open source communities and articulates our values well. For more detail, please read the [Code of Conduct](https://github.com/apple/.github/blob/main/CODE_OF_CONDUCT.md "Code of Conduct").