You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A bunch of modules have the traditional chicken-and-egg problem, where modules depend on each other, e.g., libvnd and mesa-lib.
While the general problem cannot be solved without providing binaries for either package, we could handle cycles with optional_depends automatically.
Once such a cycle is detected (this doesn't happen at the moment),
the system could automatically disable a specific optional dependency to break the cycle, compile the packages and in the end compile the first package again, enabling the dependency.
To designate a specific dependency for this process, I'd propose to use a new breakable_optional_depends function.
Still, implementing this is tricky, especially because we have to consider the case where any package-build in between fails.
The text was updated successfully, but these errors were encountered:
A bunch of modules have the traditional chicken-and-egg problem, where modules depend on each other, e.g.,
libvnd
andmesa-lib
.While the general problem cannot be solved without providing binaries for either package, we could handle cycles with
optional_depends
automatically.Once such a cycle is detected (this doesn't happen at the moment),
the system could automatically disable a specific optional dependency to break the cycle, compile the packages and in the end compile the first package again, enabling the dependency.
To designate a specific dependency for this process, I'd propose to use a new
breakable_optional_depends
function.Still, implementing this is tricky, especially because we have to consider the case where any package-build in between fails.
The text was updated successfully, but these errors were encountered: