From 9215d42a267af24acf80a84e7d41755c47b071a0 Mon Sep 17 00:00:00 2001 From: Nick Colley Date: Thu, 31 May 2018 17:43:09 +0100 Subject: [PATCH 1/5] Update package-lock.json after npm install This made doing the release awkward. --- package-lock.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package-lock.json b/package-lock.json index 758bdb12f8..86df1b6369 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15100,7 +15100,7 @@ "send": { "version": "0.16.1", "resolved": "https://registry.npmjs.org/send/-/send-0.16.1.tgz", - "integrity": "sha512-ElCLJdJIKPk6ux/Hocwhk7NFHpI3pVm/IZOYWqUmoxcgeyM+MpxHHKhb8QmlJDX1pU6WrgaHBkVNm73Sv7uc2A==", + "integrity": "sha1-pw4coh0TgsEdDZ9iMd6ygQgNerM=", "dev": true, "requires": { "debug": "2.6.9", @@ -15127,7 +15127,7 @@ "serve-static": { "version": "1.13.1", "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.1.tgz", - "integrity": "sha512-hSMUZrsPa/I09VYFJwa627JJkNs0NrfL1Uzuup+GqHfToR2KcsXFymXSV90hoyw3M+msjFuQly+YzIH/q0MGlQ==", + "integrity": "sha1-TFfVNASnYdjy58HooYpH2/J4pxk=", "dev": true, "requires": { "encodeurl": "1.0.2", From 5f0b5a6acfa423268da012fd139803c3fcdb7724 Mon Sep 17 00:00:00 2001 From: Nick Colley Date: Thu, 31 May 2018 17:43:48 +0100 Subject: [PATCH 2/5] Add release step to run `nvm use` This ensures you are on the right version to release. --- docs/publishing.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/publishing.md b/docs/publishing.md index 64231951ac..4f23da35f1 100644 --- a/docs/publishing.md +++ b/docs/publishing.md @@ -2,6 +2,8 @@ 1. Checkout **master** and pull latest changes. +2. Run `nvm use` to ensure you are using the right version of Node.js and npm. + 2. Run `npm install` to ensure you have the latest dependencies installed. 3. Create and checkout a new branch (`release-[version-number]`). From 387b3d48fa570ee13a9da6aa9bd5ab314c130209 Mon Sep 17 00:00:00 2001 From: Nick Colley Date: Thu, 31 May 2018 17:44:12 +0100 Subject: [PATCH 3/5] Clarify Github release steps --- docs/publishing.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/publishing.md b/docs/publishing.md index 4f23da35f1..70648079d1 100644 --- a/docs/publishing.md +++ b/docs/publishing.md @@ -63,7 +63,9 @@ This will: - select the latest tag version - set "GOV.UK Frontend release v[version-number]" as the title - add release notes from changelog - - attach the generated ZIP that is located at the root of the project + - add a summary of highlights (this will be used when sending comms out) + - attach the generated ZIP that has been generated at the root of the project + - mark the release as a pre-release - publish release 15. Log out from npm From 32603811ee98f789b69ca8c890f3beeb4b3314aa Mon Sep 17 00:00:00 2001 From: Nick Colley Date: Thu, 31 May 2018 17:44:40 +0100 Subject: [PATCH 4/5] Update publishing step numbering --- docs/publishing.md | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/docs/publishing.md b/docs/publishing.md index 70648079d1..689920cac8 100644 --- a/docs/publishing.md +++ b/docs/publishing.md @@ -4,19 +4,19 @@ 2. Run `nvm use` to ensure you are using the right version of Node.js and npm. -2. Run `npm install` to ensure you have the latest dependencies installed. +3. Run `npm install` to ensure you have the latest dependencies installed. -3. Create and checkout a new branch (`release-[version-number]`). +4. Create and checkout a new branch (`release-[version-number]`). -4. Update [`CHANGELOG.md`](../CHANGELOG.md) "Unreleased" heading with the new version number. +5. Update [`CHANGELOG.md`](../CHANGELOG.md) "Unreleased" heading with the new version number. This should be incremented based on [Semantic versioning](https://semver.org/) from the unreleased changes listed. -5. Update [`package/package.json`](../package/package.json) version with the new version number. +6. Update [`package/package.json`](../package/package.json) version with the new version number. This should be incremented based on [Semantic versioning](https://semver.org/) from the unreleased changes listed. -6. Save the changes. Do not commit. +7. Save the changes. Do not commit. -7. Run `npm run pre-release`. +8. Run `npm run pre-release`. This will: - copy files from `src/` to `package/` and run tests @@ -24,7 +24,7 @@ This will: - build "govuk-frontend" Sass and JavaScript files into `dist/` - commit all changes and push the branch to remote -8. (Optional) Test in [GOV.UK Design System](git@github.com:alphagov/govuk-design-system.git) +9. (Optional) Test in [GOV.UK Design System](git@github.com:alphagov/govuk-design-system.git) If you want to test your changes work correctly when used in the GOV.UK Design System you can use [npm link](https://docs.npmjs.com/cli/link) to test before publishing. @@ -41,16 +41,16 @@ This will: npm unlink ../govuk-frontend/package/ ``` -9. Create a pull request and copy the changelog text. +10. Create a pull request and copy the changelog text. When reviewing the PR, check that the version numbers have been updated and that the compiled assets use this version number. -10. Once the pull request is approved, merge to **master**. +11. Once the pull request is approved, merge to **master**. -11. Checkout **master** and pull the latest changes. +12. Checkout **master** and pull the latest changes. -12. Log into npm, using team [credentials](https://github.com/alphagov/design-system-team-credentials/tree/master/npm/govuk-patterns-and-tools). +13. Log into npm, using team [credentials](https://github.com/alphagov/design-system-team-credentials/tree/master/npm/govuk-patterns-and-tools). -13. Run `npm run release`. +14. Run `npm run release`. This will: - check that you're logged in to npm as the correct user. @@ -59,7 +59,7 @@ This will: - push the tag to remote origin - create a zip file of the `dist` directory -14. Create a release in the [Github interface](https://github.com/alphagov/govuk-frontend/releases/new) +15. Create a release in the [Github interface](https://github.com/alphagov/govuk-frontend/releases/new) - select the latest tag version - set "GOV.UK Frontend release v[version-number]" as the title - add release notes from changelog @@ -68,12 +68,12 @@ This will: - mark the release as a pre-release - publish release -15. Log out from npm +16. Log out from npm ```bash npm logout ``` -16. Move Trello cards from "Next Frontend release" column to "Done". +17. Move Trello cards from "Next Frontend release" column to "Done". -17. Add Trello cards to "This Sprint" column for +18. Add Trello cards to "This Sprint" column for - Update the GOV.UK Design System to use the latest release - Update the GOV.UK Prototype Kit to use the latest release From 184ac89d8d06bdedf75dd6f90b33b91e7d8bf8ca Mon Sep 17 00:00:00 2001 From: Nick Colley Date: Thu, 31 May 2018 17:48:33 +0100 Subject: [PATCH 5/5] Update CHANGELOG --- CHANGELOG.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 467003b6a4..438b5c9d70 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -30,6 +30,9 @@ Note: We're not following semantic versioning yet, we are going to talk about th - Fix review application templates to give them the correct HTML structure. ([PR #742](https://github.com/alphagov/govuk-frontend/pull/742)) +- Improve release steps + ([PR #745](https://github.com/alphagov/govuk-frontend/pull/745)) + ## 0.0.31-alpha (Breaking release) 💥 Breaking changes: