Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
97dd4ee1c0 | ||
|
|
f6eaa9feec | ||
|
|
acedefdda5 | ||
|
|
9fbe8186f9 | ||
|
|
015f382418 | ||
|
|
0154a8f992 | ||
|
|
cd53552b4b | ||
|
|
630653b786 | ||
|
|
870bf3f740 | ||
|
|
6ef2f92dfc | ||
|
|
b3a16d58cf | ||
|
|
7f95eb3d8f | ||
|
|
a7b69cc16d | ||
|
|
87dfa75dcb | ||
|
|
61c45248bd | ||
|
|
acd9300077 | ||
|
|
37a6504351 | ||
|
|
452631eb60 | ||
|
|
aacd0fe33c | ||
|
|
26705eef1b | ||
|
|
ff277fd345 | ||
|
|
3d9fef458c | ||
|
|
fac9b13307 | ||
|
|
31a4e3c86b | ||
|
|
bd0aca510c | ||
|
|
93b2ce39f0 | ||
|
|
d696481714 | ||
|
|
42b81ab47f | ||
|
|
c013e0d0e6 | ||
|
|
2fd18793c1 |
@@ -3,7 +3,7 @@ version: 2
|
|||||||
jobs:
|
jobs:
|
||||||
osx-python3.6:
|
osx-python3.6:
|
||||||
macos:
|
macos:
|
||||||
xcode: "9.4.1"
|
xcode: 10.2.1
|
||||||
environment:
|
environment:
|
||||||
PYTHON: python3
|
PYTHON: python3
|
||||||
steps:
|
steps:
|
||||||
|
|||||||
+5
-2
@@ -28,7 +28,10 @@ jobs:
|
|||||||
|
|
||||||
- name: macOS | x86_64 | Python 3.x
|
- name: macOS | x86_64 | Python 3.x
|
||||||
os: osx
|
os: osx
|
||||||
env: PYTHON=python3
|
osx_image: xcode10.2
|
||||||
|
env:
|
||||||
|
- PYTHON=python3
|
||||||
|
- PYTEST_ADDOPTS='-k "unit_test or test_0_basic" --suppress-no-test-exit-code'
|
||||||
|
|
||||||
- name: Windows | x86_64 | Python 3.6
|
- name: Windows | x86_64 | Python 3.6
|
||||||
os: windows
|
os: windows
|
||||||
@@ -52,6 +55,6 @@ jobs:
|
|||||||
# must repeat the s390x job above exactly to match
|
# must repeat the s390x job above exactly to match
|
||||||
- *linux_s390x_36
|
- *linux_s390x_36
|
||||||
|
|
||||||
install: $PYTHON -m pip install -r requirements-dev.txt
|
install: $PYTHON -m pip install -r requirements-dev.txt pytest-custom-exit-code
|
||||||
|
|
||||||
script: $PYTHON ./bin/run_tests.py
|
script: $PYTHON ./bin/run_tests.py
|
||||||
|
|||||||
@@ -22,14 +22,14 @@ What does it do?
|
|||||||
| CPython 3.6 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅² | ✅² | ✅³ |
|
| CPython 3.6 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅² | ✅² | ✅³ |
|
||||||
| CPython 3.7 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅² | ✅² | ✅³ |
|
| CPython 3.7 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅² | ✅² | ✅³ |
|
||||||
| CPython 3.8 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅² | ✅² | ✅³ |
|
| CPython 3.8 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅² | ✅² | ✅³ |
|
||||||
| CPython 3.9 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅² | ✅⁴ | ✅³ |
|
| CPython 3.9 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅² | ✅² | ✅³ |
|
||||||
| PyPy 2.7 v7.3.0 | ✅ | | ✅ | ✅ | | | | |
|
| PyPy 2.7 v7.3.2 | ✅ | | ✅ | ✅ | | | | |
|
||||||
| PyPy 3.6 v7.3.0 | ✅ | | ✅ | ✅ | | | | |
|
| PyPy 3.6 v7.3.2 | ✅ | | ✅ | ✅ | | | | |
|
||||||
|
| PyPy 3.7 (alpha) v7.3.2 | ✅ | | ✅ | ✅ | | | | |
|
||||||
|
|
||||||
<sup>¹ Not supported on Travis</sup><br>
|
<sup>¹ Not supported on Travis</sup><br>
|
||||||
<sup>² Only supported on Travis</sup><br>
|
<sup>² Only supported on Travis</sup><br>
|
||||||
<sup>³ Beta support until Travis CI fixes <a href="https://travis-ci.community/t/no-space-left-on-device-for-system-z/5954/11">a bug</a></sup><br>
|
<sup>³ Beta support until Travis CI fixes <a href="https://travis-ci.community/t/no-space-left-on-device-for-system-z/5954/11">a bug</a></sup><br>
|
||||||
<sup>⁴ Only Python 3.9 beta 3 is supported, until <a href="https://github.com/pypa/manylinux/issues/758">a bug</a> in building the manylinux2014 is fixed</sup><br>
|
|
||||||
|
|
||||||
- Builds manylinux, macOS and Windows wheels for CPython and PyPy using Azure Pipelines, Travis CI, AppVeyor, and CircleCI
|
- Builds manylinux, macOS and Windows wheels for CPython and PyPy using Azure Pipelines, Travis CI, AppVeyor, and CircleCI
|
||||||
- Bundles shared library dependencies on Linux and macOS through [auditwheel](https://github.com/pypa/auditwheel) and [delocate](https://github.com/matthew-brett/delocate)
|
- Bundles shared library dependencies on Linux and macOS through [auditwheel](https://github.com/pypa/auditwheel) and [delocate](https://github.com/matthew-brett/delocate)
|
||||||
@@ -67,6 +67,8 @@ jobs:
|
|||||||
- services: docker
|
- services: docker
|
||||||
# and a mac build
|
# and a mac build
|
||||||
- os: osx
|
- os: osx
|
||||||
|
# PyPy 7.3.2 needs macOS >= 10.14
|
||||||
|
osx_image: xcode10.2
|
||||||
language: shell
|
language: shell
|
||||||
# and a windows build
|
# and a windows build
|
||||||
- os: windows
|
- os: windows
|
||||||
@@ -74,6 +76,8 @@ jobs:
|
|||||||
before_install:
|
before_install:
|
||||||
- choco install python --version 3.8.0
|
- choco install python --version 3.8.0
|
||||||
- export PATH="/c/Python38:/c/Python38/Scripts:$PATH"
|
- export PATH="/c/Python38:/c/Python38/Scripts:$PATH"
|
||||||
|
# make sure it's on PATH as 'python3'
|
||||||
|
- ln -s /c/Python38/python.exe /c/Python38/python3.exe
|
||||||
|
|
||||||
env:
|
env:
|
||||||
global:
|
global:
|
||||||
@@ -81,7 +85,7 @@ env:
|
|||||||
# Note: TWINE_PASSWORD is set to a PyPI API token in Travis settings
|
# Note: TWINE_PASSWORD is set to a PyPI API token in Travis settings
|
||||||
|
|
||||||
install:
|
install:
|
||||||
- python3 -m pip install cibuildwheel==1.6.0
|
- python3 -m pip install cibuildwheel==1.6.2
|
||||||
|
|
||||||
script:
|
script:
|
||||||
# build the wheels, put them into './wheelhouse'
|
# build the wheels, put them into './wheelhouse'
|
||||||
@@ -123,7 +127,7 @@ Working examples
|
|||||||
|
|
||||||
Here are some repos that use cibuildwheel.
|
Here are some repos that use cibuildwheel.
|
||||||
|
|
||||||
- [pyinstrument_cext](https://github.com/joerick/pyinstrument_cext)
|
- [pyinstrument_cext](https://github.com/joerick/pyinstrument_cext) - A simple C extension, without external dependencies, built on Travis CI/Appveyor.
|
||||||
- [websockets](https://github.com/aaugustin/websockets)
|
- [websockets](https://github.com/aaugustin/websockets)
|
||||||
- [Parselmouth](https://github.com/YannickJadoul/Parselmouth)
|
- [Parselmouth](https://github.com/YannickJadoul/Parselmouth)
|
||||||
- [python-admesh](https://github.com/admesh/python-admesh)
|
- [python-admesh](https://github.com/admesh/python-admesh)
|
||||||
@@ -140,8 +144,11 @@ Here are some repos that use cibuildwheel.
|
|||||||
- [aioquic](https://github.com/aiortc/aioquic)
|
- [aioquic](https://github.com/aiortc/aioquic)
|
||||||
- [pikepdf](https://github.com/pikepdf/pikepdf)
|
- [pikepdf](https://github.com/pikepdf/pikepdf)
|
||||||
- [fathon](https://github.com/stfbnc/fathon)
|
- [fathon](https://github.com/stfbnc/fathon)
|
||||||
|
- [etebase-py](https://github.com/etesync/etebase-py) - Python bindings to a Rust library using `setuptools-rust`, and `sccache` for improved speed, built on Travis CI.
|
||||||
|
|
||||||
> Add your repo here! Send a PR.
|
> Add your repo here! Send a PR.
|
||||||
|
>
|
||||||
|
> <sup>I'd like to include notes here to indicate why an example might be interesting to cibuildwheel users - the styles/technologies/techniques used in each. Please include that in future additions!</sup>
|
||||||
|
|
||||||
Legal note
|
Legal note
|
||||||
----------
|
----------
|
||||||
@@ -155,12 +162,26 @@ This is similar to static linking, so it might have some licence implications. C
|
|||||||
Changelog
|
Changelog
|
||||||
=========
|
=========
|
||||||
|
|
||||||
|
### 1.6.2
|
||||||
|
|
||||||
|
_9 October 2020_
|
||||||
|
|
||||||
|
- ✨ Python 3.9 updated to the final release version - v3.9.0 (#440)
|
||||||
|
- 🛠 Pypy updated to v7.3.2, adding alpha support for Python 3.7 (#430)
|
||||||
|
|
||||||
|
### 1.6.1
|
||||||
|
|
||||||
|
_20 September 2020_
|
||||||
|
|
||||||
|
- 🛠 Add PPC64LE manylinux image supporting Python 3.9. (#436)
|
||||||
|
- 📚 Add project URLs to PyPI listing (#428)
|
||||||
|
|
||||||
### 1.6.0
|
### 1.6.0
|
||||||
|
|
||||||
_9 September 2020_
|
_9 September 2020_
|
||||||
|
|
||||||
- 🌟 Add Python 3.9 support! This initial support uses release candidate
|
- 🌟 Add Python 3.9 support! This initial support uses release candidate
|
||||||
builds. You should can preparing your library for Python 3.9 now, ahead of
|
builds. You can start publishing wheels for Python 3.9 now, ahead of
|
||||||
the official release. (#382)
|
the official release. (#382)
|
||||||
|
|
||||||
Minor note - if you're building PPC64LE wheels, the manylinux image pinned
|
Minor note - if you're building PPC64LE wheels, the manylinux image pinned
|
||||||
@@ -528,6 +549,7 @@ Maintainers
|
|||||||
- Joe Rickerby [@joerick](https://github.com/joerick)
|
- Joe Rickerby [@joerick](https://github.com/joerick)
|
||||||
- Yannick Jadoul [@YannickJadoul](https://github.com/YannickJadoul)
|
- Yannick Jadoul [@YannickJadoul](https://github.com/YannickJadoul)
|
||||||
- Matthieu Darbois [@mayeut](https://github.com/mayeut)
|
- Matthieu Darbois [@mayeut](https://github.com/mayeut)
|
||||||
|
- Henry Schreiner [@henryiii](https://github.com/henryiii)
|
||||||
|
|
||||||
Credits
|
Credits
|
||||||
-------
|
-------
|
||||||
|
|||||||
+1
-9
@@ -1,7 +1,4 @@
|
|||||||
environment:
|
environment:
|
||||||
# workaround an appveyor bug on macos
|
|
||||||
# see https://github.com/appveyor/ci/issues/3376#issuecomment-611314299
|
|
||||||
APPVEYOR_CONSOLE_DISABLE_PTY: true
|
|
||||||
matrix:
|
matrix:
|
||||||
- APPVEYOR_BUILD_WORKER_IMAGE: Ubuntu
|
- APPVEYOR_BUILD_WORKER_IMAGE: Ubuntu
|
||||||
APPVEYOR_JOB_NAME: "python37-x64-ubuntu"
|
APPVEYOR_JOB_NAME: "python37-x64-ubuntu"
|
||||||
@@ -10,11 +7,6 @@ environment:
|
|||||||
- APPVEYOR_BUILD_WORKER_IMAGE: macos-mojave
|
- APPVEYOR_BUILD_WORKER_IMAGE: macos-mojave
|
||||||
APPVEYOR_JOB_NAME: "python37-x64-macos-mojave"
|
APPVEYOR_JOB_NAME: "python37-x64-macos-mojave"
|
||||||
|
|
||||||
# while pypy libffi dependency is failing the build, allow failures on macos
|
|
||||||
matrix:
|
|
||||||
allow_failures:
|
|
||||||
- APPVEYOR_BUILD_WORKER_IMAGE: macos-mojave
|
|
||||||
|
|
||||||
stack: python 3.7
|
stack: python 3.7
|
||||||
|
|
||||||
build: off
|
build: off
|
||||||
@@ -24,7 +16,7 @@ init:
|
|||||||
- ps: |
|
- ps: |
|
||||||
$BRANCH = if ($env:APPVEYOR_PULL_REQUEST_HEAD_REPO_BRANCH) { $env:APPVEYOR_PULL_REQUEST_HEAD_REPO_BRANCH } else { $env:APPVEYOR_REPO_BRANCH }
|
$BRANCH = if ($env:APPVEYOR_PULL_REQUEST_HEAD_REPO_BRANCH) { $env:APPVEYOR_PULL_REQUEST_HEAD_REPO_BRANCH } else { $env:APPVEYOR_REPO_BRANCH }
|
||||||
if (-not ($BRANCH -eq 'master' -or $BRANCH.ToLower().StartsWith('appveyor-'))) {
|
if (-not ($BRANCH -eq 'master' -or $BRANCH.ToLower().StartsWith('appveyor-'))) {
|
||||||
$env:PYTEST_ADDOPTS='-k "unit_test or _basic" --suppress-no-test-exit-code'
|
$env:PYTEST_ADDOPTS='-k "unit_test or test_0_basic" --suppress-no-test-exit-code'
|
||||||
}
|
}
|
||||||
|
|
||||||
install: python -m pip install -r requirements-dev.txt pytest-custom-exit-code
|
install: python -m pip install -r requirements-dev.txt pytest-custom-exit-code
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ subprocess.check_call([
|
|||||||
'--upgrade',
|
'--upgrade',
|
||||||
'cibuildwheel/resources/constraints.in',
|
'cibuildwheel/resources/constraints.in',
|
||||||
])
|
])
|
||||||
for python_version in ['27', '35', '36']:
|
for python_version in ['27', '35', '36', '37']:
|
||||||
subprocess.check_call([
|
subprocess.check_call([
|
||||||
f'./env{python_version}/bin/pip-compile',
|
f'./env{python_version}/bin/pip-compile',
|
||||||
'--allow-unsafe',
|
'--allow-unsafe',
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
__version__ = '1.6.0'
|
__version__ = '1.6.2'
|
||||||
|
|||||||
@@ -60,6 +60,7 @@ def get_python_configurations(build_selector: BuildSelector) -> List[PythonConfi
|
|||||||
PythonConfiguration(version='3.9', identifier='cp39-manylinux_i686', path_str='/opt/python/cp39-cp39'),
|
PythonConfiguration(version='3.9', identifier='cp39-manylinux_i686', path_str='/opt/python/cp39-cp39'),
|
||||||
PythonConfiguration(version='2.7', identifier='pp27-manylinux_x86_64', path_str='/opt/python/pp27-pypy_73'),
|
PythonConfiguration(version='2.7', identifier='pp27-manylinux_x86_64', path_str='/opt/python/pp27-pypy_73'),
|
||||||
PythonConfiguration(version='3.6', identifier='pp36-manylinux_x86_64', path_str='/opt/python/pp36-pypy36_pp73'),
|
PythonConfiguration(version='3.6', identifier='pp36-manylinux_x86_64', path_str='/opt/python/pp36-pypy36_pp73'),
|
||||||
|
PythonConfiguration(version='3.7', identifier='pp37-manylinux_x86_64', path_str='/opt/python/pp37-pypy37_pp73'),
|
||||||
PythonConfiguration(version='3.5', identifier='cp35-manylinux_aarch64', path_str='/opt/python/cp35-cp35m'),
|
PythonConfiguration(version='3.5', identifier='cp35-manylinux_aarch64', path_str='/opt/python/cp35-cp35m'),
|
||||||
PythonConfiguration(version='3.6', identifier='cp36-manylinux_aarch64', path_str='/opt/python/cp36-cp36m'),
|
PythonConfiguration(version='3.6', identifier='cp36-manylinux_aarch64', path_str='/opt/python/cp36-cp36m'),
|
||||||
PythonConfiguration(version='3.7', identifier='cp37-manylinux_aarch64', path_str='/opt/python/cp37-cp37m'),
|
PythonConfiguration(version='3.7', identifier='cp37-manylinux_aarch64', path_str='/opt/python/cp37-cp37m'),
|
||||||
|
|||||||
@@ -38,10 +38,11 @@ def get_python_configurations(build_selector: BuildSelector) -> List[PythonConfi
|
|||||||
PythonConfiguration(version='3.6', identifier='cp36-macosx_x86_64', url='https://www.python.org/ftp/python/3.6.8/python-3.6.8-macosx10.9.pkg'),
|
PythonConfiguration(version='3.6', identifier='cp36-macosx_x86_64', url='https://www.python.org/ftp/python/3.6.8/python-3.6.8-macosx10.9.pkg'),
|
||||||
PythonConfiguration(version='3.7', identifier='cp37-macosx_x86_64', url='https://www.python.org/ftp/python/3.7.8/python-3.7.8-macosx10.9.pkg'),
|
PythonConfiguration(version='3.7', identifier='cp37-macosx_x86_64', url='https://www.python.org/ftp/python/3.7.8/python-3.7.8-macosx10.9.pkg'),
|
||||||
PythonConfiguration(version='3.8', identifier='cp38-macosx_x86_64', url='https://www.python.org/ftp/python/3.8.4/python-3.8.4-macosx10.9.pkg'),
|
PythonConfiguration(version='3.8', identifier='cp38-macosx_x86_64', url='https://www.python.org/ftp/python/3.8.4/python-3.8.4-macosx10.9.pkg'),
|
||||||
PythonConfiguration(version='3.9', identifier='cp39-macosx_x86_64', url='https://www.python.org/ftp/python/3.9.0/python-3.9.0rc1-macosx10.9.pkg'),
|
PythonConfiguration(version='3.9', identifier='cp39-macosx_x86_64', url='https://www.python.org/ftp/python/3.9.0/python-3.9.0-macosx10.9.pkg'),
|
||||||
# PyPy
|
# PyPy
|
||||||
PythonConfiguration(version='2.7', identifier='pp27-macosx_x86_64', url='https://downloads.python.org/pypy/pypy2.7-v7.3.1-osx64.tar.bz2'),
|
PythonConfiguration(version='2.7', identifier='pp27-macosx_x86_64', url='https://downloads.python.org/pypy/pypy2.7-v7.3.2-osx64.tar.bz2'),
|
||||||
PythonConfiguration(version='3.6', identifier='pp36-macosx_x86_64', url='https://downloads.python.org/pypy/pypy3.6-v7.3.1-osx64.tar.bz2'),
|
PythonConfiguration(version='3.6', identifier='pp36-macosx_x86_64', url='https://downloads.python.org/pypy/pypy3.6-v7.3.2-osx64.tar.bz2'),
|
||||||
|
PythonConfiguration(version='3.7', identifier='pp37-macosx_x86_64', url='https://downloads.python.org/pypy/pypy3.7-v7.3.2-osx64.tar.bz2'),
|
||||||
]
|
]
|
||||||
|
|
||||||
# skip builds as required
|
# skip builds as required
|
||||||
|
|||||||
@@ -10,17 +10,17 @@ contextlib2==0.6.0.post1 # via importlib-metadata, importlib-resources
|
|||||||
delocate==0.8.2 # via -r cibuildwheel/resources/constraints.in
|
delocate==0.8.2 # via -r cibuildwheel/resources/constraints.in
|
||||||
distlib==0.3.1 # via virtualenv
|
distlib==0.3.1 # via virtualenv
|
||||||
filelock==3.0.12 # via virtualenv
|
filelock==3.0.12 # via virtualenv
|
||||||
importlib-metadata==1.7.0 # via virtualenv
|
importlib-metadata==2.0.0 # via virtualenv
|
||||||
importlib-resources==3.0.0 # via virtualenv
|
importlib-resources==3.0.0 # via virtualenv
|
||||||
pathlib2==2.3.5 # via importlib-metadata, importlib-resources, virtualenv
|
pathlib2==2.3.5 # via importlib-metadata, importlib-resources, virtualenv
|
||||||
scandir==1.10.0 # via pathlib2
|
scandir==1.10.0 # via pathlib2
|
||||||
singledispatch==3.4.0.3 # via importlib-resources
|
singledispatch==3.4.0.3 # via importlib-resources
|
||||||
six==1.15.0 # via pathlib2, virtualenv
|
six==1.15.0 # via pathlib2, virtualenv
|
||||||
typing==3.7.4.3 # via importlib-resources
|
typing==3.7.4.3 # via importlib-resources
|
||||||
virtualenv==20.0.31 # via -r cibuildwheel/resources/constraints.in
|
virtualenv==20.0.33 # via -r cibuildwheel/resources/constraints.in
|
||||||
wheel==0.35.1 # via -r cibuildwheel/resources/constraints.in, delocate
|
wheel==0.35.1 # via -r cibuildwheel/resources/constraints.in, delocate
|
||||||
zipp==1.2.0 # via importlib-metadata, importlib-resources
|
zipp==1.2.0 # via importlib-metadata, importlib-resources
|
||||||
|
|
||||||
# The following packages are considered to be unsafe in a requirements file:
|
# The following packages are considered to be unsafe in a requirements file:
|
||||||
pip==20.2.2 # via -r cibuildwheel/resources/constraints.in
|
pip==20.2.3 # via -r cibuildwheel/resources/constraints.in
|
||||||
setuptools==44.1.1 # via -r cibuildwheel/resources/constraints.in
|
setuptools==44.1.1 # via -r cibuildwheel/resources/constraints.in
|
||||||
|
|||||||
@@ -8,13 +8,13 @@ appdirs==1.4.4 # via virtualenv
|
|||||||
delocate==0.8.2 # via -r cibuildwheel/resources/constraints.in
|
delocate==0.8.2 # via -r cibuildwheel/resources/constraints.in
|
||||||
distlib==0.3.1 # via virtualenv
|
distlib==0.3.1 # via virtualenv
|
||||||
filelock==3.0.12 # via virtualenv
|
filelock==3.0.12 # via virtualenv
|
||||||
importlib-metadata==1.7.0 # via virtualenv
|
importlib-metadata==2.0.0 # via virtualenv
|
||||||
importlib-resources==3.0.0 # via virtualenv
|
importlib-resources==3.0.0 # via virtualenv
|
||||||
six==1.15.0 # via virtualenv
|
six==1.15.0 # via virtualenv
|
||||||
virtualenv==20.0.31 # via -r cibuildwheel/resources/constraints.in
|
virtualenv==20.0.33 # via -r cibuildwheel/resources/constraints.in
|
||||||
wheel==0.35.1 # via -r cibuildwheel/resources/constraints.in, delocate
|
wheel==0.35.1 # via -r cibuildwheel/resources/constraints.in, delocate
|
||||||
zipp==1.2.0 # via importlib-metadata, importlib-resources
|
zipp==1.2.0 # via importlib-metadata, importlib-resources
|
||||||
|
|
||||||
# The following packages are considered to be unsafe in a requirements file:
|
# The following packages are considered to be unsafe in a requirements file:
|
||||||
pip==20.2.2 # via -r cibuildwheel/resources/constraints.in
|
pip==20.2.3 # via -r cibuildwheel/resources/constraints.in
|
||||||
setuptools==50.3.0 # via -r cibuildwheel/resources/constraints.in
|
setuptools==50.3.0 # via -r cibuildwheel/resources/constraints.in
|
||||||
|
|||||||
@@ -8,13 +8,13 @@ appdirs==1.4.4 # via virtualenv
|
|||||||
delocate==0.8.2 # via -r cibuildwheel/resources/constraints.in
|
delocate==0.8.2 # via -r cibuildwheel/resources/constraints.in
|
||||||
distlib==0.3.1 # via virtualenv
|
distlib==0.3.1 # via virtualenv
|
||||||
filelock==3.0.12 # via virtualenv
|
filelock==3.0.12 # via virtualenv
|
||||||
importlib-metadata==1.7.0 # via virtualenv
|
importlib-metadata==2.0.0 # via virtualenv
|
||||||
importlib-resources==3.0.0 # via virtualenv
|
importlib-resources==3.0.0 # via virtualenv
|
||||||
six==1.15.0 # via virtualenv
|
six==1.15.0 # via virtualenv
|
||||||
virtualenv==20.0.31 # via -r cibuildwheel/resources/constraints.in
|
virtualenv==20.0.33 # via -r cibuildwheel/resources/constraints.in
|
||||||
wheel==0.35.1 # via -r cibuildwheel/resources/constraints.in, delocate
|
wheel==0.35.1 # via -r cibuildwheel/resources/constraints.in, delocate
|
||||||
zipp==3.1.0 # via importlib-metadata, importlib-resources
|
zipp==3.3.0 # via importlib-metadata, importlib-resources
|
||||||
|
|
||||||
# The following packages are considered to be unsafe in a requirements file:
|
# The following packages are considered to be unsafe in a requirements file:
|
||||||
pip==20.2.2 # via -r cibuildwheel/resources/constraints.in
|
pip==20.2.3 # via -r cibuildwheel/resources/constraints.in
|
||||||
setuptools==50.3.0 # via -r cibuildwheel/resources/constraints.in
|
setuptools==50.3.0 # via -r cibuildwheel/resources/constraints.in
|
||||||
|
|||||||
@@ -0,0 +1,19 @@
|
|||||||
|
#
|
||||||
|
# This file is autogenerated by pip-compile
|
||||||
|
# To update, run:
|
||||||
|
#
|
||||||
|
# bin/update_constraints.py
|
||||||
|
#
|
||||||
|
appdirs==1.4.4 # via virtualenv
|
||||||
|
delocate==0.8.2 # via -r cibuildwheel/resources/constraints.in
|
||||||
|
distlib==0.3.1 # via virtualenv
|
||||||
|
filelock==3.0.12 # via virtualenv
|
||||||
|
importlib-metadata==2.0.0 # via virtualenv
|
||||||
|
six==1.15.0 # via virtualenv
|
||||||
|
virtualenv==20.0.33 # via -r cibuildwheel/resources/constraints.in
|
||||||
|
wheel==0.35.1 # via -r cibuildwheel/resources/constraints.in, delocate
|
||||||
|
zipp==3.3.0 # via importlib-metadata
|
||||||
|
|
||||||
|
# The following packages are considered to be unsafe in a requirements file:
|
||||||
|
pip==20.2.3 # via -r cibuildwheel/resources/constraints.in
|
||||||
|
setuptools==50.3.0 # via -r cibuildwheel/resources/constraints.in
|
||||||
@@ -8,12 +8,10 @@ appdirs==1.4.4 # via virtualenv
|
|||||||
delocate==0.8.2 # via -r cibuildwheel/resources/constraints.in
|
delocate==0.8.2 # via -r cibuildwheel/resources/constraints.in
|
||||||
distlib==0.3.1 # via virtualenv
|
distlib==0.3.1 # via virtualenv
|
||||||
filelock==3.0.12 # via virtualenv
|
filelock==3.0.12 # via virtualenv
|
||||||
importlib-metadata==1.7.0 # via virtualenv
|
|
||||||
six==1.15.0 # via virtualenv
|
six==1.15.0 # via virtualenv
|
||||||
virtualenv==20.0.31 # via -r cibuildwheel/resources/constraints.in
|
virtualenv==20.0.33 # via -r cibuildwheel/resources/constraints.in
|
||||||
wheel==0.35.1 # via -r cibuildwheel/resources/constraints.in, delocate
|
wheel==0.35.1 # via -r cibuildwheel/resources/constraints.in, delocate
|
||||||
zipp==3.1.0 # via importlib-metadata
|
|
||||||
|
|
||||||
# The following packages are considered to be unsafe in a requirements file:
|
# The following packages are considered to be unsafe in a requirements file:
|
||||||
pip==20.2.2 # via -r cibuildwheel/resources/constraints.in
|
pip==20.2.3 # via -r cibuildwheel/resources/constraints.in
|
||||||
setuptools==50.3.0 # via -r cibuildwheel/resources/constraints.in
|
setuptools==50.3.0 # via -r cibuildwheel/resources/constraints.in
|
||||||
|
|||||||
@@ -1,22 +1,21 @@
|
|||||||
[x86_64]
|
[x86_64]
|
||||||
manylinux1 = quay.io/pypa/manylinux1_x86_64:2020-08-20-a535ba4
|
manylinux1 = quay.io/pypa/manylinux1_x86_64:2020-10-06-c4a4a7c
|
||||||
manylinux2010 = quay.io/pypa/manylinux2010_x86_64:2020-08-20-df89e22
|
manylinux2010 = quay.io/pypa/manylinux2010_x86_64:2020-10-06-786a931
|
||||||
manylinux2014 = quay.io/pypa/manylinux2014_x86_64:2020-08-29-f97fd86
|
manylinux2014 = quay.io/pypa/manylinux2014_x86_64:2020-10-06-b2ca7a1
|
||||||
|
|
||||||
[i686]
|
[i686]
|
||||||
manylinux1 = quay.io/pypa/manylinux1_i686:2020-08-20-a535ba4
|
manylinux1 = quay.io/pypa/manylinux1_i686:2020-10-06-c4a4a7c
|
||||||
manylinux2010 = quay.io/pypa/manylinux2010_i686:2020-08-20-df89e22
|
manylinux2010 = quay.io/pypa/manylinux2010_i686:2020-10-06-786a931
|
||||||
manylinux2014 = quay.io/pypa/manylinux2014_i686:2020-08-29-f97fd86
|
manylinux2014 = quay.io/pypa/manylinux2014_i686:2020-10-06-b2ca7a1
|
||||||
|
|
||||||
[pypy_x86_64]
|
[pypy_x86_64]
|
||||||
manylinux2010 = pypywheels/manylinux2010-pypy_x86_64:2020-07-02-fd8c128
|
manylinux2010 = pypywheels/manylinux2010-pypy_x86_64:2020-09-26-8f210b5
|
||||||
|
|
||||||
[aarch64]
|
[aarch64]
|
||||||
manylinux2014 = quay.io/pypa/manylinux2014_aarch64:2020-08-29-f97fd86
|
manylinux2014 = quay.io/pypa/manylinux2014_aarch64:2020-10-06-b2ca7a1
|
||||||
|
|
||||||
[ppc64le]
|
[ppc64le]
|
||||||
manylinux2014 = quay.io/pypa/manylinux2014_ppc64le:2020-08-03-bb4aa00
|
manylinux2014 = quay.io/pypa/manylinux2014_ppc64le:2020-10-06-b2ca7a1
|
||||||
|
|
||||||
[s390x]
|
[s390x]
|
||||||
manylinux2014 = quay.io/pypa/manylinux2014_s390x:2020-08-29-f97fd86
|
manylinux2014 = quay.io/pypa/manylinux2014_s390x:2020-10-06-b2ca7a1
|
||||||
|
|
||||||
|
|||||||
@@ -58,11 +58,12 @@ def get_python_configurations(build_selector: BuildSelector) -> List[PythonConfi
|
|||||||
PythonConfiguration(version='3.7.8', arch='64', identifier='cp37-win_amd64', url=None),
|
PythonConfiguration(version='3.7.8', arch='64', identifier='cp37-win_amd64', url=None),
|
||||||
PythonConfiguration(version='3.8.4', arch='32', identifier='cp38-win32', url=None),
|
PythonConfiguration(version='3.8.4', arch='32', identifier='cp38-win32', url=None),
|
||||||
PythonConfiguration(version='3.8.4', arch='64', identifier='cp38-win_amd64', url=None),
|
PythonConfiguration(version='3.8.4', arch='64', identifier='cp38-win_amd64', url=None),
|
||||||
PythonConfiguration(version='3.9.0-rc1', arch='32', identifier='cp39-win32', url=None),
|
PythonConfiguration(version='3.9.0', arch='32', identifier='cp39-win32', url=None),
|
||||||
PythonConfiguration(version='3.9.0-rc1', arch='64', identifier='cp39-win_amd64', url=None),
|
PythonConfiguration(version='3.9.0', arch='64', identifier='cp39-win_amd64', url=None),
|
||||||
# PyPy
|
# PyPy
|
||||||
PythonConfiguration(version='2.7', arch='32', identifier='pp27-win32', url='https://downloads.python.org/pypy/pypy2.7-v7.3.1-win32.zip'),
|
PythonConfiguration(version='2.7', arch='32', identifier='pp27-win32', url='https://downloads.python.org/pypy/pypy2.7-v7.3.2-win32.zip'),
|
||||||
PythonConfiguration(version='3.6', arch='32', identifier='pp36-win32', url='https://downloads.python.org/pypy/pypy3.6-v7.3.1-win32.zip'),
|
PythonConfiguration(version='3.6', arch='32', identifier='pp36-win32', url='https://downloads.python.org/pypy/pypy3.6-v7.3.2-win32.zip'),
|
||||||
|
PythonConfiguration(version='3.7', arch='32', identifier='pp37-win32', url='https://downloads.python.org/pypy/pypy3.7-v7.3.2-win32.zip'),
|
||||||
]
|
]
|
||||||
|
|
||||||
if IS_RUNNING_ON_TRAVIS:
|
if IS_RUNNING_ON_TRAVIS:
|
||||||
|
|||||||
@@ -38,29 +38,69 @@ cibuildwheel's _minimal_ example configs can be tested on a simple project on ci
|
|||||||
|
|
||||||
To test minimal configs, make sure you have a clean git repo, then run the script:
|
To test minimal configs, make sure you have a clean git repo, then run the script:
|
||||||
|
|
||||||
|
```bash
|
||||||
bin/run_example_ci_configs.py
|
bin/run_example_ci_configs.py
|
||||||
|
```
|
||||||
|
|
||||||
The script will create an isolated 'orphan' commit containing all the minimal config CI files, and a simple C extension project, and push that to a branch on the `origin` repo. The project's CI is already set up to run on branch push, so will begin testing.
|
The script will create an isolated 'orphan' commit containing all the minimal config CI files, and a simple C extension project, and push that to a branch on the `origin` repo. The project's CI is already set up to run on branch push, so will begin testing.
|
||||||
|
|
||||||
The script then outputs a Markdown table that can be copy/pasted into a PR to monitor and record the test.
|
The script then outputs a Markdown table that can be copy/pasted into a PR to monitor and record the test.
|
||||||
|
|
||||||
|
## Preparing environments
|
||||||
|
|
||||||
|
The dependency update script in the next section requires multiple python versions installed. One way to do this is to use `pyenv`:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
pyenv install 2.7.18
|
||||||
|
pyenv install 3.5.9
|
||||||
|
pyenv install 3.6.11
|
||||||
|
pyenv install 3.7.8
|
||||||
|
# Optionally add 3.8 and make it the local version;
|
||||||
|
# otherwise assuming 3.8+ already is your current python version
|
||||||
|
```
|
||||||
|
|
||||||
|
Then, you need to make the required virtual environments:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
$(pyenv prefix 2.7.18)/bin/python -m pip install virtualenv
|
||||||
|
$(pyenv prefix 2.7.18)/bin/python -m virtualenv env27
|
||||||
|
$(pyenv prefix 3.5.9)/bin/python -m venv env35
|
||||||
|
$(pyenv prefix 3.6.11)/bin/python -m venv env36
|
||||||
|
$(pyenv prefix 3.7.8)/bin/python -m venv env37
|
||||||
|
```
|
||||||
|
|
||||||
|
<!-- Note for fish users: use zsh/bash for these lines for now, there's not a nice one-line fish replacement -->
|
||||||
|
|
||||||
|
And, you need to install the requirements into each environment:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
for f in env*/bin/pip; do $f install pip-tools; done
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
## Making a release
|
## Making a release
|
||||||
|
|
||||||
Before making a release, ensure pinned dependencies are up-to-date. Run the script:
|
Before making a release, ensure pinned dependencies are up-to-date. Run the script:
|
||||||
|
|
||||||
|
```bash
|
||||||
bin/make_dependency_update_pr.py
|
bin/make_dependency_update_pr.py
|
||||||
|
```
|
||||||
|
|
||||||
If updates are needed, this will push a PR with those updates for the CI to test. Once green, merge this PR.
|
If updates are needed, this will push a PR with those updates for the CI to test. Once green, merge this PR.
|
||||||
|
|
||||||
Then, increment the project version number using:
|
Then, increment the project version number using:
|
||||||
|
|
||||||
|
```bash
|
||||||
bin/bump_version.py
|
bin/bump_version.py
|
||||||
|
```
|
||||||
|
|
||||||
You'll be prompted to enter the new version number. Update the changelog when prompted. The script will create a 'bump version' commit and version tag.
|
You'll be prompted to enter the new version number. Update the changelog when prompted. The script will create a 'bump version' commit and version tag.
|
||||||
|
|
||||||
Finally, cut the release and upload to PyPI/Github.
|
Finally, cut the release and upload to PyPI/Github.
|
||||||
|
|
||||||
|
```bash
|
||||||
rm -rf dist
|
rm -rf dist
|
||||||
python setup.py sdist bdist_wheel
|
python setup.py sdist bdist_wheel
|
||||||
twine upload dist/*
|
twine upload dist/*
|
||||||
git push && git push --tags
|
git push && git push --tags
|
||||||
|
```
|
||||||
|
|||||||
+6
-3
@@ -86,13 +86,16 @@ When setting the options, you can use shell-style globbing syntax (as per [`fnma
|
|||||||
| Python 3.6 | cp36-macosx_x86_64 | cp36-manylinux_x86_64 | cp36-manylinux_i686 | cp36-win_amd64 | cp36-win32 | cp36-manylinux_aarch64 | cp36-manylinux_ppc64le | cp36-manylinux_s390x |
|
| Python 3.6 | cp36-macosx_x86_64 | cp36-manylinux_x86_64 | cp36-manylinux_i686 | cp36-win_amd64 | cp36-win32 | cp36-manylinux_aarch64 | cp36-manylinux_ppc64le | cp36-manylinux_s390x |
|
||||||
| Python 3.7 | cp37-macosx_x86_64 | cp37-manylinux_x86_64 | cp37-manylinux_i686 | cp37-win_amd64 | cp37-win32 | cp37-manylinux_aarch64 | cp37-manylinux_ppc64le | cp37-manylinux_s390x |
|
| Python 3.7 | cp37-macosx_x86_64 | cp37-manylinux_x86_64 | cp37-manylinux_i686 | cp37-win_amd64 | cp37-win32 | cp37-manylinux_aarch64 | cp37-manylinux_ppc64le | cp37-manylinux_s390x |
|
||||||
| Python 3.8 | cp38-macosx_x86_64 | cp38-manylinux_x86_64 | cp38-manylinux_i686 | cp38-win_amd64 | cp38-win32 | cp38-manylinux_aarch64 | cp38-manylinux_ppc64le | cp38-manylinux_s390x |
|
| Python 3.8 | cp38-macosx_x86_64 | cp38-manylinux_x86_64 | cp38-manylinux_i686 | cp38-win_amd64 | cp38-win32 | cp38-manylinux_aarch64 | cp38-manylinux_ppc64le | cp38-manylinux_s390x |
|
||||||
| PyPy 2.7 v7.3.0 | pp27-macosx_x86_64 | pp27-manylinux_x86_64 | | | pp27-win32 | | | |
|
| Python 3.9 | cp39-macosx_x86_64 | cp39-manylinux_x86_64 | cp39-manylinux_i686 | cp39-win_amd64 | cp39-win32 | cp39-manylinux_aarch64 | cp39-manylinux_ppc64le | cp39-manylinux_s390x |
|
||||||
| PyPy 3.6 v7.3.0 | pp36-macosx_x86_64 | pp36-manylinux_x86_64 | | | pp36-win32 | | | |
|
| PyPy 2.7 v7.3.2 | pp27-macosx_x86_64 | pp27-manylinux_x86_64 | | | pp27-win32 | | | |
|
||||||
|
| PyPy 3.6 v7.3.2 | pp36-macosx_x86_64 | pp36-manylinux_x86_64 | | | pp36-win32 | | | |
|
||||||
|
| PyPy 3.7 (alpha) v7.3.2 | pp37-macosx_x86_64 | pp37-manylinux_x86_64 | | | pp37-win32 | | | |
|
||||||
|
|
||||||
|
|
||||||
The list of supported and currently selected build identifiers can also be retrieved by passing the `--print-build-identifiers` flag to `cibuildwheel`.
|
The list of supported and currently selected build identifiers can also be retrieved by passing the `--print-build-identifiers` flag to `cibuildwheel`.
|
||||||
The format is `python_tag-platform_tag`, with tags similar to those in [PEP 425](https://www.python.org/dev/peps/pep-0425/#details).
|
The format is `python_tag-platform_tag`, with tags similar to those in [PEP 425](https://www.python.org/dev/peps/pep-0425/#details).
|
||||||
|
|
||||||
For CPython, the minimally supported macOS version is 10.9; for PyPy 2.7 and PyPy 3.6, respectively macOS 10.7 and 10.13 or higher is required.
|
For CPython, the minimally supported macOS version is 10.9; for PyPy 2.7 and PyPy 3.6/3.7, respectively macOS 10.7 and 10.13 or higher is required.
|
||||||
|
|
||||||
#### Examples
|
#### Examples
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -48,7 +48,7 @@ Commit this file, enable building of your repo on Travis CI, and push.
|
|||||||
|
|
||||||
Then setup a deployment method by following the [Travis CI deployment docs](https://docs.travis-ci.com/user/deployment/), or see [Delivering to PyPI](deliver-to-pypi.md). For more info on `.travis.yml`, check out the [docs](https://docs.travis-ci.com/).
|
Then setup a deployment method by following the [Travis CI deployment docs](https://docs.travis-ci.com/user/deployment/), or see [Delivering to PyPI](deliver-to-pypi.md). For more info on `.travis.yml`, check out the [docs](https://docs.travis-ci.com/).
|
||||||
|
|
||||||
[`examples/travis-deploy.yml`](https://github.com/joerick/cibuildwheel/blob/master/examples/travis-deploy.yml) extends this minimal example with a demonstration of how to automatically upload the built wheels to PyPI.
|
[`examples/travis-ci-deploy.yml`](https://github.com/joerick/cibuildwheel/blob/master/examples/travis-ci-deploy.yml) extends this minimal example with a demonstration of how to automatically upload the built wheels to PyPI.
|
||||||
|
|
||||||
# CircleCI [linux/mac] {: #circleci}
|
# CircleCI [linux/mac] {: #circleci}
|
||||||
|
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ stack: python 3.7
|
|||||||
init:
|
init:
|
||||||
- cmd: set PATH=C:\Python37;C:\Python37\Scripts;%PATH%
|
- cmd: set PATH=C:\Python37;C:\Python37\Scripts;%PATH%
|
||||||
|
|
||||||
install: python -m pip install cibuildwheel==1.6.0
|
install: python -m pip install cibuildwheel==1.6.2
|
||||||
|
|
||||||
build_script: python -m cibuildwheel --output-dir wheelhouse
|
build_script: python -m cibuildwheel --output-dir wheelhouse
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ jobs:
|
|||||||
- task: UsePythonVersion@0
|
- task: UsePythonVersion@0
|
||||||
- bash: |
|
- bash: |
|
||||||
python3 -m pip install --upgrade pip
|
python3 -m pip install --upgrade pip
|
||||||
pip3 install cibuildwheel==1.6.0
|
pip3 install cibuildwheel==1.6.2
|
||||||
cibuildwheel --output-dir wheelhouse .
|
cibuildwheel --output-dir wheelhouse .
|
||||||
- task: PublishBuildArtifacts@1
|
- task: PublishBuildArtifacts@1
|
||||||
inputs: {pathtoPublish: 'wheelhouse'}
|
inputs: {pathtoPublish: 'wheelhouse'}
|
||||||
@@ -16,7 +16,7 @@ jobs:
|
|||||||
- task: UsePythonVersion@0
|
- task: UsePythonVersion@0
|
||||||
- bash: |
|
- bash: |
|
||||||
python3 -m pip install --upgrade pip
|
python3 -m pip install --upgrade pip
|
||||||
pip3 install cibuildwheel==1.6.0
|
pip3 install cibuildwheel==1.6.2
|
||||||
cibuildwheel --output-dir wheelhouse .
|
cibuildwheel --output-dir wheelhouse .
|
||||||
- task: PublishBuildArtifacts@1
|
- task: PublishBuildArtifacts@1
|
||||||
inputs: {pathtoPublish: 'wheelhouse'}
|
inputs: {pathtoPublish: 'wheelhouse'}
|
||||||
@@ -29,7 +29,7 @@ jobs:
|
|||||||
displayName: Install Visual C++ for Python 2.7
|
displayName: Install Visual C++ for Python 2.7
|
||||||
- bash: |
|
- bash: |
|
||||||
python -m pip install --upgrade pip
|
python -m pip install --upgrade pip
|
||||||
pip install cibuildwheel==1.6.0
|
pip install cibuildwheel==1.6.2
|
||||||
cibuildwheel --output-dir wheelhouse .
|
cibuildwheel --output-dir wheelhouse .
|
||||||
- task: PublishBuildArtifacts@1
|
- task: PublishBuildArtifacts@1
|
||||||
inputs: {pathtoPublish: 'wheelhouse'}
|
inputs: {pathtoPublish: 'wheelhouse'}
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ jobs:
|
|||||||
- run:
|
- run:
|
||||||
name: Build the Linux wheels.
|
name: Build the Linux wheels.
|
||||||
command: |
|
command: |
|
||||||
pip3 install --user cibuildwheel==1.6.0
|
pip3 install --user cibuildwheel==1.6.2
|
||||||
cibuildwheel --output-dir wheelhouse
|
cibuildwheel --output-dir wheelhouse
|
||||||
- store_artifacts:
|
- store_artifacts:
|
||||||
path: wheelhouse/
|
path: wheelhouse/
|
||||||
@@ -19,13 +19,14 @@ jobs:
|
|||||||
osx-wheels:
|
osx-wheels:
|
||||||
working_directory: ~/osx-wheels
|
working_directory: ~/osx-wheels
|
||||||
macos:
|
macos:
|
||||||
xcode: "10.0.0"
|
# PyPy 7.3.2 needs macOS >= 10.14
|
||||||
|
xcode: 10.2.1
|
||||||
steps:
|
steps:
|
||||||
- checkout
|
- checkout
|
||||||
- run:
|
- run:
|
||||||
name: Build the OS X wheels.
|
name: Build the OS X wheels.
|
||||||
command: |
|
command: |
|
||||||
pip3 install cibuildwheel==1.6.0
|
pip3 install cibuildwheel==1.6.2
|
||||||
cibuildwheel --output-dir wheelhouse
|
cibuildwheel --output-dir wheelhouse
|
||||||
- store_artifacts:
|
- store_artifacts:
|
||||||
path: wheelhouse/
|
path: wheelhouse/
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ jobs:
|
|||||||
|
|
||||||
- name: Install cibuildwheel
|
- name: Install cibuildwheel
|
||||||
run: |
|
run: |
|
||||||
python -m pip install cibuildwheel==1.6.0
|
python -m pip install cibuildwheel==1.6.2
|
||||||
|
|
||||||
- name: Install Visual C++ for Python 2.7
|
- name: Install Visual C++ for Python 2.7
|
||||||
if: runner.os == 'Windows'
|
if: runner.os == 'Windows'
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ jobs:
|
|||||||
|
|
||||||
- name: Install cibuildwheel
|
- name: Install cibuildwheel
|
||||||
run: |
|
run: |
|
||||||
python -m pip install cibuildwheel==1.6.0
|
python -m pip install cibuildwheel==1.6.2
|
||||||
|
|
||||||
- name: Install Visual C++ for Python 2.7
|
- name: Install Visual C++ for Python 2.7
|
||||||
if: runner.os == 'Windows'
|
if: runner.os == 'Windows'
|
||||||
|
|||||||
@@ -9,6 +9,8 @@ jobs:
|
|||||||
- services: docker
|
- services: docker
|
||||||
# and a mac build
|
# and a mac build
|
||||||
- os: osx
|
- os: osx
|
||||||
|
# PyPy 7.3.2 needs macOS >= 10.14
|
||||||
|
osx_image: xcode10.2
|
||||||
language: shell
|
language: shell
|
||||||
# and a windows build
|
# and a windows build
|
||||||
- os: windows
|
- os: windows
|
||||||
@@ -25,7 +27,7 @@ env:
|
|||||||
# Note: TWINE_PASSWORD is set to a PyPI API token in Travis settings
|
# Note: TWINE_PASSWORD is set to a PyPI API token in Travis settings
|
||||||
|
|
||||||
install:
|
install:
|
||||||
- python3 -m pip install cibuildwheel==1.6.0
|
- python3 -m pip install cibuildwheel==1.6.2
|
||||||
|
|
||||||
script:
|
script:
|
||||||
# build the wheels, put them into './wheelhouse'
|
# build the wheels, put them into './wheelhouse'
|
||||||
|
|||||||
@@ -15,6 +15,8 @@ jobs:
|
|||||||
arch: s390x
|
arch: s390x
|
||||||
# and a mac build
|
# and a mac build
|
||||||
- os: osx
|
- os: osx
|
||||||
|
# PyPy 7.3.2 needs macOS >= 10.14
|
||||||
|
osx_image: xcode10.2
|
||||||
language: shell
|
language: shell
|
||||||
# and a windows build
|
# and a windows build
|
||||||
- os: windows
|
- os: windows
|
||||||
@@ -26,7 +28,7 @@ jobs:
|
|||||||
- ln -s /c/Python38/python.exe /c/Python38/python3.exe
|
- ln -s /c/Python38/python.exe /c/Python38/python3.exe
|
||||||
|
|
||||||
install:
|
install:
|
||||||
- python3 -m pip install cibuildwheel==1.6.0
|
- python3 -m pip install cibuildwheel==1.6.2
|
||||||
|
|
||||||
script:
|
script:
|
||||||
# build the wheels, put them into './wheelhouse'
|
# build the wheels, put them into './wheelhouse'
|
||||||
|
|||||||
@@ -55,7 +55,7 @@ jobs:
|
|||||||
- stage: deploy
|
- stage: deploy
|
||||||
name: Build and deploy Linux wheels
|
name: Build and deploy Linux wheels
|
||||||
services: docker
|
services: docker
|
||||||
install: python3 -m pip install cibuildwheel==1.6.0
|
install: python3 -m pip install cibuildwheel==1.6.2
|
||||||
script: python3 -m cibuildwheel --output-dir wheelhouse
|
script: python3 -m cibuildwheel --output-dir wheelhouse
|
||||||
after_success: |
|
after_success: |
|
||||||
python3 -m pip install twine
|
python3 -m pip install twine
|
||||||
@@ -64,8 +64,10 @@ jobs:
|
|||||||
- stage: deploy
|
- stage: deploy
|
||||||
name: Build and deploy macOS wheels
|
name: Build and deploy macOS wheels
|
||||||
os: osx
|
os: osx
|
||||||
|
# PyPy 7.3.2 needs macOS >= 10.14
|
||||||
|
osx_image: xcode10.2
|
||||||
language: shell
|
language: shell
|
||||||
install: python3 -m pip install cibuildwheel==1.6.0
|
install: python3 -m pip install cibuildwheel==1.6.2
|
||||||
script: python3 -m cibuildwheel --output-dir wheelhouse
|
script: python3 -m cibuildwheel --output-dir wheelhouse
|
||||||
after_success: |
|
after_success: |
|
||||||
python3 -m pip install twine
|
python3 -m pip install twine
|
||||||
@@ -75,7 +77,7 @@ jobs:
|
|||||||
name: Build and deploy Windows wheels
|
name: Build and deploy Windows wheels
|
||||||
os: windows
|
os: windows
|
||||||
language: shell
|
language: shell
|
||||||
install: python3 -m pip install cibuildwheel==1.6.0
|
install: python3 -m pip install cibuildwheel==1.6.2
|
||||||
script: python3 -m cibuildwheel --output-dir wheelhouse
|
script: python3 -m cibuildwheel --output-dir wheelhouse
|
||||||
after_success: |
|
after_success: |
|
||||||
python3 -m pip install twine
|
python3 -m pip install twine
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ long_description = (this_directory / 'README.md').read_text(encoding='utf-8')
|
|||||||
|
|
||||||
setup(
|
setup(
|
||||||
name='cibuildwheel',
|
name='cibuildwheel',
|
||||||
version='1.6.0',
|
version='1.6.2',
|
||||||
install_requires=['bashlex!=0.13', 'toml'],
|
install_requires=['bashlex!=0.13', 'toml'],
|
||||||
description="Build Python wheels on CI with minimal configuration.",
|
description="Build Python wheels on CI with minimal configuration.",
|
||||||
long_description=long_description,
|
long_description=long_description,
|
||||||
@@ -19,6 +19,10 @@ setup(
|
|||||||
author="Joe Rickerby",
|
author="Joe Rickerby",
|
||||||
author_email='joerick@mac.com',
|
author_email='joerick@mac.com',
|
||||||
url='https://github.com/joerick/cibuildwheel',
|
url='https://github.com/joerick/cibuildwheel',
|
||||||
|
project_urls={
|
||||||
|
'Changelog': 'https://github.com/joerick/cibuildwheel#changelog',
|
||||||
|
'Documentation': 'https://cibuildwheel.readthedocs.io/',
|
||||||
|
},
|
||||||
packages=['cibuildwheel', ],
|
packages=['cibuildwheel', ],
|
||||||
license="BSD",
|
license="BSD",
|
||||||
zip_safe=False,
|
zip_safe=False,
|
||||||
|
|||||||
@@ -66,6 +66,9 @@ def test_pinned_versions(tmp_path, python_version):
|
|||||||
elif python_version == '3.6':
|
elif python_version == '3.6':
|
||||||
constraint_filename = 'constraints-python36.txt'
|
constraint_filename = 'constraints-python36.txt'
|
||||||
build_pattern = '[cp]p36-*'
|
build_pattern = '[cp]p36-*'
|
||||||
|
elif python_version == '3.7':
|
||||||
|
constraint_filename = 'constraints-python37.txt'
|
||||||
|
build_pattern = '[cp]p37-*'
|
||||||
else:
|
else:
|
||||||
constraint_filename = 'constraints.txt'
|
constraint_filename = 'constraints.txt'
|
||||||
build_pattern = '[cp]p38-*'
|
build_pattern = '[cp]p38-*'
|
||||||
|
|||||||
+1
-1
@@ -94,7 +94,7 @@ def expected_wheels(package_name, package_version, manylinux_versions=None,
|
|||||||
python_abi_tags = ['cp35-cp35m', 'cp36-cp36m', 'cp37-cp37m', 'cp38-cp38', 'cp39-cp39']
|
python_abi_tags = ['cp35-cp35m', 'cp36-cp36m', 'cp37-cp37m', 'cp38-cp38', 'cp39-cp39']
|
||||||
|
|
||||||
if pm.machine() in ['x86_64', 'AMD64', 'x86']:
|
if pm.machine() in ['x86_64', 'AMD64', 'x86']:
|
||||||
python_abi_tags += ['cp27-cp27m', 'pp27-pypy_73', 'pp36-pypy36_pp73']
|
python_abi_tags += ['cp27-cp27m', 'pp27-pypy_73', 'pp36-pypy36_pp73', 'pp37-pypy37_pp73']
|
||||||
|
|
||||||
if platform == 'linux':
|
if platform == 'linux':
|
||||||
python_abi_tags.append('cp27-cp27mu') # python 2.7 has 2 different ABI on manylinux
|
python_abi_tags.append('cp27-cp27mu') # python 2.7 has 2 different ABI on manylinux
|
||||||
|
|||||||
Reference in New Issue
Block a user