Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Webpack tree shaking does not completely remove unused re-exports #549

Closed
ryan-roemer opened this issue Apr 3, 2017 · 4 comments
Closed
Labels
Type: Bug 🐛 Oh no! A bug or unintentional behavior

Comments

@ryan-roemer
Copy link
Member

ryan-roemer commented Apr 3, 2017

Status: Retry experiment after ES modules build lands in all victory repos.

Webpack2 tree shaking does not completely remove unused exports, meaning that there is a difference between a one-off import vs. a full re-export use like:

// use-index.js
// Use the full index with all re-exported components.
import { VictoryLine } from "victory-chart";

and

// one-off-import.js
// Go straight off of the full path to the individual component.
import VictoryLine from "victory-chart/components/victory-line/victory-line";

The Problem

There is a significant different in size:

  • one-off-import.js: 272 KB
  • use-index.js: 423 KB

Diffing a demo build (which is human readable) and some random information:

$ colordiff -Naur dist/one-off-import.js dist/use-index.js

victory-core/src/victory-primitives/index.js

Just picking one example on a quick skim, the use-index version exports of the above file the following additional components not exported by one-off-import:

  • Candle
  • Voronoi
  • ErrorBar
  • Point
  • Bar
  • Area
  • `Line

diff:

-}, /* 61 */
+}, /* 77 */
 /* exports provided: Area, Bar, Candle, ClipPath, Curve, ErrorBar, Line, Point, Slice, Voronoi, Flyout */
-/* exports used: Curve, Flyout, ClipPath */
+/* exports used: Flyout, ClipPath, Candle, Voronoi, ErrorBar, Point, Bar, Area, Line, Curve */
 /*!*********************************************************!*\
   !*** ../~/victory-core/src/victory-primitives/index.js ***!
   \*********************************************************/

Looking just to Candle (victory-core/src/victory-primitives/candle.js, index: 200 in one-off), there is a problem with tree-shaking. Namely, that even in the one-off version, this code is detected as unused, but we still get the require for it:

__webpack_require__(/*! ./candle */ 200)

and the underlying source is present at index 200.

The use-index build has an even greater cascading effect of this problem.

Upon further research, all of this runs up against what appears to be a long-standing bugs for webpack:

Best synopsis of observed issue so far: webpack/webpack#1750 (comment)

/cc @boygirl @chrisbolin

@ryan-roemer
Copy link
Member Author

The new updates in webpack@4 with sideEffects: false setting may solve this issue.

ryan-roemer added a commit to FormidableLabs/formidable-charts that referenced this issue Feb 5, 2018
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles.

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
ryan-roemer added a commit to FormidableLabs/victory-pie that referenced this issue Feb 5, 2018
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles.

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
ryan-roemer added a commit to FormidableLabs/spectacle that referenced this issue Feb 5, 2018
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles.

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
ryan-roemer added a commit to FormidableLabs/component-playground that referenced this issue Feb 5, 2018
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles.

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
ryan-roemer added a commit to FormidableLabs/react-live that referenced this issue Feb 5, 2018
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles.

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
ryan-roemer added a commit that referenced this issue Feb 5, 2018
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles.

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* #549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
ryan-roemer added a commit to FormidableLabs/freactal that referenced this issue Feb 5, 2018
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles.

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
ryan-roemer added a commit to urql-graphql/urql that referenced this issue Feb 5, 2018
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles.

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
ryan-roemer added a commit to FormidableLabs/react-animations that referenced this issue Feb 5, 2018
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles.

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
ryan-roemer added a commit to FormidableLabs/react-game-kit that referenced this issue Feb 5, 2018
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles.

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
ryan-roemer added a commit to FormidableLabs/radium that referenced this issue Feb 5, 2018
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles.

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
ryan-roemer added a commit to FormidableLabs/nuka-carousel that referenced this issue Feb 5, 2018
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles.

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
ryan-roemer added a commit to FormidableLabs/victory-chart that referenced this issue Feb 5, 2018
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles.

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
ryan-roemer added a commit to FormidableLabs/redux-little-router that referenced this issue Feb 5, 2018
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles.

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* #262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
ryan-roemer added a commit to FormidableLabs/victory-core that referenced this issue Feb 5, 2018
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles.

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
ryan-roemer added a commit to FormidableLabs/react-shuffle that referenced this issue Feb 5, 2018
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles.

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
ryan-roemer added a commit to FormidableLabs/radium that referenced this issue Feb 5, 2018
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles. (#965)

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
ryan-roemer added a commit to FormidableLabs/component-playground that referenced this issue Feb 5, 2018
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles. (#121)

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
tptee pushed a commit to FormidableLabs/redux-little-router that referenced this issue Feb 5, 2018
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles.

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* #262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
ryan-roemer added a commit to FormidableLabs/spectacle that referenced this issue Mar 15, 2018
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles. (#465)

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
ryan-roemer added a commit to FormidableLabs/formidable-charts that referenced this issue Mar 15, 2018
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles. (#14)

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
ryan-roemer added a commit to FormidableLabs/react-animations that referenced this issue Mar 15, 2018
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles. (#24)

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
ryan-roemer added a commit to FormidableLabs/react-game-kit that referenced this issue Mar 15, 2018
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles. (#59)

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
ryan-roemer added a commit to FormidableLabs/react-music that referenced this issue Mar 15, 2018
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles. (#51)

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
@boygirl
Copy link
Contributor

boygirl commented Jun 6, 2018

@ryan-roemer I'm going to close this, but ping me if you think it should remain open.

@boygirl boygirl closed this as completed Jun 6, 2018
@ryan-roemer ryan-roemer reopened this Jun 6, 2018
@ryan-roemer
Copy link
Member Author

We should verify first that present victory works with tree-shaking for webpack4. I believe there still may be issues. Let's pull a branch in https://github.com/FormidableLabs/victory-line-experiments and update webpack + victory deps and see.

@ryan-roemer
Copy link
Member Author

@boygirl -- I updated everything in https://github.com/FormidableLabs/victory-line-experiments to completely modern and we're all good: in dev (with optimizations on) or prod (straight up) one-off is the same as tree shaken:

# production
$ wc -c dist/*{index,import}.min.js
  248226 dist/use-index.min.js
  248232 dist/one-off-import.min.js

# development (with sideEffects optimizations on.)
$ wc -c dist/*{index,import}.js
  888503 dist/use-index.js
  888676 dist/one-off-import.js

🎉

boygirl added a commit that referenced this issue Jul 17, 2018
fix warning related to categories as an object for victory axis
jaredbrookswhite pushed a commit to jaredbrookswhite/radium that referenced this issue Aug 22, 2018
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles. (FormidableLabs#965)

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
chief825 pushed a commit to chief825/spectacle that referenced this issue Apr 5, 2022
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles. (#465)

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
Sriharious pushed a commit to Sriharious/nuka-carousel that referenced this issue Jul 15, 2022
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles.

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
swordEdge added a commit to swordEdge/react-game-kit that referenced this issue Jul 17, 2022
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles. (#59)

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
robinhoodie0823 added a commit to robinhoodie0823/booking-float that referenced this issue Sep 23, 2022
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles. (#59)

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
MattDennyir added a commit to MattDennyir/radium that referenced this issue Oct 19, 2022
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles. (#965)

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
VV-YY added a commit to VV-YY/nuka-carousel that referenced this issue Jan 18, 2023
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles.

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
scottjudy added a commit to scottjudy/react-animations that referenced this issue Jun 19, 2023
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles. (#24)

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
fzgram added a commit to fzgram/urql that referenced this issue Aug 13, 2024
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles.

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
monstgame192 added a commit to monstgame192/react-first-repo that referenced this issue Sep 11, 2024
…false` wherein libraries can indicate their ESM re-exports are side effect free and can be much more efficiently removed for smaller, faster final bundles.

Lodash has already rolled out this change in
https://unpkg.com/lodash-es@4.17.5/package.json

## Issues

This was originally uncovered / discussed at length in:

* webpack/webpack#1750

This PR should resolve the issues discussed in:

* FormidableLabs/victory#549
* FormidableLabs/redux-little-router#262

## Changes

* Add `sideEffects: false` to `package.json` to allow webpack4 tree-shaking to actually remove all unused code.

> This PR has been automatically opened by your friendly [`multibot`](https://github.com/FormidableLabs/multibot/). The transform code and documentation is available at: https://github.com/FormidableLabs/multibot-examples/tree/master/transforms/webpack-side-effects
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type: Bug 🐛 Oh no! A bug or unintentional behavior
Projects
None yet
Development

No branches or pull requests

2 participants