v0.8.3
Added
reconcilePlugins— first-wins deduplication of ESLint plugin
instances across configs from multiple sources, resolving
FlatConfigComposerplugin conflict errorswithPoupe— async composition of Poupe configs on top of
upstream configs (createConfigForNuxt,withNuxt,
FlatConfigComposer). Accepts both tseslint'sConfig[]and
eslint core'sLinter.Config[]without casts
Changed
withConfignow includes automatic plugin reconciliation
(transparent to all callers)
Deprecated
forNuxt/forNuxtModulesfrom@poupe/eslint-config/nuxt—
usewithPoupefrom@poupe/eslint-configinstead (removed in 0.9)
Migration
// Before (broken for external consumers)
import { createConfigForNuxt } from '@nuxt/eslint-config/flat';
import { forNuxtModules } from '@poupe/eslint-config/nuxt';
export default createConfigForNuxt({...}, ...forNuxtModules());
// After
import { createConfigForNuxt } from '@nuxt/eslint-config/flat';
import { withPoupe } from '@poupe/eslint-config';
export default withPoupe(createConfigForNuxt({...}));Fixes #200