[MacPorts] #19521: python2.6-2.6.2 wrong port upgraded (gperf)
#19521: python2.6-2.6.2 wrong port upgraded (gperf) --------------------------------+------------------------------------------- Reporter: paulymer@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.7.1 Keywords: python2.6 upgrade | Port: python2.6 --------------------------------+------------------------------------------- I am trying to upgrade my python installation. First I tried: $ sudo port install python2.6 but I unknowingly had a python2.6 installed already. So I tried: $ sudo port upgrade python26 Password: ---> Fetching gperf ---> Attempting to fetch gperf-3.0.4.tar.gz from http://distfiles.macports.org/gperf ---> Verifying checksum(s) for gperf ---> Extracting gperf ---> Configuring gperf ---> Building gperf ---> Staging gperf into destroot ---> Deactivating gperf @3.0.3_0 ---> Installing gperf @3.0.4_0 ---> Activating gperf @3.0.4_0 ---> Cleaning gperf ---> Fetching openssl ---> Attempting to fetch openssl-0.9.8k.tar.gz from http://distfiles.macports.org/openssl ---> Verifying checksum(s) for openssl ---> Extracting openssl ---> Applying patches to openssl ---> Configuring openssl ---> Building openssl ---> Staging openssl into destroot ---> Deactivating openssl @0.9.8j_0 ---> Installing openssl @0.9.8k_0 ---> Activating openssl @0.9.8k_0 ---> Cleaning openssl ---> Fetching xorg-xproto --- snip --- As can be seen, gperf was installed instead of python2.6 upgraded... -- Ticket URL: <http://trac.macports.org/ticket/19521> MacPorts <http://www.macports.org/> Ports system for Mac OS
#19521: python2.6-2.6.2 wrong port upgraded (gperf) --------------------------------+------------------------------------------- Reporter: paulymer@… | Owner: blb@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.7.1 Keywords: upgrade | Port: python26 --------------------------------+------------------------------------------- Changes (by blb@…): * cc: mcalhoun@… (added) * keywords: python2.6 upgrade => upgrade * owner: macports-tickets@… => blb@… * port: python2.6 => python26 Old description:
I am trying to upgrade my python installation. First I tried:
$ sudo port install python2.6
but I unknowingly had a python2.6 installed already. So I tried:
$ sudo port upgrade python26 Password: ---> Fetching gperf ---> Attempting to fetch gperf-3.0.4.tar.gz from http://distfiles.macports.org/gperf ---> Verifying checksum(s) for gperf ---> Extracting gperf ---> Configuring gperf ---> Building gperf ---> Staging gperf into destroot ---> Deactivating gperf @3.0.3_0 ---> Installing gperf @3.0.4_0 ---> Activating gperf @3.0.4_0 ---> Cleaning gperf ---> Fetching openssl ---> Attempting to fetch openssl-0.9.8k.tar.gz from http://distfiles.macports.org/openssl ---> Verifying checksum(s) for openssl ---> Extracting openssl ---> Applying patches to openssl ---> Configuring openssl ---> Building openssl ---> Staging openssl into destroot ---> Deactivating openssl @0.9.8j_0 ---> Installing openssl @0.9.8k_0 ---> Activating openssl @0.9.8k_0 ---> Cleaning openssl ---> Fetching xorg-xproto --- snip ---
As can be seen, gperf was installed instead of python2.6 upgraded...
New description: I am trying to upgrade my python installation. First I tried: $ sudo port install python2.6 but I unknowingly had a python2.6 installed already. So I tried: {{{ $ sudo port upgrade python26 Password: ---> Fetching gperf ---> Attempting to fetch gperf-3.0.4.tar.gz from http://distfiles.macports.org/gperf ---> Verifying checksum(s) for gperf ---> Extracting gperf ---> Configuring gperf ---> Building gperf ---> Staging gperf into destroot ---> Deactivating gperf @3.0.3_0 ---> Installing gperf @3.0.4_0 ---> Activating gperf @3.0.4_0 ---> Cleaning gperf ---> Fetching openssl ---> Attempting to fetch openssl-0.9.8k.tar.gz from http://distfiles.macports.org/openssl ---> Verifying checksum(s) for openssl ---> Extracting openssl ---> Applying patches to openssl ---> Configuring openssl ---> Building openssl ---> Staging openssl into destroot ---> Deactivating openssl @0.9.8j_0 ---> Installing openssl @0.9.8k_0 ---> Activating openssl @0.9.8k_0 ---> Cleaning openssl ---> Fetching xorg-xproto --- snip --- }}} As can be seen, gperf was installed instead of python2.6 upgraded... -- Comment: python26 has several dependencies, one of which is gettext which then pulls in libiconv and that needs gperf, hence installing it. After your snip, did it eventually get to installing the python26 port? -- Ticket URL: <http://trac.macports.org/ticket/19521#comment:1> MacPorts <http://www.macports.org/> Ports system for Mac OS
#19521: python2.6-2.6.2 wrong port upgraded (gperf) --------------------------------+------------------------------------------- Reporter: paulymer@… | Owner: blb@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.7.1 Keywords: upgrade | Port: python26 --------------------------------+------------------------------------------- Comment(by paulymer@…): I see, that makes sense. I checked the output and python26 was never installed. Here is the full list of ports that were installed(upgraded); I removed extra lines for each port: ---> Fetching gperf ---> Fetching openssl ---> Fetching xorg-xproto ---> Fetching xorg-xtrans ---> Fetching xorg-xextproto ---> Fetching xorg-libX11 ---> Fetching freetype ---> Fetching fontconfig ---> Fetching Xft2 ---> Fetching xorg-libXext ---> Fetching readline ---> Fetching sqlite3 ---> Fetching db46 ---> Attempting to fetch patch.4.6.21.1 from http://distfiles.macports.org/db4/4.6.21_5 ---> Attempting to fetch patch.4.6.21.2 from http://distfiles.macports.org/db4/4.6.21_5 ---> Attempting to fetch patch.4.6.21.3 from http://distfiles.macports.org/db4/4.6.21_5 ---> Attempting to fetch db-4.6.21.tar.gz from http://distfiles.macports.org/db4/4.6.21_5 ---> Fetching bzip2 $ I checked a few things: $ port outdated --- snip --- python26 2.6.1_0 < 2.6.2_2 --- snip --- and, I ran "$ sudo port upgrade python26" again, but nothing happened. Then, I tried to clean the port with "$ sudo port clean --all python26" as shown in the user manual; seemed to be okay. Poking around further, I tried to uninstall python26 port, so that I could reinstall fresh; here is the result: $ sudo port uninstall python26 ---> The following versions of python26 are currently installed: ---> python26 @2.6.1_0 (active) ---> python26 @2.6.2_2 Error: port uninstall failed: Registry error: Please specify the full version as recorded in the port registry. So, it appears that the port has been upgraded to the latest version, but that change hasn't been reflected in the port registry? If this is the case, how do I update the registry? Thanks. -- Ticket URL: <http://trac.macports.org/ticket/19521#comment:2> MacPorts <http://www.macports.org/> Ports system for Mac OS
#19521: python2.6-2.6.2 wrong port upgraded (gperf) --------------------------------+------------------------------------------- Reporter: paulymer@… | Owner: blb@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.7.1 Keywords: upgrade | Port: python26 --------------------------------+------------------------------------------- Comment(by raimue@…): Please remember WikiFormatting. To activate the other version, use: {{{ sudo port deactivate python26 sudo port activate python26 @2.6.2_2 }}} -- Ticket URL: <http://trac.macports.org/ticket/19521#comment:3> MacPorts <http://www.macports.org/> Ports system for Mac OS
#19521: python2.6-2.6.2 wrong port upgraded (gperf) --------------------------------+------------------------------------------- Reporter: paulymer@… | Owner: blb@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.7.1 Keywords: upgrade | Port: python26 --------------------------------+------------------------------------------- Comment(by blb@…): Seems like what happened was the initial install was successful with 2.6.2_2 but since you already had a version installed, failed to activate. Any further run of upgrade would then not worry since the latest is installed (though inactive); not sure why it went through all the dependencies again, unless you used -f. As Rainer says you can activate the current version, and if that succeeds remove the older with {{{ sudo port uninstall python @2.6.1_0 }}} -- Ticket URL: <http://trac.macports.org/ticket/19521#comment:4> MacPorts <http://www.macports.org/> Ports system for Mac OS
#19521: python2.6-2.6.2 wrong port upgraded (gperf) --------------------------------+------------------------------------------- Reporter: paulymer@… | Owner: blb@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.7.1 Keywords: upgrade | Port: python26 --------------------------------+------------------------------------------- Comment(by jmr@…): Replying to [comment:4 blb@…]:
not sure why it went through all the dependencies again, unless you used -f.
That's expected behaviour. Dependencies are upgraded before the version of the installed port is checked against the current version. -- Ticket URL: <http://trac.macports.org/ticket/19521#comment:5> MacPorts <http://www.macports.org/> Ports system for Mac OS
#19521: python2.6-2.6.2 wrong port upgraded (gperf) --------------------------------+------------------------------------------- Reporter: paulymer@… | Owner: blb@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.7.1 Keywords: upgrade | Port: python26 --------------------------------+------------------------------------------- Comment(by blb@…): Replying to [comment:5 jmr@…]:
That's expected behaviour. Dependencies are upgraded before the version of the installed port is checked against the current version.
Oops, that's right, I use -n so often I forgot that by default 'upgrade port' will upgrade all dependencies of that port first... -- Ticket URL: <http://trac.macports.org/ticket/19521#comment:6> MacPorts <http://www.macports.org/> Ports system for Mac OS
#19521: python2.6-2.6.2 wrong port upgraded (gperf) --------------------------------+------------------------------------------- Reporter: paulymer@… | Owner: blb@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.7.1 Keywords: upgrade | Port: python26 --------------------------------+------------------------------------------- Comment(by paulymer@…): Replying to [comment:4 blb@…]:
Seems like what happened was the initial install was successful with 2.6.2_2 but since you already had a version installed, failed to activate. Any further run of upgrade would then not worry since the latest is installed (though inactive); not sure why it went through all the dependencies again, unless you used -f.
I ran the suggested commands to deactivate and activate, which were all successful. So everything is good now. The thing that threw me off is that the dependencies were not updated on the initial "install" command when @2.6.2_2 was installed but not activated. -- Ticket URL: <http://trac.macports.org/ticket/19521#comment:7> MacPorts <http://www.macports.org/> Ports system for Mac OS
#19521: python2.6-2.6.2 wrong port upgraded (gperf) ---------------------------------+------------------------------------------ Reporter: paulymer@… | Owner: blb@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 1.7.1 Resolution: invalid | Keywords: upgrade Port: python26 | ---------------------------------+------------------------------------------ Changes (by blb@…): * status: new => closed * resolution: => invalid Comment: Yeah, if you use '''install''' and port sees a dependency already installed, it doesn't upgrade; if you use '''upgrade''' it will upgrade already-installed ports. Should we have a new ticket to do upgrades of dependencies on installs of new ports? -- Ticket URL: <http://trac.macports.org/ticket/19521#comment:8> MacPorts <http://www.macports.org/> Ports system for Mac OS
participants (1)
-
MacPorts