-
Notifications
You must be signed in to change notification settings - Fork 31
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
optionally disable cycle detection #65
Comments
Just removing that line won't be enough, as the rest of the program assumes there are no cycles. Its likely that the final RunGraph promise will never resolve |
Makes sense. I could try to add to check if the package was already visited in a RunGraph Line 156 in 9d2a2a1
if (this.resultMap.has(pkg))
return Bromise.resolve(this.resultMap.get(pkg)); |
Line 156 will only run after all deps resolve, which will only resolve after their own deps resolve, thereby reaching the cycle. Whatever flag is set has to happen before the dependencies line (153), and hopefully that can be used afterwards as a filter in 153 i.e. |
(And unfortunately even then, its not enough to just set the flag, because that way the rungraph will only wait for a dependency for the first time. Instead, an entirely different dependency waiting strategy will be necessary) |
solved it by What do you think of adding .pkgConf("wsrun") to yarn configuration so it could be possible to configure package filtering for all commands by default? Lines 13 to 15 in 9d2a2a1
|
That sounds like a really nice idea! |
Hey folks! I'm running into this issue as well. Building sequentially should work, particularly because one of the dependencies is just a |
The only idea that could work is to modify the dependency graph before passing it to the rest of the program (that would probably happen before cycle detection). For that we need likely the following:
|
can we disable this somehow ? |
Please provide option to disable cycle detection.
I'm using yarn workspaces in two projects written in typescript where they reference each other.
It works okay if I use
ts-node
to:rollup
It doesn't produce a dead loop, but
wsrun
throws an error even why I don't specify--recursive
option.Could be done by wrapping this block with new option, like
--no-cycle-detection
wsrun/src/index.ts
Line 221 in 7fa4c23
Please let me know if you want me to do a PR.
The text was updated successfully, but these errors were encountered: