Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Some CI Runners Fail due to Upstream Changes #924

Closed
ischoegl opened this issue Aug 31, 2020 · 1 comment
Closed

Some CI Runners Fail due to Upstream Changes #924

ischoegl opened this issue Aug 31, 2020 · 1 comment

Comments

@ischoegl
Copy link
Member

Problem description

Some CI Runners using Python 3.8 fail due to apparent upstream changes. E.g. CI / windows-2019, MSVC 14.0, Python 3.8

    test_ruamel_yaml.c
    Generating code
    Finished generating code
    sys.argv ['C:\\Users\\runneradmin\\AppData\\Local\\Temp\\pip-install-oh431xk0\\ruamel-yaml-clib\\setup.py', 'egg_info', '--egg-base', 'C:\\Users\\runneradmin\\AppData\\Local\\Temp\\pip-pip-egg-info-nd3k7nbt']
    test compiling test_ruamel_yaml
    C:\hostedtoolcache\windows\Python\3.8.5\x64\lib\site-packages\_distutils_hack\__init__.py:30: UserWarning: Setuptools is replacing distutils.
      warnings.warn("Setuptools is replacing distutils.")
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "C:\Users\runneradmin\AppData\Local\Temp\pip-install-oh431xk0\ruamel-yaml-clib\setup.py", line 960, in <module>
        main()
      File "C:\Users\runneradmin\AppData\Local\Temp\pip-install-oh431xk0\ruamel-yaml-clib\setup.py", line 957, in main
        setup(**kw)
      File "C:\hostedtoolcache\windows\Python\3.8.5\x64\lib\site-packages\setuptools\__init__.py", line 153, in setup
        return distutils.core.setup(**attrs)
      File "C:\hostedtoolcache\windows\Python\3.8.5\x64\lib\site-packages\setuptools\_distutils\core.py", line 134, in setup
        ok = dist.parse_command_line()
      File "C:\hostedtoolcache\windows\Python\3.8.5\x64\lib\site-packages\setuptools\_distutils\dist.py", line 484, in parse_command_line
        args = self._parse_command_opts(parser, args)
      File "C:\hostedtoolcache\windows\Python\3.8.5\x64\lib\site-packages\setuptools\dist.py", line 903, in _parse_command_opts
        nargs = _Distribution._parse_command_opts(self, parser, args)
      File "C:\hostedtoolcache\windows\Python\3.8.5\x64\lib\site-packages\setuptools\_distutils\dist.py", line 547, in _parse_command_opts
        raise DistutilsClassError(
    distutils.errors.DistutilsClassError: command class <class 'setuptools.command.egg_info.egg_info'> must subclass Command
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
##[error]Process completed with exit code 1.

Steps to reproduce

See new failures in #907

The behavior appears to be a known issue

System information

GitHub Actions.

@ischoegl ischoegl changed the title Some CI Runners Fail due to Upstream SetupTool Changes Some CI Runners Fail due to Upstream setuptools Changes Aug 31, 2020
@ischoegl ischoegl changed the title Some CI Runners Fail due to Upstream setuptools Changes Some CI Runners Fail due to Upstream Changes Aug 31, 2020
@speth
Copy link
Member

speth commented Aug 31, 2020

So it seems like it's a known issue that the setuptools developers expect downstream packages to just deal with, given that that issue was closed and the problem still exists when running with setuptools=50.0.0, which is what the CI runners are currently getting. But the problem for us is that the error is occurring while trying to install one of our dependencies (ruamel.yaml.clib). The reason it seems to fail only on a subset of builders is because those are the platforms (Python 3.8 for Windows) where there aren't already .whl files for ruamel.yaml.clib and pip is trying to build that package from scratch.

The only solution I can think of at the moment is to pin setuptools to version 0.47, before this change was made, but that seems less than ideal.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants