Windows 7 64-bit
pyexecjs 1.1.0
pyv8 1.0
NodeJS 4.0.0
Using execjs with pyv8 (it seems that PyV8 takes precedence):
importexecjsexecjs.get().nameOut[2]: u'PyV8'fromreactimportjsxjsx.transform('helloworld.jsx')
Traceback (mostrecentcalllast):
File"<ipython-input-4-ba80c49e788e>", line1, in<module>jsx.transform('helloworld.jsx')
File"C:\Python27\python-2.7.6.amd64\lib\site-packages\react\jsx.py", line64, intransformreturnJSXTransformer().transform(jsx_path, **opts)
File"C:\Python27\python-2.7.6.amd64\lib\site-packages\react\jsx.py", line51, intransformjs=self.transform_string(i.read(), **kwargs)
File"C:\Python27\python-2.7.6.amd64\lib\site-packages\react\jsx.py", line45, intransform_stringraiseTransformError(e.message[7:])
TransformError: ()'JScript' was my original runtime:
importosos.environ['EXECJS_RUNTIME'] ='JScript'jsx.transform('helloworld.jsx')
Traceback (mostrecentcalllast):
File"<ipython-input-7-ba80c49e788e>", line1, in<module>jsx.transform(helloworld.jsx')
File"C:\Python27\python-2.7.6.amd64\lib\site-packages\react\jsx.py", line64, intransformreturnJSXTransformer().transform(jsx_path, **opts)
File"C:\Python27\python-2.7.6.amd64\lib\site-packages\react\jsx.py", line51, intransformjs=self.transform_string(i.read(), **kwargs)
File"C:\Python27\python-2.7.6.amd64\lib\site-packages\react\jsx.py", line45, intransform_stringraiseTransformError(e.message[7:])
TransformError: or: 'undefined'isnullornotanobjectBut installing NodeJS and using it as the runtime works:
os.environ['EXECJS_RUNTIME'] ='Node'In [9]: jsx.transform('helloworld.jsx')
Out[9]: u'var HelloMessage = React.createClass({displayName: \'HelloMessage\',\n render: function() {\n return React.createElement("div", null, "Hello ", this.props.name);\n }\n});\n\nReact.render(React.createElement(HelloMessage, {name: "John"}), mountNode);'So I guess that should be added to the readme. I have uninstalled PyV8 and now Node is the default runtime under execjs.
Windows 7 64-bit
pyexecjs 1.1.0
pyv8 1.0
NodeJS 4.0.0
Using execjs with pyv8 (it seems that PyV8 takes precedence):
'JScript' was my original runtime:
But installing NodeJS and using it as the runtime works:
So I guess that should be added to the readme. I have uninstalled PyV8 and now Node is the default runtime under execjs.