#1460 python3.9-debuginfo missing
Closed: Fixed by kevin. Opened by kevin.

Oddly the python3.9-debuginfo rpm doesn't seem to be correctly gathered. The debugsource is available (in both i686 and x86_64) but not the debuginfo.

It is created in koji fine and seems to be normally formed.

Any ideas?


RelEng ticket - https://pagure.io/releng/issue/9820

python3.9-debuginfo is not included, because it doesn't match any binary package. The main package for it is actually named python3.

The easiest fix is to add python3.9-debuginfo to additional_packages in the compose configuration.

Fixing this in some other way would be more complicated in order not to pull in more debuginfo packages than are actually needed.

I'm wondering if the debuginfo is included, would dnf debuginfo-install python3 actually use it? How does it match the packages together?

Then it looks like if python maintainers upgrade main python version to 3.10 and package rpms in the same way as current, the same issue will happen again. Maybe it can be said that this is due to the violation of packaging guideline.

So maybe the most reasonable way is to ask python maintainers to rename binary rpm to actually python3.9?

The compose configuration change would fix it in every compose, even when a new version is built. There's no version involved, only package name.

Ah, I meant that if in the future python3.spec would create python3 and python3.10-debuginfo, again the compose configuration has to change to explicit add "python3.10-debuginfo" at that time, it is right?

Ah, I see. That should be doable with a wildcard: python3.*-debuginfo.

@lsedlar Actually its coming from python3.9 package - https://koji.fedoraproject.org/koji/buildinfo?buildID=1620895 and there is real rpm for it.

Then it looks like if python maintainers upgrade main python version to 3.10 and package rpms in the same way as current, the same issue will happen again.

Indeed.

Maybe it can be said that this is due to the violation of packaging guideline.

What packaging guideline are we violating?

What packaging guideline are we violating?

https://docs.fedoraproject.org/en-US/packaging-guidelines/#_spec_files

So it is sure that python3.9.spec has %{name}: python3.9, but actually no "python3.9" named binary package is created, so it can be said that current situation is in the violation of "That is, if your package is named example", at least I would say current situation is unexpected.

If we allow current python3.9 situation, we also allow that foo.spec has actually %{name} as foo, but no foo binary rpm is created and only bar, baz,... binary rpms are created. I would say this is against the above guideline.

Also note here: (although it says should ) <=== Please ignore this comment (I cannot delete the comment)

So it is sure that python3.9.spec has %{name}: python3.9, but actually no "python3.9" named binary package is created, so it can be said that current situation is in the violation of "That is, if your package is named example", at least I would say current situation is unexpected.

It is not unexpected. (Close to) all Python packages in Fedora have no binary package created that is called the same as the component. This is not forbidden anywhere.

I'd be happy to do some spec file adjustments to make this situation better, but I'd rather avoid shipping "python3.9" binary packages without first consulting the Python list about such change.

https://pagure.io/pungi-fedora/pull-request/972

ok, so we fixed this with the wildcard for rawhide (correct? can others confirm?)

But f33 is still affected. I am not sure what to do there, as noted in the pr comment: https://pagure.io/pungi-fedora/pull-request/972#comment-140659

We already pass * to that additional_packages config...
@lsedlar any ideas here?
fedora updates has:
additional_packages = [
('^Everything$', {
'': [
'',
],
}),
]
and I see python3.9-debugsource, but not python3.9-debuginfo

So, if @lsedlar could look that would be lovely...

Yes, this appears to be fixed in rawhide:

$ repoquery --repo=rawhide-debuginfo python3.9-debuginfo
python3.9-debuginfo-0:3.9.1-5.fc34.x86_64

The issue is that * by itself will only apply to "binary" packages (not sources, not debuginfo).

If all debuginfo packages should be in the compose, there should also be *-debuginfo. This would pull in 7 more packages according to my testing (based on Fedora-33-updates-20210206.0). Adding just python-3.*-debuginfo pulls in just the 3.9 package (3.8 and 3.10 are already there).

The 7 added packages are

mozilla-crashreporter-firefox-debuginfo-85.0-8.fc33.x86_64.rpm
mingw32-adwaita-qt-debuginfo-1.2.0-1.fc33.noarch.rpm
mingw64-adwaita-qt-debuginfo-1.2.0-1.fc33.noarch.rpm
mingw32-python-pillow-debuginfo-7.2.0-3.fc33.noarch.rpm
mingw64-python-pillow-debuginfo-7.2.0-3.fc33.noarch.rpm
python3-notmuch-debuginfo-0.31.3-2.fc33.i686.rpm
python3.9-debuginfo-3.9.1-2.fc33.x86_64.rpm

ok. Pushed the change to bodhi pungi config. I guess we check tomorrow. ;) Thanks @lsedlar !

Looks good from here! Thanks!

Metadata Update from @kevin:
- Issue close_status updated to: Fixed
- Issue status updated to: Closed (was: Open)

$ repoquery --repo=updates-debuginfo python3.9-debuginfo
python3.9-debuginfo-0:3.9.1-2.fc33.x86_64

Thanks everybody!

This issue has been migrated to Fedora Forge:
https://forge.fedoraproject.org/pungi/pungi/issues/1460

Please continue any further discussion there.

Metadata