fix: add support for aliases starting with / (options.alias)#597
fix: add support for aliases starting with / (options.alias)#597joshwiens merged 2 commits intowebpack:masterfrom
/ (options.alias)#597Conversation
|
I believe it could be a minor change or patch since it's only a bug fix :) |
|
Very good support, probably when the merger can be released? |
|
probably when the merger can be released? |
|
@michael-ciniawsky @d3viant0ne friendly ping, need review, thanks! |
/ (options.alias)
lib/processCss.js
Outdated
| exports[exportName] = replaceImportsInString(exports[exportName]); | ||
| }); | ||
|
|
||
| function startByAlias(url) { |
There was a problem hiding this comment.
startsWithAlias => isAlias[ed]
There was a problem hiding this comment.
I pushed a change to rename it to isAlias
|
Relabeled to 🏷 |
|
@michael-ciniawsky oh, yep, it is |
|
Can someone click on merge please? 👍 |
|
@appinteractive need minimum 3 approved votes |
|
Can someone click on merge please? 👍 |
Codecov Report
@@ Coverage Diff @@
## master #597 +/- ##
==========================================
+ Coverage 98.91% 98.91% +<.01%
==========================================
Files 10 10
Lines 367 369 +2
Branches 87 87
==========================================
+ Hits 363 365 +2
Misses 4 4
Continue to review full report at Codecov.
|
git required by webpack/css-loader#597
|
Haven't done much digging yet as this is a sub-dependency for us, but it appears merging has introduced a bug as processCss is not being instantiated with a resolve method here https://github.com/webpack-contrib/css-loader/blob/master/lib/localsLoader.js#L18 |
This Pull Request updates dependency [css-loader](https://github.com/webpack-contrib/css-loader) from `^0.28.11` to `^1.0.0` <details> <summary>Release Notes</summary> ### [`v1.0.0`](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md#​100httpsgithubcomwebpack-contribcss-loadercomparev02811v100-2018-07-06) [Compare Source](webpack/css-loader@v0.28.11...v1.0.0) ##### BREAKING CHANGES * remove `minimize` option, use [`postcss-loader`](https://github.com/postcss/postcss-loader) with [`cssnano`](https://github.com/cssnano/cssnano) or use [`optimize-cssnano-plugin`](https://github.com/intervolga/optimize-cssnano-plugin) plugin * remove `module` option, use `modules` option instead * remove `camelcase` option, use `camelCase` option instead * remove `root` option, use [`postcss-loader`](https://github.com/postcss/postcss-loader) with [`postcss-url`](https://github.com/postcss/postcss-url) plugin * remove `alias` option, use [`resolve.alias`](https://webpack.js.org/configuration/resolve/) feature or use [`postcss-loader`](https://github.com/postcss/postcss-loader) with [`postcss-url`](https://github.com/postcss/postcss-url) plugin * update `postcss` to `6` version * minimum require `nodejs` version is `6.9` * minimum require `webpack` version is `4` #### [0.28.11](webpack/css-loader@v0.28.10...v0.28.11) (2018-03-16) ##### Bug Fixes * **lib/processCss:** don't check `mode` for `url` handling (`options.modules`) ([#​698](`https://github.com/webpack-contrib/css-loader/issues/698`)) ([c788450](webpack/css-loader@c788450)) #### [0.28.10](webpack/css-loader@v0.28.9...v0.28.10) (2018-02-22) ##### Bug Fixes * **getLocalIdent:** add `rootContext` support (`webpack >= v4.0.0`) ([#​681](`https://github.com/webpack-contrib/css-loader/issues/681`)) ([9f876d2](webpack/css-loader@9f876d2)) #### [0.28.9](webpack/css-loader@v0.28.8...v0.28.9) (2018-01-17) ##### Bug Fixes * ignore invalid URLs (`url()`) ([#​663](`https://github.com/webpack-contrib/css-loader/issues/663`)) ([d1d8221](webpack/css-loader@d1d8221)) #### [0.28.8](webpack/css-loader@v0.28.7...v0.28.8) (2018-01-05) ##### Bug Fixes * **loader:** correctly check if source map is `undefined` ([#​641](`https://github.com/webpack-contrib/css-loader/issues/641`)) ([0dccfa9](webpack/css-loader@0dccfa9)) * proper URL escaping and wrapping (`url()`) ([#​627](`https://github.com/webpack-contrib/css-loader/issues/627`)) ([8897d44](webpack/css-loader@8897d44)) #### [0.28.7](webpack/css-loader@v0.28.6...v0.28.7) (2017-08-30) ##### Bug Fixes * pass resolver to `localsLoader` (`options.alias`) ([#​601](`https://github.com/webpack/css-loader/issues/601`)) ([8f1b57c](webpack/css-loader@8f1b57c)) #### [0.28.6](webpack/css-loader@v0.28.5...v0.28.6) (2017-08-30) ##### Bug Fixes * add support for aliases starting with `/` (`options.alias`) ([#​597](`https://github.com/webpack/css-loader/issues/597`)) ([63567f2](webpack/css-loader@63567f2)) #### [0.28.5](webpack/css-loader@v0.28.4...v0.28.5) (2017-08-17) ##### Bug Fixes * match mutliple dashes (`options.camelCase`) ([#​556](`https://github.com/webpack/css-loader/issues/556`)) ([1fee601](webpack/css-loader@1fee601)) * stricter `[@import]` tolerance ([#​593](`https://github.com/webpack/css-loader/issues/593`)) ([2e4ec09](webpack/css-loader@2e4ec09)) #### [0.28.4](webpack/css-loader@v0.28.3...v0.28.4) (2017-05-30) ##### Bug Fixes * preserve leading underscore in class names ([#​543](`https://github.com/webpack/css-loader/issues/543`)) ([f6673c8](webpack/css-loader@f6673c8)) #### [0.28.3](webpack/css-loader@v0.28.2...v0.28.3) (2017-05-25) ##### Bug Fixes * correct plugin order for CSS Modules ([#​534](`https://github.com/webpack/css-loader/issues/534`)) ([b90f492](webpack/css-loader@b90f492)) #### [0.28.2](webpack/css-loader@v0.28.1...v0.28.2) (2017-05-22) ##### Bug Fixes * source maps path on `windows` ([#​532](`https://github.com/webpack/css-loader/issues/532`)) ([c3d0d91](webpack/css-loader@c3d0d91)) #### [0.28.1](webpack/css-loader@v0.28.0...v0.28.1) (2017-05-02) ##### Bug Fixes * allow to specify a full hostname as a root URL ([#​521](`https://github.com/webpack/css-loader/issues/521`)) ([06d27a1](webpack/css-loader@06d27a1)) * case insensitivity of [@​import] ([#​514](`https://github.com/webpack/css-loader/issues/514`)) ([de4356b](webpack/css-loader@de4356b)) * don't handle empty [@​import] and url() ([#​513](`https://github.com/webpack/css-loader/issues/513`)) ([868fc94](webpack/css-loader@868fc94)) * imported variables are replaced in exports if followed by a comma ([#​504](`https://github.com/webpack/css-loader/issues/504`)) ([956bad7](webpack/css-loader@956bad7)) * loader now correctly handles `url` with space(s) ([#​495](`https://github.com/webpack/css-loader/issues/495`)) ([534ea55](webpack/css-loader@534ea55)) * url with a trailing space is now handled correctly ([#​494](`https://github.com/webpack/css-loader/issues/494`)) ([e1ec4f2](webpack/css-loader@e1ec4f2)) * use `btoa` instead `Buffer` ([#​501](`https://github.com/webpack/css-loader/issues/501`)) ([fbb0714](webpack/css-loader@fbb0714)) ##### Performance Improvements * generate source maps only when explicitly set ([#​478](`https://github.com/webpack/css-loader/issues/478`)) ([b8f5c8f](webpack/css-loader@b8f5c8f)) --- </details> --- This PR has been generated by [Renovate Bot](https://renovatebot.com).
What kind of change does this PR introduce?
Improvement in alias handling
Did you add tests for your changes?
Of course
Summary
Hi :)
Thank you for this great webpack loader. Actually, we are using it a lot into nuxt.js.
We have an issue with the css-loader used into the vue files, we have a global webpack alias named
~and it's used a lot to require file this way:import '~/assets/my-file.vue'Actually, we are using
css-loaderwith this configuration:So our users can do this into their CSS:
Before this PR,
.logobackground url is transformed to/static/logo.pngand considered as an url not processed (even if it's starting by an alias),.logo-2is not processed and that's perfect.Aftet this PR,
.logois transformed as well and considered to be a relative path (since starting by a known alias) and.logo-2is not changed 👍Does this PR introduce a breaking change?
No breaking change
Related issue to nuxt.js repo: nuxt/nuxt#1435