[MacPorts] #65619: libfmt @9.x: upstream changes break dependents

MacPorts noreply at macports.org
Fri Aug 5 17:32:31 UTC 2022


#65619: libfmt @9.x: upstream changes break dependents
---------------------+-------------------------------------
 Reporter:  mascguy  |      Owner:  (none)
     Type:  defect   |     Status:  new
 Priority:  Normal   |  Milestone:
Component:  ports    |    Version:  2.7.2
 Keywords:           |       Port:  libfmt cantera poac mpd
---------------------+-------------------------------------
 The latest update of this port - to 9.0 - breaks a number a of dependents.

 https://github.com/macports/macports-ports/pull/15589

 Details of upstream's breaking changes:

 https://github.com/fmtlib/fmt/blob/master/ChangeLog.rst

 Thus far, at least three ports have been identified as being affected:

 `cantera`:

 {{{
 src/thermo/RedlichKwongMFTP.cpp:1049:21: error: no matching function for
 call to 'format_to'
                     format_to(b, ", {}", speciesName(k));
                     ^~~~~~~~~
 }}}

 `poac`:

 {{{
 /opt/local/include/fmt/ostream.h:98:19: error: use of undeclared
 identifier 'FMT_MSC_VERSION'
   if (const_check(FMT_MSC_VERSION)) {
                   ^
 In file included from poac-0.3.10/lib/util/archive.cc:6:
 In file included from poac-0.3.10/include/poac/util/archive.hpp:13:
 In file included from poac-0.3.10/include/poac/poac.hpp:26:
 /opt/local/include/fmt/ranges.h:403:9: error: use of undeclared identifier
 'disjunction'
         disjunction<
         ^
 /opt/local/include/fmt/ranges.h:467:9: error: use of undeclared identifier
 'disjunction'
         disjunction<
         ^
 /opt/local/include/fmt/ranges.h:473:72: error: expected unqualified-id
           detail::has_fallback_formatter<detail::uncvref_second_type<T>,
 Char>
                                                                        ^
 }}}

 `mpd`:

 {{{
 ../mpd-0.23.7/src/Log.hxx:50:15: error: no member named
 'make_args_checked' in namespace 'fmt'
                        fmt::make_args_checked<Args...>(format_str,
                        ~~~~~^
 ../mpd-0.23.7/src/Log.hxx:50:33: error: 'Args' does not refer to a value
                        fmt::make_args_checked<Args...>(format_str,
                                               ^
 ../mpd-0.23.7/src/Log.hxx:43:34: note: declared here
 template<typename S, typename... Args>
                                  ^
 ../mpd-0.23.7/src/Log.hxx:49:32: error: no member named 'to_string_view'
 in namespace 'fmt'; did you mean 'fmt::detail::to_string_view'?
         return LogVFmt(level, domain, fmt::to_string_view(format_str),
                                       ^~~~~~~~~~~~~~~~~~~
                                       fmt::detail::to_string_view
 /opt/local/include/fmt/core.h:532:17: note: 'fmt::detail::to_string_view'
 declared here
 FMT_INLINE auto to_string_view(const Char* s) -> basic_string_view<Char> {
                 ^
 In file included from ../mpd-0.23.7/src/LogBackend.cxx:21:
 ../mpd-0.23.7/src/Log.hxx:46:39: warning: unused parameter 'args'
 [-Wunused-parameter]
        const S &format_str, Args&&... args) noexcept
                                       ^
 1 warning and 3 errors generated.
 }}}

 There may also be more dependents affected, but those three are confirmed
 based on the buildbots.

 So we either need to patch those, or simply revert `libfmt` to the
 previous release (8.1.1).

-- 
Ticket URL: <https://trac.macports.org/ticket/65619>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list