-
-
Notifications
You must be signed in to change notification settings - Fork 376
Commit e1b43e7
committed
feature #2944 Modernize and simplify our packages building tools, replace Rollup by tsup (Kocal)
This PR was squashed before being merged into the 2.x branch.
Discussion
----------
Modernize and simplify our packages building tools, replace Rollup by tsup
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes <!-- please update src/**/CHANGELOG.md files -->
| Docs? | yes <!-- required for new features -->
| Issues | Fix #... <!-- prefix each issue number with "Fix #", no need to create an issue if none exist, explain below instead -->
| License | MIT
Following #2935. Same goals, but less frictions than with tsdown, [tsup](https://github.com/egoist/tsup):
- `target` is correctly read from our `tsconfig.packages.json`
- no `//#region` comments
- less polyfills than oxc
- the `target` **stays** `es2021` without any issues with `static` and Stimulus
Two things:
1. About the `react-dom/client` import, yes it will impact AssetMapper users that don't use Flex, but it will positively impact other users (AssetMapper with Flex, Webpack Encore...) by removing useless code and making the file smaller
2. About the tons of `.d.ts` files removed, that's still fine, there is no point to generate `dist/<file>.d.ts` files when `dist/<file>.js` do not exist, they are not part of the public API.
The code review must be easier, since less code has been touched than with tsdown.
---
# Demo
When building LiveComponent assets:
```
➜ assets git:(tsup) pnpm build
> `@symfony`/[email protected] build /Users/kocal/workspace-os/symfony-ux/src/LiveComponent/assets
> tsx ../../../bin/build_package.ts .
CLI Building entry: src/live.css, src/live_controller.ts
CLI Using tsconfig: ../../../tsconfig.packages.json
CLI tsup v8.5.0
CLI Target: es2021
CLI Cleaning output folder
ESM Build start
[Symfony UX] Minified CSS file: /Users/kocal/workspace-os/symfony-ux/src/LiveComponent/assets/dist/live.css
[Symfony UX] Renamed dist/live.css to dist/live.min.css
ESM dist/live_controller.js 12.25 KB
ESM dist/live.css 74.00 B
ESM ⚡️ Build success in 26ms
DTS Build start
DTS ⚡️ Build success in 1276ms
DTS dist/live_controller.d.ts 7.96 KB
```
When watching LiveComponent assets, the CSS is easily watched too!
https://github.com/user-attachments/assets/a246f278-8bf4-40f6-887e-685be7509af0
Commits
-------
965fb95 Modernize and simplify our packages building tools, replace Rollup by tsupFile tree
Expand file treeCollapse file tree
0 file changed
+0
-0
lines changedFilter options
Expand file treeCollapse file tree
0 file changed
+0
-0
lines changed
0 commit comments