You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@arrow.apache.org by ks...@apache.org on 2018/09/30 12:31:13 UTC

[arrow] branch master updated: ARROW-3369: [Packaging] Wheel builds are failing due to wheel 0.32 release

This is an automated email from the ASF dual-hosted git repository.

kszucs pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/arrow.git


The following commit(s) were added to refs/heads/master by this push:
     new 74e98f8  ARROW-3369: [Packaging] Wheel builds are failing due to wheel 0.32 release
74e98f8 is described below

commit 74e98f88cfc1675650868f5efff1c1d5cb5886a2
Author: Krisztián Szűcs <sz...@gmail.com>
AuthorDate: Sun Sep 30 14:30:57 2018 +0200

    ARROW-3369: [Packaging] Wheel builds are failing due to wheel 0.32 release
    
    Wheel builds: https://github.com/kszucs/crossbow/branches/all?utf8=%E2%9C%93&query=build-324
    
    - Updated numpy version
    - Pinned multibuild version
    - Pinned wheel version to `0.31.1` until auditwheel and multibuild compatibility issues are resolved
    
    Author: Krisztián Szűcs <sz...@gmail.com>
    
    Closes #2661 from kszucs/ARROW-3369 and squashes the following commits:
    
    fdb1e96a <Krisztián Szűcs> todo note
    64273b45 <Krisztián Szűcs>  pin wheel after installing tensorflow
    3f7b8f18 <Krisztián Szűcs> organize env vars
    246f3143 <Krisztián Szűcs> install osx wheel build dependencies
    ab130a74 <Krisztián Szűcs> fix pip version pin
    c946b0f1 <Krisztián Szűcs> pin wheel version for osx and linux builds
---
 dev/tasks/python-wheels/osx-build.sh     |  4 +++-
 dev/tasks/python-wheels/travis.linux.yml |  8 +++-----
 dev/tasks/python-wheels/travis.osx.yml   | 17 +++++++----------
 dev/tasks/tasks.yml                      | 16 ++++++++++------
 python/manylinux1/build_arrow.sh         |  5 +++++
 5 files changed, 28 insertions(+), 22 deletions(-)

