From 94dead944094af6950c2b8c0046f0bd55e31e2b6 Mon Sep 17 00:00:00 2001 From: Yannick Jadoul Date: Tue, 16 Jun 2020 18:00:46 +0200 Subject: [PATCH 1/4] Add Python 3.9 (beta 3) to builds --- cibuildwheel/linux.py | 5 +++++ cibuildwheel/macos.py | 1 + cibuildwheel/windows.py | 2 ++ test/utils.py | 2 +- 4 files changed, 9 insertions(+), 1 deletion(-) diff --git a/cibuildwheel/linux.py b/cibuildwheel/linux.py index 0058c2db..257117c8 100644 --- a/cibuildwheel/linux.py +++ b/cibuildwheel/linux.py @@ -58,26 +58,31 @@ def get_python_configurations(build_selector: BuildSelector) -> List[PythonConfi PythonConfiguration(version='3.6', identifier='cp36-manylinux_x86_64', path='/opt/python/cp36-cp36m'), PythonConfiguration(version='3.7', identifier='cp37-manylinux_x86_64', path='/opt/python/cp37-cp37m'), PythonConfiguration(version='3.8', identifier='cp38-manylinux_x86_64', path='/opt/python/cp38-cp38'), + PythonConfiguration(version='3.9', identifier='cp39-manylinux_x86_64', path='/opt/python/cp39-cp39'), PythonConfiguration(version='2.7', identifier='cp27-manylinux_i686', path='/opt/python/cp27-cp27m'), PythonConfiguration(version='2.7', identifier='cp27-manylinux_i686', path='/opt/python/cp27-cp27mu'), PythonConfiguration(version='3.5', identifier='cp35-manylinux_i686', path='/opt/python/cp35-cp35m'), PythonConfiguration(version='3.6', identifier='cp36-manylinux_i686', path='/opt/python/cp36-cp36m'), PythonConfiguration(version='3.7', identifier='cp37-manylinux_i686', path='/opt/python/cp37-cp37m'), PythonConfiguration(version='3.8', identifier='cp38-manylinux_i686', path='/opt/python/cp38-cp38'), + PythonConfiguration(version='3.9', identifier='cp39-manylinux_i686', path='/opt/python/cp39-cp39'), PythonConfiguration(version='2.7', identifier='pp27-manylinux_x86_64', path='/opt/python/pp27-pypy_73'), PythonConfiguration(version='3.6', identifier='pp36-manylinux_x86_64', path='/opt/python/pp36-pypy36_pp73'), PythonConfiguration(version='3.5', identifier='cp35-manylinux_aarch64', path='/opt/python/cp35-cp35m'), PythonConfiguration(version='3.6', identifier='cp36-manylinux_aarch64', path='/opt/python/cp36-cp36m'), PythonConfiguration(version='3.7', identifier='cp37-manylinux_aarch64', path='/opt/python/cp37-cp37m'), PythonConfiguration(version='3.8', identifier='cp38-manylinux_aarch64', path='/opt/python/cp38-cp38'), + PythonConfiguration(version='3.9', identifier='cp39-manylinux_aarch64', path='/opt/python/cp39-cp39'), PythonConfiguration(version='3.5', identifier='cp35-manylinux_ppc64le', path='/opt/python/cp35-cp35m'), PythonConfiguration(version='3.6', identifier='cp36-manylinux_ppc64le', path='/opt/python/cp36-cp36m'), PythonConfiguration(version='3.7', identifier='cp37-manylinux_ppc64le', path='/opt/python/cp37-cp37m'), PythonConfiguration(version='3.8', identifier='cp38-manylinux_ppc64le', path='/opt/python/cp38-cp38'), + PythonConfiguration(version='3.9', identifier='cp39-manylinux_ppc64le', path='/opt/python/cp39-cp39'), PythonConfiguration(version='3.5', identifier='cp35-manylinux_s390x', path='/opt/python/cp35-cp35m'), PythonConfiguration(version='3.6', identifier='cp36-manylinux_s390x', path='/opt/python/cp36-cp36m'), PythonConfiguration(version='3.7', identifier='cp37-manylinux_s390x', path='/opt/python/cp37-cp37m'), PythonConfiguration(version='3.8', identifier='cp38-manylinux_s390x', path='/opt/python/cp38-cp38'), + PythonConfiguration(version='3.9', identifier='cp39-manylinux_s390x', path='/opt/python/cp39-cp39'), ] # skip builds as required return [c for c in python_configurations if matches_platform(c.identifier) and build_selector(c.identifier)] diff --git a/cibuildwheel/macos.py b/cibuildwheel/macos.py index 69a06c04..f31fbc13 100644 --- a/cibuildwheel/macos.py +++ b/cibuildwheel/macos.py @@ -43,6 +43,7 @@ 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.7', identifier='cp37-macosx_x86_64', url='https://www.python.org/ftp/python/3.7.7/python-3.7.7-macosx10.9.pkg'), PythonConfiguration(version='3.8', identifier='cp38-macosx_x86_64', url='https://www.python.org/ftp/python/3.8.3/python-3.8.3-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.0b3-macosx10.9.pkg'), # 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='3.6', identifier='pp36-macosx_x86_64', url='https://downloads.python.org/pypy/pypy3.6-v7.3.1-osx64.tar.bz2'), diff --git a/cibuildwheel/windows.py b/cibuildwheel/windows.py index c625b39a..fe535350 100644 --- a/cibuildwheel/windows.py +++ b/cibuildwheel/windows.py @@ -55,6 +55,8 @@ def get_python_configurations(build_selector: BuildSelector) -> List[PythonConfi PythonConfiguration(version='3.7.7', arch='64', identifier='cp37-win_amd64', url=None), PythonConfiguration(version='3.8.3', arch='32', identifier='cp38-win32', url=None), PythonConfiguration(version='3.8.3', arch='64', identifier='cp38-win_amd64', url=None), + PythonConfiguration(version='3.9.0-b3', arch='32', identifier='cp39-win32', url=None), + PythonConfiguration(version='3.9.0-b3', arch='64', identifier='cp39-win_amd64', url=None), # 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='3.6', arch='32', identifier='pp36-win32', url='https://downloads.python.org/pypy/pypy3.6-v7.3.1-win32.zip'), diff --git a/test/utils.py b/test/utils.py index 15ce402a..ce146e8b 100644 --- a/test/utils.py +++ b/test/utils.py @@ -90,7 +90,7 @@ def expected_wheels(package_name, package_version, manylinux_versions=None, else: manylinux_versions = ['manylinux2014'] - python_abi_tags = ['cp35-cp35m', 'cp36-cp36m', 'cp37-cp37m', 'cp38-cp38'] + python_abi_tags = ['cp35-cp35m', 'cp36-cp36m', 'cp37-cp37m', 'cp38-cp38', 'cp39-cp39'] if pm.machine() in ['x86_64', 'AMD64', 'x86']: python_abi_tags += ['cp27-cp27m', 'pp27-pypy_73', 'pp36-pypy36_pp73'] From 03ae918ec5fe64631c25b750d9a0003fe2d7c556 Mon Sep 17 00:00:00 2001 From: Yannick Jadoul Date: Tue, 16 Jun 2020 18:10:17 +0200 Subject: [PATCH 2/4] Update manylinux docker image versions --- .../resources/pinned_docker_images.cfg | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/cibuildwheel/resources/pinned_docker_images.cfg b/cibuildwheel/resources/pinned_docker_images.cfg index 534d350b..3184e923 100644 --- a/cibuildwheel/resources/pinned_docker_images.cfg +++ b/cibuildwheel/resources/pinned_docker_images.cfg @@ -1,22 +1,22 @@ [x86_64] -manylinux1 = quay.io/pypa/manylinux1_x86_64:2020-05-25-b56702d -manylinux2010 = quay.io/pypa/manylinux2010_x86_64:2020-05-20-c7bbd11 -manylinux2014 = quay.io/pypa/manylinux2014_x86_64:2020-05-17-2f8ac3b +manylinux1 = quay.io/pypa/manylinux1_x86_64:2020-06-08-eb1c4cf +manylinux2010 = quay.io/pypa/manylinux2010_x86_64:2020-06-10-41cc63f +manylinux2014 = quay.io/pypa/manylinux2014_x86_64:2020-06-08-69e9e1a [i686] -manylinux1 = quay.io/pypa/manylinux1_i686:2020-05-25-b56702d -manylinux2010 = quay.io/pypa/manylinux2010_i686:2020-05-20-c7bbd11 -manylinux2014 = quay.io/pypa/manylinux2014_i686:2020-05-17-2f8ac3b +manylinux1 = quay.io/pypa/manylinux1_i686:2020-06-08-eb1c4cf +manylinux2010 = quay.io/pypa/manylinux2010_i686:2020-06-10-41cc63f +manylinux2014 = quay.io/pypa/manylinux2014_i686:2020-06-08-69e9e1a [pypy_x86_64] manylinux2010 = pypywheels/manylinux2010-pypy_x86_64:2020-04-25-eb2cdff [aarch64] -manylinux2014 = quay.io/pypa/manylinux2014_aarch64:2020-05-17-2f8ac3b +manylinux2014 = quay.io/pypa/manylinux2014_aarch64:2020-06-08-69e9e1a [ppc64le] -manylinux2014 = quay.io/pypa/manylinux2014_ppc64le:2020-05-17-2f8ac3b +manylinux2014 = quay.io/pypa/manylinux2014_ppc64le:2020-06-08-69e9e1a [s390x] -manylinux2014 = quay.io/pypa/manylinux2014_s390x:2020-05-17-2f8ac3b +manylinux2014 = quay.io/pypa/manylinux2014_s390x:2020-05-30-73c9395 From 5a6f35fe769348277554064c0e0cb253fd2d2328 Mon Sep 17 00:00:00 2001 From: Yannick Jadoul Date: Tue, 16 Jun 2020 18:38:18 +0200 Subject: [PATCH 3/4] Skip Python 3.9 in test_docker_images.py until dockcross catches up --- test/test_docker_images.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/test_docker_images.py b/test/test_docker_images.py index f101c4fd..ddc6032b 100644 --- a/test/test_docker_images.py +++ b/test/test_docker_images.py @@ -32,10 +32,10 @@ def test(tmp_path): actual_wheels = utils.cibuildwheel_run(project_dir, add_env={ 'CIBW_MANYLINUX_X86_64_IMAGE': 'dockcross/manylinux2010-x64', 'CIBW_MANYLINUX_I686_IMAGE': 'dockcross/manylinux2010-x86', - 'CIBW_SKIP': 'pp*', + 'CIBW_SKIP': 'pp* cp39-*', }) # also check that we got the right wheels built expected_wheels = [w for w in utils.expected_wheels('spam', '0.1.0') - if '-pp' not in w] + if '-pp' not in w and '-cp39-' not in w] assert set(actual_wheels) == set(expected_wheels) From 29b25a3ab6fed4061ed129f39551caed5a338fa9 Mon Sep 17 00:00:00 2001 From: Yannick Jadoul Date: Thu, 18 Jun 2020 23:49:14 +0200 Subject: [PATCH 4/4] Update manylinux docker image versions, again --- cibuildwheel/resources/pinned_docker_images.cfg | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/cibuildwheel/resources/pinned_docker_images.cfg b/cibuildwheel/resources/pinned_docker_images.cfg index 3184e923..533a8fbc 100644 --- a/cibuildwheel/resources/pinned_docker_images.cfg +++ b/cibuildwheel/resources/pinned_docker_images.cfg @@ -1,21 +1,21 @@ [x86_64] -manylinux1 = quay.io/pypa/manylinux1_x86_64:2020-06-08-eb1c4cf -manylinux2010 = quay.io/pypa/manylinux2010_x86_64:2020-06-10-41cc63f -manylinux2014 = quay.io/pypa/manylinux2014_x86_64:2020-06-08-69e9e1a +manylinux1 = quay.io/pypa/manylinux1_x86_64:2020-06-18-0eb93b9 +manylinux2010 = quay.io/pypa/manylinux2010_x86_64:2020-06-16-1ee6b68 +manylinux2014 = quay.io/pypa/manylinux2014_x86_64:2020-06-18-f5da004 [i686] -manylinux1 = quay.io/pypa/manylinux1_i686:2020-06-08-eb1c4cf -manylinux2010 = quay.io/pypa/manylinux2010_i686:2020-06-10-41cc63f -manylinux2014 = quay.io/pypa/manylinux2014_i686:2020-06-08-69e9e1a +manylinux1 = quay.io/pypa/manylinux1_i686:2020-06-18-0eb93b9 +manylinux2010 = quay.io/pypa/manylinux2010_i686:2020-06-16-1ee6b68 +manylinux2014 = quay.io/pypa/manylinux2014_i686:2020-06-18-f5da004 [pypy_x86_64] manylinux2010 = pypywheels/manylinux2010-pypy_x86_64:2020-04-25-eb2cdff [aarch64] -manylinux2014 = quay.io/pypa/manylinux2014_aarch64:2020-06-08-69e9e1a +manylinux2014 = quay.io/pypa/manylinux2014_aarch64:2020-06-18-f5da004 [ppc64le] -manylinux2014 = quay.io/pypa/manylinux2014_ppc64le:2020-06-08-69e9e1a +manylinux2014 = quay.io/pypa/manylinux2014_ppc64le:2020-06-18-f5da004 [s390x] manylinux2014 = quay.io/pypa/manylinux2014_s390x:2020-05-30-73c9395