|
|
|
|
|
by skookum-skuad
2227 days ago
|
|
Yuck. The only way out of dependency hell is to disallow it by allowing multiple versions/different configurations of side-by-side packages and GCing non-leaf packages. This pattern of "only one global package for everything" is failure. Too often, naïve designers will just cut things because they just don't understand them or copy & paste because they don't understand what failures exist and what solutions do/alternatives could exist. Habitat (hab), nix, and others IIRC do SxS package mgmt. Everything Should Be Made as Simple as Possible, But Not Simpler - possibly paraphrasing Einstein |
|
Another elegant way, for a more civilized time, is to simply disallow dependencies. If none of your packages has any dependencies, then no dependency hell is ever possible. This is possible and easy with static executables (for binary packages), and by embedding the interpreter of packages written in scripting languages.