Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 28 Apr 2015 19:19:23 +0200
From:      Willem Jan Withagen <wjw@digiware.nl>
To:        Matthew Seaman <matthew@FreeBSD.org>, freebsd-pkg@freebsd.org
Subject:   Re: Upgrading postfixadmin leads to strange upgrades
Message-ID:  <553FC11B.1060503@digiware.nl>
In-Reply-To: <553F847C.5040004@FreeBSD.org>
References:  <553F7E50.9000504@digiware.nl> <553F847C.5040004@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On 28-4-2015 15:00, Matthew Seaman wrote:
> On 2015/04/28 13:34, Willem Jan Withagen wrote:
>> This output sort of scared me away from doing the upgrade this way....
>>
>> # pkg upgrade postfixadmin
>> New packages to be INSTALLED:
>>          php56-session: 5.6.8
>>          php56: 5.6.8
>>          perl5: 5.18.4_13
>>          oniguruma4: 4.7.1_1
>>          php56-xml: 5.6.8
>>          php56-mbstring: 5.6.8
>>          php56-xmlrpc: 5.6.8
>>          php56-mysql: 5.6.8
>>
>> Installed packages to be UPGRADED:
>>          postfixadmin: 2.3.5 -> 2.3.7_1
>>          libxml2: 2.8.0_1 -> 2.9.2_2
>>          pkgconf: 0.9.8 -> 0.9.10
>>          php5-session: 5.4.13 -> 5.4.40
>>          apache22: 2.2.25 -> 2.2.29_2
>>          php5-xml: 5.4.13 -> 5.4.40
>>          php5: 5.4.16 -> 5.4.40
>>          pcre: 8.32 -> 8.35_2
>>          php5-mbstring: 5.4.13 -> 5.4.40
>>          php5-xmlrpc: 5.4.13 -> 5.4.40
>>          php5-mysql: 5.4.13 -> 5.4.40
>>
>> Especialy where there is going to be a mix of php54 (which is what this
>> server is running) and newly installed php56 things....
>> And note that I end up with both 5.4 and 5.6 base installed?
>>
>> And for postfixadmin the requirements are "simple":
>> - You are using Postfix 2.0 or higher.
>> - You are using Apache 1.3.27 / Lighttpd 1.3.15 or higher.
>> - You are using PHP 5.1.2 or higher.
>> - You are using MySQL 3.23 or higher (5.x recommended) OR PostgreSQL 7.4
>> (or higher)
>>
>> So I could expect things to be upgraded in the 5.4 tree, but getting 5.6
>> as a bonus???
>
> You're using the standard packages from the FreeBSD repo?  In which case
> php-5.6 is now the default -- so those php56 packages come from the new
> dependencies of postfixadmin.  Despite how it looks, you won't end up
> with a mix of php-5.4 and php-5.6 as those two versions conflict with
> each other.  Instead, if you pressed 'Y' at that point, you'ld download
> a number of new packages and then get another round of the solver.  That
> would either remove all the php-5.4 modules or get stuck trying to work
> out how to handle some packages (other than what you wanted to
> upgrade/install) depending on php-5.4 and some on php-5.6.
>
> (You can try: 'pkg fetch -u' and then 'pkg upgrade' to get a clearer
> idea of what pkg(8) would ultimately do.)
>
> In general, just trying to upgrade one package when it is part of a
> complex dependency tree, and especially when dependencies have switched
> from one set of packages to another, is likely to run into difficulties.
>   At the moment, pkg(8) gives best results if you just upgrade everything
> to the latest available all at once.  Improved handling of piecemeal
> updates is in the plans for pkg-1.6, but as we've only just released
> pkg-1.5 you're going to have to wait some time for that.

I think you answer is relatively fair. And quite expected.

HOWEVER: On the other hand: postfixadmin is as simple as it comes and so 
are its dependencies.
And it only needs php > 5.1.2.
So why nag me with all that other stuff.
And since it is on a customer server, the customer (and I) is/are not 
really in the mood for all kinds of quirks in other php code resulting 
form a 5.4 -> 5.6 upgrade.... Not before some serious testing anyways.

My main peeve(s) with the requirement relations in the current 
pkg/packages is that:
* sometimes requirements are overstated.

The other thing I git bitten by sometimes is that an upgrade of a 
library delete the old version. So upgrading gets you from libxxxx.so.5 
to libxxx.so.6. But the ...so.5 is deleted.
Whereas I would love it to go into something like:
	/usr/compat/oldlibs/.....
So that even I can continue to run some of the programs to that depended 
on that lib.
(And yes, it's a dangerous one, since it might involve tricky ABI 
changes that would look like it works. But really gives garbage in the 
connercases.)

So I resort a lot back to portmaster/portinstall/portupgrade stuff to do 
what pkg does (not yet) do for me....

Thanx,
--WjW




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?553FC11B.1060503>