.gitignore added
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-prettier / node_modules / stylelint / docs / developer-guide / releases.md
1 # Performing releases
2
3 The primary goals are:
4
5 1.  Publishing the updated package to npm.
6 2.  Creating a GitHub release with notes.
7
8 The secondary goals are:
9
10 1.  Ensuring the stylelint org's `stylelint-config-*` shareable configs are compatible with the release.
11 2.  Updating the online demo at [https://stylelint.io/demo](https://stylelint.io/demo) to use the release.
12 3.  Updating the documentation at [https://stylelint.io](https://stylelint.io) to use the release.
13 4.  Sending out a tweet.
14
15 ## Process
16
17 1.  Create a [new issue](https://github.com/stylelint/stylelint/issues/new) announcing the planned release, e.g. `Release 8.11.1` and include the [template checklist](#new-release-issue-template).
18 2.  Locally test `master` in the `stylelint-config-*` shareable configs repos.
19 3.  Locally test `master` in the `stylelint.io` repo.
20 4.  Locally test `master` in the `stylelint-demo` repo.
21 5.  Both the publishing of the package to npm and the creating a github release are done with [`npmpub`](https://github.com/MoOx/npmpub):
22     1.  Ensure the CHANGELOG is [consistently formatted](pull-requests.md).
23     2.  Run `npm --no-git-tag-version version major|minor|patch` to increment the `version` number in `package.json` and `package-lock.json`, according to whether it's a patch, minor or major release.
24     3.  Replace `# Head` in `CHANGELOG.md` with this new version number e.g. `# 8.1.2`
25     4.  Commit and _push up_ these changes.
26     5.  Go to [https://github.com/stylelint/stylelint](https://github.com/stylelint/stylelint) and confirm these changes are correct and pushed up.
27     6.  Run `npm run dry-release`.
28     7.  Run `npm run release`.
29     8.  Go to [https://www.npmjs.com/package/stylelint](https://www.npmjs.com/package/stylelint) and confirm the package was published correctly.
30     9.  Go to [https://github.com/stylelint/stylelint/releases](https://github.com/stylelint/stylelint/releases) and confirm the release was created correctly.
31 6.  If a new version of any `stylelint-config-*` is required, repeat step 3 for that repo.
32 7.  Update the online demo by changing to the `stylelint-demo` repo:
33     1.  Run `npm install -S stylelint@latest`
34     2.  Run `npm test`
35     3.  Commit and _push up_ these changes.
36     1.  Go to [https://stylelint.io/demo](https://stylelint.io/demo) and confirm the update was automatically deployed.
37 8.  Update the website documentation by changing the to `stylelint.io` repo:
38     1.  Run `npm install -D stylelint@latest`
39     2.  Run `npm test`
40     3.  Commit and _push up_ these changes.
41     4.  Run `npm run deploy`.
42     5.  Go to [https://stylelint.io](https://stylelint.io) and confirm the update was deployed correctly.
43 9.  Compose a tweet that announces the release, communicates what has changed and links to the appropriate heading in the CHANGELOG on [https://stylelint.io](https://stylelint.io).
44
45 ## New Release Issue Template
46
47 ```markdown
48 - [ ] stylelint release
49 - [ ] stylelint-config-recommended update/release
50 - [ ] stylelint-config-standard update/release
51 - [ ] stylelint-demo update
52 - [ ] stylelint.io update
53 - [ ] tweet
54
55 cc @stylelint/core
56 ```