Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

webpack-pnp-unplugged-externals

kherock411MIT1.0.0

Exclude unplugged PnP packages from the webpack bundle

webpack, yarn, plugnplay, pnp, node_modules, node, bundle, externals

readme

webpack Plug'n'Play unplugged externals

Exclude unplugged PnP packages from the webpack bundle

Install

yarn add --dev webpack-pnp-unplugged-externals

Usage

webpack.config.js

const pnpUnpluggedExternals = require('webapck-pnp-unplugged-externals');

module.exports = {
  // ...
  externals: [pnpUnpluggedExternals()],
};

To explicitly declare a package as external, simply yarn unplug it from the workspace! (or just add it to the webpack externals array, like usual.)

It's recommended to use this library in conjunction with pnp-package-json-webpack-plugin. Together, it's possible to create a minimal package.json containing only dependencies that webpack normally can't handle, e.g. packages that compile native addons, regardless of where they appear in your dependency tree.