### Rationale for this change
This PR fixes several typos in `arrow/cpp/*`
### What changes are included in this PR?
This PR proposes to fix a typo in `arrow/cpp/*`
### Are these changes tested?
Manually tested via my browser.
### Are there any user-facing changes?
No, dev-only.
Authored-by: Hyukjin Kwon <gurwls223@apache.org>
Signed-off-by: David Li <li.davidm96@gmail.com>
### Rationale for this change
A new developer can find proper documentation more easily.
### What changes are included in this PR?
Change the reference URL link to the official documentation page instead of the GitHub project page.
### Are these changes tested?
Yes.
### Are there any user-facing changes?
No.
* GitHub Issue: #44416
Authored-by: Hiroyuki Sato <hiroysato@gmail.com>
Signed-off-by: Sutou Kouhei <kou@clear-code.com>
Closes#6288 from kou/cpp-readme-fix-link and squashes the following commits:
d2e4b94be <Sutou Kouhei> Fix dead links in README
Authored-by: Sutou Kouhei <kou@clear-code.com>
Signed-off-by: Antoine Pitrou <antoine@python.org>
HTTPS is more secure.
I will leave this patch up in case anyone else wants to look for HTTP URLs to change to HTTPS. It's a bit hard to find them because of the `http://` in the Apache license header. Maybe we should change our Apache license headers to use https?
Author: Wes McKinney <wesm+git@apache.org>
Closes#4463 from wesm/use-https and squashes the following commits:
6ee7a4ef4 <Wes McKinney> Update some URLs from http to https
This was pretty much a huge pain but addresses accumulated documentation debt after the conda compiler migration and the CMake refactor. I suggest we not stress too much over small details on this and do more work to improve these docs in follow up PRs. I did the best I could under the circumstances and need to move on to other things now
I think the overall organization of the Sphinx project for developers is much improved, take a look (I will post a link to a published version for review)
JIRAs addressed by this PR and other things I did
* Update cpp/thirdparty/README.md given CMake refactor (this was totally out of date). This now directs users to the Sphinx C++ developer guide
* ARROW-4339: Move cpp/README.md to Sphinx documentation (and clean it up a lot!!)
* ARROW-4425: Move Contributing Guidelines from Confluence to Sphinx, update top level README
* ARROW-4232: Remove references to pre-gcc5 ABI issues
* ARROW-4165: Move Windows C++ developer guide to Sphinx (from cpp/apidoc/Windows.md)
* ARROW-4547: Update Python development instructions re: producing CUDA-enabled pyarrow
* ARROW-4326 / ARROW-3096: Update Python build instructions re: January 2019 compiler migration
Author: Wes McKinney <wesm+git@apache.org>
Closes#3942 from wesm/developer-docs-0.13 and squashes the following commits:
a3c3dd5de <Wes McKinney> Add some Boost info, misc cleaning
2ccc3de18 <Wes McKinney> Remove index.md altogether
66da97e7f <Wes McKinney> Remove unused text from cpp/apidoc/index.md
504bc134e <Wes McKinney> restore 'what's in the arrow libraries' section
8d1f33e19 <Wes McKinney> Finish initial documentation revamp for 0.13, stopping here
84dd680a2 <Wes McKinney> Some docs reorg, begin rewriting cpp/README.md into docs/source/developers/cpp.rst
- Add a top-level script that reformats all known CMake files in the source tree
- Add a lint step in Travis that checks CMake files are properly formatted
Requires [cmake_format](https://github.com/cheshirekow/cmake_format) and Python 3.
Author: Antoine Pitrou <antoine@python.org>
Closes#3606 from pitrou/ARROW-4363-cmake-format and squashes the following commits:
762df291 <Antoine Pitrou> Add mention in cpp/README.md
9073af98 <Antoine Pitrou> ARROW-4363: Add CMake format checks
All in all this wasn't too painful, and Gandiva seems to run fine (I wouldn't have expected otherwise).
I tested this locally on Ubuntu 18.10, and found that the LLVM libraries from apt fail to link with ld.gold (binutils 1.16), so I added an option to toggle ld.gold ON and OFF (it's now OFF by default; using `ld` by default should yield strictly fewer bugs / build failures). Not sure why that is
I will need some help testing and debugging the Crossbow and packaging tasks to make sure this doesn't break anything else before we merge it
Author: Wes McKinney <wesm+git@apache.org>
Author: Pindikura Ravindra <ravindra@dremio.com>
Author: Korn, Uwe <Uwe.Korn@blue-yonder.com>
Author: Uwe L. Korn <uwelk@xhochy.com>
Closes#3499 from wesm/llvm-7 and squashes the following commits:
5c48eeda7 <Korn, Uwe> Switch to docker image on branch
93aadd780 <Uwe L. Korn> Update clang
e155fad71 <Pindikura Ravindra> Use the llvm from apt-get (instead of travis)
987fc5fb9 <Wes McKinney> Enable all LLVM libraries
ea1f01323 <Wes McKinney> Link libLLVMSupport.a later
034b17d58 <Wes McKinney> Add missing libLLVMSupport.a dependency
4448243e4 <Wes McKinney> Install clang before calling travis_install_linux.sh
59d170a52 <Wes McKinney> Fix more usages of LLVM version
ce831e247 <Wes McKinney> Fix clang executable name in .travis.yml
69fd48667 <Pindikura Ravindra> ARROW-3972: misc fixes for LLVM7
c858441c3 <Wes McKinney> Some CI fixes
87434dafe <Wes McKinney> Code comments
d198eb867 <Wes McKinney> Decruft. Turn off ld.gold by default
2fc3a26d6 <Wes McKinney> Build project with LLVM 7. Add option to disable using ld.gold
The first goal of this change is two fold, to provide a fast default of users with the least amount of compiler warnings. The second goal of this change is to default the `BUILD_WARNING_LEVEL` to `CHECKIN`, if the release type is not `RELEASE`, minimizing the back-and-forth with CI from the developer perspective.
Author: François Saint-Jacques <fsaintjacques@gmail.com>
Author: Wes McKinney <wesm+git@apache.org>
Closes#3464 from fsaintjacques/ARROW-4336-cmake-warning-default and squashes the following commits:
5ba62e05 <Wes McKinney> Minor fix to cpp/README.md
6741f8e6 <François Saint-Jacques> Revert bad change
1928f503 <François Saint-Jacques> Fix wrong cmake expression.
16590326 <François Saint-Jacques> Make mingw happy
e4018ee2 <François Saint-Jacques> Enforce warning level to PRODUCTION in python build
91bf7f46 <François Saint-Jacques> Ignore python conversion warning
40cfb85a <François Saint-Jacques> Make Release the default build type
ccaf9dd7 <François Saint-Jacques> ARROW-4336: Change the default BUILD_WARNING_LEVEL to CHECKIN
- Non-vendored, non-CMake gRPC dependencies are accepted via `GRPC_HOME`
- Non-vendored, non-CMake c-ares dependencies are accepted via `CARES_HOME`
- Refactored gRPC dependency configuration into `FindgRPC.cmake`
```shell
# Build with all system dependencies
env GRPC_HOME=/usr/local/Cellar/grpc/1.17.2 CARES_HOME=/usr/local/Cellar/c-ares/1.15.0 PROTOBUF_HOME=/usr/local/Cellar/protobuf/3.6.1.3_1 cmake -DARROW_FLIGHT=ON
# Build with all vendored dependencies
cmake -DARROW_FLIGHT=ON
# Build with CMake gRPC installation
cmake -DgRPC_INSTALL=ON -DgRPC_BUILD_TESTS=OFF -DgRPC_PROTOBUF_PROVIDER=package -DgRPC_ZLIB_PROVIDER=package -DgRPC_CARES_PROVIDER=package -DgRPC_SSL_PROVIDER=package -DOPENSSL_ROOT_DIR=/usr/local/Cellar/openssl/1.0.2q && make -j
cd path/to/arrow
env GRPC_HOME=/usr/local/lib/cmake/grpc CARES_HOME=/usr/local/ cmake -DARROW_FLIGHT=ON -DgRPC_DIR=/usr/local/lib/cmake/grpc
```
Author: David Li <David.M.Li@twosigma.com>
Author: Wes McKinney <wesm+git@apache.org>
Author: David Li <li.davidm96@gmail.com>
Closes#3370 from lihalite/grpc-nocmake and squashes the following commits:
b77c3a44f <Wes McKinney> c-ares fixes
8bb701803 <David Li> Fix flight tests to use a valid port number
bdf0bc569 <David Li> Fix build of Flight tests
ea098c5e1 <David Li> Caution against building with system gRPC
ef9100a62 <David Li> Add Debian/Ubuntu instructions to build Flight with system libs
5756129aa <David Li> Sort environment variable entries in ThirdpartyToolchain.cmake
3f7a41cfd <David Li> Use environment variables for CARES_HOME
fe440ba0e <David Li> Explicitly link to static c-ares
942d84a25 <David Li> Fix reference to libgrpc++.a
589ad9de2 <David Li> Explain how to build Flight in README
38a219aae <David Li> Properly depend on Protobuf for Flight protos
1eed959c4 <David Li> Fix building with c-ares
e8c494d33 <David Li> Fix building with vendored/CMake gRPC
33e1282cc <David Li> Make sure to add gRPC include directory
7e8641887 <David Li> Fix name of FindgRPC.cmake to work on case-sensitive systems
0e618882c <David Li> Explicitly link Flight to static gRPC
ee85e8674 <David Li> Move gRPC build configuration to FindGrpc.cmake
d3074ac5f <David Li> Add option for non-vendored, non-CMake gRPC dependency
It looks like bison/flex also need to be installed on a clean ubuntu installation.
Author: emkornfield <emkornfield@gmail.com>
Closes#3417 from emkornfield/update_build_instructions and squashes the following commits:
6af2f341 <emkornfield> reference thrift.
41db4213 <emkornfield> Update README.md to reflect parquet deps
Author: Micah Kornfield <emkornfield@gmail.com>
Closes#3260 from emkornfield/update_build_instructions and squashes the following commits:
80c112b25 <Micah Kornfield> Add python to requirements list for running on ubuntu
SetupCxxFlags.cmake does not list "RELWITHDEBINFO" in the final flag
setup, so cmake will error out if that build config is selected. It's
handy for quick debugging without switching your python build etc over
to "DEBUG".
FindClangTools.cmake could check the version of 'clang-format' (no
version suffix) to see if it satisfies a version requirement. Also the doccomment lists the incorrect variable name for the hint path
Author: Benjamin Kietzman <bengilgit@gmail.com>
Closes#3227 from bkietz/ARROW-4082-tweak-cmake and squashes the following commits:
15526cf01 <Benjamin Kietzman> allow RelWithDebInfo, improve FindClangTools
This provides much more granular control over what targets are built. Before this patch `ninja arrow` would build all libraries _and_ tests if `ARROW_BUILD_TESTS=ON`. If you wanted to build the tests for a dependent target of the Arrow libraries, like Parquet or Plasma, you were forced to build the Arrow core unit tests.
Now you can do
```
ninja parquet-tests
```
And it will only build the Arrow and Parquet libraries, and the tests labeled with "parquet-tests".
Similarly this allows you to rebuild the libraries without necessarily having to relink all the unit tests (e.g. with `ninja arrow` or `ninja parquet`)
Author: Wes McKinney <wesm+git@apache.org>
Closes#3204 from wesm/ARROW-4026 and squashes the following commits:
1e41eee2d <Wes McKinney> Misc fixes, add missing toolchain dependency
420282433 <Wes McKinney> Add *-all, *-tests, *-benchmarks modular build targets. Use in Travis CI
Build support is tested by `docker-compose run cpp-alpine`
Author: Krisztián Szűcs <szucs.krisztian@gmail.com>
Closes#3191 from kszucs/ARROW-2637 and squashes the following commits:
ea43e08ee <Krisztián Szűcs> add bash to run the tests
348e982a0 <Krisztián Szűcs> add README instructions to build arrow on alpine linux
In reviewing what usages of the `install` command we have, I added a helper function to add `.pc` files to reduce code duplication
Author: Wes McKinney <wesm+git@apache.org>
Closes#3176 from wesm/ARROW-4029 and squashes the following commits:
f5b3811fc <Wes McKinney> Exclude headers with 'internal' from installation. Document in README. Add function to reduce code duplication in adding pkg-config files
This also resolves ARROW-3984
Author: Wes McKinney <wesm+git@apache.org>
Closes#3174 from wesm/ARROW-3449 and squashes the following commits:
9f33412c4 <Wes McKinney> Fixes to build with CMake 3.2. Document what features require newer CMake in the README. Add Docker task for CMake 3.2 from kszucs
Apparently CMake really does not want you to do `make $TARGET install` out of the box; I searched various threads about this and there's no great solutions. For expert users, this provides that option of installing only targets that have been built, while others will be ignored.
Because the possibility of users shooting themselves in the foot is so high with this, it doesn't make sense to enable by default. In the hands of an expert though, this can significantly reduce build times and make it possible to build libraries and unit tests for only a part of the project, then only install those libraries.
This will install all header files regardless of what libraries are built; I didn't see any easy way to work that out since you have to have knowledge of what headers are used by what library.
Resolves ARROW-3994
Author: Wes McKinney <wesm+git@apache.org>
Closes#3172 from wesm/ARROW-3184 and squashes the following commits:
583a916e0 <Wes McKinney> plasma_store_server requires static libraries
3c2a21ea1 <Wes McKinney> Add plasma_store_server to 'plasma' target
85fda6419 <Wes McKinney> Build plasma again in Python build for now
1b3ac57dc <Wes McKinney> Fix multiline comment in CMake
d3ce84c4e <Wes McKinney> More option reorg
b6630605c <Wes McKinney> Reorganize CMake options a bit more logically. Add more explicit warning about ARROW_OPTIONAL_INSTALL
262058b2f <Wes McKinney> Do not build Gandiva JNI bindings by default
918fdb371 <Wes McKinney> Fix ARROW_TEST_INCLUDE_LABELS option to actually work
578bc58f5 <Wes McKinney> Use GLOB instead of GLOB_RECURSE
daaafa214 <Wes McKinney> Misc fixes
a84643d6e <Wes McKinney> Fix header install option
f899bdd99 <Wes McKinney> Work around ARROW-4026 via environment variable for now
001a3ad57 <Wes McKinney> Pass in ARROW_TEST_INCLUDE_LABELS via environment variable
a1df9ab3d <Wes McKinney> Clarify documentation
2eca8a740 <Wes McKinney> Enable modular builds and install with ARROW_OPTIONAL_INSTALL option. Remove ARROW_GANDIVA_BUILD_TESTS. Add helper function for installing header files. Build fewer targets using these options in some Travis CI jobs
I found while working on this that disabling `ARROW_GANDIVA_BUILD_TESTS` would break the build -- I think this was caused by some other changes I made. We should remove that option and instead use the new modular build targets and invoke unit tests using labels. So we would write
```
ninja gandiva # this will build all libraries and unit tests when ARROW_BUILD_TESTS=ON
ctest -L gandiva
```
Author: Wes McKinney <wesm+git@apache.org>
Closes#3156 from wesm/ARROW-3988 and squashes the following commits:
0420f9ed0 <Wes McKinney> Remove arrow::PrimitiveBuilder from builder.rst for now because of Sphinx warning
f8a33a5aa <Wes McKinney> Fix gandiva test flag
c4893534c <Wes McKinney> Add ARROW_BUILD_TESTS to appveyor-cpp-test-cmake-script.bat
5c6a33271 <Wes McKinney> Do not build unit tests by default, fix building Gandiva unit tests when ARROW_BUILD_TESTS=OFF
I added a section to the cpp/README.md about the modular build targets.
Author: Wes McKinney <wesm+git@apache.org>
Closes#3152 from wesm/ARROW-3248 and squashes the following commits:
ba3a3e58c <Wes McKinney> Need to add arrow- prefix to some Travis scripts
1f3daaf78 <Wes McKinney> Rename io/ipc tests/executables. Add appropriate labels/prefixes to all unit tests/benchmarks. Add labels option to ADD_BENCHMARK
Also rename the arrow::gpu namespace to arrow::cuda.
Author: Kouhei Sutou <kou@clear-code.com>
Author: Antoine Pitrou <antoine@python.org>
Closes#3088 from pitrou/ARROW-3209-rename-arrow-gpu-to-cuda and squashes the following commits:
d16eb713 <Kouhei Sutou> Support arrow-cuda.pc in build directory
32381216 <Kouhei Sutou> Fix path
219ffa28 <Kouhei Sutou> Rename GPU to CUDA
f8683cac <Kouhei Sutou> Rename GPU to CUDA
c4f7f381 <Kouhei Sutou> Rename red-arrow-gpu to red-arrow-cuda
267de1b8 <Kouhei Sutou> Rename libarrow-gpu-glib to libarrow-cuda-glib
9687346a <Antoine Pitrou> ARROW-3209: Rename libarrow_gpu to libarrow_cuda
- also use thirdy-party protobuf install for gandiva
Author: Pindikura Ravindra <ravindra@dremio.com>
Closes#2743 from pravindra/arrow-3440 and squashes the following commits:
fbdad9dbf <Pindikura Ravindra> ARROW-3440: add desc for gandiva.cpp.build.dir
2b1091feb <Pindikura Ravindra> ARROW-3440: fix typos and address review
3d032d832 <Pindikura Ravindra> ARROW-3440: trivial change to rebuild
744677dcc <Pindikura Ravindra> ARROW-3440: fix readme for builds
Author: Wes McKinney <wesm+git@apache.org>
Closes#2608 from wesm/ARROW-3197 and squashes the following commits:
d43ea03a2 <Wes McKinney> Add instructions for building Parquet libraries and running the unit tests
I'm trying to get this working but installing the LLVM tools takes a long time (I ran into https://issues.apache.org/jira/browse/ARROW-3033).
Author: Wes McKinney <wesm+git@apache.org>
Closes#2416 from wesm/ARROW-2952 and squashes the following commits:
22bdc9db <Wes McKinney> Restore all C++ files prior to IWYU edits so we can deal with issues in some other PR
70a64fc1 <Wes McKinney> Restore forward declaration to try to fix msvc
6da7cd74 <Wes McKinney> lint
0f5fc6fc <Wes McKinney> Add note to cpp/README.md
873d6459 <Wes McKinney> Fix up Dockerfiles to work again
a487fc2e <Wes McKinney> Try to modularize installing conda environment. Why does this not work?
611cd2ed <Wes McKinney> Clean up IWYU script more. Need to install Python toolchain in Dockerfile
8501562c <Wes McKinney> Set CC/CXX compiler to clang-6
5c4ade8a <Wes McKinney> First cut at IWYU docker setup
This patch provides a script for downloading all the third party dependencies to a particular location, and new environment variables that can be used to direct the build system to use local files for ExternalProject builds instead of accessing the internet.
Author: Wes McKinney <wesm+git@apache.org>
Closes#2141 from wesm/ARROW-902 and squashes the following commits:
4583759a <Wes McKinney> Fix Orc download URL
01edf60a <Wes McKinney> Add offline build how-to in thirdparty/README.md
a38249e7 <Wes McKinney> Use -c with wget
4e7c819d <Wes McKinney> Read toolchain versions from thirdparty/versions.txt
9d4478b5 <Wes McKinney> First draft of dependency download, offline build
Author: Korn, Uwe <Uwe.Korn@blue-yonder.com>
Closes#1922 from xhochy/ARROW-2484 and squashes the following commits:
a03cce9d <Korn, Uwe> ARROW-2484: Document ABI compliance checking
Also add docs on how to install on macOS via Homebrew.
Author: Alessandro Andrioni <jakedust@gmail.com>
Closes#1972 from andrioni/patch-1 and squashes the following commits:
4ecc95f <Alessandro Andrioni> clang-format 5.0 is needed now
Use a hand-written decimal parser.
Author: Antoine Pitrou <antoine@python.org>
Closes#1880 from pitrou/ARROW-2224-remove-boost-regex-dep and squashes the following commits:
c173ceb <Antoine Pitrou> Mark result unused
0277855 <Antoine Pitrou> Add C++ decimal benchmark
f19dac2 <Antoine Pitrou> Address review comments
ba0b62e <Antoine Pitrou> ARROW-2224: Remove boost-regex dependency
libboost-regex-dev is required
Author: Andy Grove <andygrove73@gmail.com>
Closes#1732 from andygrove/ARROW-2291 and squashes the following commits:
f82154ab <Andy Grove> update README to include instructions for installing libboost-regex-dev since this is required
More to do here, see discussion in https://issues.apache.org/jira/browse/ARROW-1589
Author: Wes McKinney <wes.mckinney@twosigma.com>
Closes#1503 from wesm/ARROW-2023 and squashes the following commits:
e3a590e <Wes McKinney> Do not invoke memcpy unless number of bytes to read greater than 0. Return more informative error message
90787ec <Wes McKinney> Add ASAN instructions, llvm-symbolizer instructions for fuzzers. Remove Apache Kudu cruft from run-test.sh
53d2c92 <Wes McKinney> Add missing lsan-suppressions.txt to enable ASAN to run with unittests
69cb5b7 <Wes McKinney> Start C++ stream reader tests for malformed inputs
See https://issues.apache.org/jira/browse/ARROW-1589
This only implements the fuzzer for a single input path, but since it also sets up the fuzzing infrastructure, it should be easy to add more tests (feel free to propose some of them to be included in this PR as well).
Author: Marco Neumann <marco.neumann@blue-yonder.com>
Closes#1529 from crepererum/ARROW-1589 and squashes the following commits:
1f76392 [Marco Neumann] add fuzzing docs
312d8d2 [Marco Neumann] add ipc-fuzzing-test
25a9273 [Marco Neumann] add ARROW_USE_COVERAGE
Author: yosuke shiro <ys2014hs@gmail.com>
Closes#1521 from shiro615/change-description-from-osx-to-macos and squashes the following commits:
ab03f72f [yosuke shiro] [C++] change description from OS X to macOS
Author: Wes McKinney <wes.mckinney@twosigma.com>
Author: Antoine Pitrou <antoine@python.org>
Closes#1516 from pitrou/ARROW-2035-update-cpplint and squashes the following commits:
8f2f892b [Wes McKinney] Fix IWYU errors surfaced by newer cpplint
f5175dda [Antoine Pitrou] ARROW-2035: [C++] Update vendored cpplint.py to a Py3-compatible one
* [C++] Update README for linting
There are hidden gotchas when trying to move the linting Makefile targets,
mention them.
* Mention the LLVM releases page
Author: yosuke shiro <ys2014hs@gmail.com>
Closes#1496 from shiro615/build-instruction-on-macos-and-homebrew-is-incomplete and squashes the following commits:
6b32f687 [yosuke shiro] [C++] fix Build instruction on macOS and Homebrew
- Turns off building optional ORC extension by default
- Fixes travis builds to turn on ORC extension for a few branches
- Adds trivial import test to python build
- Adds documentation on how to build optional ORC extension
Author: Jim Crist <jiminy.crist@gmail.com>
Closes#1457 from jcrist/orc-off-by-default and squashes the following commits:
fc9898d8 [Jim Crist] Document how to build ORC integration
950ae38e [Jim Crist] ORC integration is off by default
Author: Wes McKinney <wes.mckinney@twosigma.com>
Closes#1284 from wesm/ARROW-1762 and squashes the following commits:
b71cf40 [Wes McKinney] Add note to readme about need to set LC_ALL on some Linux systems
Add a preprocessor macro ARROW_STATIC when doing static library builds on Windows. Clients developing/building off the static library will also need to define this - please let me know how this should be documented, if this is an acceptable approach.
Author: John Jenkins <jjenkins@wolve.com>
Closes#1244 from JohnPJenkins/windows-static-lib and squashes the following commits:
46b1a215 [John Jenkins] [ARROW-1723] rework static lib generation on Windows
Comparison should always succeed so, it makes better sense to return boolean
values as the result of comparison instead of Status.
This changeset introduces a set of new compare functions and deprecates the
current ones.
Author: Amir Malekpour <a.malekpour@gmail.com>
Author: Amir Malekpour <a.malekpour@gmail.com>
Closes#1156 from amirma/arrow-1525 and squashes the following commits:
b94ee28 [Amir Malekpour] ARROW-1525: [C++] New compare functions that return boolean instead of Status
I'm going to quick make a pass through later today and see how many of these warning suppressions I can remove
Author: Wes McKinney <wes.mckinney@twosigma.com>
Closes#1148 from wesm/warning-fixes and squashes the following commits:
e930152a [Wes McKinney] Only build compute modules if -DARROW_COMPUTE=ON
d6ca7ac0 [Wes McKinney] Slight refactor of CMakeLists.txt to move Arrow library setup to src/arrow
e2c61a2e [Wes McKinney] Use -Wno-unknown-warning-option
3d2d7265 [Wes McKinney] Fix travis CI script
6d0d4117 [Wes McKinney] Use BUILD_WARNING_LEVEL in Travis CI
1bec4a76 [Wes McKinney] Fix some more compiler warnings
cae05fb5 [Wes McKinney] Fix documentation compiler warnings
f76b2b93 [Wes McKinney] Fix a bunch of documentation warnings
ac54e2df [Wes McKinney] Remove some clang warning suppressions, fix warnings
6935b8c8 [Wes McKinney] Fix compiler warnings with clang-4.0
cc @cloud-fan
With this patch we now try to cast to indicated type on ingest of objects from pandas:
```
In [3]: arr = np.array([None] * 5)
In [4]: pa.Array.from_pandas(arr)
Out[4]:
<pyarrow.lib.NullArray object at 0x7f6cf1485d18>
[
NA,
NA,
NA,
NA,
NA
]
In [5]: pa.Array.from_pandas(arr, type=pa.int32())
Out[5]:
<pyarrow.lib.Int32Array object at 0x7f6cf1485d68>
[
NA,
NA,
NA,
NA,
NA
]
```
I also added zero-copy casts from integers of the right size to each of the date and time types.
Includes refactoring for ARROW-1481.
Author: Wes McKinney <wes.mckinney@twosigma.com>
Closes#1063 from wesm/ARROW-1156 and squashes the following commits:
166d1a50 [Wes McKinney] iwyu
34f5c9d1 [Wes McKinney] Harden default cast options, fix unsafe Python case
1d07b756 [Wes McKinney] Add some basic casting unit tests in Python
c1b45709 [Wes McKinney] Expose arrow::compute::Cast in Python as Array.cast. Still need to write tests
a9a04c9c [Wes McKinney] UnaryKernel::Call returns Status for now for simplicity. Support pre-allocated memory
8903709b [Wes McKinney] Implement casts from null to numbers. Try to cast for types where we do not have an inference rule when converting from arrays of Python objects
a22dd20a [Wes McKinney] Add test to assert zero copy for compatible integer to date/time
a14b83f7 [Wes McKinney] Create callable CastKernel object. Add zero-copy cast rules for date/time types
This adds `iwyu` make target to run `include-what-you-use` on all changed files of the current branch. As suggested in the ticket https://issues.apache.org/jira/browse/ARROW-1413 I took the code of `apache-kudu` as a starting point and added a few modifications.
While it works fine locally, I'm struggling to get it to work (i.e. build is failing) on travis. Somehow the check isn't performed without raising an error. I expect that clang doesn't have the iwyu properly installed but I couldn't verify it, yet.
Also, the tool requires a `compile_commands.json` to be present including all the files to be checked which is why I added the `export CMAKE_EXPORT_COMPILE_COMMANDS=1` to the `travis_env_common.sh`
This may be an issue since we are partially compiling multiple times but never the full codebase which is why I included the make/ninja iwyu twice.
Author: fjetter <florian.jetter@blue-yonder.com>
Author: Wes McKinney <wes.mckinney@twosigma.com>
Closes#1016 from fjetter/ARROW-1413 and squashes the following commits:
1a28703e [Wes McKinney] Add note to README about IWYU
c0dcccb1 [Wes McKinney] Add 'all' option to iwyu.sh for invoking iwyu on whole codebase
126f9f29 [Wes McKinney] Remove extra .clang-format file
e5bfa4ab [Wes McKinney] Remove iwyu from Travis CI files
59f4b3df [fjetter] set -x at beginning of file
31baf2e6 [fjetter] Set -e in iwyu.sh just before python script
f4f747d9 [fjetter] Add compilation database to env_common
970d0e64 [fjetter] Update comment in get-upstream-commit
57f29270 [fjetter] Add proper commit identifier
7fbc6ea5 [fjetter] Add iwyu build support dir to rat exclusion
41edfc28 [fjetter] Migrate kudu iwyu code to arrow
Author: mnc <nobuya.sasaki@speee.jp>
Closes#1007 from mnc/append_how_to_build_cpp and squashes the following commits:
0ee8f6ce [mnc] append steps to clone source code to README.mb