diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 6abc96b7..b09b2269 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -18,32 +18,38 @@ jobs: fail-fast: false matrix: include: - - db: "mariadb:10.4" + - db: "mariadb:12" # rolling release py: "3.13" + # pynacl 1.5 doesn't support Python 3.14 yet. + # https://github.com/pyca/pynacl/commit/d33028e43b814615a33e231925eaddb0f679fa2b - - db: "mariadb:10.5" + - db: "mariadb:11.8" + py: "3.12" + + - db: "mariadb:11.4" py: "3.11" - - db: "mariadb:10.6" + - db: "mariadb:10.11" py: "3.10" - db: "mariadb:10.6" py: "3.9" - - db: "mariadb:lts" - py: "3.8" - - - db: "mysql:5.7" - py: "pypy-3.10" - - db: "mysql:8.0" - py: "3.13" + py: "pypy3.11" + mysql_auth: true + + - db: "mysql:9" + py: "3.14" mysql_auth: true - db: "mysql:8.4" - py: "3.8" + py: "3.9" mysql_auth: true + - db: "mysql:5.7" + py: "3.9" + services: mysql: image: "${{ matrix.db }}" @@ -57,7 +63,7 @@ jobs: - /run/mysqld:/run/mysqld steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 - name: Workaround MySQL container permissions if: startsWith(matrix.db, 'mysql') diff --git a/CHANGELOG.md b/CHANGELOG.md index a633f6c5..d78d2a01 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,19 @@ * `db` and `passwd` will emit DeprecationWarning in v1.2. See #933. * `Connection.ping(reconnect)` change the default to not reconnect. +## v1.1.2 + +Release date: 2025-08-24 + +* Prevent UnboundLocalError in very rare situation. https://github.com/PyMySQL/PyMySQL/pull/1174 +* Close underlying `SocketIO` soon when Connection is closed for PyPy. https://github.com/PyMySQL/PyMySQL/issues/1183 +* Fix importing PyMySQL fail on CPython 3.13 when `getpass.getuser()` raises OSEError. https://github.com/PyMySQL/PyMySQL/pull/1190 +* Make charset name "utf8" case insensitive. https://github.com/PyMySQL/PyMySQL/pull/1195 +* `Connection.kill()` uses `KILL` query instead of `COM_KILL`command to support MySQL 8.4. https://github.com/PyMySQL/PyMySQL/pull/1197 +* Fix SSL error on CPython 3.13 caused by strict TLS default setting. https://github.com/PyMySQL/PyMySQL/pull/1198 +* Fix auth switch request handling. https://github.com/PyMySQL/PyMySQL/pull/1200 + + ## v1.1.1 Release date: 2024-05-21 diff --git a/README.md b/README.md index 7d8bfc86..ba491e2d 100644 --- a/README.md +++ b/README.md @@ -10,11 +10,11 @@ This package contains a pure-Python MySQL and MariaDB client library, based on ## Requirements - Python -- one of the following: - - [CPython](https://www.python.org/) : 3.7 and newer + - [CPython](https://www.python.org/) : 3.9 and newer - [PyPy](https://pypy.org/) : Latest 3.x version - MySQL Server -- one of the following: - - [MySQL](https://www.mysql.com/) \>= 5.7 - - [MariaDB](https://mariadb.org/) \>= 10.4 + - [MySQL](https://www.mysql.com/) LTS versions + - [MariaDB](https://mariadb.org/) LTS versions ## Installation diff --git a/pymysql/__init__.py b/pymysql/__init__.py index bbf9023e..0ec7ae6e 100644 --- a/pymysql/__init__.py +++ b/pymysql/__init__.py @@ -49,8 +49,8 @@ # PyMySQL version. # Used by setuptools and connection_attrs -VERSION = (1, 1, 1, "final", 1) -VERSION_STRING = "1.1.1" +VERSION = (1, 1, 2, "final") +VERSION_STRING = "1.1.2" ### for mysqlclient compatibility ### Django checks mysqlclient version. diff --git a/pyproject.toml b/pyproject.toml index ee103916..d5057982 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -7,24 +7,15 @@ authors = [ ] dependencies = [] -requires-python = ">=3.7" +requires-python = ">=3.8" readme = "README.md" -license = {text = "MIT License"} +license = "MIT" keywords = ["MySQL"] classifiers = [ "Development Status :: 5 - Production/Stable", - "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.7", - "Programming Language :: Python :: 3.8", - "Programming Language :: Python :: 3.9", - "Programming Language :: Python :: 3.10", - "Programming Language :: Python :: 3.11", - "Programming Language :: Python :: 3.12", - "Programming Language :: Python :: 3.13", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Intended Audience :: Developers", - "License :: OSI Approved :: MIT License", "Topic :: Database", ] dynamic = ["version"] @@ -40,9 +31,10 @@ dynamic = ["version"] [project.urls] "Project" = "https://github.com/PyMySQL/PyMySQL" "Documentation" = "https://pymysql.readthedocs.io/" +"Changelog" = "https://github.com/PyMySQL/PyMySQL/blob/main/CHANGELOG.md" [build-system] -requires = ["setuptools>=61"] +requires = ["setuptools>=77"] build-backend = "setuptools.build_meta" [tool.setuptools.packages.find]