jmr at macports.org
Fri Jan 21 23:50:18 PST 2011
On 2011-1-22 09:31 , Rainer Müller wrote:
> On 2011-01-21 21:41 , Bradley Giesbrecht wrote:
>> Why are the effects of -R not the default behavior?
> -R causes a forced rebuild of *all* dependents recursively and will
> cause lots of unnecessary builds. There is currently no way to tell if
> an upgrade of a dependent is required.
That's not quite correct as -R does not automatically imply --force.
(Maybe it should, since that's about the only way it makes sense to use it.)
> Note also, a 'port -R upgrade outdated' could cause multiple unnecessary
> rebuilds of the same port as it can be in the dependents of more than
> one port.
Also, it only recurses in one direction at a time, as to do otherwise
would take forever and result in lots of rebuilds of the same thing when
using --force (like ticket #10827). That is, dependents' dependencies
are not upgraded before the dependents themselves.
That means you definitely don't want to run 'port -R upgrade outdated'.
It's redundant to ask to do dependents as well when you're already
upgrading everything outdated anyway.
A correct way to upgrade a port and all its dependents would be 'port
upgrade foo rdependentof:foo'.
More information about the macports-dev