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
- or `git clone https://github.com/Turfjs/turf.git turf-release`
193
195
-`cd turf-release` - start at the top-level of the repo
194
196
-`pnpm install`
197
+
-`pnpm test` - make sure everything is passing
195
198
196
199
- If you choose to clean up an existing copy instead, be very careful:
197
200
-`git remote -v` - verify your remote origin points to `https://github.com/Turfjs/turf.git`
@@ -205,36 +208,37 @@ To make a release as a core contributor, you will need:
205
208
Before release:
206
209
- If necessary, make and merge a PR with any last minute housekeeping items.
207
210
- Turf's documentation (README.md files) should already be up to date as it is generated automatically on commit from JSDoc comments in source files.
208
-
- Review PR's and decide the new version number to be published (for example 7.0.1 or 7.1.0).
209
-
- If there are breaking changes, then it should be a major version bump, e.g. 7.x.x to 8.0.0. This project follows [semantic versioning](https://semver.org/).
211
+
- Review PR's and decide the new version number to be published. See [semantic versioning](https://semver.org/).
210
212
211
-
Run the release commands, replace `7.0.0` with your version number
212
-
- fetch the latest code from remote origin
213
-
-`git fetch origin`
213
+
Run the following release commands, replacing `7.0.0` with your version number:
214
214
215
-
- create a release branch, replace mf with your initials to make it clear whose branch it is.
215
+
- create a release branch, replacing `mf` with your initials to make it clear who created the branch.
216
216
-`git checkout origin/master -b mf/release-7.0.0`
217
217
218
-
- increment the version number of all packages, without pushing to origin. This will also create a release tag.
218
+
- increment the version number of all packages, and create a local commit, without pushing to origin. This will also create a release tag.
219
219
-`pnpm lerna version --no-commit-hooks --no-push 7.0.0`
220
220
221
-
- stage any files changed by the version command.
222
-
-`git add packages/*/package.json`
223
-
-`git add lerna.json`
224
-
`
225
-
226
-
- create new commit on the release branch
227
-
-`git commit -m "Release v7.0.0"`
228
-
229
221
- Push the release branch and the release tag.
230
222
-`git push origin mf/release-7.0.0 --follow-tags`
231
-
- The tag will trigger the Github [release](https://github.com/Turfjs/turf/blob/master/.github/workflows/release.yml) action which you can view the status of at - https://github.com/Turfjs/turf/actions. If successful, a new [version](https://www.npmjs.com/package/@turf/turf?activeTab=versions) of all turf packages will have been published on NPM.
232
-
233
-
- If the release action was successful, now create a Pull Request for the release and then merge it.
234
-
- A link to create the PR should be in the output of the push command
235
-
- Use the version number for the PR title (e.g. v7.0.0).
236
-
- If a link isn't provided, just create a PR that merges your release branch to master. Here is an example - https://github.com/Turfjs/turf/pull/2615.
237
-
- Don't forget to merge your release PR!
223
+
- Pushing the tag will trigger the Github [release](https://github.com/Turfjs/turf/blob/master/.github/workflows/release.yml) action which you can view the status of at - https://github.com/Turfjs/turf/actions. If successful, a new [version](https://www.npmjs.com/package/@turf/turf?activeTab=versions) of all turf packages will have been published on NPM.
224
+
225
+
- If the release action was not successful
226
+
- commit any changes to master to fix it.
227
+
- Make a [prerelease](#prerelease) if helpful to make sure the release action is successful.
228
+
- Then reset by deleting your tag and branch locally and remotely.
229
+
-`git push --delete origin v7.1.0`
230
+
-`git tag --delete v7.1.0`
231
+
-`git push -d origin mf/release-7.0.0`
232
+
-`git branch -d mf/release-7.0.0`
233
+
- Now redo the steps above starting with creating "A clean local copy of the Turf Github repository"
234
+
235
+
- If the release action was successful, now create a Pull Request for the release to update master.
236
+
- You may be given a link in the output of the branch/tag push command to create the PR.
237
+
- If you don't get this message, just go to https://github.com/Turfjs/turf/pulls and you should be prompted at the top to create a PR for this new branch you just pushed.
238
+
- If that prompt doesn't appear, then just create a new pull request from the PR page and make sure the title is the version number e.g. `v7.0.0` and that it is merging your release branch -> to master.
239
+
- Here is an example PR - https://github.com/Turfjs/turf/pull/2615.
240
+
- Get approval for the release PR and merge it!
241
+
- But only if the publish action was successful. Otherwise you'll have some additional cleanup work to do on the master branch.
238
242
239
243
#### Follow-on steps
240
244
- As part of the release action, a draft Github release will have been created at https://github.com/Turfjs/turf/releases with an auto-generated changelog. Edit and add to the release notes for readability and completeness, specifically noting any breaking changes. Use past releases as a guide. Be sure to "Save draft" each time, then ask for a review from other contributors. Once ready, click `Publish release`. This will make the release notes publicly accessible and notify all watchers of the project.
0 commit comments