diff --git a/0001-Restore-ABI-compatibility.patch b/0001-Restore-ABI-compatibility.patch deleted file mode 100644 index cf3002f..0000000 --- a/0001-Restore-ABI-compatibility.patch +++ /dev/null @@ -1,218 +0,0 @@ -From 21aa0956d43297667762cf79347e4cda76ea3521 Mon Sep 17 00:00:00 2001 -From: Victor Zverovich -Date: Fri, 10 Jan 2025 17:19:20 -0800 -Subject: [PATCH] Restore ABI compatibility -References: https://github.com/fmtlib/fmt/issues/4292 - ---- - doc/api.md | 6 +++--- - include/fmt/base.h | 4 +--- - include/fmt/format-inl.h | 2 +- - include/fmt/format.h | 43 ++++++++++++++++++++++++++-------------- - include/fmt/xchar.h | 27 +++++++++++++++---------- - 5 files changed, 49 insertions(+), 33 deletions(-) - -diff --git a/doc/api.md b/doc/api.md -index e86f0b06..80296ea4 100644 ---- a/doc/api.md -+++ b/doc/api.md -@@ -413,11 +413,11 @@ locale: - that take `std::locale` as a parameter. The locale type is a template - parameter to avoid the expensive `` include. - --::: format(detail::locale_ref, format_string, T&&...) -+::: format(const Locale&, format_string, T&&...) - --::: format_to(OutputIt, detail::locale_ref, format_string, T&&...) -+::: format_to(OutputIt, const Locale&, format_string, T&&...) - --::: formatted_size(detail::locale_ref, format_string, T&&...) -+::: formatted_size(const Locale&, format_string, T&&...) - - - ### Legacy Compile-Time Checks -diff --git a/include/fmt/base.h b/include/fmt/base.h -index a6948d40..e5773c87 100644 ---- a/include/fmt/base.h -+++ b/include/fmt/base.h -@@ -2276,9 +2276,7 @@ struct locale_ref { - - public: - constexpr locale_ref() : locale_(nullptr) {} -- -- template -- locale_ref(const Locale& loc); -+ template locale_ref(const Locale& loc); - - inline explicit operator bool() const noexcept { return locale_ != nullptr; } - #endif // FMT_USE_LOCALE -diff --git a/include/fmt/format-inl.h b/include/fmt/format-inl.h -index 14c65a09..a5b79dbe 100644 ---- a/include/fmt/format-inl.h -+++ b/include/fmt/format-inl.h -@@ -84,7 +84,7 @@ using std::locale; - using std::numpunct; - using std::use_facet; - --template > -+template - locale_ref::locale_ref(const Locale& loc) : locale_(&loc) { - static_assert(std::is_same::value, ""); - } -diff --git a/include/fmt/format.h b/include/fmt/format.h -index c9a6054d..95b5bad0 100644 ---- a/include/fmt/format.h -+++ b/include/fmt/format.h -@@ -1839,7 +1839,9 @@ template class digit_grouping { - } - - public: -- explicit digit_grouping(locale_ref loc, bool localized = true) { -+ template ::value)> -+ explicit digit_grouping(Locale loc, bool localized = true) { - if (!localized) return; - auto sep = thousands_sep(loc); - grouping_ = sep.grouping; -@@ -3639,6 +3641,12 @@ FMT_CONSTEXPR auto native_formatter::format( - return write(ctx.out(), val, specs, ctx.locale()); - } - -+// DEPRECATED! https://github.com/fmtlib/fmt/issues/4292. -+template -+struct is_locale : std::false_type {}; -+template -+struct is_locale> : std::true_type {}; -+ - // DEPRECATED! - template struct vformat_args { - using type = basic_format_args>; -@@ -4120,41 +4128,46 @@ FMT_API void format_system_error(detail::buffer& out, int error_code, - // Can be used to report errors from destructors. - FMT_API void report_system_error(int error_code, const char* message) noexcept; - --inline auto vformat(detail::locale_ref loc, string_view fmt, format_args args) -+template ::value)> -+inline auto vformat(const Locale& loc, string_view fmt, format_args args) - -> std::string { - auto buf = memory_buffer(); -- detail::vformat_to(buf, fmt, args, loc); -+ detail::vformat_to(buf, fmt, args, detail::locale_ref(loc)); - return {buf.data(), buf.size()}; - } - --template --FMT_INLINE auto format(detail::locale_ref loc, format_string fmt, -- T&&... args) -> std::string { -+template ::value)> -+FMT_INLINE auto format(const Locale& loc, format_string fmt, T&&... args) -+ -> std::string { - return vformat(loc, fmt.str, vargs{{args...}}); - } - --template ::value)> --auto vformat_to(OutputIt out, detail::locale_ref loc, string_view fmt, -+auto vformat_to(OutputIt out, const Locale& loc, string_view fmt, - format_args args) -> OutputIt { - auto&& buf = detail::get_buffer(out); -- detail::vformat_to(buf, fmt, args, loc); -+ detail::vformat_to(buf, fmt, args, detail::locale_ref(loc)); - return detail::get_iterator(buf, out); - } - --template ::value)> --FMT_INLINE auto format_to(OutputIt out, detail::locale_ref loc, -+template ::value&& -+ detail::is_locale::value)> -+FMT_INLINE auto format_to(OutputIt out, const Locale& loc, - format_string fmt, T&&... args) -> OutputIt { - return fmt::vformat_to(out, loc, fmt.str, vargs{{args...}}); - } - --template --FMT_NODISCARD FMT_INLINE auto formatted_size(detail::locale_ref loc, -+template ::value)> -+FMT_NODISCARD FMT_INLINE auto formatted_size(const Locale& loc, - format_string fmt, - T&&... args) -> size_t { - auto buf = detail::counting_buffer<>(); -- detail::vformat_to(buf, fmt.str, vargs{{args...}}, loc); -+ detail::vformat_to(buf, fmt.str, vargs{{args...}}, -+ detail::locale_ref(loc)); - return buf.count(); - } - -diff --git a/include/fmt/xchar.h b/include/fmt/xchar.h -index 4cbda542..9f7f889d 100644 ---- a/include/fmt/xchar.h -+++ b/include/fmt/xchar.h -@@ -191,9 +191,11 @@ auto format(const S& fmt, T&&... args) -> std::basic_string { - fmt::make_format_args>(args...)); - } - --template , -- FMT_ENABLE_IF(detail::is_exotic_char::value)> --inline auto vformat(detail::locale_ref loc, const S& fmt, -+template , -+ FMT_ENABLE_IF(detail::is_locale::value&& -+ detail::is_exotic_char::value)> -+inline auto vformat(const Locale& loc, const S& fmt, - typename detail::vformat_args::type args) - -> std::basic_string { - auto buf = basic_memory_buffer(); -@@ -202,10 +204,11 @@ inline auto vformat(detail::locale_ref loc, const S& fmt, - return {buf.data(), buf.size()}; - } - --template , -- FMT_ENABLE_IF(detail::is_exotic_char::value)> --inline auto format(detail::locale_ref loc, const S& fmt, T&&... args) -+ FMT_ENABLE_IF(detail::is_locale::value&& -+ detail::is_exotic_char::value)> -+inline auto format(const Locale& loc, const S& fmt, T&&... args) - -> std::basic_string { - return vformat(loc, detail::to_string_view(fmt), - fmt::make_format_args>(args...)); -@@ -232,11 +235,12 @@ inline auto format_to(OutputIt out, const S& fmt, T&&... args) -> OutputIt { - fmt::make_format_args>(args...)); - } - --template , - FMT_ENABLE_IF(detail::is_output_iterator::value&& -- detail::is_exotic_char::value)> --inline auto vformat_to(OutputIt out, detail::locale_ref loc, const S& fmt, -+ detail::is_locale::value&& -+ detail::is_exotic_char::value)> -+inline auto vformat_to(OutputIt out, const Locale& loc, const S& fmt, - typename detail::vformat_args::type args) - -> OutputIt { - auto&& buf = detail::get_buffer(out); -@@ -244,11 +248,12 @@ inline auto vformat_to(OutputIt out, detail::locale_ref loc, const S& fmt, - return detail::get_iterator(buf, out); - } - --template , - bool enable = detail::is_output_iterator::value && -+ detail::is_locale::value && - detail::is_exotic_char::value> --inline auto format_to(OutputIt out, detail::locale_ref loc, const S& fmt, -+inline auto format_to(OutputIt out, const Locale& loc, const S& fmt, - T&&... args) -> - typename std::enable_if::type { - return vformat_to(out, loc, detail::to_string_view(fmt), --- -2.47.1 - diff --git a/11.1.1.tar.gz b/11.1.1.tar.gz deleted file mode 100644 index 6b874c5..0000000 --- a/11.1.1.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:482eed9efbc98388dbaee5cb5f368be5eca4893456bb358c18b7ff71f835ae43 -size 701999 diff --git a/11.1.3.tar.gz b/11.1.3.tar.gz new file mode 100644 index 0000000..0a2955d --- /dev/null +++ b/11.1.3.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:67cd23ea86ccc359693e2ce1ba8d1bab533c02d743c09b15f3131102d0c2fc1c +size 703094 diff --git a/_scmsync.obsinfo b/_scmsync.obsinfo index 677f7d9..54166e0 100644 --- a/_scmsync.obsinfo +++ b/_scmsync.obsinfo @@ -1,4 +1,4 @@ -mtime: 1736607005 -commit: 33385faca92f003e5f6a7220fdc2424c9a957d6a65813515d0a05109dc79697d +mtime: 1737914543 +commit: ae15c54cb3607520ae559c480516a37424de8bc40ff52d825ef345f6797d9c7e url: https://src.opensuse.org/jengelh/fmt revision: master diff --git a/build.specials.obscpio b/build.specials.obscpio index 68f62a9..ca73557 100644 --- a/build.specials.obscpio +++ b/build.specials.obscpio @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c6e2babcee00866f70bc21c904040ed70c411baa2b073a84bc52a54a23e3c9c9 +oid sha256:ed010e60c0cc0d1e67b3ea146521ce20a1ef10843d5390366ced1588ec43da03 size 256 diff --git a/fmt.changes b/fmt.changes index 2337e2f..ae80603 100644 --- a/fmt.changes +++ b/fmt.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Sun Jan 26 17:49:33 UTC 2025 - Jan Engelhardt + +- Update to release 11.3 + * Readded `args()` to `fmt::format_context` +- Delete 0001-Restore-ABI-compatibility.patch (merged) + ------------------------------------------------------------------- Sat Jan 11 14:49:36 UTC 2025 - Jan Engelhardt diff --git a/fmt.spec b/fmt.spec index a002164..a775093 100644 --- a/fmt.spec +++ b/fmt.spec @@ -18,14 +18,13 @@ %define sover 11 Name: fmt -Version: 11.1.1 +Version: 11.1.3 Release: 0 Summary: A formatting library for C++ License: MIT URL: http://fmtlib.net/ Source: https://github.com/fmtlib/fmt/archive/%version.tar.gz Source1: baselibs.conf -Patch1: 0001-Restore-ABI-compatibility.patch BuildRequires: c++_compiler BuildRequires: cmake BuildRequires: pkg-config