From bc6034c89c7def8b1266b56ff665a33ad31360e5 Mon Sep 17 00:00:00 2001 From: Quentin Pradet Date: Mon, 10 Jul 2023 06:14:27 +0400 Subject: [PATCH 1/2] Drop Python 3.7, add PyPy 3.10 and CPython 3.12 --- .github/workflows/ci.yml | 6 +++--- .github/workflows/lint.yml | 2 +- README.rst | 8 ++++---- docs-requirements.txt | 6 +++--- docs/source/index.rst | 2 +- setup.py | 4 ++-- test-requirements.txt | 4 ++-- 7 files changed, 16 insertions(+), 16 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index bb7bf53..afe229a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -14,7 +14,7 @@ jobs: strategy: fail-fast: false matrix: - python: ['3.7', '3.8', '3.9', '3.10', '3.11'] + python: ['3.8', '3.9', '3.10', '3.11', '3.12-dev'] steps: - name: Checkout uses: actions/checkout@v3 @@ -39,7 +39,7 @@ jobs: strategy: fail-fast: false matrix: - python: ['3.7', '3.8', '3.9', '3.10', '3.11', 'pypy3.9'] + python: ['3.8', '3.9', '3.10', '3.11', '3.12-dev', 'pypy3.9', 'pypy-3.10'] steps: - name: Checkout uses: actions/checkout@v3 @@ -63,7 +63,7 @@ jobs: strategy: fail-fast: false matrix: - python: ['3.7', '3.8', '3.9', '3.10', '3.11'] + python: ['3.8', '3.9', '3.10', '3.11', '3.12-dev'] steps: - name: Checkout uses: actions/checkout@v3 diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 249c789..947a7d3 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -17,6 +17,6 @@ jobs: - name: Setup python uses: actions/setup-python@v4 with: - python-version: '3.9' + python-version: '3.x' - name: Run lint run: ./lint.sh diff --git a/README.rst b/README.rst index 9334e6f..9b81d1d 100644 --- a/README.rst +++ b/README.rst @@ -33,7 +33,7 @@ Vital statistics **Bug tracker and source code:** https://github.com/python-trio/trustme -**Tested on:** Python 3.7+, CPython and PyPy +**Tested on:** Python 3.8+, CPython and PyPy **License:** MIT or Apache 2, your choice. @@ -73,14 +73,14 @@ Programmatic usage: # trustme is happy either way. # ----- or ----- - + # Save the PEM-encoded data to a file to use in non-Python test # suites: ca.cert_pem.write_to_path("ca.pem") server_cert.private_key_and_cert_chain_pem.write_to_path("server.pem") - + # ----- or ----- - + # Put the PEM-encoded data in a temporary file, for libraries that # insist on that: with ca.cert_pem.tempfile() as ca_temp_path: diff --git a/docs-requirements.txt b/docs-requirements.txt index bc684ec..27d09b1 100644 --- a/docs-requirements.txt +++ b/docs-requirements.txt @@ -1,8 +1,8 @@ # -# This file is autogenerated by pip-compile with python 3.7 -# To update, run: +# This file is autogenerated by pip-compile with Python 3.11 +# by the following command: # -# pip-compile docs-requirements.in +# pip-compile --resolver=backtracking docs-requirements.in # alabaster==0.7.13 # via sphinx diff --git a/docs/source/index.rst b/docs/source/index.rst index 9618d95..4bff212 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -11,7 +11,7 @@ works. It demonstrates a simple TLS server and client that connect to each other using :mod:`trustme`\-generated certs. This example requires `Trio `__ (``pip -install -U trio``) and Python 3.7+. Note that while :mod:`trustme` is +install -U trio``) and Python 3.8+. Note that while :mod:`trustme` is maintained by the Trio project, :mod:`trustme` is happy to work with any networking library. diff --git a/setup.py b/setup.py index a18401d..6da15ce 100644 --- a/setup.py +++ b/setup.py @@ -18,7 +18,7 @@ }, package_dir={'': 'src'}, url="https://github.com/python-trio/trustme", - python_requires=">=3.7", + python_requires=">=3.8", install_requires=[ "cryptography>=3.1", "idna>=2.0", @@ -32,11 +32,11 @@ "Programming Language :: Python :: Implementation :: PyPy", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", - "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", "Topic :: System :: Networking", "Topic :: Security :: Cryptography", "Topic :: Software Development :: Testing", diff --git a/test-requirements.txt b/test-requirements.txt index 179d199..650cc73 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -1,8 +1,8 @@ # -# This file is autogenerated by pip-compile with Python 3.8 +# This file is autogenerated by pip-compile with Python 3.11 # by the following command: # -# pip-compile test-requirements.in +# pip-compile --resolver=backtracking test-requirements.in # attrs==23.1.0 # via service-identity From dfc89baf7d39d147a8799ddc288b5d2aa37fca0b Mon Sep 17 00:00:00 2001 From: Quentin Pradet Date: Mon, 10 Jul 2023 06:26:23 +0400 Subject: [PATCH 2/2] Add news entry --- newsfragments/609.feature.rst | 1 + newsfragments/609.removal.rst | 1 + 2 files changed, 2 insertions(+) create mode 100644 newsfragments/609.feature.rst create mode 100644 newsfragments/609.removal.rst diff --git a/newsfragments/609.feature.rst b/newsfragments/609.feature.rst new file mode 100644 index 0000000..b3261ed --- /dev/null +++ b/newsfragments/609.feature.rst @@ -0,0 +1 @@ +Add support for PyPy 3.10 and Python 3.12. diff --git a/newsfragments/609.removal.rst b/newsfragments/609.removal.rst new file mode 100644 index 0000000..e08df4c --- /dev/null +++ b/newsfragments/609.removal.rst @@ -0,0 +1 @@ +Remove support for Python 3.7.