Setting up MacPorts libsolv branch and Testing libsolv search

Jackson Isaac ijackson at macports.org
Mon Jun 22 06:58:28 PDT 2015


Hi Rainer,

On Mon, Jun 22, 2015 at 6:34 PM, Rainer Müller <raimue at macports.org> wrote:
>
> thank you for the report. It's good to see you are making progress as
> midterm is already approaching.
>

Thanks :)

> On 2015-06-20 14:28, Jackson Isaac wrote:
>> Currently most of the options that are available in builtin search
>> "port help search" have also been made available with libsolv. More
>> options, information and features will be added soon :)
>
> Please excuse my ignorance here, but 'port search' merely queries the
> index for matching ports. Why do we need a SAT solver for this? What is
> the expected advantage?
>

Comparatively libsolv was faster than the builtin search. We have
added more information to the solv's so the performance is a bit slow
as compared to the updated builtin search that is performing faster
after revision137850. This would be fixed soon when we add the
information by converting it to some integer Id that libsolv uses.

And in the near future, we would like to have only one engine (i.e
libsolv) to be used by default for all the purposes (i.e. search,
dependency calculation, etc.) and clean up the old code. This is also
done by other package managers and the results are promising. So we
started with something smaller i.e. libsolv search and at the same
time finding ways to add more information to the solv's and this week
we will be starting work on dependency and conflicts.

Libsolv search assures that the libsolv engine works properly and
gives the desired results.

> Is this meant to replace PortIndex?
>

Currently we depend on PortIndex to create our libsolv cache (or Pool,
rather) which contains all the information related to solv (ports).
Not only libsolv search is implemented but we have also converted the
portinfo to libsolv useable data.

Libsolv also provides a lot of options and we look forward to support
most,  if not all the features that libsolv has to provide.

-- 
Jackson Isaac
S7 B.Tech CSE
Amrita Vishwa Vidyapeetham
jacksonisaac.wordpress.com
Github/JacksonIsaac


More information about the macports-dev mailing list