-
Couldn't load subscription status.
- Fork 6.8k
Second iteration of rules_js migration
#30648
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
Conversation
0496438 to
4d7bd95
Compare
For linking of Angular packages we are using something more clever than what we are doing with `rules_nodejs`. Instead of maintaing complexity where we pre-link FESM bundles and somehow inject them into other Bazel bundling steps (with complex linker mappings), we pre-link as part of individual package postinstall steps, exposing the linked bundles via a NodeJS exports condition. This is possible vis this package/script: https://github.com/devversion/angular-linking Clearly this is not at a good location, but it's necessary right now to ship this code via npm because `rules_js` struggles to use pnpm extensions onto workspace 1st-party packages. Long-term we can either decide to keep it that way, move it into e.g. dev-infra repository, or we can explore shipping pre-linked bundles via APF. TBD.
Migrates all `ts_library` targets in `tools/` to use the `rules_js` `ts_project` rule.
Improves the `ts_project` interop to work with Esbuild bundling. Right now we can end up with multiple copies of the same source file. e.g. input might import from `@angular/cdk/testing` and end up with the version of `rules_nodejs` linker, while other imports to the native `ts_library` targets end up being mapped to their actual sources in the `bazel-bin`, and not inside `node_modules`
Migrates more `ts_library` targets to `rules_js`
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
|
This issue has been automatically locked due to inactivity. Read more about our automatic conversation locking policy. This action has been performed automatically by a bot. |
See individual commits