From 5c574bcae8ec615a45eb26dcf27659f71c4ac3aa Mon Sep 17 00:00:00 2001 From: Ben Leggett <854255+bleggett@users.noreply.github.com> Date: Wed, 8 Dec 2021 13:13:06 -0500 Subject: [PATCH] Update contribution guidelines (#29) --- .github/PULL_REQUEST_TEMPLATE.md | 15 ++++++++------- CONTRIBUTING.md | 11 +++++++---- 2 files changed, 15 insertions(+), 11 deletions(-) diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 871760e..19a841f 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -5,12 +5,13 @@ ### Checklist - [ ] A clear description of the change has been included in this PR. -- [ ] Spec Semver version has been updated in the VERSION file -- [ ] Tagged this branch with new semver version and an annotation describing the change (ex: `git tag -s 4.1.0 -m "Spec version 4.1.0 - did a thing"`) +- [ ] A clear description of whether this change is a _Major_, _Minor_, _Patch_ or _cosmetic_ change as per the [Versioning Guidelines](../CONTRIBUTING.md#version-changes) has been included in this PR. - [ ] All schema validation tests have been updated appropriately and are passing. -- [ ] Version numbers have been updated as per the [Versioning Guidelines](../CONTRIBUTING.md#verison-changes). -- [ ] Major/minor version changes only: A writeup has been included discussing the motivation and impact of this change. -- [ ] Major/minor version changes only: The minimum wait time has elapsed. -- [ ] Project version changes only: I have updated both the `VERSION` file and the `git tag`. +- [ ] MAJOR/MINOR VERSION CHANGES ONLY: This PR should be made in branches prefixed with `draft-` +- [ ] MAJOR/MINOR VERSION CHANGES ONLY: A link to a reference implementation (PR or set of PRs) of the change has been included in this PR. +- [ ] MAJOR/MINOR VERSION CHANGES ONLY: A writeup has been included discussing the motivation and impact of this change. +- [ ] MAJOR/MINOR VERSION CHANGES ONLY: The minimum wait time has elapsed. +- [ ] DRAFT MERGE ONLY: Draft Semver has been updated in the VERSION file (optional) +- [ ] DRAFT MERGE ONLY: Tagged this branch with new semver version and an annotation describing the change (ex: `git tag -s 4.1.0 -m "Spec version 4.1.0 - did a thing"`) +- [ ] DRAFT MERGE ONLY: Version numbers have been updated as per the [Versioning Guidelines](../CONTRIBUTING.md#version-changes). - [ ] This change otherwise adheres to the project [Contribution Guidelines](../CONTRIBUTING.md). -- [ ] Every item in this checklist has been completed. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 714bab8..7232edc 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -4,19 +4,22 @@ Contributions to the TDF3 specification are welcome! Please be sure to follow th ## Proposing Changes -All changes must be proposed using a pull request against this repo. See the GitHub [howto](https://help.github.com/en/articles/about-pull-requests) for more information about publishing a PR from a fork. The PR template checklist must be satisfied before review can take place (with the exception of blocking items like wait time). +1. Pull Requests(PRs) proposing changes should be made in branches prefixed with `draft-` +2. If the changes proposed to the spec would result in a _Major_ or _Minor_ semver version bump (see [versioning guidelines](#version-changes)) to the spec, the spec change MUST LINK TO A REFERENCE IMPLEMENTATION OF THE CHANGES in a publicly-visible Git repository. + - It is suggested that the PR include a link to one or more reference implementation PRs in [the openTDF project's reference implementation](https://github.com/opentdf) -Changes must update version numbers as required (see [guidelines](#version-changes)). +Proposed changes must specify what kind of semver change they would cause - (see [guidelines](#version-changes)). * _Major_ version changes must include a detailed writeup motivating the change and its impact. These PRs must be left open for review for at least 7 days. * _Minor_ version changes must include a brief writeup motivating the change and its impact. These PRs must be left open for review for at least 3 days. +* _Patch_ version changes must include a brief writeup motivating the change and its impact. These PRs must be left open for review for at least 3 days. ### Version Changes We follow the [semver](https://semver.org/spec/v2.0.0.html) guidelines on version changes, although reviewers may exercise their discretion on individual PRs. -* _Major_ version revs when a backwards-incompatible change is made. (Example: new required manifest fields or new required API call.) -* _Minor_ version revs when backwards-compatible functionality is added. (Example: new optional API parameter.) +* _Major_ version revs when a backwards-incompatible change is made that would break clients. (Example: new required manifest fields or new required API call, or client code changes required) +* _Minor_ version revs when backwards-compatible functionality is added that would not break clients. (Example: new optional API parameter.) * _Patch_ version revs when a change does not affect functionality but could affect how readers interpret the spec. (Example: Substantive new diagram illustrating a previously poorly-documented protocol interaction.) * Cosmetic changes should _not_ affect the version number. (Example: Fixing typos, reformatting docs.)