Hi Francesco, According to JetBrains questionnaire results from last year[1], only 18% of the respondents were using C++20 “regularly,” whatever that means. That number is higher than I would have thought, but still I would caution against requiring C++20 supporting compilers for a few years yet.
Backporting required parts of std::span and having a layer that switches between std::format and fmtlib shouldn’t be too hard, assuming these are only used internally and nothing in the API expects span inputs, for example. But would we require contributors to use a C++20 enabled compiler? Cheers, Christopher [1] https://www.jetbrains.com/lp/devecosystem-2021/cpp/ The MathWorks GmbH | Friedlandstr.18 | 52064 Aachen | District Court Aachen | HRB 8082 | Managing Directors: Bertrand Dissler, Steven D. Barbo, Jeanne O’Keefe From: Francesco Pretto <cez...@gmail.com> Sent: Wednesday, May 4, 2022 23:10 To: Mattia Rizzolo <mat...@mapreri.org>; Podofo-users <podofo-users@lists.sourceforge.net> Subject: Re: [Podofo-users] Future ABI stability of PoDoFo Hi Mattia, I definitely thought about ABI stability but I'm not super experienced how to ensure it for C++ libraries. I think the API review and hierarchy chances I will be helpful also to ensure there will be less ABI changes. I never fixed SONAME during compilation: at the right moment I may ask for some help. I'm also realizing that what is boiling in PoDoFo-next is already a C++20 library (I extensively use std::span[1] and std::format[2]), with the possibility of being able to compile with a C++17 compiler using some fillers. Aiming for inclusion in a distribution I should make sure the compilation defaults to C++20, with C++17 support that is only voluntarily/optionally enabled (and persisted in a the build configuration header) otherwise this may cause ABI issues when mismatching C++ compilation compliance level flags. Cheers, Francesco [1] https://en.cppreference.com/w/cpp/container/span<https://en.cppreference.com/w/cpp/container/span> [2] https://en.cppreference.com/w/cpp/utility/format/format<https://en.cppreference.com/w/cpp/utility/format/format> On Wed, 4 May 2022 at 16:21, Mattia Rizzolo <mat...@mapreri.org<mailto:mat...@mapreri.org>> wrote: > > Hi (especially Francesco), > > Something that I don't think I've read in the past mails: do you have > any plans regarding ABI stability of PoDoFo? > > Currently there is no promise of ABI stability across versions, and as > such the SONAME also changes for each release, even if sometimes it > could have been avoided. > > > For me this is relevant because for each release the updates needs to be > manually approved by Debian's archive admins due to the changed soname, > which is something I would be happier without :) > > -- > regards, > Mattia Rizzolo > > GPG Key: 66AE 2B4A FCCF 3F52 DA18 4D18 4B04 3FCD B944 4540 .''`. > More about me: https://mapreri.org<https://mapreri.org> : :' : > Launchpad user: > https://launchpad.net/~mapreri<https://launchpad.net/~mapreri> `. `'` > Debian QA page: > https://qa.debian.org/developer.php?login=mattia<https://qa.debian.org/developer.php?login=mattia> > `- > _______________________________________________ > Podofo-users mailing list > Podofo-users@lists.sourceforge.net<mailto:Podofo-users@lists.sourceforge.net> > https://lists.sourceforge.net/lists/listinfo/podofo-users<https://lists.sourceforge.net/lists/listinfo/podofo-users> _______________________________________________ Podofo-users mailing list Podofo-users@lists.sourceforge.net<mailto:Podofo-users@lists.sourceforge.net> https://lists.sourceforge.net/lists/listinfo/podofo-users<https://lists.sourceforge.net/lists/listinfo/podofo-users>
_______________________________________________ Podofo-users mailing list Podofo-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/podofo-users