Update changelog
This commit is contained in:
parent
c87dd746fa
commit
7dbc8ac716
@ -1,11 +1,11 @@
|
|||||||
7.0.0 - TBD
|
7.0.0 - TBD
|
||||||
-----------
|
-----------
|
||||||
|
|
||||||
* Reduced the library size. For example, on macOS the stripped binary
|
* Reduced the library size. For example, on macOS a stripped test binary
|
||||||
statically linked with {fmt} `shrank from ~368k to less than 100k
|
statically linked with {fmt} `shrank from ~368k to less than 100k
|
||||||
<http://www.zverovich.net/2020/05/21/reducing-library-size.html>`_.
|
<http://www.zverovich.net/2020/05/21/reducing-library-size.html>`_.
|
||||||
|
|
||||||
* Added sa impler and more efficient `format string compilation API
|
* Added a impler and more efficient `format string compilation API
|
||||||
<https://fmt.dev/dev/api.html#compile-api>`_:
|
<https://fmt.dev/dev/api.html#compile-api>`_:
|
||||||
|
|
||||||
.. code:: c++
|
.. code:: c++
|
||||||
@ -19,14 +19,23 @@
|
|||||||
The old ``fmt::compile`` API is now deprecated.
|
The old ``fmt::compile`` API is now deprecated.
|
||||||
|
|
||||||
* Optimized integer formatting: ``format_to`` with format string compilation
|
* Optimized integer formatting: ``format_to`` with format string compilation
|
||||||
and a stack-allocated buffer is now `faster than to_chars` on both
|
and a stack-allocated buffer is now `faster than to_chars on both
|
||||||
libc++ and libstdc++
|
libc++ and libstdc++
|
||||||
<http://www.zverovich.net/2020/06/13/fast-int-to-string-revisited.html>`_.
|
<http://www.zverovich.net/2020/06/13/fast-int-to-string-revisited.html>`_.
|
||||||
|
|
||||||
|
* Optimized handling of small format strings. For example,
|
||||||
|
|
||||||
|
.. code:: c++
|
||||||
|
|
||||||
|
fmt::format("Result: {}: ({},{},{},{})", str1, str2, str3, str4, str5)
|
||||||
|
|
||||||
|
is now ~40% faster (`#1685 <https://github.com/fmtlib/fmt/issues/1685>`_).
|
||||||
|
|
||||||
* Applied extern templates to improve compile times when using the core API
|
* Applied extern templates to improve compile times when using the core API
|
||||||
and ``fmt/format.h`` (`#1452`_). For example, on macOS with clang the compile
|
and ``fmt/format.h`` (`#1452 <https://github.com/fmtlib/fmt/issues/1452>`_).
|
||||||
time of a test translation unit dropped from 2.3s to 0.3s with ``-O2`` and
|
For example, on macOS with clang the compile time of a test translation unit
|
||||||
from 0.6s to 0.3s with the default settings (``-O0``).
|
dropped from 2.3s to 0.3s with ``-O2`` and from 0.6s to 0.3s with the default
|
||||||
|
settings (``-O0``).
|
||||||
|
|
||||||
Before (``-O2``)::
|
Before (``-O2``)::
|
||||||
|
|
||||||
@ -54,7 +63,7 @@
|
|||||||
Thanks `@alex3d <https://github.com/alex3d>`_ for the suggestion.
|
Thanks `@alex3d <https://github.com/alex3d>`_ for the suggestion.
|
||||||
|
|
||||||
* Named arguments are now stored on stack (no dynamic memory allocations) and
|
* Named arguments are now stored on stack (no dynamic memory allocations) and
|
||||||
the generated binary code is more compact and efficient. For example
|
the compiled code is more compact and efficient. For example
|
||||||
|
|
||||||
.. code:: c++
|
.. code:: c++
|
||||||
|
|
||||||
@ -150,35 +159,15 @@
|
|||||||
compatibility with ``std::format``
|
compatibility with ``std::format``
|
||||||
(`#1652 <https://github.com/fmtlib/fmt/issues/1652>`_).
|
(`#1652 <https://github.com/fmtlib/fmt/issues/1652>`_).
|
||||||
|
|
||||||
* Implemented the ``'L'`` format specifier for locale-specific formatting of
|
* Replaced the ``'n'`` format specifier with ``'L'`` for compatibility with
|
||||||
floating-point numbers for compatibility with ``std::format``
|
``std::format`` (`#1624 <https://github.com/fmtlib/fmt/issues/1624>`_).
|
||||||
(`#1624 <https://github.com/fmtlib/fmt/issues/1624>`_).
|
The ``'n'`` specifier can be enabled via the ``FMT_DEPRECATED_N_SPECIFIER``
|
||||||
The ``'n'`` specifier is now disabled by default but can be enabled via the
|
macro.
|
||||||
``FMT_DEPRECATED_N_SPECIFIER`` macro.
|
|
||||||
|
|
||||||
* The ``'='`` format specifier is now disabled by default for compatibility with
|
* The ``'='`` format specifier is now disabled by default for compatibility with
|
||||||
``std::format``. It can be enabled via the ``FMT_DEPRECATED_NUMERIC_ALIGN``
|
``std::format``. It can be enabled via the ``FMT_DEPRECATED_NUMERIC_ALIGN``
|
||||||
macro.
|
macro.
|
||||||
|
|
||||||
* Optimized handling of small format strings. For example,
|
|
||||||
|
|
||||||
.. code:: c++
|
|
||||||
|
|
||||||
fmt::format("Result: {}: ({},{},{},{})", str1, str2, str3, str4, str5)
|
|
||||||
|
|
||||||
is now ~40% faster (`#1685 <https://github.com/fmtlib/fmt/issues/1685>`_).
|
|
||||||
|
|
||||||
* Improved compatibility between ``fmt::printf`` with the standard specs
|
|
||||||
(`#1595 <https://github.com/fmtlib/fmt/issues/1595>`_,
|
|
||||||
`#1682 <https://github.com/fmtlib/fmt/pull/1682>`_,
|
|
||||||
`#1683 <https://github.com/fmtlib/fmt/pull/1683>`_,
|
|
||||||
`#1687 <https://github.com/fmtlib/fmt/pull/1687>`_,
|
|
||||||
`#1699 <https://github.com/fmtlib/fmt/pull/1699>`_).
|
|
||||||
Thanks `@rimathia <https://github.com/rimathia>`_.
|
|
||||||
|
|
||||||
* Fixed handling of ``operator<<` overloads that use ``copyfmt``
|
|
||||||
(`#1666 <https://github.com/fmtlib/fmt/issues/1666>`_).
|
|
||||||
|
|
||||||
* Removed the following deprecated APIs:
|
* Removed the following deprecated APIs:
|
||||||
|
|
||||||
* ``FMT_STRING_ALIAS`` and ``fmt`` macros - replaced by ``FMT_STRING``
|
* ``FMT_STRING_ALIAS`` and ``fmt`` macros - replaced by ``FMT_STRING``
|
||||||
@ -195,6 +184,17 @@
|
|||||||
(`#1538 <https://github.com/fmtlib/fmt/issues/1538>`_). The former is still
|
(`#1538 <https://github.com/fmtlib/fmt/issues/1538>`_). The former is still
|
||||||
provided as an alias if the ``FMT_USE_INTERNAL`` macro is defined.
|
provided as an alias if the ``FMT_USE_INTERNAL`` macro is defined.
|
||||||
|
|
||||||
|
* Improved compatibility between ``fmt::printf`` with the standard specs
|
||||||
|
(`#1595 <https://github.com/fmtlib/fmt/issues/1595>`_,
|
||||||
|
`#1682 <https://github.com/fmtlib/fmt/pull/1682>`_,
|
||||||
|
`#1683 <https://github.com/fmtlib/fmt/pull/1683>`_,
|
||||||
|
`#1687 <https://github.com/fmtlib/fmt/pull/1687>`_,
|
||||||
|
`#1699 <https://github.com/fmtlib/fmt/pull/1699>`_).
|
||||||
|
Thanks `@rimathia <https://github.com/rimathia>`_.
|
||||||
|
|
||||||
|
* Fixed handling of ``operator<<` overloads that use ``copyfmt``
|
||||||
|
(`#1666 <https://github.com/fmtlib/fmt/issues/1666>`_).
|
||||||
|
|
||||||
* Added the ``FMT_OS`` CMake option to control inclusion of OS-specific APIs
|
* Added the ``FMT_OS`` CMake option to control inclusion of OS-specific APIs
|
||||||
in the fmt target. This can be useful for embedded platforms
|
in the fmt target. This can be useful for embedded platforms
|
||||||
(`#1654 <https://github.com/fmtlib/fmt/issues/1654>`_,
|
(`#1654 <https://github.com/fmtlib/fmt/issues/1654>`_,
|
||||||
@ -224,7 +224,8 @@
|
|||||||
`#1721 <https://github.com/fmtlib/fmt/pull/1721>`_,
|
`#1721 <https://github.com/fmtlib/fmt/pull/1721>`_,
|
||||||
`#1739 <https://github.com/fmtlib/fmt/pull/1739>`_,
|
`#1739 <https://github.com/fmtlib/fmt/pull/1739>`_,
|
||||||
`#1740 <https://github.com/fmtlib/fmt/pull/1740>`_,
|
`#1740 <https://github.com/fmtlib/fmt/pull/1740>`_,
|
||||||
`#1741 <https://github.com/fmtlib/fmt/pull/1741>`_).
|
`#1741 <https://github.com/fmtlib/fmt/pull/1741>`_,
|
||||||
|
`#1751 <https://github.com/fmtlib/fmt/pull/1751>`_).
|
||||||
Thanks `@senior7515 (Alexander Gallego) <https://github.com/senior7515>`_,
|
Thanks `@senior7515 (Alexander Gallego) <https://github.com/senior7515>`_,
|
||||||
`@lsr0 (Lindsay Roberts) <https://github.com/lsr0>`_,
|
`@lsr0 (Lindsay Roberts) <https://github.com/lsr0>`_,
|
||||||
`@puetzk (Kevin Puetz) <https://github.com/puetzk>`_,
|
`@puetzk (Kevin Puetz) <https://github.com/puetzk>`_,
|
||||||
@ -232,7 +233,8 @@
|
|||||||
Alexey Kuzmenko, `@jelly (jelle van der Waa) <https://github.com/jelly>`_,
|
Alexey Kuzmenko, `@jelly (jelle van der Waa) <https://github.com/jelly>`_,
|
||||||
`@claremacrae (Clare Macrae) <https://github.com/claremacrae>`_,
|
`@claremacrae (Clare Macrae) <https://github.com/claremacrae>`_,
|
||||||
`@jiapengwen (文佳鹏) <https://github.com/jiapengwen>`_,
|
`@jiapengwen (文佳鹏) <https://github.com/jiapengwen>`_,
|
||||||
`@gsjaardema (Greg Sjaardema) <https://github.com/gsjaardema>`_.
|
`@gsjaardema (Greg Sjaardema) <https://github.com/gsjaardema>`_,
|
||||||
|
`@alexey-milovidov <https://github.com/alexey-milovidov>`_.
|
||||||
|
|
||||||
* Implemented various build configuration fixes and improvements
|
* Implemented various build configuration fixes and improvements
|
||||||
(`#1603 <https://github.com/fmtlib/fmt/pull/1603>`_,
|
(`#1603 <https://github.com/fmtlib/fmt/pull/1603>`_,
|
||||||
|
Loading…
Reference in New Issue
Block a user