On 2023-02-19 05:15, Björn Persson wrote:
Gordon Messmer wrote:
If a maintainer enabled the _elf_require_fallback_versions macro
before a mass rebuild where the _elf_provide_fallback_versions macro
had been enabled globally, then the resulting package would have
versioned dependencies, and the packages it depends on might not have
versioned dependencies.  That package wouldn't be installable.
It seems to me that it would be much safer if the dependency generator
would verify that the library package actually provides the generated
dependency.


As you noted at the end of your message, that would involve querying the rpm DB from the ELF dependency generator, which the rpm maintainers want to avoid.


If _elf_provide_fallback_versions is turned off in a single package for
whatever reason, then dependent packages should only need rebuilding to
pick up the unversioned dependency. The maintainers of the dependent
packages shouldn't have to turn off _elf_require_fallback_versions
manually.


Unfortunately, I don't see a way around that.  Unless I'm missing something, the ELF dependency generator does not verify that the providing package has versioned symbols in its "Provides:" list, so maintainers have to manually instruct it to use "--soname-only" (or disable automatic dependency generation entirely) to opt out. The same would be true for this feature.


There are always some failures in each mass rebuild. If library L fails
to build in Fedora N, and fails again in Fedora N+1, then under the
current policy, L will be retired from Fedora N+2.


Yes, that's a good point.  Depending on the nature of the FTBFS, and the breadth of their dependencies, it may be easier to delay globally enabling _elf_require_fallback_versions to a later release than to unset _elf_require_fallback_versions in the packages that depend on FTBFS packages.
_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue

Reply via email to