Commits

Wes McKinney authored 120c21f4bf6
ARROW-5082: [Python] Substantially reduce Python wheel package and install size Current manylinux wheel packages on master: * .whl manylinux1 package is **61 MB** * Installed size is **223 MB** This patch * .whl package is **15 MB** * Installed size is **57 MB** That's more than a 4x size reduction. There's several things in this patch: * We no longer ship 2 copies of shared libraries in the wheels. We ship just the SO-versioned shared libraries now. Because this creates problems for linkers (`-larrow -lparquet` etc won't work as is), I added a function `pyarrow.create_library_symlinks()` that adds symlinks to the versioned shared libraries. This function has to be run once under user permissions that can write to the site-packages/pyarrow/ directory. * Gandiva is disabled. If we're going to ship Gandiva as a wheel, I think we should do it as an add-on `pyarrow_gandiva` package per ARROW-8518. * Environment variable PYARROW_INSTALL_TESTS added to not install `pyarrow.tests`, which is about 2.3MB uncompressed. I don't think we need to ship the tests in the wheels. Currently we are still shipping the tests. * Compiled Cython C++ source files are no longer included in the wheels. Closes #7334 from wesm/smaller-wheels-try-3 Lead-authored-by: Wes McKinney <wesm@apache.org> Co-authored-by: Krisztián Szűcs <szucs.krisztian@gmail.com> Co-authored-by: Wes McKinney <wesm+git@apache.org> Signed-off-by: Wes McKinney <wesm@apache.org>