app-crypt/certbot-1.31.0 is unhappy with dev-python/charset_normalizer-3.0.0. Reminds me of the previous bug I opened on certbot with charset_normalizer-2.1.0 - bug 853247. Downgrading to charset_normalizer-2.1.1-r1 fixes this. # equery l certbot charset_normalizer * Searching for certbot ... [IP-] [ ] app-crypt/certbot-1.31.0:0 * Searching for charset_normalizer ... [IP-] [ ] dev-python/charset_normalizer-3.0.0:0 # # /usr/bin/certbot renew --quiet --max-log-backups 100 --nginx-ctl /usr/sbin/nginx --deploy-hook '/etc/init.d/postfix restart' Traceback (most recent call last): File "/usr/lib/python3.10/site-packages/pkg_resources/__init__.py", line 581, in _build_master ws.require(__requires__) File "/usr/lib/python3.10/site-packages/pkg_resources/__init__.py", line 909, in require needed = self.resolve(parse_requirements(requirements)) File "/usr/lib/python3.10/site-packages/pkg_resources/__init__.py", line 800, in resolve raise VersionConflict(dist, req).with_context(dependent_req) pkg_resources.ContextualVersionConflict: (charset-normalizer 3.0.0 (/usr/lib/python3.10/site-packages), Requirement.parse('charset-normalizer<3,>=2'), {'requests'}) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python-exec/python3.10/certbot", line 33, in <module> sys.exit(load_entry_point('certbot==1.31.0', 'console_scripts', 'certbot')()) File "/usr/lib/python-exec/python3.10/certbot", line 25, in importlib_load_entry_point return next(matches).load() File "/usr/lib/python3.10/importlib/metadata/__init__.py", line 171, in load module = import_module(match.group('module')) File "/usr/lib/python3.10/importlib/__init__.py", line 126, in import_module return _bootstrap._gcd_import(name[level:], package, level) File "<frozen importlib._bootstrap>", line 1050, in _gcd_import File "<frozen importlib._bootstrap>", line 1027, in _find_and_load File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked File "<frozen importlib._bootstrap>", line 688, in _load_unlocked File "<frozen importlib._bootstrap_external>", line 883, in exec_module File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed File "/usr/lib/python3.10/site-packages/certbot/main.py", line 6, in <module> from certbot._internal import main as internal_main File "/usr/lib/python3.10/site-packages/certbot/_internal/main.py", line 23, in <module> from acme import client as acme_client File "/usr/lib/python3.10/site-packages/acme/client.py", line 32, in <module> import requests File "/usr/lib/python3.10/site-packages/requests/__init__.py", line 141, in <module> from . import packages, utils File "/usr/lib/python3.10/site-packages/requests/utils.py", line 24, in <module> from . import certs File "/usr/lib/python3.10/site-packages/requests/certs.py", line 14, in <module> from certifi import where File "/usr/lib/python3.10/site-packages/certifi/__init__.py", line 1, in <module> from .core import contents, where File "/usr/lib/python3.10/site-packages/certifi/core.py", line 3, in <module> from certifi._patch import _verify_dist_info File "/usr/lib/python3.10/site-packages/certifi/_patch.py", line 4, in <module> import pkg_resources File "/usr/lib/python3.10/site-packages/pkg_resources/__init__.py", line 3260, in <module> def _initialize_master_working_set(): File "/usr/lib/python3.10/site-packages/pkg_resources/__init__.py", line 3234, in _call_aside f(*args, **kwargs) File "/usr/lib/python3.10/site-packages/pkg_resources/__init__.py", line 3272, in _initialize_master_working_set working_set = WorkingSet._build_master() File "/usr/lib/python3.10/site-packages/pkg_resources/__init__.py", line 583, in _build_master return cls._build_from_requirements(__requires__) File "/usr/lib/python3.10/site-packages/pkg_resources/__init__.py", line 596, in _build_from_requirements dists = ws.resolve(reqs, Environment()) File "/usr/lib/python3.10/site-packages/pkg_resources/__init__.py", line 795, in resolve raise DistributionNotFound(req, requirers) pkg_resources.DistributionNotFound: The 'charset-normalizer<3,>=2' distribution was not found and is required by requests #
As of dev-python/requests-2.28.1-r1 (https://github.com/gentoo/gentoo/pull/27909) this seems to work for me.
Agree, fixed in the other bug 878035 opened on the same day. Begs the question, as this is not the first time for this version compatibility issue, is there a better way to handle the revision uplifts?
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7e1e27390394fa64b6c44e87a8c3e737ce9ef2e4 commit 7e1e27390394fa64b6c44e87a8c3e737ce9ef2e4 Author: Sam James <sam@gentoo.org> AuthorDate: 2022-11-25 07:10:42 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2022-11-25 07:10:42 +0000 dev-python/certifi: use importlib This avoids breaking arbitrary packages on the system because they happen to use certifi, as certifi will pick up if any other packages on the system have an unsatisfied requirement - which is often bogus. Bug: https://bugs.gentoo.org/826874 Bug: https://bugs.gentoo.org/854294 Bug: https://bugs.gentoo.org/878035 Closes: https://bugs.gentoo.org/878045 Signed-off-by: Sam James <sam@gentoo.org> dev-python/certifi/certifi-3021.3.16-r3.ebuild | 55 +++++++ .../files/certifi-3021.3.16-use-importlib.patch | 164 +++++++++++++++++++++ 2 files changed, 219 insertions(+)