daitienshi
daitienshi

Reputation: 201

gulp-concat is adding same files twice

I'm seeing a similar issue as this post (gulp-concat twice the content). However, I'm dumping the concatenated file into a different directory, so it's not pulling in the resulting concatenated file into task, yet I'm seeing the contents of each file doubling up for some reason.

My gulp file is as follows:

/* jshint node: true */

module.exports = function (gulp, options, plugins) {
    var merge = require('merge-stream');
    var uglify = require('gulp-uglify');
    var pump = require('pump');
    var gp_concat = require('gulp-concat');
    var gp_rename = require('gulp-rename');
    var gp_ignore = require('gulp-ignore');
    var ngAnnotate = require('gulp-ng-annotate');

    var paths = require('../paths');
    var utils = require('../utils');

    var base = [
        paths.APP,
        paths.ETC,
        paths.DESIGN
    ];

    gulp.task('scripts:clean', function () {
        var srcOptions = {
            read: false
        };

        var tasks = base.map(function (folder) {
            return gulp.src(folder + '/**/' + paths.GENERATED_SUBPATH + '/js/**/*.js', srcOptions)
                .pipe(plugins.clean({force: true}));
        });

        return merge(tasks);
    });


    gulp.task('compress', function () {
        var filesToInclude = ['**/app/components/**/*.js'
                              ];
        var excludeCondition = '**/*.spec*.js'
        var fileToDest = paths.GLOBAL + '/'+paths.GENERATED_SUBPATH + '/js';
        return gulp.src(filesToInclude)
            .pipe(gp_ignore.exclude(excludeCondition))
            .pipe(ngAnnotate({add: true}))
            .pipe(gp_concat('all.concat.js'))
            .pipe(gulp.dest('dist'))
            .pipe(gp_rename('all.min.js'))
            .pipe(uglify())
            .pipe(gulp.dest(fileToDest));
    });



    gulp.task('scripts:build', ['scripts:clean', 'compress']);
};

Can someone help me understand why the

var filesToInclude = ['**/app/components/**/*.js];

would bring in each file twice? I've checked the files and no, the files are not duplicated anywhere in there.

Upvotes: 0

Views: 462

Answers (1)

daitienshi
daitienshi

Reputation: 201

It seems that the issue was with the definition of the filesToInclude, with it starting out with a wildcard. Since the fileToDest puts the file in a separate target directory, but the structure is the same, the process picks up the files twice.

Upvotes: 1

Related Questions