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

[BUG] Test data missing (extension.c files and more) missing in 70.1.0 sdist #4428

Closed
mgorny opened this issue Jun 20, 2024 · 2 comments · Fixed by #4429
Closed

[BUG] Test data missing (extension.c files and more) missing in 70.1.0 sdist #4428

mgorny opened this issue Jun 20, 2024 · 2 comments · Fixed by #4429
Labels
bug Needs Triage Issues that need to be evaluated for severity and status.

Comments

@mgorny
Copy link
Contributor

mgorny commented Jun 20, 2024

setuptools version

70.1.0

Python version

3.12.4

OS

Gentoo Linux amd64

Additional environment information

No response

Description

The sdist archives for 70.1.0 are missing some of test data, particularly extension.c files needed by tests. This is causing test failures:

ERROR setuptools/tests/test_bdist_wheel.py::test_no_scripts - subprocess.CalledProcessError: Command '['/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/bin/pypy3', 'setup.py', 'bdist_wheel', '-b', '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0', '-d', '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/dist0']' returned non-zero exit status 1.
ERROR setuptools/tests/test_bdist_wheel.py::test_unicode_record - subprocess.CalledProcessError: Command '['/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/bin/pypy3', 'setup.py', 'bdist_wheel', '-b', '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0', '-d', '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/dist0']' returned non-zero exit status 1.
ERROR setuptools/tests/test_bdist_wheel.py::test_wheelfile_line_endings - subprocess.CalledProcessError: Command '['/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/bin/pypy3', 'setup.py', 'bdist_wheel', '-b', '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0', '-d', '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/dist0']' returned non-zero exit status 1.
FAILED setuptools/tests/test_bdist_wheel.py::test_limited_abi - subprocess.CalledProcessError: Command '['/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/bin/pypy3', 'setup.py', 'bdist_wheel', '-b', '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/test_limited_abi0/build', '-d', '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/test_limited_abi0/dist']' returned non-zero exit status 1.

Expected behavior

Tests passing.

How to Reproduce

Unpack setuptools-60.1.0.tar.gz and run tests.

Output

=============================================================== ERRORS ================================================================
__________________________________________________ ERROR at setup of test_no_scripts __________________________________________________
[gw0] linux -- Python 3.10.14 /tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/bin/pypy3

request = <SubRequest 'wheel_paths' for <Function test_no_scripts>>
tmp_path_factory = TempPathFactory(_given_basetemp=PosixPath('/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/p.../dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0'), _retention_count=0, _retention_policy='all')

    @pytest.fixture(scope="module")
    def wheel_paths(request, tmp_path_factory):
        test_distributions = (
            "complex-dist",
            "simple.dist",
            "headers.dist",
            "commasinfilenames.dist",
            "unicode.dist",
        )
    
        if sys.platform != "win32":
            # ABI3 extensions don't really work on Windows
            test_distributions += ("abi3extension.dist",)
    
        pwd = os.path.abspath(os.curdir)
        request.addfinalizer(partial(os.chdir, pwd))
        this_dir = os.path.dirname(__file__)
        build_dir = tmp_path_factory.mktemp("build")
        dist_dir = tmp_path_factory.mktemp("dist")
        for dist in test_distributions:
            os.chdir(os.path.join(this_dir, "bdist_wheel_testdata", dist))
>           subprocess.check_call([
                sys.executable,
                "setup.py",
                "bdist_wheel",
                "-b",
                str(build_dir),
                "-d",
                str(dist_dir),
            ])

build_dir  = PosixPath('/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0')
dist       = 'headers.dist'
dist_dir   = PosixPath('/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/dist0')
pwd        = '/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0'
request    = <SubRequest 'wheel_paths' for <Function test_no_scripts>>
test_distributions = ('complex-dist',
 'simple.dist',
 'headers.dist',
 'commasinfilenames.dist',
 'unicode.dist',
 'abi3extension.dist')
