gulp-useref: additionalStreams not working

Given the below code, which I’ve simplified to make more readable:

gulp.task('build', function() {
  var templateStream = gulp.src('src/**/!(index).html')
    .pipe(processTemplates()) // lazypipe that just calls gulp-angular-templatecache.

  return gulp.src('src/index.html')
    .pipe(addTemplateToIndex()) // Adds <script> reference to 'app/app.templates.js'.
    .pipe($.useref({
      additionalStreams: [templateStream]
    }))
    .pipe($.if('app/**/*.js', processOwnJs()))
    .pipe($.if('*.js', processAllJs()))
    .pipe($.if('*.html', processAllHtml()))
    .pipe(gulp.dest('dist'));
});

I’m getting a File not found with singular glob error, specifying the full absolute path of the ‘app/app.templates.js’ file.

I can’t seem to figure out what exactly is going wrong; through inserting a few calls to gulp-debug I can see that the app.templates.js file appears to be getting passed along with the expected cwd, base and path properties.

About this issue

  • Original URL
  • State: open
  • Created 8 years ago
  • Comments: 16 (7 by maintainers)

Most upvoted comments

Moved from #139

“When I add additionalStreams it immediately stops concatenate files, just copy them” Same problem here.

“version”: “3.0.8”

Moved from #139 I tried the same with the new version of useref 3.0.8 and it doesn’t work. When I add additionalStreams it immediately stops concatenate files, just copy them. But it replaces entries in index.html to target. In addition it tries to add templates.js (I see it via debug and comments in the file)at the beginning of the each section (I have 4) , never mind I add entry to the html or not.