#1092848 ring: FTBFS with fmtlib 11.1

#1092848#5
Date:
2025-01-12 09:25:15 UTC
From:
To:
X-Debbugs-Cc: fmtlib@packages.debian.org, aron@debian.org

Dear maintainers,

We are planning the transition towards fmtlib 11.1 (in experimental).
You package ring 20231201.0~ds1-1 FTBFS with fmtlib 11.1.1+ds1-1.

There are no significant API changes from (in testing) fmtlib 10 to 11.
After a quick look at ratt logs (thanks @aron for running it), I can
spot problems including (but not limited to):

- removal of APIs: nmodl, opm-common
- use of private APIs (fmt::detail): dolphin-emu
- '-fpermissive' compiler errors: doxygen, nheko
- unformattable types: genomicsdb, gerbera
- missing #include for std header: ntfs2btrfs, transmission

...and many of them have already been fixed by upstream.

There might be false positives due to collision with other on-going
transitions (e.g. python3.13). Please close this bug if so.

#1092848#12
Date:
2025-01-13 16:42:30 UTC
From:
To:
(Probably) related build logs:

/<<PKGBUILDDIR>>/daemon/contrib/native/dhtnet/src/ice_transport.cpp: In member function ‘bool dhtnet::IceTransport::startIce(const Attribute&, std::vector<pj_ice_sess_cand>&&)’:
/<<PKGBUILDDIR>>/daemon/contrib/native/dhtnet/src/ice_transport.cpp:1286:22: error: use of deleted function ‘std::unique_ptr<_Tp, _Dp>::unique_ptr(const std::unique_ptr<_Tp, _Dp>&) [with _Tp = dhtnet::IceTransport::Impl; _Dp = std::default_delete<dhtnet::IceTransport::Impl>]’
 1286 |              fmt::ptr(pimpl_),
      |              ~~~~~~~~^~~~~~~~
In file included from /usr/include/c++/14/memory:78,
                 from /<<PKGBUILDDIR>>/daemon/contrib/native/dhtnet/include/ice_options.h:24,
                 from /<<PKGBUILDDIR>>/daemon/contrib/native/dhtnet/include/ice_transport.h:19,
                 from /<<PKGBUILDDIR>>/daemon/contrib/native/dhtnet/src/ice_transport.cpp:17:
/usr/include/c++/14/bits/unique_ptr.h:517:7: note: declared here
  517 |       unique_ptr(const unique_ptr&) = delete;
      |       ^~~~~~~~~~
/<<PKGBUILDDIR>>/daemon/contrib/native/dhtnet/src/ice_transport.cpp:1286:22: note: use ‘-fdiagnostics-all-candidates’ to display considered candidates
 1286 |              fmt::ptr(pimpl_),
      |              ~~~~~~~~^~~~~~~~
In file included from /usr/include/fmt/core.h:5,
                 from /usr/include/opendht/infohash.h:25,
                 from /usr/include/opendht/logger.h:21,
                 from /<<PKGBUILDDIR>>/daemon/contrib/native/dhtnet/src/ice_transport.cpp:26:
/usr/include/fmt/format.h:3807:34: note:   initializing argument 1 of ‘const void* fmt::v11::ptr(T) [with T = std::unique_ptr<dhtnet::IceTransport::Impl>]’
 3807 | template <typename T> auto ptr(T p) -> const void* {
      |                                ~~^
/<<PKGBUILDDIR>>/daemon/contrib/native/dhtnet/src/ice_transport.cpp: In member function ‘bool dhtnet::IceTransport::startIce(const dhtnet::SDP&)’:
/<<PKGBUILDDIR>>/daemon/contrib/native/dhtnet/src/ice_transport.cpp:1319:94: error: use of deleted function ‘std::unique_ptr<_Tp, _Dp>::unique_ptr(const std::unique_ptr<_Tp, _Dp>&) [with _Tp = dhtnet::IceTransport::Impl; _Dp = std::default_delete<dhtnet::IceTransport::Impl>]’
 1319 |             pimpl_->logger_->error(FMT_STRING("[ice:{}] not initialized transport"), fmt::ptr(pimpl_));
      |                                                                                      ~~~~~~~~^~~~~~~~
/usr/include/c++/14/bits/unique_ptr.h:517:7: note: declared here
  517 |       unique_ptr(const unique_ptr&) = delete;
      |       ^~~~~~~~~~
/<<PKGBUILDDIR>>/daemon/contrib/native/dhtnet/src/ice_transport.cpp:1319:94: note: use ‘-fdiagnostics-all-candidates’ to display considered candidates
 1319 |             pimpl_->logger_->error(FMT_STRING("[ice:{}] not initialized transport"), fmt::ptr(pimpl_));
      |                                                                                      ~~~~~~~~^~~~~~~~
/usr/include/fmt/format.h:3807:34: note:   initializing argument 1 of ‘const void* fmt::v11::ptr(T) [with T = std::unique_ptr<dhtnet::IceTransport::Impl>]’

...