Bug 24591 - php dependencies do not allow a simple backport install
Summary: php dependencies do not allow a simple backport install
Status: RESOLVED FIXED
Alias: None
Product: Mageia
Classification: Unclassified
Component: Backports (show other bugs)
Version: 6
Hardware: All Linux
Priority: Normal minor
Target Milestone: ---
Assignee: QA Team
QA Contact:
URL:
Whiteboard: MGA6-32-OK MGA6-64-OK
Keywords: validated_backport
Depends on:
Blocks:
 
Reported: 2019-03-29 13:59 CET by José Jorge
Modified: 2019-05-30 12:31 CEST (History)
5 users (show)

See Also:
Source RPM: php
CVE:
Status comment:


Attachments

Description José Jorge 2019-03-29 13:59:58 CET
I had to use the backported version of php in a MGA6 server. It was not easy to install it, because the dependencies allowed to keep some php 5 packages not upgraded :

urpmi --searchmedia backports apache-mod_php

left behind the following ones

php-gd-5.6.40-1.mga6
php-bz2-5.6.40-1.mga6
php-zip-5.6.40-1.mga6
php-ini-5.6.40-1.mga6
php-phar-5.6.40-1.mga6
php-mbstring-5.6.40-1.mga6
php-imap-5.6.40-1.mga6
php-mcrypt-5.6.40-1.mga6
php-mysqlnd-5.6.40-1.mga6 
php-fileinfo-5.6.40-1.mga6
php-sqlite3-5.6.40-1.mga6

I have found this list trying to remove lib64php5_common5-3:5.6.40-1.mga6, but I have no clue of how to improve the requires.
Maybe we should
Comment 1 Marc Krämer 2019-03-29 14:31:33 CET
yepp, that is true. I stumbled over this too. the reason for this is we changed the dependency structure for php 7 and did not touch php 5.6.x

