gulp-iconfont: Cannot generate woff / woff2 font with node v10.1.0

I just updated my gulp workflow setup to node v10.1.0 and everything is working except gulp-icofont when generating woff font. If I remove woff from the formats list, it works as expected (the font is generated).

My task is :

gulp.task('icons', function(){
    return gulp.src('./src/icons/*.svg')
        .pipe(iconfont({
            fontName: `fontname`,
            fontHeight: 1000,
            normalize: true,
            formats: ['woff'],
        }))
        .pipe(gulp.dest('./assets/'));
});

it fails with

[14:23:12] gulp-svgicons2svgfont: Font created

events.js:167
      throw er; // Unhandled 'error' event
      ^
Error: Checksum error in glyf
error Command failed with exit code 1.

If I try with woff2

gulp.task('icons', function(){
    return gulp.src('./src/icons/*.svg')
        .pipe(iconfont({
            fontName: `fontname`,
            fontHeight: 1000,
            normalize: true,
            formats: ['woff2'],
        }))
        .pipe(gulp.dest('./assets/'));
});

it fails with

[14:31:26] Starting 'icons'...
[14:31:26] gulp-svgicons2svgfont: Font created

events.js:167
      throw er; // Unhandled 'error' event
      ^
Error: Could not convert the given font.
    at Transform.ttf2woff2GulpTransform [as _transform] (/data/node_modules/gulp-ttf2woff2/src/index.js:76:25)
    at Transform._read (/data/node_modules/readable-stream/lib/_stream_transform.js:184:10)
    at Transform._write (/data/node_modules/readable-stream/lib/_stream_transform.js:172:83)
    at doWrite (/data/node_modules/readable-stream/lib/_stream_writable.js:428:64)
    at writeOrBuffer (/data/node_modules/readable-stream/lib/_stream_writable.js:417:5)
    at Transform.Writable.write (/data/node_modules/readable-stream/lib/_stream_writable.js:334:11)
    at PassThrough.ondata (/data/node_modules/readable-stream/lib/_stream_readable.js:619:20)
    at PassThrough.emit (events.js:182:13)
    at addChunk (/data/node_modules/readable-stream/lib/_stream_readable.js:291:12)
    at readableAddChunk (/data/node_modules/readable-stream/lib/_stream_readable.js:278:11)
    at PassThrough.Readable.push (/data/node_modules/readable-stream/lib/_stream_readable.js:245:10)
    at PassThrough.Transform.push (/data/node_modules/readable-stream/lib/_stream_transform.js:148:32)
    at PassThrough.afterTransform (/data/node_modules/readable-stream/lib/_stream_transform.js:91:10)
    at PassThrough._transform (/data/node_modules/readable-stream/lib/_stream_passthrough.js:46:3)
    at PassThrough.Transform._read (/data/node_modules/readable-stream/lib/_stream_transform.js:184:10)
    at PassThrough.Transform._write (/data/node_modules/readable-stream/lib/_stream_transform.js:172:83)
Emitted 'error' event at:
    at StreamFilter.Duplexer._readable.on.err (/data/node_modules/plexer/src/index.js:66:13)
    at StreamFilter.emit (events.js:187:15)
    at Transform.require.on (/data/node_modules/gulp-iconfont/src/index.js:70:19)
    at Transform.emit (events.js:187:15)
    at Transform.ttf2woff2GulpTransform [as _transform] (/data/node_modules/gulp-ttf2woff2/src/index.js:78:16)
    at Transform._read (/data/node_modules/readable-stream/lib/_stream_transform.js:184:10)
    [... lines matching original stack trace ...]
    at PassThrough.Transform.push (/data/node_modules/readable-stream/lib/_stream_transform.js:148:32)
error Command failed with exit code 1.

Everything was working as expected with node v9.11.1.

About this issue

  • Original URL
  • State: closed
  • Created 6 years ago
  • Reactions: 4
  • Comments: 18 (2 by maintainers)

Most upvoted comments

@geosenna I changed some of the stream handling, which might fix this. Try 10.0.1. Otherwise, I can’t do anything without more details (Travis build is passing now…).

@AnastasiaD version 10.0.1 of gulp-iconfont, not of nodejs itself.

@NaridaL, @geosenna, @schliesser hi, how did you change the version to 10.0.1? I have 10.5.0 now and get the same error. I haven’t found 10.0.1 in nodejs releases, only 10.0.0. Thanks!

v10.0.0 should fix this. Please close if so.