Skip to content

Commit

Permalink
Add support for Python 3.10. (#48)
Browse files Browse the repository at this point in the history
* Fix badge.
  • Loading branch information
Michael Howitz committed Nov 17, 2021
1 parent 4b8519c commit dd02362
Show file tree
Hide file tree
Showing 8 changed files with 48 additions and 41 deletions.
58 changes: 30 additions & 28 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -92,24 +92,26 @@ jobs:
# with `test`, and `docs` must use a subset.
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
python-version:
- 2.7
- 3.5
- pypy-2.7
- pypy-3.6
- 3.6
- 3.7
- 3.8
- 3.9
- "2.7"
- "3.5"
- "pypy-2.7"
- "pypy-3.7"
- "3.6"
- "3.7"
- "3.8"
- "3.9"
- "3.10"
os: [ubuntu-20.04, macos-latest]
exclude:
- os: macos-latest
python-version: pypy-2.7
python-version: "pypy-2.7"
- os: macos-latest
python-version: pypy-3.6
python-version: "pypy-3.6"
- os: macos-latest
python-version: 3.5
python-version: "3.5"

steps:
- name: checkout
Expand Down Expand Up @@ -177,24 +179,26 @@ jobs:
needs: build-package
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
python-version:
- 2.7
- 3.5
- pypy-2.7
- pypy-3.6
- 3.6
- 3.7
- 3.8
- 3.9
- "2.7"
- "3.5"
- "pypy-2.7"
- "pypy-3.7"
- "3.6"
- "3.7"
- "3.8"
- "3.9"
- "3.10"
os: [ubuntu-20.04, macos-latest]
exclude:
- os: macos-latest
python-version: pypy-2.7
python-version: "pypy-2.7"
- os: macos-latest
python-version: pypy-3.6
python-version: "pypy-3.6"
- os: macos-latest
python-version: 3.5
python-version: "3.5"

steps:
- name: checkout
Expand Down Expand Up @@ -229,7 +233,7 @@ jobs:
path: dist/
- name: Install zope.proxy
run: |
pip install -U wheel
pip install -U wheel setuptools
pip install -U coverage coverage-python-version
pip install -U 'faulthandler; python_version == "2.7" and platform_python_implementation == "CPython"'
# Unzip into src/ so that testrunner can find the .so files
Expand Down Expand Up @@ -270,7 +274,7 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
python-version: [3.9]
python-version: ["3.9"]
os: [ubuntu-20.04]

steps:
Expand Down Expand Up @@ -309,8 +313,6 @@ jobs:
pip install -U wheel
pip install -U coverage
pip install -U "`ls dist/zope.proxy-*.whl`[docs]"
# Until repoze.sphinx.autointerface supports Sphinx 4.x we cannot use it:
pip install -U "Sphinx < 4"
- name: Build docs
env:
ZOPE_INTERFACE_STRICT_IRO: 1
Expand All @@ -323,7 +325,7 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
python-version: [3.9]
python-version: ["3.9"]
os: [ubuntu-20.04]

steps:
Expand Down Expand Up @@ -375,7 +377,7 @@ jobs:
# We use a regular Python matrix entry to share as much code as possible.
strategy:
matrix:
python-version: [3.9]
python-version: ["3.9"]
image: [manylinux2010_x86_64, manylinux2010_i686, manylinux2014_aarch64]

steps:
Expand Down
9 changes: 7 additions & 2 deletions .manylinux-install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -23,14 +23,19 @@ fi
ls -ld /cache
ls -ld /cache/pip

# We need some libraries because we build wheels from scratch:
yum -y install libffi-devel

# Compile wheels
for PYBIN in /opt/python/*/bin; do
if [[ "${PYBIN}" == *"cp27"* ]] || \
if \
[[ "${PYBIN}" == *"cp27"* ]] || \
[[ "${PYBIN}" == *"cp35"* ]] || \
[[ "${PYBIN}" == *"cp36"* ]] || \
[[ "${PYBIN}" == *"cp37"* ]] || \
[[ "${PYBIN}" == *"cp38"* ]] || \
[[ "${PYBIN}" == *"cp39"* ]]; then
[[ "${PYBIN}" == *"cp39"* ]] || \
[[ "${PYBIN}" == *"cp310"* ]] ; then
"${PYBIN}/pip" install -e /io/
"${PYBIN}/pip" wheel /io/ -w wheelhouse/
if [ `uname -m` == 'aarch64' ]; then
Expand Down
2 changes: 1 addition & 1 deletion .meta.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# https://github.com/zopefoundation/meta/tree/master/config/c-code
[meta]
template = "c-code"
commit-id = "bf824746f106a5f6314af285f3d5642e3ce490ce"
commit-id = "802ac12d0664dfaa42f1dcfe920f40a7aa3d0e14"

[python]
with-appveyor = true
Expand Down
2 changes: 1 addition & 1 deletion CHANGES.rst
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
4.4.1 (unreleased)
==================

- Nothing changed yet.
- Add support for Python 3.10.


4.4.0 (2021-07-22)
Expand Down
4 changes: 2 additions & 2 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@
:target: https://pypi.python.org/pypi/zope.proxy/
:alt: Latest Version

.. image:: https://travis-ci.com/zopefoundation/zope.proxy.svg?branch=master
:target: https://travis-ci.com/zopefoundation/zope.proxy
.. image:: https://github.com/zopefoundation/zope.proxy/actions/workflows/tests.yml/badge.svg
:target: https://github.com/zopefoundation/zope.proxy/actions/workflows/tests.yml

.. image:: https://readthedocs.org/projects/zopeproxy/badge/?version=latest
:target: http://zopeproxy.readthedocs.org/en/latest/
Expand Down
2 changes: 2 additions & 0 deletions appveyor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,8 @@ environment:
- python: 38-x64
- python: 39
- python: 39-x64
- python: 310
- python: 310-x64

install:
- "SET PYTHONVERSION=%PYTHON%"
Expand Down
4 changes: 2 additions & 2 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,7 @@ def read(*rnames):
'Programming Language :: Python :: 3.7',
'Programming Language :: Python :: 3.8',
'Programming Language :: Python :: 3.9',
'Programming Language :: Python :: 3.10',
'Programming Language :: Python :: Implementation :: CPython',
'Programming Language :: Python :: Implementation :: PyPy',
'Framework :: Zope :: 3',
Expand Down Expand Up @@ -132,8 +133,7 @@ def read(*rnames):
'zope.testrunner',
],
'docs': [
# Need < 4 until repoze.sphinx.autointerface supports Sphinx 4:
'Sphinx < 4',
'Sphinx',
'repoze.sphinx.autointerface',
],
},
Expand Down
8 changes: 3 additions & 5 deletions tox.ini
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ envlist =
py37,py37-pure
py38,py38-pure
py39,py39-pure
py310,py310-pure
pypy
pypy3
docs
Expand All @@ -18,8 +19,6 @@ envlist =
[testenv]
usedevelop = true
deps =
# Until repoze.sphinx.autointerface supports Sphinx 4.x we cannot use it:
Sphinx < 4
setenv =
pure: PURE_PYTHON=1
!pure-!pypy-!pypy3: PURE_PYTHON=0
Expand Down Expand Up @@ -50,7 +49,8 @@ skip_install = true
deps =
flake8
check-manifest
check-python-versions
check-python-versions >= 0.19.1
wheel
commands =
flake8 src setup.py
check-manifest
Expand All @@ -59,8 +59,6 @@ commands =
[testenv:docs]
basepython = python3
skip_install = false
# Until repoze.sphinx.autointerface supports Sphinx 4.x we cannot use it:
deps = Sphinx < 4
commands_pre =
commands =
sphinx-build -b html -d docs/_build/doctrees docs docs/_build/html
Expand Down

0 comments on commit dd02362

Please sign in to comment.