worried-painter-31382
09/24/2022, 8:25 PMworried-painter-31382
09/24/2022, 8:28 PM22:23:47.42 [INFO] Preserving local process execution dir /tmp/pants-sandbox-RlFtMs for Generate lockfile for python-default
22:23:47.42 [INFO] Completed: Generate lockfile for python-default
22:23:47.42 [DEBUG] Completed: Scheduling: Generate lockfile for python-default
22:23:47.42 [DEBUG] Completed: Generate Python lockfile
22:23:47.42 [DEBUG] Completed: `generate-lockfiles` goal
22:23:47.42 [DEBUG] computed 1 nodes in 111.510922 seconds. there are 15428 total nodes.
22:23:47.42 [ERROR] 1 Exception encountered:
Engine traceback:
in select
in pants.core.goals.generate_lockfiles.generate_lockfiles_goal
in pants.backend.python.goals.lockfile.generate_lockfile
in pants.engine.process.fallible_to_exec_result_or_raise
Traceback (most recent call last):
File "/home/tobiasn/.cache/pants/setup/bootstrap-Linux-x86_64/2.13.0_py38/lib/python3.8/site-packages/pants/engine/process.py", line 272, in fallible_to_exec_result_or_raise
raise ProcessExecutionFailure(
pants.engine.process.ProcessExecutionFailure: Process 'Generate lockfile for python-default' failed with exit code 1.
stdout:
stderr:
pex: Resolving interpreters
pex: Constraints on interpreters: (Requirement(name='CPython', url=None, extras=frozenset(), specifier=<SpecifierSet('~=3.10')>, marker=None),), Matching Interpreter: /home/tobiasn/.pyenv/versions/3.10.2/bin/python3.10
pex: Resolving interpreters :: Resolving for:
/home/tobiasn/.pyenv/versions/3.10.2/bin/python3.10
pex: Spawning a maximum of 16 parallel jobs to process:
/home/tobiasn/.pyenv/versions/3.10.2/bin/python3.10
pex: Calculating compatible python versions for ('~=3.10',)
pex: Calculating compatible python versions for ('~=3.10',): 6.7ms
pex: Hashing pex
pex: Hashing pex: 20.0ms
pex: Isolating pex
pex: Isolating pex: 0.0ms
pid 79672 -> /home/tobiasn/.cache/pants/named_caches/pex_root/venvs/ea2d19805769311fbd5354560327cca595da53cd/b4fdfcd2e0324f57abb08ab22409e095be4739d7/bin/python -sE /home/tobiasn/.cache/pants/named_caches/pex_root/venvs/ea2d19805769311fbd5354560327cca595da53cd/b4fdfcd2e0324f57abb08ab22409e095be4739d7/pex --disable-pip-version-check --no-python-version-warning --exists-action a --no-input --isolated -vvv --cache-dir /home/tobiasn/.cache/pants/named_caches/pex_root/pip_cache --log /tmp/pants-sandbox-RlFtMs/.tmp/pex-pip-log.x7y7n218/pip.log download --dest /tmp/pants-sandbox-RlFtMs/.tmp/tmp7x_hy3im/home.tobiasn..pyenv.versions.3.10.2.bin.python3.10 --requirement __pip_args.txt *** --index-url <https://aws>:***/pypi/platform-dependencies/simple/ --retries 5 --timeout 15 exited with 1 and STDERR:
ERROR: Could not find a version that satisfies the requirement numpy==1.21.4
ERROR: No matching distribution found for numpy==1.21.4
worried-painter-31382
09/24/2022, 8:28 PM<https://aws>:***/pypi/platform-dependencies/simple/
worried-painter-31382
09/24/2022, 8:38 PMhappy-kitchen-89482
09/24/2022, 9:16 PMhappy-kitchen-89482
09/24/2022, 9:17 PM[python]
section of your pants.toml?happy-kitchen-89482
09/24/2022, 9:19 PMworried-painter-31382
09/24/2022, 9:36 PM[python]
interpreter_constraints = ["CPython~=3.10"]
tailor_pex_binary_targets = false
enable_resolves = true
[python.resolves]
python-default = "pants-lockfile.txt"
worried-painter-31382
09/24/2022, 9:38 PM"linux-x86_64-cp-3.10.2-cp310"
in our pex_binaries
afaict, and all packages do have wheels for this platform in our software mirrorworried-painter-31382
09/24/2022, 9:43 PMworried-painter-31382
09/24/2022, 9:43 PMworried-painter-31382
09/24/2022, 9:44 PM./pants -ldebug --dynamic-ui=false --keep-sandboxes=on_failure --pex-verbosity=9 --print-stacktrace generate-lockfiles
is silent once the pex starts the lock-thingyhappy-kitchen-89482
09/24/2022, 9:59 PM./pants --keep-sandboxes=on_failure ...
it’ll print out the location of the sandbox of the failed processhappy-kitchen-89482
09/24/2022, 9:59 PM__run.sh
script in there with the full cmd line the process is runninghappy-kitchen-89482
09/24/2022, 10:01 PMhappy-kitchen-89482
09/24/2022, 10:02 PMnumpy
one, to isolate the problemhappy-kitchen-89482
09/24/2022, 10:02 PMworried-painter-31382
09/24/2022, 10:09 PMworried-painter-31382
09/24/2022, 10:10 PMdocker run python:3.10-slim pip install numpy==1.21.4
matches the wheel numpy-1.21.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
,
so howcome pex
wont have it 😕worried-painter-31382
09/24/2022, 10:28 PM--preserve-pip-download-log
to the __run.sh
scriptworried-painter-31382
09/24/2022, 10:28 PM2022-09-25T00:22:16,662 Link requires a different Python (3.10.2 not in: '>=3.7,<3.11'): <https://files.pythonhosted.org/packages/ab/94/2fc54cc791846812318080a4f86f9afcf661891163779684d1dd1fe018f9/numpy-1.21.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl#sha256=615d4e328af7204c13ae3d4df7615a13ff60a49cb0d9106fde07f541207883ca> (from <https://pypi.org/simple/numpy/>) (requires-python:>=3.7,<3.11)
worried-painter-31382
09/24/2022, 10:29 PMworried-painter-31382
09/24/2022, 10:42 PMinterpreter_constraints = ["CPython~=3.10"]
actually causing the issue, changing it to
interpreter_constraints = ["CPython==3.10.2"]
resolves itworried-painter-31382
09/24/2022, 10:47 PMhappy-kitchen-89482
09/25/2022, 12:24 AMhappy-kitchen-89482
09/25/2022, 12:24 AMhappy-kitchen-89482
09/25/2022, 12:25 AMhappy-kitchen-89482
09/25/2022, 12:26 AMCPython>=3.10,<3.11
happy-kitchen-89482
09/25/2022, 12:26 AMworried-painter-31382
09/25/2022, 4:30 PMworried-painter-31382
09/25/2022, 4:33 PMCPython~=3.10
is actually equivalent to CPython>=3.10,<4.0
, and that does errorworried-painter-31382
09/25/2022, 4:35 PMCPython>=3.10,<3.11
) would be the equivalent of CPython~=3.10.0
enough-analyst-54434
09/26/2022, 12:46 AMhappy-kitchen-89482
09/26/2022, 1:49 AM~=
operator itself, and not something deeper. But also since I never use ~=
I was misinterpreting its meaninghappy-kitchen-89482
09/26/2022, 1:49 AMCPython~=3.10
is equivalent to CPython>=3.10,<4.0
then Pex may be doing the right thing herehappy-kitchen-89482
09/26/2022, 1:50 AMhappy-kitchen-89482
09/26/2022, 1:50 AMhappy-kitchen-89482
09/26/2022, 1:51 AMenough-analyst-54434
09/26/2022, 2:43 AMhappy-kitchen-89482
09/26/2022, 3:00 AMworried-painter-31382
09/26/2022, 6:27 AMworried-painter-31382
09/26/2022, 6:28 AMworried-painter-31382
09/26/2022, 6:30 AMenough-analyst-54434
09/26/2022, 3:15 PMenough-analyst-54434
09/29/2022, 9:39 PMworried-painter-31382
10/02/2022, 7:40 PMenough-analyst-54434
10/02/2022, 9:44 PMenough-analyst-54434
10/03/2022, 3:52 AM>=3.10,==3.10.*
or `>=3.10,<3.11`both work and are exactly equivalent; so this should be fixed up.enough-analyst-54434
10/03/2022, 6:27 AM~=3.10
does mean >=3.10,==3.*
aka `>=3.10,<4`and so the lock is definitely correct to fail and this is just an error message problem.