Bug 1657461 - phpMyAdmin Doesn't Work with PHP 7+
Summary: phpMyAdmin Doesn't Work with PHP 7+
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Fedora EPEL
Classification: Fedora
Component: phpMyAdmin
Version: el6
Hardware: x86_64
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Robert Scheck
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2018-12-08 15:57 UTC by warvia
Modified: 2018-12-08 17:42 UTC (History)
3 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2018-12-08 17:42:09 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description warvia 2018-12-08 15:57:59 UTC
Description of problem:
The current phpMyAdmin package doesn't work with PHP 7.0 or newer.

Version-Release number of selected component (if applicable):
4.0.10.20

How reproducible:
Always

Steps to Reproduce:
1. Install the dependencies for phpMyAdmin
php71u-tidy
php71u-mysqlnd
php71u-xml
php71u-gd
php71u-mcrypt
php71u-json
php71u-mbstring
php71u-process
php71u-bcmath
php71u-common
mod_php71u
php71u-pdo
fontpackages-filesystem
dejavu-fonts-common
dejavu-sans-fonts
php-tcpdf
php-tcpdf-dejavu-sans-fonts
php-fedora-autoloader
2. Install phpMyAdmin
3. Install fails even though app deps are met.

Actual results:
yum install phpMyAdmin -y
Loaded plugins: fastestmirror
Setting up Install Process
Loading mirror speeds from cached hostfile
 * ius: muug.ca
Resolving Dependencies
--> Running transaction check
---> Package phpMyAdmin.noarch 0:4.0.10.20-1.el6 will be installed
--> Processing Dependency: php(language) < 7 for package: phpMyAdmin-4.0.10.20-1.el6.noarch
--> Running transaction check
---> Package php56u-common.x86_64 0:5.6.38-1.ius.centos6 will be installed
--> Processing Dependency: php56u-pecl-jsonc(x86-64) for package: php56u-common-5.6.38-1.ius.centos6.x86_64
--> Running transaction check
---> Package php56u-pecl-jsonc.x86_64 0:1.3.10-2.ius.centos6 will be installed
--> Processing Dependency: php56u-pear for package: php56u-pecl-jsonc-1.3.10-2.ius.centos6.x86_64
--> Processing Dependency: php56u-pear for package: php56u-pecl-jsonc-1.3.10-2.ius.centos6.x86_64
--> Running transaction check
---> Package php56u-pear.noarch 1:1.10.5-1.ius.centos6 will be installed
--> Processing Dependency: php56u-cli for package: 1:php56u-pear-1.10.5-1.ius.centos6.noarch
--> Processing Dependency: php56u-posix for package: 1:php56u-pear-1.10.5-1.ius.centos6.noarch
--> Processing Dependency: php56u-xml for package: 1:php56u-pear-1.10.5-1.ius.centos6.noarch
--> Running transaction check
---> Package php56u-cli.x86_64 0:5.6.38-1.ius.centos6 will be installed
---> Package php56u-process.x86_64 0:5.6.38-1.ius.centos6 will be installed
---> Package php56u-xml.x86_64 0:5.6.38-1.ius.centos6 will be installed
--> Processing Conflict: php71u-common-7.1.24-1.ius.centos6.x86_64 conflicts php-common < 7.1.24-1.ius.centos6
--> Processing Conflict: php71u-common-7.1.24-1.ius.centos6.x86_64 conflicts php56u-common
--> Processing Conflict: php71u-json-7.1.24-1.ius.centos6.x86_64 conflicts php-json < 7.1.24-1.ius.centos6
--> Processing Conflict: php71u-process-7.1.24-1.ius.centos6.x86_64 conflicts php-process < 7.1.24-1.ius.centos6
--> Processing Conflict: php71u-xml-7.1.24-1.ius.centos6.x86_64 conflicts php-xml < 7.1.24-1.ius.centos6
--> Finished Dependency Resolution
Error: php71u-process conflicts with php56u-process-5.6.38-1.ius.centos6.x86_64
Error: php71u-common conflicts with php56u-common-5.6.38-1.ius.centos6.x86_64
Error: php71u-json conflicts with php56u-pecl-jsonc-1.3.10-2.ius.centos6.x86_64
Error: php71u-xml conflicts with php56u-xml-5.6.38-1.ius.centos6.x86_64
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest


Expected results:
phpMyAdmin should install

Additional info:
When examining the deplist of phpMyAdmin I see the dependency dependency: php(language) listed twice.
yum deplist phpMyAdmin|grep 'dependency: php(language)'
  dependency: php(language) >= 5.2.17
  dependency: php(language) < 7

One would indicate any version of PHP equal to or newer than 5.2.17 will work.  The other indicates only versions of PHP older than 7 will work.  I did an extensive check for all dependencies for phpMyAdmin including deps for adjacent packages.  Note in the install failure the line:
Processing Dependency: php(language) < 7 for package: phpMyAdmin-4.0.10.20-1.el6.noarch

Comment 1 Remi Collet 2018-12-08 17:20:01 UTC
Package in EPEL are designed to work with PHP in Base repository (so PHP 5.4)

We cannot support random 3rd party repository.

(or choose another provider which provide a consistent stack, including PHP and webapp).


More recent version doesn't work with PHP 5.4.

Comment 2 warvia 2018-12-08 17:36:24 UTC
Thank you for responding to this post.  I'm not asking for random 3rd party support.  I'm discussing packages installed from the widely used IUS repository.  All the dependencies for phpMyAdmin are available and work for php70u and php71u.  The limitation on this is artificial as it is looking for the line:
dependency: php(language) < 7
Removal of that line from the depedency list would resolve the problem.

The phpMyAdmin package works with php56u which is also provided by IUS but is less than 7 per the line mentioned.

Comment 3 Robert Scheck 2018-12-08 17:36:49 UTC
The ancient phpMyAdmin version in EPEL 6 doesn't support modern PHP versions,
however the phpMyAdmin version in EPEL 7 works with PHP >= 5.4 && PHP <= 7.2.

Comment 4 Robert Scheck 2018-12-08 17:42:09 UTC
Given that phpMyAdmin 4.0.10.x only supports and works properly with
PHP 5.x, the current PHP package requirement is correct. RHEL/CentOS
6 is too old from my point of view to introduce now any hacks for 3rd
party repositories like IUS. Please use a repository that provides a
consistent web stack, such as Remi already said.


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