12 Commits

Author SHA1 Message Date
feea60c00e support server_public_key_path option. (#744)
fix #682
2024-11-12 20:52:23 +09:00
89511eef44 windows: use DEFAULT_SSL_VERIFY_SERVER_CERT=0 option (#731) 2024-11-12 19:06:52 +09:00
a7e3887c8a Support ssl=True (#700)
MySQL use ssl by default but MariaDB don't.

Until mysqlclient<=2.2.1, `ssl=True` unintentionally allowed and it
called `mysql_ssl_set(mysql, NULL, NULL, NULL, NULL, NULL)`. Although it
is no-op in MySQL Connector, MariaDB Connector silently set
MYSQL_OPT_SSL_ENFORCE when the API is called. (See #698)

In case of PyMySQL, ssl is not used by default but `ssl=True` behave
like `sslmode="PREFERRED"`.

For better backward compatibility and compatibility with PyMySQL and
security, I decided to allow ssl=True and it means sslmode="REQUIRED" on
MySQL Connector and
set MYSQL_OPT_SSL_ENFORCE on MariaDB Connector.

Fix #699
2024-02-09 00:21:36 +09:00
b34f8ef174 fix build issue introduced in 2.2.2 (#696) 2024-02-04 21:43:11 +09:00
ace8b25649 deprecate APIs deprecated in MySQL 8 2024-02-04 13:41:50 +09:00
720b80497f Support MySQL 8.3 (#690)
Fix #688
2024-02-03 19:16:26 +09:00
0d0fff7662 Do not use MYSQL_OPT_RECONNECT as possible. (#664)
MySQL 8.0.33+ shows deprecation warning to stderr.
So we avoid using it as possible.

In the future, we will deprecate `reconnect` option of the
`Connection.ping()`.
2023-11-13 17:36:09 +09:00
398208f8c8 Fix mariadbclient SSL support (#609) 2023-05-19 02:11:13 +09:00
b162dddcf3 Fix Connection.escape() with Unicode input (#608)
After aed1dd2, Connection.escape() used ASCII to escape Unicode input.
This commit makes it uses connection encoding instead.
2023-05-18 20:08:04 +09:00
3d6b8c9b7c Release GIL during result.discard() (#604) 2023-05-18 17:19:10 +09:00
a2e970698f Discard results without converting them into Python objects. (#601)
Fixes #560.
2023-05-17 02:08:52 +09:00
0220f427a9 Use src-layout. (#600) 2023-05-15 23:50:10 +09:00