Opened 13 years ago
Closed 13 years ago
#29822 closed defect (fixed)
p5-http-date @6.00_0 trips up p5-libwww-perl 6.x upgrade when using direct mode
Reported by: | l2g@… | Owned by: | l2g@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 1.9.2 |
Keywords: | Cc: | danielluke (Daniel J. Luke) | |
Port: | p5-http-date |
Description (last modified by l2g@…)
From Daniel J. Luke:
On Jun 11, 2011, at 10:00 PM, Larry Gilbert wrote:
I've tested the upgrade many times over and I don't expect any problems, but if you run into any, please let me know.
it fails when using 'direct' mode (instead of image mode):
DEBUG: Executing proc-pre-org.macports.activate-activate-0 Warning: Deactivating old, pre-6.x libwww-perl to activate p5-http-date ---> Deactivating p5-libwww-perl Error: Target org.macports.activate returned: Image error: p5-libwww-perl @5.837_1 not installed as an image. DEBUG: Backtrace: Image error: p5-libwww-perl @5.837_1 not installed as an image. while executing "$pre $targetname" Warning: the following items did not execute (for p5-http-date): org.macports.activate Log for p5-http-date is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync. macports.org_release_ports_perl_p5-http-date/main.log Error: Problem while installing p5-http-date To report a bug, see <http://guide.macports.org/#project.tickets>
Simple workaround is to uninstall p5-libwww-perl (with force if necessary) and then install it again.
(the problem is the pre-activate method in p5-http-date assumes image mode).
Change History (4)
comment:1 Changed 13 years ago by l2g@…
Description: | modified (diff) |
---|---|
Owner: | changed from macports-tickets@… to l2g@… |
Status: | new → assigned |
comment:2 Changed 13 years ago by l2g@…
comment:3 Changed 13 years ago by danielluke (Daniel J. Luke)
I think it's OK to uninstall/install for any direct mode users. Upgrade for direct (+archive mode) works by building the new archive, uninstalling, and then installing the new port.
Since it's happening in pre-activate (which is after destroot), you already should have a successful build.
comment:4 Changed 13 years ago by jmroot (Joshua Root)
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Direct mode is no more.
I've thought this over a bit.
In direct mode, there is only one version of each port installed. So to have the same upgrade behavior in direct mode, p5-libwww-perl would simply have to be uninstalled.
But if a failure occurs, then the system is left with no p5-libwww-perl. That makes me uneasy. (At least in image mode, a deactivated p5-libwww-perl is still installed.)
So I think the "workaround" given above may actually be the best route for direct-mode users to go. Thus I would want to edit this port, p5-libwww-perl, and all of its dependents so they would inform direct-mode users of this necessity, rather than simply allow upgrades to fail without explanation.
Objections? Other suggestions?