this_dir   = '/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0/setuptools/tests'
tmp_path_factory = TempPathFactory(_given_basetemp=PosixPath('/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0'),
                _trace=<pluggy._tracing.TagTracerSub object at 0x000056105258dde0>,
                _basetemp=PosixPath('/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0'),
                _retention_count=0,
                _retention_policy='all')

/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0/setuptools/tests/test_bdist_wheel.py:83: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

popenargs = (['/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/bin/pypy3', 'setup.py', 'bdist_wheel', '-b', '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0', '-d', ...],)
kwargs = {}, retcode = 1
cmd = ['/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/bin/pypy3', 'setup.py', 'bdist_wheel', '-b', '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0', '-d', ...]

    def check_call(*popenargs, **kwargs):
        """Run command with arguments.  Wait for command to complete.  If
        the exit code was zero then return, otherwise raise
        CalledProcessError.  The CalledProcessError object will have the
        return code in the returncode attribute.
    
        The arguments are the same as for the call function.  Example:
    
        check_call(["ls", "-l"])
        """
        retcode = call(*popenargs, **kwargs)
        if retcode:
            cmd = kwargs.get("args")
            if cmd is None:
                cmd = popenargs[0]
>           raise CalledProcessError(retcode, cmd)
E           subprocess.CalledProcessError: Command '['/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/bin/pypy3', 'setup.py', 'bdist_wheel', '-b', '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0', '-d', '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/dist0']' returned non-zero exit status 1.

cmd        = ['/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/bin/pypy3',
 'setup.py',
 'bdist_wheel',
 '-b',
 '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0',
 '-d',
 '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/dist0']
kwargs     = {}
popenargs  = (['/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/bin/pypy3',
  'setup.py',
  'bdist_wheel',
  '-b',
  '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0',
  '-d',
  '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/dist0'],)
retcode    = 1

/usr/lib/pypy3.10/subprocess.py:369: CalledProcessError
-------------------------------------------------------- Captured stdout setup --------------------------------------------------------
running bdist_wheel
running build
running build_py
creating build
creating build/lib
creating build/lib/complexdist
copying complexdist/__init__.py -> build/lib/complexdist
installing to /tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0
running install
running install_lib
creating /tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0/complexdist
copying build/lib/complexdist/__init__.py -> /tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0/complexdist
running install_egg_info
running egg_info
creating complex_dist.egg-info
writing complex_dist.egg-info/PKG-INFO
writing dependency_links to complex_dist.egg-info/dependency_links.txt
writing entry points to complex_dist.egg-info/entry_points.txt
writing requirements to complex_dist.egg-info/requires.txt
writing top-level names to complex_dist.egg-info/top_level.txt
writing manifest file 'complex_dist.egg-info/SOURCES.txt'
reading manifest file 'complex_dist.egg-info/SOURCES.txt'
writing manifest file 'complex_dist.egg-info/SOURCES.txt'
Copying complex_dist.egg-info to /tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0/complex_dist-0.1-py3.10.egg-info
running install_scripts
creating /tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0/complex_dist-0.1.dist-info/WHEEL
creating '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/dist0/complex_dist-0.1-py3-none-any.whl' and adding '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0' to it
adding 'complexdist/__init__.py'
adding 'complex_dist-0.1.dist-info/METADATA'
adding 'complex_dist-0.1.dist-info/WHEEL'
adding 'complex_dist-0.1.dist-info/entry_points.txt'
adding 'complex_dist-0.1.dist-info/top_level.txt'
adding 'complex_dist-0.1.dist-info/RECORD'
removing /tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0
running bdist_wheel
running build
running build_py
creating build
creating build/lib
creating build/lib/simpledist
copying simpledist/__init__.py -> build/lib/simpledist
installing to /tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0
running install
running install_lib
creating /tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0
creating /tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0/simpledist
copying build/lib/simpledist/__init__.py -> /tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0/simpledist
running install_egg_info
running egg_info
creating simple.dist.egg-info
writing simple.dist.egg-info/PKG-INFO
writing dependency_links to simple.dist.egg-info/dependency_links.txt
writing requirements to simple.dist.egg-info/requires.txt
writing top-level names to simple.dist.egg-info/top_level.txt
writing manifest file 'simple.dist.egg-info/SOURCES.txt'
reading manifest file 'simple.dist.egg-info/SOURCES.txt'
writing manifest file 'simple.dist.egg-info/SOURCES.txt'
Copying simple.dist.egg-info to /tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0/simple.dist-0.1-py3.10.egg-info
running install_scripts
creating /tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0/simple.dist-0.1.dist-info/WHEEL
creating '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/dist0/simple.dist-0.1-py3-none-any.whl' and adding '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0' to it
adding 'simpledist/__init__.py'
adding 'simple.dist-0.1.dist-info/METADATA'
adding 'simple.dist-0.1.dist-info/WHEEL'
adding 'simple.dist-0.1.dist-info/top_level.txt'
adding 'simple.dist-0.1.dist-info/RECORD'
removing /tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0
running bdist_wheel
running build
running build_py
creating build
creating build/lib
copying headersdist.py -> build/lib
installing to /tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0
running install
running install_lib
creating /tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0
copying build/lib/headersdist.py -> /tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0
running install_headers
creating /tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0/headers.dist-0.1.data
creating /tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0/headers.dist-0.1.data/headers
-------------------------------------------------------- Captured stderr setup --------------------------------------------------------
/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/lib/pypy3.10/site-packages/setuptools/__init__.py:80: _DeprecatedInstaller: setuptools.installer and fetch_build_eggs are deprecated.
!!

        ********************************************************************************
        Requirements should be satisfied by a PEP 517 installer.
        If you are using pip, you can try `pip install --use-pep517`.
        ********************************************************************************

