Lingkungan Hidup
Deskripsi
Saya ingin menginstal distribusi yang hanya memiliki pra-rilis. Penyelesai warisan mendukung ini. Yang baru tidak.
Catatan: menggunakan --pre
sepertinya tidak mempengaruhi hasil. Penyelesai warisan dapat menginstal distribusi seperti itu tanpa menggunakan --pre
.
Perilaku yang diharapkan
Instalasi seharusnya berhasil.
Bagaimana cara bereproduksi
$ pip install --no-deps odoo13-addon-date-range --unstable-feature=resolver
ERROR: Exception:
Traceback (most recent call last):
File "/home/me/pip/src/pip/_internal/cli/base_command.py", line 199, in _main
status = self.run(options, args)
File "/home/me/pip/src/pip/_internal/cli/req_command.py", line 185, in wrapper
return func(self, options, args)
File "/home/me/pip/src/pip/_internal/commands/install.py", line 333, in run
reqs, check_supported_wheels=not options.target_dir
File "/home/me/pip/src/pip/_internal/resolution/resolvelib/resolver.py", line 80, in resolve
self._result = resolver.resolve(requirements)
File "/home/me/pip/src/pip/_vendor/resolvelib/resolvers.py", line 413, in resolve
state = resolution.resolve(requirements, max_rounds=max_rounds)
File "/home/me/pip/src/pip/_vendor/resolvelib/resolvers.py", line 310, in resolve
failure_causes = self._attempt_to_pin_criterion(name, criterion)
File "/home/me/pip/src/pip/_vendor/resolvelib/resolvers.py", line 240, in _attempt_to_pin_criterion
raise InconsistentCandidate(candidate, criterion)
pip._vendor.resolvelib.resolvers.InconsistentCandidate: Provided candidate LinkCandidate('https://files.pythonhosted.org/packages/1f/0b/945335a37082b6b013cc1331f49e3f5b6a18cdd0b693475e6ca9e9a7df6e/odoo13_addon_date_range-13.0.1.0.1.dev8-py3-none-any.whl#sha256=3883bbe87db8d5db4364e8a42e86546e19e8e4f123d98c4e9454587dfa9401df (from https://pypi.org/simple/odoo13-addon-date-range/) (requires-python:>=3.5)') does not satisfy SpecifierRequirement('odoo13-addon-date-range')
Catatan Saya menggunakan --no-deps
karena ketergantungan tidak pada pypi, tetapi itu tidak berpengaruh pada hasil.
InconsistentCandidate
dimunculkan jika kecocokan dari find_matches()
tidak menghasilkan true untuk is_satisfied_by()
. Jadi tebakan saya adalah kita perlu memperbaiki is_satisfied_by()
untuk menerima prarilis.
Tangkapan bagus @sbidoul! ^> ^
Saya tidak berpikir ini perlu diperbaiki sekarang sebelum beta pip 20.1, tapi ya, kami harus menerapkan ini pada akhirnya. :)
Ini juga akan gagal dengan --pre
jika versi yang dipilih adalah prarilis. Tidak semua prarilis gagal, hanya jika penentu tidak berisi prarilis. Saya pikir saya punya perbaikan.