svn commit: r22001 - in /dev/arrow/apache-arrow-0.7.1-rc0: ./ apache-arrow-0.7.1.tar.gz apache-arrow-0.7.1.tar.gz.asc apache-arrow-0.7.1.tar.gz.md5 apache-arrow-0.7.1.tar.gz.sha1 apache-arrow-0.7.1.ta
Author: wesm Date: Wed Sep 27 04:23:55 2017 New Revision: 22001 Log: Apache Arrow ${version} RC${rc} Added: dev/arrow/apache-arrow-0.7.1-rc0/ dev/arrow/apache-arrow-0.7.1-rc0/apache-arrow-0.7.1.tar.gz (with props) dev/arrow/apache-arrow-0.7.1-rc0/apache-arrow-0.7.1.tar.gz.asc dev/arrow/apache-arrow-0.7.1-rc0/apache-arrow-0.7.1.tar.gz.md5 dev/arrow/apache-arrow-0.7.1-rc0/apache-arrow-0.7.1.tar.gz.sha1 dev/arrow/apache-arrow-0.7.1-rc0/apache-arrow-0.7.1.tar.gz.sha256 dev/arrow/apache-arrow-0.7.1-rc0/apache-arrow-0.7.1.tar.gz.sha512 Added: dev/arrow/apache-arrow-0.7.1-rc0/apache-arrow-0.7.1.tar.gz == Binary file - no diff available. Propchange: dev/arrow/apache-arrow-0.7.1-rc0/apache-arrow-0.7.1.tar.gz -- svn:mime-type = application/octet-stream Added: dev/arrow/apache-arrow-0.7.1-rc0/apache-arrow-0.7.1.tar.gz.asc == --- dev/arrow/apache-arrow-0.7.1-rc0/apache-arrow-0.7.1.tar.gz.asc (added) +++ dev/arrow/apache-arrow-0.7.1-rc0/apache-arrow-0.7.1.tar.gz.asc Wed Sep 27 04:23:55 2017 @@ -0,0 +1,17 @@ +-BEGIN PGP SIGNATURE- +Version: GnuPG v1 + +iQIcBAABCgAGBQJZyyfPAAoJEPEFiDoXNWI9AcsP/jvOS+nJDb1NFh/NHoeJ40El +LPCLCjKOXOIbGXE+WLac7f7SrIbuBAs3NgsXuHiLVVm6vDjKDEXL2T+P+Eh/7jaz +mi7lvys5Xvx2Kk0+Ig6rQ9PgR+ipHOayj3uVuobNSMcxpuTaS+R/SDD+OUf8v2x7 +IigzB+jxME5WOwXAEpD1QKKemm05IdoZdyjpm9i5X5LpC/NYdMwWinpgBXllSTzC +dZCaF7WzNwwVYCid+B2DUfJ/9UouVhigQ8vTUzYWdx1NaCF3sUaoBIkt8pDqzJG7 +Uw1LDZSM1qVSR6H3YFSp/Q+J2EuFHzCoYMpY+kTE5I1DfTBU86qcG/z49xRKPrb1 +i44YZC66xrjsR5hufJpgcVcL2dawrmbBxZ2HyQV6W1u6V8Vl5JGBSjQ5Q1sn1BQG +Kc05X3y6G48GNjzZ/JASNa+prj6JqQL7PylBPV3Mylebkck5ORF3fBt/AoPyzuF/ +dCwJ9bpmlIRdREZKpB+k6DbjlnToVfXfXR6C+iHtewKfkn5fHZ7FEy6sEFiJ41JO +/g99yVGkOdir7c2FWLuehDYVcglju5G6SoHz/RjV/sqi2vBMAQffTwflOenGuSeu +sP05PVo0TzD2zxRt7x5QCRrLIWqDLzAYv03D11JaMCoLtPEEDk43toIo8dMNGMJ0 +WxsPdmX2DkmZO1ykS5wZ +=Q97w +-END PGP SIGNATURE- Added: dev/arrow/apache-arrow-0.7.1-rc0/apache-arrow-0.7.1.tar.gz.md5 == --- dev/arrow/apache-arrow-0.7.1-rc0/apache-arrow-0.7.1.tar.gz.md5 (added) +++ dev/arrow/apache-arrow-0.7.1-rc0/apache-arrow-0.7.1.tar.gz.md5 Wed Sep 27 04:23:55 2017 @@ -0,0 +1 @@ +apache-arrow-0.7.1.tar.gz: B9 F1 5E F9 D3 D5 17 0F 63 60 CD 28 F2 51 26 23 Added: dev/arrow/apache-arrow-0.7.1-rc0/apache-arrow-0.7.1.tar.gz.sha1 == --- dev/arrow/apache-arrow-0.7.1-rc0/apache-arrow-0.7.1.tar.gz.sha1 (added) +++ dev/arrow/apache-arrow-0.7.1-rc0/apache-arrow-0.7.1.tar.gz.sha1 Wed Sep 27 04:23:55 2017 @@ -0,0 +1 @@ +8b9e1a33b1e2fc154c817af98a44208a57b10dac apache-arrow-0.7.1.tar.gz Added: dev/arrow/apache-arrow-0.7.1-rc0/apache-arrow-0.7.1.tar.gz.sha256 == --- dev/arrow/apache-arrow-0.7.1-rc0/apache-arrow-0.7.1.tar.gz.sha256 (added) +++ dev/arrow/apache-arrow-0.7.1-rc0/apache-arrow-0.7.1.tar.gz.sha256 Wed Sep 27 04:23:55 2017 @@ -0,0 +1 @@ +c46bfef44464679919543aec4612dd3085622b42c19a440c8ec2ceb2dd542bec apache-arrow-0.7.1.tar.gz Added: dev/arrow/apache-arrow-0.7.1-rc0/apache-arrow-0.7.1.tar.gz.sha512 == --- dev/arrow/apache-arrow-0.7.1-rc0/apache-arrow-0.7.1.tar.gz.sha512 (added) +++ dev/arrow/apache-arrow-0.7.1-rc0/apache-arrow-0.7.1.tar.gz.sha512 Wed Sep 27 04:23:55 2017 @@ -0,0 +1 @@ +666a4484527ae397ffcf8325461b4478f3152f28e167d11d9801d1840f1dc5abdc8fab6a5fafb98b48a719326ac5a8332ea7bd6cfab2c8691b6bf2e10e71059d apache-arrow-0.7.1.tar.gz
[arrow] Git Push Summary
Repository: arrow Updated Tags: refs/tags/apache-arrow-0.7.1 [created] 2e453d137
[arrow] Git Push Summary
Repository: arrow Updated Tags: refs/tags/apache-arrow-0.7.1 [deleted] 0f4d1bb08
[arrow] Git Push Summary
Repository: arrow Updated Tags: refs/tags/apache-arrow-0.7.1 [created] 0f4d1bb08
arrow git commit: ARROW-1612:[GLib] Update readme for mac os
Repository: arrow Updated Branches: refs/heads/master f9d1e1be7 -> 808a14330 ARROW-1612:[GLib] Update readme for mac os I tried to build Arrow GLib released source archive on mac os. but build failed. Accutally, We need to install `gobject-introspection` and set `PKG_CONFIG_PATH ` before build Arrow Glib. so, I added some commands to README.md. Author: m-nakamura145 Closes #1134 from m-nakamura145/update_c_glib_readme_for_mac_os and squashes the following commits: 3bd886b [m-nakamura145] ARROW-1612:[GLib] Fix PKG_CONFIG_PATH bbd95d4 [m-nakamura145] ARROW-1612:[GLib] Update readme for mac os Project: http://git-wip-us.apache.org/repos/asf/arrow/repo Commit: http://git-wip-us.apache.org/repos/asf/arrow/commit/808a1433 Tree: http://git-wip-us.apache.org/repos/asf/arrow/tree/808a1433 Diff: http://git-wip-us.apache.org/repos/asf/arrow/diff/808a1433 Branch: refs/heads/master Commit: 808a1433005ce5325ba69b1a65d05e1b547eea2c Parents: f9d1e1b Author: m-nakamura145 Authored: Tue Sep 26 22:21:47 2017 -0400 Committer: Wes McKinney Committed: Tue Sep 26 22:21:47 2017 -0400 -- c_glib/README.md | 14 +- 1 file changed, 13 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/arrow/blob/808a1433/c_glib/README.md -- diff --git a/c_glib/README.md b/c_glib/README.md index 2a9d5d6..1f67d7e 100644 --- a/c_glib/README.md +++ b/c_glib/README.md @@ -71,7 +71,19 @@ GLib (replace the version number in the following commands with the one you use) You need to build and install Arrow C++ before you build and install Arrow GLib. See Arrow C++ document about how to install Arrow C++. -You can build and install Arrow GLib after you install Arrow C++: +You can build and install Arrow GLib after you install Arrow C++. + +If you use macOS with [Homebrew](https://brew.sh/), you must install `gobject-introspection` and set `PKG_CONFIG_PATH` before build Arrow GLib: + +```text +% cd c_glib +% brew install -y gobject-introspection +% ./configure PKG_CONFIG_PATH=$(brew --prefix libffi)/lib/pkgconfig:$PKG_CONFIG_PATH +% make +% sudo make install +``` + +Others: ```text % cd c_glib
arrow git commit: ARROW-1611: [C++] Add BitmapWriter, do not perform out of bounds read in BitmapReader when length is 0
Repository: arrow Updated Branches: refs/heads/master 5da6b8795 -> f9d1e1be7 ARROW-1611: [C++] Add BitmapWriter, do not perform out of bounds read in BitmapReader when length is 0 close #1133 close #1131 Author: Rene Sugar Closes #1137 from wesm/ARROW-1611 and squashes the following commits: 5bff0bd [Rene Sugar] ARROW-1611 Do not read bitmap when length is zero, add internal::BitmapWriter Project: http://git-wip-us.apache.org/repos/asf/arrow/repo Commit: http://git-wip-us.apache.org/repos/asf/arrow/commit/f9d1e1be Tree: http://git-wip-us.apache.org/repos/asf/arrow/tree/f9d1e1be Diff: http://git-wip-us.apache.org/repos/asf/arrow/diff/f9d1e1be Branch: refs/heads/master Commit: f9d1e1be756636cb8a280ac3723ed3dea2abe204 Parents: 5da6b87 Author: Rene Sugar Authored: Tue Sep 26 21:56:33 2017 -0400 Committer: Wes McKinney Committed: Tue Sep 26 21:56:33 2017 -0400 -- cpp/src/arrow/util/bit-util-test.cc | 36 cpp/src/arrow/util/bit-util.h | 139 +-- 2 files changed, 132 insertions(+), 43 deletions(-) -- http://git-wip-us.apache.org/repos/asf/arrow/blob/f9d1e1be/cpp/src/arrow/util/bit-util-test.cc -- diff --git a/cpp/src/arrow/util/bit-util-test.cc b/cpp/src/arrow/util/bit-util-test.cc index a5c6cec..5a66d7e 100644 --- a/cpp/src/arrow/util/bit-util-test.cc +++ b/cpp/src/arrow/util/bit-util-test.cc @@ -91,6 +91,42 @@ TEST(BitmapReader, DoesNotReadOutOfBounds) { ASSERT_TRUE(r2.IsNotSet()); r2.Next(); } + + // Does not access invalid memory + internal::BitmapReader r3(nullptr, 0, 0); +} + +TEST(BitmapWriter, DoesNotWriteOutOfBounds) { + uint8_t bitmap[16] = {0}; + + const int length = 128; + + int64_t num_values = 0; + + internal::BitmapWriter r1(bitmap, 0, length); + + // If this were to write out of bounds, valgrind would tell us + for (int i = 0; i < length; ++i) { +r1.Set(); +r1.Clear(); +r1.Next(); + } + r1.Finish(); + num_values = r1.position(); + + ASSERT_EQ(length, num_values); + + internal::BitmapWriter r2(bitmap, 5, length - 5); + + for (int i = 0; i < (length - 5); ++i) { +r2.Set(); +r2.Clear(); +r2.Next(); + } + r2.Finish(); + num_values = r2.position(); + + ASSERT_EQ((length - 5), num_values); } static inline int64_t SlowCountBits(const uint8_t* data, int64_t bit_offset, http://git-wip-us.apache.org/repos/asf/arrow/blob/f9d1e1be/cpp/src/arrow/util/bit-util.h -- diff --git a/cpp/src/arrow/util/bit-util.h b/cpp/src/arrow/util/bit-util.h index fa0d7a4..a85aff7 100644 --- a/cpp/src/arrow/util/bit-util.h +++ b/cpp/src/arrow/util/bit-util.h @@ -48,49 +48,6 @@ #endif namespace arrow { -namespace internal { - -class BitmapReader { - public: - BitmapReader(const uint8_t* bitmap, int64_t start_offset, int64_t length) - : bitmap_(bitmap), position_(0), length_(length) { -byte_offset_ = start_offset / 8; -bit_offset_ = start_offset % 8; -current_byte_ = bitmap[byte_offset_]; - } - -#if defined(_MSC_VER) - // MSVC is finicky about this cast - bool IsSet() const { return (current_byte_ & (1 << bit_offset_)) != 0; } -#else - bool IsSet() const { return current_byte_ & (1 << bit_offset_); } -#endif - - bool IsNotSet() const { return (current_byte_ & (1 << bit_offset_)) == 0; } - - void Next() { -++bit_offset_; -++position_; -if (bit_offset_ == 8) { - bit_offset_ = 0; - ++byte_offset_; - if (ARROW_PREDICT_TRUE(position_ < length_)) { -current_byte_ = bitmap_[byte_offset_]; - } -} - } - - private: - const uint8_t* bitmap_; - int64_t position_; - int64_t length_; - - uint8_t current_byte_; - int64_t byte_offset_; - int64_t bit_offset_; -}; - -} // namespace internal #ifndef ARROW_NO_DEPRECATED_API @@ -436,6 +393,102 @@ Status BytesToBits(const std::vector&, MemoryPool*, std::shared_ptr 0) { + current_byte_ = bitmap[byte_offset_]; +} + } + +#if defined(_MSC_VER) + // MSVC is finicky about this cast + bool IsSet() const { return (current_byte_ & (1 << bit_offset_)) != 0; } +#else + bool IsSet() const { return current_byte_ & (1 << bit_offset_); } +#endif + + bool IsNotSet() const { return (current_byte_ & (1 << bit_offset_)) == 0; } + + void Next() { +++bit_offset_; +++position_; +if (bit_offset_ == 8) { + bit_offset_ = 0; + ++byte_offset_; + if (ARROW_PREDICT_TRUE(position_ < length_)) { +current_byte_ = bitmap_[byte_offset_]; + } +} + } + + private: + const uint8_t* bitmap_; + int64_t position_; + int64_t length_; + + uint8_t current_byte_; + int64_t byte_offset_; + int64_t bit_offset_; +}; + +class BitmapWriter { + public: + BitmapWriter(uint8_t* bitmap, int64_t start_offset, int64_t l
arrow git commit: ARROW-1606: [Python] Copy .lib files in addition to .dll when bundling libraries for Windows
Repository: arrow Updated Branches: refs/heads/master b640cc0e7 -> 5da6b8795 ARROW-1606: [Python] Copy .lib files in addition to .dll when bundling libraries for Windows I don't have access to a Windows machine at the moment to try this out locally. I will try from wesm/arrow-dist on Appveyor in the meantime Author: Wes McKinney Closes #1127 from wesm/ARROW-1606 and squashes the following commits: 9edd85d [Wes McKinney] Bundle .lib files on Windows in CMakeLists.txt e8f6c73 [Wes McKinney] Copy all suffixes for libraries on Windows to get .dll and .lib files Project: http://git-wip-us.apache.org/repos/asf/arrow/repo Commit: http://git-wip-us.apache.org/repos/asf/arrow/commit/5da6b879 Tree: http://git-wip-us.apache.org/repos/asf/arrow/tree/5da6b879 Diff: http://git-wip-us.apache.org/repos/asf/arrow/diff/5da6b879 Branch: refs/heads/master Commit: 5da6b87950c5bc6658bc49aef29dcf9bf67e0012 Parents: b640cc0 Author: Wes McKinney Authored: Tue Sep 26 10:21:28 2017 +0200 Committer: Uwe L. Korn Committed: Tue Sep 26 10:21:28 2017 +0200 -- python/CMakeLists.txt| 83 +-- python/cmake_modules/FindArrow.cmake | 26 +++--- python/doc/source/development.rst| 3 +- python/setup.py | 81 +- 4 files changed, 113 insertions(+), 80 deletions(-) -- http://git-wip-us.apache.org/repos/asf/arrow/blob/5da6b879/python/CMakeLists.txt -- diff --git a/python/CMakeLists.txt b/python/CMakeLists.txt index af95073..a636d51 100644 --- a/python/CMakeLists.txt +++ b/python/CMakeLists.txt @@ -176,6 +176,14 @@ find_package(Arrow REQUIRED) include_directories(SYSTEM ${ARROW_INCLUDE_DIR}) function(bundle_arrow_lib library_path) + set(options) + set(one_value_args ABI_VERSION SO_VERSION) + set(multi_value_args) + cmake_parse_arguments(ARG "${options}" "${one_value_args}" "${multi_value_args}" ${ARGN}) + if(ARG_UNPARSED_ARGUMENTS) +message(SEND_ERROR "Error: unrecognized arguments: ${ARG_UNPARSED_ARGUMENTS}") + endif() + get_filename_component(LIBRARY_DIR ${${library_path}} DIRECTORY) get_filename_component(LIBRARY_NAME ${${library_path}} NAME_WE) configure_file(${${library_path}} @@ -183,30 +191,45 @@ function(bundle_arrow_lib library_path) COPYONLY) if (APPLE) - configure_file(${LIBRARY_DIR}/${LIBRARY_NAME}.${ARROW_ABI_VERSION}${CMAKE_SHARED_LIBRARY_SUFFIX} - ${BUILD_OUTPUT_ROOT_DIRECTORY}/${LIBRARY_NAME}.${ARROW_ABI_VERSION}${CMAKE_SHARED_LIBRARY_SUFFIX} + configure_file(${LIBRARY_DIR}/${LIBRARY_NAME}.${ARG_ABI_VERSION}${CMAKE_SHARED_LIBRARY_SUFFIX} + ${BUILD_OUTPUT_ROOT_DIRECTORY}/${LIBRARY_NAME}.${ARG_ABI_VERSION}${CMAKE_SHARED_LIBRARY_SUFFIX} COPYONLY) - configure_file(${LIBRARY_DIR}/${LIBRARY_NAME}.${ARROW_SO_VERSION}${CMAKE_SHARED_LIBRARY_SUFFIX} - ${BUILD_OUTPUT_ROOT_DIRECTORY}/${LIBRARY_NAME}.${ARROW_SO_VERSION}${CMAKE_SHARED_LIBRARY_SUFFIX} + configure_file(${LIBRARY_DIR}/${LIBRARY_NAME}.${ARG_SO_VERSION}${CMAKE_SHARED_LIBRARY_SUFFIX} + ${BUILD_OUTPUT_ROOT_DIRECTORY}/${LIBRARY_NAME}.${ARG_SO_VERSION}${CMAKE_SHARED_LIBRARY_SUFFIX} COPYONLY) - else(NOT MSVC) -configure_file(${${library_path}}.${ARROW_ABI_VERSION} - ${BUILD_OUTPUT_ROOT_DIRECTORY}/${LIBRARY_NAME}${CMAKE_SHARED_LIBRARY_SUFFIX}.${ARROW_ABI_VERSION} + elseif(NOT MSVC) +configure_file(${${library_path}}.${ARG_ABI_VERSION} + ${BUILD_OUTPUT_ROOT_DIRECTORY}/${LIBRARY_NAME}${CMAKE_SHARED_LIBRARY_SUFFIX}.${ARG_ABI_VERSION} COPYONLY) -configure_file(${${library_path}}.${ARROW_SO_VERSION} - ${BUILD_OUTPUT_ROOT_DIRECTORY}/${LIBRARY_NAME}${CMAKE_SHARED_LIBRARY_SUFFIX}.${ARROW_SO_VERSION} +configure_file(${${library_path}}.${ARG_SO_VERSION} + ${BUILD_OUTPUT_ROOT_DIRECTORY}/${LIBRARY_NAME}${CMAKE_SHARED_LIBRARY_SUFFIX}.${ARG_SO_VERSION} COPYONLY) endif() - SET(ARROW_SHARED_LIB - ${BUILD_OUTPUT_ROOT_DIRECTORY}/${LIBRARY_NAME}${CMAKE_SHARED_LIBRARY_SUFFIX}) endfunction(bundle_arrow_lib) +function(bundle_arrow_implib library_path) + get_filename_component(LIBRARY_DIR ${${library_path}} DIRECTORY) + get_filename_component(LIBRARY_NAME ${${library_path}} NAME_WE) + configure_file(${${library_path}} + ${BUILD_OUTPUT_ROOT_DIRECTORY}/${LIBRARY_NAME}.lib + COPYONLY) +endfunction(bundle_arrow_implib) + if (PYARROW_BUNDLE_ARROW_CPP) # arrow file(COPY ${ARROW_INCLUDE_DIR}/arrow DESTINATION ${BUILD_OUTPUT_ROOT_DIRECTORY}/include) - bundle_arrow_lib(ARROW_SHARED_LIB) - bundle_arrow_lib(ARROW_PYTHON_SHARED_LIB) + bundle_arrow_lib(ARROW_SHARED_LIB +ABI_VERSION ${ARROW_ABI_VERSION} +SO_VERSION ${ARROW_SO_VERSION}) + bundle_arrow_lib(ARROW_PYTHON_SHARED_LIB +ABI_VERSIO