!!
  dist.fetch_build_eggs(dist.setup_requires)
warning: build_py: byte-compiling is disabled, skipping.

/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/lib/pypy3.10/site-packages/setuptools/_distutils/cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated.
!!

        ********************************************************************************
        Please avoid running ``setup.py`` directly.
        Instead, use pypa/build, pypa/installer or other
        standards-based tools.

        See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details.
        ********************************************************************************

!!
  self.initialize_options()
warning: install_lib: byte-compiling is disabled, skipping.

[06/20/24 05:31:14] ERROR    listing git files failed - pretending there aren't any                                           git.py:26
warning: build_py: byte-compiling is disabled, skipping.

/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/lib/pypy3.10/site-packages/setuptools/_distutils/cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated.
!!

        ********************************************************************************
        Please avoid running ``setup.py`` directly.
        Instead, use pypa/build, pypa/installer or other
        standards-based tools.

        See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details.
        ********************************************************************************

!!
  self.initialize_options()
warning: install_lib: byte-compiling is disabled, skipping.

[06/20/24 05:31:19] ERROR    listing git files failed - pretending there aren't any                                           git.py:26
warning: build_py: byte-compiling is disabled, skipping.

/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/lib/pypy3.10/site-packages/setuptools/_distutils/cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated.
!!

        ********************************************************************************
        Please avoid running ``setup.py`` directly.
        Instead, use pypa/build, pypa/installer or other
        standards-based tools.

        See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details.
        ********************************************************************************

!!
  self.initialize_options()
warning: install_lib: byte-compiling is disabled, skipping.

error: can't copy 'header.h': doesn't exist or not a regular file
________________________________________________ ERROR at setup of test_unicode_record ________________________________________________
[gw0] linux -- Python 3.10.14 /tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/bin/pypy3

