3 ms·
Was glad to see this blurb > One interesting avenue of future work is to try to replace libsolv by a solver written in Rust, such as PubGrub. That way we could
by epage 4y ago
Was glad to see this blurb
> One interesting avenue of future work is to try to replace libsolv by a solver written in Rust, such as PubGrub. That way we could get rid of a bunch of unsafe code we are using to interface with libsolv through Rust’s FFI.
For people who would be interested in learning more, check out this conference presentation: https://youtu.be/XyJpYFnl18U https://youtu.be/XyJpYFnl18U
Using pubgrub in cargo is something we talk about on a regularly basis. Its our equivalent of rustc chalk or polonius: we keep limping along, always finding a new hack to extend the life of the current package resolver due to the large lift to change out the resolver but also knowing how much the current one slows us down and holds us back.
I'm excited for any forward movement on pubgrub in any related project.
- droelf 4y agoAnother rattler author here! Indeed, pubgrub-rs looks like one hell of a good alternative to libsolv. We've already tried quite a bit to use it in rattler, but the many "variant" packages in the conda ecosystem gave it a bit of a hard time. We still think that we can make it work. And thanks for linking a PackagingCon talk – I am actually the an organizer of that conference and happy to report that it's coming back this year in October (https://packaging-con.org https://packaging-con.org has the details).
- munificent 4y agoIf you prefer text over video, here's Natalie's original article about PubGrub: https://nex3.medium.com/pubgrub-2fb6470504f https://nex3.medium.com/pubgrub-2fb6470504f She invented this for Dart's package manager (pub), which is where the name comes from.