|
|
|
|
Changelog for fmt-devel-11.0.2-lp153.1.2.x86_64.rpm :
* Sat Jul 20 2024 Jan Engelhardt - Update to release 11.0.2 * Fixed performance regressions when using ``std::back_insert_iterator`` with`` fmt::format_to``. * Made ``formatter::parse`` work with types convertible to ``std::string_view``. * Made ``volatile void *`` formattable. * Made ``fmt::context`` iterator compatible with STL algorithms that rely on the iterator category. * Wed Jul 10 2024 Jan Engelhardt - Update to release 11.0.1 * Added fmt/base.h which provides a subset of the API with minimal include dependencies and enough functionality to replace all uses of the printf family of functions. * Improved integration with stdio in fmt::print, enabling direct writes into a C stream buffer in common cases. * fmt::format_to no longer exceeds buffers, instead it will truncate. * Added formatters for std::{expected,complex,type_info}, std::chrono::{day,month,year,year_month_day}. * Thu Jan 04 2024 Jan Engelhardt - Update to release 10.2.1 * Restore symbol write_console(std::FILE * f, string_view text) * Mon Jan 01 2024 Jan Engelhardt - Update to release 10.2 * Added support for the %j specifier (the number of days) for std::chrono::duration. * Added support for the chrono suffix for days and changed the suffix for minutes from \"m\" to the correct \"min\". * Tue Aug 29 2023 Jan Engelhardt - Update to release 10.1.1 * Added formatters for std::atomic and atomic_flag. * Fixed an error about partial specialization of formatter after instantiation (GCC, C++20 mode). * Made fmt::to_string work with types that have format_as overloads. * Made formatted_size work with integral format specifiers at compile time. * Sat Aug 12 2023 Jan Engelhardt - Update to release 10.1 * Optimized format string compilation resulting in up to 40% speed up in compiled format_to and ~4x speed up in compiled format_to_n on a concatenation benchmark. * Thu May 11 2023 Jan Engelhardt - Update to release 10 * New floating-point formatting algorithm for given precision. The new algorithm is based on Dragonbox. * Replaced snprintf-based hex float formatter with an internal implementation. * Made format_as work with any user-defined type and not just enums. * Removed deprecated implicit conversions for enums and conversions to primitive types for compatibility with std::format and to prevent potential ODR violations. Use format_as instead. * Implemented formatting of subseconds. * Added formatters for std::priority_queue, std::queue, std::stack, std;:optional. * Fri Mar 10 2023 Martin Liška - Use -ffloat-store as a fix for excessive precision provided by X87 on i686 target (https://github.com/fmtlib/fmt/issues/3337). * Sun Aug 28 2022 Jan Engelhardt - Update to release 9.1 * fmt::formatted_size now works at compile time * Fixed handling of invalid UTF-8 (#3038) * Improved Unicode support in ostream overloads of print * Added support for wide streams to fmt::streamed * Added the n specifier that disables the output of delimiters when formatting ranges (#2981)- Delete 0001-Fix-large-shift-in-uint128_fallback.patch 0002-Use-FMT_USE_FLOAT128-instead-of-__SIZEOF_FLOAT128__.patch 0001-Make-sure-the-correct-fmod-overload-is-called.patch (merged) * Tue Jul 05 2022 Jan Engelhardt - Update to release 9 * Switched to the internal floating point formatter for all decimal presentation formats. In particular this results in consistent rounding on all platforms and removing the s[n]printf fallback for decimal FP formatting. * Compile-time floating point formatting no longer requires the header-only mode. * Disabled automatic std::ostream insertion operator (operator<<) discovery when fmt/ostream.h is included to prevent ODR violations. You can get the old behavior by defining FMT_DEPRECATED_OSTREAM. * Added fmt::ostream_formatter that can be used to write formatter specializations that perform formatting via std::ostream. * Added the fmt::streamed function that takes an object and formats it via std::ostream. * Added experimental std::variant formatting support. * Added experimental std::filesystem::path formatting support. * Added a std::thread::id formatter to fmt/std.h. * Added support for nested specifiers to range formatting.- Add 0001-Fix-large-shift-in-uint128_fallback.patch 0002-Use-FMT_USE_FLOAT128-instead-of-__SIZEOF_FLOAT128__.patch 0001-Make-sure-the-correct-fmod-overload-is-called.patch * Sat Apr 30 2022 Jan Engelhardt - Replace obsolete macro %make_jobs by %cmake_build * Fri Jan 07 2022 Luigi Baldoni - Update to version 8.1.1 * Restored ABI compatibility with version 8.0.x * Fixed chrono formatting on big-endian systems * Mon Jan 03 2022 Luigi Baldoni - Update to version 8.1.0 * Optimized chrono formatting. + Processing of some specifiers such as %z and %Y is now up to 10-20 times faster, for example on GCC 11 with libstdc++. * Implemented subsecond formatting for chrono durations. * Fixed handling of precision 0 when formatting chrono durations. * Fixed an overflow on invalid inputs in the tm formatter. * Added fmt::group_digits that formats integers with a non-localized digit separator (comma) for groups of three digits. * Added support for faint, conceal, reverse and blink text styles. * Added experimental support for compile-time floating point formatting. * Added UDL-based named argument support to compile-time format string checks. * Implemented escaping of string range elements. * Switched to JSON-like representation of maps and sets for consistency with Python\'s str.format. * Extended fmt::join to support C++20-only ranges. * Optimized handling of non-const-iterable ranges and implemented initial support for non-const-formattable types. * Disabled implicit conversions of scoped enums to integers that was accidentally introduced in earlier versions. * Deprecated implicit conversion of [const] signed char * and [const] unsigned char * to C strings. * Deprecated _format, a legacy UDL-based format API. * Marked format, formatted_size and to_string as [[nodiscard]]. * Added missing diagnostic when trying to format function and member pointers as well as objects convertible to pointers which is explicitly disallowed. * Optimized writing to a contiguous buffer with format_to_n. * Optimized writing to non-char buffers. * Decimal point is now localized when using the L specifier. * Improved floating point formatter implementation. * Fixed handling of very large precision in fixed format. * Made a table of cached powers used in FP formatting static. * Resolved a lookup ambiguity with C++20 format-related functions due to ADL. * Removed unnecessary inline namespace qualification. * Implemented argument forwarding in format_to_n. * Fixed handling of implicit conversions in fmt::to_string and format string compilation. * Changed the default access mode of files created by fmt::output_file to -rw-r--r-- for consistency with fopen. * Make fmt::ostream::flush public. * Improved C++14/17 attribute detection. * Improved documentation. * Improved fuzzers and added a fuzzer for chrono timepoint formatting. * Added the FMT_SYSTEM_HEADERS CMake option setting which marks {fmt}\'s headers as system. It can be used to suppress warnings. * Added the Bazel build system support. * Improved build configuration and tests. * Fixed various warnings and compilation issues. * Sat Jul 03 2021 Luigi Baldoni - Update to version 8.0.1 * Fixed the version number in the inline namespace. * Added a missing presentation type check for std::string. * Fixed a linkage error when mixing code built with clang and gcc. * Fixed documentation issues. * Removed dead code in FP formatter. * Fixed various warnings and compilation issues. * Mon Jun 21 2021 Luigi Baldoni - Update to version 8.0.0 * Enabled compile-time format string check by default. * Added compile-time formatting. * Optimized handling of format specifiers during format string compilation. * Added the ``_cf`` user-defined literal to represent a compiled format string. It can be used instead of the ``FMT_COMPILE`` macro. * Format string compilation now requires ``format`` functions of ``formatter`` specializations for user-defined types to be ``const``. * Added UDL-based named argument support to format string compilation. * Added format string compilation support to ``fmt::print``. * Added initial support for compiling {fmt} as a C++20 module. * Made symbols private by default reducing shared library size * Optimized includes making the result of preprocessing ``fmt/format.h``. * Added support of ranges with non-const ``begin`` / ``end`` * Added support of ``std::byte`` and other formattable types to ``fmt::join``. * Implemented the default format for ``std::chrono::system_clock``. * Made more chrono specifiers locale independent by default. Use the ``\'L\'`` specifier to get localized formatting. * Improved locale handling in chrono formatting. * Deprecated ``fmt/locale.h`` moving the formatting functions that take a locale to ``fmt/format.h`` (``char``) and ``fmt/xchar`` (other overloads). This doesn\'t introduce a dependency on ```` so there is virtually no compile time effect. * Made parameter order in ``vformat_to`` consistent with ``format_to``. * Added support for time points with arbitrary durations. * Formatting floating-point numbers no longer produces trailing zeros by default. for consistency with ``std::format``. * Dropped a limit on the number of elements in a range and replaced ``{}`` with ``[]`` as range delimiters for consistency with Python\'s ``str.format``. * The ``\'L\'`` specifier for locale-specific numeric formatting can now be combined with presentation specifiers as in ``std::format``. * Made the ``0`` specifier ignored for infinity and NaN. * Made the hexfloat formatting use the right alignment by default. * Removed the deprecated numeric alignment (``\'=\'``). Use the ``\'0\'`` specifier instead. * Removed the deprecated ``fmt/posix.h`` header that has been replaced with ``fmt/os.h``. * Removed the deprecated ``format_to_n_context``, ``format_to_n_args`` and ``make_format_to_n_args``. They have been replaced with ``format_context``, ``format_args` and ``make_format_args`` respectively. * Moved ``wchar_t``-specific functions and types to ``fmt/wchar.h``. You can define ``FMT_DEPRECATED_INCLUDE_WCHAR`` to automatically include ``fmt/wchar.h`` from ``fmt/format.h`` but this will be disabled in the next major release. * Fixed handling of the ``\'+\'`` specifier in localized formatting. * Added support for the ``\'s\'`` format specifier that gives textual representation of ``bool``. * Made ``fmt::ptr`` work with function pointers. * Fixed ``fmt::formatted_size`` with format string compilation * Fixed handling of empty format strings during format string compilation. * Fixed handling of enums in ``fmt::to_string``. * Improved width computation. * The experimental fast output stream (``fmt::ostream``) is now truncated by default for consistency with ``fopen``. * Fixed moving of ``fmt::ostream`` that holds buffered data * Replaced the ``fmt::system_error`` exception with a function of the same name that constructs ``std::system_error``. * Replaced the ``fmt::windows_error`` exception with a function of the same name that constructs ``std::system_error`` with the category returned by ``fmt::system_category()``. * Replaced ``fmt::error_code`` with ``std::error_code`` and made it formattable. * Added speech synthesis support. * Made ``format_to`` work with a memory buffer that has a custom allocator. * Added ``Allocator::max_size`` support to ``basic_memory_buffer``. * Added wide string support to ``fmt::join`` * Made iterators passed to ``formatter`` specializations via a format context satisfy C++20 ``std::output_iterator`` requirements. * Optimized the ``printf`` implementation. * Improved detection of ``constexpr`` ``char_traits``. * Fixed exception propagation from iterators. * Improved ``strftime`` error handling. * Stopped using deprecated GCC UDL template extension. * Added ``fmt/args.h`` to the install target. * Error messages are now passed to assert when exceptions are disabled. * Added the ``FMT_MASTER_PROJECT`` CMake option to control build and install targets when {fmt} is included via ``add_subdirectory``. * Improved build configuration. * Fixed various warnings and compilation issues. * Improved documentation. * Continuous integration and test improvements.- Bump soversion to 8 * Wed Nov 25 2020 aloisioAATTgmx.com- Update to version 7.1.3 * Fixed handling of buffer boundaries in format_to_n * Fixed linkage errors when linking with a shared library * Reintroduced ostream support to range formatters * Worked around an issue with mixing std versions in gcc * Wed Nov 04 2020 aloisioAATTgmx.com- Update to version 7.1.2 * Fixed floating point formatting with large precision * Mon Nov 02 2020 aloisioAATTgmx.com- Update to version 7.1.1 * Fixed ABI compatibility with 7.0.x * Added the FMT_ARM_ABI_COMPATIBILITY macro to work around ABI incompatibility between GCC and Clang on ARM * Worked around a SFINAE bug in GCC 8 * Fixed linkage errors when building with GCC\'s LTO * Fixed a compilation error when building without __builtin_clz or equivalent * Fixed a sign conversion warning- Dropped fmt-7.1.0-LTO.patch (merged upstream) * Mon Oct 26 2020 Luigi Baldoni - Update to version 7.1.0 * Switched from Grisu3 to Dragonbox for the default floating-point formatting which gives the shortest decimal representation with round-trip guarantee and correct rounding. This makes {fmt} up to 20-30x faster than common implementations of std::ostringstream and sprintf on dtoa-benchmark and faster than double-conversion and Ryū. It is possible to get even better performance at the cost of larger binary size by compiling with the FMT_USE_FULL_CACHE_DRAGONBOX macro set to 1. * Added an experimental unsynchronized file output API which, together with format string compilation can give 5-9 times speed up compared to fprintf on common platforms. * Added a formatter for std::chrono::time_point * Added support for ranges with non-const begin/end to fmt::join * Added a memory_buffer::append overload that takes a range. * Improved handling of single code units in FMT_COMPILE. * Added dynamic width support to format string compilation. * Improved error reporting for unformattable types: now you\'ll get the type name directly in the error message instead of the note. * Added the make_args_checked function template that allows you to write formatting functions with compile-time format string checks and avoid binary code bloat. * Replaced snprintf fallback with a faster internal IEEE 754 float and double formatter for arbitrary precision. * Made format_to_n and formatted_size part of the core API. * Added fmt::format_to_n overload with format string compilation. * Added fmt::format_to overload that take text_style. * Made the # specifier emit trailing zeros in addition to the decimal point. * Changed the default floating point format to not include .0 for consistency with std::format and std::to_chars. It is possible to get the decimal point and trailing zero with the [#] specifier. * Fixed an issue with floating-point formatting that could result in addition of a non-significant trailing zero in rare cases e.g. 1.00e-34 instead of 1.0e-34. * Made fmt::to_string fallback on ostream insertion operator if the formatter specialization is not provided. * Added support for the append mode to the experimental file API and improved fcntl.h detection. * Fixed handling of types that have both an implicit conversion operator and an overloaded ostream insertion operator. * Fixed a slicing issue in an internal iterator type. * Fixed an issue in locale-specific integer formatting. * Fixed handling of exotic code unit types. * Improved FMT_ALWAYS_INLINE. * Improved documentation. * Added the FMT_REDUCE_INT_INSTANTIATIONS CMake option that reduces the binary code size at the cost of some integer formatting performance. This can be useful for extremely memory-constrained embedded systems. * Added the FMT_USE_INLINE_NAMESPACES macro to control usage of inline namespaces. * Improved build configuration. * Fixed various warnings and compilation issues.- Add fmt-7.1.0-LTO.patch * Fri Aug 07 2020 aloisioAATTgmx.com- Update to version 7.0.3 * Worked around broken ``numeric_limits`` for 128-bit integers * Added error reporting on missing named arguments * Stopped using 128-bit integers with clang-cl * Fixed issues in locale-specific integer formatting * Wed Jul 29 2020 aloisioAATTgmx.com- Update to version 7.0.2 * Worked around broken ``numeric_limits`` for 128-bit integers * Fixed compatibility with CMake 3.4 * Fixed handling of digit separators in locale-specific formatting * Tue Jul 07 2020 aloisioAATTgmx.com- Update to version 7.0.1 * Updated the inline version namespace name. * Worked around a gcc bug in mangling of alias templates * Fixed minor issues with the documentation. * Mon Jul 06 2020 Luigi Baldoni - Update to version 7.0.0 * Reduced the library size. * Added a simpler and more efficient format string compilation API. The old fmt::compile API is now deprecated. * Optimized integer formatting: format_to with format string compilation and a stack-allocated buffer is now faster than to_chars on both libc++ and libstdc++. * Optimized handling of small format strings. * Applied extern templates to improve compile times when using the core API and fmt/format.h. It is still recommended to use fmt/core.h instead of fmt/format.h but the compile time difference is now smaller. * Named arguments are now stored on stack (no dynamic memory allocations) and the compiled code is more compact and efficient. * Implemented compile-time checks for dynamic width and precision. * Added sentinel support to fmt::join. * Added support for named args, clear and reserve to dynamic_format_arg_store. * Added support for the \'c\' format specifier to integral types for compatibility with std::format. * Replaced the \'n\' format specifier with \'L\' for compatibility with std::format. The \'n\' specifier can be enabled via the FMT_DEPRECATED_N_SPECIFIER macro. * The \'=\' format specifier is now disabled by default for compatibility with std::format. It can be enabled via the FMT_DEPRECATED_NUMERIC_ALIGN macro. * Removed the following deprecated APIs: + FMT_STRING_ALIAS and fmt macros - replaced by FMT_STRING + fmt::basic_string_view::char_type - replaced by fmt::basic_string_view::value_type + convert_to_int + format_arg_store::types + *parse_context - replaced by *format_parse_context + FMT_DEPRECATED_INCLUDE_OS + FMT_DEPRECATED_PERCENT - incompatible with std::format + *writer - replaced by compiled format API * Renamed the internal namespace to detail. The former is still provided as an alias if the FMT_USE_INTERNAL macro is defined. * Improved compatibility between fmt::printf with the standard specs. * Fixed handling of operator<< overloads that use copyfmt. * Added the FMT_OS CMake option to control inclusion of OS-specific APIs in the fmt target. This can be useful for embedded platforms. * Replaced FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION with the FMT_FUZZ macro to prevent interferring with fuzzing of projects using {fmt}. * Fixed compatibility with emscripten. * Improved documentation. * Implemented various build configuration fixes and improvements. * Fixed various warnings and compilation issues.- Drop fmt-6.2.1-fix_pkgconfig_paths.patch- Bump sover to 7 * Tue Jun 23 2020 Luigi Baldoni - Add fmt-6.2.1-fix_pkgconfig_paths.patch (fix for boo#1173270) * Sat May 09 2020 Luigi Baldoni - Update to version 6.2.1 * Fixed ostream support in ``sprintf`` (`#1631 `_). * Fixed type detection when using implicit conversion to ``string_view`` and ostream ``operator<<`` inconsistently (`#1662 `_).- Drop 7d01859ef16e6b65bc023ad8bebfedecb088bf81.patch (no longer necessary)- Spec cleanup * Tue Apr 14 2020 Hans-Peter Jansen - Apply 7d01859ef16e6b65bc023ad8bebfedecb088bf81.patch to fix kodi compilation and probably others: https://github.com/fmtlib/fmt/issues/1620 * Mon Apr 06 2020 Luigi Baldoni - 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
|
|
|