Listing the ports that will be upgraded in advance

Clemens Lang cal at macports.org
Thu Feb 19 06:55:40 PST 2015


Hi,

----- On 19 Feb, 2015, at 15:22, Michael Dickens michaelld at macports.org wrote:

> I would love to see this feature added to the "upgrade" process; or,
> really, any time a port is installed (in general). Right now, port will
> print a list of ports to be installed that are not already installed. It
> would be nice for port to print those dependencies needing to be
> upgraded (for any reason) as well, giving the user a choice to do the
> upgrade or not (for all, not individually; same as for installing
> required dependencies).
> 
> To get such a list beforehand (of -all- ports needing to be upgraded,
> not just those specifically for the port you're interested in upgrading
> or installing), you can always use "port outdated". But, the output is
> not very user-friendly and sometimes the list is so long that it's not
> useful -- e.g., one cannot easily cherry-pick specific ports to be
> upgraded in any order because the list goes on and on for pages. - MLD

This basically boils down to re-factoring the dependency engine, something
which I think has been due for a while. While doing that we could also
improve it (or at least make some preparations to improve it, e.g. to
support variant dependencies). Basically, we should
 (a) generate a list of installed ports
 (b) generate a list of available ports
 (c) generate a list of requested changes
 (d) throw that at a SAT solver to give us an execution plan
 (e) display the execution plan in a human readable format for confirmation
 (f) execute it.
There's also a GSoC proposal for this.

-- 
Clemens Lang


More information about the macports-dev mailing list