Closed taras-turchenko-moc closed 1 year ago
Oh wow, I've never seen an error like that 😅 sounds like something is generating an awfully long string 😅
I don't know even where to start to fix this. Would you be open to do some googling and figure out if this error has showed up elsewhere and if there might be some common code patterns that might cause this error?
I think the reason is webpack-stats.json
size is 1gb
and we're using something like readFileSync
to read it as a string.
I think here are the problematic code: https://github.com/webpack-contrib/webpack-bundle-analyzer/blob/e5b617e44df299e7ad4f7dc1bb1cac41e204648c/src/analyzer.js#L164-L168 Maybe there is some package that parses JSON without reading it into a string first. @sokra maybe you've already solved such problem?
I'll try stream-json. Seems like this lib can do it but it takes too long. I started parsing 30 minutes ago and it's still running
Also i will try how works the webpack plugin with it
It's finished and it takes ~30 minutes just to parse this json. Also i've tried the webpack plugin and it works fine
Hi,
What is the way around this? the stats.json
which is created is >512 MB (840 MB), hence it fails with the same error for me as well with the same error.
@sushantmakin Webpack plugin works fine for me
https://github.com/webpack-contrib/webpack-bundle-analyzer#usage-as-a-plugin
Is there a solution to this? We also have a very large stats.json file that is failing when trying to analyze it.
@tgudroe the webpack plugin works fine
Does that mean the CLI can't be used in my case and there is no hope of it working in the future?
@tgudroe I'll take a look at this later. Maybe we can fix it by replacing fs.readfile
to one of binary json readers
When I upload the same stats.json to http://chrisbateman.github.io/webpack-visualizer/ I'm seeing this error. Is this related?
VM33:1 Uncaught SyntaxError: Unexpected end of JSON input
at JSON.parse (<anonymous>)
at e.handleFileUpload (build.js:18:5124)
at n.onloadend (build.js:23:9878)
Hello, I encountered this issue with a large angular app. Using the changes in this PR worked for me https://github.com/webpack-contrib/webpack-bundle-analyzer/pull/423
Same issue. Hope this can be fixed.
The workaround is to use the plugin and not CLI
The workaround is to use the plugin and not CLI
I knew that. But sometimes I need to compare the dependency graph between branches. It takes time to switch branch, install dependency and build the project. In this case, it's much more convenient to leverage the existing stat.json
This should now be fixed in v4.8.0 thanks to #423! 🚀
Feel free to take it for a spin and let us know if the issue wasn't solved with that PR as expected.
Hello, A bit late to the party, but only now I had the time to test this with our application. I tested this fix and it worked for me to load a 548 MB file.
Thank you for the fix.
Issue description
We have front-end heavy application with ~40 entry points and i want to optimize build size
Technical info
Debug info
How do you use this module? As CLI utility or as plugin?
If CLI, what command was used? (e.g.
webpack-bundle-analyzer -O path/to/stats.json
)If plugin, what options were provided? (e.g.
new BundleAnalyzerPlugin({ analyzerMode: 'disabled', generateStatsFile: true })
)What other Webpack plugins were used?
It would be nice to also attach webpack stats file. It can be generated using these options:
stats.json
will be created in Webpack bundle output directory.