Upgraded Gulp 3.9 → 4.0 and removed gulp-livereload

This commit is contained in:
2019-05-31 12:27:35 +02:00
parent c91a52046d
commit d49f69ecbd
3 changed files with 1519 additions and 990 deletions

View File

@@ -1,20 +1,19 @@
var argv = require('minimist')(process.argv.slice(2)); let argv = require('minimist')(process.argv.slice(2));
var autoprefixer = require('gulp-autoprefixer'); let autoprefixer = require('gulp-autoprefixer');
var cache = require('gulp-cached'); let cache = require('gulp-cached');
var chmod = require('gulp-chmod'); let chmod = require('gulp-chmod');
var concat = require('gulp-concat'); let concat = require('gulp-concat');
var git = require('gulp-git'); let git = require('gulp-git');
var gulp = require('gulp'); let gulp = require('gulp');
var gulpif = require('gulp-if'); let gulpif = require('gulp-if');
var pug = require('gulp-pug'); let pug = require('gulp-pug');
var livereload = require('gulp-livereload'); let plumber = require('gulp-plumber');
var plumber = require('gulp-plumber'); let rename = require('gulp-rename');
var rename = require('gulp-rename'); let sass = require('gulp-sass');
var sass = require('gulp-sass'); let sourcemaps = require('gulp-sourcemaps');
var sourcemaps = require('gulp-sourcemaps'); let uglify = require('gulp-uglify-es').default;
var uglify = require('gulp-uglify-es').default;
var enabled = { let enabled = {
uglify: argv.production, uglify: argv.production,
maps: !argv.production, maps: !argv.production,
failCheck: !argv.production, failCheck: !argv.production,
@@ -24,19 +23,19 @@ var enabled = {
chmod: argv.production, chmod: argv.production,
}; };
var destination = { let destination = {
css: 'cloud/static/assets/css', css: 'cloud/static/assets/css',
pug: 'cloud/templates', pug: 'cloud/templates',
js: 'cloud/static/assets/js', js: 'cloud/static/assets/js',
} }
var source = { let source = {
pillar: '../pillar/' pillar: '../pillar/'
} }
/* CSS */ /* CSS */
gulp.task('styles', function() { gulp.task('styles', function(done) {
gulp.src('src/styles/**/*.sass') gulp.src('src/styles/**/*.sass')
.pipe(gulpif(enabled.failCheck, plumber())) .pipe(gulpif(enabled.failCheck, plumber()))
.pipe(gulpif(enabled.maps, sourcemaps.init())) .pipe(gulpif(enabled.maps, sourcemaps.init()))
@@ -45,27 +44,26 @@ gulp.task('styles', function() {
)) ))
.pipe(autoprefixer("last 3 versions")) .pipe(autoprefixer("last 3 versions"))
.pipe(gulpif(enabled.maps, sourcemaps.write("."))) .pipe(gulpif(enabled.maps, sourcemaps.write(".")))
.pipe(gulp.dest(destination.css)) .pipe(gulp.dest(destination.css));
.pipe(gulpif(argv.livereload, livereload())); done();
}); });
/* Templates - Pug */ /* Templates - Pug */
gulp.task('templates', function() { gulp.task('templates', function(done) {
gulp.src('src/templates/**/*.pug') gulp.src('src/templates/**/*.pug')
.pipe(gulpif(enabled.failCheck, plumber())) .pipe(gulpif(enabled.failCheck, plumber()))
.pipe(gulpif(enabled.cachify, cache('templating'))) .pipe(gulpif(enabled.cachify, cache('templating')))
.pipe(pug({ .pipe(pug({
pretty: enabled.prettyPug pretty: enabled.prettyPug
})) }))
.pipe(gulp.dest(destination.pug)) .pipe(gulp.dest(destination.pug));
.pipe(gulpif(argv.livereload, livereload()));
// TODO(venomgfx): please check why 'gulp watch' doesn't pick up on .txt changes. // TODO(venomgfx): please check why 'gulp watch' doesn't pick up on .txt changes.
gulp.src('src/templates/**/*.txt') gulp.src('src/templates/**/*.txt')
.pipe(gulpif(enabled.failCheck, plumber())) .pipe(gulpif(enabled.failCheck, plumber()))
.pipe(gulpif(enabled.cachify, cache('templating'))) .pipe(gulpif(enabled.cachify, cache('templating')))
.pipe(gulp.dest(destination.pug)) .pipe(gulp.dest(destination.pug));
.pipe(gulpif(argv.livereload, livereload())); done();
}); });
@@ -73,7 +71,7 @@ gulp.task('templates', function() {
/* Individual Uglified Scripts */ /* Individual Uglified Scripts */
gulp.task('scripts', function() { gulp.task('scripts', function(done) {
gulp.src('src/scripts/*.js') gulp.src('src/scripts/*.js')
.pipe(gulpif(enabled.failCheck, plumber())) .pipe(gulpif(enabled.failCheck, plumber()))
.pipe(gulpif(enabled.cachify, cache('scripting'))) .pipe(gulpif(enabled.cachify, cache('scripting')))
@@ -82,18 +80,13 @@ gulp.task('scripts', function() {
.pipe(rename({suffix: '.min'})) .pipe(rename({suffix: '.min'}))
.pipe(gulpif(enabled.maps, sourcemaps.write("."))) .pipe(gulpif(enabled.maps, sourcemaps.write(".")))
.pipe(gulpif(enabled.chmod, chmod(0o644))) .pipe(gulpif(enabled.chmod, chmod(0o644)))
.pipe(gulp.dest(destination.js)) .pipe(gulp.dest(destination.js));
.pipe(gulpif(argv.livereload, livereload())); done();
}); });
// While developing, run 'gulp watch' // While developing, run 'gulp watch'
gulp.task('watch',function() { gulp.task('watch',function(done) {
// Only listen for live reloads if ran with --livereload
if (argv.livereload){
livereload.listen();
}
let watchStyles = [ let watchStyles = [
'src/styles/**/*.sass', 'src/styles/**/*.sass',
source.pillar + 'src/styles/**/*.sass', source.pillar + 'src/styles/**/*.sass',
@@ -109,15 +102,16 @@ gulp.task('watch',function() {
source.pillar + 'src/templates/**/*.pug', source.pillar + 'src/templates/**/*.pug',
]; ];
gulp.watch(watchStyles,['styles']); gulp.watch(watchStyles, gulp.series('styles'));
gulp.watch(watchScripts,['scripts']); gulp.watch(watchScripts, gulp.series('scripts'));
gulp.watch(watchTemplates,['templates']); gulp.watch(watchTemplates, gulp.series('templates'));
done();
}); });
// Erases all generated files in output directories. // Erases all generated files in output directories.
gulp.task('cleanup', function() { gulp.task('cleanup', function(done) {
var paths = []; let paths = [];
for (attr in destination) { for (attr in destination) {
paths.push(destination[attr]); paths.push(destination[attr]);
} }
@@ -125,12 +119,12 @@ gulp.task('cleanup', function() {
git.clean({ args: '-f -X ' + paths.join(' ') }, function (err) { git.clean({ args: '-f -X ' + paths.join(' ') }, function (err) {
if(err) throw err; if(err) throw err;
}); });
done();
}); });
// Run 'gulp' to build everything at once // Run 'gulp' to build everything at once
var tasks = []; let tasks = [];
if (enabled.cleanup) tasks.push('cleanup'); if (enabled.cleanup) tasks.push('cleanup');
gulp.task('default', tasks.concat(['styles', 'templates', 'scripts'])); gulp.task('default', gulp.parallel(tasks.concat(['styles', 'templates', 'scripts'])));

2420
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -7,14 +7,13 @@
"url": "git://git.blender.org/blender-cloud.git" "url": "git://git.blender.org/blender-cloud.git"
}, },
"devDependencies": { "devDependencies": {
"gulp": "~3.9.1", "gulp": "~4.0",
"gulp-autoprefixer": "~6.0.0", "gulp-autoprefixer": "~6.0.0",
"gulp-cached": "~1.1.1", "gulp-cached": "~1.1.1",
"gulp-chmod": "~2.0.0", "gulp-chmod": "~2.0.0",
"gulp-concat": "~2.6.1", "gulp-concat": "~2.6.1",
"gulp-if": "^2.0.2", "gulp-if": "^2.0.2",
"gulp-git": "~2.8.0", "gulp-git": "~2.8.0",
"gulp-livereload": "~4.0.0",
"gulp-plumber": "~1.2.0", "gulp-plumber": "~1.2.0",
"gulp-pug": "~4.0.1", "gulp-pug": "~4.0.1",
"gulp-rename": "~1.4.0", "gulp-rename": "~1.4.0",
@@ -29,11 +28,5 @@
"natives": "^1.1.6", "natives": "^1.1.6",
"popper.js": "^1.14.4", "popper.js": "^1.14.4",
"video.js": "^7.2.2" "video.js": "^7.2.2"
},
"__COMMENTS__": [
"natives@1.1.6 for Gulp 3.x on Node 10.x: https://github.com/gulpjs/gulp/issues/2162#issuecomment-385197164"
],
"resolutions": {
"natives": "1.1.6"
} }
} }