downgrading from ART 5.4.x to stock 5.3.x

Support/Development for PHP
faris
Long Time Forum Regular
Long Time Forum Regular
Posts: 2321
Joined: Thu Dec 09, 2004 11:19 am

downgrading from ART 5.4.x to stock 5.3.x

Unread post 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 0:5.4.40-46.el6.art 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: php-cli-5.4.40-46.el6.art.x86_64 (@atomic)
               php-cli(x86-64) = 5.4.40-46.el6.art
           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: php-common-5.4.40-46.el6.art.x86_64 (@atomic)
               php-common(x86-64) = 5.4.40-46.el6.art
           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.
--------------------------------
<advert>
If you want to rent a UK-based VPS that comes with friendly advice and support from a fellow ART fan, please get in touch.
</advert>
Post Reply