New Ticket     Tickets     Wiki     Browse Source     Timeline     Roadmap     Ticket Reports     Search

Ticket #19961 (closed defect: fixed)

Opened 4 years ago

Last modified 4 years ago

wrong variants passed to upgrade when using some pseudo-ports

Reported by: jmr@… Owned by: macports-tickets@…
Priority: Normal Milestone: MacPorts 1.8.0
Component: base Version: 1.8.0
Keywords: Cc:
Port:

Description

The upgrade proc's variationslist argument is meant to be the variant selections that were specified on the command line. However, when a pseudo-port that queries the registry is used, action_upgrade ends up passing the variants with which the port is currently installed. This can cause upgrade to behave incorrectly, and can even cause failures due to conflicting variants in dependencies.

Example (with a little debug output added to action_upgrade):

% port outdated        
The following installed ports are outdated:
boost                          1.38.0_0 < 1.39.0_0
% port installed boost
The following ports are currently installed:
  boost @1.38.0_0+darwin_9+python25 (active)
% port -y upgrade boost
variations = 
<snip>
% port -y upgrade outdated           
variations = python25 + darwin_9 +
Error: Variant python25 conflicts with python26
Error: Unable to open port: Error evaluating variants
<snip>

Change History

comment:1 Changed 4 years ago by jmr@…

  • Status changed from new to closed
  • Resolution set to fixed
Note: See TracTickets for help on using tickets.