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

Lack of complete manylinux1 wheel support in pex forces pants workarounds for plugins #4956

Closed
jsirois opened this issue Oct 8, 2017 · 4 comments
Assignees

Comments

@jsirois
Copy link
Contributor

jsirois commented Oct 8, 2017

Pex doesn't yet fully support manylinux1 wheels; yet, pants is forced to release one to satisfy pypi hosting constraints. When the pants plugin resolver runs, it uses pex resolution machinery and chokes trying to resolve pantsbuild.pants as a transitive dependency of the plugin. This is currently worked around by deploying a pantsbuild.pants sdist to pypi along-side the platform-specific wheels. The sdist is bogus since it contains a native_engine.so for only one platform and the workaround is only effective for pip installs and then only because the pip installed pantsbuild.pants wheel is earlier in the PYTHONPATH than the pantsbuild.pants sdist resolved as plugins' transitive dependency.

Remove deployment of sdists alongside wheels from build-support/bin/release.sh when we upgrade to pex with full manylinux1 support.

See:

jsirois added a commit to jsirois/pants that referenced this issue Oct 8, 2017
This implements a workaround for pex lack of support for `manylinux1`
as outlined in pantsbuild#4956.
@jsirois
Copy link
Contributor Author

jsirois commented Oct 8, 2017

An important note - I setup a travis-ci job for the https://github.com/pantsbuild/setup repo to verify the workaround works under pip for both OSX and linux: https://travis-ci.org/pantsbuild/setup/builds/284937425

jsirois added a commit that referenced this issue Oct 9, 2017
This implements a workaround for pex lack of support for `manylinux1`
as outlined in #4956.
@kwlzn
Copy link
Member

kwlzn commented Oct 20, 2017

I have a forked-and-extended variant of pex#316 95% of the way here: pex-tool/pex#399

if this is a big enough problem, I can probably justify spending some time to get that out with the team.

@kwlzn
Copy link
Member

kwlzn commented May 16, 2018

pex provides full manylinux support as of 1.4.0, so this should now be unblocked.

@jsirois
Copy link
Contributor Author

jsirois commented Jun 6, 2018

A late note that these workarounds led a user to reasonably set up their own repo only containing sdists and then attempt to run pants (via pantsbuild/setup script). This failed as described in #5882 and fixing this issue will remove the temptation to try to build pants from a bogus pantsbuild.pants sdist since we'll no longer publish one of those.

jsirois added a commit to jsirois/pants that referenced this issue Jun 7, 2018
stuhood pushed a commit that referenced this issue Jun 7, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants