Spaces:
Sleeping
Sleeping
| # Changelog | |
| All notable changes to this project will be documented in this file. | |
| The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), | |
| and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). | |
| ## [4.5.0] - 2026-05-20 | |
| ### Added | |
| - Add support for CSS Nesting — rules nested inside other rules (#621 by @jogibear9988) | |
| - Add support for `@container` container queries with nested rule body | |
| - Add support for Page Margin Boxes (`@top-left`, `@bottom-right`, `@left-middle`, etc.) inside `@page` | |
| - Add generic at-rule fallback — unknown `@foo { ... }` and `@foo ...;` rules are preserved as `CssGenericAtRuleAST` instead of being dropped | |
| - Add support for `@counter-style`, `@font-feature-values`, `@scope`, `@view-transition`, `@position-try` | |
| - Export new TypeScript types: `CssGenericAtRuleAST`, `CssPageMarginBoxAST`, `CssPositionTryAST`, `CssScopeAST`, `CssViewTransitionAST`, `CssCounterStyleAST`, `CssFontFeatureValuesAST` | |
| ### Fixed | |
| - Fix selector parsing for complex nested selectors including `:is()`, `:has()`, `:not()` | |
| - Fix `@page` to correctly accept margin-box at-rule children | |
| - Fix bracket- and quote-aware position tracking for pseudo-functions | |
| ### Changed | |
| - Upgrade to TypeScript 6.0.2 | |
| - Upgrade to `@rollup/plugin-terser` 1.0.0 | |
| - Drop Node 18 from CI (EOL April 2025) — minimum supported runtime is now Node 20 | |
| ### Security | |
| - Update lodash to 4.18.1 | |
| - Update minimatch to 3.1.5 | |
| - Update picomatch to 4.0.4 | |
| ## [4.4.4] - 2025-07-22 | |
| ### Changed | |
| - Switch from yarn to npm for package management | |
| - Switch from eslint to biome for code formatting and linting | |
| - Reformat codebase to comply with biome recommendations | |
| - Switch from webpack to rollup for bundling | |
| ### Fixed | |
| - Fix module exports to ensure proper compatibility with bundlers | |
| - Add validation check to prevent future export issues | |
| ## [4.4.3] - 2025-05-15 | |
| ### Security | |
| - Fix polynomial regular expression vulnerability on uncontrolled data | |
| - Refactor code to enable GitHub security static analysis | |
| ### Performance | |
| - Improve parsing performance with minor optimizations | |
| - Replace regex patterns with string search (indexOf-based) for better performance | |
| ### Added | |
| - Add new utility functions with comprehensive unit tests | |
| - Add improved formatting for CSS Grid template areas (#283 by @jogibear9988) | |
| ### Fixed | |
| - Fix TypeScript error with ConstructorParameters in Parcel bundler (#444) | |
| ## [4.4.2] - 2025-02-12 | |
| ### Fixed | |
| - Fix regular expression for parsing quoted values in parentheses | |
| ## [4.4.0] - 2024-06-05 | |
| ### Added | |
| - Add support for CSS `@starting-style` at-rule (#319) | |
| ## [4.3.3] - 2024-01-24 | |
| ### Changed | |
| - Update package export configuration (#271) | |
| ## [4.3.2] - 2023-11-28 | |
| ### Security | |
| - Fix ReDoS vulnerability with crafted CSS strings - CVE-2023-48631 | |
| ### Fixed | |
| - Fix parsing issues with `:is()` and nested `:nth-child()` selectors (#211) | |
| ## [4.3.1] - 2023-03-14 | |
| ### Security | |
| - Fix ReDoS vulnerability with crafted CSS strings - CVE-2023-26364 | |
| ## [4.3.0] - 2023-03-07 | |
| ### Changed | |
| - Update build toolchain and dependencies | |
| - Update package exports configuration and file structure | |
| ## [4.2.0] - 2023-02-21 | |
| ### Added | |
| - Add support for CSS `@container` at-rule | |
| - Add support for CSS `@layer` at-rule | |
| ## [4.1.0] - 2023-01-25 | |
| ### Added | |
| - Add support for ES Modules (ESM) | |
| ## [4.0.2] - 2023-01-12 | |
| ### Fixed | |
| - Fix `@import` parsing when URL contains semicolons (#71) | |
| - Fix regression in selector parsing for attribute selectors (#77) | |
| ## [4.0.1] - 2022-08-03 | |
| ### Fixed | |
| - Fix `globalThis` configuration for webpack to enable UMD module usage in Node.js environments | |
| ## [4.0.0] - 2022-06-09 | |
| ### Changed | |
| - Fork from original css library to Adobe's `@adobe/css-tools` package | |
| - Convert codebase from JavaScript to TypeScript | |
| - Improve parsing performance by approximately 25% | |
| - Update all dependencies to latest versions | |
| - Remove source map support | |
| --- | |
| ## Legacy Versions (Pre-Adobe Fork) | |
| ## [3.0.0] - 2020-07-01 | |
| ### Changed | |
| - Bump major version due to major dependency updates and Node.js version requirement changes | |
| ## [2.2.1] - 2015-06-17 | |
| ### Fixed | |
| - Fix parsing of escaped quotes in quoted strings | |
| ## [2.2.0] - 2015-02-18 | |
| ### Added | |
| - Add `parsingErrors` property to list errors when parsing with `silent: true` | |
| - Accept EOL characters and all whitespace characters in at-rules such as `@media` | |
| ## [2.1.0] - 2014-08-05 | |
| ### Added | |
| - Add `inputSourcemaps` option to disable input source map processing | |
| - Add `sourcemap: 'generator'` option to return the `SourceMapGenerator` object | |
| - Use `inherits` package for inheritance (fixes browser compatibility issues) | |
| ### Changed | |
| - Change error message format and add `.reason` property to error objects | |
| ## [2.0.0] - 2014-06-18 | |
| ### Added | |
| - Add non-enumerable parent reference to each AST node | |
| - Add support for `@custom-media`, `@host`, and `@font-face` at-rules | |
| - Allow commas inside selector functions | |
| - Allow empty property values | |
| - Add `node.position.content` property | |
| - Integrate css-parse and css-stringify libraries | |
| - Apply original source maps from source files | |
| ### Changed | |
| - Change default `options.position` value to `true` | |
| - Remove comments from properties and values | |
| ### Removed | |
| - Drop Component(1) support | |
| ### Fixed | |
| - Fix assertion errors when selectors are missing | |
| ## [1.6.1] - 2014-01-02 | |
| ### Fixed | |
| - Fix component.json configuration | |
| ## [1.6.0] - 2013-12-21 | |
| ### Changed | |
| - Update dependencies | |
| ## [1.5.0] - 2013-12-03 | |
| ### Changed | |
| - Update dependencies | |
| ## [1.1.0] - 2013-04-04 | |
| ### Changed | |
| - Update dependencies | |
| ## [1.0.7] - 2012-11-21 | |
| ### Fixed | |
| - Fix component.json configuration | |
| ## [1.0.4] - 2012-11-15 | |
| ### Changed | |
| - Update css-stringify dependency | |
| ## [1.0.3] - 2012-09-01 | |
| ### Added | |
| - Add Component support | |
| ## [0.0.1] - 2010-01-03 | |
| ### Added | |
| - Initial release | |