# What changed in css-select

> 10 changes in css-select 7 from its official release notes, upgrade guides and advisories: 8 breaking, 2 new APIs and options. Each one cited. Sources checked 2026-10-20. HTML: https://unstale.sh/npm/css-select/

To see which of these apply to a repository, run `npx @unstale/cli init` in it.

## css-select 7

### Breaking changes

- The deprecated aliases re-export was removed. (7.0.0) — [release notes](https://github.com/fb55/css-select/releases/tag/v7.0.0)
- The deprecated _compileToken export was removed; use _compileUnsafe instead. (7.0.0) — [release notes](https://github.com/fb55/css-select/releases/tag/v7.0.0)
- The :enabled pseudo-class now only matches form elements. (7.0.0) — [release notes](https://github.com/fb55/css-select/releases/tag/v7.0.0)
- The deprecated filters re-export was removed. (7.0.0) — [release notes](https://github.com/fb55/css-select/releases/tag/v7.0.0)
- The minimum supported Node.js version is now 20.19.0. (7.0.0) — [release notes](https://github.com/fb55/css-select/releases/tag/v7.0.0)
- The ./package.json subpath export was removed. (7.0.0) — [release notes](https://github.com/fb55/css-select/releases/tag/v7.0.0)
- The deprecated pseudos re-export was removed; use the pseudos option instead. (7.0.0) — [release notes](https://github.com/fb55/css-select/releases/tag/v7.0.0)
- The package now sets "type": "module"; CommonJS require() is only supported in modern environments. (7.0.0) — [release notes](https://github.com/fb55/css-select/releases/tag/v7.0.0)

### New APIs and options

- The :lang() pseudo-class is now supported. (7.0.0) — [release notes](https://github.com/fb55/css-select/releases/tag/v7.0.0)
- The nth-* pseudo-classes now support the of clause, such as :nth-last-child(3n+2 of .a). (7.0.0) — [release notes](https://github.com/fb55/css-select/releases/tag/v7.0.0)
