Bug 1222362

Summary: python3-relatorio binary missing, though python311-relatorio is present
Product: [openSUSE] openSUSE Distribution Reporter: Nathan Cutler <ncutler>
Component: OtherAssignee: Nathan Cutler <ncutler>
Status: RESOLVED WONTFIX QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P5 - None CC: axel.braun
Version: Leap 15.6   
Target Milestone: Leap 15.6   
Hardware: Other   
OS: Other   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Nathan Cutler 2024-04-05 09:25:15 UTC
Due to the way python-relatorio is packaged in Factory, it only builds for the latest greatest Python:

%{?sle15_python_module_pythons}

In Factory, this is fine, but in Leap 15.6 we have two Pythons - 3.6 and 3.11 - and 3.6 is the default one. Therefore, it's unexpected to have only python311-relatorio and not python36-relatorio.
Comment 1 Nathan Cutler 2024-04-05 09:25:55 UTC
> Therefore, it's unexpected to have only python311-relatorio and not python36-relatorio.

Oops, I meant: "... and not python3-relatorio" built against the default Python.
Comment 2 Nathan Cutler 2024-04-05 09:32:07 UTC
I assume the rationale for %{?sle15_python_module_pythons} in this case was that upstream might eventually drop support for Python 3.6.

But that hasn't happened yet, so there doesn't seem to be any reason to limit the python-relatorio build to Python 3.11 in SLE15.
Comment 3 Nathan Cutler 2024-04-05 10:47:03 UTC
https://build.opensuse.org/request/show/1165547
Comment 4 Nathan Cutler 2024-04-05 10:48:18 UTC
@Axel, does this look reasonable to you?
Comment 5 Axel Braun 2024-04-06 08:34:10 UTC
As long as we have a build for python 3.11 I'm fine having a 3.6 build as well. Although we probably should use 3.11 preferrably. 
What python package still needs relatorio for 3.6?
Comment 6 Nathan Cutler 2024-04-07 13:33:54 UTC
> What python package still needs relatorio for 3.6?

I could have written the bug description better, sorry. Let me try again:

The problem here is not that we are shipping relatorio for 3.11, but rather that we are *not* shipping it for the default Python.

python311-relatorio is relatorio built for Python 3.11
python3-relatorio is relatorio built for the default Python, which happens to be 3.6 in this case.

In 15.5 there is no non-default Python, so we ship python3-relatorio. Folks who have installed it there will lose it when they migrate to 15.6 if we do not ship an RPM of that name in 15.6.

So I argue we should continue to build and ship a python3-relatorio, in addition to python311-relatorio, in 15.6 in accordance with the principle of least astonishment.

> Although we probably should use 3.11 preferrably. 

I don't know how we could "prefer" a non-default Python in 15.6, but I guess that's beyond the scope of this bug? Certainly, Python packages built for 3.11 will bring in python311-relatorio. Python packages built for the default Python (3.6) will bring in python3-relatorio. Assuming they are packaged correctly, of course.
Comment 7 Nathan Cutler 2024-04-18 08:45:22 UTC
In light of the following bits of information, which I didn't have when I opened this bug:

nothing in SLE actually _depends_ on a python3-relatorio

one of relatorio's dependencies, pycha, is only built for Python 3.11

I am closing this as WON'T FIX. Thanks, everyone, for your valuable input!