You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@arrow.apache.org by we...@apache.org on 2017/08/14 23:39:12 UTC

arrow git commit: ARROW-1348: [C++/Python] Release verification script for Windows

Repository: arrow
Updated Branches:
  refs/heads/master 4db732c32 -> 6135958f5


ARROW-1348: [C++/Python] Release verification script for Windows

Author: Wes McKinney <we...@twosigma.com>

Closes #961 from wesm/ARROW-1348 and squashes the following commits:

1a8cafb [Wes McKinney] Add release verification script for Windows


Project: http://git-wip-us.apache.org/repos/asf/arrow/repo
Commit: http://git-wip-us.apache.org/repos/asf/arrow/commit/6135958f
Tree: http://git-wip-us.apache.org/repos/asf/arrow/tree/6135958f
Diff: http://git-wip-us.apache.org/repos/asf/arrow/diff/6135958f

Branch: refs/heads/master
Commit: 6135958f5b46f974c4e7ed5f1faaff9c90824050
Parents: 4db732c
Author: Wes McKinney <we...@twosigma.com>
Authored: Mon Aug 14 19:39:03 2017 -0400
Committer: Wes McKinney <we...@twosigma.com>
Committed: Mon Aug 14 19:39:03 2017 -0400

----------------------------------------------------------------------
 dev/release/VERIFY.md                    |  25 +++++++
 dev/release/verify-release-candidate.bat | 101 ++++++++++++++++++++++++++
 2 files changed, 126 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/arrow/blob/6135958f/dev/release/VERIFY.md
----------------------------------------------------------------------
diff --git a/dev/release/VERIFY.md b/dev/release/VERIFY.md
new file mode 100644
index 0000000..3f073e4
--- /dev/null
+++ b/dev/release/VERIFY.md
@@ -0,0 +1,25 @@
+<!---
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements.  See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership.  The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License.  You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied.  See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+
+# Verifying Arrow releases
+
+## Windows
+
+We've provided a convenience script for verifying the C++ and Python builds on
+Windows. Read the comments in `verify-release-candidate.bat` for instructions
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/arrow/blob/6135958f/dev/release/verify-release-candidate.bat
----------------------------------------------------------------------
diff --git a/dev/release/verify-release-candidate.bat b/dev/release/verify-release-candidate.bat
new file mode 100644
index 0000000..8dcaa3d
--- /dev/null
+++ b/dev/release/verify-release-candidate.bat
@@ -0,0 +1,101 @@
+@rem Licensed to the Apache Software Foundation (ASF) under one
+@rem or more contributor license agreements.  See the NOTICE file
+@rem distributed with this work for additional information
+@rem regarding copyright ownership.  The ASF licenses this file
+@rem to you under the Apache License, Version 2.0 (the
+@rem "License"); you may not use this file except in compliance
+@rem with the License.  You may obtain a copy of the License at
+@rem
+@rem   http://www.apache.org/licenses/LICENSE-2.0
+@rem
+@rem Unless required by applicable law or agreed to in writing,
+@rem software distributed under the License is distributed on an
+@rem "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+@rem KIND, either express or implied.  See the License for the
+@rem specific language governing permissions and limitations
+@rem under the License.
+
+@rem To use this script, first create the following conda environment. Change
+@rem the Python version if so desired. You can also omit one or more of the
+@rem libray build rem dependencies if you want to build them from source as well
+@rem
+
+@rem ARROW-1294 CMake 3.9.0 in conda-forge breaks the build
+@rem set ARROW_CMAKE_VERSION=3.8.0
+@rem set PYTHON=3.6
+@rem conda create -n arrow-verify-release -f -q -y python=%PYTHON%
+@rem conda install -y ^
+@rem       six pytest setuptools numpy pandas cython ^
+@rem       thrift-cpp flatbuffers rapidjson ^
+@rem       cmake=%ARROW_CMAKE_VERSION% ^
+@rem       git ^
+@rem       boost-cpp ^
+@rem       snappy zlib brotli gflags lz4-c zstd || exit /B
+
+@rem Then run from the directory containing the RC tarball
+@rem
+@rem verify-release-candidate.bat apache-arrow-%VERSION%
+
+@echo on
+
+if not exist "C:\tmp\" mkdir C:\tmp
+if exist "C:\tmp\arrow-verify-release" rd C:\tmp\arrow-verify-release /s /q
+if not exist "C:\tmp\arrow-verify-release" mkdir C:\tmp\arrow-verify-release
+
+tar xvf %1.tar.gz -C "C:/tmp/"
+
+set GENERATOR=Visual Studio 14 2015 Win64
+set CONFIGURATION=release
+set ARROW_SOURCE=C:\tmp\%1
+
+pushd %ARROW_SOURCE%
+
+call activate arrow-verify-release
+
+set ARROW_BUILD_TOOLCHAIN=%CONDA_PREFIX%\Library
+set ARROW_HOME=%CONDA_PREFIX%\Library
+set PARQUET_BUILD_TOOLCHAIN=%CONDA_PREFIX%\Library
+set PARQUET_HOME=%CONDA_PREFIX%\Library
+
+@rem Build and test Arrow C++ libraries
+mkdir cpp\build
+pushd cpp\build
+
+cmake -G "%GENERATOR%" ^
+      -DCMAKE_INSTALL_PREFIX=%ARROW_HOME% ^
+      -DARROW_BOOST_USE_SHARED=OFF ^
+      -DCMAKE_BUILD_TYPE=%CONFIGURATION% ^
+      -DARROW_CXXFLAGS="/WX /MP" ^
+      -DARROW_PYTHON=ON ^
+      ..  || exit /B
+cmake --build . --target INSTALL --config %CONFIGURATION%  || exit /B
+
+@rem Needed so python-test.exe works
+set PYTHONPATH=%CONDA_PREFIX%\Lib;%CONDA_PREFIX%\Lib\site-packages;%CONDA_PREFIX%\python35.zip;%CONDA_PREFIX%\DLLs;%CONDA_PREFIX%;%PYTHONPATH%
+
+ctest -VV  || exit /B
+popd
+
+@rem Build parquet-cpp
+git clone https://github.com/apache/parquet-cpp.git || exit /B
+mkdir parquet-cpp\build
+pushd parquet-cpp\build
+
+cmake -G "%GENERATOR%" ^
+     -DCMAKE_INSTALL_PREFIX=%PARQUET_HOME% ^
+     -DCMAKE_BUILD_TYPE=%CONFIGURATION% ^
+     -DPARQUET_BOOST_USE_SHARED=OFF ^
+     -DPARQUET_BUILD_TESTS=off .. || exit /B
+cmake --build . --target INSTALL --config %CONFIGURATION% || exit /B
+popd
+
+@rem Build and import pyarrow
+@rem parquet-cpp has some additional runtime dependencies that we need to figure out
+@rem see PARQUET-1018
+pushd python
+
+set PYARROW_CXXFLAGS=/WX
+python setup.py build_ext --inplace --with-parquet --bundle-arrow-cpp bdist_wheel  || exit /B
+py.test pyarrow -v -s --parquet || exit /B
+
+popd