Documentation Home
MySQL Connector/Python Release Notes
Related Documentation Download these Release Notes
PDF (US Ltr) - 171.4Kb
PDF (A4) - 171.9Kb


MySQL Connector/Python Release Notes  /  Changes in MySQL Connector/Python 9  /  Changes in MySQL Connector/Python 9.1.0 (2024-10-15, General Availability)

Changes in MySQL Connector/Python 9.1.0 (2024-10-15, General Availability)

Functionality Added or Changed

  • Dropped support for building DEB packages in favor of using pip to install the connector on Debian-based platforms. (WL #16444)

  • Added support for Python 3.13, and removed support for Python 3.8.

    Note that Python 3.13 enables ssl.VERIFY_X509_STRICT SSL validation by default, which means SSL certificates must now be RFC-5280 compliant when using Python 3.13 and higher. (WL #16306, WL #16307)

  • Updated and expanded the metadata used by the PyPI project pages. (WL #16411)

  • Added OpenID Connect support leveraging the new authentication_openid_connect_client client-side authentication plugin. OpenID Connect functionality is supported by MySQL Enterprise Edition Server 9.1.0 and later.

    The new openid_token_file connection option defines a path to a file containing the JWT formatted identity token. (WL #16341)

  • Added GSSAPI 1.8.3 support, the version now used by default. (WL #16442)

  • All client-side authentication plugins are now built while building the C-extension implementation, and bundled with both wheel and RPM packages. (WL #16452)

Bugs Fixed

  • Specifying a TLS v1.3 cipher with the tls_ciphersuites connection option halted with a "No cipher can be selected." error. Now specifying tls_ciphersuites with TLSv1.3 is allowed with the C-extension implementation, but not enforced with the pure Python implementation where it's determined by the MySQL Server during TLS negotiation. (Bug #37055435)

  • The cursor.execute() API command did not properly escape dictionary-based query parameterized strings when using the C-extension implementation of the connector. (Bug #37013057)

  • An unformatted error message was emitted for an unreachable host when using the pure Python implementation. (Bug #115418, Bug #36765200)

  • The connector sent two bytes for the collation in the response packet, instead of one. (Bug #114857, Bug #36577957)