diff --git a/dev/tasks/python-wheels/osx-build.sh b/dev/tasks/python-wheels/osx-build.sh
index 4170a93..5c69904 100755
--- a/dev/tasks/python-wheels/osx-build.sh
+++ b/dev/tasks/python-wheels/osx-build.sh
@@ -99,7 +99,9 @@ function build_wheel {
     # build will also work with newer NumPy versions.
     export ARROW_HOME=`pwd`/arrow-dist
     export PARQUET_HOME=`pwd`/arrow-dist
-    pip install "cython==0.27.3" "numpy==${NP_TEST_DEP}"
+    if [ -n "$BUILD_DEPENDS" ]; then
+        pip install $(pip_opts) $BUILD_DEPENDS
+    fi
 
     pushd cpp
     mkdir build
diff --git a/dev/tasks/python-wheels/travis.linux.yml b/dev/tasks/python-wheels/travis.linux.yml
index ae7a3cc..0bb6e69 100644
--- a/dev/tasks/python-wheels/travis.linux.yml
+++ b/dev/tasks/python-wheels/travis.linux.yml
@@ -28,9 +28,6 @@ env:
   global:
     - PLAT=x86_64
     - TRAVIS_TAG={{ task.tag }}
-    - BUILD_REF={{ arrow.head }}
-    - PYTHON_VERSION={{ python_version }}
-    - PYARROW_VERSION={{ arrow.version }}
 
 before_script:
   - docker pull quay.io/xhochy/arrow_manylinux1_x86_64_base:latest
@@ -42,8 +39,9 @@ script:
 
   - pushd arrow/python/manylinux1
   - docker run --shm-size=2g
-      -e SETUPTOOLS_SCM_PRETEND_VERSION=$PYARROW_VERSION
-      -e PYTHON_VERSIONS=$PYTHON_VERSION
+      -e SETUPTOOLS_SCM_PRETEND_VERSION={{ arrow.version }}
+      -e PYTHON_VERSIONS={{ python_version }}
+      -e WHEEL_VERSION={{ wheel_version }}
       -v $PWD:/io
       -v $PWD/../../:/arrow
       quay.io/xhochy/arrow_manylinux1_x86_64_base:latest /io/build_arrow.sh
diff --git a/dev/tasks/python-wheels/travis.osx.yml b/dev/tasks/python-wheels/travis.osx.yml
index 7b22b1c..2f0d168 100644
--- a/dev/tasks/python-wheels/travis.osx.yml
+++ b/dev/tasks/python-wheels/travis.osx.yml
@@ -25,17 +25,17 @@ env:
   global:
     - PLAT=x86_64
     - TRAVIS_TAG={{ task.tag }}
-    - BUILD_REF={{ arrow.head }}
-    - PYARROW_VERSION={{ arrow.version }}
     - MACOSX_DEPLOYMENT_TARGET="10.9"
-    - MB_PYTHON_VERSION={{ python_version }}
-    - NP_BUILD_DEP="{{ numpy_build_version }}"
-    - NP_TEST_DEP="{{ numpy_test_version }}"
-    - PANDAS_DEP="{{ pandas_version }}"
+    - PYARROW_VERSION={{ arrow.version }}
     - PYARROW_BUILD_VERBOSE=1
+    - MB_PYTHON_VERSION={{ python_version }}
+    - BUILD_DEPENDS="wheel=={{ wheel_version }} numpy=={{ numpy_version }} cython==0.27.3 six"
+    - TEST_DEPENDS="numpy=={{ numpy_version }} pandas=={{ pandas_version }} six"
 
 before_install:
   - git clone https://github.com/matthew-brett/multibuild # TODO pin it
+  - git -C multibuild checkout 4e7a9396e9a50731bb83fc0d16bb98fb0c4032d7
+
   - git clone -b {{ arrow.branch }} {{ arrow.remote }} arrow
   - git -C arrow checkout {{ arrow.head }}
 
@@ -52,13 +52,10 @@ before_install:
   - before_install
 
 install:
-  - BUILD_DEPENDS="numpy==$NP_BUILD_DEP six cython"
-  - TEST_DEPENDS="numpy==$NP_TEST_DEP six pandas==$PANDAS_DEP"
-
   - mkdir -p dist
 
   # multibuild's default clean_code function
-  - clean_code arrow $BUILD_REF
+  - clean_code arrow {{ arrow.head }}
 
   # the following functions are defined in osx-build.sh
   - build_wheel arrow
diff --git a/dev/tasks/tasks.yml b/dev/tasks/tasks.yml
index 991e900..96958e3 100644
--- a/dev/tasks/tasks.yml
+++ b/dev/tasks/tasks.yml
@@ -139,6 +139,7 @@ tasks:
     platform: linux
     template: python-wheels/travis.linux.yml
     params:
+      wheel_version: 0.31.1
       python_version: 2.7,16
     artifacts:
       - pyarrow-{version}-cp27-cp27m-manylinux1_x86_64.whl
@@ -147,6 +148,7 @@ tasks:
     platform: linux
     template: python-wheels/travis.linux.yml
     params:
+      wheel_version: 0.31.1
       python_version: 2.7,32
     artifacts:
       - pyarrow-{version}-cp27-cp27mu-manylinux1_x86_64.whl
@@ -155,6 +157,7 @@ tasks:
     platform: linux
     template: python-wheels/travis.linux.yml
     params:
+      wheel_version: 0.31.1
       python_version: 3.5,16
     artifacts:
       - pyarrow-{version}-cp35-cp35m-manylinux1_x86_64.whl
@@ -163,6 +166,7 @@ tasks:
     platform: linux
     template: python-wheels/travis.linux.yml
     params:
+      wheel_version: 0.31.1
       python_version: 3.6,16
     artifacts:
       - pyarrow-{version}-cp36-cp36m-manylinux1_x86_64.whl
@@ -173,10 +177,10 @@ tasks:
     platform: osx
     template: python-wheels/travis.osx.yml
     params:
-      numpy_build_version: 1.10.4
-      numpy_test_version: 1.14.0
+      numpy_version: 1.14
       pandas_version: 0.23.0
       python_version: 2.7
+      wheel_version: 0.31.1
     artifacts:
       - pyarrow-{version}-cp27-cp27m-macosx_10_6_intel.whl
 
@@ -184,10 +188,10 @@ tasks:
     platform: osx
     template: python-wheels/travis.osx.yml
     params:
-      numpy_build_version: 1.10.4
-      numpy_test_version: 1.14.0
+      numpy_version: 1.14
       pandas_version: 0.23.0
       python_version: 3.5
+      wheel_version: 0.31.1
     artifacts:
       - pyarrow-{version}-cp35-cp35m-macosx_10_6_intel.whl
 
@@ -195,10 +199,10 @@ tasks:
     platform: osx
     template: python-wheels/travis.osx.yml
     params:
-      numpy_build_version: 1.11.3
-      numpy_test_version: 1.14.0
+      numpy_version: 1.14
       pandas_version: 0.23.0
       python_version: 3.6
+      wheel_version: 0.31.1
     artifacts:
       - pyarrow-{version}-cp36-cp36m-macosx_10_6_intel.whl
 
diff --git a/python/manylinux1/build_arrow.sh b/python/manylinux1/build_arrow.sh
index 6e25702..8c37952 100755
--- a/python/manylinux1/build_arrow.sh
+++ b/python/manylinux1/build_arrow.sh
@@ -64,6 +64,11 @@ for PYTHON_TUPLE in ${PYTHON_VERSIONS}; do
       fi
     fi
 
+    # pin wheel, because auditwheel is not compatible with wheel=0.32
+    # pin after installing tensorflow, because it updates to wheel=0.32
+    # TODO(kszucs): remove after auditwheel properly supports wheel>0.31
+    $PIP install "wheel==${WHEEL_VERSION:-0.31.1}"
+
     echo "=== (${PYTHON}) Building Arrow C++ libraries ==="
     ARROW_BUILD_DIR=/tmp/build-PY${PYTHON}-${U_WIDTH}
     mkdir -p "${ARROW_BUILD_DIR}"