Page 1 of 1

downgrading from ART 5.4.x to stock 5.3.x

Posted: Sun May 31, 2015 11:32 am
by faris
On a test system, I accidentally upgraded from stock Centos php 5.3.x to the ART php 5.4.x.

When I tried to downgrade using a simple "yum downgrade php" I encountered the following errors:

Code: Select all

Resolving Dependencies
--> Running transaction check
---> Package php.x86_64 0:5.3.3-40.el6_6 will be a downgrade
--> Processing Dependency: php-common(x86-64) = 5.3.3-40.el6_6 for package: php-5.3.3-40.el6_6.x86_64
--> Processing Dependency: php-cli(x86-64) = 5.3.3-40.el6_6 for package: php-5.3.3-40.el6_6.x86_64
---> Package php.x86_64 will be erased
--> Finished Dependency Resolution
Error: Package: php-5.3.3-40.el6_6.x86_64 (updates)
           Requires: php-cli(x86-64) = 5.3.3-40.el6_6
           Installed: (@atomic)
               php-cli(x86-64) =
           Available: php-cli-5.3.3-38.el6.x86_64 (base)
               php-cli(x86-64) = 5.3.3-38.el6
           Available: php-cli-5.3.3-40.el6_6.x86_64 (updates)
               php-cli(x86-64) = 5.3.3-40.el6_6
Error: Package: php-5.3.3-40.el6_6.x86_64 (updates)
           Requires: php-common(x86-64) = 5.3.3-40.el6_6
           Installed: (@atomic)
               php-common(x86-64) =
           Available: php-common-5.3.3-38.el6.x86_64 (base)
               php-common(x86-64) = 5.3.3-38.el6
           Available: php-common-5.3.3-40.el6_6.x86_64 (updates)
               php-common(x86-64) = 5.3.3-40.el6_6
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest
I was only able to downgrade successfully by adding php-* to the magical invocation:

Code: Select all

yum downgrade php php-* 
Can anyone tell me why this happens? I'm assuming it is a weird dependency thing, where php-* depends on php but php does not depend on php-* or something like that?

(just noticed that the ART php-ioncube-loader remains)

None of this matters - it is a test system in a Container. But one day I might make the same mistake on a production system, so it would be nice to know what's going on.