Remove yarn esbuild pnp plugin#33097
Conversation
|
View your CI Pipeline Execution ↗ for commit 46bd4d5
☁️ Nx Cloud last updated this comment at |
📝 WalkthroughWalkthroughThe changes remove the PnP (Plug'n'Play) esbuild plugin support from the build configuration by deleting the devDependency from package.json and removing the corresponding plugin import and usage from the builder manager configuration. Changes
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes ✨ Finishing touches
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (2)
💤 Files with no reviewable changes (1)
🧰 Additional context used🧬 Code graph analysis (1)code/core/src/builder-manager/index.ts (1)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
🔇 Additional comments (1)
Comment |
📝 WalkthroughWalkthroughThe pull request removes Yarn PnP (Plug'n'Play) esbuild plugin support from the build configuration. This includes removing the devDependency from the package manifest and eliminating the plugin's integration from the esbuild configuration in the builder manager. Changes
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes
Possibly related PRs
✨ Finishing touches
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (2)
💤 Files with no reviewable changes (1)
🧰 Additional context used🧬 Code graph analysis (1)code/core/src/builder-manager/index.ts (1)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
🔇 Additional comments (1)
Comment |
Package BenchmarksCommit: The following packages have significant changes to their size or dependencies:
|
| Before | After | Difference | |
|---|---|---|---|
| Dependency count | 39 | 39 | 0 |
| Self size | 19.20 MB | 19.18 MB | 🎉 -24 KB 🎉 |
| Dependency size | 16.40 MB | 16.40 MB | 0 B |
| Bundle Size Analyzer | Link | Link |
@storybook/cli
| Before | After | Difference | |
|---|---|---|---|
| Dependency count | 173 | 173 | 0 |
| Self size | 770 KB | 770 KB | 🎉 -84 B 🎉 |
| Dependency size | 66.17 MB | 66.14 MB | 🎉 -24 KB 🎉 |
| Bundle Size Analyzer | Link | Link |
@storybook/codemod
| Before | After | Difference | |
|---|---|---|---|
| Dependency count | 166 | 166 | 0 |
| Self size | 30 KB | 30 KB | 0 B |
| Dependency size | 64.74 MB | 64.72 MB | 🎉 -24 KB 🎉 |
| Bundle Size Analyzer | Link | Link |
create-storybook
| Before | After | Difference | |
|---|---|---|---|
| Dependency count | 40 | 40 | 0 |
| Self size | 998 KB | 998 KB | 🎉 -84 B 🎉 |
| Dependency size | 35.60 MB | 35.58 MB | 🎉 -24 KB 🎉 |
| Bundle Size Analyzer | node | node |
What I did
Remove
@yarnpkg/esbuild-plugin-pnp.Esbuild has natively and fully supported
pnpsince 0.15, well below the current minimum listed version of 0.18.I've recently encountered a bug where the plugin was significantly behind in its resolution logic. Removing the plugin and allowing esbuild to resolve natively fixed the problem.
I appreciate that dropping support for yarn pnp is earmarked for 11, but ironically dropping this special case handling for yarn pnp actually impropes support for it. So...everyone wins?
Checklist for Contributors
Testing
The changes in this PR are covered in the following automated tests:
Manual testing
This section is mandatory for all contributions. If you believe no manual test is necessary, please state so explicitly. Thanks!
Documentation
MIGRATION.MD
Checklist for Maintainers
When this PR is ready for testing, make sure to add
ci:normal,ci:mergedorci:dailyGH label to it to run a specific set of sandboxes. The particular set of sandboxes can be found incode/lib/cli-storybook/src/sandbox-templates.tsMake sure this PR contains one of the labels below:
Available labels
bug: Internal changes that fixes incorrect behavior.maintenance: User-facing maintenance tasks.dependencies: Upgrading (sometimes downgrading) dependencies.build: Internal-facing build tooling & test updates. Will not show up in release changelog.cleanup: Minor cleanup style change. Will not show up in release changelog.documentation: Documentation only changes. Will not show up in release changelog.feature request: Introducing a new feature.BREAKING CHANGE: Changes that break compatibility in some way with current major version.other: Changes that don't fit in the above categories.🦋 Canary release
This PR does not have a canary release associated. You can request a canary release of this pull request by mentioning the
@storybookjs/coreteam here.core team members can create a canary release here or locally with
gh workflow run --repo storybookjs/storybook publish.yml --field pr=<PR_NUMBER>Summary by CodeRabbit