request = <SubRequest 'wheel_paths' for <Function test_no_scripts>>
tmp_path_factory = TempPathFactory(_given_basetemp=PosixPath('/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/p.../dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0'), _retention_count=0, _retention_policy='all')

    @pytest.fixture(scope="module")
    def wheel_paths(request, tmp_path_factory):
        test_distributions = (
            "complex-dist",
            "simple.dist",
            "headers.dist",
            "commasinfilenames.dist",
            "unicode.dist",
        )
    
        if sys.platform != "win32":
            # ABI3 extensions don't really work on Windows
            test_distributions += ("abi3extension.dist",)
    
        pwd = os.path.abspath(os.curdir)
        request.addfinalizer(partial(os.chdir, pwd))
        this_dir = os.path.dirname(__file__)
        build_dir = tmp_path_factory.mktemp("build")
        dist_dir = tmp_path_factory.mktemp("dist")
        for dist in test_distributions:
            os.chdir(os.path.join(this_dir, "bdist_wheel_testdata", dist))
>           subprocess.check_call([
                sys.executable,
                "setup.py",
                "bdist_wheel",
                "-b",
                str(build_dir),
                "-d",
                str(dist_dir),
            ])

build_dir  = PosixPath('/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0')
dist       = 'headers.dist'
dist_dir   = PosixPath('/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/dist0')
pwd        = '/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0'
request    = <SubRequest 'wheel_paths' for <Function test_no_scripts>>
test_distributions = ('complex-dist',
 'simple.dist',
 'headers.dist',
 'commasinfilenames.dist',
 'unicode.dist',
 'abi3extension.dist')
this_dir   = '/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0/setuptools/tests'
tmp_path_factory = TempPathFactory(_given_basetemp=PosixPath('/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0'),
                _trace=<pluggy._tracing.TagTracerSub object at 0x000056105258dde0>,
                _basetemp=PosixPath('/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0'),
                _retention_count=0,
                _retention_policy='all')

/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0/setuptools/tests/test_bdist_wheel.py:83: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

popenargs = (['/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/bin/pypy3', 'setup.py', 'bdist_wheel', '-b', '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0', '-d', ...],)
kwargs = {}, retcode = 1
cmd = ['/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/bin/pypy3', 'setup.py', 'bdist_wheel', '-b', '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0', '-d', ...]

    def check_call(*popenargs, **kwargs):
        """Run command with arguments.  Wait for command to complete.  If
        the exit code was zero then return, otherwise raise
        CalledProcessError.  The CalledProcessError object will have the
        return code in the returncode attribute.
    
        The arguments are the same as for the call function.  Example:
    
        check_call(["ls", "-l"])
        """
        retcode = call(*popenargs, **kwargs)
        if retcode:
            cmd = kwargs.get("args")
            if cmd is None:
                cmd = popenargs[0]
>           raise CalledProcessError(retcode, cmd)
E           subprocess.CalledProcessError: Command '['/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/bin/pypy3', 'setup.py', 'bdist_wheel', '-b', '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0', '-d', '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/dist0']' returned non-zero exit status 1.

cmd        = ['/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/bin/pypy3',
 'setup.py',
 'bdist_wheel',
 '-b',
 '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0',
 '-d',
 '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/dist0']
kwargs     = {}
popenargs  = (['/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/bin/pypy3',
  'setup.py',
  'bdist_wheel',
  '-b',
  '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0',
  '-d',
  '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/dist0'],)
retcode    = 1

/usr/lib/pypy3.10/subprocess.py:369: CalledProcessError
____________________________________________ ERROR at setup of test_wheelfile_line_endings ____________________________________________
[gw0] linux -- Python 3.10.14 /tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/bin/pypy3

