On Fri, Jun 28, 2019 at 5:00 PM Johannes Schlüter johannes@schlueters.de
wrote:
Le 28/06/2019 à 14:59, Nikita Popov a écrit :
Hi internals,
Building PHP 7.4 against libmysql rather than mysqlnd has been
broken for
quite a while and only recently noticed in
https://github.com/php/php-src/pull/4316. Clearly none of us are
using
libmysql and none of our CI jobs test it. Now that it compiles
again, there
are many build warnings, as well as about 10 failing PDO MySQL
tests and 20
failing MySQLi tests.
This is not good. I think that we either need an interested party
to
support these bindings, or else drop support for building against
libmysql.
I think andrey did some experiments reccently. I haven't looked into it
in a while. There are sometimes benefits where some operations can be
used via libmysql, but not mysqlnd, while mysqlnd has benefits.
Dropping libmysql-support would make the code easier, but also limit
abilities. (especially in case where mariadb and mysql protocol
diverge)
I think that having libmysql support is in principle valuable, but it needs
to be maintained. I'd prefer to have no libmysql support over having broken
support.
Is there anyone who is interested in fixing the current test failures? I
think it will be manageable to maintain this code once we have a clean CI
build set up, but someone with MySQL familiarity needs to bring the tests
in shape first.
Nikita
+1 to drop support for libmysqlclient.
BTW license is NOT compatible with PHP.
I am no lawyer, but imo that is incorrect.
a) libmysql is licensed under GPL+universal FOSS exception, which
allows combination with OSI-approved licenses, to which PHP License
belongs https://oss.oracle.com/licenses/universal-foss-exception/
b) there is a commercial version of libmysql, which doesn't have GPL's
virality
johannes