aboutsummaryrefslogtreecommitdiff
path: root/dep/cppformat/ChangeLog.rst
diff options
context:
space:
mode:
authorNaios <naios-dev@live.de>2015-12-08 16:26:58 +0100
committerNaios <naios-dev@live.de>2015-12-08 16:46:15 +0100
commit7773984f94a15f45e0260e6478edf991c77d6e87 (patch)
tree1a121555bfd472db1ca85b40bb0081182acdcff5 /dep/cppformat/ChangeLog.rst
parent187e45d24b07613447e449565cdff8015c3220ac (diff)
Dep/CppFormat: Update cppformat to cppformat/cppformat@5c76d107cbaf
(cherry picked from commit aa3020c26d54fa63fde16c5a765b1d72649c7e30)
Diffstat (limited to 'dep/cppformat/ChangeLog.rst')
-rw-r--r--dep/cppformat/ChangeLog.rst358
1 files changed, 353 insertions, 5 deletions
diff --git a/dep/cppformat/ChangeLog.rst b/dep/cppformat/ChangeLog.rst
index 89d5af8e9c7..d2a77f8712f 100644
--- a/dep/cppformat/ChangeLog.rst
+++ b/dep/cppformat/ChangeLog.rst
@@ -1,3 +1,356 @@
+2.0.0 - 2015-12-01
+------------------
+
+General
+~~~~~~~
+
+* [Breaking] Named arguments
+ (`#169 <https://github.com/cppformat/cppformat/pull/169>`_,
+ `#173 <https://github.com/cppformat/cppformat/pull/173>`_,
+ `#174 <https://github.com/cppformat/cppformat/pull/174>`_):
+
+ .. code:: c++
+
+ fmt::print("The answer is {answer}.", fmt::arg("answer", 42));
+
+ Thanks to `@jamboree <https://github.com/jamboree>`_.
+
+* [Experimental] User-defined literals for format and named arguments
+ (`#204 <https://github.com/cppformat/cppformat/pull/204>`_,
+ `#206 <https://github.com/cppformat/cppformat/pull/206>`_,
+ `#207 <https://github.com/cppformat/cppformat/pull/207>`_):
+
+ .. code:: c++
+
+ using namespace fmt::literals;
+ fmt::print("The answer is {answer}.", "answer"_a=42);
+
+ Thanks to `@dean0x7d (Dean Moldovan) <https://github.com/dean0x7d>`_.
+
+* [Breaking] Formatting of more than 16 arguments is now supported when using
+ variadic templates
+ (`#141 <https://github.com/cppformat/cppformat/issues/141>`_).
+ Thanks to `@Shauren <https://github.com/Shauren>`_.
+
+* Runtime width specification
+ (`#168 <https://github.com/cppformat/cppformat/pull/168>`_):
+
+ .. code:: c++
+
+ fmt::format("{0:{1}}", 42, 5); // gives " 42"
+
+ Thanks to `@jamboree <https://github.com/jamboree>`_.
+
+* [Breaking] Enums are now formatted with an overloaded ``std::ostream`` insertion
+ operator (``operator<<``) if available
+ (`#232 <https://github.com/cppformat/cppformat/issues/232>`_).
+
+* [Breaking] Changed default ``bool`` format to textual, "true" or "false"
+ (`#170 <https://github.com/cppformat/cppformat/issues/170>`_):
+
+ .. code:: c++
+
+ fmt::print("{}", true); // prints "true"
+
+ To print ``bool`` as a number use numeric format specifier such as ``d``:
+
+ .. code:: c++
+
+ fmt::print("{:d}", true); // prints "1"
+
+* ``fmt::printf`` and ``fmt::sprintf`` now support formatting of ``bool`` with the
+ ``%s`` specifier giving textual output, "true" or "false"
+ (`#223 <https://github.com/cppformat/cppformat/pull/223>`_):
+
+ .. code:: c++
+
+ fmt::printf("%s", true); // prints "true"
+
+ Thanks to `@LarsGullik <https://github.com/LarsGullik>`_.
+
+* [Breaking] ``signed char`` and ``unsigned char`` are now formatted as integers by default
+ (`#217 <https://github.com/cppformat/cppformat/pull/217>`_).
+
+* [Breaking] Pointers to C strings can now be formatted with the ``p`` specifier
+ (`#223 <https://github.com/cppformat/cppformat/pull/223>`_):
+
+ .. code:: c++
+
+ fmt::print("{:p}", "test"); // prints pointer value
+
+ Thanks to `@LarsGullik <https://github.com/LarsGullik>`_.
+
+* [Breaking] ``fmt::printf`` and ``fmt::sprintf`` now print null pointers as ``(nil)``
+ and null strings as ``(null)`` for consistency with glibc
+ (`#226 <https://github.com/cppformat/cppformat/pull/226>`_).
+ Thanks to `@LarsGullik <https://github.com/LarsGullik>`_.
+
+* [Breaking] ``fmt::(s)printf`` now supports formatting of objects of user-defined types
+ that provide an overloaded ``std::ostream`` insertion operator (``operator<<``)
+ (`#201 <https://github.com/cppformat/cppformat/issues/201>`_):
+
+ .. code:: c++
+
+ fmt::printf("The date is %s", Date(2012, 12, 9));
+
+* [Breaking] The ``Buffer`` template is now part of the public API and can be used
+ to implement custom memory buffers
+ (`#140 <https://github.com/cppformat/cppformat/issues/140>`_).
+ Thanks to `@polyvertex (Jean-Charles Lefebvre) <https://github.com/polyvertex>`_.
+
+* [Breaking] Improved compatibility between ``BasicStringRef`` and
+ `std::experimental::basic_string_view
+ <http://en.cppreference.com/w/cpp/experimental/basic_string_view>`_
+ (`#100 <https://github.com/cppformat/cppformat/issues/100>`_,
+ `#159 <https://github.com/cppformat/cppformat/issues/159>`_,
+ `#183 <https://github.com/cppformat/cppformat/issues/183>`_):
+
+ - Comparison operators now compare string content, not pointers
+ - ``BasicStringRef::c_str`` replaced by ``BasicStringRef::data``
+ - ``BasicStringRef`` is no longer assumed to be null-terminated
+
+ References to null-terminated strings are now represented by a new class,
+ ``BasicCStringRef``.
+
+* Dependency on pthreads introduced by Google Test is now optional
+ (`#185 <https://github.com/cppformat/cppformat/issues/185>`_).
+
+* New CMake options ``FMT_DOC``, ``FMT_INSTALL`` and ``FMT_TEST`` to control
+ generation of ``doc``, ``install`` and ``test`` targets respectively, on by default
+ (`#197 <https://github.com/cppformat/cppformat/issues/197>`_,
+ `#198 <https://github.com/cppformat/cppformat/issues/198>`_,
+ `#200 <https://github.com/cppformat/cppformat/issues/200>`_).
+ Thanks to `@maddinat0r (Alex Martin) <https://github.com/maddinat0r>`_.
+
+* ``noexcept`` is now used when compiling with MSVC2015
+ (`#215 <https://github.com/cppformat/cppformat/pull/215>`_).
+ Thanks to `@dmkrepo (Dmitriy) <https://github.com/dmkrepo>`_.
+
+* Added an option to disable use of ``windows.h`` when ``FMT_USE_WINDOWS_H``
+ is defined as 0 before including ``format.h``
+ (`#171 <https://github.com/cppformat/cppformat/issues/171>`_).
+ Thanks to `@alfps (Alf P. Steinbach) <https://github.com/alfps>`_.
+
+* [Breaking] ``windows.h`` is now included with ``NOMINMAX`` unless
+ ``FMT_WIN_MINMAX`` is defined. This is done to prevent breaking code using
+ ``std::min`` and ``std::max`` and only affects the header-only configuration
+ (`#152 <https://github.com/cppformat/cppformat/issues/152>`_,
+ `#153 <https://github.com/cppformat/cppformat/pull/153>`_,
+ `#154 <https://github.com/cppformat/cppformat/pull/154>`_).
+ Thanks to `@DevO2012 <https://github.com/DevO2012>`_.
+
+* Improved support for custom character types
+ (`#171 <https://github.com/cppformat/cppformat/issues/171>`_).
+ Thanks to `@alfps (Alf P. Steinbach) <https://github.com/alfps>`_.
+
+* Added an option to disable use of IOStreams when ``FMT_USE_IOSTREAMS``
+ is defined as 0 before including ``format.h``
+ (`#205 <https://github.com/cppformat/cppformat/issues/205>`_,
+ `#208 <https://github.com/cppformat/cppformat/pull/208>`_).
+ Thanks to `@JodiTheTigger <https://github.com/JodiTheTigger>`_.
+
+* Improved detection of ``isnan``, ``isinf`` and ``signbit``.
+
+Optimization
+~~~~~~~~~~~~
+
+* Made formatting of user-defined types more efficient with a custom stream buffer
+ (`#92 <https://github.com/cppformat/cppformat/issues/92>`_,
+ `#230 <https://github.com/cppformat/cppformat/pull/230>`_).
+ Thanks to `@NotImplemented <https://github.com/NotImplemented>`_.
+
+* Further improved performance of ``fmt::Writer`` on integer formatting
+ and fixed a minor regression. Now it is ~7% faster than ``karma::generate``
+ on Karma's benchmark
+ (`#186 <https://github.com/cppformat/cppformat/issues/186>`_).
+
+* [Breaking] Reduced `compiled code size
+ <https://github.com/cppformat/cppformat#compile-time-and-code-bloat>`_
+ (`#143 <https://github.com/cppformat/cppformat/issues/143>`_,
+ `#149 <https://github.com/cppformat/cppformat/pull/149>`_).
+
+Distribution
+~~~~~~~~~~~~
+
+* [Breaking] Headers are now installed in
+ ``${CMAKE_INSTALL_PREFIX}/include/cppformat``
+ (`#178 <https://github.com/cppformat/cppformat/issues/178>`_).
+ Thanks to `@jackyf (Eugene V. Lyubimkin) <https://github.com/jackyf>`_.
+
+* [Breaking] Changed the library name from ``format`` to ``cppformat``
+ for consistency with the project name and to avoid potential conflicts
+ (`#178 <https://github.com/cppformat/cppformat/issues/178>`_).
+ Thanks to `@jackyf (Eugene V. Lyubimkin) <https://github.com/jackyf>`_.
+
+* C++ Format is now available in `Debian <https://www.debian.org/>`_ GNU/Linux
+ (`stretch <https://packages.debian.org/source/stretch/cppformat>`_,
+ `sid <https://packages.debian.org/source/sid/cppformat>`_) and
+ derived distributions such as
+ `Ubuntu <https://launchpad.net/ubuntu/+source/cppformat>`_ 15.10 and later
+ (`#155 <https://github.com/cppformat/cppformat/issues/155>`_)::
+
+ $ sudo apt-get install libcppformat1-dev
+
+ Thanks to `@jackyf (Eugene V. Lyubimkin) <https://github.com/jackyf>`_.
+
+* `Packages for Fedora and RHEL <https://admin.fedoraproject.org/pkgdb/package/cppformat/>`_
+ are now available. Thanks to Dave Johansen.
+
+* C++ Format can now be installed via `Homebrew <http://brew.sh/>`_ on OS X
+ (`#157 <https://github.com/cppformat/cppformat/issues/157>`_)::
+
+ $ brew install cppformat
+
+ Thanks to `@ortho <https://github.com/ortho>`_, Anatoliy Bulukin.
+
+Documentation
+~~~~~~~~~~~~~
+
+* Migrated from ReadTheDocs to GitHub Pages for better responsiveness
+ and reliability
+ (`#128 <https://github.com/cppformat/cppformat/issues/128>`_).
+ New documentation address is http://cppformat.github.io/.
+
+
+* Added `Building the documentation
+ <http://cppformat.github.io/dev/usage.html#building-the-documentation>`_
+ section to the documentation.
+
+* Documentation build script is now compatible with Python 3 and newer pip versions.
+ (`#189 <https://github.com/cppformat/cppformat/pull/189>`_,
+ `#209 <https://github.com/cppformat/cppformat/issues/209>`_).
+ Thanks to `@JodiTheTigger <https://github.com/JodiTheTigger>`_ and
+ `@xentec <https://github.com/xentec>`_.
+
+* Documentation fixes and improvements
+ (`#36 <https://github.com/cppformat/cppformat/issues/36>`_,
+ `#75 <https://github.com/cppformat/cppformat/issues/75>`_,
+ `#125 <https://github.com/cppformat/cppformat/issues/125>`_,
+ `#160 <https://github.com/cppformat/cppformat/pull/160>`_,
+ `#161 <https://github.com/cppformat/cppformat/pull/161>`_,
+ `#162 <https://github.com/cppformat/cppformat/issues/162>`_,
+ `#165 <https://github.com/cppformat/cppformat/issues/165>`_,
+ `#210 <https://github.com/cppformat/cppformat/issues/210>`_).
+ Thanks to `@syohex (Syohei YOSHIDA) <https://github.com/syohex>`_ and
+ bug reporters.
+
+* Fixed out-of-tree documentation build
+ (`#177 <https://github.com/cppformat/cppformat/issues/177>`_).
+ Thanks to `@jackyf (Eugene V. Lyubimkin) <https://github.com/jackyf>`_.
+
+Fixes
+~~~~~
+
+* Fixed ``initializer_list`` detection
+ (`#136 <https://github.com/cppformat/cppformat/issues/136>`_).
+ Thanks to `@Gachapen (Magnus Bjerke Vik) <https://github.com/Gachapen>`_.
+
+* [Breaking] Fixed formatting of enums with numeric format specifiers in
+ ``fmt::(s)printf``
+ (`#131 <https://github.com/cppformat/cppformat/issues/131>`_,
+ `#139 <https://github.com/cppformat/cppformat/issues/139>`_):
+
+ .. code:: c++
+
+ enum { ANSWER = 42 };
+ fmt::printf("%d", ANSWER);
+
+ Thanks to `@Naios <https://github.com/Naios>`_.
+
+* Improved compatibility with old versions of MinGW
+ (`#129 <https://github.com/cppformat/cppformat/issues/129>`_,
+ `#130 <https://github.com/cppformat/cppformat/pull/130>`_,
+ `#132 <https://github.com/cppformat/cppformat/issues/132>`_).
+ Thanks to `@cstamford (Christopher Stamford) <https://github.com/cstamford>`_.
+
+* Fixed a compile error on MSVC with disabled exceptions
+ (`#144 <https://github.com/cppformat/cppformat/issues/144>`_).
+
+* Added a workaround for broken implementation of variadic templates in MSVC2012
+ (`#148 <https://github.com/cppformat/cppformat/issues/148>`_).
+
+* Placed the anonymous namespace within ``fmt`` namespace for the header-only
+ configuration
+ (`#171 <https://github.com/cppformat/cppformat/issues/171>`_).
+ Thanks to `@alfps (Alf P. Steinbach) <https://github.com/alfps>`_.
+
+* Fixed issues reported by Coverity Scan
+ (`#187 <https://github.com/cppformat/cppformat/issues/187>`_,
+ `#192 <https://github.com/cppformat/cppformat/issues/192>`_).
+
+* Implemented a workaround for a name lookup bug in MSVC2010
+ (`#188 <https://github.com/cppformat/cppformat/issues/188>`_).
+
+* Fixed compiler warnings
+ (`#95 <https://github.com/cppformat/cppformat/issues/95>`_,
+ `#96 <https://github.com/cppformat/cppformat/issues/96>`_,
+ `#114 <https://github.com/cppformat/cppformat/pull/114>`_,
+ `#135 <https://github.com/cppformat/cppformat/issues/135>`_,
+ `#142 <https://github.com/cppformat/cppformat/issues/142>`_,
+ `#145 <https://github.com/cppformat/cppformat/issues/145>`_,
+ `#146 <https://github.com/cppformat/cppformat/issues/146>`_,
+ `#158 <https://github.com/cppformat/cppformat/issues/158>`_,
+ `#163 <https://github.com/cppformat/cppformat/issues/163>`_,
+ `#175 <https://github.com/cppformat/cppformat/issues/175>`_,
+ `#190 <https://github.com/cppformat/cppformat/issues/190>`_,
+ `#191 <https://github.com/cppformat/cppformat/pull/191>`_,
+ `#194 <https://github.com/cppformat/cppformat/issues/194>`_,
+ `#196 <https://github.com/cppformat/cppformat/pull/196>`_,
+ `#216 <https://github.com/cppformat/cppformat/issues/216>`_,
+ `#218 <https://github.com/cppformat/cppformat/pull/218>`_,
+ `#220 <https://github.com/cppformat/cppformat/pull/220>`_,
+ `#229 <https://github.com/cppformat/cppformat/pull/229>`_,
+ `#233 <https://github.com/cppformat/cppformat/issues/233>`_,
+ `#234 <https://github.com/cppformat/cppformat/issues/234>`_,
+ `#236 <https://github.com/cppformat/cppformat/pull/236>`_).
+ Thanks to `@seanmiddleditch (Sean Middleditch) <https://github.com/seanmiddleditch>`_,
+ `@dixlorenz (Dix Lorenz) <https://github.com/dixlorenz>`_,
+ `@CarterLi (李通洲) <https://github.com/CarterLi>`_,
+ `@Naios <https://github.com/Naios>`_,
+ `@fmatthew5876 (Matthew Fioravante) <https://github.com/fmatthew5876>`_,
+ `@LevskiWeng (Levski Weng) <https://github.com/LevskiWeng>`_,
+ `@rpopescu <https://github.com/rpopescu>`_,
+ `@gabime (Gabi Melman) <https://github.com/gabime>`_,
+ `@cubicool (Jeremy Moles) <https://github.com/cubicool>`_,
+ `@jkflying (Julian Kent) <https://github.com/jkflying>`_,
+ `@LogicalKnight (Sean L) <https://github.com/LogicalKnight>`_,
+ `@inguin (Ingo van Lil) <https://github.com/inguin>`_ and
+ `@Jopie64 (Johan) <https://github.com/Jopie64>`_.
+
+* Fixed portability issues (mostly causing test failures) on ARM, ppc64, ppc64le,
+ s390x and SunOS 5.11 i386 (
+ `#138 <https://github.com/cppformat/cppformat/issues/138>`_,
+ `#179 <https://github.com/cppformat/cppformat/issues/179>`_,
+ `#180 <https://github.com/cppformat/cppformat/issues/180>`_,
+ `#202 <https://github.com/cppformat/cppformat/issues/202>`_,
+ `#225 <https://github.com/cppformat/cppformat/issues/225>`_,
+ `Red Hat Bugzilla Bug 1260297 <https://bugzilla.redhat.com/show_bug.cgi?id=1260297>`_).
+ Thanks to `@Naios <https://github.com/Naios>`_,
+ `@jackyf (Eugene V. Lyubimkin) <https://github.com/jackyf>`_ and Dave Johansen.
+
+* Fixed a name conflict with macro ``free`` defined in
+ ``crtdbg.h`` when ``_CRTDBG_MAP_ALLOC`` is set
+ (`#211 <https://github.com/cppformat/cppformat/issues/211>`_).
+
+* Fixed shared library build on OS X
+ (`#212 <https://github.com/cppformat/cppformat/pull/212>`_).
+ Thanks to `@dean0x7d (Dean Moldovan) <https://github.com/dean0x7d>`_.
+
+* Fixed an overload conflict on MSVC when ``/Zc:wchar_t-`` option is specified
+ (`#214 <https://github.com/cppformat/cppformat/pull/214>`_).
+ Thanks to `@slavanap (Vyacheslav Napadovsky) <https://github.com/slavanap>`_.
+
+* Improved compatibility with MSVC 2008
+ (`#236 <https://github.com/cppformat/cppformat/pull/236>`_).
+ Thanks to `@Jopie64 (Johan) <https://github.com/Jopie64>`_.
+
+* Improved compatibility with bcc32
+ (`#227 <https://github.com/cppformat/cppformat/issues/227>`_).
+
+* Fixed ``static_assert`` detection on Clang
+ (`#228 <https://github.com/cppformat/cppformat/pull/228>`_).
+ Thanks to `@dean0x7d (Dean Moldovan) <https://github.com/dean0x7d>`_.
+
1.1.0 - 2015-03-06
------------------
@@ -66,11 +419,6 @@
* Fixed packaging issues (`#94 <https://github.com/cppformat/cppformat/issues/94>`_).
-* Fixed warnings in GCC, MSVC and Xcode/Clang
- (`#95 <https://github.com/cppformat/cppformat/issues/95>`_,
- `#96 <https://github.com/cppformat/cppformat/issues/96>`_ and
- `#114 <https://github.com/cppformat/cppformat/pull/114>`_).
-
* Added `changelog <https://github.com/cppformat/cppformat/blob/master/ChangeLog.rst>`_
(`#103 <https://github.com/cppformat/cppformat/issues/103>`_).