-
Notifications
You must be signed in to change notification settings - Fork 10.3k
Closed
Description
Description
Note: this issue was reported elsewhere at least once (#1887). It's still broken in the current gatsby version.
gatsby build
leaves the component---src-pages-index-tsx-***.js
file unminified, because of the SyntaxError: Unexpected token: operator (>)
in a =>
.
Environment
Gatsby version: 1.9.149
Node.js version: v8.1.3
Operating System: OSX
File contents (if changed):
gatsby-config.js
:
process.setMaxListeners(0);
const plugin = (resolve, opts=null) => {
const d = {resolve};
if (opts) {
d.options = opts;
}
return d;
}
module.exports = {
plugins: [
'gatsby-plugin-typescript',
'gatsby-plugin-react-helmet',
'gatsby-plugin-sharp',
plugin('gatsby-plugin-typography', {
pathToConfigModule: 'src/utils/typography.ts',
}),
plugin('gatsby-plugin-google-fonts', {
fonts: ['source sans pro', 'overlock'],
}),
plugin('gatsby-plugin-nprogress', {
color: '#FF4F00',
showSpinner: true,
}),
'gatsby-plugin-manifest',
'gatsby-plugin-offline',
'gatsby-transformer-sharp',
plugin('gatsby-source-filesystem', {
name: 'images',
path: `${__dirname}/src/img/`,
}),
],
}
Actual result
gatsby build
silently fails to minify a js file.
Expected behavior
gatsby build
properly minifies the file. If it fails to do so it at the very least must show lots of red bold alerts.
Steps to reproduce
Given the following index.tsx:
export default (props: any) => {
return <h1>hello world</h1>;
}
Run gatsby build.
Result: component---src-pages-index-tsx-***.js
file isn't minified.
If I instrument node_modules/webpack/lib/optimize/UglifyJsPlugin.js (around line 122), I can see the following error:
⠐ Building production JavaScript bundlesopt chunk file component---src-pages-index-tsx-95dadac712787e4124a7.js JS_Parse_Error {
message: 'SyntaxError: Unexpected token: operator (>)',
filename: 'component---src-pages-index-tsx-95dadac712787e4124a7.js',
line: 1931,
col: 26,
pos: 71372,
stack:
Error
at new JS_Parse_Error (eval at <anonymous> (./node_modules/webpack/node_modules/uglify-js/tools/node.js:28:1), <anonymous>:1547:18)
at js_error (eval at <anonymous> (./node_modules/webpack/node_modules/uglify-js/tools/node.js:28:1), <anonymous>:1555:11)
at croak (eval at <anonymous> (./node_modules/webpack/node_modules/uglify-js/tools/node.js:28:1), <anonymous>:2094:9)
at token_error (eval at <anonymous> (./node_modules/webpack/node_modules/uglify-js/tools/node.js:28:1), <anonymous>:2102:9)
at unexpected (eval at <anonymous> (./node_modules/webpack/node_modules/uglify-js/tools/node.js:28:1), <anonymous>:2108:9)
at expr_atom (eval at <anonymous> (./node_modules/webpack/node_modules/uglify-js/tools/node.js:28:1), <anonymous>:2635:9)
at maybe_unary (eval at <anonymous> (./node_modules/webpack/node_modules/uglify-js/tools/node.js:28:1), <anonymous>:2797:19)
at expr_ops (eval at <anonymous> (./node_modules/webpack/node_modules/uglify-js/tools/node.js:28:1), <anonymous>:2832:24)
at maybe_conditional (eval at <anonymous> (./node_modules/webpack/node_modules/uglify-js/tools/node.js:28:1), <anonymous>:2837:20)
at maybe_assign (eval at <anonymous> (./node_modules/webpack/node_modules/uglify-js/tools/node.js:28:1), <anonymous>:2861:20)
at maybe_assign (eval at <anonymous> (./node_modules/webpack/node_modules/uglify-js/tools/node.js:28:1), <anonymous>:2869:32)
at maybe_assign (eval at <anonymous> (./node_modules/webpack/node_modules/uglify-js/tools/node.js:28:1), <anonymous>:2869:32)
at expression (eval at <anonymous> (./node_modules/webpack/node_modules/uglify-js/tools/node.js:28:1), <anonymous>:2880:20)
at simple_statement (eval at <anonymous> (./node_modules/webpack/node_modules/uglify-js/tools/node.js:28:1), <anonymous>:2319:55)
at eval (eval at <anonymous> (./node_modules/webpack/node_modules/uglify-js/tools/node.js:28:1), <anonymous>:2188:19)
at eval (eval at <anonymous> (./node_modules/webpack/node_modules/uglify-js/tools/node.js:28:1), <anonymous>:2141:24)
at block_ (eval at <anonymous> (./node_modules/webpack/node_modules/uglify-js/tools/node.js:28:1), <anonymous>:2434:20)
at eval (eval at <anonymous> (./node_modules/webpack/node_modules/uglify-js/tools/node.js:28:1), <anonymous>:2406:25)
at function_ (eval at <anonymous> (./node_modules/webpack/node_modules/uglify-js/tools/node.js:28:1), <anonymous>:2412:15)
at expr_atom (eval at <anonymous> (./node_modules/webpack/node_modules/uglify-js/tools/node.js:28:1), <anonymous>:2627:24)
at maybe_unary (eval at <anonymous> (./node_modules/webpack/node_modules/uglify-js/tools/node.js:28:1), <anonymous>:2797:19)
at expr_ops (eval at <anonymous> (./node_modules/webpack/node_modules/uglify-js/tools/node.js:28:1), <anonymous>:2832:24)
Metadata
Metadata
Assignees
Labels
No labels