On Tue, Mar 24, 2020 at 5:24 PM Tzu-ping Chung <uranu...@gmail.com> wrote:

> To expand a little on the topic, there are multiple abstraction layers
> required to make the new resolver useful as a separate package.
>
> ResolveLib (mentioned in Paul’s message) is an dependency resolver
> implementation in abstract, entirely divorced of Python packaging. While it
> can be used by other tools, the implementer would need to provide the
> necessary parts to “teach” it how understand Python packages.
>
> The ongoing pip resolver work is exactly that, to integrate ResolveLib
> into pip by wiring it onto pip’s internal representation of Python
> packages. This is unfortunately not really reusable for other tools, since
> pip’s current model on Python packages is too deeply entangled into various
> parts of the code base.
>
> Some extra work is needed to make ResolveLib really useful as a reusable
> Python dependency resolver for other projects. One way would be to
> implement a wrapper library to provide the same Python package semantics to
> ResolveLib, but with more reusable models such as pypa/packaging,
> importlib-metadata, etc. The current pip resolver work would be able to
> offer much knowledge on dealing with various hairy problems, but the code
> written for pip wouldn’t be directly reusable.
>
> TP
>

"New Resolver: technical choices" compares various resolvers.
https://github.com/pypa/pip/issues/7406

FWICS, more test cases should be the immediate objective.

Factoring out to make a generic resolver would be redundant? Would existing
interfaces for e.g. libsolv (dnf) and pycosat (conda) be sufficient?


>
>
> > On 25/3/2020, at 03:02, Paul Moore <p.f.mo...@gmail.com> wrote:
> >
> > It's already available as a separate package:
> > https://pypi.org/project/resolvelib/
> >
> > Paul
> >
> > On Tue, 24 Mar 2020 at 18:52, Brett Cannon <br...@python.org> wrote:
> >>
> >> I couldn't find this in the blog post but is the plan to make the
> resolver a separate package so other tools can use it? Or is the plan
> perhaps to get it working in pip first and to break it out later?
> >> --
> >> Distutils-SIG mailing list -- distutils-sig@python.org
> >> To unsubscribe send an email to distutils-sig-le...@python.org
> >> https://mail.python.org/mailman3/lists/distutils-sig.python.org/
> >> Message archived at
> https://mail.python.org/archives/list/distutils-sig@python.org/message/CLWGXEPNNMZ6YI5WWJ3ZKWWY5WVQOCAE/
> > --
> > Distutils-SIG mailing list -- distutils-sig@python.org
> > To unsubscribe send an email to distutils-sig-le...@python.org
> > https://mail.python.org/mailman3/lists/distutils-sig.python.org/
> > Message archived at
> https://mail.python.org/archives/list/distutils-sig@python.org/message/43NVR5W7YKVFBDY5FSMBWQPLKKG2V2EP/
> --
> Distutils-SIG mailing list -- distutils-sig@python.org
> To unsubscribe send an email to distutils-sig-le...@python.org
> https://mail.python.org/mailman3/lists/distutils-sig.python.org/
> Message archived at
> https://mail.python.org/archives/list/distutils-sig@python.org/message/VLSD5OXWR6YLAFXQZWCZSCLXPNUUBSU4/
>
--
Distutils-SIG mailing list -- distutils-sig@python.org
To unsubscribe send an email to distutils-sig-le...@python.org
https://mail.python.org/mailman3/lists/distutils-sig.python.org/
Message archived at 
https://mail.python.org/archives/list/distutils-sig@python.org/message/W2OKN24JMKO5TTMLCIJ247KDVFFOA6XW/

Reply via email to