summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Howitz <mh@gocept.com>2022-08-02 14:22:53 +0200
committerMichael Howitz <mh@gocept.com>2022-08-03 08:44:34 +0200
commita07c82b7813de1e000863e1d01058e417bc4b33d (patch)
treef4d23c5d1f93706a029880baea4c0550a4478479
parentfc36cf4f860bcc7ac474c80aa40ecfa5f342c666 (diff)
downloadzope-interface-a07c82b7813de1e000863e1d01058e417bc4b33d.tar.gz
Update to Python 3.11.0b4.
-rw-r--r--.github/workflows/tests.yml40
-rwxr-xr-x.manylinux-install.sh28
-rw-r--r--.meta.toml2
-rw-r--r--CHANGES.rst2
-rw-r--r--tox.ini2
5 files changed, 61 insertions, 13 deletions
diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml
index 78ef211..3c3f9a0 100644
--- a/.github/workflows/tests.yml
+++ b/.github/workflows/tests.yml
@@ -104,7 +104,7 @@ jobs:
- "3.8"
- "3.9"
- "3.10"
- - "3.11.0-beta.3"
+ - "3.11.0-beta.4"
os: [ubuntu-20.04, macos-latest]
exclude:
- os: macos-latest
@@ -142,18 +142,19 @@ jobs:
- name: Install Build Dependencies (PyPy2)
if: >
- startsWith(matrix.python-version, 'pypy-2.7')
+ startsWith(matrix.python-version, 'pypy-2.7')
run: |
pip install -U pip
pip install -U setuptools wheel twine "cffi != 1.15.1"
- name: Install Build Dependencies (other Python versions)
if: >
- !startsWith(matrix.python-version, 'pypy-2.7')
+ !startsWith(matrix.python-version, 'pypy-2.7')
run: |
pip install -U pip
pip install -U setuptools wheel twine cffi
- - name: Build zope.interface
+ - name: Build zope.interface (3.11.0-beta.4)
+ if: ${{ startsWith(matrix.python-version, '3.11.0-beta.4') }}
run: |
# Next, build the wheel *in place*. This helps ccache, and also lets us cache the configure
# output (pip install uses a random temporary directory, making this difficult).
@@ -162,6 +163,33 @@ jobs:
# Also install it, so that we get dependencies in the (pip) cache.
pip install -U 'faulthandler; python_version == "2.7" and platform_python_implementation == "CPython"'
pip install --pre .[test]
+ - name: Build zope.interface (Python 3.10 on MacOS)
+ if: >
+ startsWith(runner.os, 'Mac')
+ && startsWith(matrix.python-version, '3.10')
+ env:
+ _PYTHON_HOST_PLATFORM: macosx-11-x86_64
+ run: |
+ # Next, build the wheel *in place*. This helps ccache, and also lets us cache the configure
+ # output (pip install uses a random temporary directory, making this difficult).
+ python setup.py build_ext -i
+ python setup.py bdist_wheel
+ # Also install it, so that we get dependencies in the (pip) cache.
+ pip install -U 'faulthandler; python_version == "2.7" and platform_python_implementation == "CPython"'
+ pip install .[test]
+
+ - name: Build zope.interface (all other versions)
+ if: >
+ !startsWith(runner.os, 'Mac')
+ || !startsWith(matrix.python-version, '3.10')
+ run: |
+ # Next, build the wheel *in place*. This helps ccache, and also lets us cache the configure
+ # output (pip install uses a random temporary directory, making this difficult).
+ python setup.py build_ext -i
+ python setup.py bdist_wheel
+ # Also install it, so that we get dependencies in the (pip) cache.
+ pip install -U 'faulthandler; python_version == "2.7" and platform_python_implementation == "CPython"'
+ pip install .[test]
- name: Check zope.interface build
run: |
@@ -181,7 +209,7 @@ jobs:
&& startsWith(github.ref, 'refs/tags')
&& startsWith(runner.os, 'Mac')
&& !startsWith(matrix.python-version, 'pypy')
- && !startsWith(matrix.python-version, '3.11.0-beta.3')
+ && !startsWith(matrix.python-version, '3.11.0-beta.4')
env:
TWINE_PASSWORD: ${{ secrets.TWINE_PASSWORD }}
run: |
@@ -203,7 +231,7 @@ jobs:
- "3.8"
- "3.9"
- "3.10"
- - "3.11.0-beta.3"
+ - "3.11.0-beta.4"
os: [ubuntu-20.04, macos-latest]
exclude:
- os: macos-latest
diff --git a/.manylinux-install.sh b/.manylinux-install.sh
index 484eb00..6cb729c 100755
--- a/.manylinux-install.sh
+++ b/.manylinux-install.sh
@@ -26,6 +26,20 @@ ls -ld /cache/pip
# We need some libraries because we build wheels from scratch:
yum -y install libffi-devel
+tox_env_map() {
+ case $1 in
+ *"cp27"*) echo 'py27';;
+ *"cp35"*) echo 'py35';;
+ *"cp311"*) echo 'py311';;
+ *"cp36"*) echo 'py36';;
+ *"cp37"*) echo 'py37';;
+ *"cp38"*) echo 'py38';;
+ *"cp39"*) echo 'py39';;
+ *"cp310"*) echo 'py310';;
+ *) echo 'py';;
+ esac
+}
+
# Compile wheels
for PYBIN in /opt/python/*/bin; do
if \
@@ -37,12 +51,18 @@ for PYBIN in /opt/python/*/bin; do
[[ "${PYBIN}" == *"cp38"* ]] || \
[[ "${PYBIN}" == *"cp39"* ]] || \
[[ "${PYBIN}" == *"cp310"* ]] ; then
- "${PYBIN}/pip" install --pre -e /io/
- "${PYBIN}/pip" wheel /io/ --pre -w wheelhouse/
+ if [[ "${PYBIN}" == *"cp311"* ]] ; then
+ "${PYBIN}/pip" install --pre -e /io/
+ "${PYBIN}/pip" wheel /io/ --pre -w wheelhouse/
+ else
+ "${PYBIN}/pip" install -e /io/
+ "${PYBIN}/pip" wheel /io/ -w wheelhouse/
+ fi
if [ `uname -m` == 'aarch64' ]; then
cd /io/
- "${PYBIN}/pip" install tox
- "${PYBIN}/tox" -e py
+ ${PYBIN}/pip install tox
+ TOXENV=$(tox_env_map "${PYBIN}")
+ ${PYBIN}/tox -e ${TOXENV}
cd ..
fi
rm -rf /io/build /io/*.egg-info
diff --git a/.meta.toml b/.meta.toml
index 593eba0..0d0ec7d 100644
--- a/.meta.toml
+++ b/.meta.toml
@@ -2,7 +2,7 @@
# https://github.com/zopefoundation/meta/tree/master/config/c-code
[meta]
template = "c-code"
-commit-id = "cde9741a5a0d9d04cee25cb617ee1590afebb17d"
+commit-id = "fe41b5a5937ad36d26b62be91d884b7530ec012f"
[python]
with-appveyor = true
diff --git a/CHANGES.rst b/CHANGES.rst
index 179b89d..7737325 100644
--- a/CHANGES.rst
+++ b/CHANGES.rst
@@ -5,7 +5,7 @@
5.5.0 (unreleased)
==================
-- Add support for Python 3.10 and 3.11 (as of 3.11.0b3).
+- Add support for Python 3.10 and 3.11 (as of 3.11.0b4).
- Add missing Trove classifier showing support for Python 3.9.
diff --git a/tox.ini b/tox.ini
index 53213fb..942ad84 100644
--- a/tox.ini
+++ b/tox.ini
@@ -19,7 +19,7 @@ envlist =
[testenv]
usedevelop = true
-pip_pre = true
+pip_pre = py311: true
deps =
# repoze.sphinx.autointerface does not yet support Sphinx >= 5:
Sphinx < 5