diff --git a/.evergreen/config.yml b/.evergreen/config.yml index e718266efd..36c10f5632 100644 --- a/.evergreen/config.yml +++ b/.evergreen/config.yml @@ -2240,6 +2240,10 @@ axes: display_name: "Python 3.12" variables: PYTHON_BINARY: "/opt/python/3.12/bin/python3" + - id: "3.13" + display_name: "Python 3.13" + variables: + PYTHON_BINARY: "/opt/python/3.13/bin/python3" - id: "pypy3.9" display_name: "PyPy 3.9" variables: @@ -2272,6 +2276,10 @@ axes: display_name: "Python 3.12" variables: PYTHON_BINARY: "C:/python/Python312/python.exe" + - id: "3.13" + display_name: "Python 3.13" + variables: + PYTHON_BINARY: "C:/python/Python313/python.exe" - id: python-version-windows-32 display_name: "Python" @@ -2296,6 +2304,10 @@ axes: display_name: "32-bit Python 3.12" variables: PYTHON_BINARY: "C:/python/32/Python312/python.exe" + - id: "3.13" + display_name: "32-bit Python 3.13" + variables: + PYTHON_BINARY: "C:/python/32/Python313/python.exe" # Choice of mod_wsgi version - id: mod-wsgi-version @@ -2559,7 +2571,7 @@ buildvariants: # Only test "noauth" with Python 3.8. exclude_spec: platform: rhel8 - python-version: ["3.9", "3.10", "pypy3.9", "pypy3.10"] + python-version: ["3.9", "3.10", "3.11", "3.12", "3.13", "pypy3.9", "pypy3.10"] auth: "noauth" ssl: "ssl" pyopenssl: "*" @@ -2665,7 +2677,7 @@ buildvariants: exclude_spec: # Don't test green frameworks on these Python versions. - platform: rhel8 - python-version: ["pypy3.9", "pypy3.10"] + python-version: ["pypy3.9", "pypy3.10", "3.13"] green-framework: "*" auth-ssl: "*" display_name: "${green-framework} ${python-version} ${platform} ${auth-ssl}" @@ -2788,7 +2800,7 @@ buildvariants: - matrix_name: "tests-mod-wsgi" matrix_spec: platform: ubuntu-22.04 - python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"] + python-version: ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] mod-wsgi-version: "*" display_name: "${mod-wsgi-version} ${python-version} ${platform}" tasks: diff --git a/doc/changelog.rst b/doc/changelog.rst index c008066c22..ba3cba8322 100644 --- a/doc/changelog.rst +++ b/doc/changelog.rst @@ -10,6 +10,7 @@ Changes in Version 4.9.0 PyMongo 4.9 brings a number of improvements including: - Added support for MongoDB 8.0. +- Added support for Python 3.13. - A new asynchronous API with full asyncio support. - Added support for In-Use Encryption range queries with MongoDB 8.0. Added :attr:`~pymongo.encryption.Algorithm.RANGE`. diff --git a/pyproject.toml b/pyproject.toml index 19db00f19a..b64c7d6031 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -35,6 +35,7 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Topic :: Database", "Typing :: Typed", ]