Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Simplify release process #7727

Merged
merged 1 commit into from
Nov 2, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
simplify release process
  • Loading branch information
mourner committed Nov 2, 2021
commit d6427d47d71f59f25775f960fda5c3ca6f848893
37 changes: 17 additions & 20 deletions RELEASE.md
Original file line number Diff line number Diff line change
@@ -1,28 +1,25 @@
Documentation for the release process of Leaflet.
## Releasing a new version of Leaflet

**Please note that you will need to have a git remote called `origin` that points to Leaflet's GitHub repo, since the publish script assumes it**
- [ ] Make a new release branch (for example named `prepare-X.Y.Z`)
- [ ] Make sure you do not have any `package.lock.json` or `yarn.lock` locally, since they can potentially make you build with the wrong package versions
- [ ] Update [the changelog](https://github.com/Leaflet/Leaflet/blob/master/CHANGELOG.md) since last release and commit to the release branch
- [ ] Write a blog post about the new release and put in `/docs/_posts` and commit to the release branch
- [ ] Bump version number in `package.json` and commit to `master`
- [ ] Run `npm run release`
- [ ] Update [the changelog](https://github.com/Leaflet/Leaflet/blob/master/CHANGELOG.md) since last release and commit
- [ ] Run `npm version <patch | minor | major>`
- [ ] Run `npm publish`
- [ ] Verify that the release was correctly published to NPM by checking:
- [ ] [Leaflet NPM package page](https://www.npmjs.com/package/leaflet)
- [ ] files on [Leaflet unpkg page](https://unpkg.com/leaflet@latest/)
- [ ] Make a new release on [Leaflet's GitHub release page](https://github.com/Leaflet/Leaflet/releases/) with the most important parts of the changelog

### Updating docs after the release

- [ ] Make a new branch for the update
- [ ] Write a blog post about the new release and put in `/docs/_posts`
- [ ] Update API docs:
- [ ] run `npm run docs`
- [ ] Copy the built docs from `dist/reference-X.Y.Z.html` to `docs/reference-X.Y.Z.html`, remove content before first and after second "CUT HERE" comment
- [ ] Insert YAML front matter, see old `docs/reference-X.Y.Z.html` for reference
- [ ] Commit the new docs to the release branch
- [ ] Update `docs/reference.html` to redirect to the new version and commit the change to the release branch
- [ ] Update integrity hashes:
- [ ] Checkout the release tag (`git checkout vX.Y.Z`)
- [ ] Run `npm run integrity` or simply `node ./build/integrity.js` if you're not on Debian
- [ ] Copy the hashes and update `integrity_hash_css`, `integrity_hash_source` and `integrity_hash_uglified` in `docs/_config.yml`; commit changes to the release branch
- [ ] Update link to latest release in `docs/download.html`, and commit to the release branch
- [ ] Add link to new version reference in `docs/reference-versions.html`, and commit to the release branch
- [ ] Update `latest_leaflet_version` (and possibly `latest_leaflet_reference`) in `docs/_config.yml` and commit to the release branch
- [ ] Update the announcement section in `docs/index.html` and commit to the release branch
- [ ] If it looks like everything is good at this point, merge the release branch into `master`
- [ ] Make a new release on [Leaflet's GitHub release page](https://github.com/Leaflet/Leaflet/releases/) with the most important parts of the changelog
- [ ] Update `docs/reference.html` to redirect to the new version
- [ ] Run `npm run integrity` and make sure `docs/_config.yml` is updated with new hashes
- [ ] Update link to latest release in `docs/download.md`
- [ ] Add link to new version reference in `docs/reference-versions.html`
- [ ] Update `latest_leaflet_version` (and possibly `latest_leaflet_reference`) in `docs/_config.yml`
- [ ] Update the announcement section in `docs/index.html`
- [ ] Commit all the changes and submit a PR for someone to review
36 changes: 0 additions & 36 deletions build/publish.sh

This file was deleted.

7 changes: 4 additions & 3 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -33,19 +33,20 @@
"files": [
"dist",
"src",
"!dist/leaflet.zip"
"!dist/leaflet.zip",
"!*.leafdoc"
],
"scripts": {
"docs": "node ./build/docs.js",
"test": "karma start ./spec/karma.conf.js",
"build": "npm run rollup && npm run uglify",
"release": "./build/publish.sh",
"lint": "eslint src spec/suites docs/docs/js build",
"lintfix": "npm run lint -- --fix",
"rollup": "rollup -c build/rollup-config.js",
"watch": "rollup -w -c build/rollup-watch-config.js",
"uglify": "uglifyjs dist/leaflet-src.js -c -m -o dist/leaflet.js --source-map filename=dist/leaflet.js.map --source-map content=dist/leaflet-src.js.map --source-map url=leaflet.js.map --comments",
"integrity": "node ./build/integrity.js"
"integrity": "node ./build/integrity.js",
"prepublishOnly": "npm ci && npm run lint && npm run test && NODE_ENV=release npm run build"
},
"eslintConfig": {
"root": true,
Expand Down