request = <SubRequest 'wheel_paths' for <Function test_no_scripts>>
tmp_path_factory = TempPathFactory(_given_basetemp=PosixPath('/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/p.../dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0'), _retention_count=0, _retention_policy='all')

    @pytest.fixture(scope="module")
    def wheel_paths(request, tmp_path_factory):
        test_distributions = (
            "complex-dist",
            "simple.dist",
            "headers.dist",
            "commasinfilenames.dist",
            "unicode.dist",
        )
    
        if sys.platform != "win32":
            # ABI3 extensions don't really work on Windows
            test_distributions += ("abi3extension.dist",)
    
        pwd = os.path.abspath(os.curdir)
        request.addfinalizer(partial(os.chdir, pwd))
        this_dir = os.path.dirname(__file__)
        build_dir = tmp_path_factory.mktemp("build")
        dist_dir = tmp_path_factory.mktemp("dist")
        for dist in test_distributions:
            os.chdir(os.path.join(this_dir, "bdist_wheel_testdata", dist))
>           subprocess.check_call([
                sys.executable,
                "setup.py",
                "bdist_wheel",
                "-b",
                str(build_dir),
                "-d",
                str(dist_dir),
            ])

build_dir  = PosixPath('/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0')
dist       = 'headers.dist'
dist_dir   = PosixPath('/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/dist0')
pwd        = '/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0'
request    = <SubRequest 'wheel_paths' for <Function test_no_scripts>>
test_distributions = ('complex-dist',
 'simple.dist',
 'headers.dist',
 'commasinfilenames.dist',
 'unicode.dist',
 'abi3extension.dist')
this_dir   = '/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0/setuptools/tests'
tmp_path_factory = TempPathFactory(_given_basetemp=PosixPath('/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0'),
                _trace=<pluggy._tracing.TagTracerSub object at 0x000056105258dde0>,
                _basetemp=PosixPath('/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0'),
                _retention_count=0,
                _retention_policy='all')

/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0/setuptools/tests/test_bdist_wheel.py:83: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

popenargs = (['/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/bin/pypy3', 'setup.py', 'bdist_wheel', '-b', '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0', '-d', ...],)
kwargs = {}, retcode = 1
cmd = ['/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/bin/pypy3', 'setup.py', 'bdist_wheel', '-b', '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0', '-d', ...]

    def check_call(*popenargs, **kwargs):
        """Run command with arguments.  Wait for command to complete.  If
        the exit code was zero then return, otherwise raise
        CalledProcessError.  The CalledProcessError object will have the
        return code in the returncode attribute.
    
        The arguments are the same as for the call function.  Example:
    
        check_call(["ls", "-l"])
        """
        retcode = call(*popenargs, **kwargs)
        if retcode:
            cmd = kwargs.get("args")
            if cmd is None:
                cmd = popenargs[0]
>           raise CalledProcessError(retcode, cmd)
E           subprocess.CalledProcessError: Command '['/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/bin/pypy3', 'setup.py', 'bdist_wheel', '-b', '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0', '-d', '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/dist0']' returned non-zero exit status 1.

cmd        = ['/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/bin/pypy3',
 'setup.py',
 'bdist_wheel',
 '-b',
 '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0',
 '-d',
 '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/dist0']
kwargs     = {}
popenargs  = (['/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/bin/pypy3',
  'setup.py',
  'bdist_wheel',
  '-b',
  '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/build0',
  '-d',
  '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/dist0'],)
retcode    = 1

/usr/lib/pypy3.10/subprocess.py:369: CalledProcessError
============================================================== FAILURES ===============================================================
__________________________________________________________ test_limited_abi ___________________________________________________________
[gw0] linux -- Python 3.10.14 /tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/bin/pypy3

monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x0000561056b353d0>
tmp_path = PosixPath('/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/test_limited_abi0')

    def test_limited_abi(monkeypatch, tmp_path):
        """Test that building a binary wheel with the limited ABI works."""
        this_dir = os.path.dirname(__file__)
        source_dir = os.path.join(this_dir, "bdist_wheel_testdata", "extension.dist")
        build_dir = tmp_path.joinpath("build")
        dist_dir = tmp_path.joinpath("dist")
        monkeypatch.chdir(source_dir)
