Skip to content

Commit

Permalink
Start building Python 3.12 wheels (#532)
Browse files Browse the repository at this point in the history
##### SUMMARY
<!--- Describe the change below, including rationale and design
decisions -->

<!--- HINT: Include "Fixes #nnn" if you are fixing an existing issue -->
Fixes: #531
Depends-on: #533

##### ISSUE TYPE
<!--- Pick one below and delete the rest -->
- Feature Pull Request
  • Loading branch information
Qalthos authored Nov 8, 2023
1 parent 04c3bb6 commit 3cb2a52
Show file tree
Hide file tree
Showing 5 changed files with 25 additions and 6 deletions.
19 changes: 19 additions & 0 deletions .github/workflows/ci-cd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -586,6 +586,7 @@ jobs:
# NOTE: Research on the wheel names / platform tags and how they
# NOTE: are matched under various macOS versions:
# NOTE: https://github.com/MacPython/wiki/wiki/Spinning-wheels
- "3.12"
- "3.11"
- "3.10"
- 3.9
Expand Down Expand Up @@ -794,9 +795,11 @@ jobs:
- cp39-cp39
- cp310-cp310
- cp311-cp311
- cp312-cp312
manylinux-year-target:
- 2014
- _2_24
- _2_28
manylinux-image-target:
# NOTE: Keep in sync with `build-manylinux-container-images.yml`.
# NOTE: Ordered from "heavy" to "fast".
Expand Down Expand Up @@ -850,6 +853,12 @@ jobs:
arch: x86_64
qemu_arch: amd64
manylinux-year-target: 1
exclude:
# NOTE: cp312-cp312 unavailable before _2_28
- manylinux-python-target: cp312-cp312
manylinux-year-target: 2014
- manylinux-python-target: cp312-cp312
manylinux-year-target: _2_24

env:
ANSIBLE_PYLIBSSH_TRACING: >-
Expand Down Expand Up @@ -1008,16 +1017,24 @@ jobs:
- cp39-cp39
- cp310-cp310
- cp311-cp311
- cp312-cp312
manylinux-year-target:
- 2014
- _2_24
- _2_28
manylinux-image-target:
# NOTE: Keep in sync with `build-manylinux-container-images.yml`.
# NOTE: Ordered from "heavy" to "fast".
- arch: aarch64
qemu_arch: arm64
- arch: s390x
- arch: ppc64le
exclude:
# NOTE: cp312-cp312 unavailable before _2_28
- manylinux-python-target: cp312-cp312
manylinux-year-target: 2014
- manylinux-python-target: cp312-cp312
manylinux-year-target: _2_24

env:
ANSIBLE_PYLIBSSH_TRACING: >-
Expand Down Expand Up @@ -1643,6 +1660,7 @@ jobs:
strategy:
matrix:
python-version:
- "3.12"
- "3.11"
- "3.10"
- 3.9
Expand Down Expand Up @@ -1867,6 +1885,7 @@ jobs:
strategy:
matrix:
python-version:
- "3.12"
- "3.11"
- "3.10"
- 3.9
Expand Down
1 change: 1 addition & 0 deletions docs/changelog-fragments/532.misc.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Added support for Python 3.12 -- by :user:`Qalthos`
2 changes: 1 addition & 1 deletion requirements-build.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
#
# pip-compile --allow-unsafe --output-file=requirements-build.txt --strip-extras -
#
cython==0.29.32
cython==3.0.5
# via -r -
expandvars==0.9.0
# via -r -
Expand Down
1 change: 1 addition & 0 deletions setup.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ classifiers =
Programming Language :: Python :: 3.9
Programming Language :: Python :: 3.10
Programming Language :: Python :: 3.11
Programming Language :: Python :: 3.12
Programming Language :: Cython

Topic :: Software Development :: Libraries :: Python Modules
Expand Down
8 changes: 3 additions & 5 deletions tox.ini
Original file line number Diff line number Diff line change
Expand Up @@ -235,7 +235,7 @@ description =
Verify that dists under the dist/ dir have valid metadata
depends =
build-dists
build-dists-manylinux{1,2010,2014,_2_24}-{x86_64,i686,aarch64,armv7l,ppc64,ppc64le,s390x}
build-dists-manylinux{1,2010,2014,_2_24,_2_28}-{x86_64,aarch64,ppc64le,s390x}
build-wheels-pip
delocate-macos-wheels
deps =
Expand All @@ -250,7 +250,7 @@ commands =
twine check --strict {env:PEP517_OUT_DIR}/*


[testenv:build-dists-manylinux{1,2010,2014,_2_24}-{x86_64,i686,aarch64,armv7l,ppc64,ppc64le,s390x}]
[testenv:build-dists-manylinux{1,2010,2014,_2_24,_2_28}-{x86_64,aarch64,ppc64le,s390x}]
allowlist_externals =
{env:DOCKER_EXECUTABLE:docker}
basepython = python3
Expand Down Expand Up @@ -278,17 +278,15 @@ setenv =
{[testenv]setenv}

x86_64: MANYLINUX_ARCH_TAG = x86_64
i686: MANYLINUX_ARCH_TAG = i686
aarch64: MANYLINUX_ARCH_TAG = aarch64
armv7l: MANYLINUX_ARCH_TAG = armv7l
ppc64: MANYLINUX_ARCH_TAG = ppc64
ppc64le: MANYLINUX_ARCH_TAG = ppc64le
s390x: MANYLINUX_ARCH_TAG = s390x

manylinux1: MANYLINUX_VERSION_TAG = 1
manylinux2010: MANYLINUX_VERSION_TAG = 2010
manylinux2014: MANYLINUX_VERSION_TAG = 2014
manylinux_2_24: MANYLINUX_VERSION_TAG = _2_24
manylinux_2_28: MANYLINUX_VERSION_TAG = _2_28
skip_install = true


Expand Down

0 comments on commit 3cb2a52

Please sign in to comment.