@unimelb/pattern-lib-vue 11.1.2 → 11.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.out/vue.js +1 -1
- package/README.md +47 -24
- package/package.json +4 -9
package/README.md
CHANGED
|
@@ -50,21 +50,6 @@ Storybook is the main development environment.
|
|
|
50
50
|
- `yarn dev` - [http://localhost:7002/](http://localhost:7002/)
|
|
51
51
|
- `yarn build` to build the documentation site to `/.out/docs`. Environment variable `LOAD_EXTERNAL_ASSETS` controls whether the documentation site is to load the library assets locally (`false`) or from the CDN (`true`).
|
|
52
52
|
|
|
53
|
-
### Commit message format
|
|
54
|
-
|
|
55
|
-
- The project uses [Semantic Release](https://semantic-release.gitbook.io/semantic-release/) to automate the release process. And it uses the commit messages to determine the type of changes in the codebase. Following formalized conventions for commit messages, **semantic-release** automatically determines the next [semantic version](https://semver.org) number, generates a changelog and publishes the release.
|
|
56
|
-
- By default **semantic-release** uses [Angular Commit Message Conventions](https://github.com/angular/angular/blob/master/CONTRIBUTING.md#-commit-message-format).
|
|
57
|
-
|
|
58
|
-
The table below shows which commit message gets you which release type when `semantic-release` runs (using the default configuration):
|
|
59
|
-
|
|
60
|
-
| Commit message | Release type |
|
|
61
|
-
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------- |
|
|
62
|
-
| `fix(pencil): stop graphite breaking when too much pressure applied` | Patch Release |
|
|
63
|
-
| `feat(pencil): add 'graphiteWidth' option` | ~~Minor~~ Feature Release |
|
|
64
|
-
| `perf(pencil): remove graphiteWidth option`<br><br>`BREAKING CHANGE: The graphiteWidth option has been removed.`<br>`The default graphite width of 10mm is always used for performance reasons.` | ~~Major~~ Breaking Release |
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
- Every commits that contains `[skip release]` or `[release skip]` in their message will be excluded from the commit analysis and won't participate in the release type determination.
|
|
68
53
|
### Generator
|
|
69
54
|
|
|
70
55
|
This project includes generators to speed up common development tasks. Commands include:
|
|
@@ -150,21 +135,58 @@ For your own sanity, make sure to install your code editor's ESLint and stylelin
|
|
|
150
135
|
- `yarn lint:js`
|
|
151
136
|
- `yarn lint:js --fix`
|
|
152
137
|
|
|
138
|
+
## Release process
|
|
139
|
+
|
|
140
|
+
**At the start of a new release sprint:**
|
|
141
|
+
|
|
142
|
+
- Create a milestone called `next-release`.
|
|
143
|
+
|
|
144
|
+
**Throughout the release sprint:**
|
|
145
|
+
|
|
146
|
+
- Assign the appropriate `pr-` label to every new PR: `pr-major` if it contains a breaking change, `pr-minor` if it adds a new feature, `pr-patch` in all other cases.
|
|
147
|
+
- Assign issues and PRs to `next-release` as they are resolved/merged.
|
|
148
|
+
- Assign additional labels to issues when relevant (e.g. `bug`, `chore`, `feature`, etc.)
|
|
149
|
+
|
|
150
|
+
**At the end of the release sprint:**
|
|
151
|
+
|
|
152
|
+
1. Look at all the PRs that were assigned to `next-release` throughout the sprint and identify the highest-level of change (major, minor or patch). Deduce the next release's version number and rename the milestone accordingly.
|
|
153
|
+
1. Create a new release notes draft based on the following template: `.github/RELEASE_NOTES_TEMPLATE.md`.
|
|
154
|
+
1. Write the release notes by going through all the issues and PRs assigned to the milestone.
|
|
155
|
+
1. Deploy to production (cf. next section).
|
|
156
|
+
1. Once the library and documentation sites are deployed, publish the release notes and close the milestone.
|
|
157
|
+
1. Share the ZenHub milestone report with stakeholders.
|
|
158
|
+
|
|
159
|
+
**See more Notes about the release process in the release.md section in docs:**
|
|
160
|
+
[Docs section](https://github.com/unimelb/pattern-lib/tree/master/docs)
|
|
161
|
+
|
|
153
162
|
## Deployment
|
|
154
163
|
|
|
155
|
-
|
|
164
|
+
To deploy to production:
|
|
165
|
+
|
|
166
|
+
1. Bump the `version` number in `package.json` (cf. note below).
|
|
167
|
+
1. Commit the version change to the `dev` branch.
|
|
168
|
+
1. Create a pull request to merge the `dev` branch into `master` - e.g. "Deploy v1.0.1".
|
|
169
|
+
1. Wait for the mandatory checks to pass then select "Rebase and merge" (cf. note below).
|
|
170
|
+
|
|
171
|
+
Semaphore then automatically builds the library and syncs the output files to S3. If the version you're deploying had been previously deployed, you'll need to invalidate the files on the CDN (AWS Cloudfront) or wait a day or so for this to happen automatically. Once the library is deployed, follow the release process below.
|
|
172
|
+
|
|
173
|
+
> **Note on versioning**: the version number follows the [semver](http://semver.org/) convention `MAJOR.MINOR.PATCH`, where: `MAJOR` corresponds to a breaking change (e.g. a change in a component's markup), `MINOR` to a new feature (e.g. a new component, a new feature for an existing component, etc.), and `PATCH` to a bug fix or under-the-hood change (e.g. code clean-up, performance improvement, etc.)
|
|
156
174
|
|
|
157
|
-
|
|
158
|
-
2. Wait for the mandatory checks to pass then select "Squash and merge" following the [commit message format](#commit-message-format).
|
|
175
|
+
> **Note on rebase**: rebasing `dev` onto `master` avoids creating a merge commit that would require merging `master` back into `dev`.
|
|
159
176
|
|
|
160
|
-
|
|
177
|
+
### Semi-automatic deployment to dev
|
|
161
178
|
|
|
162
|
-
|
|
179
|
+
Pre-release builds can be created like this (using the git pre-push hook behind the scenes):
|
|
163
180
|
|
|
164
|
-
1.
|
|
165
|
-
|
|
181
|
+
1. Check out a clean `dev` branch
|
|
182
|
+
1. in bash `git push`
|
|
183
|
+
- This will increment the pre-release version number and make a commit to your local repository
|
|
184
|
+
1. in bash `git push` again
|
|
185
|
+
- You will be prompted that this will trigger a build. Answer 'y'
|
|
186
|
+
- This will push (only) your version number change commit to the remote `dev` repo
|
|
187
|
+
1. After the normal checks a build with the new version will be triggered by Semaphore
|
|
166
188
|
|
|
167
|
-
>
|
|
189
|
+
> **Note on pre-release versions**: These are legitimate [semver](http://semver.org/) versions. They have the format MAJOR.MINOR.PATCH-beta.NUMBER. **Only** these pre-release versions will be published on `dev`.
|
|
168
190
|
|
|
169
191
|
## Testing
|
|
170
192
|
|
|
@@ -179,6 +201,7 @@ For your own sanity, make sure to install your code editor's ESLint and stylelin
|
|
|
179
201
|
Supported browsers:
|
|
180
202
|
|
|
181
203
|
- last two versions of Chrome, Firefox and Edge
|
|
204
|
+
- IE 11
|
|
182
205
|
- Safari 8+
|
|
183
206
|
- iOS 8.4+
|
|
184
207
|
- Android 4.4+
|
|
@@ -210,4 +233,4 @@ If you wish to update the snapshots with your changes run `yarn test:e2e:updates
|
|
|
210
233
|
- [University Home Page](https://unimelb.edu.au)
|
|
211
234
|
- [About Us](https://about.unimelb.edu.au)
|
|
212
235
|
- [Brand Hub](https://brandhub.unimelb.edu.au)
|
|
213
|
-
- [MSpace](https://mspace.unimelb.edu.au)
|
|
236
|
+
- [MSpace](https://mspace.unimelb.edu.au)
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@unimelb/pattern-lib-vue",
|
|
3
3
|
"description": "A complete design system for the University of Melbourne.",
|
|
4
|
-
"version": "11.
|
|
4
|
+
"version": "11.2.3",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
7
7
|
"url": "https://github.com/unimelb/pattern-lib.git"
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"author": "The University of Melbourne",
|
|
10
10
|
"license": "UNLICENSED",
|
|
11
11
|
"engines": {
|
|
12
|
-
"node": ">=
|
|
12
|
+
"node": ">=10.0.0",
|
|
13
13
|
"yarn": "*"
|
|
14
14
|
},
|
|
15
15
|
"main": ".out/vue.js",
|
|
@@ -38,8 +38,7 @@
|
|
|
38
38
|
"test:updatesnapshots": "run-s build start:updatesnapshots",
|
|
39
39
|
"generate": "plop --plopfile generator/index.js",
|
|
40
40
|
"prepublish": "cross-env LOAD_EXTERNAL_ASSETS=true npm run build:vue",
|
|
41
|
-
"serve:test": "serve .out/docs"
|
|
42
|
-
"semantic-release": "semantic-release"
|
|
41
|
+
"serve:test": "serve .out/docs"
|
|
43
42
|
},
|
|
44
43
|
"dependencies": {
|
|
45
44
|
"babel-polyfill": "^6.26.0",
|
|
@@ -63,9 +62,6 @@
|
|
|
63
62
|
"vue-scrollto": "^2.17.1"
|
|
64
63
|
},
|
|
65
64
|
"devDependencies": {
|
|
66
|
-
"@semantic-release/git": "^9.0.1",
|
|
67
|
-
"@semantic-release/github": "^7.2.3",
|
|
68
|
-
"@semantic-release/npm": "^7.1.3",
|
|
69
65
|
"@storybook/addon-notes": "^3.4.8",
|
|
70
66
|
"@storybook/addon-options": "^3.4.8",
|
|
71
67
|
"@storybook/addons": "^3.4.8",
|
|
@@ -122,7 +118,6 @@
|
|
|
122
118
|
"puppeteer": "^2.1.1",
|
|
123
119
|
"raw-loader": "^0.5.1",
|
|
124
120
|
"rimraf": "^3.0.2",
|
|
125
|
-
"semantic-release": "^17.4.7",
|
|
126
121
|
"serve": "^11.3.0",
|
|
127
122
|
"start-server-and-test": "^1.10.11",
|
|
128
123
|
"storybook-readme": "3.1.1",
|
|
@@ -178,4 +173,4 @@
|
|
|
178
173
|
"pre-commit": "cross-env lint-staged"
|
|
179
174
|
}
|
|
180
175
|
}
|
|
181
|
-
}
|
|
176
|
+
}
|