In order to make this correct, we would have to rebuild and release all php packages for mga6. For mga7 I've corrected this issue.
Comment 2 José Jorge 2019-03-29 14:34:07 CET
(In reply to Marc Krämer from comment #1)
> In order to make this correct, we would have to rebuild and release all php
> packages for mga6. For mga7 I've corrected this issue.

Ah ok thanks. Maybe it is worth using the fixed deps in a last security update of php5? This way, people preparing mga7 migration upgrading through the backports would benefit from it.
Comment 3 Marc Krämer 2019-03-29 21:32:41 CET
Hmm, I can push an updated backport for php 7.2.16, with a conflict for old php5-lib.
All php-packages should be set to require the current version, so a conflict here should be enough to tell you to update these packages as well.

Pushed an update to 6/backports_testing.
Comment 4 José Jorge 2019-03-30 12:10:07 CET
(In reply to Marc Krämer from comment #3)
> Hmm, I can push an updated backport for php 7.2.16, with a conflict for old
> php5-lib.

It does not work for php-pdo as example which is installed in this system :

urpmi --searchmedia testing php
Pour satisfaire les dépendances, les paquetages suivants vont être installés :
  Paquetage                      Version      Révision      Arch    
(média « Core Backports Testing »)
  apache-mod_php                 7.2.16       1.mga6        x86_64  
  lib64php_common7               7.2.16       1.mga6        x86_64  
  php-cli                        7.2.16       1.mga6        x86_64  
  php-ctype                      7.2.16       1.mga6        x86_64  
  php-dom                        7.2.16       1.mga6        x86_64  
  php-filter                     7.2.16       1.mga6        x86_64  
  php-ftp                        7.2.16       1.mga6        x86_64  
  php-gettext                    7.2.16       1.mga6        x86_64  
  php-hash                       7.2.16       1.mga6        x86_64  
  php-json                       7.2.16       1.mga6        x86_64  
  php-openssl                    7.2.16       1.mga6        x86_64  
  php-posix                      7.2.16       1.mga6        x86_64  
  php-session                    7.2.16       1.mga6        x86_64  
  php-sysvsem                    7.2.16       1.mga6        x86_64  
  php-sysvshm                    7.2.16       1.mga6        x86_64  
  php-tokenizer                  7.2.16       1.mga6        x86_64  
  php-xml                        7.2.16       1.mga6        x86_64  
  php-xmlreader                  7.2.16       1.mga6        x86_64  
  php-xmlwriter                  7.2.16       1.mga6        x86_64  
  php-zlib                       7.2.16       1.mga6        x86_64  
un espace additionnel de 9Mo sera utilisé.
3.2Mo de paquets seront récupérés.
Procéder à l'installation des 20 paquetages ? (O/n) n
---------------------------------------------------------------------
rpm -qa | grep php
php-sysvsem-5.6.40-1.mga6
php-pdo_sqlite-5.6.40-1.mga6
lib64php5_common5-5.6.40-1.mga6
php-mysqli-5.6.40-1.mga6
php-ctype-5.6.40-1.mga6
php-cli-5.6.40-1.mga6
php-pdo-5.6.40-1.mga6
php-sysvshm-5.6.40-1.mga6
apache-mod_php-5.6.40-1.mga6
php-channel-phpunit-1.3-15.mga6
php-openssl-5.6.40-1.mga6
php-bz2-5.6.40-1.mga6
php-timezonedb-2017.2-1.mga6
php-pear-1.10.1-3.1.mga6
php-suhosin-0.9.38-1.mga6
php-mysqlnd-5.6.40-1.mga6
php-mysql-5.6.40-1.mga6
php-filter-5.6.40-1.mga6
php-mbstring-5.6.40-1.mga6
php-ini-5.6.40-1.mga6
php-fileinfo-5.6.40-1.mga6
php-sockets-5.6.40-1.mga6
php-opcache-5.6.40-1.mga6
php-pear-File_Iterator-1.3.4-5.mga6
php-session-5.6.40-1.mga6
php-gettext-5.6.40-1.mga6
php-xmlreader-5.6.40-1.mga6
php-xml-5.6.40-1.mga6
php-posix-5.6.40-1.mga6
php-curl-5.6.40-1.mga6
php-gd-5.6.40-1.mga6
php-dom-5.6.40-1.mga6
php-json-5.6.40-1.mga6
php-hash-5.6.40-1.mga6
php-exif-5.6.40-1.mga6
php-ldap-5.6.40-1.mga6
php-zip-5.6.40-1.mga6
php-zlib-5.6.40-1.mga6
php-mcrypt-5.6.40-1.mga6
php-ftp-5.6.40-1.mga6
php-xmlwriter-5.6.40-1.mga6
php-pcntl-5.6.40-1.mga6
php-pdo_mysql-5.6.40-1.mga6
php-tokenizer-5.6.40-1.mga6
php-iconv-5.6.40-1.mga6
Comment 5 Marc Krämer 2019-03-31 13:53:02 CEST
php-pdo (5.6.x) requires libphp5.6
php-pdo (7.2.x) requires libphp7.2
libphp.7.2.16 conflicts libphp5.6

So, I think if you continue, it will tell you in order to upgrade php php-pdo has to be uninstalled or upgraded.
And this would be expected, since php-pdo is an optional package not required by php.
Comment 6 José Jorge 2019-03-31 20:43:08 CEST
(In reply to Marc Krämer from comment #5)
> So, I think if you continue, it will tell you in order to upgrade php
> php-pdo has to be uninstalled or upgraded.

Nope (I've tried) because libname has changed, so both can coexist :

lib64php5_common5-5.6.40-1.mga6
lib64php_common7-7.2.16-1.mga6

note it is php5_ instead of php_ .
Comment 7 Marc Krämer 2019-03-31 21:51:28 CEST
merde.
I think I have to get a small mga6 system without having all updates from backports. For now, I changed the conflicts section and pushed it again.
Comment 8 Marc Krämer 2019-04-05 13:21:43 CEST
pushed a new version with the changes to updates_testing.
Comment 9 José Jorge 2019-04-05 18:09:58 CEST
(In reply to Marc Krämer from comment #8)
> pushed a new version with the changes to updates_testing.

It still does not conflict well, note the 7 at the end.

Conflicts = lib64php5_common7

I have tried to change that to 5, and submitted a 7.2.17-2 version.
Comment 10 José Jorge 2019-04-10 11:22:06 CEST
(In reply to José Jorge from comment #9)
> I have tried to change that to 5, and submitted a 7.2.17-2 version.

Now everything is upgraded, except php-ini and php-zip which had no requires in 5.6.40 package.

So php can be upgraded to backports with "urpmi php php-ini-php-zip".

I have commited this requires in 5.6.40, if one day we push a security update...

Resolution: (none) => FIXED
Status: NEW => RESOLVED

Comment 11 Marc Krämer 2019-04-10 11:27:36 CEST
ok, thanks. Did you hand this ticket to qa, so we have the updated packages in backports?

Status: RESOLVED => REOPENED
Resolution: FIXED => (none)

Marc Krämer 2019-04-10 13:52:09 CEST

Blocks: (none) => 24648

Comment 12 Marc Krämer 2019-04-10 14:07:07 CEST
Updated php packages fix some crashes and bugs:
this is a normal maintance release of the latest php-package, which fixes some bugs.

Updated packages in backports/updates_testing:
========================

apache-mod_php-7.2.17-2.mga6
lib64php_common7-7.2.17-2.mga6
php-bcmath-7.2.17-2.mga6
php-bz2-7.2.17-2.mga6
php-calendar-7.2.17-2.mga6
php-cgi-7.2.17-2.mga62019-04-05
php-cli-7.2.17-2.mga6
php-ctype-7.2.17-2.mga6
php-curl-7.2.17-2.mga62019-04-05
php-dba-7.2.17-2.mga62019-04-05
php-devel-7.2.17-2.mga62019-04-05
php-doc-7.2.17-1.mga6.noarch.rpm
php-doc-7.2.17-2.mga6.noarch.rpm
php-dom-7.2.17-2.mga62019-04-05
php-enchant-7.2.17-2.mga62019-04-05
php-exif-7.2.17-2.mga62019-04-05
php-fileinfo-7.2.17-2.mga62019-04-05
php-filter-7.2.17-2.mga62019-04-05
php-fpm-7.2.17-2.mga62019-04-05
php-ftp-7.2.17-2.mga62019-04-05
php-gd-7.2.17-2.mga62019-04-05
php-gettext-7.2.17-2.mga62019-04-05
php-gmp-7.2.17-2.mga62019-04-05
php-hash-7.2.17-2.mga62019-04-05
php-iconv-7.2.17-2.mga62019-04-05
php-imap-7.2.17-2.mga62019-04-05
php-ini-7.2.17-2.mga62019-04-05
php-interbase-7.2.17-2.mga62019-04-05
php-intl-7.2.17-2.mga62019-04-05
php-json-7.2.17-2.mga62019-04-05
php-ldap-7.2.17-2.mga62019-04-05
php-mbstring-7.2.17-2.mga62019-04-05
php-mysqli-7.2.17-2.mga62019-04-05
php-mysqlnd-7.2.17-2.mga62019-04-05
php-odbc-7.2.17-2.mga62019-04-05
php-opcache-7.2.17-2.mga62019-04-05
php-openssl-7.2.17-2.mga62019-04-05
php-pcntl-7.2.17-2.mga62019-04-05
php-pdo-7.2.17-2.mga62019-04-05
php-pdo_dblib-7.2.17-2.mga62019-04-05
php-pdo_firebird-7.2.17-2.mga62019-04-05
php-pdo_mysql-7.2.17-2.mga62019-04-05
php-pdo_odbc-7.2.17-2.mga62019-04-05
php-pdo_pgsql-7.2.17-2.mga62019-04-05
php-pdo_sqlite-7.2.17-2.mga62019-04-05
php-pgsql-7.2.17-2.mga62019-04-05
php-phar-7.2.17-2.mga62019-04-05
php-posix-7.2.17-2.mga6
php-readline-7.2.17-2.mga62019-04-05
php-recode-7.2.17-2.mga62019-04-05
php-session-7.2.17-2.mga62019-04-05
php-shmop-7.2.17-2.mga62019-04-05
php-snmp-7.2.17-2.mga62019-04-05
php-soap-7.2.17-2.mga62019-04-05
php-sockets-7.2.17-2.mga62019-04-05
php-sqlite3-7.2.17-2.mga62019-04-05
php-sysvmsg-7.2.17-2.mga62019-04-05
php-sysvsem-7.2.17-2.mga62019-04-05
php-sysvshm-7.2.17-2.mga62019-04-05
php-tidy-7.2.17-2.mga62019-04-05
php-tokenizer-7.2.17-2.mga62019-04-05
php-wddx-7.2.17-2.mga62019-04-05
php-xml-7.2.17-2.mga62019-04-05
php-xmlreader-7.2.17-2.mga62019-04-05
php-xmlrpc-7.2.17-2.mga62019-04-05
php-xmlwriter-7.2.17-2.mga62019-04-05
php-xsl-7.2.17-2.mga62019-04-05
php-zip-7.2.17-2.mga62019-04-05
php-zlib-7.2.17-2.mga62019-04-05
phpdbg-7.2.17-2.mga6


SRPM:
php-7.2.17-2.mga6.src.rpm

Assignee: mageia => qa-bugs
Blocks: 24648 => (none)
Keywords: (none) => Backport

Comment 13 José Jorge 2019-04-10 15:11:20 CEST
Tested along with nextcloud backport, all ok.

Whiteboard: (none) => MGA6-64-OK

Comment 14 Frédéric "LpSolit" Buclin 2019-04-26 15:38:17 CEST
I tested PHP 7.2.17 on Mageia 6, together with Drupal 8, Limesurvey and some other apps. No problem found.
Comment 15 Thomas Andrews 2019-04-28 04:34:15 CEST
Validating.

CC: (none) => andrewsfarm
Keywords: (none) => validated_backport

Comment 16 Marc Krämer 2019-05-02 21:04:28 CEST
validation took too long.... we have a new release in town:

Updated packages in core/backports_testing:
========================
php-ini-7.2.18-1.mga6
apache-mod_php-7.2.18-1.mga6
php-cli-7.2.18-1.mga6
php-cgi-7.2.18-1.mga6
lib64php_common7-7.2.18-1.mga6
php-devel-7.2.18-1.mga6
php-openssl-7.2.18-1.mga6
php-zlib-7.2.18-1.mga6
php-doc-7.2.18-1.mga6
php-bcmath-7.2.18-1.mga6
php-bz2-7.2.18-1.mga6
php-calendar-7.2.18-1.mga6
php-ctype-7.2.18-1.mga6
php-curl-7.2.18-1.mga6
php-dba-7.2.18-1.mga6
php-dom-7.2.18-1.mga6
php-enchant-7.2.18-1.mga6
php-exif-7.2.18-1.mga6
php-fileinfo-7.2.18-1.mga6
php-filter-7.2.18-1.mga6
php-ftp-7.2.18-1.mga6
php-gd-7.2.18-1.mga6
php-gettext-7.2.18-1.mga6
php-gmp-7.2.18-1.mga6
php-hash-7.2.18-1.mga6
php-iconv-7.2.18-1.mga6
php-imap-7.2.18-1.mga6
php-interbase-7.2.18-1.mga6
php-intl-7.2.18-1.mga6
php-json-7.2.18-1.mga6
php-ldap-7.2.18-1.mga6
php-mbstring-7.2.18-1.mga6
php-mysqli-7.2.18-1.mga6
php-mysqlnd-7.2.18-1.mga6
php-odbc-7.2.18-1.mga6
php-opcache-7.2.18-1.mga6
php-pcntl-7.2.18-1.mga6
php-pdo-7.2.18-1.mga6
php-pdo_dblib-7.2.18-1.mga6
php-pdo_firebird-7.2.18-1.mga6
php-pdo_mysql-7.2.18-1.mga6
php-pdo_odbc-7.2.18-1.mga6
php-pdo_pgsql-7.2.18-1.mga6
php-pdo_sqlite-7.2.18-1.mga6
php-pgsql-7.2.18-1.mga6
php-phar-7.2.18-1.mga6
php-posix-7.2.18-1.mga6
php-readline-7.2.18-1.mga6
php-recode-7.2.18-1.mga6
php-session-7.2.18-1.mga6
php-shmop-7.2.18-1.mga6
php-snmp-7.2.18-1.mga6
php-soap-7.2.18-1.mga6
php-sockets-7.2.18-1.mga6
php-sqlite3-7.2.18-1.mga6
php-sysvmsg-7.2.18-1.mga6
php-sysvsem-7.2.18-1.mga6
php-sysvshm-7.2.18-1.mga6
php-tidy-7.2.18-1.mga6
php-tokenizer-7.2.18-1.mga6
php-xml-7.2.18-1.mga6
php-xmlreader-7.2.18-1.mga6
php-xmlrpc-7.2.18-1.mga6
php-xmlwriter-7.2.18-1.mga6
php-xsl-7.2.18-1.mga6
php-wddx-7.2.18-1.mga6
php-zip-7.2.18-1.mga6
php-fpm-7.2.18-1.mga6
phpdbg-7.2.18-1.mga6
php-debuginfo-7.2.18-1.mga6


SRPM:
php-7.2.18-1.mga6.src.rpm

CC: (none) => mageia
Keywords: Backport, validated_backport => (none)
Whiteboard: MGA6-64-OK => (none)

Comment 17 Len Lawrence 2019-05-03 01:39:52 CEST
mga6, x86_64

All packages updated cleanly.  php-debuginfo missing.  Had to add and enable the backports-testing-debug repository to get hold of it.

CC: (none) => tarazed25

Comment 18 José Jorge 2019-05-12 18:17:17 CEST
Last upgrade of a MGA6 system to this backport was almost perfect : only apache-mod_php was left in version 7.2.17...

CC: (none) => lists.jjorge

Comment 19 Marc Krämer 2019-05-23 10:49:48 CEST
can we get this backport validated?!
We still have 7.2.14 which has some security issues, so we should get this one out!
Comment 20 José Jorge 2019-05-23 18:04:27 CEST
Marking as tested on both arches as I could test an i586 system.

Status: REOPENED => ASSIGNED
Whiteboard: (none) => MGA6-32-OK MGA6-64-OK

Comment 21 Thomas Andrews 2019-05-24 14:02:53 CEST
Validating, once again...

Keywords: (none) => validated_backport

Comment 22 Thomas Backlund 2019-05-30 12:31:08 CEST
Packages moved.

CC: (none) => tmb
Resolution: (none) => FIXED
Status: ASSIGNED => RESOLVED


Note You need to log in before you can comment on or make changes to this bug.