v5 is breaking pip

$ pip install coverage[toml] pytest pytest_mock
WARNING: There was an error checking the latest version of pip.
ERROR: Exception:
Traceback (most recent call last):
  File "/usr/share/kubitus/venv/lib/python3.13/site-packages/pip/_internal/cli/base_command.py", line 105, in _run_wrapper
    status = _inner_run()
  File "/usr/share/kubitus/venv/lib/python3.13/site-packages/pip/_internal/cli/base_command.py", line 96, in _inner_run
    return self.run(options, args)
           ~~~~~~~~^^^^^^^^^^^^^^^
  File "/usr/share/kubitus/venv/lib/python3.13/site-packages/pip/_internal/cli/req_command.py", line 68, in wrapper
    return func(self, options, args)
  File "/usr/share/kubitus/venv/lib/python3.13/site-packages/pip/_internal/commands/install.py", line 387, in run
    requirement_set = resolver.resolve(
        reqs, check_supported_wheels=not options.target_dir
    )
  File "/usr/share/kubitus/venv/lib/python3.13/site-packages/pip/_internal/resolution/resolvelib/resolver.py", line 96, in resolve
    result = self._result = resolver.resolve(
                            ~~~~~~~~~~~~~~~~^
        collected.requirements, max_rounds=limit_how_complex_resolution_can_be
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/usr/share/kubitus/venv/lib/python3.13/site-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 515, in resolve
    state = resolution.resolve(requirements, max_rounds=max_rounds)
  File "/usr/share/kubitus/venv/lib/python3.13/site-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 388, in resolve
    self._add_to_criteria(self.state.criteria, r, parent=None)
    ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/share/kubitus/venv/lib/python3.13/site-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 141, in _add_to_criteria
    if not criterion.candidates:
           ^^^^^^^^^^^^^^^^^^^^
  File "/usr/share/kubitus/venv/lib/python3.13/site-packages/pip/_vendor/resolvelib/structs.py", line 194, in __bool__
    return bool(self._sequence)
  File "/usr/share/kubitus/venv/lib/python3.13/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 163, in __bool__
    self._bool = any(self)
                 ~~~^^^^^^
  File "/usr/share/kubitus/venv/lib/python3.13/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 147, in <genexpr>
    return (c for c in iterator if id(c) not in self._incompatible_ids)
                       ^^^^^^^^
  File "/usr/share/kubitus/venv/lib/python3.13/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 33, in _iter_built
    for version, func in infos:
                         ^^^^^
  File "/usr/share/kubitus/venv/lib/python3.13/site-packages/pip/_internal/resolution/resolvelib/factory.py", line 307, in iter_index_candidate_infos
    result = self._finder.find_best_candidate(
        project_name=name,
        specifier=specifier,
        hashes=hashes,
    )
  File "/usr/share/kubitus/venv/lib/python3.13/site-packages/pip/_internal/index/package_finder.py", line 906, in find_best_candidate
    candidates = self.find_all_candidates(project_name)
  File "/usr/share/kubitus/venv/lib/python3.13/site-packages/pip/_internal/index/package_finder.py", line 843, in find_all_candidates
    page_candidates = list(page_candidates_it)
  File "/usr/share/kubitus/venv/lib/python3.13/site-packages/pip/_internal/index/sources.py", line 193, in page_candidates
    yield from self._candidates_from_page(self._link)
               ~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^
  File "/usr/share/kubitus/venv/lib/python3.13/site-packages/pip/_internal/index/package_finder.py", line 801, in process_project_url
    index_response = self._link_collector.fetch_response(project_url)
  File "/usr/share/kubitus/venv/lib/python3.13/site-packages/pip/_internal/index/collector.py", line 448, in fetch_response
    return _get_index_content(location, session=self.session)
  File "/usr/share/kubitus/venv/lib/python3.13/site-packages/pip/_internal/index/collector.py", line 352, in _get_index_content
    resp = _get_simple_response(url, session=session)
  File "/usr/share/kubitus/venv/lib/python3.13/site-packages/pip/_internal/index/collector.py", line 131, in _get_simple_response
    resp = session.get(
        url,
    ...<22 lines>...
        },
    )
  File "/usr/share/kubitus/venv/lib/python3.13/site-packages/pip/_vendor/requests/sessions.py", line 602, in get
    return self.request("GET", url, **kwargs)
           ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/share/kubitus/venv/lib/python3.13/site-packages/pip/_internal/network/session.py", line 523, in request
    return super().request(method, url, *args, **kwargs)
           ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/share/kubitus/venv/lib/python3.13/site-packages/pip/_vendor/requests/sessions.py", line 589, in request
    resp = self.send(prep, **send_kwargs)
  File "/usr/share/kubitus/venv/lib/python3.13/site-packages/pip/_vendor/requests/sessions.py", line 703, in send
    r = adapter.send(request, **kwargs)
  File "/usr/share/kubitus/venv/lib/python3.13/site-packages/pip/_vendor/cachecontrol/adapter.py", line 77, in send
    resp = super().send(request, stream, timeout, verify, cert, proxies)
  File "/usr/share/kubitus/venv/lib/python3.13/site-packages/pip/_vendor/requests/adapters.py", line 667, in send
    resp = conn.urlopen(
        method=request.method,
    ...<9 lines>...
        chunked=chunked,
    )
  File "/usr/share/kubitus/venv/lib/python3.13/site-packages/pip/_vendor/urllib3/connectionpool.py", line 716, in urlopen
    httplib_response = self._make_request(
        conn,
    ...<5 lines>...
        chunked=chunked,
    )
  File "/usr/share/kubitus/venv/lib/python3.13/site-packages/pip/_vendor/urllib3/connectionpool.py", line 404, in _make_request
    self._validate_conn(conn)
    ~~~~~~~~~~~~~~~~~~~^^^^^^
  File "/usr/share/kubitus/venv/lib/python3.13/site-packages/pip/_vendor/urllib3/connectionpool.py", line 1061, in _validate_conn
    conn.connect()
    ~~~~~~~~~~~~^^
  File "/usr/share/kubitus/venv/lib/python3.13/site-packages/pip/_vendor/urllib3/connection.py", line 406, in connect
    context.verify_mode = resolve_cert_reqs(self.cert_reqs)
    ^^^^^^^^^^^^^^^^^^^
  File "/usr/share/kubitus/venv/lib/python3.13/site-packages/pip/_vendor/truststore/_api.py", line 292, in verify_mode
    _original_super_SSLContext.verify_mode.__set__(  # type: ignore[attr-defined]
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        self._ctx, value
        ^^^^^^^^^^^^^^^^
    )
    ^
  File "/usr/local/lib/python3.13/ssl.py", line 679, in verify_mode
    super(SSLContext, SSLContext).verify_mode.__set__(self, value)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/usr/local/lib/python3.13/ssl.py", line 679, in verify_mode
    super(SSLContext, SSLContext).verify_mode.__set__(self, value)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/usr/local/lib/python3.13/ssl.py", line 679, in verify_mode
    super(SSLContext, SSLContext).verify_mode.__set__(self, value)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  [Previous line repeated 962 more times]
RecursionError: maximum recursion depth exceeded

Ref: https://gitlab.com/kubitus-project/python-kubitus/-/jobs/10338267875