Skip to content

v0.9.0

Choose a tag to compare

@amery amery released this 05 Apr 20:11
· 37 commits to main since this release
d0fb45a

@poupe/eslint-config v0.9.0

CSS linting for Vue <style> blocks, config factory migration
from typescript-eslint to eslint/config, removal of the
deprecated Nuxt entry point, and @eslint/css v1 upgrade.

Breaking changes:

  • Removed @poupe/eslint-config/nuxt entry point — forNuxt and
    forNuxtModules were deprecated in 0.8.3. Use withPoupe from
    @poupe/eslint-config instead.

  • Migrated config factory from typescript-eslint's config() to
    eslint/config's defineConfig(). Config and related types now
    derive from @eslint/core instead of @typescript-eslint/utils.
    The plugins field is stricter — language-specific plugins need
    as unknown as Plugin casts.

  • withPoupe no longer accepts Linter.Config[] overloads — pass
    Config[] or PromiseLike<Config[]> directly.

Added:

  • CSS linting for Vue <style> blocks via eslint-merge-processors
    and eslint-processor-vue-blocks. New peer dependency:
    @vue/compiler-sfc ^3.3.0.
  • GLOB_CSS extended from **/*.css to **/*.?(post)css — covers
    <style lang="postcss"> blocks and standalone .postcss files.
  • New type exports: Plugin, InfiniteDepthConfigWithExtends, and
    Linter (namespace for Nuxt interop).
  • Node 20/22/24 compatibility workflow with lightweight smoke test.

Changed:

  • @eslint/css ~0.14.1 → ^1.1.0, tailwind-csstree ~0.1.4 → ~0.3.0
  • customSyntax adapted to tailwind-csstree's
    SyntaxExtensionCallback API — tailwind4 is now a callback
    instead of a plain object (requires @eslint/css >= 1.0.0)
  • typescript-eslint ^8.57.0 → ^8.58.0,
    @typescript-eslint/parser ^8.57.0 → ^8.58.0
  • pnpm/action-setup v4 → v5
  • pnpm 10.32.1 → 10.33.0, minimum Node.js >= 20.20.2

Fixed:

  • Config and Rules type exports were unreachable from the
    package entry point (export type combined with export * in
    the same barrel was silently dropped by unbuild).
  • Publish workflow switched from Node 22 + npm install -g npm@^11
    to Node 24 (bundles npm 11 natively).
  • Added explicit permissions: contents: read to all workflows.

Removed:

  • eslint-flat-config-utils devDependency — replaced with a local
    structural type alias.