diff --git a/ChangeLog.rst b/ChangeLog.rst index 18294039..5f656da9 100644 --- a/ChangeLog.rst +++ b/ChangeLog.rst @@ -1,6 +1,69 @@ 5.3.0 - TBD ----------- +* Introduced experimental chrono formatting support: + + .. code:: c++ + + #include + + int main() { + using namespace std::literals::chrono_literals; + fmt::print("Default format: {} {}\n", 42s, 100ms); + fmt::print("strftime-like format: {:%H:%M:%S}\n", 3h + 15min + 30s); + } + + prints:: + + Default format: 42s 100ms + strftime-like format: 03:15:30 + +* Added experimental support for emphasis (bold, italic, underline, + strikethrough), colored output to a file stream, and improved colored + formatting API + (`#961 `_, + `#967 `_, + `#973 `_): + + .. code:: c++ + + #include + + int main() { + print(fg(fmt::color::crimson) | fmt::emphasis::bold, + "Hello, {}!\n", "world"); + print(fg(fmt::color::floral_white) | bg(fmt::color::slate_gray) | + fmt::emphasis::underline, "Hello, {}!\n", "мир"); + print(fg(fmt::color::steel_blue) | fmt::emphasis::italic, + "Hello, {}!\n", "世界"); + } + + prints the following on modern terminals with RGB color support: + + .. image:: https://user-images.githubusercontent.com/576385/ + 50405788-b66e7500-076e-11e9-9592-7324d1f951d8.png + + Thanks `@Rakete1111 (Nicolas) `_. + +* Added support for 4-bit terminal colors + (`#968 `_, + `#974 `_) + + .. code:: c++ + + #include + + int main() { + print(fg(fmt::terminal_color::red), "stop\n"); + } + + Note that these colors vary by terminal: + + .. image:: https://user-images.githubusercontent.com/576385/ + 50405925-dbfc7e00-0770-11e9-9b85-333fab0af9ac.png + + Thanks `@Rakete1111 (Nicolas) `_. + * Parameterized formatting functions on the type of the format string (`#880 `_, `#881 `_, @@ -8,8 +71,8 @@ `#885 `_, `#897 `_, `#920 `_). - An object of a type that has an overloaded `to_string_view` returning - `fmt::string_view` can be used as a format string: + An object of type ``S`` that has an overloaded ``to_string_view(const S&)`` + returning ``fmt::string_view`` can be used as a format string: .. code:: c++ @@ -108,24 +171,31 @@ (`#878 `_). * Improved documentation - (`#877 `_, + (`#164 `_, + `#877 `_, `#901 `_, - `#906 `_). + `#906 `_, + `#979 `_). Thanks `@kookjr (Mathew Cucuzella) `_, - `@DarkDimius (Dmitry Petrashko) `_. + `@DarkDimius (Dmitry Petrashko) `_, + `@HecticSerenity `_. * Added `pkgconfig` support which makes it easier to consume the library from `meson` and other build systems (`#916 `_). - Thanks `@colemickens (Cole Mickens) `_. + Thanks `@colemickens (Cole Mickens) `_. -* Improved build config +* Various build improvements (`#909 `_, `#926 `_, - `#937 `_). + `#937 `_, + `#953 `_, + `#959 `_). Thanks `@tchaikov (Kefu Chai) `_, `@luncliff (Park DongHa) `_, - `@AndreasSchoenle (Andreas Schönle) `_. + `@AndreasSchoenle (Andreas Schönle) `_, + `@hotwatermorning `_, + `@Zefz (JohanJansen) `_. * Improved `string_view` construction performance (`#914 `_). @@ -147,12 +217,22 @@ `#886 `_, `#933 `_, `#941 `_, - `#931 `_ - `#943 `_). + `#931 `_, + `#943 `_, + `#954 `_, + `#956 `_, + `#962 `_, + `#965 `_, + `#977 `_, + `#983 `_, + `#989 `_). Thanks `@Luthaf (Guillaume Fraux) `_, `@stevenhoving (Steven Hoving) `_, `@christinaa (Kristina Brooks) `_, - `@lgritz (Larry Gritz) `_. + `@lgritz (Larry Gritz) `_, + `@DanielaE (Daniela Engert) `_, + `@0x8000-0000 (Sign Bit) `_, + `@liuping1997 `_. 5.2.1 - 2018-09-21 ------------------