>       subprocess.check_call([
            sys.executable,
            "setup.py",
            "bdist_wheel",
            "-b",
            str(build_dir),
            "-d",
            str(dist_dir),
        ])

build_dir  = PosixPath('/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/test_limited_abi0/build')
dist_dir   = PosixPath('/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/test_limited_abi0/dist')
monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x0000561056b353d0>
source_dir = '/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0/setuptools/tests/bdist_wheel_testdata/extension.dist'
this_dir   = '/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0/setuptools/tests'
tmp_path   = PosixPath('/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/test_limited_abi0')

/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0/setuptools/tests/test_bdist_wheel.py:270: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

popenargs = (['/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/bin/pypy3', 'setup.py', 'bdist_w...p/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/test_limited_abi0/build', '-d', ...],)
kwargs = {}, retcode = 1
cmd = ['/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/bin/pypy3', 'setup.py', 'bdist_wh...tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/test_limited_abi0/build', '-d', ...]

    def check_call(*popenargs, **kwargs):
        """Run command with arguments.  Wait for command to complete.  If
        the exit code was zero then return, otherwise raise
        CalledProcessError.  The CalledProcessError object will have the
        return code in the returncode attribute.
    
        The arguments are the same as for the call function.  Example:
    
        check_call(["ls", "-l"])
        """
        retcode = call(*popenargs, **kwargs)
        if retcode:
            cmd = kwargs.get("args")
            if cmd is None:
                cmd = popenargs[0]
>           raise CalledProcessError(retcode, cmd)
E           subprocess.CalledProcessError: Command '['/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/bin/pypy3', 'setup.py', 'bdist_wheel', '-b', '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/test_limited_abi0/build', '-d', '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/test_limited_abi0/dist']' returned non-zero exit status 1.

cmd        = ['/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/bin/pypy3',
 'setup.py',
 'bdist_wheel',
 '-b',
 '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/test_limited_abi0/build',
 '-d',
 '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/test_limited_abi0/dist']
kwargs     = {}
popenargs  = (['/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/bin/pypy3',
  'setup.py',
  'bdist_wheel',
  '-b',
  '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/test_limited_abi0/build',
  '-d',
  '/tmp/portage/dev-python/setuptools-70.1.0/temp/pytest-of-portage/pytest-0/popen-gw0/test_limited_abi0/dist'],)
retcode    = 1

/usr/lib/pypy3.10/subprocess.py:369: CalledProcessError
-------------------------------------------------------- Captured stdout call ---------------------------------------------------------
running bdist_wheel
running build
running build_ext
building 'extension' extension
creating build
creating build/temp.linux-x86_64-pypy310
x86_64-pc-linux-gnu-gcc -march=znver2 --param=l1-cache-size=32 --param=l1-cache-line-size=64 -O2 -pipe -frecord-gcc-switches -fPIC -I/tmp/portage/dev-python/setuptools-70.1.0/work/setuptools-70.1.0-pypy3/install/usr/include -I/usr/include/pypy3.10 -c extension.c -o build/temp.linux-x86_64-pypy310/extension.o
-------------------------------------------------------- Captured stderr call ---------------------------------------------------------
cc1: fatal error: extension.c: No such file or directory
compilation terminated.
error: command '/usr/lib/ccache/bin/x86_64-pc-linux-gnu-gcc' failed with exit code 1
@mgorny mgorny added bug Needs Triage Issues that need to be evaluated for severity and status. labels Jun 20, 2024
@mgorny mgorny changed the title [BUG] Test data missing (extension.c files) missing in 70.1.0 sdist [BUG] Test data missing (extension.c files and more) missing in 70.1.0 sdist Jun 20, 2024
@mgorny
Copy link
Contributor Author

mgorny commented Jun 25, 2024

Thanks!

@abravalheri
Copy link
Contributor

I will cut a release soon.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Needs Triage Issues that need to be evaluated for severity and status.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants