Support for Drupal 7 is ending on 5 January 2025—it’s time to migrate to Drupal 10! Learn about the many benefits of Drupal 10 and find migration tools in our resource center.
Problem/Motivation
in #3421175: Update INSTALL.txt and hook_requirements() etc. with Drupal 11 platform requirements catch pointed out that MYSQLND_MINIMUM_VERSION or LIBMYSQLCLIENT_MINIMUM_VERSION haven't been changes since 2015. He also questioned if they are still needed.
Steps to reproduce
Proposed resolution
TBA
Remaining tasks
Discuss
User interface changes
API changes
Data model changes
Release notes snippet
Issue fork drupal-3437786
Show commands
Start within a Git clone of the project using the version control instructions.
Or, if you do not have SSH keys set up on git.drupalcode.org:
Comments
Comment #2
catchThis was originally added in #2529188: Provide better error handling for MySQL client and server utf8mb4 incompatibility, utf8mb4 has been around for a very long time now, so I wonder whether it's possible to have a client installed that could run into this error any more. Maybe we can just drop the constants and supporting code.
Comment #3
longwaveI am pretty sure we could drop this now, surely nobody is building PHP 8.3 linked to much older versions of mysqlnd or libmysqlclient.
Comment #5
quietone CreditAttribution: quietone at PreviousNext commentedIn anticipation of agreement to remove them I made an MR
Comment #6
Gábor HojtsyI also expect that we can drop it but I did not validate that.
There is also still this error message produced that is misleading (specifies a much lower version of MySQL):
It may still be possible to configure a DB without this? If that is the case, I would remove the very old version number reference, since Drupal 11 is by far not compatible with that anyway, so having MySQL 5.5.4 would not help users, despite what the message says.
Comment #7
longwavelibmysqlclient 5.5.3 shipped with MySQL 5.5.3 which was released in 2010 and was end of life in 2018, so in my opinion we can drop support for this now given that we do not support old PHP or database versions.
The mysqlnd check can also be dropped, the PHP version and mysqlnd versions are the same since PHP 7.4: https://github.com/php/php-src/commit/37043e07dfa57dbc567b7217ca7aa25a13...
Comment #8
longwaveAlso removed the utf8mb4 fallback code noted in #6 given we don't support those versions any more.
Comment #9
catchVery nice indeed.
Comment #10
alexpottLeft a comment on the MR.
Comment #11
quietone CreditAttribution: quietone at PreviousNext commentedComment #12
longwaveReview was addressed.
clientVersion()
isn't part of the interface, isn't used in core, but GitLab search finds many false positives so I can't be sure it's unused in contrib - it isn't doing any harm by keeping it anyway.Comment #13
alexpottCommitted and pushed 28d407eb05 to 11.x and 1a4aa4ea0e to 10.3.x. Thanks!
Backported to 10.3.x because the minimum version of PHP is 8.1 there and too new for this stuff too.