quaint-telephone-89068
10/05/2025, 11:36 AMpants generate-lockfiles after updating to 2.29.0 Pants crashes with the following output:
in root
..
in pants.core.goals.generate_lockfiles.generate_lockfiles_goal
`generate-lockfiles` goal
Traceback (most recent call last):
File "bindings/venvs/2.29.0/lib/python3.11/site-packages/pants/core/goals/generate_lockfiles.py", line 538, in generate_lockfiles_goal
all_specified_user_requests = await concurrently(
^^^^^^^^^^^^^^^^^^^
File "bindings/venvs/2.29.0/lib/python3.11/site-packages/pants/engine/internals/selectors.py", line 363, in MultiGet
return await _MultiGet(tuple(__arg0))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "bindings/venvs/2.29.0/lib/python3.11/site-packages/pants/engine/internals/selectors.py", line 170, in __await__
result = yield self.gets
^^^^^^^^^^^^^^^
File "bindings/venvs/2.29.0/lib/python3.11/site-packages/pants/engine/rules.py", line 69, in wrapper
return await call
^^^^^^^^^^
File "bindings/venvs/2.29.0/lib/python3.11/site-packages/pants/engine/internals/selectors.py", line 78, in __await__
result = yield self
^^^^^^^^^^
File "bindings/venvs/2.29.0/lib/python3.11/site-packages/pants/jvm/goals/lockfile.py", line 232, in setup_user_lockfile_requests
jvm_lockfile_requests = await concurrently(*gets)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "bindings/venvs/2.29.0/lib/python3.11/site-packages/pants/engine/internals/selectors.py", line 562, in MultiGet
raise TypeError(
TypeError: Unexpected MultiGet argument types: <coroutine object setup_lockfile_request_from_tool at 0x110e0fc40>, <coroutine object setup_lockfile_request_from_tool at 0x110e0fe40>, <coroutine object setup_lockfile_request_from_tool at 0x110e0f440>, <coroutine object setup_lockfile_request_from_tool at 0x110e0fa40>, <coroutine object validate_jvm_artifacts_for_resolve at 0x110e0fb40>, <coroutine object setup_lockfile_request_from_tool at 0x110ed6e40>, <coroutine object validate_jvm_artifacts_for_resolve at 0x110ed5540>, <coroutine object validate_jvm_artifacts_for_resolve at 0x110ed5640>, <coroutine object setup_lockfile_request_from_tool at 0x110ed4140>, <coroutine object setup_lockfile_request_from_tool at 0x110ed4240>, <coroutine object setup_lockfile_request_from_tool at 0x110ed4740>
A MultiGet can be constructed in two ways:
1. MultiGet(Iterable[Get[T]]) -> Tuple[T]
2. MultiGet(Get[T1]], ...) -> Tuple[T1, T2, ...]
The 1st form is intended for homogenous collections of Gets and emulates an async `for ...` comprehension used to iterate over the collection in parallel and collect the results in a homogenous tuple when all are complete.
The 2nd form supports executing heterogeneous Gets in parallel and collecting them in a heterogeneous tuple when all are complete. Currently up to 10 heterogeneous Gets can be passed while still tracking their output types for type-checking by MyPy and similar type checkers. If more than 10 Gets are passed, type checking will enforce the Gets are homogeneous.
13:34:35.25 [WARN] bindings/venvs/2.29.0/lib/python3.11/site-packages/pants/bin/local_pants_runner.py:265: RuntimeWarning: coroutine 'setup_lockfile_request_from_tool' was never awaited
return PANTS_FAILED_EXIT_CODE
Pants version
2.29.0
OS
macoS
Additional info
Add any other information about the problem here, such as attachments or links to gists, if relevant.
pantsbuild/pantsquaint-telephone-89068
10/05/2025, 5:28 PM