Bug 1217475

Summary: python311-distutils-extra-3.0-1.1.noarch.rpm breaks two XFCE packages
Product: [openSUSE] openSUSE Tumbleweed Reporter: Manfred Hollstein <manfred.h>
Component: PythonAssignee: Python maintainers (group account) <python-maintainers>
Status: RESOLVED FIXED QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P5 - None CC: dimstar, manfred.h
Version: Current   
Target Milestone: ---   
Hardware: Other   
OS: Other   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Manfred Hollstein 2023-11-24 09:11:08 UTC
The two packages catfish and menulibre both require the package python-distutils-extra for building. This used to work up until TW snapshot 20231113.

TW snapshot 20231114 introduced a new version which has this incompatibility:

  * Port code to setuptools. It will not work with distutils any
    more.

Upstream of both XFCE packages does not use any version newer than 2.50 which is what we had until snapshot 20231113, so there is no fix available.

Interestingly this change came as a complete surprise because the changed python-distutils-extra package was not even announced in the usual TW snapshot announcements.

The build of both packages fails with an exception "ImportError"; here is the related code:

  try:
      import DistUtilsExtra.auto
  except ImportError:
      sys.stderr.write("To build catfish you need "
                       "https://launchpad.net/python-distutils-extra\n")
      sys.exit(1)

It is unknown/undocumented what needs to be changed in a package using the new python-distutils-extra-3.0, which is why I'd recommend to revert to the former version python311-distutils-extra-2.50-1.4.noarch.rpm!
Comment 2 Manfred Hollstein 2023-11-27 09:19:58 UTC
(In reply to Dominique Leuenberger from comment #1)
> https://build.opensuse.org/package/live_build_log/openSUSE:Factory/catfish/
> standard/x86_64
> 
> catfish successfully builds again since I fixed the distutils-extra
> packaging in
> https://build.opensuse.org/request/show/1128371
> 
> Se for menulibre:
> https://build.opensuse.org/package/live_build_log/openSUSE:Factory/menulibre/
> standard/x86_64

Great, thanks a lot!