Topic: PHP 5.3+ SQLite2 dependency...

I'm wondering why the php-pdo package in the Remi repository has a dependency on libsqlite.so.0 (and subsequently the sqlite2 package, also provided by the remi repo).

Is there a specific reason that the php-pdo package requires the sqlite2 package from the Remi repo, or could it be rebuilt to use the CentOS'/Fedora's base SQLite package?

Specifically, the reason I ask is because I use the Remi and EPEL repos on some CentOS servers and use yum-priorities to help keep everything nice and clean while using 3rd party repos. I'd like use yum-priorities' check_oboletes flag for additional protection, however I think the CentOS base sqlite package claims that it "obsoletes" the sqlite2 package in the remi repo, so yum-priorities blocks the installation of the sqlite2 package, thus resulting in a missing dependency situation something like this:

[root@madeline ~]# yum install php php-pdo
Loaded plugins: fastestmirror, priorities
Loading mirror speeds from cached hostfile
 * addons: mirror.ubiquityservers.com
 * base: mirror.cs.vt.edu
 * epel: mirrors.usu.edu
 * extras: mirrors.finalasp.com
 * remi: iut-info.univ-reims.fr
 * updates: mirror.fdcservers.net
Excluding Packages from CentOS-5 - Addons
Finished
Excluding Packages from CentOS-5 - Base
Finished
Excluding Packages from CentOS-5 - Extras
Finished
Excluding Packages from CentOS-5 - Updates
Finished
162 packages excluded due to repository priority protections
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package php.x86_64 0:5.3.3-1.el5.remi set to be updated
--> Processing Dependency: php-common = 5.3.3-1.el5.remi for package: php
--> Processing Dependency: php-cli = 5.3.3-1.el5.remi for package: php
--> Processing Dependency: libgmp.so.3()(64bit) for package: php
---> Package php-pdo.x86_64 0:5.3.3-1.el5.remi set to be updated
--> Processing Dependency: libsqlite.so.0()(64bit) for package: php-pdo
--> Running transaction check
---> Package gmp.x86_64 0:4.1.4-10.el5 set to be updated
---> Package php-cli.x86_64 0:5.3.3-1.el5.remi set to be updated
--> Processing Dependency: libedit.so.0()(64bit) for package: php-cli
---> Package php-common.x86_64 0:5.3.3-1.el5.remi set to be updated
---> Package php-pdo.x86_64 0:5.3.3-1.el5.remi set to be updated
--> Processing Dependency: libsqlite.so.0()(64bit) for package: php-pdo
--> Running transaction check
---> Package libedit.x86_64 0:2.11-2.20080712cvs.el5 set to be updated
---> Package php-pdo.x86_64 0:5.3.3-1.el5.remi set to be updated
--> Processing Dependency: libsqlite.so.0()(64bit) for package: php-pdo
--> Finished Dependency Resolution
php-pdo-5.3.3-1.el5.remi.x86_64 from remi has depsolving problems
  --> Missing Dependency: libsqlite.so.0()(64bit) is needed by package php-pdo-5.3.3-1.el5.remi.x86_64 (remi)
Error: Missing Dependency: libsqlite.so.0()(64bit) is needed by package php-pdo-5.3.3-1.el5.remi.x86_64 (remi)
 You could try using --skip-broken to work around the problem
 You could try running: package-cleanup --problems
                        package-cleanup --dupes
                        rpm -Va --nofiles --nodigest

Of course, I can simply disable the check_obsoletes flag, or even the priorities plug-in and I'm fairly certain everything will install just fine, but I was just wondering if there's a reason it's set up like this or if maybe it's something that's simply gone overlooked that could be "fixed"?

Thanks!

Re: PHP 5.3+ SQLite2 dependency...

sqlite (v3) is needed for sqlite3 and pdo_sqlite functions.
sqlite2 is needed for sqlite functions.

Yes the latest is deprecated, and removed from fedora/RH package but I still provide it for compatibility with older apps (some user still need it).

I will probably think to create a specificic subpackage for this one.

+

Laptop:  Fedora 38 + rpmfusion + remi (SCL only)
x86_64 builder: Fedora 39 + rpmfusion + remi-test
aarch64 builder: RHEL 9 with EPEL
Hosting Server: CentOS 8 Stream with EPEL, rpmfusion, remi