11var fs = require ( 'fs' ) ;
22var path = require ( 'path' ) ;
3- var relativePath = require ( 'cached-path-relative' )
3+ var relativePath = require ( 'cached-path-relative' ) ;
44
55var browserResolve = require ( 'browser-resolve' ) ;
66var nodeResolve = require ( 'resolve' ) ;
@@ -206,8 +206,6 @@ Deps.prototype.readFile = function (file, id, pkg) {
206206 var rs = fs . createReadStream ( file , {
207207 encoding : 'utf8'
208208 } ) ;
209- rs . on ( 'error' , function ( err ) { self . emit ( 'error' , err ) } ) ;
210- this . emit ( 'file' , file , id ) ;
211209 return rs ;
212210} ;
213211
@@ -235,7 +233,9 @@ Deps.prototype.getTransforms = function (file, pkg, opts) {
235233
236234 for ( var i = 0 ; i < transforms . length ; i ++ ) ( function ( i ) {
237235 makeTransform ( transforms [ i ] , function ( err , trs ) {
238- if ( err ) return self . emit ( 'error' , err )
236+ if ( err ) {
237+ return dup . emit ( 'error' , err ) ;
238+ }
239239 streams [ i ] = trs ;
240240 if ( -- pending === 0 ) done ( ) ;
241241 } ) ;
@@ -247,7 +247,7 @@ Deps.prototype.getTransforms = function (file, pkg, opts) {
247247 middle . on ( 'error' , function ( err ) {
248248 err . message += ' while parsing file: ' + file ;
249249 if ( ! err . filename ) err . filename = file ;
250- self . emit ( 'error' , err ) ;
250+ dup . emit ( 'error' , err ) ;
251251 } ) ;
252252 input . pipe ( middle ) . pipe ( output ) ;
253253 }
@@ -283,7 +283,7 @@ Deps.prototype.getTransforms = function (file, pkg, opts) {
283283 if ( err ) {
284284 params . basedir = pkg . __dirname ;
285285 return nodeResolve ( id , params , function ( e , r ) {
286- nr ( e , r , true )
286+ nr ( e , r , true ) ;
287287 } ) ;
288288 }
289289
@@ -349,6 +349,9 @@ Deps.prototype.walk = function (id, parent, cb) {
349349 file = rec . file ;
350350
351351 var ts = self . getTransforms ( file , pkg ) ;
352+ ts . on ( 'error' , function ( err ) {
353+ self . emit ( 'error' , err ) ;
354+ } ) ;
352355 ts . pipe ( concat ( function ( body ) {
353356 rec . source = body . toString ( 'utf8' ) ;
354357 fromSource ( file , rec . source , pkg ) ;
@@ -371,6 +374,9 @@ Deps.prototype.walk = function (id, parent, cb) {
371374
372375 if ( rec . source ) {
373376 var ts = self . getTransforms ( file , pkg ) ;
377+ ts . on ( 'error' , function ( err ) {
378+ self . emit ( 'error' , err ) ;
379+ } ) ;
374380 ts . pipe ( concat ( function ( body ) {
375381 rec . source = body . toString ( 'utf8' ) ;
376382 fromSource ( file , rec . source , pkg ) ;
@@ -382,6 +388,7 @@ Deps.prototype.walk = function (id, parent, cb) {
382388 if ( c ) return fromDeps ( file , c . source , c . package , fakePath , Object . keys ( c . deps ) ) ;
383389
384390 self . persistentCache ( file , id , pkg , persistentCacheFallback , function ( err , c ) {
391+ self . emit ( 'file' , file , id ) ;
385392 if ( err ) {
386393 self . emit ( 'error' , err ) ;
387394 return ;
@@ -390,12 +397,13 @@ Deps.prototype.walk = function (id, parent, cb) {
390397 } ) ;
391398
392399 function persistentCacheFallback ( dataAsString , cb ) {
393- var stream = dataAsString ? toStream ( dataAsString ) : self . readFile ( file , id , pkg ) ;
400+ var stream = dataAsString ? toStream ( dataAsString ) : self . readFile ( file , id , pkg ) . on ( 'error' , cb ) ;
394401 stream
395402 . pipe ( self . getTransforms ( fakePath || file , pkg , {
396403 builtin : builtin ,
397404 inNodeModules : parent . inNodeModules
398405 } ) )
406+ . on ( 'error' , cb )
399407 . pipe ( concat ( function ( body ) {
400408 var src = body . toString ( 'utf8' ) ;
401409 var deps = getDeps ( file , src ) ;
@@ -524,7 +532,7 @@ Deps.prototype.lookupPackage = function (file, cb) {
524532 catch ( err ) {
525533 return onpkg ( new Error ( [
526534 err + ' while parsing json file ' + pkgfile
527- ] . join ( '' ) ) )
535+ ] . join ( '' ) ) ) ;
528536 }
529537 pkg . __dirname = dir ;
530538
@@ -539,8 +547,8 @@ Deps.prototype.lookupPackage = function (file, cb) {
539547 delete self . pkgFileCachePending [ pkgfile ] ;
540548 fns . forEach ( function ( f ) { f ( err , pkg ) } ) ;
541549 }
542- if ( err ) cb ( err )
543- else if ( pkg && typeof pkg === 'object' ) cb ( null , pkg )
550+ if ( err ) cb ( err ) ;
551+ else if ( pkg && typeof pkg === 'object' ) cb ( null , pkg ) ;
544552 else {
545553 self . pkgCache [ pkgfile ] = false ;
546554 next ( ) ;
0 commit comments