Skip to content

Support openSUSE specific behaviors #85

@hswong3i

Description

@hswong3i

setuptools version

60.0.3

Python version

Python 3.8

OS

openSUSE Tumbleweed

Additional environment information

During RPM packaging.

Description

I am packaging setuptools 60.0.3 with OBS (https://build.opensuse.org/package/show/home:alvistack/pypa-setuptools-60.0.3) for multiple OS deb/rpm.

It is only failed for openSUSE Tumbleweed during rpm packaging (https://build.opensuse.org/package/live_build_log/home:alvistack/pypa-setuptools-60.0.3/openSUSE_Tumbleweed/x86_64).

platsubdir is coming from an additional patch for openSUSE Factory Python 3.8: https://build.opensuse.org/package/view_file/openSUSE:Factory/python38/SUSE-FEDORA-multilib.patch

Also see https://bugzilla.opensuse.org/show_bug.cgi?id=1193977

P.S. my changes for deb/rpm packaging: alvistack/pypa-setuptools@f73b5bc

Expected behavior

Following OS build are successful:

How to Reproduce

With python3 setup.py install --skip-build we FAILED:

sudo podman run -ti --rm opensuse/tumbleweed bash
zypper update
zypper install -y git curl wget python3 python3-devel python3-pip python3-setuptools python3-wheel
git clone https://github.com/pypa/setuptools.git
cd setuptools
git checkout v60.0.3
python3 setup.py build
python3 setup.py install --skip-build

With pip install . we PASS:

sudo podman run -ti --rm opensuse/tumbleweed bash
zypper update
zypper install -y git curl wget python3 python3-devel python3-pip python3-setuptools python3-wheel
git clone https://github.com/pypa/setuptools.git
cd setuptools
git checkout v60.0.3
python3 setup.py build
pip install .

Output

Full log (https://build.opensuse.org/build/home:alvistack/openSUSE_Tumbleweed/x86_64/pypa-setuptools-60.0.3/_log):

[   22s] + /usr/bin/python3 setup.py install -O1 --skip-build --force --root /home/abuild/rpmbuild/BUILDROOT/python-setuptools-60.0.3-3.1.x86_64 --prefix /usr
[   23s] running install
[   23s] /home/abuild/rpmbuild/BUILD/python-setuptools_60.0.3-3.1/setuptools/command/install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
[   23s]   warnings.warn(
[   23s] Traceback (most recent call last):
[   23s]   File "/home/abuild/rpmbuild/BUILD/python-setuptools_60.0.3-3.1/setuptools/_distutils/util.py", line 258, in subst_vars
[   23s]     return _subst_compat(s).format_map(lookup)
[   23s] KeyError: 'platsubdir'
[   23s] 
[   23s] During handling of the above exception, another exception occurred:
[   23s] 
[   23s] Traceback (most recent call last):
[   23s]   File "setup.py", line 87, in <module>
[   23s]     dist = setuptools.setup(**setup_params)
[   23s]   File "/home/abuild/rpmbuild/BUILD/python-setuptools_60.0.3-3.1/setuptools/__init__.py", line 153, in setup
[   23s]     return distutils.core.setup(**attrs)
[   23s]   File "/home/abuild/rpmbuild/BUILD/python-setuptools_60.0.3-3.1/setuptools/_distutils/core.py", line 148, in setup
[   23s]     return run_commands(dist)
[   23s]   File "/home/abuild/rpmbuild/BUILD/python-setuptools_60.0.3-3.1/setuptools/_distutils/core.py", line 163, in run_commands
[   23s]     dist.run_commands()
[   23s]   File "/home/abuild/rpmbuild/BUILD/python-setuptools_60.0.3-3.1/setuptools/_distutils/dist.py", line 967, in run_commands
[   23s]     self.run_command(cmd)
[   23s]   File "/home/abuild/rpmbuild/BUILD/python-setuptools_60.0.3-3.1/setuptools/_distutils/dist.py", line 985, in run_command
[   23s]     cmd_obj.ensure_finalized()
[   23s]   File "/home/abuild/rpmbuild/BUILD/python-setuptools_60.0.3-3.1/setuptools/_distutils/cmd.py", line 107, in ensure_finalized
[   23s]     self.finalize_options()
[   23s]   File "setup.py", line 66, in finalize_options
[   23s]     install.finalize_options(self)
[   23s]   File "/home/abuild/rpmbuild/BUILD/python-setuptools_60.0.3-3.1/setuptools/command/install.py", line 45, in finalize_options
[   23s]     orig.install.finalize_options(self)
[   23s]   File "/home/abuild/rpmbuild/BUILD/python-setuptools_60.0.3-3.1/setuptools/_distutils/command/install.py", line 422, in finalize_options
[   23s]     self.expand_dirs()
[   23s]   File "/home/abuild/rpmbuild/BUILD/python-setuptools_60.0.3-3.1/setuptools/_distutils/command/install.py", line 582, in expand_dirs
[   23s]     self._expand_attrs(['install_purelib', 'install_platlib',
[   23s]   File "/home/abuild/rpmbuild/BUILD/python-setuptools_60.0.3-3.1/setuptools/_distutils/command/install.py", line 572, in _expand_attrs
[   23s]     val = subst_vars(val, self.config_vars)
[   23s]   File "/home/abuild/rpmbuild/BUILD/python-setuptools_60.0.3-3.1/setuptools/_distutils/util.py", line 260, in subst_vars
[   23s]     raise ValueError(f"invalid variable {var}")
[   23s] ValueError: invalid variable 'platsubdir'
[   23s] error: Bad exit status from /var/tmp/rpm-tmp.qnWuVC (%install)

Code of Conduct

  • I agree to follow the PSF Code of Conduct

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions