From 359e924719cdea71982cd3933e1d511863010e1a Mon Sep 17 00:00:00 2001 From: Steven Silvester Date: Thu, 3 Aug 2023 17:58:37 -0500 Subject: [PATCH] PYTHON-3896 Drop support for pypy3.7 (#1343) --- .evergreen/config.yml | 22 ++++++++++------------ CONTRIBUTING.rst | 2 +- doc/changelog.rst | 3 +++ doc/faq.rst | 2 +- doc/python3.rst | 2 +- 5 files changed, 16 insertions(+), 15 deletions(-) diff --git a/.evergreen/config.yml b/.evergreen/config.yml index 1779110e8..05582b12e 100644 --- a/.evergreen/config.yml +++ b/.evergreen/config.yml @@ -563,8 +563,6 @@ functions: set -o errexit set -o xtrace - # This is required for pypy3.7 UTF encoding - export LC_ALL=en_US.UTF-8 ${PYTHON_BINARY} -m tox -m test-atlas "add aws auth variables to file": @@ -2533,14 +2531,14 @@ axes: display_name: "Python 3.12" variables: PYTHON_BINARY: "/opt/python/3.12/bin/python3" - - id: "pypy3.7" - display_name: "PyPy 3.7" - variables: - PYTHON_BINARY: "/opt/python/pypy3.7/bin/pypy3" - id: "pypy3.8" display_name: "PyPy 3.8" variables: PYTHON_BINARY: "/opt/python/pypy3.8/bin/pypy3" + - id: "pypy3.10" + display_name: "PyPy 3.10" + variables: + PYTHON_BINARY: "/opt/python/pypy3.10/bin/pypy3" - id: python-version-mac display_name: "Python" @@ -2881,7 +2879,7 @@ buildvariants: # Only test "noauth" with Python 3.7. exclude_spec: platform: rhel8 - python-version: ["3.8", "3.9", "3.10", "pypy3.7", "pypy3.8"] + python-version: ["3.8", "3.9", "3.10", "pypy3.8", "pypy3.10"] auth: "noauth" ssl: "ssl" pyopenssl: "*" @@ -2942,7 +2940,7 @@ buildvariants: exclude_spec: # These interpreters are always tested without extensions. - platform: rhel8 - python-version: ["pypy3.7", "pypy3.8"] + python-version: ["pypy3.8", "pypy3.10"] c-extensions: "*" auth-ssl: "*" coverage: "*" @@ -2958,7 +2956,7 @@ buildvariants: exclude_spec: # These interpreters are always tested without extensions. - platform: rhel8 - python-version: ["pypy3.7", "pypy3.8"] + python-version: ["pypy3.8", "pypy3.10"] c-extensions: "with-c-extensions" compression: "*" display_name: "${compression} ${c-extensions} ${python-version} ${platform}" @@ -2987,7 +2985,7 @@ buildvariants: exclude_spec: # Don't test green frameworks on these Python versions. - platform: rhel8 - python-version: ["pypy3.7", "pypy3.8"] + python-version: ["pypy3.8", "pypy3.10"] green-framework: "*" auth-ssl: "*" display_name: "${green-framework} ${python-version} ${platform} ${auth-ssl}" @@ -3013,7 +3011,7 @@ buildvariants: matrix_spec: platform: rhel7 # Python 3.10+ requires OpenSSL 1.1.1+ - python-version: ["3.7", "3.8", "3.9", "pypy3.7", "pypy3.8"] + python-version: ["3.7", "3.8", "3.9", "pypy3.8", "pypy3.10"] auth-ssl: "*" display_name: "OpenSSL 1.0.2 ${python-version} ${platform} ${auth-ssl}" tasks: @@ -3193,7 +3191,7 @@ buildvariants: - matrix_name: "ocsp-test" matrix_spec: platform: rhel8 - python-version: ["3.7", "3.10", "pypy3.7", "pypy3.8"] + python-version: ["3.7", "3.10", "pypy3.8", "pypy3.10"] mongodb-version: ["4.4", "5.0", "6.0", "7.0", "latest"] auth: "noauth" ssl: "ssl" diff --git a/CONTRIBUTING.rst b/CONTRIBUTING.rst index a897d0e06..87a94934d 100644 --- a/CONTRIBUTING.rst +++ b/CONTRIBUTING.rst @@ -19,7 +19,7 @@ that might not be of interest or that has already been addressed. Supported Interpreters ---------------------- -PyMongo supports CPython 3.7+ and PyPy3.7+. Language +PyMongo supports CPython 3.7+ and PyPy3.8+. Language features not supported by all interpreters can not be used. Style Guide diff --git a/doc/changelog.rst b/doc/changelog.rst index b77f64f9c..d1219979d 100644 --- a/doc/changelog.rst +++ b/doc/changelog.rst @@ -18,6 +18,9 @@ PyMongo 4.5 brings a number of improvements including: - cryptography 2.5 or later is now required for :ref:`OCSP` support. - Improved bson encoding and decoding performance by up to 134%(`PYTHON-3729`_, `PYTHON-3797`_, `PYTHON-3816`_, `PYTHON-3817`_, `PYTHON-3820`_, `PYTHON-3824`_, and `PYTHON-3846`_). +.. warning:: PyMongo no longer supports PyPy3 versions older than 3.8. Users + must upgrade to PyPy3.8+. + Issues Resolved ............... diff --git a/doc/faq.rst b/doc/faq.rst index e64e3c79e..9a1400277 100644 --- a/doc/faq.rst +++ b/doc/faq.rst @@ -166,7 +166,7 @@ they are returned to the pool. Does PyMongo support Python 3? ------------------------------ -PyMongo supports CPython 3.7+ and PyPy3.7+. See the :doc:`python3` for details. +PyMongo supports CPython 3.7+ and PyPy3.8+. See the :doc:`python3` for details. Does PyMongo support asynchronous frameworks like Gevent, asyncio, Tornado, or Twisted? --------------------------------------------------------------------------------------- diff --git a/doc/python3.rst b/doc/python3.rst index 40d5fec66..cc11409bc 100644 --- a/doc/python3.rst +++ b/doc/python3.rst @@ -4,7 +4,7 @@ Python 3 FAQ What Python 3 versions are supported? ------------------------------------- -PyMongo supports CPython 3.7+ and PyPy3.7+. +PyMongo supports CPython 3.7+ and PyPy3.8+. Are there any PyMongo behavior changes with Python 3? -----------------------------------------------------