Hello community, here is the log from the commit of package fmt for openSUSE:Leap:15.2 checked in at 2020-04-17 13:36:42 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Leap:15.2/fmt (Old) and /work/SRC/openSUSE:Leap:15.2/.fmt.new.2738 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "fmt" Fri Apr 17 13:36:42 2020 rev:5 rq:792891 version:6.2.0 Changes: -------- --- /work/SRC/openSUSE:Leap:15.2/fmt/fmt.changes 2020-01-15 14:55:22.997587136 +0100 +++ /work/SRC/openSUSE:Leap:15.2/.fmt.new.2738/fmt.changes 2020-04-17 13:36:44.140183423 +0200 @@ -1,0 +2,221 @@ +Mon Apr 6 14:21:08 UTC 2020 - Luigi Baldoni <[email protected]> + +- Update to version 6.2.0 + * Improved error reporting when trying to format an object of + a non-formattable type: + * Reduced library size by ~10%. + * Always print decimal point if # is specified (#1476, #1498): + * Implemented the 'L' specifier for locale-specific numeric + formatting to improve compatibility with std::format. The 'n' + specifier is now deprecated and will be removed in the next + major release. + * Moved OS-specific APIs such as windows_error from + fmt/format.h to fmt/os.h. You can define + FMT_DEPRECATED_INCLUDE_OS to automatically include fmt/os.h from + fmt/format.h for compatibility but this will be disabled in the + next major release. + * Added precision overflow detection in floating-point + formatting. + * Implemented detection of invalid use of fmt::arg. + * Used type_identity to block unnecessary template argument + deduction. + * Improved UTF-8 handling (#1109): + * Added experimental dynamic argument storage (#1170, #1584): + * Made fmt::join accept initializer_list (#1591). + * Fixed handling of empty tuples (#1588). + * Fixed handling of output iterators in format_to_n (#1506). + * Fixed formatting of std::chrono::duration types to wide + output (#1533). + * Added const begin and end overload to buffers (#1553). + * Added the ability to disable floating-point formatting via + FMT_USE_FLOAT, FMT_USE_DOUBLE and FMT_USE_LONG_DOUBLE macros for + extremely memory-constrained embedded system (#1590). + * Made FMT_STRING work with constexpr string_view (#1589). + * Implemented a minor optimization in the format string parser + (#1560). + * Improved attribute detection (#1469, #1475, #1576). + * Improved documentation (#1481, #1523). + * Fixed symbol visibility on Linux when compiling with + -fvisibility=hidden (#1535). + * Implemented various build configuration fixes and + improvements (#1264, #1460, #1534, #1536, #1545, #1546, #1566, + #1582, #1597, #1598). + * Fixed various warnings and compilation issues + +- Dropped Group tag + +------------------------------------------------------------------- +Wed Dec 11 16:57:03 UTC 2019 - Luigi Baldoni <[email protected]> + +- Update to version 6.1.2 + * Fixed ABI compatibility with libfmt.so.6.0.0 (#1471). + * Fixed handling types convertible to std::string_view (#1451). + Thanks @denizevrenci (Deniz Evrenci). + * Made CUDA test an opt-in enabled via the FMT_CUDA_TEST CMake + option. + * Fixed sign conversion warnings (#1440). Thanks @0x8000-0000 + (Florin Iucha). + +------------------------------------------------------------------- +Thu Dec 5 15:43:30 UTC 2019 - Luigi Baldoni <[email protected]> + +- Update to version 6.1.1 + * Added a missing decimal point in exponent notation with + trailing zeros. + * Removed deprecated format_arg_store::TYPES. + +------------------------------------------------------------------- +Wed Dec 4 11:34:50 UTC 2019 - Luigi Baldoni <[email protected]> + +- Update to version 6.1.0 + * {fmt} now formats IEEE 754 ``float`` and ``double`` using + the shortest decimal representation with correct rounding by + default: + .. code:: c++ + + #include <cmath> + #include <fmt/core.h> + + int main() { + fmt::print("{}", M_PI); + } + + prints ``3.141592653589793``. + * Made the fast binary to decimal floating-point formatter the + default, simplified it and improved performance. {fmt} is now + 15 times faster than libc++'s ``std::ostringstream``, 11 + times faster than ``printf`` and 10% faster than + double-conversion on `dtoa-benchmark + (https://github.com/fmtlib/dtoa-benchmark) + + ================== ========= ======= + Function Time (ns) Speedup + ================== ========= ======= + ostringstream 1,346.30 1.00x + ostrstream 1,195.74 1.13x + sprintf 995.08 1.35x + doubleconv 99.10 13.59x + fmt 88.34 15.24x + ================== ========= ======= + * {fmt} no longer converts ``float`` arguments to ``double``. + In particular this improves the default (shortest) + representation of floats and makes + ``fmt::format`` consistent with ``std::format`` specs + (#1336, #1353, #1360, #1361) + .. code:: c++ + + fmt::print("{}", 0.1f); + + prints ``0.1`` instead of ``0.10000000149011612``. + * Made floating-point formatting output consistent with + ``printf``/iostreams (#1376, #1417) + * Added support for 128-bit integers (#1287) + .. code:: c++ + + fmt::print("{}", std::numeric_limits<__int128_t>::max()); + + prints ``170141183460469231731687303715884105727``. + * The overload of ``print`` that takes ``text_style`` is now + atomic, i.e. the output from different threads doesn't + interleave (#1351) + * Made compile time in the header-only mode ~20% faster by + reducing the number of template instantiations. ``wchar_t`` + overload of ``vprint`` was moved from + ``fmt/core.h`` to ``fmt/format.h``. + * Added an overload of ``fmt::join`` that works with tuples + (#1322, #1330) + .. code:: c++ + + #include <tuple> + #include <fmt/ranges.h> + + int main() { + std::tuple<char, int, float> t{'a', 1, 2.0f}; + fmt::print("{}", t); + } + + prints ``('a', 1, 2.0)``. + * Changed formatting of octal zero with prefix from "0o0" to + "0": + .. code:: c++ + + fmt::print("{:#o}", 0); + + prints ``0``. + * The locale is now passed to ostream insertion (``<<``) + operators (#1406) + .. code:: c++ + + #include <fmt/locale.h> + #include <fmt/ostream.h> + + struct S { + double value; + }; + + std::ostream& operator<<(std::ostream& os, S s) { + return os << s.value; + } + + int main() { + auto s = fmt::format(std::locale("fr_FR.UTF-8"), "{}", S{0.42}); + // s == "0,42" + } + * Locale-specific number formatting now uses grouping (#1393, + #1394) + * Fixed handling of types with deleted implicit rvalue + conversion to ``const char**`` (#1421) + .. code:: c++ + + struct mystring { + operator const char*() const&; + operator const char*() &; + operator const char*() const&& = delete; + operator const char*() && = delete; + }; + mystring str; + fmt::print("{}", str); // now compiles + * Enums are now mapped to correct underlying types instead of + ``int`` (#1286) + * Enum classes are no longer implicitly converted to ``int`` + (#1424) + * Added ``basic_format_parse_context`` for consistency with + C++20 ``std::format`` and deprecated ``basic_parse_context``. + * Fixed handling of UTF-8 in precision (#1389, #1390) + * Added a CUDA test (#1285, #1317) + * Improved documentation (#1276, #1291, #1296, #1315, #1332, + #1337, #1395, #1418) + * Various code improvements (#1358, #1407) + * Fixed compile-time format string checks for user-defined + types (#1292) + * Worked around a false positive in + ``unsigned-integer-overflow`` sanitizer (#1377) + * Fixed various warnings and compilation issues (#1273, #1278, + #1280, #1281, #1288, #1290, #1301, #1305, #1306, #1309, + #1312, #1313, #1316, #1319, #1320, #1326, #1328, #1344, + #1345, #1347, #1349, #1354, #1362, #1366, #1364, #1370, + #1371, #1385, #1388, #1397, #1414, #1416, #1422, #1427, ++++ 24 more lines (skipped) ++++ between /work/SRC/openSUSE:Leap:15.2/fmt/fmt.changes ++++ and /work/SRC/openSUSE:Leap:15.2/.fmt.new.2738/fmt.changes Old: ---- 0001-install-pkg-config-file-into-libdir.patch fmt-5.3.0.tar.gz New: ---- fmt-6.2.0.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ fmt.spec ++++++ --- /var/tmp/diff_new_pack.jwRwag/_old 2020-04-17 13:36:44.592183763 +0200 +++ /var/tmp/diff_new_pack.jwRwag/_new 2020-04-17 13:36:44.592183763 +0200 @@ -1,7 +1,7 @@ # # spec file for package fmt # -# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2020 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -16,17 +16,15 @@ # -%define sover 5 +%define sover 6 Name: fmt -Version: 5.3.0 +Version: 6.2.0 Release: 0 Summary: A formatting library for C++ -License: BSD-2-Clause -Group: Development/Libraries/C and C++ +License: MIT URL: http://fmtlib.net/ Source0: https://github.com/fmtlib/fmt/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz Source1: baselibs.conf -Patch0: 0001-install-pkg-config-file-into-libdir.patch BuildRequires: cmake BuildRequires: gcc-c++ BuildRequires: pkgconfig ++++++ baselibs.conf ++++++ --- /var/tmp/diff_new_pack.jwRwag/_old 2020-04-17 13:36:44.620183784 +0200 +++ /var/tmp/diff_new_pack.jwRwag/_new 2020-04-17 13:36:44.620183784 +0200 @@ -1 +1 @@ -libfmt5 +libfmt6 ++++++ fmt-5.3.0.tar.gz -> fmt-6.2.0.tar.gz ++++++ ++++ 39304 lines of diff (skipped)
