Terje Røsten (FAS: terjeros) and I (FAS: music) have been impact-checking an update of gtest to 1.17.1, as proposed by Zephyr Lykos (FAS: mochaa)[1]. The gtest source package also provides the gmock/gmock-devel binary RPMs.

Since gtest has no ABI compatibility guarantees and uses the full version number as the ABI version, this will be an ABI-incompatible update. Most packages that depend on gtest do so only as a test dependency, so they will not need to be rebuilt, and only need API compatibility to continue to build from source. I used the following commands to look for packages with binary RPMs that actually link libraries from gtest:

    $ repoquery --repo=rawhide --whatrequires 'libgtest*.so.*'
    $ repoquery --repo=rawhide --whatrequires 'libgmock*.so.*'

Based on these queries, the source packages that will need to be rebuilt in the same side tag are only the following nine: abseil-cpp, cachelib, davix, libcamera, mir, pkcs11test, python-steps, sdbus-cpp, and wlcs. Maintainers of these packages should have received this email directly by BCC. I intend to rebuild all nine packages in a side tag using either (co-)maintainer status or provenpackager privilege.

However, there are many more source packages that BuildRequire gtest and could be impacted by API changes:

    $ fedrq wrsrc -s gtest | wc -l
    175

This gtest update is particularly significant because gtest now requires at least C++17. Several packages that were building as C++14 have needed to be adjusted to build as C++17 instead. In general, Terje and I have already taken care of submitting these PR’s and getting them merged, getting consent from the package maintainers whenever we could. The exceptions are those for spatialindex[2] and spatialindex2.0[3]. If those are still awaiting review when I ship the gtest update, I will merge them as provenpackager.

There are a couple of relevant PR’s opened by Terje that are still pending. The folly package already FTBFS, but [4] would fix it, and the package impact-checks successfully afterward. I do not plan to use provenpackager privilege for this PR since we are not making the situation worse, and there may be a better approach than skipping these tests. The root package would have a couple of new test failures with gtest 1.17.0; we haven’t tried to investigate exactly what is going wrong, but [5] would skip the affected tests. I am not sure if that is the approach that the root maintainers want to take, so I won’t merge the PR without maintainer feedback. Plus, we haven’t quite proven that these aren’t simply COPR-specific failures rather than ones due to the gtest update. If no action is taken, root may start to FTBFS (but not FTI!) after the gtest update.

Looking at Terje’s original COPR impact check[6] and at an updated one I just conducted[7][8], it looks like there should not be any other impacts from the gtest update. We plan to proceed in one week, on 2025-11-11, or slightly later. Thanks to Terje and Zephyr for working so hard on this update and for taking the time to understand its effects.

– Ben Beasley (FAS: music)

[1] https://src.fedoraproject.org/rpms/gtest/pull-request/9

[2] https://src.fedoraproject.org/rpms/spatialindex/pull-request/4

[3] https://src.fedoraproject.org/rpms/spatialindex2.0/pull-request/1

[4] https://src.fedoraproject.org/rpms/folly/pull-request/34

[5] https://src.fedoraproject.org/rpms/root/pull-request/7

[6] https://copr.fedorainfracloud.org/coprs/terjeros/gtest-1.17.0/packages/

[7] https://copr.fedorainfracloud.org/coprs/music/gtest/packages/

[8] https://src.fedoraproject.org/rpms/gtest/pull-request/9#comment-289491

--
_______________________________________________
devel mailing list -- [email protected]
To unsubscribe send an email to [email protected]
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/[email protected]
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue

Reply via email to