Solving Package Management via Hypergraph Dependency Resolution
Ryan Gibb, Patrick Ferris, David Allsopp, Michael Winston Dales, Mark Elvers, Thomas Gazagnaire, Sadiq Jaffer, Thomas Leonard, Jon Ludlam, Anil Madhavapeddy

TL;DR
HyperRes introduces a formal hypergraph-based system that enables interoperability and precise dependency resolution across multiple package management ecosystems without requiring users to change their package managers.
Contribution
It presents HyperRes, a novel formal system that models cross-ecosystem dependency resolution using hypergraphs and demonstrates its applicability to existing package managers.
Findings
HyperRes can translate and resolve dependencies across diverse package ecosystems.
Dependency resolution across ecosystems is feasible without changing existing package managers.
The system supports environment-specific dependency solving.
Abstract
Package managers are everywhere, with seemingly every language and operating system implementing their own solution. The lack of interoperability between these systems means that multi-lingual projects are unable to express precise dependencies across language ecosystems, and external system and hardware dependencies are typically implicit and unversioned. We define HyperRes, a formal system for describing versioned dependency resolution using a hypergraph that is expressive enough to model many ecosystems and solve dependency constraints across them. We define translations from dozens of existing package managers to HyperRes and comprehensively demonstrate that dependency resolution can work across ecosystems that are currently distinct. This does not require users to shift their choice of package managers; instead, HyperRes allows for the translation of packaging metadata between…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsAdvanced Software Engineering Methodologies · Software Engineering Research · Software System Performance and Reliability
