Bad upgrade behaviour with 1.4.0
Darren Pilgrim
list_freebsd at bluerosetech.com
Sun Dec 14 06:18:19 UTC 2014
# pkg upgrade php5-pgsql
Updating FreeBSD repository catalogue...
FreeBSD repository is up-to-date.
All repositories are up-to-date.
nginx-1.6.2_1,2 is locked and may not be modified
openssh-portable-6.7.p1,1 is locked and may not be modified
dovecot2-2.2.15_1 is locked and may not be modified
dovecot-pigeonhole-0.4.6 is locked and may not be modified
postfix-2.11.3_3,1 is locked and may not be modified
postgresql92-server-9.2.9_1 is locked and may not be modified
Checking integrity... done (1 conflicting)
Checking integrity... done (0 conflicting)
The following 7 packages will be affected (of 0 checked):
Installed packages to be REMOVED:
postgresql92-client-9.2.9_1
dovecot2-2.2.15_1
dovecot-pigeonhole-0.4.6
postfix-2.11.3_3,1
postgresql92-server-9.2.9_1
New packages to be INSTALLED:
postgresql93-client: 9.3.5
Installed packages to be REINSTALLED:
php5-pgsql-5.4.35 (direct dependency changed)
The operation will free 46 MB.
Proceed with this action? [y/N]: n
The reasoning here is fairly obvious: it's going to replace the
postgresql client with a new version, and you can't have more than one
version of the client installed, so it needs to delete
postgresql92-client. I guess the public repo bumped the postgresql
version used.
I keep dovecot2, postfix and several other ports locked because I build
them from ports due to needing non-default options. In prior versions
of pkg, this worked fine: pkg would complain about the lock, but an
upgrade would carry on ignoring the locked ports.
But pkg 1.4.0 doesn't. It ignores the lock and tries to delete those
package anyway, making the upgrade process fail outright.
If I unlock everything, I still get broken behaviour:
# pkg upgrade php5-pgsql
Updating FreeBSD repository catalogue...
FreeBSD repository is up-to-date.
All repositories are up-to-date.
Checking integrity... done (1 conflicting)
Checking integrity...pkg: cannot load files from dovecot2 to check integrity
done (0 conflicting)
The following 6 packages will be affected (of 0 checked):
Installed packages to be REMOVED:
postgresql92-client-9.2.9_1
postfix-2.11.3_3,1
postgresql92-server-9.2.9_1
New packages to be INSTALLED:
postgresql93-client: 9.3.5
Installed packages to be REINSTALLED:
php5-pgsql-5.4.35 (direct dependency changed)
dovecot2-2.2.15_1 (options changed)
The operation will free 29 MB.
3 MB to be downloaded.
Proceed with this action? [y/N]:
Here it wants to upgrade dovecot, but not postfix, which is really bizarre.
There's nothing in UPDATING about this.
How do I upgrade php5-pgsql and the postgresql client?
More information about the freebsd-pkg
mailing list