-
Notifications
You must be signed in to change notification settings - Fork 2.4k
Closed
python-poetry/poetry-core
#593Labels
kind/bugSomething isn't working as expectedSomething isn't working as expectedstatus/triageThis issue needs to be triagedThis issue needs to be triaged
Description
- Poetry version: Poetry (version 1.5.0)
- Python version: 3.9.5
- OS version and name: Ubuntu 20.04.5 LTS
- pyproject.toml: https://gist.github.com/coldguy101/7de3a2ee4b77ea4f4970e4fed370325b
- I am on the latest stable Poetry version, installed using a recommended method.
- I have searched the issues of this repo and believe that this is not a duplicate.
- I have consulted the FAQ and blog for any relevant entries or release notes.
- If an exception occurs when executing a command, I executed it again in debug mode (
-vvvoption) and have included the output below. (I did it with -vv, not -vvv)
Issue
This pyproject.toml locks perfectly fine in poetry 1.4.0, 1.4.1 and 1.4.2. The moment I upgrade to 1.5, I can no longer lock without getting a RecursionError. I've tried deleting the lock file, deleting the environment, removing some dependencies, etc. to no avail. For now, I'm downgrading back to 1.4.2.
0: Duplicate dependencies for scipy
0: Different requirements found for scipy (>=1.3) with markers (python_version > "3.9" or platform_system != "Windows" or platform_machine != "x86") and python_version < "3.12" and scipy (>=1.3,<1.9) with markers python_version == "3.8" and platform_system == "Windows" and platform_machine == "x86".
1: Version solving took 0.477 seconds.
1: Tried 1 solutions.
Stack trace:
4 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/puzzle/solver.py:155 in _solve
result = resolve_version(self._package, self._provider)
3 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/mixology/__init__.py:18 in resolve_version
return solver.solve()
2 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/mixology/version_solver.py:112 in solve
next = self._choose_package_version()
1 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/mixology/version_solver.py:430 in _choose_package_version
package = self._provider.complete_package(package)
OverrideNeeded
({Package('pandas', '1.3.5'): {'numpy': <Dependency numpy (>=1.17.3)>}}, {Package('pandas', '1.3.5'): {'numpy': <Dependency numpy (>=1.19.2)>}}, {Package('pandas', '1.3.5'): {'numpy': <Dependency numpy (>=1.20.0)>}})
at ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/puzzle/provider.py:691 in complete_package
687│ current_overrides.update({dependency_package: package_overrides})
688│ overrides.append(current_overrides)
689│
690│ if overrides:
→ 691│ raise OverrideNeeded(*overrides)
692│
693│ # Modifying dependencies as needed
694│ clean_dependencies = []
695│ for dep in dependencies:
The following error occurred when trying to handle this error:
Stack trace:
4 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/puzzle/solver.py:155 in _solve
result = resolve_version(self._package, self._provider)
3 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/mixology/__init__.py:18 in resolve_version
return solver.solve()
2 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/mixology/version_solver.py:112 in solve
next = self._choose_package_version()
1 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/mixology/version_solver.py:430 in _choose_package_version
package = self._provider.complete_package(package)
OverrideNeeded
({Package('pandas', '1.3.5'): {'numpy': <Dependency numpy (>=1.17.3)>}, Package('mlflow', '2.1.1'): {'jinja2': <Dependency Jinja2 (>=2.11,<4)>}}, {Package('pandas', '1.3.5'): {'numpy': <Dependency numpy (>=1.17.3)>}, Package('mlflow', '2.1.1'): {'jinja2': <Dependency Jinja2 (>=3.0,<4)>}})
at ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/puzzle/provider.py:691 in complete_package
687│ current_overrides.update({dependency_package: package_overrides})
688│ overrides.append(current_overrides)
689│
690│ if overrides:
→ 691│ raise OverrideNeeded(*overrides)
692│
693│ # Modifying dependencies as needed
694│ clean_dependencies = []
695│ for dep in dependencies:
The following error occurred when trying to handle this error:
Stack trace:
998 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/cleo/application.py:327 in run
exit_code = self._run(io)
997 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/console/application.py:190 in _run
exit_code: int = super()._run(io)
996 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/cleo/application.py:431 in _run
exit_code = self._run_command(command, io)
995 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/cleo/application.py:473 in _run_command
raise error
994 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/cleo/application.py:457 in _run_command
exit_code = command.run(io)
993 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/cleo/commands/base_command.py:119 in run
status_code = self.execute(io)
992 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/cleo/commands/command.py:62 in execute
return self.handle()
991 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/console/commands/lock.py:52 in handle
return self.installer.run()
990 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/installation/installer.py:104 in run
return self._do_install()
989 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/installation/installer.py:241 in _do_install
ops = solver.solve(use_latest=self._whitelist).calculate_operations()
988 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/puzzle/solver.py:72 in solve
packages, depths = self._solve()
987 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/puzzle/solver.py:159 in _solve
return self._solve_in_compatibility_mode(e.overrides)
986 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/puzzle/solver.py:133 in _solve_in_compatibility_mode
_packages, _depths = self._solve()
985 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/puzzle/solver.py:159 in _solve
return self._solve_in_compatibility_mode(e.overrides)
984 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/puzzle/solver.py:133 in _solve_in_compatibility_mode
_packages, _depths = self._solve()
983 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/puzzle/solver.py:155 in _solve
result = resolve_version(self._package, self._provider)
982 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/mixology/__init__.py:18 in resolve_version
return solver.solve()
981 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/mixology/version_solver.py:112 in solve
next = self._choose_package_version()
980 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/mixology/version_solver.py:430 in _choose_package_version
package = self._provider.complete_package(package)
979 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/puzzle/provider.py:681 in complete_package
if not overrides_marker_intersection.intersect(dep.marker).is_empty():
978 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/core/version/markers.py:564 in intersect
return intersection(self, other)
977 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/core/version/markers.py:934 in intersection
return dnf(MultiMarker(*markers))
976 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/core/version/markers.py:923 in dnf
return MarkerUnion.of(
975 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/core/version/markers.py:712 in of
union = mark.union_simplify(marker)
974 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/core/version/markers.py:601 in union_simplify
unique_union = MultiMarker(*unique_markers).union(
973 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/core/version/markers.py:567 in union
return union(self, other)
972 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/core/version/markers.py:947 in union
conjunction = cnf(unnormalized)
971 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/core/version/markers.py:907 in cnf
*[MarkerUnion.of(*c) for c in itertools.product(*sub_marker_lists)]
970 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/core/version/markers.py:907 in <listcomp>
*[MarkerUnion.of(*c) for c in itertools.product(*sub_marker_lists)]
969 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/core/version/markers.py:700 in of
new_marker = mark.union(marker)
968 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/core/version/markers.py:274 in union
merged = _merge_single_markers(self, other, MarkerUnion)
967 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/core/version/markers.py:977 in _merge_single_markers
result_constraint = merge_method(marker2.constraint) # type: ignore[arg-type]
... Previous frame repeated 964 times
2 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/core/constraints/generic/multi_constraint.py:94 in union
return other.union(self)
1 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/core/constraints/generic/multi_constraint.py:94 in union
return other.union(self)
RecursionError
maximum recursion depth exceeded while calling a Python object
at ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/core/constraints/generic/multi_constraint.py:93 in union
89│
90│ return MultiConstraint(*self._constraints, other)
91│
92│ def union(self, other: BaseConstraint) -> BaseConstraint:
→ 93│ if not isinstance(other, Constraint):
94│ return other.union(self)
95│
96│ if other in self._constraints:
97│ return other
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
kind/bugSomething isn't working as expectedSomething isn't working as expectedstatus/triageThis issue needs to be triagedThis issue needs to be triaged