From: Simon Brunel Date: Thu, 25 Aug 2016 19:13:27 +0000 (+0200) Subject: #3182 Gulp task to generate bower.json file X-Git-Tag: v2.3.0-rc.1~1^2~16^2~4 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=cd50edbc84c2f32a1226c14192e504a30bacd73e;p=thirdparty%2FChart.js.git #3182 Gulp task to generate bower.json file --- diff --git a/.gitignore b/.gitignore index 27254e97e..478edb5ec 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,4 @@ .DS_Store .idea +bower.json diff --git a/.travis.yml b/.travis.yml index 4643c405e..df409f0ec 100644 --- a/.travis.yml +++ b/.travis.yml @@ -15,6 +15,7 @@ script: - gulp test - gulp coverage - gulp package + - gulp bower - cat ./coverage/lcov.info | ./node_modules/.bin/coveralls notifications: diff --git a/docs/00-Getting-Started.md b/docs/00-Getting-Started.md index d6e9f0f27..a04925f55 100644 --- a/docs/00-Getting-Started.md +++ b/docs/00-Getting-Started.md @@ -5,7 +5,7 @@ anchor: getting-started ### Download Chart.js -You can download the latest version of [Chart.js on GitHub](https://github.com/chartjs/Chart.js/releases/latest) or just use these [Chart.js CDN](https://cdnjs.com/libraries/Chart.js) links. +You can download the latest version of [Chart.js on GitHub](https://github.com/chartjs/Chart.js/releases/latest) or just use these [Chart.js CDN](https://cdnjs.com/libraries/Chart.js) links. If you download or clone the repository, you must run `gulp build` to generate the dist files. Chart.js no longer comes with prebuilt release versions, so an alternative option to downloading the repo is **strongly** advised. ### Installation @@ -18,24 +18,12 @@ npm install chart.js --save #### bower -Bower support has been dropped since version 2.2.0 but you can still use Chart.js with Bower thanks to [bower-npm-resolver](https://www.npmjs.com/package/bower-npm-resolver). - -First, add the resolver in your .bowerrc file: -```json -{ - "resolvers": [ - "bower-npm-resolver" - ] -} -``` - -Then: - ```bash -npm install -g bower-npm-resolver -bower install npm:chart.js --save +bower install Chart.js --save ``` +> Note: Bower native support has been reintroduced at version 2.2.3 (previously dropped at version 2.2.0). + ### Selecting the Correct Build Chart.js provides two different builds that are available for your use. The `Chart.js` and `Chart.min.js` files include Chart.js and the accompanying color parsing library. If this version is used and you require the use of the time axis, [Moment.js](http://momentjs.com/) will need to be included before Chart.js. diff --git a/gulpfile.js b/gulpfile.js index cec632ed4..e278e159f 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -1,5 +1,6 @@ var gulp = require('gulp'), concat = require('gulp-concat'), + file = require('gulp-file'), uglify = require('gulp-uglify'), util = require('gulp-util'), jshint = require('gulp-jshint'), @@ -48,6 +49,7 @@ var testFiles = [ '!./test/defaultConfig.tests.js', ]; +gulp.task('bower', bowerTask); gulp.task('build', buildTask); gulp.task('package', packageTask); gulp.task('coverage', coverageTask); @@ -65,9 +67,25 @@ gulp.task('library-size', librarySizeTask); gulp.task('module-sizes', moduleSizesTask); gulp.task('_open', _openTask); gulp.task('dev', ['server', 'default']); - gulp.task('default', ['build', 'watch']); +/** + * Generates the bower.json manifest file which will be pushed along release tags. + * Specs: https://github.com/bower/spec/blob/master/json.md + */ +function bowerTask() { + var json = JSON.stringify({ + name: package.name, + description: package.description, + homepage: package.homepage, + license: package.license, + version: package.version, + main: outDir + "Chart.js" + }, null, 2); + + return file('bower.json', json, { src: true }) + .pipe(gulp.dest('./')); +} function buildTask() { diff --git a/package.json b/package.json index a9a0af248..a7feccad2 100644 --- a/package.json +++ b/package.json @@ -17,6 +17,7 @@ "gulp": "3.9.x", "gulp-concat": "~2.1.x", "gulp-connect": "~2.0.5", + "gulp-file": "^0.3.0", "gulp-html-validator": "^0.0.2", "gulp-insert": "~0.5.0", "gulp-jshint": "~1.5.1",