Cap mysqlclient to <= 2.1.x, and add documentation on compatibility.

Review Request #13194 — Created Aug. 8, 2023 and submitted — Latest diff uploaded

Information

Review Board
release-5.0.x

Reviewers

mysqlclient 2.2 dropped support for compiling using the mysql_config
script to locate headers/libraries, instead requiring a mysql/mariadb
pkg-config file. This flat-out breaks compatibility on many systems,
such as:

  • Alpine Linux (https://github.com/PyMySQL/mysqlclient/issues/620)
  • Amazon Linux (https://github.com/PyMySQL/mysqlclient/issues/634)
  • Debian Bookworm (https://github.com/PyMySQL/mysqlclient/issues/637)

This is a pretty serious issue for users, and doesn't appear to be
something the project is interested in addressing in their packaging.
Unfortunately, despite the size of this imposed breakage, there's no
compatibility lists anywhere for mysqlclient that we can reference and
provide for our own users.

Until the situation is sorted, or an alternative to mysqlclient is
found/created/forked, the best we can do is cap our default
ReviewBoard[mysql] extras package to 2.1.x, in order to preserve
existing installs, and then provide a big warning and extensive
instructions in our documentation.

Built the docs and verified the links.

Tested installing the extras package and verified I got 2.1.1.

Commits

Files