[Pkg-roundcube-maintainers] Bug#849994: Bug#849994: roundcube-core: install fails; Class 'Patchwork\Utf8\Bootup' not found

Claude Heiland-Allen claude at mathr.co.uk
Tue Jan 3 11:29:33 UTC 2017


Hi Guilhem,

On 03/01/17 09:13, Guilhem Moulin wrote:
> Hi Claude,
> 
> On Mon, 02 Jan 2017 at 23:32:01 +0100, Claude Heiland-Allen wrote:
>> Package: roundcube
>> Version: 1.1.5+dfsg.1-1~bpo8+2
>> Severity: grave
>> Justification: renders package unusable
> 
> I believe this was fixed upstream in 1.2.0
> 
>     https://github.com/roundcube/roundcubemail/commit/8447bae77c19a2350bd48b0f0c5b3a56a35c7af9#diff-6678ea2316550af087f1ae7115a3398eL71
> 
> If that's indeed the case, we should lower the severity as if this bug
> doesn't apply to 1.2.3+dfsg.1-1 it shouldn't prevent its inclusion in
> Stretch.
> 
>> Regular maintainance aptitude safe-upgrade pulled a new version of roundcube
>> from jessie-backports which failed to install.  Here is the log:
> 
> Upgrading from which version?  1.1.5+dfsg.1-1~bpo8+2 differs from
> 1.1.5+dfsg.1-1~bpo8+1 (the previous version found in jessie-backports)
> only by the fix to CVE-2016-9920.

yes, I still have that previous version in /var/cache/apt/archives, and
trying to install it with dpkg also fails with the same error.

>> PHP Fatal error:  Uncaught Error: Class 'Patchwork\Utf8\Bootup' not
>> found in /usr/share/roundcube/program/include/iniset.php:81
>> Stack trace:
>> #0 /usr/share/roundcube/program/include/clisetup.php(26): require_once()
>> #1 /usr/share/roundcube/bin/update.sh(31):
>> require_once('/usr/share/roun...')
>> #2 {main}
>>  thrown in /usr/share/roundcube/program/include/iniset.php on line 81
> 
> This line is only run when the function ‘utf8_encode’ doesn't exist, but
> oddly enough it seems to belong to core.  Does the following command
> outputs anything on your machine?
> 
>     php -r 'if (!function_exists("utf8_encode")) { die("no such function\n"); }'

yes.

$ php -r 'if (!function_exists("utf8_encode")) { die("no such
function\n"); }'
no such function
$

but:

$ php --version
PHP 7.0.14-2 (cli) ( NTS )
Copyright (c) 1997-2016 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies
    with Zend OPcache v7.0.14-2, Copyright (c) 1999-2016, by Zend
Technologies
$

and:

$ php5 -r 'if (!function_exists("utf8_encode")) { die("no such
function\n"); }'
$

(no output)

roundcube-core depends on php5, so it seems the php version 7 from
testing is to blame.  Indeed:

# update-alternatives --set php /usr/bin/php5
update-alternatives: using /usr/bin/php5 to provide /usr/bin/php (php)
in manual mode
# aptitude safe-upgrade
...
Setting up roundcube-core (1.1.5+dfsg.1-1~bpo8+2) ...
Determining localhost credentials from /etc/mysql/debian.cnf: succeeded.
dbconfig-common: writing config to /etc/dbconfig-common/roundcube.conf
dbconfig-common: flushing administrative password
This instance of Roundcube is up-to-date.
Have fun!
apache2_invoke roundcube.conf: already enabled
Setting up roundcube (1.1.5+dfsg.1-1~bpo8+2) ...
Setting up roundcube-plugins (1.1.5+dfsg.1-1~bpo8+2) ...
...
#

and everything is fine again.

Thanks,


Claude



More information about the Pkg-roundcube-maintainers mailing list