From c563bca05483e4ac178fc625b402f239ff46ffbf Mon Sep 17 00:00:00 2001 From: Yannick Jadoul Date: Sun, 8 Apr 2018 21:24:08 +0200 Subject: [PATCH 01/12] Adding an to make the `pip wheel` invocation more or less verbose --- README.md | 11 +++++++++++ cibuildwheel/__main__.py | 7 +++++++ cibuildwheel/linux.py | 7 ++++--- cibuildwheel/macos.py | 6 +++--- cibuildwheel/util.py | 9 +++++++++ cibuildwheel/windows.py | 6 +++--- 6 files changed, 37 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index 37e94a11..8fadb5e8 100644 --- a/README.md +++ b/README.md @@ -82,6 +82,7 @@ All being well, you should get wheels delivered to you in a few minutes. |---|---|---| | **Target wheels** | `CIBW_PLATFORM` | Override the auto-detected target platform | | | `CIBW_SKIP` | Skip certain Python versions | +| **Build parameters** | `CIBW_BUILD_VERBOSITY` | Increase or decrease the output of `pip wheel` | | **Build environment** | `CIBW_ENVIRONMENT` | Set environment variables needed during the build | | | `CIBW_BEFORE_BUILD` | Execute a shell command preparing each wheel's build | | | `CIBW_MANYLINUX1_X86_64_IMAGE` | Specify an alternative manylinx1 x86_64 docker image | @@ -166,6 +167,16 @@ Examples: - Skip Python 3.6 on Linux: `cp36-manylinux*` - Only build on Python 3.6: `cp27-* cp34-* cp35-*` +| Environment variable: `CIBW_BUILD_VERBOSITY` +| --- + +Optional. + +An number from 1 to 3 to increase the level of verbosity (corresponding to invoking pip with `-v`, `-vv`, and `-vvv`), between -1 and -3 (`-q`, `-qq`, and `-qqq`), or just 0 (default verbosity). These flags are useful while debugging a build when the output of the actual build invoked by `pip wheel` is required. + +Platform-specific variants also available: +`CIBW_BUILD_VERBOSITY_MACOS` | `CIBW_BUILD_VERBOSITY_WINDOWS` | `CIBW_BUILD_VERBOSITY_LINUX` + | Environment variable: `CIBW_ENVIRONMENT` | --- diff --git a/cibuildwheel/__main__.py b/cibuildwheel/__main__.py index b8f1ac07..ca45fe31 100644 --- a/cibuildwheel/__main__.py +++ b/cibuildwheel/__main__.py @@ -74,9 +74,15 @@ def main(): test_requires = os.environ.get('CIBW_TEST_REQUIRES', '').split() project_dir = args.project_dir before_build = get_option_from_environment('CIBW_BEFORE_BUILD', platform=platform) + build_verbosity = get_option_from_environment('CIBW_BUILD_VERBOSITY', platform=platform) or '' skip_config = os.environ.get('CIBW_SKIP', '') environment_config = get_option_from_environment('CIBW_ENVIRONMENT', platform=platform) or '' + try: + build_verbosity = min(3, max(-3, int(build_verbosity))) + except ValueError: + build_verbosity = 0 + try: environment = parse_environment(environment_config) except (EnvironmentParseError, ValueError) as e: @@ -118,6 +124,7 @@ def main(): test_command=test_command, test_requires=test_requires, before_build=before_build, + build_verbosity=build_verbosity, skip=skip, environment=environment, ) diff --git a/cibuildwheel/linux.py b/cibuildwheel/linux.py index e81e231a..c02a0fca 100644 --- a/cibuildwheel/linux.py +++ b/cibuildwheel/linux.py @@ -1,7 +1,7 @@ from __future__ import print_function import os, subprocess, sys from collections import namedtuple -from .util import prepare_command +from .util import prepare_command, get_build_verbosity_flag try: from shlex import quote as shlex_quote @@ -9,7 +9,7 @@ except ImportError: from pipes import quote as shlex_quote -def build(project_dir, package_name, output_dir, test_command, test_requires, before_build, skip, environment, manylinux1_images): +def build(project_dir, package_name, output_dir, test_command, test_requires, before_build, build_verbosity, skip, environment, manylinux1_images): try: subprocess.check_call(['docker', '--version']) except: @@ -66,7 +66,7 @@ def build(project_dir, package_name, output_dir, test_command, test_requires, be fi # Build that wheel - PATH="$PYBIN:$PATH" "$PYBIN/pip" wheel . -w /tmp/built_wheel --no-deps + PATH="$PYBIN:$PATH" "$PYBIN/pip" wheel . -w /tmp/built_wheel --no-deps {build_verbosity_flag} built_wheel=(/tmp/built_wheel/*.whl) # Delocate the wheel @@ -108,6 +108,7 @@ def build(project_dir, package_name, output_dir, test_command, test_requires, be before_build=shlex_quote( prepare_command(before_build, python='python', pip='pip', project='/project') if before_build else '' ), + build_verbosity_flag=get_build_verbosity_flag(build_verbosity), environment_exports='\n'.join(environment.as_shell_commands()), ) diff --git a/cibuildwheel/macos.py b/cibuildwheel/macos.py index 31b4af48..840b4618 100644 --- a/cibuildwheel/macos.py +++ b/cibuildwheel/macos.py @@ -7,10 +7,10 @@ try: except ImportError: from pipes import quote as shlex_quote -from .util import prepare_command +from .util import prepare_command, get_build_verbosity_flag -def build(project_dir, package_name, output_dir, test_command, test_requires, before_build, skip, environment): +def build(project_dir, package_name, output_dir, test_command, test_requires, before_build, build_verbosity, skip, environment): PythonConfiguration = namedtuple('PythonConfiguration', ['version', 'identifier', 'url']) python_configurations = [ PythonConfiguration(version='2.7', identifier='cp27-macosx_10_6_intel', url='https://www.python.org/ftp/python/2.7.14/python-2.7.14-macosx10.6.pkg'), @@ -87,7 +87,7 @@ def build(project_dir, package_name, output_dir, test_command, test_requires, be call(before_build_prepared, env=env, shell=True) # build the wheel - call([pip, 'wheel', abs_project_dir, '-w', '/tmp/built_wheel', '--no-deps'], env=env) + call([pip, 'wheel', abs_project_dir, '-w', '/tmp/built_wheel', '--no-deps', get_build_verbosity_flag(build_verbosity)], env=env) built_wheel = glob('/tmp/built_wheel/*.whl')[0] if built_wheel.endswith('none-any.whl'): diff --git a/cibuildwheel/util.py b/cibuildwheel/util.py index 9b1e2ccf..fe3a5ac0 100644 --- a/cibuildwheel/util.py +++ b/cibuildwheel/util.py @@ -13,6 +13,15 @@ def prepare_command(command, python, pip, project): return command.format(python=python, pip=pip, project=project) +def get_build_verbosity_flag(level): + if level > 0: + return '-' + level * 'v' + elif level < 0: + return '-' + -level * 'q' + else: + return '' + + class BuildSkipper(object): def __init__(self, skip_config): self.patterns = skip_config.split() diff --git a/cibuildwheel/windows.py b/cibuildwheel/windows.py index 42a38c80..fc9ac448 100644 --- a/cibuildwheel/windows.py +++ b/cibuildwheel/windows.py @@ -7,10 +7,10 @@ except ImportError: from collections import namedtuple from glob import glob -from .util import prepare_command, Unbuffered +from .util import prepare_command, get_build_verbosity_flag, Unbuffered -def build(project_dir, package_name, output_dir, test_command, test_requires, before_build, skip, environment): +def build(project_dir, package_name, output_dir, test_command, test_requires, before_build, build_verbosity, skip, environment): # Python under AppVeyor/Windows seems to be buffering by default, giving problems interleaving subprocess call output with unflushed calls to 'print' sys.stdout.flush() sys.stdout = Unbuffered(sys.stdout) @@ -82,7 +82,7 @@ def build(project_dir, package_name, output_dir, test_command, test_requires, be shell([before_build_prepared], env=env) # build the wheel - shell(['pip', 'wheel', abs_project_dir, '-w', built_wheel_dir, '--no-deps'], env=env) + shell(['pip', 'wheel', abs_project_dir, '-w', built_wheel_dir, '--no-deps', get_build_verbosity_flag(build_verbosity)], env=env) built_wheel = glob(built_wheel_dir+'/*.whl')[0] # install the wheel From 8d9d9708742340bb8b88ca146566021dd4c1a25a Mon Sep 17 00:00:00 2001 From: Yannick Jadoul Date: Sun, 8 Apr 2018 21:48:27 +0200 Subject: [PATCH 02/12] Fixing empty verbosity flag argument to `subprocess.check_call` --- cibuildwheel/macos.py | 3 ++- cibuildwheel/windows.py | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/cibuildwheel/macos.py b/cibuildwheel/macos.py index 840b4618..a8ea4d74 100644 --- a/cibuildwheel/macos.py +++ b/cibuildwheel/macos.py @@ -87,7 +87,8 @@ def build(project_dir, package_name, output_dir, test_command, test_requires, be call(before_build_prepared, env=env, shell=True) # build the wheel - call([pip, 'wheel', abs_project_dir, '-w', '/tmp/built_wheel', '--no-deps', get_build_verbosity_flag(build_verbosity)], env=env) + build_verbosity_flag = get_build_verbosity_flag(build_verbosity) + call([pip, 'wheel', abs_project_dir, '-w', '/tmp/built_wheel', '--no-deps'] + ([build_verbosity_flag] if build_verbosity_flag else []), env=env) built_wheel = glob('/tmp/built_wheel/*.whl')[0] if built_wheel.endswith('none-any.whl'): diff --git a/cibuildwheel/windows.py b/cibuildwheel/windows.py index fc9ac448..ad1bd61c 100644 --- a/cibuildwheel/windows.py +++ b/cibuildwheel/windows.py @@ -82,7 +82,8 @@ def build(project_dir, package_name, output_dir, test_command, test_requires, be shell([before_build_prepared], env=env) # build the wheel - shell(['pip', 'wheel', abs_project_dir, '-w', built_wheel_dir, '--no-deps', get_build_verbosity_flag(build_verbosity)], env=env) + build_verbosity_flag = get_build_verbosity_flag(build_verbosity) + shell(['pip', 'wheel', abs_project_dir, '-w', built_wheel_dir, '--no-deps'] + ([build_verbosity_flag] if build_verbosity_flag else []), env=env) built_wheel = glob(built_wheel_dir+'/*.whl')[0] # install the wheel From 0cc41fabba55c8d05c25f44344b6378a42b09f62 Mon Sep 17 00:00:00 2001 From: Cosimo Lupo Date: Fri, 20 Apr 2018 10:41:57 +0100 Subject: [PATCH 03/12] windows: upgrade pip with 'python -m pip' this fixes an "ImportError: cannot import name main" when self-upgrading pip to latest version 10 see https://github.com/pypa/pip/issues/5240#issuecomment-382989420 --- cibuildwheel/windows.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cibuildwheel/windows.py b/cibuildwheel/windows.py index 42a38c80..5283486b 100644 --- a/cibuildwheel/windows.py +++ b/cibuildwheel/windows.py @@ -72,7 +72,7 @@ def build(project_dir, package_name, output_dir, test_command, test_requires, be shell(['python', '-c', '"import struct; print(struct.calcsize(\'P\') * 8)\"'], env=env) # prepare the Python environment - shell(['pip', 'install', '--disable-pip-version-check', '--user', '--upgrade', 'pip'], + shell(['python', '-m', 'pip', 'install', '--upgrade', 'pip'], env=env) shell(['pip', 'install', 'wheel'], env=env) From 3a4d611da1656c50df0a2f017de8ddbc9bf491d6 Mon Sep 17 00:00:00 2001 From: Joe Rickerby Date: Wed, 25 Apr 2018 23:03:14 +0100 Subject: [PATCH 04/12] Bump version --- README.md | 4 ++-- cibuildwheel/__init__.py | 2 +- setup.cfg | 2 +- setup.py | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 37e94a11..a0518bf1 100644 --- a/README.md +++ b/README.md @@ -49,7 +49,7 @@ Usage env: PIP=pip2 script: - - $PIP install cibuildwheel==0.7.1 + - $PIP install cibuildwheel==0.7.2 - cibuildwheel --output-dir wheelhouse ``` @@ -59,7 +59,7 @@ Usage ``` build_script: - - pip install cibuildwheel==0.7.1 + - pip install cibuildwheel==0.7.2 - cibuildwheel --output-dir wheelhouse artifacts: - path: "wheelhouse\\*.whl" diff --git a/cibuildwheel/__init__.py b/cibuildwheel/__init__.py index f0788a87..fb9b668f 100644 --- a/cibuildwheel/__init__.py +++ b/cibuildwheel/__init__.py @@ -1 +1 @@ -__version__ = '0.7.1' +__version__ = '0.7.2' diff --git a/setup.cfg b/setup.cfg index a80029c6..11646e02 100644 --- a/setup.cfg +++ b/setup.cfg @@ -1,5 +1,5 @@ [bumpversion] -current_version = 0.7.1 +current_version = 0.7.2 commit = True tag = True message = Bump version diff --git a/setup.py b/setup.py index da13557f..525c3990 100644 --- a/setup.py +++ b/setup.py @@ -8,7 +8,7 @@ except ImportError: setup( name='cibuildwheel', - version='0.7.1', + version='0.7.2', install_requires=['bashlex'], description="Build Python wheels on CI with minimal configuration.", long_description='For readme please see http://github.com/joerick/cibuildwheel', From eedcd62753996dd8d085b721269297d3bba81df1 Mon Sep 17 00:00:00 2001 From: Yannick Jadoul Date: Mon, 30 Apr 2018 15:07:48 +0200 Subject: [PATCH 05/12] Renaming util.get_build_verbosity_flag into util.get_build_verbosity_extra_flags --- cibuildwheel/linux.py | 4 ++-- cibuildwheel/macos.py | 5 ++--- cibuildwheel/util.py | 8 ++++---- cibuildwheel/windows.py | 5 ++--- 4 files changed, 10 insertions(+), 12 deletions(-) diff --git a/cibuildwheel/linux.py b/cibuildwheel/linux.py index c02a0fca..c3616eab 100644 --- a/cibuildwheel/linux.py +++ b/cibuildwheel/linux.py @@ -1,7 +1,7 @@ from __future__ import print_function import os, subprocess, sys from collections import namedtuple -from .util import prepare_command, get_build_verbosity_flag +from .util import prepare_command, get_build_verbosity_extra_flags try: from shlex import quote as shlex_quote @@ -108,7 +108,7 @@ def build(project_dir, package_name, output_dir, test_command, test_requires, be before_build=shlex_quote( prepare_command(before_build, python='python', pip='pip', project='/project') if before_build else '' ), - build_verbosity_flag=get_build_verbosity_flag(build_verbosity), + build_verbosity_flag=' '.join(get_build_verbosity_extra_flags(build_verbosity)), environment_exports='\n'.join(environment.as_shell_commands()), ) diff --git a/cibuildwheel/macos.py b/cibuildwheel/macos.py index a8ea4d74..4462c781 100644 --- a/cibuildwheel/macos.py +++ b/cibuildwheel/macos.py @@ -7,7 +7,7 @@ try: except ImportError: from pipes import quote as shlex_quote -from .util import prepare_command, get_build_verbosity_flag +from .util import prepare_command, get_build_verbosity_extra_flags def build(project_dir, package_name, output_dir, test_command, test_requires, before_build, build_verbosity, skip, environment): @@ -87,8 +87,7 @@ def build(project_dir, package_name, output_dir, test_command, test_requires, be call(before_build_prepared, env=env, shell=True) # build the wheel - build_verbosity_flag = get_build_verbosity_flag(build_verbosity) - call([pip, 'wheel', abs_project_dir, '-w', '/tmp/built_wheel', '--no-deps'] + ([build_verbosity_flag] if build_verbosity_flag else []), env=env) + call([pip, 'wheel', abs_project_dir, '-w', '/tmp/built_wheel', '--no-deps'] + get_build_verbosity_extra_flags(build_verbosity), env=env) built_wheel = glob('/tmp/built_wheel/*.whl')[0] if built_wheel.endswith('none-any.whl'): diff --git a/cibuildwheel/util.py b/cibuildwheel/util.py index fe3a5ac0..fe73a5c8 100644 --- a/cibuildwheel/util.py +++ b/cibuildwheel/util.py @@ -13,13 +13,13 @@ def prepare_command(command, python, pip, project): return command.format(python=python, pip=pip, project=project) -def get_build_verbosity_flag(level): +def get_build_verbosity_extra_flags(level): if level > 0: - return '-' + level * 'v' + return ['-' + level * 'v'] elif level < 0: - return '-' + -level * 'q' + return ['-' + -level * 'q'] else: - return '' + return [] class BuildSkipper(object): diff --git a/cibuildwheel/windows.py b/cibuildwheel/windows.py index ad1bd61c..0663d81c 100644 --- a/cibuildwheel/windows.py +++ b/cibuildwheel/windows.py @@ -7,7 +7,7 @@ except ImportError: from collections import namedtuple from glob import glob -from .util import prepare_command, get_build_verbosity_flag, Unbuffered +from .util import prepare_command, get_build_verbosity_extra_flags, Unbuffered def build(project_dir, package_name, output_dir, test_command, test_requires, before_build, build_verbosity, skip, environment): @@ -82,8 +82,7 @@ def build(project_dir, package_name, output_dir, test_command, test_requires, be shell([before_build_prepared], env=env) # build the wheel - build_verbosity_flag = get_build_verbosity_flag(build_verbosity) - shell(['pip', 'wheel', abs_project_dir, '-w', built_wheel_dir, '--no-deps'] + ([build_verbosity_flag] if build_verbosity_flag else []), env=env) + shell(['pip', 'wheel', abs_project_dir, '-w', built_wheel_dir, '--no-deps'] + get_build_verbosity_extra_flags(build_verbosity), env=env) built_wheel = glob(built_wheel_dir+'/*.whl')[0] # install the wheel From b19e8b76f317b09271080592fac2dc67e002f9ae Mon Sep 17 00:00:00 2001 From: mayeut Date: Wed, 2 May 2018 22:00:34 +0200 Subject: [PATCH 06/12] macOS: update to python 2.7.15 --- cibuildwheel/macos.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cibuildwheel/macos.py b/cibuildwheel/macos.py index 4462c781..09aee081 100644 --- a/cibuildwheel/macos.py +++ b/cibuildwheel/macos.py @@ -13,7 +13,7 @@ from .util import prepare_command, get_build_verbosity_extra_flags def build(project_dir, package_name, output_dir, test_command, test_requires, before_build, build_verbosity, skip, environment): PythonConfiguration = namedtuple('PythonConfiguration', ['version', 'identifier', 'url']) python_configurations = [ - PythonConfiguration(version='2.7', identifier='cp27-macosx_10_6_intel', url='https://www.python.org/ftp/python/2.7.14/python-2.7.14-macosx10.6.pkg'), + PythonConfiguration(version='2.7', identifier='cp27-macosx_10_6_intel', url='https://www.python.org/ftp/python/2.7.15/python-2.7.15-macosx10.6.pkg'), PythonConfiguration(version='3.4', identifier='cp34-macosx_10_6_intel', url='https://www.python.org/ftp/python/3.4.4/python-3.4.4-macosx10.6.pkg'), PythonConfiguration(version='3.5', identifier='cp35-macosx_10_6_intel', url='https://www.python.org/ftp/python/3.5.4/python-3.5.4-macosx10.6.pkg'), PythonConfiguration(version='3.6', identifier='cp36-macosx_10_6_intel', url='https://www.python.org/ftp/python/3.6.5/python-3.6.5-macosx10.6.pkg'), From e6fa70a9103d6fb2d91466276dc71eaf0d49135a Mon Sep 17 00:00:00 2001 From: mayeut Date: Wed, 2 May 2018 22:50:58 +0200 Subject: [PATCH 07/12] Drop python 3.3 support on Linux --- README.md | 2 +- cibuildwheel/linux.py | 2 -- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/README.md b/README.md index ad4604e5..dde81419 100644 --- a/README.md +++ b/README.md @@ -15,7 +15,7 @@ What does it do? | | macOS 10.6+ | manylinux i686 | manylinux x86_64 | Windows 32bit | Windows 64bit | |---|---|---|---|---|---| | Python 2.7 | ✅ | ✅ | ✅ | ✅ | ✅ | -| Python 3.3 | | ✅ | ✅ | ✅ | ✅ | +| Python 3.3 | | | | ✅ | ✅ | | Python 3.4 | ✅ | ✅ | ✅ | ✅ | ✅ | | Python 3.5 | ✅ | ✅ | ✅ | ✅ | ✅ | | Python 3.6 | ✅ | ✅ | ✅ | ✅ | ✅ | diff --git a/cibuildwheel/linux.py b/cibuildwheel/linux.py index c3616eab..29b990b0 100644 --- a/cibuildwheel/linux.py +++ b/cibuildwheel/linux.py @@ -22,13 +22,11 @@ def build(project_dir, package_name, output_dir, test_command, test_requires, be python_configurations = [ PythonConfiguration(identifier='cp27-manylinux1_x86_64', path='/opt/python/cp27-cp27m'), PythonConfiguration(identifier='cp27-manylinux1_x86_64', path='/opt/python/cp27-cp27mu'), - PythonConfiguration(identifier='cp33-manylinux1_x86_64', path='/opt/python/cp33-cp33m'), PythonConfiguration(identifier='cp34-manylinux1_x86_64', path='/opt/python/cp34-cp34m'), PythonConfiguration(identifier='cp35-manylinux1_x86_64', path='/opt/python/cp35-cp35m'), PythonConfiguration(identifier='cp36-manylinux1_x86_64', path='/opt/python/cp36-cp36m'), PythonConfiguration(identifier='cp27-manylinux1_i686', path='/opt/python/cp27-cp27m'), PythonConfiguration(identifier='cp27-manylinux1_i686', path='/opt/python/cp27-cp27mu'), - PythonConfiguration(identifier='cp33-manylinux1_i686', path='/opt/python/cp33-cp33m'), PythonConfiguration(identifier='cp34-manylinux1_i686', path='/opt/python/cp34-cp34m'), PythonConfiguration(identifier='cp35-manylinux1_i686', path='/opt/python/cp35-cp35m'), PythonConfiguration(identifier='cp36-manylinux1_i686', path='/opt/python/cp36-cp36m'), From b4c0150d43988c28f4249008b553333f8e50bed9 Mon Sep 17 00:00:00 2001 From: mayeut Date: Thu, 3 May 2018 23:01:23 +0200 Subject: [PATCH 08/12] macOS/Windows: Update setuptools --- cibuildwheel/macos.py | 1 + cibuildwheel/windows.py | 1 + 2 files changed, 2 insertions(+) diff --git a/cibuildwheel/macos.py b/cibuildwheel/macos.py index 4462c781..c1dfc87c 100644 --- a/cibuildwheel/macos.py +++ b/cibuildwheel/macos.py @@ -70,6 +70,7 @@ def build(project_dir, package_name, output_dir, test_command, test_requires, be # install pip & wheel call([python, get_pip_script, '--no-setuptools', '--no-wheel'], env=env) call([pip, '--version'], env=env) + call([pip, 'install', '--upgrade', 'setuptools'], env=env) call([pip, 'install', 'wheel'], env=env) call([pip, 'install', 'delocate'], env=env) diff --git a/cibuildwheel/windows.py b/cibuildwheel/windows.py index 29e1ebb9..299e160d 100644 --- a/cibuildwheel/windows.py +++ b/cibuildwheel/windows.py @@ -74,6 +74,7 @@ def build(project_dir, package_name, output_dir, test_command, test_requires, be # prepare the Python environment shell(['python', '-m', 'pip', 'install', '--upgrade', 'pip'], env=env) + shell(['pip', 'install', '--upgrade', 'setuptools'], env=env) shell(['pip', 'install', 'wheel'], env=env) # run the before_build command From d93547d8beaed3d249a4f31e400a55d930abada1 Mon Sep 17 00:00:00 2001 From: Joe Rickerby Date: Fri, 4 May 2018 10:04:39 -0700 Subject: [PATCH 09/12] Bump version --- README.md | 4 ++-- cibuildwheel/__init__.py | 2 +- setup.cfg | 2 +- setup.py | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index dde81419..8daf8509 100644 --- a/README.md +++ b/README.md @@ -49,7 +49,7 @@ Usage env: PIP=pip2 script: - - $PIP install cibuildwheel==0.7.2 + - $PIP install cibuildwheel==0.8.0 - cibuildwheel --output-dir wheelhouse ``` @@ -59,7 +59,7 @@ Usage ``` build_script: - - pip install cibuildwheel==0.7.2 + - pip install cibuildwheel==0.8.0 - cibuildwheel --output-dir wheelhouse artifacts: - path: "wheelhouse\\*.whl" diff --git a/cibuildwheel/__init__.py b/cibuildwheel/__init__.py index fb9b668f..32a90a3b 100644 --- a/cibuildwheel/__init__.py +++ b/cibuildwheel/__init__.py @@ -1 +1 @@ -__version__ = '0.7.2' +__version__ = '0.8.0' diff --git a/setup.cfg b/setup.cfg index 11646e02..caa72422 100644 --- a/setup.cfg +++ b/setup.cfg @@ -1,5 +1,5 @@ [bumpversion] -current_version = 0.7.2 +current_version = 0.8.0 commit = True tag = True message = Bump version diff --git a/setup.py b/setup.py index 525c3990..c0e1bd31 100644 --- a/setup.py +++ b/setup.py @@ -8,7 +8,7 @@ except ImportError: setup( name='cibuildwheel', - version='0.7.2', + version='0.8.0', install_requires=['bashlex'], description="Build Python wheels on CI with minimal configuration.", long_description='For readme please see http://github.com/joerick/cibuildwheel', From 7448ca3cf11702b097d93f3df6de79fcbc89c46e Mon Sep 17 00:00:00 2001 From: Joe Rickerby Date: Fri, 4 May 2018 10:21:34 -0700 Subject: [PATCH 10/12] Update changelog --- README.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/README.md b/README.md index 8daf8509..fd36baf1 100644 --- a/README.md +++ b/README.md @@ -328,6 +328,11 @@ Since `cibuildwheel` runs the wheel through delocate or auditwheel, it will auto Changelog ========= +### 0.8.0 + +- Drop support for Python 3.3 on Linux (#67) +- Fix TLS by updating setuptools (#69) + ### 0.7.1 - macOS: Fix Pip bugs resulting from PyPI TLS 1.2 enforcement From 57cdb8711c0be77537fc886842ae7bb72805276a Mon Sep 17 00:00:00 2001 From: mayeut Date: Wed, 2 May 2018 23:31:56 +0200 Subject: [PATCH 11/12] linux: transfer ownership of the wheel to the current user --- cibuildwheel/linux.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/cibuildwheel/linux.py b/cibuildwheel/linux.py index 29b990b0..9d90a7ee 100644 --- a/cibuildwheel/linux.py +++ b/cibuildwheel/linux.py @@ -95,6 +95,7 @@ def build(project_dir, package_name, output_dir, test_command, test_requires, be # we're all done here; move it to output mv "$delocated_wheel" /output + chown {uid}:{gid} "/output/$(basename "$delocated_wheel")" done '''.format( package_name=package_name, @@ -108,6 +109,8 @@ def build(project_dir, package_name, output_dir, test_command, test_requires, be ), build_verbosity_flag=' '.join(get_build_verbosity_extra_flags(build_verbosity)), environment_exports='\n'.join(environment.as_shell_commands()), + uid=os.getuid(), + gid=os.getgid(), ) docker_process = subprocess.Popen([ From d186b0bbb794d1a4d521bf1bff05c46bb70b6667 Mon Sep 17 00:00:00 2001 From: mayeut Date: Wed, 2 May 2018 22:39:24 +0200 Subject: [PATCH 12/12] Use travis-ci provided python3 on Linux --- .travis.yml | 36 +++++++++++------------------------- 1 file changed, 11 insertions(+), 25 deletions(-) diff --git a/.travis.yml b/.travis.yml index a9d61238..a38e2362 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,42 +5,28 @@ matrix: # Linux Python 2 - sudo: required language: python - services: - - docker - env: - - "PYTHON=python2" + python: 2.7 + services: docker + env: PYTHON=python # Linux Python 3 - sudo: required language: python - services: - - docker - env: - - "PYTHON=python3" - before_install: - - sudo apt-get -qq update - - sudo apt-get install -y python3-pip + python: 3.4 + services: docker + env: PYTHON=python # macOS Python 2 - os: osx - env: - - "PYTHON=python2" + env: PYTHON=python2 # macOS Python 3 - os: osx - env: - - "PYTHON=python3" + env: PYTHON=python3 before_install: - brew update - brew outdated python || brew upgrade python -script: - - | - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then - $PYTHON -m pip install -r requirements-dev.txt - $PYTHON ./bin/run_tests.py - else - # linux test requires root to clean up the wheelhouse (docker runs as root) - sudo $PYTHON -m pip install -r requirements-dev.txt - sudo $PYTHON ./bin/run_tests.py - fi +install: $PYTHON -m pip install -r requirements-dev.txt + +script: $PYTHON ./bin/run_tests.py