Thank you for prompting me to look at this more closely. A quick investigation 
reveals:

“Abseil libraries require C++14 as the current minimum standard. When compiled 
with C++17 (either because it is the compiler's default or explicitly 
requested), then Abseil requires C++17.”
     
https://github.com/abseil/abseil-cpp/blob/20230125.1/CMake/AbseilHelpers.cmake#L291

The abseil-cpp package in Fedora has been compiled as C++17 for some time—at 
first explicitly, but this would also now be the default if the spec file did 
not configure a particular standard—so it seems dependent packages already 
technically needed C++17, and it is mere happenstance that this particular 
release is revealing incompatibilities.

On Wed, Mar 15, 2023, at 10:01 AM, Jonathan Wakely wrote:
> On Wednesday, March 15, 2023, Ben Beasley  wrote:
>> In one week (2023-03-22), or slightly later, I plan to update abseil-cpp[1] 
>> in Rawhide/F39 to the latest LTS release, which is currently 20230125.1. 
>> Release notes are available[2].
>>
>> The most significant breaking change is that dependent packages are required 
>> to compile with C++14 or later, and I have found that users of 
>> absl::string_view need C++17 or later.
>
> Hmm, that seems odd. The release notes say C++14 is required but don't 
> mention that C++17 is needed for some components.
>
> C++17 provides std::string_view so what's the point in using 
> absl::string_view at all if it only works when std::string_view is 
> already available?
>
>> This has already been adjusted in a couple of packages (thanks!) and I have 
>> one PR still open[3].
>
>
> The error you showed there says the problem is using std::string_view, 
> which does indeed require C++17. That doesn't seem related to 
> absl::string_view, unless there's a bug in abseil which causes 
> absl::string_view to incorrectly use std::string_view in C++14 mode.
>
> I think something doesn't make sense here, and would be worth understanding.
>
>
>>
>> All dependent packages build successfully in COPR[4] (with any necessary 
>> C++17 PR’s applied).
>>
>> I will rebuild the following packages in the side tag myself as primary 
>> maintainer or as co-maintainer:
>>
>>     - abseil-cpp (of course)
>>
>>     - bear
>>
>>     - fastnetmon
>>
>>     - grpc
>>
>>     - libarrow
>>
>> For the remaining packages that need to be rebuilt, when the new version of 
>> abseil-cpp and the rebuilt grpc are ready in the side tag, I will send an 
>> email to their maintainers asking them to rebuild into the side tag. After a 
>> few days, I will ask Rich Mattes, the primary abseil-cpp package maintainer, 
>> to use his provenpackager privileges to rebuild any remaining dependent 
>> packages (and merge the C++17 PR for ilbc if it is still open). He has 
>> already agreed to do so.
>>
>> If you maintain one of the affected packages and you want me to handle 
>> rebuilds in the future, you can grant me privileges on the project; 
>> collaborator on the rawhide branch should be sufficient.
>>
>>     - bloaty
>>
>>     - credentials-fetcher
>>
>>     - fcitx5-mozc
>>
>>     - frr
>>
>>     - ilbc
>>
>>     - libphonenumber
>>
>>     - mozc
>>
>>     - plasma-dialer
>>
>>     - qmlkonsole
>>
>>     - spacebar
>>
>> If you maintain one of the affected packages, you should find that you 
>> received this message directly (by BCC due to limitations on the number of 
>> CC recipients imposed by the devel mailing list).
>>
>> [1] https://src.fedoraproject.org/rpms/abseil-cpp/pull-request/10
>>
>> [2] https://github.com/abseil/abseil-cpp/releases/tag/20230125.1
>>
>> [3] https://src.fedoraproject.org/rpms/ilbc/pull-request/1
>>
>> [4] https://copr.fedorainfracloud.org/coprs/music/abseil-cpp/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
>>
_______________________________________________
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