Skip to content

Commit

Permalink
Update to Python 3.11.0b4.
Browse files Browse the repository at this point in the history
  • Loading branch information
Michael Howitz committed Aug 3, 2022
1 parent fc36cf4 commit a07c82b
Show file tree
Hide file tree
Showing 5 changed files with 61 additions and 13 deletions.
40 changes: 34 additions & 6 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down Expand Up @@ -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).
Expand All @@ -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: |
Expand All @@ -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: |
Expand All @@ -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
Expand Down
28 changes: 24 additions & 4 deletions .manylinux-install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -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 \
Expand All @@ -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
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 = "cde9741a5a0d9d04cee25cb617ee1590afebb17d"
commit-id = "fe41b5a5937ad36d26b62be91d884b7530ec012f"

[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 @@
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.

Expand Down
2 changes: 1 addition & 1 deletion tox.ini
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down

0 comments on commit a07c82b

Please sign in to comment.