Skip to content

Yarn PnP is not compatible with optional peer dependencies #5380

Closed
@Timer

Description

@Timer

This makes PnP incompatible with how we're shipping Sass and planning to ship future enhancements (e.g. TypeScript).

Optional peer dependencies are vital to keeping initial install sizes low (less of a problem with PnP, but imagine a cache miss).

See broken test:

./src/AppSass.scss
- To import Sass files, you first need to install node-sass.
- Run `npm install node-sass` or `yarn add node-sass` inside your workspace.
+ Error: Package "[email protected]" (via "/Users/joe/Library/Caches/Yarn/v3/npm-sass-loader-7.1.0-16fd5138cb8b424bf8a759528a1972d72aad069d/node_modules/sass-loader/lib/loader.js") is trying to require the package "node-sass" (via "node-sass") without it being listed in its dependencies (webpack, clone-deep, loader-utils, lodash.tail, neo-async, pify, semver, sass-loader)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions