You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/about/contributing/CONTRIBUTING.md
+26Lines changed: 26 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -148,6 +148,32 @@ channel.
148
148
149
149
- [Frontend styling guide](./frontend.md#styling)
150
150
151
+
## Pull Requests
152
+
153
+
We welcome pull requests (PRs) from community members including (but not limited to) open source users, enthusiasts, and enterprise customers.
154
+
155
+
We will ask that you sign a Contributor License Agreement before we accept any contributions into our repo.
156
+
157
+
Please keep PRs small and self contained. This allows code reviewers (see below) to focus and fully understand the PR. A good rule of thumb is less than 1000 lines changed. (One exception is a mechanistic refactor, like renaming, that is conceptually trivial but might have a large line count.)
158
+
159
+
If your intended feature or refactor will be larger than this:
160
+
161
+
1. Open an issue explaining what you intend to build, how it will work, and that you are volunteering to do the development.
162
+
2. Give the maintainers a chance to respond. Changes to the visual, interaction, or software design are easier to adjust before you start laying down code.
163
+
3. Break your work up into a series of smaller PRs.
164
+
165
+
Stacking tools like [Graphite](https://www.graphite.dev) are useful for keeping a series of PRs that build on each other up to date as they are reviewed and merged.
166
+
167
+
Each PR:
168
+
169
+
- Must individually build and pass all tests, including formatting and linting.
170
+
- Must not introduce regressions or back compatibility issues, even if a later PR would resolve the issue.
171
+
- Should be a conceptually coherent change set.
172
+
173
+
In practice, many of these smaller PRs will be invisible to end users, and that is ok. For example, you might introduce
174
+
a new Go package that implements the core business logic of a feature in one PR, but only later actually "wire it up"
175
+
to a new API route in a later PR. Or, you might implement a new React component in one PR, and only in a later PR place it on a page.
176
+
151
177
## Reviews
152
178
153
179
The following information has been borrowed from [Go's review philosophy](https://go.dev/doc/contribute#reviews).
0 commit comments