GSoC 15 - Dependency Calculation using SAT

Clemens Lang cal at macports.org
Sat Mar 21 11:10:44 PDT 2015


Forgot to reply to a couple of paragraphs, more text inline below.

----- On 21 Mar, 2015, at 14:00, Jackson Isaac jacksonisaac2008 at gmail.com wrote:

> Currently, we are fetching the dependencies from the Portfile correct?
> based on the dependencies defined by the maintainer of the port.

Yes.


> Using SAT method we will be defining minimal dependencies and these
> dependencies will be further checked for their dependencies or we need
> to still define all the dependencies for each package?

The general idea is to give the SAT solver a list of each port and its
dependencies and a list of the ports you want installed, and it'll tell
you which dependencies you also need to install.


> Eg. x depends on y. so in portfile of x say it depends on y. Now we
> will check if y depends on any a,b,c further.

That is the recursive approach we currently use. Without backtracking
(which the code does not do) it has a couple of limitations in dealing
with conflicts and alternative possibilities, which is why we'd like
to see a SAT-based approach.


> Like this compute different possible combinations and select the best
> course and also taking the variant into account (using Boolean).




-- 
Clemens Lang


More information about the macports-dev mailing list