Gulp: Avoid re-building unchanged files by caching the results

This commit is contained in:
Pablo Vazquez 2016-09-20 15:17:19 +02:00
parent 4b11aab429
commit 7598ad0b57
2 changed files with 12 additions and 6 deletions

View File

@ -11,6 +11,7 @@ var rename = require('gulp-rename');
var sass = require('gulp-sass'); var sass = require('gulp-sass');
var sourcemaps = require('gulp-sourcemaps'); var sourcemaps = require('gulp-sourcemaps');
var uglify = require('gulp-uglify'); var uglify = require('gulp-uglify');
var cache = require('gulp-cached');
var enabled = { var enabled = {
uglify: argv.production, uglify: argv.production,
@ -20,10 +21,12 @@ var enabled = {
liveReload: !argv.production liveReload: !argv.production
}; };
/* CSS */ /* CSS */
gulp.task('styles', function() { gulp.task('styles', function() {
gulp.src('src/styles/**/*.sass') gulp.src('src/styles/**/*.sass')
.pipe(gulpif(enabled.failCheck, plumber())) .pipe(gulpif(enabled.failCheck, plumber()))
.pipe(cache('styling'))
.pipe(gulpif(enabled.maps, sourcemaps.init())) .pipe(gulpif(enabled.maps, sourcemaps.init()))
.pipe(sass({ .pipe(sass({
outputStyle: 'compressed'} outputStyle: 'compressed'}
@ -39,6 +42,7 @@ gulp.task('styles', function() {
gulp.task('templates', function() { gulp.task('templates', function() {
gulp.src('src/templates/**/*.jade') gulp.src('src/templates/**/*.jade')
.pipe(gulpif(enabled.failCheck, plumber())) .pipe(gulpif(enabled.failCheck, plumber()))
.pipe(cache('templating'))
.pipe(jade({ .pipe(jade({
pretty: enabled.prettyPug pretty: enabled.prettyPug
})) }))
@ -51,6 +55,7 @@ gulp.task('templates', function() {
gulp.task('scripts', function() { gulp.task('scripts', function() {
gulp.src('src/scripts/*.js') gulp.src('src/scripts/*.js')
.pipe(gulpif(enabled.failCheck, plumber())) .pipe(gulpif(enabled.failCheck, plumber()))
.pipe(cache('scripting'))
.pipe(gulpif(enabled.maps, sourcemaps.init())) .pipe(gulpif(enabled.maps, sourcemaps.init()))
.pipe(gulpif(enabled.uglify, uglify())) .pipe(gulpif(enabled.uglify, uglify()))
.pipe(rename({suffix: '.min'})) .pipe(rename({suffix: '.min'}))

View File

@ -8,17 +8,18 @@
"license": "GPL", "license": "GPL",
"devDependencies": { "devDependencies": {
"gulp": "~3.9.1", "gulp": "~3.9.1",
"gulp-sass": "~2.3.1",
"gulp-autoprefixer": "~2.3.1", "gulp-autoprefixer": "~2.3.1",
"gulp-cached": "~1.1.0",
"gulp-chmod": "~1.3.0",
"gulp-concat": "~2.6.0",
"gulp-if": "^2.0.1", "gulp-if": "^2.0.1",
"gulp-jade": "~1.1.0", "gulp-jade": "~1.1.0",
"gulp-sourcemaps": "~1.6.0",
"gulp-plumber": "~1.1.0",
"gulp-livereload": "~3.8.1", "gulp-livereload": "~3.8.1",
"gulp-concat": "~2.6.0", "gulp-plumber": "~1.1.0",
"gulp-uglify": "~1.5.3",
"gulp-rename": "~1.2.2", "gulp-rename": "~1.2.2",
"gulp-chmod": "~1.3.0", "gulp-sass": "~2.3.1",
"gulp-sourcemaps": "~1.6.0",
"gulp-uglify": "~1.5.3",
"minimist": "^1.2.0" "minimist": "^1.2.0"
} }
} }