Commits

Wes McKinney authored 9e875a6843b
ARROW-819: Public Cython and C++ API in the style of lxml, arrow::py::import_pyarrow method I have been looking at LXML's approach to creating both a public Cython API and C++ API https://github.com/lxml/lxml While this may seem like a somewhat radical reorganization of the code, putting all of the main symbols in a single Cython extension makes generating a C++ API for them significantly simpler. By using `.pxi` files we can break the codebase into as small pieces as we like (as long as there are no circular dependencies). As a convenient side effect, the build times are shorter. Author: Wes McKinney <wes.mckinney@twosigma.com> Closes #680 from wesm/ARROW-819 and squashes the following commits: 9e6ee246 [Wes McKinney] Fix up optional extensions cff757de [Wes McKinney] Expose pyarrow C API in arrow/python/pyarrow.h b39d19cd [Wes McKinney] Fix test suite. Move _config into lib ff1b5e51 [Wes McKinney] Rename things a bit d4a83912 [Wes McKinney] Reorganize Cython code in the style of lxml so make declaring a public C API easier