Pex build is failing, please help if you know the ...
# general
b
Pex build is failing, please help if you know the cause and how to deal with it. I have specified pex_binary.complete_platforms.
Copy code
$ ./pants package path/to/pex:bin
...
1. cp38-cp38-manylinux_2_27_x86_64:
    Failed to resolve all requirements for complete platform cp38-cp38-manylinux_2_27_x86_64 from thirdparty/python/lockfiles/python_default.txt:

Configured with:
    build: False
    use_wheel: True

Dependency on promise not satisfied, 1 incompatible candidate found:
1.) promise 2.3 (via: tensorflow-datasets<5.0.0,>=4.6.0 -> promise) does not have any compatible artifacts:
    <https://files.pythonhosted.org/packages/cf/9c/fb5d48abfe5d791cd496e4242ebcf87a4bb2e0c3dcd6e0ae68c11426a528/promise-2.3.tar.gz>
e
promise 2.3 is not available as a pre-built wheel: https://pypi.org/project/promise/#files When using either platforms or complete platforms all dependencies must be available as pre-built wheels. If you depend on an sdist-only artifact like this, the only current recourse is to: 1. Pre-build a wheel for the target platform on your own (Using
pip wheel
on the target platform is probably the way to go). 2. Place the wheel on a web server or shared disk. 3. Tell Pants to look at the web server or shared disk from 2 via `[python-repos] repos`: https://www.pantsbuild.org/docs/reference-python-repos#section-repos
b
Thanks! I’ll give it a try!