openSUSE / openSUSE/obs-service-replace_using_package_version

Running test suite on Tumbleweed

Open
#84 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
5
Forks
13
PR merge metrics
No merged PRs in 30d

Description

I wanted to contribute some changes and accompany them with tests. Unfortunately, I terribly fail at following the README instructions to run the existing tests.

  1. sudo zypper in python313-poetry
  2. poetry shell says it longer exists, I run poetry env activate as suggested by the output instead and source the resulting file
  3. poetry install installs various things, seemingly into ~/.cache/pypoetry (and hopefully not elsewhere)
  4. tox yields this wall of traceback
Traceback (most recent call last):
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "/home/georg/Work/git/obs-service-replace_using_package_version/.tox/.tox/lib/python3.13/site-packages/pip/__main__.py", line 31, in <module>
    sys.exit(_main())
             ~~~~~^^
  File "/home/georg/Work/git/obs-service-replace_using_package_version/.tox/.tox/lib/python3.13/site-packages/pip/_internal/cli/main.py", line 70, in main
    return command.main(cmd_args)
           ~~~~~~~~~~~~^^^^^^^^^^
  File "/home/georg/Work/git/obs-service-replace_using_package_version/.tox/.tox/lib/python3.13/site-packages/pip/_internal/cli/base_command.py", line 101, in main
    return self._main(args)
           ~~~~~~~~~~^^^^^^
  File "/home/georg/Work/git/obs-service-replace_using_package_version/.tox/.tox/lib/python3.13/site-packages/pip/_internal/cli/base_command.py", line 223, in _main
    self.handle_pip_version_check(options)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
  File "/home/georg/Work/git/obs-service-replace_using_package_version/.tox/.tox/lib/python3.13/site-packages/pip/_internal/cli/req_command.py", line 179, in handle_pip_version_check
    session = self._build_session(
        options,
    ...<6 lines>...
        fallback_to_certifi=True,
    )
  File "/home/georg/Work/git/obs-service-replace_using_package_version/.tox/.tox/lib/python3.13/site-packages/pip/_internal/cli/req_command.py", line 125, in _build_session
    session = PipSession(
        cache=os.path.join(cache_dir, "http") if cache_dir else None,
    ...<3 lines>...
        ssl_context=ssl_context,
    )
  File "/home/georg/Work/git/obs-service-replace_using_package_version/.tox/.tox/lib/python3.13/site-packages/pip/_internal/network/session.py", line 343, in __init__
    self.headers["User-Agent"] = user_agent()
                                 ~~~~~~~~~~^^
  File "/home/georg/Work/git/obs-service-replace_using_package_version/.tox/.tox/lib/python3.13/site-packages/pip/_internal/network/session.py", line 175, in user_agent
    setuptools_dist = get_default_environment().get_distribution("setuptools")
  File "/home/georg/Work/git/obs-service-replace_using_package_version/.tox/.tox/lib/python3.13/site-packages/pip/_internal/metadata/importlib/_envs.py", line 180, in get_distribution
    return next(matches, None)
  File "/home/georg/Work/git/obs-service-replace_using_package_version/.tox/.tox/lib/python3.13/site-packages/pip/_internal/metadata/importlib/_envs.py", line 177, in <genexpr>
    for distribution in self.iter_all_distributions()
                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/home/georg/Work/git/obs-service-replace_using_package_version/.tox/.tox/lib/python3.13/site-packages/pip/_internal/metadata/base.py", line 594, in iter_all_distributions
    for dist in self._iter_distributions():
                ~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/home/georg/Work/git/obs-service-replace_using_package_version/.tox/.tox/lib/python3.13/site-packages/pip/_internal/metadata/importlib/_envs.py", line 168, in _iter_distributions
    for dist in finder.find_eggs(location):
                ~~~~~~~~~~~~~~~~^^^^^^^^^^
  File "/home/georg/Work/git/obs-service-replace_using_package_version/.tox/.tox/lib/python3.13/site-packages/pip/_internal/metadata/importlib/_envs.py", line 136, in find_eggs
    yield from self._find_eggs_in_dir(location)
  File "/home/georg/Work/git/obs-service-replace_using_package_version/.tox/.tox/lib/python3.13/site-packages/pip/_internal/metadata/importlib/_envs.py", line 103, in _find_eggs_in_dir
    from pip._vendor.pkg_resources import find_distributions
  File "/home/georg/Work/git/obs-service-replace_using_package_version/.tox/.tox/lib/python3.13/site-packages/pip/_vendor/pkg_resources/__init__.py", line 2164, in <module>
    register_finder(pkgutil.ImpImporter, find_on_path)
                    ^^^^^^^^^^^^^^^^^^^
AttributeError: module 'pkgutil' has no attribute 'ImpImporter'. Did you mean: 'zipimporter'?

Online search suggests this to be an incompatibility with Python >= 3.12, but I don't understand where to repair this as the library seems to be installed off the internet into some tox managed venv which I do not control.

Please advise.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the README test instructions and the tox command reported in the issue, then inspect the project’s Poetry and tox configuration to locate where Python 3.13 setup fails. Done means the documented setup runs the existing test suite successfully, with any required configuration or documentation changes recorded.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
build-system, testing-qa
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
28/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.