|
20 | 20 |
|
21 | 21 | 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.
|
22 | 22 |
|
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. |
24 | 24 |
|
25 | 25 | 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.
|
26 | 26 | <div align="center">
|
|
30 | 30 | </div>
|
31 | 31 | </div>
|
32 | 32 |
|
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 |
34 | 34 | ```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 |
37 | 42 | ```
|
38 | 43 | Double check the version numbers before confirming to publish.
|
39 | 44 |
|
|
46 | 51 | git pull
|
47 | 52 | ```
|
48 | 53 |
|
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. |
50 | 55 |
|
51 | 56 | 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.
|
52 | 57 |
|
53 | 58 | 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`.
|
54 | 59 |
|
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): |
56 | 67 | ```bash
|
57 |
| - git add . |
58 |
| - npm run publish beta |
| 68 | + yarn publish-beta |
59 | 69 | ```
|
60 | 70 | Double check the version numbers before confirming to publish.
|
61 | 71 |
|
62 | 72 |
|
63 | 73 | ## Major/Minor release
|
64 | 74 |
|
65 |
| - |
66 | 75 | ### Cut the release branch
|
67 | 76 |
|
68 | 77 | 1. The latest release branch should be created by duplicating the master branch:
|
|
73 | 82 | ```
|
74 | 83 | 2. Update the links in documentation and website to point to the current branch:
|
75 | 84 | ```bash
|
76 |
| - npm run update-release-branch <X.x> |
| 85 | + yarn update-release-branch <X.x> |
77 | 86 | ```
|
78 | 87 | 3. Push to upstream:
|
79 | 88 | ```bash
|
80 | 89 | git push
|
81 | 90 | ```
|
82 | 91 |
|
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. |
91 | 93 |
|
92 |
| -### Pre-release checks |
| 94 | +5. Follow the standard [patch release](./publish-checklist.md#patch-release) process to do the release |
93 | 95 |
|
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 |
95 | 97 |
|
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 |
97 | 99 |
|
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 |
99 | 101 |
|
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 |
108 | 103 |
|
| 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 | +``` |
109 | 108 |
|
110 |
| -### Publish the website |
| 109 | +With clipboard support for OSX: |
111 | 110 |
|
112 |
| -In the website directory, run: |
113 | 111 | ```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' |
115 | 113 | ```
|
0 commit comments