Bug 1742828

Summary: pluggy.PluginValidationError: Plugin 'xdist' could not be loaded: (pytest 3.4.2 (/usr/lib/python3.6/site-packages), Requirement.parse('pytest>=4.4.0'))!
Product: [Fedora] Fedora EPEL Reporter: Orion Poplawski <orion>
Component: python-pytest-xdistAssignee: Scott Talbert <swt>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: urgent Docs Contact:
Priority: unspecified    
Version: epel8CC: smooge, swt, tdawson
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: python-pytest-xdist-1.24.1-1.el8 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-09-04 11:42:33 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1743454    
Bug Blocks:    

Description Orion Poplawski 2019-08-16 22:23:03 UTC
Description of problem:

RHEL8 ships with pytest 3.4.2, xdist 1.29.0 appears to require 4.4.0.

Version-Release number of selected component (if applicable):
1.29.0-1.el8.1

# pytest-3
Traceback (most recent call last):
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 397, in load_setuptools_entrypoints
    plugin = ep.load()
  File "/usr/lib/python3.6/site-packages/pkg_resources/__init__.py", line 2317, in load
    self.require(*args, **kwargs)
  File "/usr/lib/python3.6/site-packages/pkg_resources/__init__.py", line 2340, in require
    items = working_set.resolve(reqs, env, installer, extras=self.extras)
  File "/usr/lib/python3.6/site-packages/pkg_resources/__init__.py", line 779, in resolve
    raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.VersionConflict: (pytest 3.4.2 (/usr/lib/python3.6/site-packages), Requirement.parse('pytest>=4.4.0'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/bin/pytest-3", line 11, in <module>
    load_entry_point('pytest==3.4.2', 'console_scripts', 'pytest')()
  File "/usr/lib/python3.6/site-packages/_pytest/config.py", line 50, in main
    config = _prepareconfig(args, plugins)
  File "/usr/lib/python3.6/site-packages/_pytest/config.py", line 161, in _prepareconfig
    pluginmanager=pluginmanager, args=args)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 617, in __call__
    return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 222, in _hookexec
    return self._inner_hookexec(hook, methods, kwargs)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 216, in <lambda>
    firstresult=hook.spec_opts.get('firstresult'),
  File "/usr/lib/python3.6/site-packages/pluggy/callers.py", line 196, in _multicall
    gen.send(outcome)
  File "/usr/lib/python3.6/site-packages/_pytest/helpconfig.py", line 68, in pytest_cmdline_parse
    config = outcome.get_result()
  File "/usr/lib/python3.6/site-packages/pluggy/callers.py", line 76, in get_result
    raise ex[1].with_traceback(ex[2])
  File "/usr/lib/python3.6/site-packages/pluggy/callers.py", line 180, in _multicall
    res = hook_impl.function(*args)
  File "/usr/lib/python3.6/site-packages/_pytest/config.py", line 944, in pytest_cmdline_parse
    self.parse(args)
  File "/usr/lib/python3.6/site-packages/_pytest/config.py", line 1109, in parse
    self._preparse(args, addopts=addopts)
  File "/usr/lib/python3.6/site-packages/_pytest/config.py", line 1072, in _preparse
    self.pluginmanager.load_setuptools_entrypoints('pytest11')
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 402, in load_setuptools_entrypoints
    "Plugin %r could not be loaded: %s!" % (ep.name, e))
pluggy.PluginValidationError: Plugin 'xdist' could not be loaded: (pytest 3.4.2 (/usr/lib/python3.6/site-packages), Requirement.parse('pytest>=4.4.0'))!

Comment 1 Scott Talbert 2019-08-16 22:40:45 UTC
I wasn't the one who did the initial build of xdist in epel8.  :P

I guess I'm going to have to use an epoch to downgrade this, aren't I?

Comment 2 Orion Poplawski 2019-08-16 22:43:33 UTC
CCing smooge so he can get properly castigated :)

I think epoch is the only choice at this point, unless it's not a real hard requirement and can be patched out.

Comment 3 Orion Poplawski 2019-08-16 22:47:07 UTC
Though it is surprising that the version requirement wasn't caught during the build...

Comment 4 Scott Talbert 2019-08-16 22:50:59 UTC
(In reply to Orion Poplawski from comment #3)
> Though it is surprising that the version requirement wasn't caught during
> the build...

Yep, the build should have failed.  This is why it succeeded:

+ * Mon Jun 24 2019 Troy Dawson <tdawson> - 1.29.0-1.1
+ - Turn off tests for initial EPEL8 build

Comment 5 Orion Poplawski 2019-08-16 22:53:26 UTC
Ah, so Troy deserves the shame :)

Comment 6 Scott Talbert 2019-08-17 02:01:51 UTC
Blocked by: https://src.fedoraproject.org/rpms/python-execnet/pull-request/4

Comment 7 Stephen John Smoogen 2019-08-20 12:56:48 UTC
Yeah sorry. I didn't fork xdist at all as all I was mass branching were packages required for fedpkg to work. xdist is not on that list. However, I am still the EPEL-8 chief wrangler so I am the one who told the cow-pokes to go forth. I do believe in this case an epoch bump is what will be required. I am expecting this is where the F28 version is needed.

Comment 8 Fedora Update System 2019-08-20 23:48:04 UTC
FEDORA-EPEL-2019-b75a5e12bc has been submitted as an update to Fedora EPEL 8. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2019-b75a5e12bc

Comment 9 Fedora Update System 2019-08-21 02:45:24 UTC
python-pytest-xdist-1.24.1-1.el8 has been pushed to the Fedora EPEL 8 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2019-b75a5e12bc

Comment 10 Fedora Update System 2019-09-04 11:42:33 UTC
python-pytest-xdist-1.24.1-1.el8 has been pushed to the Fedora EPEL 8 stable repository. If problems still persist, please make note of it in this bug report.