-
Notifications
You must be signed in to change notification settings - Fork 12.8k
WIP: allow circular project references #54216
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
The TypeScript team hasn't accepted the linked issue #33685. If you can get it accepted, this PR will have a better chance of being reviewed. |
@typescript-bot pack this |
@jakebailey Could you help me pack it? |
I mean, I guess I can, but your PR comment implies that you're wanting us to pack this so you can use it in production, which feels a little concerning. Packed builds are really only for testing and to give to people who are having problems to make sure the fix works. If you are actually wanting to use this for anything else... it feels like you probably are actually just trying to work on a continued fork of TS? We're can't keep packing this over and over to support that use case... I also don't think it's "eventual" that we do this, either. @typescript-bot pack this |
Heya @jakebailey, I've started to run the tarball bundle task on this PR at f4923a4. You can monitor the build here. |
Hey @jakebailey, I've packed this into an installable tgz. You can install it for testing by referencing it in your
and then running There is also a playground for this build and an npm module you can use via |
Thank you for raising your concerns. I understand your point of view, but let me clarify our intentions. Yes, we do want to use this in production, but we're also actively working on refactoring our code to eliminate circular dependencies. This version should help us through the refactoring process, and we don't want to maintain a fork of the TypeScript compiler either, will switch back to the official versions once it's done. |
Could we add a compiler option which keeps the existing logic in place (fails if any circular dependency exists)? |
If I'm understanding correctly, it seems that no additional options are required because it will still fail unless all circular dependencies are explicitly identified as such. |
1 similar comment
If I'm understanding correctly, it seems that no additional options are required because it will still fail unless all circular dependencies are explicitly identified as such. |
This branch is nearly two years old. I'm going to close it for now; @Zzzen let me know if you still need a build of this. |
Fixes #33685
This issue is still being discussed, so there's no need to delve into it here. However, I would like to proceed with packing it and migrating our current project to project references, in order to prepare for the eventual elimination of circular references.