Stripped personal data from development repository
Samo Penic
2019-02-20 83c3f647c35477564b77cbc5b36d37d793d5442a
commit | author | age
83c3f6 1 # Maintaining
SP 2 ## Release Process
3 Chart.js relies on [Travis CI](https://travis-ci.org/) to automate the library [releases](https://github.com/chartjs/Chart.js/releases).
4
5 ### Releasing a New Version
6
7 1. draft release notes on [GitHub](https://github.com/chartjs/Chart.js/releases/new) for the upcoming tag
8 1. update `master` `package.json` version using [semver](http://semver.org/) semantic
9 1. merge `master` into the `release` branch
10 1. follow the build process on [Travis CI](https://travis-ci.org/chartjs/Chart.js)
11
12 > **Note:** if `master` is merged in `release` with a `package.json` version that already exists, the tag
13 creation fails and the release process is aborted.
14
15 ### Automated Tasks
16 Merging into the `release` branch kicks off the automated release process:
17
18 * build of the `dist/*.js` files
19 * `bower.json` is generated from `package.json`
20 * `dist/*.js` and `bower.json` are added to a detached branch
21 * a tag is created from the `package.json` version
22 * tag (with dist files) is pushed to GitHub
23
24 Creation of this tag triggers a new build:
25
26 * `Chart.js.zip` package is generated, containing dist files and examples
27 * `dist/*.js` and `Chart.js.zip` are attached to the GitHub release (downloads)
28 * a new npm package is published on [npmjs](https://www.npmjs.com/package/chart.js)
29
30 Finally, [cdnjs](https://cdnjs.com/libraries/Chart.js) is automatically updated from the npm release.
31
32 ### Further Reading
33
34 * [Travis GitHub releases](https://github.com/chartjs/Chart.js/pull/2555)
35 * [Bower support and dist/* files](https://github.com/chartjs/Chart.js/issues/3033)
36 * [cdnjs npm auto update](https://github.com/cdnjs/cdnjs/pull/8401)