browserify / watchify

watch mode for browserify builds
Other
1.79k stars 203 forks source link

Update event not triggered every save (called every 3 saves...) #359

Open benjaminrobinet opened 5 years ago

benjaminrobinet commented 5 years ago

Hello!

It's realy weird but, the update event is called every time I've saved my file 3 times. I'm using gulp and here is my config:

var gulp = require("gulp");
var browserify = require('browserify');
var watchify = require('watchify');
var babelify = require('babelify');
var uglify = require("gulp-uglify");
var buffer = require("vinyl-buffer");
var source = require("vinyl-source-stream");
var gutil = require("gulp-util");
var sourcemaps = require("gulp-sourcemaps");
var errorify = require("errorify");

gulp.task("default", function () {
    let bundler = browserify({
        entries: "./src/js/app.js",
        debug: true,
    });

    return bundle(bundler);
});

gulp.task("watch", function () {
    let bundler = browserify({
        cache: {}, packageCache: {},
        entries: "./src/js/app.js",
        debug: true,
    }).plugin(watchify, errorify);

    bundler.on('update', function () {
        bundle(bundler);
    });

    bundler.on('log', function (msg) {
        console.log(msg);
    });

    bundle(bundler);
});

function bundle(bundler) {
    return bundler.transform(babelify)
        .bundle()
        .pipe(source("main.js"))
        .pipe(buffer())
        .pipe(sourcemaps.init({loadMaps: true}))
        // .pipe(uglify())
        // .on("error", gutil.log)
        .pipe(sourcemaps.write("./"))
        .pipe(gulp.dest("./dist/js"));
}

I'am using Node v10.13.0

And here are my devDependecies:

"devDependencies": {
    "@babel/core": "^7.1.2",
    "@babel/preset-env": "^7.1.0",
    "babelify": "^10.0.0",
    "browserify": "^16.2.3",
    "errorify": "^0.3.1",
    "gulp": "^3.9.1",
    "gulp-sourcemaps": "^2.6.4",
    "gulp-uglify": "^3.0.1",
    "gulp-util": "latest",
    "vinyl-buffer": "^1.0.1",
    "vinyl-source-stream": "^2.0.0",
    "watchify": "^3.11.0"
  }

Thank you :)