From 3270b432bcb007944e3b6e17329b062cb6b7da78 Mon Sep 17 00:00:00 2001 From: Marian Oancea Date: Thu, 6 Nov 2014 22:51:37 +0200 Subject: Refactoring Removed browser fixes Updated gulp to bypass native browser objects Added source map for dist --- gulpfile.js | 54 ++++++++++++++++++++++++++++++++++++++++-------------- 1 file changed, 40 insertions(+), 14 deletions(-) (limited to 'gulpfile.js') diff --git a/gulpfile.js b/gulpfile.js index de893a4f5..120e4532d 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -2,14 +2,21 @@ 'use strict'; +var path = require('path'); + var del = require('del'); var gulp = require('gulp'); -var browserify = require('gulp-browserify-thin'); +var browserify = require('browserify'); var jshint = require('gulp-jshint'); -var uglify = require("gulp-uglify"); -var rename = require("gulp-rename"); +var uglify = require('gulp-uglify'); +var rename = require('gulp-rename'); +var envify = require('envify/custom'); +var unreach = require('unreachable-branch-transform'); +var source = require('vinyl-source-stream'); +var exorcist = require('exorcist'); var bower = require('bower'); + var DEST = './dist/'; gulp.task('bower', function(cb){ @@ -30,27 +37,46 @@ gulp.task('clean', ['lint'], function(cb) { }); gulp.task('build', ['clean'], function () { - return browserify() - .require('./index.js', { expose: 'web3'}) - .bundle('ethereum.js') - .on('error', function(err) - { - console.error(err.toString()); - process.exit(1); + return browserify({ + debug: true, + insert_global_vars: false, + detectGlobals: false, + bundleExternal: false + }) + .add('./') + .require('./index.js', {expose: 'web3'}) + .transform('envify', { + NODE_ENV: 'build' + }) + .transform('unreachable-branch-transform') + .transform('uglifyify', { + mangle: false, + compress: { + dead_code: false, + conditionals: true, + unused: false, + hoist_funs: true, + hoist_vars: true, + negate_iife: false + }, + beautify: false, + warnings: true, }) + .bundle() + .pipe(exorcist(path.join( DEST, 'ethereum.js.map'))) + .pipe(source('ethereum.js')) .pipe(gulp.dest( DEST )); }); -gulp.task('minify', ['build'], function(){ +gulp.task('uglify', ['build'], function(){ return gulp.src( DEST + 'ethereum.js') - .pipe(gulp.dest( DEST )) .pipe(uglify()) .pipe(rename('ethereum.min.js')) .pipe(gulp.dest( DEST )); }); gulp.task('watch', function() { - gulp.watch(['./lib/*.js'], ['lint', 'build', 'minify']); + gulp.watch(['./lib/*.js'], ['lint', 'build', 'uglify']); }); -gulp.task('default', ['bower', 'lint', 'build', 'minify']); +gulp.task('default', ['bower', 'lint', 'build', 'uglify']); -- cgit v1.2.3