Opened 14 years ago

Closed 14 years ago

#23520 closed defect (fixed)

py26-docutils upgrade doesn't go smoothly because of py26-roman

Reported by: ryandesign (Ryan Carsten Schmidt) Owned by: jmroot (Joshua Root)
Priority: Normal Milestone:
Component: ports Version: 1.8.2
Keywords: Cc:
Port: py26-docutils, py26-roman

Description

Upgrading py26-docutils 0.5 to 0.6 does not go smoothly:

$ sudo port -u upgrade py26-docutils
Password:
--->  Computing dependencies for py26-roman
--->  Fetching py26-roman
--->  Attempting to fetch roman-1.4.0.tar.gz from http://distfiles.macports.org/python
--->  Verifying checksum(s) for py26-roman
--->  Extracting py26-roman
--->  Configuring py26-roman
--->  Building py26-roman
--->  Staging py26-roman into destroot
--->  Installing py26-roman @1.4.0_0
--->  Activating py26-roman @1.4.0_0
Error: Target org.macports.activate returned: Image error: /opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/roman.py is being used by the active py26-docutils port.  Please deactivate this port first, or use 'port -f activate py26-roman' to force the activation.
Error: Problem while installing py26-roman
Before reporting a bug, first run the command again with the -d flag to get complete output.
$

py26-docutils 0.5 provided roman.py. Now that file is provided by py26-roman and py26-docutils now declares a dependency on it. But that dependency cannot be activated while the old version of py26-docutils is active.

Perhaps this can be solved similarly to the way I solved the issue when spawn-fcgi was broken out of lighttpd; see r58202. The success of this method depends on being able to programmatically identify the version of py26-docutils currently installed; if that can be done, this solution should be possible. Another example of the same solution in action is in the dcraw port, to prevent a conflict when upgrading ufraw; see r62451.

Change History (1)

comment:1 Changed 14 years ago by jmroot (Joshua Root)

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.