postcss / postcss-load-config

Autoload Config for PostCSS
MIT License
638 stars 71 forks source link

doiuse with an empty configuration breaks (this bug possibly also breaks other plugins) #248

Open LorenzoBloedow opened 11 months ago

LorenzoBloedow commented 11 months ago

I'm trying to figure out two things:

  1. Why is this the way postcss-load-config treats empty configuration objects
  2. Is this choice currently breaking more plugins?

All the context you need is in this pull request I just opened.

Minimal repro:

  1. Access https://stackblitz.com/edit/vitejs-vite-f8xwph
  2. Run npm run build
  3. Notice doiuse is skipped without warning even though postcss.config.js is perfectly valid.
ai commented 11 months ago

There is no specific policy. PostCSS is old project with big ecosystem and contains many parts—this is the result:

  1. postcss has big ifs block in plugins loading because we need to support PostCSS 8 plugins, PostCSS 7 plugins, old PostCSS plugins, plugins presets. Also plugins with options (plugin(opts)) and without (plugin)
  2. postcss-load-config was written by other developer and some use case could be missed

So, suggest the solution.