php / php/php-src

Drop support for pdo_dblib on Windows

Open
#15,176 12 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Extension: pdo_dblib Feature OS: Windows Status: Needs Triage
Dominant language
C
Stars
40.4k
Forks
8.1k
Avg merge
2d 13h
Merged PRs (30d)
96

Description

Description

I just had a closer look at https://github.com/php/php-src/blob/master/ext/pdo_dblib/config.w32, and found it amazing that you can build the same DLL with two different names by just configuring --with-pdo-dblib and --with-pdo-mssql, if you manage to get the appropriate dependencies. That appears to be a problem, though, since FreeTDS claims to be a set of libraries for Unix and Linux, and to my knowlegde Sybase and Microsoft SQL Server are no longer compatible for decades. Furthermore, it occurs to me that pdo_sqlsrv is preferred to work with MS SQL Server for many years, and I can hardly imagine that anybody still uses pdo_mssql to connect to an SAP ASE (what it's apparently called since 2010).

For what it's worth, the official Windows builds neither contain php_pdo_dblib.dll nor php_pdo_mssql.dll for a long time.

So, can anyone shed some light on the state of pdo_dblib on Windows? Does anybody still use it? Can it even be built?

If not, I suggest to drop support for pdo_dblib on Windows altogether (i.e. remove config.w32 and the couple of Windows specific code in the C sources of the extension). And yes, this requires discussion on the internals and internals-win mailing lists, and possibly an RFC, but I wanted to gauge the feedback on this ticket first.

/cc @SakiTakamachi as codeowner of pdo_dblib

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with ext/pdo_dblib/config.w32 and the Windows-specific C code in the extension, then review the issue discussion and the official Windows build contents. Confirm whether pdo_dblib can still be built or used on Windows and whether the proposed removal has the required internals or RFC agreement; done means an approved, validated decision and corresponding support changes.

Written by the indexing model from the issue text.

Assessment

Tech stack
c, php
Domain
build-system, operating-systems
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.