Added Python 3.8 support.
Connector/Python connections now set CAN_HANDLE_EXPIRED_PASSWORDS to indicate it can handle sandbox mode for expired passwords. This indicates that Connector/Python does not execute SET commands by a connection with an expired password, an operation that's disallowed by MySQL Server 8.0.18 and higher.
On Windows, added platform dependent MSI installers that install and update Connector/Python for all supported Python versions on the system. Downloading and installing separate packages for each version is no longer required.
/usr/lib/mysqlxfolder was not created after executing
setup.pyfrom commercial packages. (Bug #29959309)
A table scan for a float using the C Extension caused a memory leak. (Bug #29909157)
read_default_fileas an alias for
option_filesto increase MySQLdb compatibility. (Bug #25349794, Bug #84389)
Connector/Python 8.0.17 does not properly negotiate the highest TLS protocol version supported by both the client and server. As such, because MySQL 5.6/5.7 platform packages (DEB and RPM) include YaSSL prior to 5.6.45/5.7.27, and YaSSL only supports up to TLS 1.1, systems setting a minimum TLS protocol version above 1.1 (such as Debian 10 that sets MinProtocol=TLSv1.2) do not function with Connector/Python 8.0.17.
As a workaround, the wheel (pip) packages function properly as they are built using glibc and bundle OpenSSL instead of YaSSL.
Connector/Python 8.0.18 adds a
tls-versionsoption to define the TLS version to use.