Skip to content

Remove the default option *eslint* and *prettier* from public-hoist-pattern option in next major version #8378

@zanminkian

Description

@zanminkian

Contribution

Describe the user story

  1. Eslint 9 support flat config. We don't need to hoist modules about eslint any more.
  2. Prettier plugins field will be passed to import() expression. Users can resolve the plugin module path by themselves (like require.resolve('prettier-plugin-foo')). See the doc.

Strings provided to plugins are ultimately passed to import() expression, so you can provide a module/package name, a path, or anything else import() takes.

Therefore, now is the proper time for removing the default option *eslint* and *prettier* from public-hoist-pattern. Users will get a clean and consistent node_modules folder. Hiding *eslint* and *prettier* in public-hoist-pattern seems not a wise choice.

Describe the solution you'd like

Remove the default option *eslint* and *prettier* from public-hoist-pattern option.

https://pnpm.io/npmrc#public-hoist-pattern

Describe the drawbacks of your solution

This is a breaking change.

Describe alternatives you've considered

No.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions