Bug 2324076

Summary: swift-lang leaks rpm requires/provides from its bundled LLVM
Product: [Fedora] Fedora Reporter: Josh Stone <jistone>
Component: swift-langAssignee: Ron Olson <tachoknight>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: suraj.ghimire7, tachoknight, tstellar
Target Milestone: ---Flags: tstellar: mirror+
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: swift-lang-6.0.2-1.fc42 swift-lang-6.0.2-1.fc40 swift-lang-6.0.2-1.fc41 swift-lang-6.0.2-1.el9 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2024-11-24 00:41:35 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Josh Stone 2024-11-05 23:16:46 UTC
A few libraries from the bundled LLVM in swift-lang are exposed in rpm requires and provides by the package. This causes a conflict with the "real" package that provides the same, for example:

$ dnf repoquery --quiet --whatprovides 'libLTO.so.17()(64bit)'
llvm17-libs-0:17.0.6-9.fc41.x86_64
swift-lang-0:6.0.1-1.fc41.x86_64

There's also liblldb, which conflicts on F39:

$ dnf repoquery --quiet --whatprovides 'liblldb.so.17()(64bit)'
lldb-0:17.0.1-1.fc39.x86_64
lldb-0:17.0.6-1.fc39.x86_64
swift-lang-0:6.0.1-1.fc39.x86_64

Those bundled libraries in /usr/libexec/swift/6.0.1/lib/ are not even added to the ldconfig path AFAICS, so they really ought to be filtered entirely, per:
https://docs.fedoraproject.org/en-US/packaging-guidelines/AutoProvidesAndRequiresFiltering/

Comment 1 Ron Olson 2024-11-12 15:38:07 UTC
I added the two lines below and I think they're right, if there's a way to validate this I'd like to know:

%global __provides_exclude_from ^(%{_libexecdir}/%{name}/%{package_version}/lib/.*\\.so.*|%{_libexecdir}/%{name}/%{package_version}/lib64/.*\\.so.*)$
%global __requires_exclude_from ^(%{_libexecdir}/%{name}/%{package_version}/lib/.*\\.so.*|%{_libexecdir}/%{name}/%{package_version}/lib64/.*\\.so.*)$

Comment 2 Josh Stone 2024-11-12 16:53:27 UTC
If you do a local mock build, you can check "rpm -q --provides -p your-file.rpm", and likewise for "--requires".

Or in a koji build, you can see it in the rpm info page, like this one:
https://koji.fedoraproject.org/koji/rpminfo?rpmID=40168277

I don't think that works for scratch builds, but you could still download the rpms and query them yourself.

Comment 3 Fedora Update System 2024-11-24 00:37:05 UTC
FEDORA-2024-0ce53e51ac (swift-lang-6.0.2-1.fc42) has been submitted as an update to Fedora 42.
https://bodhi.fedoraproject.org/updates/FEDORA-2024-0ce53e51ac

Comment 4 Fedora Update System 2024-11-24 00:41:35 UTC
FEDORA-2024-0ce53e51ac (swift-lang-6.0.2-1.fc42) has been pushed to the Fedora 42 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 5 Fedora Update System 2024-11-24 22:31:58 UTC
FEDORA-2024-24096895a4 (swift-lang-6.0.2-1.fc41) has been submitted as an update to Fedora 41.
https://bodhi.fedoraproject.org/updates/FEDORA-2024-24096895a4

Comment 6 Fedora Update System 2024-11-24 22:32:26 UTC
FEDORA-2024-4ef3e23eb6 (swift-lang-6.0.2-1.fc40) has been submitted as an update to Fedora 40.
https://bodhi.fedoraproject.org/updates/FEDORA-2024-4ef3e23eb6

Comment 7 Fedora Update System 2024-11-24 22:34:58 UTC
FEDORA-EPEL-2024-72ca3236a7 (swift-lang-6.0.2-1.el9) has been submitted as an update to Fedora EPEL 9.
https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2024-72ca3236a7

Comment 8 Fedora Update System 2024-11-25 03:32:27 UTC
FEDORA-2024-4ef3e23eb6 has been pushed to the Fedora 40 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2024-4ef3e23eb6`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2024-4ef3e23eb6

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 9 Fedora Update System 2024-11-25 03:43:42 UTC
FEDORA-2024-24096895a4 has been pushed to the Fedora 41 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2024-24096895a4`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2024-24096895a4

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 10 Fedora Update System 2024-11-25 04:03:51 UTC
FEDORA-EPEL-2024-72ca3236a7 has been pushed to the Fedora EPEL 9 testing repository.

You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2024-72ca3236a7

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 11 Fedora Update System 2024-12-02 07:02:59 UTC
FEDORA-2024-4ef3e23eb6 (swift-lang-6.0.2-1.fc40) has been pushed to the Fedora 40 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 12 Fedora Update System 2024-12-02 07:07:02 UTC
FEDORA-2024-24096895a4 (swift-lang-6.0.2-1.fc41) has been pushed to the Fedora 41 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 13 Fedora Update System 2024-12-02 07:27:56 UTC
FEDORA-EPEL-2024-72ca3236a7 (swift-lang-6.0.2-1.el9) has been pushed to the Fedora EPEL 9 stable repository.
If problem still persists, please make note of it in this bug report.