Tests do not work in node 5.x.x
fsoc opened this issue · 2 comments
fsoc commented
As you can see 4.2.3 works but not 5.2.0.
To reproduce, do the following in a git clone:
nvm install 4.2.3; nvm use 4.2.3; rm -rf node_modules/; npm install;gulp
[15:41:41] Using gulpfile ~/a/jsx-transform/gulpfile.js
[15:41:41] Starting 'test'...
jsx.fromString()
✓ desugars JSX
✓ desugars JSX with ES6 module exports
✓ fromStrings self-closing tags
✓ renders JS expressions inside JSX tag
✓ supports custom component patterns
✓ supports spread attributes
options.factory
✓ throws error if not set
✓ set factory
options.passUnknownTagsToFactory
✓ passes unknown tags to options.factory
options.unknownTagsAsString
✓ passes unknown tags to docblock ident as string
options.arrayChildren
✓ dont pass array for children
jsx.browserifyTransform()
✓ transforms JSX (42ms)
✓ ignores .json files
13 passing (133ms)
[15:41:42] Finished 'test' after 581 ms
[15:41:42] Starting 'default'...
[15:41:42] Finished 'default' after 12 μs
nvm install 5.2.0; nvm use 5.2.0; rm -rf node_modules/; npm install
[15:45:50] Using gulpfile ~/a/jsx-transform/gulpfile.js
[15:45:50] Starting 'test'...
[15:45:51] 'test' errored after 587 ms
[15:45:51] Error in plugin 'gulp-mocha'
Message:
Cannot find module 'jstransform/node_modules/esprima-fb'
Details:
code: MODULE_NOT_FOUND
Stack:
Error: Cannot find module 'jstransform/node_modules/esprima-fb'
at Function.Module._resolveFilename (module.js:336:15)
at Module.require (/Users/fsoc/a/jsx-transform/node_modules/jscoverage/lib/patch.js:56:23)
at require (module.js:384:17)
at Object.<anonymous> (/Users/fsoc/a/jsx-transform/lib/visitor.js:57:14)
at Module._compile (module.js:460:26)
at Object.Module._extensions..js (/Users/fsoc/a/jsx-transform/node_modules/jscoverage/lib/patch.js:115:12)
at Module.require (/Users/fsoc/a/jsx-transform/node_modules/jscoverage/lib/patch.js:76:30)
at require (module.js:384:17)
at Object.<anonymous> (/Users/fsoc/a/jsx-transform/lib/jsx.js:90:17)
at Module._compile (module.js:460:26)
at Object.Module._extensions..js (/Users/fsoc/a/jsx-transform/node_modules/jscoverage/lib/patch.js:115:12)
at Module.require (/Users/fsoc/a/jsx-transform/node_modules/jscoverage/lib/patch.js:76:30)
at require (module.js:384:17)
at Object.<anonymous> (/Users/fsoc/a/jsx-transform/test/jsx.js:4:59)
at Module._compile (module.js:460:26)
at Object.Module._extensions..js (/Users/fsoc/a/jsx-transform/node_modules/jscoverage/lib/patch.js:115:12)
at Module.load (/Users/fsoc/a/jsx-transform/node_modules/coffee-script/lib/coffee-script/register.js:45:36)
at Function.Module._load (module.js:310:12)
at Module.require (module.js:365:17)
at Module.require (/Users/fsoc/a/jsx-transform/node_modules/jscoverage/lib/patch.js:63:29)
at require (module.js:384:17)
at /Users/fsoc/a/jsx-transform/node_modules/mocha/lib/mocha.js:216:27
at Array.forEach (native)
at Mocha.loadFiles (/Users/fsoc/a/jsx-transform/node_modules/mocha/lib/mocha.js:213:14)
at Mocha.run (/Users/fsoc/a/jsx-transform/node_modules/mocha/lib/mocha.js:453:10)
at Domain.<anonymous> (/Users/fsoc/a/jsx-transform/node_modules/gulp-mocha/index.js:56:20)
at Domain.run (domain.js:197:16)
at Stream.<anonymous> (/Users/fsoc/a/jsx-transform/node_modules/gulp-mocha/index.js:54:5)
at _end (/Users/fsoc/a/jsx-transform/node_modules/through/index.js:65:9)
at Stream.stream.end (/Users/fsoc/a/jsx-transform/node_modules/through/index.js:74:5)
at DestroyableTransform.onend (/Users/fsoc/a/jsx-transform/node_modules/readable-stream/lib/_stream_readable.js:523:10)
at DestroyableTransform.g (events.js:199:16)
at DestroyableTransform.emit (events.js:129:20)
at /Users/fsoc/a/jsx-transform/node_modules/readable-stream/lib/_stream_readable.js:965:16
at process._tickDomainCallback (node.js:381:11)
wildlyinaccurate commented
I've just stumbled upon this as well. I believe #38 fixes this.
A workaround is for consumers of jsx-transform to add esprima-fb@^15001.1001.0-dev-harmony-fb
as a devDependency.
wildlyinaccurate commented