Releases: parcel-bundler/lightningcss
Releases · parcel-bundler/lightningcss
v1.32.0
Added
- Enable custom resolvers to mark imports as external. Resolvers may now return
{external: string}to mark an import as external. This will leave the@importin the output CSS instead of bundling it. See the docs for details. - Allow visitors to add dependencies. Visitors may now be functions which receive an
addDependencyfunction as an option. Dependencies may be used by tools that call Lightning CSS such as bundlers to implement file watching or caching. See the docs for details. - Add
mix-blend-modeproperty support
Fixed
- Output unknown
color-schemekeywords as-is instead ofnormal - Improved serialization of the rotate property
- keep a single space between functions when formatting
transformvalues - Fix additionally inserted whitespace in
var(--foo,)andenv(--foo,) - Convert the percentage in the
scaleproperty orscale()to a number - update compat data
v1.31.0
Features
- Implement scroll-state container queries
- Allow @property to be nested inside at-rules
- Support print-color-adjust property
- Support
<string>in @property syntax - Add :state() pseudo-class support
- Reduce min(), max() and clamp() with number arguments
- Support name-only @container queries
Fixes
- Ensure compiled range media queries are correctly parenthesised
- Add quotes to font-families with multiple consecutive spaces
- Do not remove whitespace in token lists
- Fix whitespace handling in view transition pseudos
- Ensure interleave nested declarations have a semicolon when needed
- Fix casing for camel-cased svg values
- Improve grid-template-areas handling and grid shorthand
- Fix background-position minification and handling for various cases
- Update browser compat data
v1.30.2
v1.30.1
Fixed crash on process exit when lightningcss was loaded inside a Node.js worker thread on Linux
v1.30.0
Features
- Update relative color parsing to latest spec: colors now support numbers in addition to percentages, and calcs in colors are now always numbers. Note that this was technically a breaking change in the spec. You may need to update code using relative color calculations on percentages to use numbers instead. See the PR for details. – #465
- Update nesting implementation for new spec: It is now possible to nest selectors with pseudo elements, and declarations and nested rules can be interleaved. See https://web.dev/blog/css-nesting-cssnesteddeclarations for more details. – 6c465c1
- Skip generating unnecessary
@supportsrules when already nested in a@supportsrule – #878, d398c1b - Improve error recovery for media queries – #954
- Add support for ::picker, ::picker-icon and ::checkmark – #957
- Add build support for Android – #932
Fixes
- Fix error message for invalid composes selectors – #948
- Update browserslist – #961
- Fix linear-gradient direction conversion for legacy vendor-prefixed values – #936
- Prevent new lines in license comments from breaking source maps – #971
- Do not inline layers before imports – 33ea2c1
- Statically link Visual Studio redistributables on Windows builds – e5c4139
- update browser compat data – 17bdc80
v1.29.3
- Support for
::details-contentand::target-textselectors – @philipp-spiess in #930 - Update
:placeholder-shownselector name across browsers – @Marukome0743 in #929 - Support
/* cssmodules-pure-no-check */comments – @jantimon in #898 - Update browser compatibility data – c03a7e7
v1.29.2
- Update detect-libc for better compatibility by @nicksrandall in #923
- Fix broken minification for non-opaque oklab colors by @lfesp in #901
- Bump browserslist-rs 0.17.0 by @chenjiahan in #912
- Add wasm compilation cfg for
Browsers::load_browserslistby @CPunisher in #895 - Fix parsing style container queries without a value – 2284653
v1.29.0
Added
- Implement view transitions level 2, including the
@view-transitionrule,view-transition-classandview-transition-groupproperties, and class selector features of the view transition pseudo elements. This enables CSS module scoping and better minification when using these features. – #885 - Support parsing the
@font-feature-valuesrule – #840 - Add a feature flag to explicitly enable or disable transpiling the
light-dark()function – 3043896
Fixed
- Compile media query range syntax with boolean logic instead of fractional pixels. Fixes issues with rounding certain values. – 7f29035
- Fix parsing the
list-styleshorthand property – 97891d8 - Fix hashing of
:nth-child(an + b of X)selectors in CSS modules – ed9e659 - Update napi-rs to fix issue with
\0characters in filenames – 43707c3 - Fix CustomAtRule.loc TypeScript type – #876
- Call StyleSheet / StyleSheetExit / Rule.custom.* in visitors passed to
composeVisitors– #875 - Update browser compat data – cdbf0d4
v1.28.2
Fixes
- Fix duplicate prefixed properties in
transition-property– #850 (thanks @RobinMalfait and @LeoniePhiline!) - Fix mapping original name from source maps – 78f2fc4
- Bump browser compat data – 4159bc5
- Ensure consistent order of custom properties when
allproperty is set – d4eec35
v1.28.0
Added
- Add option to avoid hashing
@containernames in CSS Modules by @kdy1 in #835 - Improve error message of
input:placeholderby @kdy1 in #813 - Add an error for the deprecated
@valueat-rule of CSS Modules by @kdy1 in #842
Fixed
- Don't panic when passing system-color to color-mix by @inottn in #819
- Dependency updates by @kornelski in #814
- Fix order of fallback width, height, and other size related properties – 22a8b6f
- Fix stack overflow parsing
calcexpression – e3c8e12 - Fix crash when parsing an invalid
calcexpression – 378955e - Skip
clampfunction reduction when the comparison between preferred and max value is unknown – ddc9ce8 - Update browser compatibility data – f6b033f
- docs: Update help command docs by @DylanPiercey in #812
- docs: fix link to visitor type definitions by @mayank99 in #823