|
5 | 5 | - [Contributing](#contributing) |
6 | 6 | - [Team Overview](#team-overview) |
7 | 7 | - [How to Contribute](#how-to-contribute) |
8 | | - - [Changesets](#changesets) |
| 8 | + - [Conventional Commits](#conventional-commits) |
9 | 9 |
|
10 | 10 | <!-- TOC --> |
11 | 11 |
|
12 | 12 | ## Team Overview |
13 | 13 |
|
14 | | -The CLD team ([@smartcontractkit/operations-platform](https://github.com/orgs/smartcontractkit/teams/operations-platform)) team is responsible for the development and maintenance of this repo, and are the primary code owners and reviewers. |
| 14 | +The Operations Platform team ([@smartcontractkit/operations-platform](https://github.com/orgs/smartcontractkit/teams/operations-platform)) team is responsible for the development and maintenance of this repo, and are the primary code owners and reviewers. |
15 | 15 |
|
16 | 16 | ## How to Contribute |
17 | 17 |
|
18 | 18 | 1. Open a branch from `main` and give it a descriptive name. |
19 | 19 | 2. Make changes on your branch. |
20 | | -3. When you are ready to submit your changes, [create a changeset](#changesets) with `pnpm changeset` and commit the changeset file. |
21 | | -4. Push your branch and open a PR against `main`. |
| 20 | +3. Push your branch and open a PR against `main`. |
| 21 | +4. Give the PR a Conventional Commit title. This title is used by Release Please to decide the next version and changelog entry when the PR is merged. |
22 | 22 | 5. Ensure your PR passes all CI checks. |
23 | 23 | 6. Request a review from the CLD team ([@smartcontractkit/operations-platform](https://github.com/orgs/smartcontractkit/teams/operations-platform)). |
24 | 24 |
|
25 | | -## Changesets |
| 25 | +## Conventional Commits |
26 | 26 |
|
27 | | -Changesets are a way to manage changes to the codebase that are not yet released. Here are a few things to keep in mind when you create a changeset: |
| 27 | +PR titles must follow the Conventional Commits format: |
28 | 28 |
|
29 | | -- Following semantic versioning, select between: major, minor and patch |
30 | | - - **MAJOR** version when you make incompatible API changes |
31 | | - - **MINOR** version when you add functionality in a backwards compatible manner |
32 | | - - **PATCH** version when you make backwards compatible bug fixes. |
33 | | -- When describing the change, try to answer the following: |
34 | | - - **WHAT** the change is |
35 | | - - **WHY** the change was made |
| 29 | +```text |
| 30 | +<type>: <description> |
| 31 | +``` |
| 32 | + |
| 33 | +Release Please uses the merged PR titles on `main` to decide whether to create a release and which semantic version bump to apply: |
| 34 | + |
| 35 | +- `feat: add support for new deployment workflow` creates a minor release. |
| 36 | +- `fix: handle missing workflow artifacts` creates a patch release. |
| 37 | +- `perf: reduce datastore lookup latency` creates a patch release. |
| 38 | +- `feat!: remove deprecated workflow input` creates a major release. |
| 39 | +- `docs: update release instructions`, `test: add workflow deploy coverage`, `ci: update pull request checks`, `chore: update dependencies`, `build: update go version`, `style: format generated code`, and `refactor: simplify deploy input handling` are allowed but usually do not create a release by themselves. |
| 40 | + |
| 41 | +Use `!` after the type, or include `BREAKING CHANGE:` in the commit body, when the change is incompatible with existing users. |
| 42 | + |
| 43 | +For details on how Release Please uses Conventional Commits and semantic versioning, see [RELEASE.md](./RELEASE.md). |
0 commit comments