Open nabenabe0928 opened 1 year ago
Stack trace:
4 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/puzzle/solver.py:155 in _solve
153│
154│ try:
→ 155│ result = resolve_version(self._package, self._provider)
156│
157│ packages = result.packages
3 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/mixology/__init__.py:18 in resolve_version
16│ solver = VersionSolver(root, provider)
17│
→ 18│ return solver.solve()
19│
2 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/mixology/version_solver.py:112 in solve
110│ while next is not None:
111│ self._propagate(next)
→ 112│ next = self._choose_package_version()
113│
114│ return self._result()
1 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/mixology/version_solver.py:430 in _choose_package_version
428│ package = locked
429│
→ 430│ package = self._provider.complete_package(package)
431│
432│ conflict = False
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)>}}, {Package('pandas', '1.3.5'): {'numpy': <Dependency numpy (>=1.21.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:
998 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/cleo/application.py:327 in run
325│
326│ try:
→ 327│ exit_code = self._run(io)
328│ except BrokenPipeError:
329│ # If we are piped to another process, it may close early and send a
997 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/console/application.py:190 in _run
188│ self._load_plugins(io)
189│
→ 190│ exit_code: int = super()._run(io)
191│ return exit_code
192│
996 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/cleo/application.py:431 in _run
429│ io.input.interactive(interactive)
430│
→ 431│ exit_code = self._run_command(command, io)
432│ self._running_command = None
433│
995 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/cleo/application.py:473 in _run_command
471│
472│ if error is not None:
→ 473│ raise error
474│
475│ return terminate_event.exit_code
994 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/cleo/application.py:457 in _run_command
455│
456│ if command_event.command_should_run():
→ 457│ exit_code = command.run(io)
458│ else:
459│ exit_code = ConsoleCommandEvent.RETURN_CODE_DISABLED
993 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/cleo/commands/base_command.py:119 in run
117│ io.input.validate()
118│
→ 119│ status_code = self.execute(io)
120│
121│ if status_code is None:
992 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/cleo/commands/command.py:62 in execute
60│
61│ try:
→ 62│ return self.handle()
63│ except KeyboardInterrupt:
64│ return 1
991 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/console/commands/add.py:271 in handle
269│ self.installer.whitelist([r["name"] for r in requirements])
270│
→ 271│ status = self.installer.run()
272│
273│ if status == 0 and not self.option("dry-run"):
990 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/installation/installer.py:104 in run
102│ self.verbose(True)
103│
→ 104│ return self._do_install()
105│
106│ def dry_run(self, dry_run: bool = True) -> Installer:
989 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/installation/installer.py:241 in _do_install
239│ source_root=self._env.path.joinpath("src")
240│ ):
→ 241│ ops = solver.solve(use_latest=self._whitelist).calculate_operations()
242│ else:
243│ self._io.write_line("Installing dependencies from lock file")
988 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/puzzle/solver.py:72 in solve
70│ with self._progress(), self._provider.use_latest_for(use_latest or []):
71│ start = time.time()
→ 72│ packages, depths = self._solve()
73│ end = time.time()
74│
987 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/puzzle/solver.py:159 in _solve
157│ packages = result.packages
158│ except OverrideNeeded as e:
→ 159│ return self._solve_in_compatibility_mode(e.overrides)
160│ except SolveFailure as e:
161│ raise SolverProblemError(e)
986 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/puzzle/solver.py:133 in _solve_in_compatibility_mode
131│ )
132│ self._provider.set_overrides(override)
→ 133│ _packages, _depths = self._solve()
134│ for index, package in enumerate(_packages):
135│ if package not in packages:
985 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/puzzle/solver.py:155 in _solve
153│
154│ try:
→ 155│ result = resolve_version(self._package, self._provider)
156│
157│ packages = result.packages
984 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/mixology/__init__.py:18 in resolve_version
16│ solver = VersionSolver(root, provider)
17│
→ 18│ return solver.solve()
19│
983 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/mixology/version_solver.py:112 in solve
110│ while next is not None:
111│ self._propagate(next)
→ 112│ next = self._choose_package_version()
113│
114│ return self._result()
982 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/mixology/version_solver.py:430 in _choose_package_version
428│ package = locked
429│
→ 430│ package = self._provider.complete_package(package)
431│
432│ conflict = False
981 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/puzzle/provider.py:681 in complete_package
679│ )
680│ for dep in deps:
→ 681│ if not overrides_marker_intersection.intersect(dep.marker).is_empty():
682│ current_overrides = self._overrides.copy()
683│ package_overrides = current_overrides.get(
980 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/core/version/markers.py:564 in intersect
562│
563│ def intersect(self, other: BaseMarker) -> BaseMarker:
→ 564│ return intersection(self, other)
565│
566│ def union(self, other: BaseMarker) -> BaseMarker:
979 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/core/version/markers.py:934 in intersection
932│
933│ def intersection(*markers: BaseMarker) -> BaseMarker:
→ 934│ return dnf(MultiMarker(*markers))
935│
936│
978 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/core/version/markers.py:923 in dnf
921│ m.markers if isinstance(m, MarkerUnion) else [m] for m in dnf_markers
922│ ]
→ 923│ return MarkerUnion.of(
924│ *[MultiMarker.of(*c) for c in itertools.product(*sub_marker_lists)]
925│ )
977 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/core/version/markers.py:712 in of
710│ # implemented in union_simplify().
711│ elif isinstance(mark, MultiMarker):
→ 712│ union = mark.union_simplify(marker)
713│ if union is not None:
714│ new_markers[i] = union
976 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/core/version/markers.py:601 in union_simplify
599│ unique_markers = our_markers - their_markers
600│ other_unique_markers = their_markers - our_markers
→ 601│ unique_union = MultiMarker(*unique_markers).union(
602│ MultiMarker(*other_unique_markers)
603│ )
975 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/core/version/markers.py:567 in union
565│
566│ def union(self, other: BaseMarker) -> BaseMarker:
→ 567│ return union(self, other)
568│
569│ def union_simplify(self, other: BaseMarker) -> BaseMarker | None:
974 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/core/version/markers.py:947 in union
945│ unnormalized = unnormalized.markers[0]
946│
→ 947│ conjunction = cnf(unnormalized)
948│ if not isinstance(conjunction, MultiMarker):
949│ return conjunction
973 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/core/version/markers.py:907 in cnf
905│ ]
906│ return MultiMarker.of(
→ 907│ *[MarkerUnion.of(*c) for c in itertools.product(*sub_marker_lists)]
908│ )
909│
972 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/core/version/markers.py:907 in <listcomp>
905│ ]
906│ return MultiMarker.of(
→ 907│ *[MarkerUnion.of(*c) for c in itertools.product(*sub_marker_lists)]
908│ )
909│
971 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/core/version/markers.py:700 in of
698│ # become another SingleMarker.
699│ if isinstance(mark, SingleMarkerLike):
→ 700│ new_marker = mark.union(marker)
701│ if new_marker.is_any():
702│ return AnyMarker()
970 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/core/version/markers.py:274 in union
272│ def union(self, other: BaseMarker) -> BaseMarker:
273│ if isinstance(other, SingleMarkerLike):
→ 274│ merged = _merge_single_markers(self, other, MarkerUnion)
275│ if merged is not None:
276│ return merged
969 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/core/version/markers.py:977 in _merge_single_markers
975│ # Markers with the same name have the same constraint type,
976│ # but mypy can't see that.
→ 977│ result_constraint = merge_method(marker2.constraint) # type: ignore[arg-type]
978│
979│ result_marker: BaseMarker | None = None
... Previous frame repeated 966 times
2 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/core/constraints/generic/multi_constraint.py:94 in union
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:
1 ~/.local/share/pypoetry/venv/lib/python3.9/site-packages/poetry/core/constraints/generic/multi_constraint.py:94 in union
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:
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
Outcome:
I have no clue. But at least,
pip install
works.