Prevent HTML-escaping of module specifiers #562
Merged
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.
Importing a file like
image.jpg?widths=50,100,640&formats=original,webp,avif&responsive
for consumption with a custom webpack loader failed, as what got written into the AMD shim was insteadimage.jpg?widths=50,100,640&formats=original,webp,avif&responsive
, failing the webpack module rules and/or the parsing of the query in the loader.It turned out this was due to the double curlies in the handlebars-based AMD shim generator HTML-escaping the module specifiers. With "normal" paths this would not have any effect, but here it breaks things obviously.
I haven't run tests locally, as I was expected this to not break anything, and I hoped Github would do that for me, but it seems CI setup is not working correctly (matrix scenarios not running, the
discover_matrix
fails here).Also I didn't add any tests, as I wasn't sure how to do this, without replicating a whole e2e scenario with a webpack plugin reproducing the failure...