From 1c5b7910539b29e84dd0dfecabdb6caa0209dd2a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philip=20J=C3=A4genstedt?= Date: Thu, 8 Aug 2024 15:19:22 +0200 Subject: [PATCH 1/5] Document how to make a web-features release --- docs/publishing.md | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/docs/publishing.md b/docs/publishing.md index 0e929c5eb14..f1e390df62f 100644 --- a/docs/publishing.md +++ b/docs/publishing.md @@ -1,8 +1,25 @@ # Publishing +## Regular releases + +These are the steps to publish regular release on NPM and as a GitHub release: + +- Determine if it should be a major, minor, or patch release. The "major version required" and "minor version required" labels should be used to support this decision. +- Update packages/web-features/package.json and packages/web-features/package-lock.json in a PR and get review. +- Merge the PR and draft a new release at https://github.com/web-platform-dx/web-features/releases/new +- Fill in the tag name vX.Y.Z manually as both the tag and release title +- For major releases, add a "Breaking Changes" section up top. +- For minor releases, add a "What's New" section up top. +- Click "Generate release notes" +- Search for "<" and make sure all element names are quoted with backquotes +- Remove all lines from Dependabot +- Publish the GitHub release + +Publishing the GitHub release creates the tag. This triggers the [Publish web-features GitHub Actions workflows](https://github.com/web-platform-dx/web-features/blob/main/.github/workflows/publish_web-features.yml), uploads GitHub release artifacts and publishes the package to NPM. + ## `@next` releases -The [`publish_next_` GitHub Actions workflows](https://github.com/web-platform-dx/web-features/tree/main/.github/workflows) automatically publish pre-releases on push to the main branch using the `next` [npm dist tag](https://docs.npmjs.com/adding-dist-tags-to-packages). +The [Publish web-features@next GitHub Actions workflows](https://github.com/web-platform-dx/web-features/blob/main/.github/workflows/publish_next_web-features.yml) automatically publish pre-releases on push to the main branch using the `next` [npm dist tag](https://docs.npmjs.com/adding-dist-tags-to-packages). You can install these prereleases using a command such as `npm install web-features@next`. ## Secrets From b28800ec03bc21dd6aae0ca9ab68c98bfee5bb5a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philip=20J=C3=A4genstedt?= Date: Thu, 8 Aug 2024 17:07:53 +0200 Subject: [PATCH 2/5] Update docs/publishing.md Co-authored-by: Daniel D. Beck --- docs/publishing.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/publishing.md b/docs/publishing.md index f1e390df62f..7dbe517ee69 100644 --- a/docs/publishing.md +++ b/docs/publishing.md @@ -4,7 +4,7 @@ These are the steps to publish regular release on NPM and as a GitHub release: -- Determine if it should be a major, minor, or patch release. The "major version required" and "minor version required" labels should be used to support this decision. +- Determine if it should be a major, minor, or patch release. The "[major version required](https://github.com/web-platform-dx/web-features/pulls?q=is%3Apr+label%3A%major+version+required%22+is%3Aclosed+sort%3Aupdated-desc)" and "[minor version required](https://github.com/web-platform-dx/web-features/pulls?q=is%3Apr+label%3A%minor+version+required%22+is%3Aclosed+sort%3Aupdated-desc)" labels should be used to support this decision. - Update packages/web-features/package.json and packages/web-features/package-lock.json in a PR and get review. - Merge the PR and draft a new release at https://github.com/web-platform-dx/web-features/releases/new - Fill in the tag name vX.Y.Z manually as both the tag and release title From fedebf53c08e605a8e7b6f9125f4cb3080d80dbe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philip=20J=C3=A4genstedt?= Date: Thu, 8 Aug 2024 17:08:14 +0200 Subject: [PATCH 3/5] Apply suggestions from code review Co-authored-by: Daniel D. Beck --- docs/publishing.md | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/docs/publishing.md b/docs/publishing.md index 7dbe517ee69..989eb2cde55 100644 --- a/docs/publishing.md +++ b/docs/publishing.md @@ -2,12 +2,15 @@ ## Regular releases +> [!NOTE] +> This information is for [project owners](../GOVERNANCE.md#roles-and-responsibilities). + These are the steps to publish regular release on NPM and as a GitHub release: - Determine if it should be a major, minor, or patch release. The "[major version required](https://github.com/web-platform-dx/web-features/pulls?q=is%3Apr+label%3A%major+version+required%22+is%3Aclosed+sort%3Aupdated-desc)" and "[minor version required](https://github.com/web-platform-dx/web-features/pulls?q=is%3Apr+label%3A%minor+version+required%22+is%3Aclosed+sort%3Aupdated-desc)" labels should be used to support this decision. -- Update packages/web-features/package.json and packages/web-features/package-lock.json in a PR and get review. +- Update `packages/web-features/package.json` and `packages/web-features/package-lock.json` in a PR and get review. - Merge the PR and draft a new release at https://github.com/web-platform-dx/web-features/releases/new -- Fill in the tag name vX.Y.Z manually as both the tag and release title +- Fill in the tag name `vX.Y.Z` manually as both the tag and release title - For major releases, add a "Breaking Changes" section up top. - For minor releases, add a "What's New" section up top. - Click "Generate release notes" From 79f93f3a48919d6f9e1b64ba53a9de9bfb87b389 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philip=20J=C3=A4genstedt?= Date: Thu, 8 Aug 2024 17:08:51 +0200 Subject: [PATCH 4/5] Update publishing.md --- docs/publishing.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/publishing.md b/docs/publishing.md index 989eb2cde55..5816a788a85 100644 --- a/docs/publishing.md +++ b/docs/publishing.md @@ -5,7 +5,7 @@ > [!NOTE] > This information is for [project owners](../GOVERNANCE.md#roles-and-responsibilities). -These are the steps to publish regular release on NPM and as a GitHub release: +These are the steps to publish a regular release on NPM and as a GitHub release: - Determine if it should be a major, minor, or patch release. The "[major version required](https://github.com/web-platform-dx/web-features/pulls?q=is%3Apr+label%3A%major+version+required%22+is%3Aclosed+sort%3Aupdated-desc)" and "[minor version required](https://github.com/web-platform-dx/web-features/pulls?q=is%3Apr+label%3A%minor+version+required%22+is%3Aclosed+sort%3Aupdated-desc)" labels should be used to support this decision. - Update `packages/web-features/package.json` and `packages/web-features/package-lock.json` in a PR and get review. From e71cb044ea080182fce4850f5d47e2845a207748 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philip=20J=C3=A4genstedt?= Date: Thu, 8 Aug 2024 17:12:11 +0200 Subject: [PATCH 5/5] Update publishing.md --- docs/publishing.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/publishing.md b/docs/publishing.md index 5816a788a85..4d86af77c80 100644 --- a/docs/publishing.md +++ b/docs/publishing.md @@ -7,7 +7,7 @@ These are the steps to publish a regular release on NPM and as a GitHub release: -- Determine if it should be a major, minor, or patch release. The "[major version required](https://github.com/web-platform-dx/web-features/pulls?q=is%3Apr+label%3A%major+version+required%22+is%3Aclosed+sort%3Aupdated-desc)" and "[minor version required](https://github.com/web-platform-dx/web-features/pulls?q=is%3Apr+label%3A%minor+version+required%22+is%3Aclosed+sort%3Aupdated-desc)" labels should be used to support this decision. +- Determine if it should be a major, minor, or patch release. The "[major version required](https://github.com/web-platform-dx/web-features/pulls?q=is%3Apr+is%3Amerged+label%3A%22major+version+required%22+sort%3Aupdated-desc)" and "[minor version required](https://github.com/web-platform-dx/web-features/pulls?q=is%3Apr+is%3Amerged+label%3A%22minor+version+required%22+sort%3Aupdated-desc)" labels should be used to support this decision. - Update `packages/web-features/package.json` and `packages/web-features/package-lock.json` in a PR and get review. - Merge the PR and draft a new release at https://github.com/web-platform-dx/web-features/releases/new - Fill in the tag name `vX.Y.Z` manually as both the tag and release title