Browse Source

#1866 - Adds more intelligent regexp version number replace, preserves component names in banners

pull/1890/head
jlukic 10 years ago
parent
commit
b42384752d
6 changed files with 57 additions and 44 deletions
  1. 16
      tasks/build.js
  2. 18
      tasks/collections/internal.js
  3. 40
      tasks/config/project/tasks.js
  4. 17
      tasks/rtl/build.js
  5. 5
      tasks/rtl/watch.js
  6. 5
      tasks/watch.js

16
tasks/build.js

@ -15,7 +15,6 @@ var
clone = require('gulp-clone'),
flatten = require('gulp-flatten'),
gulpif = require('gulp-if'),
header = require('gulp-header'),
less = require('gulp-less'),
minifyCSS = require('gulp-minify-css'),
plumber = require('gulp-plumber'),
@ -70,6 +69,11 @@ module.exports = function(callback) {
.pipe(plumber())
.pipe(less(settings.less))
.pipe(autoprefixer(settings.prefix))
.pipe(replace(comments.variables.in, comments.variables.out))
.pipe(replace(comments.license.in, comments.license.out))
.pipe(replace(comments.large.in, comments.large.out))
.pipe(replace(comments.small.in, comments.small.out))
.pipe(replace(comments.tiny.in, comments.tiny.out))
.pipe(flatten())
;
@ -77,14 +81,10 @@ module.exports = function(callback) {
uncompressedStream = stream.pipe(clone());
compressedStream = stream.pipe(clone());
// uncompressed component css
uncompressedStream
.pipe(plumber())
.pipe(replace(comments.variables.in, comments.variables.out))
.pipe(replace(comments.large.in, comments.large.out))
.pipe(replace(comments.small.in, comments.small.out))
.pipe(replace(comments.tiny.in, comments.tiny.out))
.pipe(replace(assets.source, assets.uncompressed))
.pipe(header(banner, settings.header))
.pipe(gulpif(config.hasPermission, chmod(config.permission)))
.pipe(gulp.dest(output.uncompressed))
.pipe(print(log.created))
@ -93,13 +93,13 @@ module.exports = function(callback) {
})
;
// compressed component css
compressedStream = stream
.pipe(plumber())
.pipe(clone())
.pipe(replace(assets.source, assets.compressed))
.pipe(minifyCSS(settings.minify))
.pipe(rename(settings.rename.minCSS))
.pipe(header(banner, settings.header))
.pipe(gulpif(config.hasPermission, chmod(config.permission)))
.pipe(gulp.dest(output.compressed))
.pipe(print(log.created))
@ -119,12 +119,12 @@ module.exports = function(callback) {
gulp.src(source.definitions + '/**/' + globs.components + '.js')
.pipe(plumber())
.pipe(flatten())
.pipe(replace(comments.license.in, comments.license.out))
.pipe(gulp.dest(output.uncompressed))
.pipe(gulpif(config.hasPermission, chmod(config.permission)))
.pipe(print(log.created))
.pipe(uglify(settings.uglify))
.pipe(rename(settings.rename.minJS))
.pipe(header(banner, settings.header))
.pipe(gulp.dest(output.compressed))
.pipe(gulpif(config.hasPermission, chmod(config.permission)))
.pipe(print(log.created))

18
tasks/collections/internal.js

@ -55,6 +55,7 @@ module.exports = function(gulp) {
.pipe(replace(assets.uncompressed, assets.packaged))
.pipe(concatCSS(filenames.concatenatedCSS))
.pipe(gulpif(config.hasPermission, chmod(config.permission)))
.pipe(header(banner, settings.header))
.pipe(gulp.dest(output.packaged))
.pipe(print(log.created))
;
@ -65,9 +66,9 @@ module.exports = function(gulp) {
.pipe(plumber())
.pipe(replace(assets.uncompressed, assets.packaged))
.pipe(concatCSS(filenames.concatenatedMinifiedCSS))
.pipe(minifyCSS(settings.minify))
.pipe(header(banner, settings.header))
.pipe(gulpif(config.hasPermission, chmod(config.permission)))
.pipe(minifyCSS(settings.concatMinify))
.pipe(header(banner, settings.header))
.pipe(gulp.dest(output.packaged))
.pipe(print(log.created))
;
@ -90,7 +91,7 @@ module.exports = function(gulp) {
.pipe(plumber())
.pipe(replace(assets.uncompressed, assets.packaged))
.pipe(concat(filenames.concatenatedMinifiedJS))
.pipe(uglify(settings.uglify))
.pipe(uglify(settings.concatUglify))
.pipe(header(banner, settings.header))
.pipe(gulpif(config.hasPermission, chmod(config.permission)))
.pipe(gulp.dest(output.packaged))
@ -108,6 +109,8 @@ module.exports = function(gulp) {
return gulp.src(output.uncompressed + '/**/' + globs.components + globs.ignoredRTL + '.rtl.css')
.pipe(replace(assets.uncompressed, assets.packaged))
.pipe(concatCSS(filenames.concatenatedRTLCSS))
.pipe(gulpif(config.hasPermission, chmod(config.permission)))
.pipe(header(banner, settings.header))
.pipe(gulp.dest(output.packaged))
.pipe(print(log.created))
;
@ -117,7 +120,8 @@ module.exports = function(gulp) {
return gulp.src(output.uncompressed + '/**/' + globs.components + globs.ignoredRTL + '.rtl.css')
.pipe(replace(assets.uncompressed, assets.packaged))
.pipe(concatCSS(filenames.concatenatedMinifiedRTLCSS))
.pipe(minifyCSS(settings.minify))
.pipe(gulpif(config.hasPermission, chmod(config.permission)))
.pipe(minifyCSS(settings.concatMinify))
.pipe(header(banner, settings.header))
.pipe(gulp.dest(output.packaged))
.pipe(print(log.created))
@ -140,7 +144,7 @@ module.exports = function(gulp) {
.pipe(plumber())
.pipe(replace(assets.uncompressed, assets.packaged))
.pipe(concatCSS(filenames.concatenatedMinifiedCSS))
.pipe(minifyCSS(settings.minify))
.pipe(minifyCSS(settings.concatMinify))
.pipe(header(banner, settings.header))
.pipe(gulpif(config.hasPermission, chmod(config.permission)))
.pipe(gulp.dest(output.packaged))
@ -174,7 +178,7 @@ module.exports = function(gulp) {
.pipe(plumber())
.pipe(replace(assets.uncompressed, assets.packaged))
.pipe(concatCSS(filenames.concatenatedMinifiedCSS))
.pipe(minifyCSS(settings.minify))
.pipe(minifyCSS(settings.concatMinify))
.pipe(header(banner, settings.header))
.pipe(gulpif(config.hasPermission, chmod(config.permission)))
.pipe(gulp.dest(docsOutput.packaged))
@ -199,7 +203,7 @@ module.exports = function(gulp) {
.pipe(plumber())
.pipe(replace(assets.uncompressed, assets.packaged))
.pipe(concat(filenames.concatenatedMinifiedJS))
.pipe(uglify(settings.uglify))
.pipe(uglify(settings.concatUglify))
.pipe(header(banner, settings.header))
.pipe(gulpif(config.hasPermission, chmod(config.permission)))
.pipe(gulp.dest(docsOutput.packaged))

40
tasks/config/project/tasks.js

@ -32,8 +32,14 @@ module.exports = {
// remove all comments from config files (.variable)
variables : {
in : /\/\*[\s\S]+?\/\* End Config \*\//m,
out : '',
in : /(\/\*[\s\S]+?\*\/+)[\s\S]+?\/\* End Config \*\//,
out : '$1',
},
// add version to first comment
license: {
in : /(^\/\*[\s\S]+)(# Semantic UI )([\s\S]+?\*\/)/,
out : '$1$2' + release.version + ' $3'
},
// adds uniform spacing around comments
@ -70,12 +76,6 @@ module.exports = {
url : release.url
},
/* Minified CSS Settings */
minify: {
processImport : false,
keepSpecialComments : 0
},
/* What Browsers to Prefix */
prefix: {
browsers: [
@ -97,15 +97,29 @@ module.exports = {
rtlMinCSS : { extname : '.rtl.min.css' }
},
/* Sourcemaps */
sourcemap: {
includeContent : true,
sourceRoot : '/src'
/* Minified CSS Concat */
minify: {
processImport : false,
keepSpecialComments : 1
},
/* Minified JS Settings */
uglify: {
mangle : true
mangle : true,
preserveComments : 'some'
},
/* Minified Concat CSS Settings */
concatMinify: {
processImport : false,
keepSpecialComments : false
},
/* Minified Concat JS */
concatUglify: {
mangle : true,
preserveComments : false
}
}
};

17
tasks/rtl/build.js

@ -14,7 +14,6 @@ var
clone = require('gulp-clone'),
flatten = require('gulp-flatten'),
gulpif = require('gulp-if'),
header = require('gulp-header'),
less = require('gulp-less'),
minifyCSS = require('gulp-minify-css'),
plumber = require('gulp-plumber'),
@ -67,6 +66,11 @@ module.exports = function(callback) {
.pipe(less(settings.less))
.pipe(autoprefixer(settings.prefix))
.pipe(rtlcss())
.pipe(replace(comments.variables.in, comments.variables.out))
.pipe(replace(comments.license.in, comments.license.out))
.pipe(replace(comments.large.in, comments.large.out))
.pipe(replace(comments.small.in, comments.small.out))
.pipe(replace(comments.tiny.in, comments.tiny.out))
.pipe(flatten())
;
@ -76,13 +80,8 @@ module.exports = function(callback) {
uncompressedStream
.pipe(plumber())
.pipe(replace(comments.variables.in, comments.variables.out))
.pipe(replace(comments.large.in, comments.large.out))
.pipe(replace(comments.small.in, comments.small.out))
.pipe(replace(comments.tiny.in, comments.tiny.out))
.pipe(replace(assets.source, assets.uncompressed))
.pipe(rename(settings.rename.rtlCSS))
.pipe(header(banner, settings.header))
.pipe(gulpif(config.hasPermission, chmod(config.permission)))
.pipe(gulp.dest(output.uncompressed))
.pipe(print(log.created))
@ -97,7 +96,6 @@ module.exports = function(callback) {
.pipe(replace(assets.source, assets.compressed))
.pipe(minifyCSS(settings.minify))
.pipe(rename(settings.rename.rtlMinCSS))
.pipe(header(banner, settings.header))
.pipe(gulpif(config.hasPermission, chmod(config.permission)))
.pipe(gulp.dest(output.compressed))
.pipe(print(log.created))
@ -117,14 +115,13 @@ module.exports = function(callback) {
gulp.src(source.definitions + '/**/' + globs.components + '.js')
.pipe(plumber())
.pipe(flatten())
.pipe(gulp.dest(output.uncompressed))
.pipe(replace(comments.license.in, comments.license.out))
.pipe(gulpif(config.hasPermission, chmod(config.permission)))
.pipe(gulp.dest(output.uncompressed))
.pipe(print(log.created))
.pipe(uglify(settings.uglify))
.pipe(rename(settings.rename.minJS))
.pipe(header(banner, settings.header))
.pipe(gulp.dest(output.compressed))
.pipe(gulpif(config.hasPermission, chmod(config.permission)))
.pipe(print(log.created))
.on('end', function() {
gulp.start('package compressed js');

5
tasks/rtl/watch.js

@ -14,7 +14,6 @@ var
chmod = require('gulp-chmod'),
clone = require('gulp-clone'),
gulpif = require('gulp-if'),
header = require('gulp-header'),
less = require('gulp-less'),
minifyCSS = require('gulp-minify-css'),
plumber = require('gulp-plumber'),
@ -131,6 +130,7 @@ module.exports = function(callback) {
.pipe(plumber())
.pipe(less(settings.less))
.pipe(replace(comments.variables.in, comments.variables.out))
.pipe(replace(comments.license.in, comments.license.out))
.pipe(replace(comments.large.in, comments.large.out))
.pipe(replace(comments.small.in, comments.small.out))
.pipe(replace(comments.tiny.in, comments.tiny.out))
@ -146,7 +146,6 @@ module.exports = function(callback) {
uncompressedStream
.pipe(plumber())
.pipe(replace(assets.source, assets.uncompressed))
.pipe(header(banner, settings.header))
.pipe(rename(settings.rename.rtlCSS))
.pipe(gulp.dest(output.uncompressed))
.pipe(print(log.created))
@ -160,7 +159,6 @@ module.exports = function(callback) {
.pipe(replace(assets.source, assets.compressed))
.pipe(minifyCSS(settings.minify))
.pipe(rename(settings.rename.minCSS))
.pipe(header(banner, settings.header))
.pipe(rename(settings.rename.rtlMinCSS))
.pipe(gulp.dest(output.compressed))
.pipe(print(log.created))
@ -186,6 +184,7 @@ module.exports = function(callback) {
], function(file) {
gulp.src(file.path)
.pipe(plumber())
.pipe(replace(comments.license.in, comments.license.out))
.pipe(gulpif(config.hasPermission, chmod(config.permission)))
.pipe(gulp.dest(output.uncompressed))
.pipe(print(log.created))

5
tasks/watch.js

@ -14,7 +14,6 @@ var
chmod = require('gulp-chmod'),
clone = require('gulp-clone'),
gulpif = require('gulp-if'),
header = require('gulp-header'),
less = require('gulp-less'),
minifyCSS = require('gulp-minify-css'),
plumber = require('gulp-plumber'),
@ -138,6 +137,7 @@ module.exports = function(callback) {
.pipe(plumber())
.pipe(less(settings.less))
.pipe(replace(comments.variables.in, comments.variables.out))
.pipe(replace(comments.license.in, comments.license.out))
.pipe(replace(comments.large.in, comments.large.out))
.pipe(replace(comments.small.in, comments.small.out))
.pipe(replace(comments.tiny.in, comments.tiny.out))
@ -152,7 +152,6 @@ module.exports = function(callback) {
uncompressedStream
.pipe(plumber())
.pipe(replace(assets.source, assets.uncompressed))
.pipe(header(banner, settings.header))
.pipe(gulp.dest(output.uncompressed))
.pipe(print(log.created))
.on('end', function() {
@ -165,7 +164,6 @@ module.exports = function(callback) {
.pipe(replace(assets.source, assets.compressed))
.pipe(minifyCSS(settings.minify))
.pipe(rename(settings.rename.minCSS))
.pipe(header(banner, settings.header))
.pipe(gulp.dest(output.compressed))
.pipe(print(log.created))
.on('end', function() {
@ -190,6 +188,7 @@ module.exports = function(callback) {
], function(file) {
gulp.src(file.path)
.pipe(plumber())
.pipe(replace(comments.license.in, comments.license.out))
.pipe(gulpif(config.hasPermission, chmod(config.permission)))
.pipe(gulp.dest(output.uncompressed))
.pipe(print(log.created))

Loading…
Cancel
Save