[info=a3a6e9dfd134707fb58c429505a7220d20e971553f66f18f31b78d6487f8b0fd]
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/fmt?expand=0&rev=63
This commit is contained in:
commit
6bc4352107
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
||||
## Default LFS
|
||||
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||
*.png filter=lfs diff=lfs merge=lfs -text
|
||||
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||
*.zst filter=lfs diff=lfs merge=lfs -text
|
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
.osc
|
BIN
11.0.1.tar.gz
(Stored with Git LFS)
Normal file
BIN
11.0.1.tar.gz
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
11.0.2.tar.gz
(Stored with Git LFS)
Normal file
BIN
11.0.2.tar.gz
(Stored with Git LFS)
Normal file
Binary file not shown.
4
_scmsync.obsinfo
Normal file
4
_scmsync.obsinfo
Normal file
@ -0,0 +1,4 @@
|
||||
mtime: 1721487235
|
||||
commit: a3a6e9dfd134707fb58c429505a7220d20e971553f66f18f31b78d6487f8b0fd
|
||||
url: https://src.opensuse.org/jengelh/fmt
|
||||
revision: master
|
1
baselibs.conf
Normal file
1
baselibs.conf
Normal file
@ -0,0 +1 @@
|
||||
libfmt11
|
3
build.specials.obscpio
Normal file
3
build.specials.obscpio
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:d9122b6a13c0ea1aa451380e821065b1ff280f0ae48ba1493b8ee50f22287149
|
||||
size 256
|
791
fmt.changes
Normal file
791
fmt.changes
Normal file
@ -0,0 +1,791 @@
|
||||
-------------------------------------------------------------------
|
||||
Sat Jul 20 14:51:13 UTC 2024 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
- Update to release 11.0.2
|
||||
* Fixed performance regressions when using
|
||||
``std::back_insert_iterator`` with`` fmt::format_to``.
|
||||
* Made ``formatter<std::string_view>::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 18:07:21 UTC 2024 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
- 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 4 13:55:11 UTC 2024 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
- Update to release 10.2.1
|
||||
* Restore symbol write_console(std::FILE* f, string_view text)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jan 1 22:09:07 UTC 2024 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
- 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 08:18:11 UTC 2023 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
- Update to release 10.1.1
|
||||
* Added formatters for std::atomic and atomic_flag.
|
||||
* Fixed an error about partial specialization of
|
||||
formatter<string> 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 22:50:35 UTC 2023 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
- 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 18:11:28 UTC 2023 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
- 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 08:14:22 UTC 2023 - Martin Liška <mliska@suse.cz>
|
||||
|
||||
- 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 06:35:23 UTC 2022 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
- 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 5 14:16:23 UTC 2022 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
- 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 12:01:50 UTC 2022 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
- Replace obsolete macro %make_jobs by %cmake_build
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jan 7 08:36:43 UTC 2022 - Luigi Baldoni <aloisio@gmx.com>
|
||||
|
||||
- Update to version 8.1.1
|
||||
* Restored ABI compatibility with version 8.0.x
|
||||
* Fixed chrono formatting on big-endian systems
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jan 3 10:11:22 UTC 2022 - Luigi Baldoni <aloisio@gmx.com>
|
||||
|
||||
- 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 3 05:28:37 UTC 2021 - Luigi Baldoni <aloisio@gmx.com>
|
||||
|
||||
- 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 14:48:42 UTC 2021 - Luigi Baldoni <aloisio@gmx.com>
|
||||
|
||||
- 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 ``<locale>`` 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 14:55:58 UTC 2020 - aloisio@gmx.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 4 17:34:46 UTC 2020 - aloisio@gmx.com
|
||||
|
||||
- Update to version 7.1.2
|
||||
* Fixed floating point formatting with large precision
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Nov 2 15:27:46 UTC 2020 - aloisio@gmx.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 14:54:41 UTC 2020 - Luigi Baldoni <aloisio@gmx.com>
|
||||
|
||||
- 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<system_clock>
|
||||
* 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 7 19:56:36 UTC 2020 - aloisio@gmx.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 17:33:10 UTC 2020 - aloisio@gmx.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 7 19:18:26 UTC 2020 - aloisio@gmx.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 6 14:36:10 UTC 2020 - Luigi Baldoni <aloisio@gmx.com>
|
||||
|
||||
- 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 16:02:53 UTC 2020 - Luigi Baldoni <aloisio@gmx.com>
|
||||
|
||||
- Add fmt-6.2.1-fix_pkgconfig_paths.patch (fix for boo#1173270)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat May 9 17:53:02 UTC 2020 - Luigi Baldoni <aloisio@gmx.com>
|
||||
|
||||
- Update to version 6.2.1
|
||||
* Fixed ostream support in ``sprintf``
|
||||
(`#1631 <https://github.com/fmtlib/fmt/issues/1631>`_).
|
||||
* Fixed type detection when using implicit conversion to
|
||||
``string_view`` and ostream ``operator<<`` inconsistently
|
||||
(`#1662 <https://github.com/fmtlib/fmt/issues/1662>`_).
|
||||
- Drop 7d01859ef16e6b65bc023ad8bebfedecb088bf81.patch (no longer
|
||||
necessary)
|
||||
- Spec cleanup
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Apr 14 13:04:56 UTC 2020 - Hans-Peter Jansen <hpj@urpla.net>
|
||||
|
||||
- Apply 7d01859ef16e6b65bc023ad8bebfedecb088bf81.patch
|
||||
to fix kodi compilation and probably others:
|
||||
https://github.com/fmtlib/fmt/issues/1620
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 6 14:21:08 UTC 2020 - Luigi Baldoni <aloisio@gmx.com>
|
||||
|
||||
- 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 <aloisio@gmx.com>
|
||||
|
||||
- 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 <aloisio@gmx.com>
|
||||
|
||||
- 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 <aloisio@gmx.com>
|
||||
|
||||
- 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,
|
||||
#1431, #1433)
|
||||
|
||||
- Dropped fmt-bigendian_1.patch, fmt-bigendian_2.patch,
|
||||
fmt-bigendian_3.patch and fmt-bigendian_4.patch (merged
|
||||
upstream)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Dec 1 08:54:54 UTC 2019 - Luigi Baldoni <aloisio@gmx.com>
|
||||
|
||||
- Added fmt-bigendian_1.patch, fmt-bigendian_2.patch,
|
||||
fmt-bigendian_3.patch and fmt-bigendian_4.patch to fix tests
|
||||
on big endian targets
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Nov 29 08:46:30 UTC 2019 - Luigi Baldoni <aloisio@gmx.com>
|
||||
|
||||
- Update to version 6.0.0
|
||||
(too many changes to list, see ChangeLog.rst)
|
||||
- Dropped 0001-install-pkg-config-file-into-libdir.patch (no
|
||||
longer necessary)
|
||||
- Switched to MIT license
|
||||
- Increased SOVERSION to 6
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Mar 25 16:21:01 UTC 2019 - olaf@aepfle.de
|
||||
|
||||
- Install fmt.pc into libdir with
|
||||
0001-install-pkg-config-file-into-libdir.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Jan 12 18:29:40 UTC 2019 - Ferdinand Thiessen <rpm@fthiessen.de>
|
||||
|
||||
- Update to version 5.3.0:
|
||||
* Introduced experimental chrono formatting support
|
||||
* Added experimental support for emphasis
|
||||
(bold, italic, underline, strikethrough), colored output to a
|
||||
file stream, and improved colored formatting API
|
||||
* Added support for 4-bit terminal colors
|
||||
* Made std::string_view work as a format string
|
||||
* Added wide string support to compile-time format string checks
|
||||
* Made colored print functions work with wide strings
|
||||
* Introduced experimental Unicode support
|
||||
* Removed undocumented basic_fixed_buffer which has been
|
||||
superseded by the iterator-based API
|
||||
* Disallowed repeated leading zeros in an argument ID
|
||||
* Deprecated fmt::visit, parse_context, and wparse_context.
|
||||
Use fmt::visit_format_arg, format_parse_context, and
|
||||
wformat_parse_context instead.
|
||||
- Removed upstream merged fix-fmt_pc.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 6 21:15:37 UTC 2018 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
- Do without em dashes in summaries.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 6 13:38:46 UTC 2018 - Luigi Baldoni <aloisio@gmx.com>
|
||||
|
||||
- Added baselibs.conf as source
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Nov 9 11:51:14 UTC 2018 - munix9@googlemail.com
|
||||
|
||||
- initial package for version 5.2.1
|
||||
|
81
fmt.spec
Normal file
81
fmt.spec
Normal file
@ -0,0 +1,81 @@
|
||||
#
|
||||
# spec file for package fmt
|
||||
#
|
||||
# Copyright (c) 2024 SUSE LLC
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
%define sover 11
|
||||
Name: fmt
|
||||
Version: 11.0.2
|
||||
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
|
||||
BuildRequires: c++_compiler
|
||||
BuildRequires: cmake
|
||||
BuildRequires: pkg-config
|
||||
|
||||
%description
|
||||
Fmt is a formatting library for C++. It can be used as an
|
||||
alternative to (s)printf and iostreams.
|
||||
|
||||
%package -n libfmt%sover
|
||||
Summary: A formatting library for C++
|
||||
|
||||
%description -n libfmt%sover
|
||||
Shared library for fmt, a formatting library for C++.
|
||||
|
||||
%package devel
|
||||
Summary: Development files for fmt, a formatting library
|
||||
Requires: libfmt%sover = %version
|
||||
|
||||
%description devel
|
||||
Development files for fmt, a formatting library for C++.
|
||||
|
||||
%prep
|
||||
%autosetup -p1
|
||||
|
||||
%build
|
||||
# X87 fix for excessive precision: https://github.com/fmtlib/fmt/issues/3337
|
||||
export CFLAGS="%optflags -ffloat-store"
|
||||
export CXXFLAGS="$CFLAGS"
|
||||
%cmake -DCMAKE_INSTALL_INCLUDEDIR:PATH="%_includedir"
|
||||
%cmake_build
|
||||
|
||||
%install
|
||||
%cmake_install
|
||||
|
||||
%check
|
||||
# path needs to be exported otherwise unit tests will fail
|
||||
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:%buildroot/%_libdir"
|
||||
%ctest
|
||||
|
||||
%post -n libfmt%sover -p /sbin/ldconfig
|
||||
%postun -n libfmt%sover -p /sbin/ldconfig
|
||||
|
||||
%files -n libfmt%sover
|
||||
%license LICENSE
|
||||
%_libdir/libfmt.so.%{sover}*
|
||||
|
||||
%files devel
|
||||
%doc ChangeLog.md README.md
|
||||
%_includedir/%name
|
||||
%_libdir/cmake/%name
|
||||
%_libdir/libfmt.so
|
||||
%_libdir/pkgconfig/%name.pc
|
||||
|
||||
%changelog
|
Loading…
Reference in New Issue
Block a user