Skip to content

Commit 7d6cee6

Browse files
authored
Update publishing process docs (#14)
1 parent f9e62a3 commit 7d6cee6

File tree

1 file changed

+31
-33
lines changed

1 file changed

+31
-33
lines changed

developer-process/publish-checklist.md

Lines changed: 31 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020

2121
3. If there were several conflicts in cherry-pick process and you have to make several changes in process of selecting partial changes from a PR, create a PR, get teams review, otherwise just push all changes into release branch directly.
2222

23-
4. Test the branch by running `npm run test` and website examples.
23+
4. Test the branch by running `yarn test browser` and website examples.
2424

2525
5. Update CHANGELOG.md, making sure all commits and PRs merged after the last release are recorded properly. **Only commits that affect the published content on NPM should be included**, for example changes to the source code, transpile configurations, and package.json.
2626
<div align="center">
@@ -30,10 +30,15 @@
3030
</div>
3131
</div>
3232

33-
6. Make sure you are using the correct NPM profile, then run the publish script:
33+
6. Make sure you have **no untracked changes**, except for the modified CHANGELOG.md
3434
```bash
35-
git add .
36-
npm run publish prod
35+
git add CHANGELOG.md
36+
git status --porcelain
37+
```
38+
39+
7. Run the publish script, the actual publish will then happen via a [Github workflow](https://github.com/visgl/deck.gl/blob/master/.github/workflows/release.yml):
40+
```bash
41+
yarn publish-prod
3742
```
3843
Double check the version numbers before confirming to publish.
3944

@@ -46,23 +51,27 @@
4651
git pull
4752
```
4853

49-
2. Test the branch by running `npm run test` and website examples.
54+
2. Test the branch by running `yarn test browser` and website examples.
5055

5156
3. Update CHANGELOG.md, making sure all commits and PRs merged after the last release are recorded properly. **Only commits that affect the published content on NPM should be included**, for example changes to the source code, transpile configurations, and package.json.
5257

5358
4. Only if this is the first pre-release of a new version: open `lerna.json`, change the `version` field to `<version>-alpha.0` or `<version>-beta.0`.
5459

55-
5. Make sure you are using the correct NPM profile, then run the publish script:
60+
5. Make sure you have **no untracked changes**, except for the modified CHANGELOG.md
61+
```bash
62+
git add CHANGELOG.md
63+
git status --porcelain
64+
```
65+
66+
6. Run the publish script, the actual publish will then happen via a [Github workflow](https://github.com/visgl/deck.gl/blob/master/.github/workflows/release.yml):
5667
```bash
57-
git add .
58-
npm run publish beta
68+
yarn publish-beta
5969
```
6070
Double check the version numbers before confirming to publish.
6171

6272

6373
## Major/Minor release
6474

65-
6675
### Cut the release branch
6776

6877
1. The latest release branch should be created by duplicating the master branch:
@@ -73,43 +82,32 @@
7382
```
7483
2. Update the links in documentation and website to point to the current branch:
7584
```bash
76-
npm run update-release-branch <X.x>
85+
yarn update-release-branch <X.x>
7786
```
7887
3. Push to upstream:
7988
```bash
8089
git push
8190
```
8291

83-
### Build the website
84-
85-
4. Under the release branch:
86-
```bash
87-
cd website
88-
yarn
89-
yarn build
90-
```
92+
4. Review branch protection rules, e.g. https://github.com/visgl/deck.gl/settings/branches - it may be necessary to a new rule for the newly created branch.
9193

92-
### Pre-release checks
94+
5. Follow the standard [patch release](./publish-checklist.md#patch-release) process to do the release
9395

94-
5. The files inside `website/dist` or `website/public` are the production build of the website. Stage the website on a static server (e.g. your personal GitHub pages) to test in all supported OS and browsers.
96+
## Building the website
9597

96-
6. Test the branch by running `npm run test` and website examples.
98+
The website is built and [published automatically](https://github.com/visgl/deck.gl/blob/master/.github/workflows/website.yml) from the newest release branch
9799

98-
7. Check all the bug/feature tickets under the current github milestone. Make sure they are properly listed in What's New (`/docs/whats-new.md`) and Upgrade Guide (`/docs/upgrade-guide.md`). Open a PR to update these pages.
100+
## Tips
99101

100-
8. Update CHANGELOG.md.
101-
102-
9. Make sure you are using the correct NPM profile, then run the publish script:
103-
```bash
104-
git add .
105-
npm run publish prod
106-
```
107-
Double check the version numbers before confirming to publish.
102+
### Generate CHANGELOG entries
108103

104+
Add the following git alias in `~/.gitconfig` to easily generate entries since the last release:
105+
```bash
106+
cl = !git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty=format:'- %s'
107+
```
109108

110-
### Publish the website
109+
With clipboard support for OSX:
111110

112-
In the website directory, run:
113111
```bash
114-
yarn deploy
112+
cl = !git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty=format:'- %s'| pbcopy && git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty=format:'- %s'
115113
```

0 commit comments

Comments
 (0)