diff --git a/.travis.yml b/.travis.yml index b96f15717..614ee7f33 100644 --- a/.travis.yml +++ b/.travis.yml @@ -283,7 +283,6 @@ jobs: - *env_path stages: -- *test_dpl - *doc_stage_name - test - name: *stage_test_osx_name diff --git a/CHANGES.rst b/CHANGES.rst index 0aa364760..c525a9d5c 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -1,8 +1,10 @@ -3.3.0 (2017-10-xx) +3.3.0 (2017-10-15) ------------------ * Introduce abstract base classes (#102) +* Publish OSX binary wheels (#153) + 3.2.0 (2017-09-17) ------------------ diff --git a/multidict/__init__.py b/multidict/__init__.py index dd8575754..9aa064657 100644 --- a/multidict/__init__.py +++ b/multidict/__init__.py @@ -12,7 +12,7 @@ 'MultiDictProxy', 'CIMultiDictProxy', 'MultiDict', 'CIMultiDict', 'upstr', 'istr') -__version__ = '3.2.0' +__version__ = '3.3.0' from ._abc import MultiMapping, MutableMultiMapping diff --git a/requirements/ci.txt b/requirements/ci.txt index 71a0399e8..0461449ce 100644 --- a/requirements/ci.txt +++ b/requirements/ci.txt @@ -7,8 +7,7 @@ sphinx==1.6.4 alabaster>=0.6.2 pytest-cov==2.5.1 pygments==2.2.0 -mypy==0.530; (python_version>="3.5" or platform_system != "Windows") and platform_python_implementation != "PyPy" -git+git://github.com/python/mypy.git@b6bcdc0; python_version<"3.5" and platform_system == "Windows" +mypy==0.540; platform_python_implementation != "PyPy" -e . codecov==2.0.9 diff --git a/tools/build-wheels.sh b/tools/build-wheels.sh index 3f5058d49..61e6bacc4 100755 --- a/tools/build-wheels.sh +++ b/tools/build-wheels.sh @@ -1,4 +1,11 @@ #!/bin/bash +if [ -n "$DEBUG" ] +then + set -x +fi +set -euo pipefail +# ref: https://coderwall.com/p/fkfaqq/safer-bash-scripts-with-set-euxo-pipefail + PYTHON_VERSIONS="cp34-cp34m cp35-cp35m cp36-cp36m" # Avoid creation of __pycache__/*.py[c|o] @@ -24,14 +31,21 @@ done echo echo echo "Bundle external shared libraries into the wheels" -for whl in /io/dist/${package_name}*${arch}.whl; do +for whl in /io/dist/${package_name}-*-linux_${arch}.whl; do echo "Repairing $whl..." auditwheel repair "$whl" -w /io/dist/ done +echo +echo echo "Cleanup OS specific wheels" rm -fv /io/dist/*-linux_*.whl +echo +echo +echo "Cleanup non-$package_name wheels" +find /io/dist -maxdepth 1 -type f ! -name "$package_name"'-*-manylinux1_'"$arch"'.whl' -print0 | xargs -0 rm -rf + echo echo echo "Install packages and test" @@ -39,10 +53,12 @@ echo "dist directory:" ls /io/dist for PYTHON in ${PYTHON_VERSIONS}; do + # clear python cache + find /io -type d -name __pycache__ -print0 | xargs -0 rm -rf + echo echo -n "Test $PYTHON: " - /opt/python/${PYTHON}/bin/python -c "import platform;print(platform.platform())" + /opt/python/${PYTHON}/bin/python -c "import platform; print('Building wheel for {platform} platform.'.format(platform=platform.platform()))" /opt/python/${PYTHON}/bin/pip install "$package_name" --no-index -f file:///io/dist - find /io/tests -name __pycache__ | xargs rm -rf /opt/python/${PYTHON}/bin/py.test /io/tests done