This repository was archived by the owner on May 16, 2025. It is now read-only.
Ensure error is logged when Closure fails#163
Open
ian-craig wants to merge 2 commits intowebpack-contrib:masterfrom
Open
Ensure error is logged when Closure fails#163ian-craig wants to merge 2 commits intowebpack-contrib:masterfrom
ian-craig wants to merge 2 commits intowebpack-contrib:masterfrom
Conversation
Member
|
What's a good way to trigger this just so I can double check it does what it says? |
Contributor
Author
|
The real scenario I hit was a missing dependency which caused the windows version of Closure to fail to run. I suspect that the error was in Windows or whatever wrapper Closure uses to compile a "native" version from Java, so there wasn't the usual error handling from Closure itself. As a simple test I override the java exe path and ran with platform ClosureCompiler.prototype.javaPath = "my/script/which/exits/1";
new ClosurePlugin({ platform: ['java'] }, ...);If you do this before applying this PR fix you should see that Webpack passes with no errors, but the bundle is unminified. |
Member
|
Retriggering CI |
|
@ian-craig I believe this requires you to sign the CLA |
Contributor
Author
|
Signed, hopefully you're good to go now 🚀 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #162.
Whenever the compiler process exits with non-zero code, we should be reporting some error back to Webpack.
It looks like the on close for compilerProcess has some custom error (and warning?) handling around parsing stderr, but simply calls
reject()with no error at the end. The result is for non-zero exit but no stderr we reject, but never pass an error to Webpack.I think most cases could be cleaned up by passing the error through
reject(error)instead ofthis.reportErrors(compilation, [error]), but not if the stdout parsing logic found warnings but no errors. Instead I've opted to just add another case here that's handled, but I'm not 100% sure there are no other edge cases here.