gulp-community / gulp-concat

Streaming concat middleware for gulp
MIT License
792 stars 127 forks source link

concat-with-sourcemaps update seems to have broken gulp-concat for Visual Studio #142

Closed koakesdigitalfleet closed 5 years ago

koakesdigitalfleet commented 6 years ago

The concat-with-sourcemaps npm package recently received an update (3 hours ago as of this post). I have the following gulp tasks set up, neither of which work anymore in visual studio with node version 5.4.1 and npm version 3.3.4:

    cssFiles = ['node_modules/bootstrap/dist/css/bootstrap.min.css',
        'node_modules/devextreme/dist/css/dx.common.css',
        'node_modules/devextreme/dist/css/dx.light.css',
        'node_modules/toastr/build/toastr.min.css',
        'node_modules/jquery-ui-dist/jquery-ui.min.css',
        'bower_components/select2/dist/css/select2.min.css'],
    cssDest = 'MinifiedConcatCSS';

gulp.task('minify-css', () => {
    return gulp.src(cssFiles)
        .pipe(concat('NPMPackageScripts.min.css'))
        .pipe(cleanCSS())
        .pipe(gulp.dest(cssDest));
});

gulp.task('minify-css-one-file', () => {
    return gulp.src('node_modules/bootstrap/dist/css/bootstrap.min.css')
        .pipe(concat('NPMPackageScripts.min.css'))
        .pipe(cleanCSS())
        .pipe(gulp.dest(cssDest));
});

The error:

node_modules\concat-with-sourcemaps\index.js:18
    this.separator = Buffer.from(separator);
                            ^
TypeError: this is not a typed array.
    at Function.from (native)
    at new Concat (\node_modules\concat-with-sourcemaps\index.js:18:29)
    at DestroyableTransform.bufferContents [as _transform] (node_modules\gulp-concat\index.js:64:16)
    at DestroyableTransform.Transform._read (node_modules\through2\node_modules\readable-stream\lib\_stream_transform.js:184:10)
    at DestroyableTransform.Transform._write (node_modules\through2\node_modules\readable-stream\lib\_stream_transform.js:172:83)
    at doWrite (node_modules\through2\node_modules\readable-stream\lib\_stream_writable.js:428:64)
    at writeOrBuffer (node_modules\through2\node_modules\readable-stream\lib\_stream_writable.js:417:5)
    at DestroyableTransform.Writable.write (node_modules\through2\node_modules\readable-stream\lib\_stream_writable.js:334:11)
    at write (node_modules\vinyl-fs\node_modules\readable-stream\lib\_stream_readable.js:623:24)
    at flow (node_modules\vinyl-fs\node_modules\readable-stream\lib\_stream_readable.js:632:7)

My guess is that gulp-concat is trying to use the latest version of concat-with-sourcemaps, and that version doesn't work with the node that is installed with Visual Studio.

I'm going to try out some workarounds, but I figured I would let you know.

koakesdigitalfleet commented 6 years ago

For anyone interested in a workaround, concat works again if you specify "concat-with-sourcemaps": "1.0.5" in your package.json

"devDependencies": {
    "gulp": "3.9.1",
    "gulp-svg-sprite": "1.3.7",
    "gulp-svgmin": "1.2.4",
    "gulp-concat": "2.6.1",
    "gulp-uglify": "3.0.0",
    "gulp-clean-css": "3.9.3",
    "concat-with-sourcemaps": "1.0.5"
  },
Splaktar commented 5 years ago

This was fixed in concat-with-sourcemaps@1.0.7 and should be closed.

phated commented 5 years ago

going to take @Splaktar's word here.