| 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) | |