When providing `--css-modules insertHashHere` microbundle will treat all CSS files as CSS modules
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 42/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Stale
- Tech stack
- javascript
- Domain
- build-system, cli
Research direction
Start in src/lib/css-modules.js around the referenced line and reproduce the behavior with --css-modules true, a custom hash pattern, and --no-css-modules. Done means a custom hash changes generated CSS-module signatures without making every CSS file a module, while the documented flag behaviors remain distinct.
Written by the indexing model from the issue text.
Description
Microbundle supports providing a custom hash generator name for CSS modules by providing --css-modules insertHashPatternHere (eg.: --css-modules _[hash:base64:5].
The Bug
But then Microbundle will also treat all CSS files as CSS modules, instead of just changing the generated signature of the actual CSS modules.
By the documentation, all CSS files should be considered a CSS module if a flag --css-modules true is provided.
Possibly source of the Bug
The bug seems to originate on https://github.com/developit/microbundle/blob/b1a637486234a2ae784ccf0c512321e2d3efef7c/src/lib/css-modules.js#L8 where it only considers the "should only suffix modules" when the option null is being passed.
The caveats
I suppose the --css-modules flag should only support null, true and false (Default Behaviour (Only when suffix), Enforce AutoCSS modules, Disable CSS modules completely).
Since there is the flag --no-css-modules there should be one for specifying the hash too. For example --css-modules-hash _[hash:base64:5].
This would also avoid confusion since it is not documented in the README that using a custom hash would enforce CSS modules.
I would be more than happy to provide a patch 😄
- Dominant language
- JavaScript
- Stars
- 8.1k
- Forks
- 358
- PR merge metrics
- No merged PRs in 30d
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from developit/microbundle
-
CSS
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
developit/microbundle#1002 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
developit/microbundle#789 · 1 comment ·
-
Difficulty 3/5 1-2 days Newbie friendliness 55/100
developit/microbundle#1100 · 4 comments ·
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
developit/microbundle#1094 · 1 comment ·
-
Difficulty 3/5 1-2 days Newbie friendliness 45/100
developit/microbundle#1093 · 3 comments · 1 reaction ·
All issues in developit/microbundle
Similar issues
-
awaiting triage bug Causes friction Hop Gui P1 P2 Transforms
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
georgestephanis/p2026#40 ·
-
Enatega Customer and Rider app: Add-ons price is not visible to customer after order is placed. Open
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
Margaret-Petersen/food-delivery-app-clone-react-native#1981 ·