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

MySQL Connector/Python Release Notes  /  Changes in MySQL Connector/Python 8.x  /  Changes in MySQL Connector/Python 8.3.0 (2024-01-16, General Availability)

Changes in MySQL Connector/Python 8.3.0 (2024-01-16, General Availability)

Functionality Added or Changed

  • The X DevAPI and Classic API were separated into their own packages. The mysql-connector-python package continues to install the Classic API, and a new mysqlx-connector-python package installs the X DevAPI. (WL #15836)

  • For OpenTelemetry, added context propagation support for prepared statements with MySQL Commercial Server 8.3.0 or later with OpenTelemetry enabled. The C extension implementation must be built with libmysqlclient version 8.3.0 or later.

    Also, query attributes are now supported for prepared statements in the C extension when built with libmysqlclient version 8.3.0 or later. Previously, this functionality was supported only by the pure Python implementation. Both implementations function only with MySQL Commercial Server 8.3.0 or later. (WL #15950)

  • Added SASL authentication support using the GSSAPI (Kerberos) authentication method on Windows (support was already present for Linux) via the authentication_ldap_sasl_client plugin. This support is added only for the pure Python implementation. (WL #15985)

  • Added support for asynchronous execution as per the Python Database API Specification v2.0 (PEP 249). The MySQL Connector/Python asyncio implementation allows non-blocking asynchronous interaction with a MySQL server using a new package named mysql.connector.aio. This new package only supports the pure Python implementation.

    The mysql.connector.aio package is fully compatible with the existing mysql.connector package implementation, and exposes the same interface but with the ability to use asynchronous execution. Asynchronous methods return asyncio coroutines that can await results. (WL #15523)

Bugs Fixed

  • Binary strings were incorrectly converted to regular strings when using a prepared statement cursor with the pure Python implementation. (Bug #35912790)

  • Django would report a deprecation warning about using django.utils.timezone.utc; updated code to use datetime.timezone.utc instead. (Bug #112366, Bug #35832148)

  • Fixed multi=True usage when the query contained either code comments or stored procedures. (Bug #77548, Bug #21390859, Bug #35710145)