Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Generate/test Manylinux wheels, clean up wheel/build process #1105

Merged
merged 8 commits into from
Jul 31, 2020
Merged

Conversation

sc1f
Copy link
Contributor

@sc1f sc1f commented Jun 29, 2020

This PR fixes (hopefully for the final time) our build process to build Manylinux-compliant wheels.

Due to an issue in Auditwheel (fixed and released in auditwheel 3.2.0), our internal C++ bindings were not being picked up after auditwheel repair replaces the RPATHs of the C++ binding.

A previous iteration of this PR required a rebuild of our docker images, however I removed a hack from our Linux build where it inserted ./../../pyarrow into the RPATH, which was originally designed as a "hint" to look for pyarrow immediately relative to the install location (usually site-packages). By removing this hack from the Linux build (but keeping it in MacOS), Auditwheel was able to properly delocate the shared libraries and repair the wheel.

Testing on a clean python:3.6-buster and a python:3.7-buster image show that the wheels install properly from pip install, and after pulling down the perspective-python test suite and running it against the installed version from wheel, all tests are shown to pass.

Additionally, this PR also adds test_wheels.sh which reduces our bloat in azure-pipelines by externalizing the build/install in venv/test process for wheels and making it more maintainable.

@sc1f sc1f added enhancement Feature requests or improvements internal Internal refactoring and code quality improvement labels Jun 29, 2020
@sc1f sc1f mentioned this pull request Jul 29, 2020
@sc1f sc1f self-assigned this Jul 29, 2020
@sc1f sc1f added the Python label Jul 29, 2020
Copy link
Member

@texodus texodus left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good!

@texodus
Copy link
Member

texodus commented Jul 31, 2020

Thanks for the PR!

@texodus texodus merged commit 499b622 into master Jul 31, 2020
@texodus texodus deleted the manylinux branch July 31, 2020 04:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Feature requests or improvements internal Internal refactoring and code quality improvement Python
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants