|
|
@ -2,20 +2,22 @@
|
|
|
|
|
|
|
|
|
|
|
|
const version = require( "./package" ).version;
|
|
|
|
const version = require( "./package" ).version;
|
|
|
|
const spawn = require( "child_process" ).spawn;
|
|
|
|
const spawn = require( "child_process" ).spawn;
|
|
|
|
const gulp = require( "gulp" );
|
|
|
|
const dest = require( "gulp" ).dest;
|
|
|
|
const task = gulp.task.bind( gulp );
|
|
|
|
const src = require( "gulp" ).src;
|
|
|
|
|
|
|
|
const series = require( "gulp" ).series;
|
|
|
|
|
|
|
|
const task = require( "gulp" ).task;
|
|
|
|
const eslint = require( "gulp-eslint" );
|
|
|
|
const eslint = require( "gulp-eslint" );
|
|
|
|
const mocha = require( "gulp-mocha" );
|
|
|
|
const mocha = require( "gulp-mocha" );
|
|
|
|
const dedent = require( "dedent" );
|
|
|
|
const dedent = require( "dedent" );
|
|
|
|
const browserify = require( "browserify" );
|
|
|
|
const browserify = require( "browserify" );
|
|
|
|
const babelify = require( "babelify" );
|
|
|
|
const babelify = require( "babelify" );
|
|
|
|
const source = require( "vinyl-source-stream" );
|
|
|
|
const stream = require( "vinyl-source-stream" );
|
|
|
|
const rename = require( "gulp-rename" );
|
|
|
|
const rename = require( "gulp-rename" );
|
|
|
|
const buffer = require( "vinyl-buffer" );
|
|
|
|
const buffer = require( "vinyl-buffer" );
|
|
|
|
const uglify = require( "gulp-uglify" );
|
|
|
|
const uglify = require( "gulp-uglify" );
|
|
|
|
const header = require( "gulp-header" );
|
|
|
|
const header = require( "gulp-header" );
|
|
|
|
const del = require( "del" );
|
|
|
|
const del = require( "del" );
|
|
|
|
const runSequence = require( "run-sequence" );
|
|
|
|
const pump = require( "pump" );
|
|
|
|
|
|
|
|
|
|
|
|
function node( args, cb ) {
|
|
|
|
function node( args, cb ) {
|
|
|
|
|
|
|
|
|
|
|
@ -31,8 +33,9 @@ function node( args, cb ) {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// Run ESLint on all JavaScript files.
|
|
|
|
// Run ESLint on all JavaScript files.
|
|
|
|
task( "lint", () => gulp
|
|
|
|
task( "lint", () => pump(
|
|
|
|
.src( [
|
|
|
|
|
|
|
|
|
|
|
|
src( [
|
|
|
|
"**/.*rc.js",
|
|
|
|
"**/.*rc.js",
|
|
|
|
"bin/*.js",
|
|
|
|
"bin/*.js",
|
|
|
|
"lib/**/*.js",
|
|
|
|
"lib/**/*.js",
|
|
|
@ -43,17 +46,20 @@ task( "lint", () => gulp
|
|
|
|
"test/server/run",
|
|
|
|
"test/server/run",
|
|
|
|
"src/*.js",
|
|
|
|
"src/*.js",
|
|
|
|
"gulpfile.js"
|
|
|
|
"gulpfile.js"
|
|
|
|
] )
|
|
|
|
] ),
|
|
|
|
.pipe( eslint( { dotfiles: true } ) )
|
|
|
|
eslint( { dotfiles: true } ),
|
|
|
|
.pipe( eslint.format() )
|
|
|
|
eslint.format(),
|
|
|
|
.pipe( eslint.failAfterError() )
|
|
|
|
eslint.failAfterError()
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
|
|
) );
|
|
|
|
|
|
|
|
|
|
|
|
// Run tests.
|
|
|
|
// Run tests.
|
|
|
|
task( "test", () => gulp
|
|
|
|
task( "test", () => pump(
|
|
|
|
.src( "test/spec/**/*.spec.js", { read: false } )
|
|
|
|
|
|
|
|
.pipe( mocha() )
|
|
|
|
src( "test/spec/**/*.spec.js", { read: false } ),
|
|
|
|
);
|
|
|
|
mocha()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
) );
|
|
|
|
|
|
|
|
|
|
|
|
// Run benchmarks.
|
|
|
|
// Run benchmarks.
|
|
|
|
task( "benchmark", cb => {
|
|
|
|
task( "benchmark", cb => {
|
|
|
@ -96,17 +102,21 @@ task( "build:browser", () => {
|
|
|
|
|
|
|
|
|
|
|
|
`;
|
|
|
|
`;
|
|
|
|
|
|
|
|
|
|
|
|
return browserify( "lib/peg.js", options )
|
|
|
|
return pump(
|
|
|
|
.transform( babelify )
|
|
|
|
|
|
|
|
.bundle()
|
|
|
|
browserify( "lib/peg.js", options )
|
|
|
|
.pipe( source( "peg.js" ) )
|
|
|
|
.transform( babelify )
|
|
|
|
.pipe( header( HEADER ) )
|
|
|
|
.bundle(),
|
|
|
|
.pipe( gulp.dest( "browser" ) )
|
|
|
|
stream( "peg.js" ),
|
|
|
|
.pipe( rename( options ) )
|
|
|
|
header( HEADER ),
|
|
|
|
.pipe( buffer() )
|
|
|
|
dest( "browser" ),
|
|
|
|
.pipe( uglify() )
|
|
|
|
rename( options ),
|
|
|
|
.pipe( header( HEADER ) )
|
|
|
|
buffer(),
|
|
|
|
.pipe( gulp.dest( "browser" ) );
|
|
|
|
uglify(),
|
|
|
|
|
|
|
|
header( HEADER ),
|
|
|
|
|
|
|
|
dest( "browser" )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
|
|
} );
|
|
|
|
} );
|
|
|
|
|
|
|
|
|
|
|
@ -116,6 +126,4 @@ task( "clean", () =>
|
|
|
|
);
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
|
|
// Default task.
|
|
|
|
// Default task.
|
|
|
|
task( "default", cb =>
|
|
|
|
task( "default", series( "lint", "test" ) );
|
|
|
|
runSequence( "lint", "test", cb )
|
|
|
|
|
|
|
|
);
|
|
|
|
|
|
|
|