| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1 |
# 11.0.2 - 2024-07-20 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
3 |
- Fixed compatibility with non-POSIX systems |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
4 |
(https://github.com/fmtlib/fmt/issues/4054, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
5 |
https://github.com/fmtlib/fmt/issues/4060). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
6 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
7 |
- Fixed performance regressions when using `std::back_insert_iterator` with |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
8 |
`fmt::format_to` (https://github.com/fmtlib/fmt/issues/4070). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
9 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
10 |
- Fixed handling of `std::generator` and move-only iterators |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
11 |
(https://github.com/fmtlib/fmt/issues/4053, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
12 |
https://github.com/fmtlib/fmt/pull/4057). Thanks @Arghnews. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
13 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
14 |
- Made `formatter<std::string_view>::parse` work with types convertible to |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
15 |
`std::string_view` (https://github.com/fmtlib/fmt/issues/4036, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
16 |
https://github.com/fmtlib/fmt/pull/4055). Thanks @Arghnews. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
17 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
18 |
- Made `volatile void*` formattable |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
19 |
(https://github.com/fmtlib/fmt/issues/4049, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
20 |
https://github.com/fmtlib/fmt/pull/4056). Thanks @Arghnews. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
21 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
22 |
- Made `Glib::ustring` not be confused with `std::string` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
23 |
(https://github.com/fmtlib/fmt/issues/4052). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
24 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
25 |
- Made `fmt::context` iterator compatible with STL algorithms that rely on |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
26 |
iterator category (https://github.com/fmtlib/fmt/issues/4079). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
27 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
28 |
# 11.0.1 - 2024-07-05 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
29 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
30 |
- Fixed version number in the inline namespace |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
31 |
(https://github.com/fmtlib/fmt/issues/4047). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
32 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
33 |
- Fixed disabling Unicode support via CMake |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
34 |
(https://github.com/fmtlib/fmt/issues/4051). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
35 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
36 |
- Fixed deprecated `visit_format_arg` (https://github.com/fmtlib/fmt/pull/4043). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
37 |
Thanks @nebkat. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
38 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
39 |
- Fixed handling of a sign and improved the `std::complex` formater |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
40 |
(https://github.com/fmtlib/fmt/pull/4034, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
41 |
https://github.com/fmtlib/fmt/pull/4050). Thanks @tesch1 and @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
42 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
43 |
- Fixed ADL issues in `fmt::printf` when using C++20 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
44 |
(https://github.com/fmtlib/fmt/pull/4042). Thanks @toge. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
45 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
46 |
- Removed a redundant check in the formatter for `std::expected` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
47 |
(https://github.com/fmtlib/fmt/pull/4040). Thanks @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
48 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
49 |
# 11.0.0 - 2024-07-01 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
50 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
51 |
- Added `fmt/base.h` which provides a subset of the API with minimal include |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
52 |
dependencies and enough functionality to replace all uses of the `printf` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
53 |
family of functions. This brings the compile time of code using {fmt} much |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
54 |
closer to the equivalent `printf` code as shown on the following benchmark |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
55 |
that compiles 100 source files: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
56 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
57 |
| Method | Compile Time (s) | |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
58 |
|--------------|------------------| |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
59 |
| printf | 1.6 | |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
60 |
| IOStreams | 25.9 | |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
61 |
| fmt 10.x | 19.0 | |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
62 |
| fmt 11.0 | 4.8 | |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
63 |
| tinyformat | 29.1 | |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
64 |
| Boost Format | 55.0 | |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
65 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
66 |
This gives almost 4x improvement in build speed compared to version 10. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
67 |
Note that the benchmark is purely formatting code and includes. In real |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
68 |
projects the difference from `printf` will be smaller partly because common |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
69 |
standard headers will be included in almost any translation unit (TU) anyway. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
70 |
In particular, in every case except `printf` above ~1s is spent in total on |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
71 |
including `<type_traits>` in all TUs. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
72 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
73 |
- Optimized includes in other headers such as `fmt/format.h` which is now |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
74 |
roughly equivalent to the old `fmt/core.h` in terms of build speed. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
75 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
76 |
- Migrated the documentation at https://fmt.dev/ from Sphinx to MkDocs. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
77 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
78 |
- Improved C++20 module support |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
79 |
(https://github.com/fmtlib/fmt/issues/3990, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
80 |
https://github.com/fmtlib/fmt/pull/3991, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
81 |
https://github.com/fmtlib/fmt/issues/3993, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
82 |
https://github.com/fmtlib/fmt/pull/3994, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
83 |
https://github.com/fmtlib/fmt/pull/3997, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
84 |
https://github.com/fmtlib/fmt/pull/3998, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
85 |
https://github.com/fmtlib/fmt/pull/4004, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
86 |
https://github.com/fmtlib/fmt/pull/4005, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
87 |
https://github.com/fmtlib/fmt/pull/4006, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
88 |
https://github.com/fmtlib/fmt/pull/4013, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
89 |
https://github.com/fmtlib/fmt/pull/4027, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
90 |
https://github.com/fmtlib/fmt/pull/4029). In particular, native CMake support |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
91 |
for modules is now used if available. Thanks @yujincheng08 and @matt77hias. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
92 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
93 |
- Added an option to replace standard includes with `import std` enabled via |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
94 |
the `FMT_IMPORT_STD` macro (https://github.com/fmtlib/fmt/issues/3921, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
95 |
https://github.com/fmtlib/fmt/pull/3928). Thanks @matt77hias. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
96 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
97 |
- Exported `fmt::range_format`, `fmt::range_format_kind` and |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
98 |
`fmt::compiled_string` from the `fmt` module |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
99 |
(https://github.com/fmtlib/fmt/pull/3970, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
100 |
https://github.com/fmtlib/fmt/pull/3999). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
101 |
Thanks @matt77hias and @yujincheng08. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
102 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
103 |
- Improved integration with stdio in `fmt::print`, enabling direct writes |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
104 |
into a C stream buffer in common cases. This may give significant |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
105 |
performance improvements ranging from tens of percent to [2x]( |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
106 |
https://stackoverflow.com/a/78457454/471164) and eliminates dynamic memory |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
107 |
allocations on the buffer level. It is currently enabled for built-in and |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
108 |
string types with wider availability coming up in future releases. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
109 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
110 |
For example, it gives ~24% improvement on a [simple benchmark]( |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
111 |
https://isocpp.org/files/papers/P3107R5.html#perf) compiled with Apple clang |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
112 |
version 15.0.0 (clang-1500.1.0.2.5) and run on macOS 14.2.1: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
113 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
114 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
115 |
------------------------------------------------------- |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
116 |
Benchmark Time CPU Iterations |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
117 |
------------------------------------------------------- |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
118 |
printf 81.8 ns 81.5 ns 8496899 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
119 |
fmt::print (10.x) 63.8 ns 61.9 ns 11524151 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
120 |
fmt::print (11.0) 51.3 ns 51.0 ns 13846580 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
121 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
122 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
123 |
- Improved safety of `fmt::format_to` when writing to an array |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
124 |
(https://github.com/fmtlib/fmt/pull/3805). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
125 |
For example ([godbolt](https://www.godbolt.org/z/cYrn8dWY8)): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
126 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
127 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
128 |
auto volkswagen = char[4]; |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
129 |
auto result = fmt::format_to(volkswagen, "elephant"); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
130 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
131 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
132 |
no longer results in a buffer overflow. Instead the output will be truncated |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
133 |
and you can get the end iterator and whether truncation occurred from the |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
134 |
`result` object. Thanks @ThePhD. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
135 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
136 |
- Enabled Unicode support by default in MSVC, bringing it on par with other |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
137 |
compilers and making it unnecessary for users to enable it explicitly. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
138 |
Most of {fmt} is encoding-agnostic but this prevents mojibake in places |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
139 |
where encoding matters such as path formatting and terminal output. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
140 |
You can control the Unicode support via the CMake `FMT_UNICODE` option. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
141 |
Note that some {fmt} packages such as the one in vcpkg have already been |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
142 |
compiled with Unicode enabled. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
143 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
144 |
- Added a formatter for `std::expected` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
145 |
(https://github.com/fmtlib/fmt/pull/3834). Thanks @dominicpoeschko. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
146 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
147 |
- Added a formatter for `std::complex` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
148 |
(https://github.com/fmtlib/fmt/issues/1467, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
149 |
https://github.com/fmtlib/fmt/issues/3886, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
150 |
https://github.com/fmtlib/fmt/pull/3892, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
151 |
https://github.com/fmtlib/fmt/pull/3900). Thanks @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
152 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
153 |
- Added a formatter for `std::type_info` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
154 |
(https://github.com/fmtlib/fmt/pull/3978). Thanks @matt77hias. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
155 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
156 |
- Specialized `formatter` for `std::basic_string` types with custom traits |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
157 |
and allocators (https://github.com/fmtlib/fmt/issues/3938, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
158 |
https://github.com/fmtlib/fmt/pull/3943). Thanks @dieram3. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
159 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
160 |
- Added formatters for `std::chrono::day`, `std::chrono::month`, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
161 |
`std::chrono::year` and `std::chrono::year_month_day` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
162 |
(https://github.com/fmtlib/fmt/issues/3758, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
163 |
https://github.com/fmtlib/fmt/issues/3772, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
164 |
https://github.com/fmtlib/fmt/pull/3906, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
165 |
https://github.com/fmtlib/fmt/pull/3913). For example: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
166 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
167 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
168 |
#include <fmt/chrono.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
169 |
#include <fmt/color.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
170 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
171 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
172 |
fmt::print(fg(fmt::color::green), "{}\n", std::chrono::day(7)); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
173 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
174 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
175 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
176 |
prints a green day: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
177 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
178 |
<img width="306" alt="image" src="https://github.com/fmtlib/fmt/assets/576385/6e395f8b-451a-4cf7-bccc-ee92ca0dec65"> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
179 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
180 |
Thanks @zivshek. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
181 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
182 |
- Fixed handling of precision in `%S` (https://github.com/fmtlib/fmt/issues/3794, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
183 |
https://github.com/fmtlib/fmt/pull/3814). Thanks @js324. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
184 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
185 |
- Added support for the `-` specifier (glibc `strftime` extension) to day of |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
186 |
the month (`%d`) and week of the year (`%W`, `%U`, `%V`) specifiers |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
187 |
(https://github.com/fmtlib/fmt/pull/3976). Thanks @ZaheenJ. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
188 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
189 |
- Fixed the scope of the `-` extension in chrono formatting so that it doesn't |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
190 |
apply to subsequent specifiers (https://github.com/fmtlib/fmt/issues/3811, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
191 |
https://github.com/fmtlib/fmt/pull/3812). Thanks @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
192 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
193 |
- Improved handling of `time_point::min()` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
194 |
(https://github.com/fmtlib/fmt/issues/3282). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
195 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
196 |
- Added support for character range formatting |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
197 |
(https://github.com/fmtlib/fmt/issues/3857, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
198 |
https://github.com/fmtlib/fmt/pull/3863). Thanks @js324. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
199 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
200 |
- Added `string` and `debug_string` range formatters |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
201 |
(https://github.com/fmtlib/fmt/pull/3973, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
202 |
https://github.com/fmtlib/fmt/pull/4024). Thanks @matt77hias. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
203 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
204 |
- Enabled ADL for `begin` and `end` in `fmt::join` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
205 |
(https://github.com/fmtlib/fmt/issues/3813, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
206 |
https://github.com/fmtlib/fmt/pull/3824). Thanks @bbolli. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
207 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
208 |
- Made contiguous iterator optimizations apply to `std::basic_string` iterators |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
209 |
(https://github.com/fmtlib/fmt/pull/3798). Thanks @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
210 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
211 |
- Added support for ranges with mutable `begin` and `end` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
212 |
(https://github.com/fmtlib/fmt/issues/3752, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
213 |
https://github.com/fmtlib/fmt/pull/3800, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
214 |
https://github.com/fmtlib/fmt/pull/3955). Thanks @tcbrindle and @Arghnews. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
215 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
216 |
- Added support for move-only iterators to `fmt::join` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
217 |
(https://github.com/fmtlib/fmt/issues/3802, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
218 |
https://github.com/fmtlib/fmt/pull/3946). Thanks @Arghnews. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
219 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
220 |
- Moved range and iterator overloads of `fmt::join` to `fmt/ranges.h`, next |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
221 |
to other overloads. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
222 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
223 |
- Fixed handling of types with `begin` returning `void` such as Eigen matrices |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
224 |
(https://github.com/fmtlib/fmt/issues/3839, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
225 |
https://github.com/fmtlib/fmt/pull/3964). Thanks @Arghnews. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
226 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
227 |
- Added an `fmt::formattable` concept (https://github.com/fmtlib/fmt/pull/3974). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
228 |
Thanks @matt77hias. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
229 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
230 |
- Added support for `__float128` (https://github.com/fmtlib/fmt/issues/3494). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
231 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
232 |
- Fixed rounding issues when formatting `long double` with fixed precision |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
233 |
(https://github.com/fmtlib/fmt/issues/3539). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
234 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
235 |
- Made `fmt::isnan` not trigger floating-point exception for NaN values |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
236 |
(https://github.com/fmtlib/fmt/issues/3948, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
237 |
https://github.com/fmtlib/fmt/pull/3951). Thanks @alexdewar. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
238 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
239 |
- Removed dependency on `<memory>` for `std::allocator_traits` when possible |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
240 |
(https://github.com/fmtlib/fmt/pull/3804). Thanks @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
241 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
242 |
- Enabled compile-time checks in formatting functions that take text colors and |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
243 |
styles. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
244 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
245 |
- Deprecated wide stream overloads of `fmt::print` that take text styles. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
246 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
247 |
- Made format string compilation work with clang 12 and later despite |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
248 |
only partial non-type template parameter support |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
249 |
(https://github.com/fmtlib/fmt/issues/4000, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
250 |
https://github.com/fmtlib/fmt/pull/4001). Thanks @yujincheng08. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
251 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
252 |
- Made `fmt::iterator_buffer`'s move constructor `noexcept` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
253 |
(https://github.com/fmtlib/fmt/pull/3808). Thanks @waywardmonkeys. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
254 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
255 |
- Started enforcing that `formatter::format` is const for compatibility |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
256 |
with `std::format` (https://github.com/fmtlib/fmt/issues/3447). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
257 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
258 |
- Added `fmt::basic_format_arg::visit` and deprecated `fmt::visit_format_arg`. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
259 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
260 |
- Made `fmt::basic_string_view` not constructible from `nullptr` for |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
261 |
consistency with `std::string_view` in C++23 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
262 |
(https://github.com/fmtlib/fmt/pull/3846). Thanks @dalle. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
263 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
264 |
- Fixed `fmt::group_digits` for negative integers |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
265 |
(https://github.com/fmtlib/fmt/issues/3891, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
266 |
https://github.com/fmtlib/fmt/pull/3901). Thanks @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
267 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
268 |
- Fixed handling of negative ids in `fmt::basic_format_args::get` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
269 |
(https://github.com/fmtlib/fmt/pull/3945). Thanks @marlenecota. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
270 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
271 |
- Improved named argument validation |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
272 |
(https://github.com/fmtlib/fmt/issues/3817). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
273 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
274 |
- Disabled copy construction/assignment for `fmt::format_arg_store` and |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
275 |
fixed moved construction (https://github.com/fmtlib/fmt/pull/3833). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
276 |
Thanks @ivafanas. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
277 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
278 |
- Worked around a locale issue in RHEL/devtoolset |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
279 |
(https://github.com/fmtlib/fmt/issues/3858, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
280 |
https://github.com/fmtlib/fmt/pull/3859). Thanks @g199209. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
281 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
282 |
- Added RTTI detection for MSVC (https://github.com/fmtlib/fmt/pull/3821, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
283 |
https://github.com/fmtlib/fmt/pull/3963). Thanks @edo9300. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
284 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
285 |
- Migrated the documentation from Sphinx to MkDocs. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
286 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
287 |
- Improved documentation and README |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
288 |
(https://github.com/fmtlib/fmt/issues/3775, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
289 |
https://github.com/fmtlib/fmt/pull/3784, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
290 |
https://github.com/fmtlib/fmt/issues/3788, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
291 |
https://github.com/fmtlib/fmt/pull/3789, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
292 |
https://github.com/fmtlib/fmt/pull/3793, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
293 |
https://github.com/fmtlib/fmt/issues/3818, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
294 |
https://github.com/fmtlib/fmt/pull/3820, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
295 |
https://github.com/fmtlib/fmt/pull/3822, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
296 |
https://github.com/fmtlib/fmt/pull/3843, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
297 |
https://github.com/fmtlib/fmt/pull/3890, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
298 |
https://github.com/fmtlib/fmt/issues/3894, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
299 |
https://github.com/fmtlib/fmt/pull/3895, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
300 |
https://github.com/fmtlib/fmt/pull/3905, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
301 |
https://github.com/fmtlib/fmt/issues/3942, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
302 |
https://github.com/fmtlib/fmt/pull/4008). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
303 |
Thanks @zencatalyst, WolleTD, @tupaschoal, @Dobiasd, @frank-weinberg, @bbolli, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
304 |
@phprus, @waywardmonkeys, @js324 and @tchaikov. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
305 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
306 |
- Improved CI and tests |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
307 |
(https://github.com/fmtlib/fmt/issues/3878, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
308 |
https://github.com/fmtlib/fmt/pull/3883, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
309 |
https://github.com/fmtlib/fmt/issues/3897, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
310 |
https://github.com/fmtlib/fmt/pull/3979, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
311 |
https://github.com/fmtlib/fmt/pull/3980, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
312 |
https://github.com/fmtlib/fmt/pull/3988, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
313 |
https://github.com/fmtlib/fmt/pull/4010, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
314 |
https://github.com/fmtlib/fmt/pull/4012, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
315 |
https://github.com/fmtlib/fmt/pull/4038). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
316 |
Thanks @vgorrX, @waywardmonkeys, @tchaikov and @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
317 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
318 |
- Fixed buffer overflow when using format string compilation with debug format |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
319 |
and `std::back_insert_iterator` (https://github.com/fmtlib/fmt/issues/3795, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
320 |
https://github.com/fmtlib/fmt/pull/3797). Thanks @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
321 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
322 |
- Improved Bazel support |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
323 |
(https://github.com/fmtlib/fmt/pull/3792, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
324 |
https://github.com/fmtlib/fmt/pull/3801, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
325 |
https://github.com/fmtlib/fmt/pull/3962, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
326 |
https://github.com/fmtlib/fmt/pull/3965). Thanks @Vertexwahn. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
327 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
328 |
- Improved/fixed the CMake config |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
329 |
(https://github.com/fmtlib/fmt/issues/3777, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
330 |
https://github.com/fmtlib/fmt/pull/3783, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
331 |
https://github.com/fmtlib/fmt/issues/3847, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
332 |
https://github.com/fmtlib/fmt/pull/3907). Thanks @phprus and @xTachyon. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
333 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
334 |
- Fixed various warnings and compilation issues |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
335 |
(https://github.com/fmtlib/fmt/issues/3685, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
336 |
https://github.com/fmtlib/fmt/issues/3769, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
337 |
https://github.com/fmtlib/fmt/issues/3796, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
338 |
https://github.com/fmtlib/fmt/issues/3803, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
339 |
https://github.com/fmtlib/fmt/pull/3806, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
340 |
https://github.com/fmtlib/fmt/pull/3807, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
341 |
https://github.com/fmtlib/fmt/issues/3809, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
342 |
https://github.com/fmtlib/fmt/pull/3810, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
343 |
https://github.com/fmtlib/fmt/issues/3830, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
344 |
https://github.com/fmtlib/fmt/pull/3832, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
345 |
https://github.com/fmtlib/fmt/issues/3835, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
346 |
https://github.com/fmtlib/fmt/pull/3844, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
347 |
https://github.com/fmtlib/fmt/issues/3854, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
348 |
https://github.com/fmtlib/fmt/pull/3856, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
349 |
https://github.com/fmtlib/fmt/pull/3865, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
350 |
https://github.com/fmtlib/fmt/pull/3866, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
351 |
https://github.com/fmtlib/fmt/pull/3880, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
352 |
https://github.com/fmtlib/fmt/issues/3881, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
353 |
https://github.com/fmtlib/fmt/issues/3884, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
354 |
https://github.com/fmtlib/fmt/issues/3898, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
355 |
https://github.com/fmtlib/fmt/pull/3899, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
356 |
https://github.com/fmtlib/fmt/pull/3909, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
357 |
https://github.com/fmtlib/fmt/pull/3917, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
358 |
https://github.com/fmtlib/fmt/pull/3923, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
359 |
https://github.com/fmtlib/fmt/pull/3924, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
360 |
https://github.com/fmtlib/fmt/issues/3925, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
361 |
https://github.com/fmtlib/fmt/pull/3930, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
362 |
https://github.com/fmtlib/fmt/pull/3931, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
363 |
https://github.com/fmtlib/fmt/pull/3933, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
364 |
https://github.com/fmtlib/fmt/issues/3935, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
365 |
https://github.com/fmtlib/fmt/pull/3937, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
366 |
https://github.com/fmtlib/fmt/pull/3967, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
367 |
https://github.com/fmtlib/fmt/pull/3968, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
368 |
https://github.com/fmtlib/fmt/pull/3972, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
369 |
https://github.com/fmtlib/fmt/pull/3983, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
370 |
https://github.com/fmtlib/fmt/issues/3992, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
371 |
https://github.com/fmtlib/fmt/pull/3995, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
372 |
https://github.com/fmtlib/fmt/pull/4009, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
373 |
https://github.com/fmtlib/fmt/pull/4023). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
374 |
Thanks @hmbj, @phprus, @res2k, @Baardi, @matt77hias, @waywardmonkeys, @hmbj, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
375 |
@yakra, @prlw1, @Arghnews, @mtillmann0, @ShifftC, @eepp, @jimmy-park and |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
376 |
@ChristianGebhardt. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
377 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
378 |
# 10.2.1 - 2024-01-04 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
379 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
380 |
- Fixed ABI compatibility with earlier 10.x versions |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
381 |
(https://github.com/fmtlib/fmt/issues/3785, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
382 |
https://github.com/fmtlib/fmt/pull/3786). Thanks @saraedum. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
383 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
384 |
# 10.2.0 - 2024-01-01 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
385 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
386 |
- Added support for the `%j` specifier (the number of days) for |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
387 |
`std::chrono::duration` (https://github.com/fmtlib/fmt/issues/3643, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
388 |
https://github.com/fmtlib/fmt/pull/3732). Thanks @intelfx. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
389 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
390 |
- Added support for the chrono suffix for days and changed |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
391 |
the suffix for minutes from "m" to the correct "min" |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
392 |
(https://github.com/fmtlib/fmt/issues/3662, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
393 |
https://github.com/fmtlib/fmt/pull/3664). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
394 |
For example ([godbolt](https://godbolt.org/z/9KhMnq9ba)): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
395 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
396 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
397 |
#include <fmt/chrono.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
398 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
399 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
400 |
fmt::print("{}\n", std::chrono::days(42)); // prints "42d" |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
401 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
402 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
403 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
404 |
Thanks @Richardk2n. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
405 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
406 |
- Fixed an overflow in `std::chrono::time_point` formatting with large dates |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
407 |
(https://github.com/fmtlib/fmt/issues/3725, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
408 |
https://github.com/fmtlib/fmt/pull/3727). Thanks @cschreib. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
409 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
410 |
- Added a formatter for `std::source_location` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
411 |
(https://github.com/fmtlib/fmt/pull/3730). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
412 |
For example ([godbolt](https://godbolt.org/z/YajfKjhhr)): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
413 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
414 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
415 |
#include <source_location> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
416 |
#include <fmt/std.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
417 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
418 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
419 |
fmt::print("{}\n", std::source_location::current()); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
420 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
421 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
422 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
423 |
prints |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
424 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
425 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
426 |
/app/example.cpp:5:51: int main() |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
427 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
428 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
429 |
Thanks @felix642. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
430 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
431 |
- Added a formatter for `std::bitset` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
432 |
(https://github.com/fmtlib/fmt/pull/3660). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
433 |
For example ([godbolt](https://godbolt.org/z/bdEaGeYxe)): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
434 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
435 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
436 |
#include <bitset> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
437 |
#include <fmt/std.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
438 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
439 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
440 |
fmt::print("{}\n", std::bitset<6>(42)); // prints "101010" |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
441 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
442 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
443 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
444 |
Thanks @muggenhor. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
445 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
446 |
- Added an experimental `nested_formatter` that provides an easy way of |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
447 |
applying a formatter to one or more subobjects while automatically handling |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
448 |
width, fill and alignment. For example: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
449 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
450 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
451 |
#include <fmt/format.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
452 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
453 |
struct point { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
454 |
double x, y; |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
455 |
}; |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
456 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
457 |
template <> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
458 |
struct fmt::formatter<point> : nested_formatter<double> { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
459 |
auto format(point p, format_context& ctx) const { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
460 |
return write_padded(ctx, [=](auto out) { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
461 |
return format_to(out, "({}, {})", nested(p.x), nested(p.y)); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
462 |
}); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
463 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
464 |
}; |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
465 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
466 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
467 |
fmt::print("[{:>20.2f}]", point{1, 2}); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
468 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
469 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
470 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
471 |
prints |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
472 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
473 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
474 |
[ (1.00, 2.00)] |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
475 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
476 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
477 |
- Added the generic representation (`g`) to `std::filesystem::path` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
478 |
(https://github.com/fmtlib/fmt/issues/3715, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
479 |
https://github.com/fmtlib/fmt/pull/3729). For example: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
480 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
481 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
482 |
#include <filesystem> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
483 |
#include <fmt/std.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
484 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
485 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
486 |
fmt::print("{:g}\n", std::filesystem::path("C:\\foo")); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
487 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
488 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
489 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
490 |
prints `"C:/foo"` on Windows. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
491 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
492 |
Thanks @js324. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
493 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
494 |
- Made `format_as` work with references |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
495 |
(https://github.com/fmtlib/fmt/pull/3739). Thanks @tchaikov. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
496 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
497 |
- Fixed formatting of invalid UTF-8 with precision |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
498 |
(https://github.com/fmtlib/fmt/issues/3284). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
499 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
500 |
- Fixed an inconsistency between `fmt::to_string` and `fmt::format` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
501 |
(https://github.com/fmtlib/fmt/issues/3684). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
502 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
503 |
- Disallowed unsafe uses of `fmt::styled` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
504 |
(https://github.com/fmtlib/fmt/issues/3625): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
505 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
506 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
507 |
auto s = fmt::styled(std::string("dangle"), fmt::emphasis::bold); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
508 |
fmt::print("{}\n", s); // compile error |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
509 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
510 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
511 |
Pass `fmt::styled(...)` as a parameter instead. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
512 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
513 |
- Added a null check when formatting a C string with the `s` specifier |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
514 |
(https://github.com/fmtlib/fmt/issues/3706). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
515 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
516 |
- Disallowed the `c` specifier for `bool` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
517 |
(https://github.com/fmtlib/fmt/issues/3726, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
518 |
https://github.com/fmtlib/fmt/pull/3734). Thanks @js324. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
519 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
520 |
- Made the default formatting unlocalized in `fmt::ostream_formatter` for |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
521 |
consistency with the rest of the library |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
522 |
(https://github.com/fmtlib/fmt/issues/3460). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
523 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
524 |
- Fixed localized formatting in bases other than decimal |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
525 |
(https://github.com/fmtlib/fmt/issues/3693, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
526 |
https://github.com/fmtlib/fmt/pull/3750). Thanks @js324. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
527 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
528 |
- Fixed a performance regression in experimental `fmt::ostream::print` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
529 |
(https://github.com/fmtlib/fmt/issues/3674). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
530 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
531 |
- Added synchronization with the underlying output stream when writing to |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
532 |
the Windows console |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
533 |
(https://github.com/fmtlib/fmt/pull/3668, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
534 |
https://github.com/fmtlib/fmt/issues/3688, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
535 |
https://github.com/fmtlib/fmt/pull/3689). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
536 |
Thanks @Roman-Koshelev and @dimztimz. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
537 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
538 |
- Changed to only export `format_error` when {fmt} is built as a shared |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
539 |
library (https://github.com/fmtlib/fmt/issues/3626, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
540 |
https://github.com/fmtlib/fmt/pull/3627). Thanks @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
541 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
542 |
- Made `fmt::streamed` `constexpr`. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
543 |
(https://github.com/fmtlib/fmt/pull/3650). Thanks @muggenhor. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
544 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
545 |
- Made `fmt::format_int` `constexpr` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
546 |
(https://github.com/fmtlib/fmt/issues/4031, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
547 |
https://github.com/fmtlib/fmt/pull/4032). Thanks @dixlorenz. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
548 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
549 |
- Enabled `consteval` on older versions of MSVC |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
550 |
(https://github.com/fmtlib/fmt/pull/3757). Thanks @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
551 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
552 |
- Added an option to build without `wchar_t` support on Windows |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
553 |
(https://github.com/fmtlib/fmt/issues/3631, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
554 |
https://github.com/fmtlib/fmt/pull/3636). Thanks @glebm. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
555 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
556 |
- Improved build and CI configuration |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
557 |
(https://github.com/fmtlib/fmt/pull/3679, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
558 |
https://github.com/fmtlib/fmt/issues/3701, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
559 |
https://github.com/fmtlib/fmt/pull/3702, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
560 |
https://github.com/fmtlib/fmt/pull/3749). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
561 |
Thanks @jcar87, @pklima and @tchaikov. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
562 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
563 |
- Fixed various warnings, compilation and test issues |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
564 |
(https://github.com/fmtlib/fmt/issues/3607, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
565 |
https://github.com/fmtlib/fmt/pull/3610, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
566 |
https://github.com/fmtlib/fmt/pull/3624, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
567 |
https://github.com/fmtlib/fmt/pull/3630, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
568 |
https://github.com/fmtlib/fmt/pull/3634, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
569 |
https://github.com/fmtlib/fmt/pull/3638, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
570 |
https://github.com/fmtlib/fmt/issues/3645, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
571 |
https://github.com/fmtlib/fmt/issues/3646, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
572 |
https://github.com/fmtlib/fmt/pull/3647, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
573 |
https://github.com/fmtlib/fmt/pull/3652, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
574 |
https://github.com/fmtlib/fmt/issues/3654, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
575 |
https://github.com/fmtlib/fmt/pull/3663, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
576 |
https://github.com/fmtlib/fmt/issues/3670, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
577 |
https://github.com/fmtlib/fmt/pull/3680, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
578 |
https://github.com/fmtlib/fmt/issues/3694, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
579 |
https://github.com/fmtlib/fmt/pull/3695, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
580 |
https://github.com/fmtlib/fmt/pull/3699, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
581 |
https://github.com/fmtlib/fmt/issues/3705, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
582 |
https://github.com/fmtlib/fmt/issues/3710, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
583 |
https://github.com/fmtlib/fmt/issues/3712, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
584 |
https://github.com/fmtlib/fmt/pull/3713, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
585 |
https://github.com/fmtlib/fmt/issues/3714, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
586 |
https://github.com/fmtlib/fmt/pull/3716, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
587 |
https://github.com/fmtlib/fmt/pull/3723, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
588 |
https://github.com/fmtlib/fmt/issues/3738, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
589 |
https://github.com/fmtlib/fmt/issues/3740, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
590 |
https://github.com/fmtlib/fmt/pull/3741, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
591 |
https://github.com/fmtlib/fmt/pull/3743, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
592 |
https://github.com/fmtlib/fmt/issues/3745, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
593 |
https://github.com/fmtlib/fmt/pull/3747, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
594 |
https://github.com/fmtlib/fmt/pull/3748, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
595 |
https://github.com/fmtlib/fmt/pull/3751, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
596 |
https://github.com/fmtlib/fmt/pull/3754, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
597 |
https://github.com/fmtlib/fmt/pull/3755, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
598 |
https://github.com/fmtlib/fmt/issues/3760, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
599 |
https://github.com/fmtlib/fmt/pull/3762, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
600 |
https://github.com/fmtlib/fmt/issues/3763, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
601 |
https://github.com/fmtlib/fmt/pull/3764, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
602 |
https://github.com/fmtlib/fmt/issues/3774, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
603 |
https://github.com/fmtlib/fmt/pull/3779). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
604 |
Thanks @danakj, @vinayyadav3016, @cyyever, @phprus, @qimiko, @saschasc, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
605 |
@gsjaardema, @lazka, @Zhaojun-Liu, @carlsmedstad, @hotwatermorning, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
606 |
@cptFracassa, @kuguma, @PeterJohnson, @H1X4Dev, @asantoni, @eltociear, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
607 |
@msimberg, @tchaikov, @waywardmonkeys. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
608 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
609 |
- Improved documentation and README |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
610 |
(https://github.com/fmtlib/fmt/issues/2086, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
611 |
https://github.com/fmtlib/fmt/issues/3637, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
612 |
https://github.com/fmtlib/fmt/pull/3642, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
613 |
https://github.com/fmtlib/fmt/pull/3653, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
614 |
https://github.com/fmtlib/fmt/pull/3655, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
615 |
https://github.com/fmtlib/fmt/pull/3661, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
616 |
https://github.com/fmtlib/fmt/issues/3673, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
617 |
https://github.com/fmtlib/fmt/pull/3677, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
618 |
https://github.com/fmtlib/fmt/pull/3737, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
619 |
https://github.com/fmtlib/fmt/issues/3742, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
620 |
https://github.com/fmtlib/fmt/pull/3744). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
621 |
Thanks @idzm, @perlun, @joycebrum, @fennewald, @reinhardt1053, @GeorgeLS. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
622 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
623 |
- Updated CI dependencies |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
624 |
(https://github.com/fmtlib/fmt/pull/3615, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
625 |
https://github.com/fmtlib/fmt/pull/3622, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
626 |
https://github.com/fmtlib/fmt/pull/3623, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
627 |
https://github.com/fmtlib/fmt/pull/3666, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
628 |
https://github.com/fmtlib/fmt/pull/3696, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
629 |
https://github.com/fmtlib/fmt/pull/3697, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
630 |
https://github.com/fmtlib/fmt/pull/3759, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
631 |
https://github.com/fmtlib/fmt/pull/3782). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
632 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
633 |
# 10.1.1 - 2023-08-28 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
634 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
635 |
- Added formatters for `std::atomic` and `atomic_flag` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
636 |
(https://github.com/fmtlib/fmt/pull/3574, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
637 |
https://github.com/fmtlib/fmt/pull/3594). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
638 |
Thanks @wangzw and @AlexGuteniev. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
639 |
- Fixed an error about partial specialization of `formatter<string>` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
640 |
after instantiation when compiled with gcc and C++20 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
641 |
(https://github.com/fmtlib/fmt/issues/3584). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
642 |
- Fixed compilation as a C++20 module with gcc and clang |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
643 |
(https://github.com/fmtlib/fmt/issues/3587, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
644 |
https://github.com/fmtlib/fmt/pull/3597, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
645 |
https://github.com/fmtlib/fmt/pull/3605). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
646 |
Thanks @MathewBensonCode. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
647 |
- Made `fmt::to_string` work with types that have `format_as` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
648 |
overloads (https://github.com/fmtlib/fmt/pull/3575). Thanks @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
649 |
- Made `formatted_size` work with integral format specifiers at |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
650 |
compile time (https://github.com/fmtlib/fmt/pull/3591). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
651 |
Thanks @elbeno. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
652 |
- Fixed a warning about the `no_unique_address` attribute on clang-cl |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
653 |
(https://github.com/fmtlib/fmt/pull/3599). Thanks @lukester1975. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
654 |
- Improved compatibility with the legacy GBK encoding |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
655 |
(https://github.com/fmtlib/fmt/issues/3598, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
656 |
https://github.com/fmtlib/fmt/pull/3599). Thanks @YuHuanTin. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
657 |
- Added OpenSSF Scorecard analysis |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
658 |
(https://github.com/fmtlib/fmt/issues/3530, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
659 |
https://github.com/fmtlib/fmt/pull/3571). Thanks @joycebrum. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
660 |
- Updated CI dependencies |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
661 |
(https://github.com/fmtlib/fmt/pull/3591, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
662 |
https://github.com/fmtlib/fmt/pull/3592, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
663 |
https://github.com/fmtlib/fmt/pull/3593, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
664 |
https://github.com/fmtlib/fmt/pull/3602). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
665 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
666 |
# 10.1.0 - 2023-08-12 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
667 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
668 |
- Optimized format string compilation resulting in up to 40% speed up |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
669 |
in compiled `format_to` and \~4x speed up in compiled `format_to_n` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
670 |
on a concatenation benchmark |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
671 |
(https://github.com/fmtlib/fmt/issues/3133, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
672 |
https://github.com/fmtlib/fmt/issues/3484). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
673 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
674 |
{fmt} 10.0: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
675 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
676 |
--------------------------------------------------------- |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
677 |
Benchmark Time CPU Iterations |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
678 |
--------------------------------------------------------- |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
679 |
BM_format_to 78.9 ns 78.9 ns 8881746 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
680 |
BM_format_to_n 568 ns 568 ns 1232089 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
681 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
682 |
{fmt} 10.1: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
683 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
684 |
--------------------------------------------------------- |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
685 |
Benchmark Time CPU Iterations |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
686 |
--------------------------------------------------------- |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
687 |
BM_format_to 54.9 ns 54.9 ns 12727944 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
688 |
BM_format_to_n 133 ns 133 ns 5257795 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
689 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
690 |
- Optimized storage of an empty allocator in `basic_memory_buffer` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
691 |
(https://github.com/fmtlib/fmt/pull/3485). Thanks @Minty-Meeo. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
692 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
693 |
- Added formatters for proxy references to elements of |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
694 |
`std::vector<bool>` and `std::bitset<N>` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
695 |
(https://github.com/fmtlib/fmt/issues/3567, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
696 |
https://github.com/fmtlib/fmt/pull/3570). For example |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
697 |
([godbolt](https://godbolt.org/z/zYb79Pvn8)): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
698 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
699 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
700 |
#include <vector> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
701 |
#include <fmt/std.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
702 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
703 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
704 |
auto v = std::vector<bool>{true}; |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
705 |
fmt::print("{}", v[0]); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
706 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
707 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
708 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
709 |
Thanks @phprus and @felix642. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
710 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
711 |
- Fixed an ambiguous formatter specialization for containers that look |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
712 |
like container adaptors such as `boost::flat_set` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
713 |
(https://github.com/fmtlib/fmt/issues/3556, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
714 |
https://github.com/fmtlib/fmt/pull/3561). Thanks @5chmidti. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
715 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
716 |
- Fixed compilation when formatting durations not convertible from |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
717 |
`std::chrono::seconds` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
718 |
(https://github.com/fmtlib/fmt/pull/3430). Thanks @patlkli. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
719 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
720 |
- Made the `formatter` specialization for `char*` const-correct |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
721 |
(https://github.com/fmtlib/fmt/pull/3432). Thanks @timsong-cpp. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
722 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
723 |
- Made `{}` and `{:}` handled consistently during compile-time checks |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
724 |
(https://github.com/fmtlib/fmt/issues/3526). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
725 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
726 |
- Disallowed passing temporaries to `make_format_args` to improve API |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
727 |
safety by preventing dangling references. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
728 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
729 |
- Improved the compile-time error for unformattable types |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
730 |
(https://github.com/fmtlib/fmt/pull/3478). Thanks @BRevzin. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
731 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
732 |
- Improved the floating-point formatter |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
733 |
(https://github.com/fmtlib/fmt/pull/3448, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
734 |
https://github.com/fmtlib/fmt/pull/3450). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
735 |
Thanks @florimond-collette. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
736 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
737 |
- Fixed handling of precision for `long double` larger than 64 bits. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
738 |
(https://github.com/fmtlib/fmt/issues/3539, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
739 |
https://github.com/fmtlib/fmt/issues/3564). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
740 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
741 |
- Made floating-point and chrono tests less platform-dependent |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
742 |
(https://github.com/fmtlib/fmt/issues/3337, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
743 |
https://github.com/fmtlib/fmt/issues/3433, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
744 |
https://github.com/fmtlib/fmt/pull/3434). Thanks @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
745 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
746 |
- Removed the remnants of the Grisu floating-point formatter that has |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
747 |
been replaced by Dragonbox in earlier versions. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
748 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
749 |
- Added `throw_format_error` to the public API |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
750 |
(https://github.com/fmtlib/fmt/pull/3551). Thanks @mjerabek. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
751 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
752 |
- Made `FMT_THROW` assert even if assertions are disabled when |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
753 |
compiling with exceptions disabled |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
754 |
(https://github.com/fmtlib/fmt/issues/3418, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
755 |
https://github.com/fmtlib/fmt/pull/3439). Thanks @BRevzin. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
756 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
757 |
- Made `format_as` and `std::filesystem::path` formatter work with |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
758 |
exotic code unit types. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
759 |
(https://github.com/fmtlib/fmt/pull/3457, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
760 |
https://github.com/fmtlib/fmt/pull/3476). Thanks @gix and @hmbj. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
761 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
762 |
- Added support for the `?` format specifier to |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
763 |
`std::filesystem::path` and made the default unescaped for |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
764 |
consistency with strings. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
765 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
766 |
- Deprecated the wide stream overload of `printf`. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
767 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
768 |
- Removed unused `basic_printf_parse_context`. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
769 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
770 |
- Improved RTTI detection used when formatting exceptions |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
771 |
(https://github.com/fmtlib/fmt/pull/3468). Thanks @danakj. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
772 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
773 |
- Improved compatibility with VxWorks7 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
774 |
(https://github.com/fmtlib/fmt/pull/3467). Thanks @wenshan1. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
775 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
776 |
- Improved documentation |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
777 |
(https://github.com/fmtlib/fmt/issues/3174, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
778 |
https://github.com/fmtlib/fmt/issues/3423, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
779 |
https://github.com/fmtlib/fmt/pull/3454, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
780 |
https://github.com/fmtlib/fmt/issues/3458, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
781 |
https://github.com/fmtlib/fmt/pull/3461, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
782 |
https://github.com/fmtlib/fmt/issues/3487, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
783 |
https://github.com/fmtlib/fmt/pull/3515). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
784 |
Thanks @zencatalyst, @rlalik and @mikecrowe. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
785 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
786 |
- Improved build and CI configurations |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
787 |
(https://github.com/fmtlib/fmt/issues/3449, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
788 |
https://github.com/fmtlib/fmt/pull/3451, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
789 |
https://github.com/fmtlib/fmt/pull/3452, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
790 |
https://github.com/fmtlib/fmt/pull/3453, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
791 |
https://github.com/fmtlib/fmt/pull/3459, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
792 |
https://github.com/fmtlib/fmt/issues/3481, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
793 |
https://github.com/fmtlib/fmt/pull/3486, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
794 |
https://github.com/fmtlib/fmt/issues/3489, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
795 |
https://github.com/fmtlib/fmt/pull/3496, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
796 |
https://github.com/fmtlib/fmt/issues/3517, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
797 |
https://github.com/fmtlib/fmt/pull/3523, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
798 |
https://github.com/fmtlib/fmt/pull/3563). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
799 |
Thanks @joycebrum, @glebm, @phprus, @petrmanek, @setoye and @abouvier. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
800 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
801 |
- Fixed various warnings and compilation issues |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
802 |
(https://github.com/fmtlib/fmt/issues/3408, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
803 |
https://github.com/fmtlib/fmt/issues/3424, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
804 |
https://github.com/fmtlib/fmt/issues/3444, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
805 |
https://github.com/fmtlib/fmt/pull/3446, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
806 |
https://github.com/fmtlib/fmt/pull/3475, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
807 |
https://github.com/fmtlib/fmt/pull/3482, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
808 |
https://github.com/fmtlib/fmt/issues/3492, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
809 |
https://github.com/fmtlib/fmt/pull/3493, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
810 |
https://github.com/fmtlib/fmt/pull/3508, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
811 |
https://github.com/fmtlib/fmt/issues/3509, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
812 |
https://github.com/fmtlib/fmt/issues/3533, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
813 |
https://github.com/fmtlib/fmt/pull/3542, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
814 |
https://github.com/fmtlib/fmt/issues/3543, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
815 |
https://github.com/fmtlib/fmt/issues/3540, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
816 |
https://github.com/fmtlib/fmt/pull/3544, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
817 |
https://github.com/fmtlib/fmt/issues/3548, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
818 |
https://github.com/fmtlib/fmt/pull/3549, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
819 |
https://github.com/fmtlib/fmt/pull/3550, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
820 |
https://github.com/fmtlib/fmt/pull/3552). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
821 |
Thanks @adesitter, @hmbj, @Minty-Meeo, @phprus, @TobiSchluter, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
822 |
@kieranclancy, @alexeedm, @jurihock, @Ozomahtli and @razaqq. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
823 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
824 |
# 10.0.0 - 2023-05-09 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
825 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
826 |
- Replaced Grisu with a new floating-point formatting algorithm for |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
827 |
given precision (https://github.com/fmtlib/fmt/issues/3262, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
828 |
https://github.com/fmtlib/fmt/issues/2750, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
829 |
https://github.com/fmtlib/fmt/pull/3269, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
830 |
https://github.com/fmtlib/fmt/pull/3276). The new algorithm |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
831 |
is based on Dragonbox already used for the shortest representation |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
832 |
and gives substantial performance improvement: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
833 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
834 |
 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
835 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
836 |
- Red: new algorithm |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
837 |
- Green: new algorithm with `FMT_USE_FULL_CACHE_DRAGONBOX` defined |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
838 |
to 1 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
839 |
- Blue: old algorithm |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
840 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
841 |
Thanks @jk-jeon. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
842 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
843 |
- Replaced `snprintf`-based hex float formatter with an internal |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
844 |
implementation (https://github.com/fmtlib/fmt/pull/3179, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
845 |
https://github.com/fmtlib/fmt/pull/3203). This removes the |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
846 |
last usage of `s(n)printf` in {fmt}. Thanks @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
847 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
848 |
- Fixed alignment of floating-point numbers with localization |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
849 |
(https://github.com/fmtlib/fmt/issues/3263, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
850 |
https://github.com/fmtlib/fmt/pull/3272). Thanks @ShawnZhong. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
851 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
852 |
- Made handling of `#` consistent with `std::format`. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
853 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
854 |
- Improved C++20 module support |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
855 |
(https://github.com/fmtlib/fmt/pull/3134, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
856 |
https://github.com/fmtlib/fmt/pull/3254, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
857 |
https://github.com/fmtlib/fmt/pull/3386, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
858 |
https://github.com/fmtlib/fmt/pull/3387, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
859 |
https://github.com/fmtlib/fmt/pull/3388, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
860 |
https://github.com/fmtlib/fmt/pull/3392, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
861 |
https://github.com/fmtlib/fmt/pull/3397, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
862 |
https://github.com/fmtlib/fmt/pull/3399, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
863 |
https://github.com/fmtlib/fmt/pull/3400). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
864 |
Thanks @laitingsheng, @Orvid and @DanielaE. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
865 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
866 |
- Switched to the [modules CMake library](https://github.com/vitaut/modules) |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
867 |
which allows building {fmt} as a C++20 module with clang: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
868 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
869 |
CXX=clang++ cmake -DFMT_MODULE=ON . |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
870 |
make |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
871 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
872 |
- Made `format_as` work with any user-defined type and not just enums. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
873 |
For example ([godbolt](https://godbolt.org/z/b7rqhq5Kh)): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
874 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
875 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
876 |
#include <fmt/format.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
877 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
878 |
struct floaty_mc_floatface { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
879 |
double value; |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
880 |
}; |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
881 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
882 |
auto format_as(floaty_mc_floatface f) { return f.value; } |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
883 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
884 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
885 |
fmt::print("{:8}\n", floaty_mc_floatface{0.42}); // prints " 0.42" |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
886 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
887 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
888 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
889 |
- Removed deprecated implicit conversions for enums and conversions to |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
890 |
primitive types for compatibility with `std::format` and to prevent |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
891 |
potential ODR violations. Use `format_as` instead. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
892 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
893 |
- Added support for fill, align and width to the time point formatter |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
894 |
(https://github.com/fmtlib/fmt/issues/3237, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
895 |
https://github.com/fmtlib/fmt/pull/3260, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
896 |
https://github.com/fmtlib/fmt/pull/3275). For example |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
897 |
([godbolt](https://godbolt.org/z/rKP6MGz6c)): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
898 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
899 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
900 |
#include <fmt/chrono.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
901 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
902 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
903 |
// prints " 2023" |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
904 |
fmt::print("{:>8%Y}\n", std::chrono::system_clock::now()); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
905 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
906 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
907 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
908 |
Thanks @ShawnZhong. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
909 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
910 |
- Implemented formatting of subseconds |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
911 |
(https://github.com/fmtlib/fmt/issues/2207, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
912 |
https://github.com/fmtlib/fmt/issues/3117, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
913 |
https://github.com/fmtlib/fmt/pull/3115, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
914 |
https://github.com/fmtlib/fmt/pull/3143, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
915 |
https://github.com/fmtlib/fmt/pull/3144, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
916 |
https://github.com/fmtlib/fmt/pull/3349). For example |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
917 |
([godbolt](https://godbolt.org/z/45738oGEo)): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
918 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
919 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
920 |
#include <fmt/chrono.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
921 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
922 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
923 |
// prints 01.234567 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
924 |
fmt::print("{:%S}\n", std::chrono::microseconds(1234567)); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
925 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
926 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
927 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
928 |
Thanks @patrickroocks @phprus and @BRevzin. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
929 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
930 |
- Added precision support to `%S` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
931 |
(https://github.com/fmtlib/fmt/pull/3148). Thanks @SappyJoy |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
932 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
933 |
- Added support for `std::utc_time` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
934 |
(https://github.com/fmtlib/fmt/issues/3098, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
935 |
https://github.com/fmtlib/fmt/pull/3110). Thanks @patrickroocks. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
936 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
937 |
- Switched formatting of `std::chrono::system_clock` from local time |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
938 |
to UTC for compatibility with the standard |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
939 |
(https://github.com/fmtlib/fmt/issues/3199, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
940 |
https://github.com/fmtlib/fmt/pull/3230). Thanks @ned14. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
941 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
942 |
- Added support for `%Ez` and `%Oz` to chrono formatters. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
943 |
(https://github.com/fmtlib/fmt/issues/3220, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
944 |
https://github.com/fmtlib/fmt/pull/3222). Thanks @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
945 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
946 |
- Improved validation of format specifiers for `std::chrono::duration` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
947 |
(https://github.com/fmtlib/fmt/issues/3219, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
948 |
https://github.com/fmtlib/fmt/pull/3232). Thanks @ShawnZhong. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
949 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
950 |
- Fixed formatting of time points before the epoch |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
951 |
(https://github.com/fmtlib/fmt/issues/3117, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
952 |
https://github.com/fmtlib/fmt/pull/3261). For example |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
953 |
([godbolt](https://godbolt.org/z/f7bcznb3W)): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
954 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
955 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
956 |
#include <fmt/chrono.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
957 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
958 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
959 |
auto t = std::chrono::system_clock::from_time_t(0) - |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
960 |
std::chrono::milliseconds(250); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
961 |
fmt::print("{:%S}\n", t); // prints 59.750000000 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
962 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
963 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
964 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
965 |
Thanks @ShawnZhong. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
966 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
967 |
- Experimental: implemented glibc extension for padding seconds, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
968 |
minutes and hours |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
969 |
(https://github.com/fmtlib/fmt/issues/2959, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
970 |
https://github.com/fmtlib/fmt/pull/3271). Thanks @ShawnZhong. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
971 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
972 |
- Added a formatter for `std::exception` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
973 |
(https://github.com/fmtlib/fmt/issues/2977, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
974 |
https://github.com/fmtlib/fmt/issues/3012, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
975 |
https://github.com/fmtlib/fmt/pull/3062, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
976 |
https://github.com/fmtlib/fmt/pull/3076, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
977 |
https://github.com/fmtlib/fmt/pull/3119). For example |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
978 |
([godbolt](https://godbolt.org/z/8xoWGs9e4)): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
979 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
980 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
981 |
#include <fmt/std.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
982 |
#include <vector> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
983 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
984 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
985 |
try { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
986 |
std::vector<bool>().at(0); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
987 |
} catch(const std::exception& e) { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
988 |
fmt::print("{}", e); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
989 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
990 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
991 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
992 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
993 |
prints: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
994 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
995 |
vector<bool>::_M_range_check: __n (which is 0) >= this->size() (which is 0) |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
996 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
997 |
on libstdc++. Thanks @zach2good and @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
998 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
999 |
- Moved `std::error_code` formatter from `fmt/os.h` to `fmt/std.h`. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1000 |
(https://github.com/fmtlib/fmt/pull/3125). Thanks @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1001 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1002 |
- Added formatters for standard container adapters: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1003 |
`std::priority_queue`, `std::queue` and `std::stack` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1004 |
(https://github.com/fmtlib/fmt/issues/3215, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1005 |
https://github.com/fmtlib/fmt/pull/3279). For example |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1006 |
([godbolt](https://godbolt.org/z/74h1xY9qK)): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1007 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1008 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1009 |
#include <fmt/ranges.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1010 |
#include <stack> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1011 |
#include <vector> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1012 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1013 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1014 |
auto s = std::stack<bool, std::vector<bool>>(); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1015 |
for (auto b: {true, false, true}) s.push(b); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1016 |
fmt::print("{}\n", s); // prints [true, false, true] |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1017 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1018 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1019 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1020 |
Thanks @ShawnZhong. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1021 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1022 |
- Added a formatter for `std::optional` to `fmt/std.h` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1023 |
(https://github.com/fmtlib/fmt/issues/1367, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1024 |
https://github.com/fmtlib/fmt/pull/3303). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1025 |
Thanks @tom-huntington. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1026 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1027 |
- Fixed formatting of valueless by exception variants |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1028 |
(https://github.com/fmtlib/fmt/pull/3347). Thanks @TheOmegaCarrot. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1029 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1030 |
- Made `fmt::ptr` accept `unique_ptr` with a custom deleter |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1031 |
(https://github.com/fmtlib/fmt/pull/3177). Thanks @hmbj. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1032 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1033 |
- Fixed formatting of noncopyable ranges and nested ranges of chars |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1034 |
(https://github.com/fmtlib/fmt/pull/3158 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1035 |
https://github.com/fmtlib/fmt/issues/3286, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1036 |
https://github.com/fmtlib/fmt/pull/3290). Thanks @BRevzin. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1037 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1038 |
- Fixed issues with formatting of paths and ranges of paths |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1039 |
(https://github.com/fmtlib/fmt/issues/3319, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1040 |
https://github.com/fmtlib/fmt/pull/3321 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1041 |
https://github.com/fmtlib/fmt/issues/3322). Thanks @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1042 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1043 |
- Improved handling of invalid Unicode in paths. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1044 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1045 |
- Enabled compile-time checks on Apple clang 14 and later |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1046 |
(https://github.com/fmtlib/fmt/pull/3331). Thanks @cloyce. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1047 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1048 |
- Improved compile-time checks of named arguments |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1049 |
(https://github.com/fmtlib/fmt/issues/3105, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1050 |
https://github.com/fmtlib/fmt/pull/3214). Thanks @rbrich. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1051 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1052 |
- Fixed formatting when both alignment and `0` are given |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1053 |
(https://github.com/fmtlib/fmt/issues/3236, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1054 |
https://github.com/fmtlib/fmt/pull/3248). Thanks @ShawnZhong. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1055 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1056 |
- Improved Unicode support in the experimental file API on Windows |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1057 |
(https://github.com/fmtlib/fmt/issues/3234, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1058 |
https://github.com/fmtlib/fmt/pull/3293). Thanks @Fros1er. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1059 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1060 |
- Unified UTF transcoding |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1061 |
(https://github.com/fmtlib/fmt/pull/3416). Thanks @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1062 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1063 |
- Added support for UTF-8 digit separators via an experimental locale |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1064 |
facet (https://github.com/fmtlib/fmt/issues/1861). For |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1065 |
example ([godbolt](https://godbolt.org/z/f7bcznb3W)): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1066 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1067 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1068 |
auto loc = std::locale( |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1069 |
std::locale(), new fmt::format_facet<std::locale>("’")); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1070 |
auto s = fmt::format(loc, "{:L}", 1000); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1071 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1072 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1073 |
where `’` is U+2019 used as a digit separator in the de_CH locale. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1074 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1075 |
- Added an overload of `formatted_size` that takes a locale |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1076 |
(https://github.com/fmtlib/fmt/issues/3084, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1077 |
https://github.com/fmtlib/fmt/pull/3087). Thanks @gerboengels. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1078 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1079 |
- Removed the deprecated `FMT_DEPRECATED_OSTREAM`. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1080 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1081 |
- Fixed a UB when using a null `std::string_view` with |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1082 |
`fmt::to_string` or format string compilation |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1083 |
(https://github.com/fmtlib/fmt/issues/3241, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1084 |
https://github.com/fmtlib/fmt/pull/3244). Thanks @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1085 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1086 |
- Added `starts_with` to the fallback `string_view` implementation |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1087 |
(https://github.com/fmtlib/fmt/pull/3080). Thanks @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1088 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1089 |
- Added `fmt::basic_format_string::get()` for compatibility with |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1090 |
`basic_format_string` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1091 |
(https://github.com/fmtlib/fmt/pull/3111). Thanks @huangqinjin. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1092 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1093 |
- Added `println` for compatibility with C++23 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1094 |
(https://github.com/fmtlib/fmt/pull/3267). Thanks @ShawnZhong. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1095 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1096 |
- Renamed the `FMT_EXPORT` macro for shared library usage to |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1097 |
`FMT_LIB_EXPORT`. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1098 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1099 |
- Improved documentation |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1100 |
(https://github.com/fmtlib/fmt/issues/3108, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1101 |
https://github.com/fmtlib/fmt/issues/3169, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1102 |
https://github.com/fmtlib/fmt/pull/3243). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1103 |
https://github.com/fmtlib/fmt/pull/3404, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1104 |
https://github.com/fmtlib/fmt/pull/4002). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1105 |
Thanks @Cleroth, @Vertexwahn and @yujincheng08. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1106 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1107 |
- Improved build configuration and tests |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1108 |
(https://github.com/fmtlib/fmt/pull/3118, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1109 |
https://github.com/fmtlib/fmt/pull/3120, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1110 |
https://github.com/fmtlib/fmt/pull/3188, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1111 |
https://github.com/fmtlib/fmt/issues/3189, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1112 |
https://github.com/fmtlib/fmt/pull/3198, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1113 |
https://github.com/fmtlib/fmt/pull/3205, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1114 |
https://github.com/fmtlib/fmt/pull/3207, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1115 |
https://github.com/fmtlib/fmt/pull/3210, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1116 |
https://github.com/fmtlib/fmt/pull/3240, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1117 |
https://github.com/fmtlib/fmt/pull/3256, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1118 |
https://github.com/fmtlib/fmt/pull/3264, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1119 |
https://github.com/fmtlib/fmt/issues/3299, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1120 |
https://github.com/fmtlib/fmt/pull/3302, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1121 |
https://github.com/fmtlib/fmt/pull/3312, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1122 |
https://github.com/fmtlib/fmt/issues/3317, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1123 |
https://github.com/fmtlib/fmt/pull/3328, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1124 |
https://github.com/fmtlib/fmt/pull/3333, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1125 |
https://github.com/fmtlib/fmt/pull/3369, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1126 |
https://github.com/fmtlib/fmt/issues/3373, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1127 |
https://github.com/fmtlib/fmt/pull/3395, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1128 |
https://github.com/fmtlib/fmt/pull/3406, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1129 |
https://github.com/fmtlib/fmt/pull/3411). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1130 |
Thanks @dimztimz, @phprus, @DavidKorczynski, @ChrisThrasher, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1131 |
@FrancoisCarouge, @kennyweiss, @luzpaz, @codeinred, @Mixaill, @joycebrum, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1132 |
@kevinhwang and @Vertexwahn. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1133 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1134 |
- Fixed a regression in handling empty format specifiers after a colon |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1135 |
(`{:}`) (https://github.com/fmtlib/fmt/pull/3086). Thanks @oxidase. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1136 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1137 |
- Worked around a broken implementation of |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1138 |
`std::is_constant_evaluated` in some versions of libstdc++ on clang |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1139 |
(https://github.com/fmtlib/fmt/issues/3247, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1140 |
https://github.com/fmtlib/fmt/pull/3281). Thanks @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1141 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1142 |
- Fixed formatting of volatile variables |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1143 |
(https://github.com/fmtlib/fmt/pull/3068). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1144 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1145 |
- Fixed various warnings and compilation issues |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1146 |
(https://github.com/fmtlib/fmt/pull/3057, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1147 |
https://github.com/fmtlib/fmt/pull/3066, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1148 |
https://github.com/fmtlib/fmt/pull/3072, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1149 |
https://github.com/fmtlib/fmt/pull/3082, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1150 |
https://github.com/fmtlib/fmt/pull/3091, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1151 |
https://github.com/fmtlib/fmt/issues/3092, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1152 |
https://github.com/fmtlib/fmt/pull/3093, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1153 |
https://github.com/fmtlib/fmt/pull/3095, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1154 |
https://github.com/fmtlib/fmt/issues/3096, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1155 |
https://github.com/fmtlib/fmt/pull/3097, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1156 |
https://github.com/fmtlib/fmt/issues/3128, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1157 |
https://github.com/fmtlib/fmt/pull/3129, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1158 |
https://github.com/fmtlib/fmt/pull/3137, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1159 |
https://github.com/fmtlib/fmt/pull/3139, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1160 |
https://github.com/fmtlib/fmt/issues/3140, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1161 |
https://github.com/fmtlib/fmt/pull/3142, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1162 |
https://github.com/fmtlib/fmt/issues/3149, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1163 |
https://github.com/fmtlib/fmt/pull/3150, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1164 |
https://github.com/fmtlib/fmt/issues/3154, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1165 |
https://github.com/fmtlib/fmt/issues/3163, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1166 |
https://github.com/fmtlib/fmt/issues/3178, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1167 |
https://github.com/fmtlib/fmt/pull/3184, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1168 |
https://github.com/fmtlib/fmt/pull/3196, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1169 |
https://github.com/fmtlib/fmt/issues/3204, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1170 |
https://github.com/fmtlib/fmt/pull/3206, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1171 |
https://github.com/fmtlib/fmt/pull/3208, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1172 |
https://github.com/fmtlib/fmt/issues/3213, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1173 |
https://github.com/fmtlib/fmt/pull/3216, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1174 |
https://github.com/fmtlib/fmt/issues/3224, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1175 |
https://github.com/fmtlib/fmt/issues/3226, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1176 |
https://github.com/fmtlib/fmt/issues/3228, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1177 |
https://github.com/fmtlib/fmt/pull/3229, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1178 |
https://github.com/fmtlib/fmt/pull/3259, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1179 |
https://github.com/fmtlib/fmt/issues/3274, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1180 |
https://github.com/fmtlib/fmt/issues/3287, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1181 |
https://github.com/fmtlib/fmt/pull/3288, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1182 |
https://github.com/fmtlib/fmt/issues/3292, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1183 |
https://github.com/fmtlib/fmt/pull/3295, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1184 |
https://github.com/fmtlib/fmt/pull/3296, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1185 |
https://github.com/fmtlib/fmt/issues/3298, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1186 |
https://github.com/fmtlib/fmt/issues/3325, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1187 |
https://github.com/fmtlib/fmt/pull/3326, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1188 |
https://github.com/fmtlib/fmt/issues/3334, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1189 |
https://github.com/fmtlib/fmt/issues/3342, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1190 |
https://github.com/fmtlib/fmt/pull/3343, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1191 |
https://github.com/fmtlib/fmt/issues/3351, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1192 |
https://github.com/fmtlib/fmt/pull/3352, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1193 |
https://github.com/fmtlib/fmt/pull/3362, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1194 |
https://github.com/fmtlib/fmt/issues/3365, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1195 |
https://github.com/fmtlib/fmt/pull/3366, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1196 |
https://github.com/fmtlib/fmt/pull/3374, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1197 |
https://github.com/fmtlib/fmt/issues/3377, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1198 |
https://github.com/fmtlib/fmt/pull/3378, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1199 |
https://github.com/fmtlib/fmt/issues/3381, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1200 |
https://github.com/fmtlib/fmt/pull/3398, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1201 |
https://github.com/fmtlib/fmt/pull/3413, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1202 |
https://github.com/fmtlib/fmt/issues/3415). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1203 |
Thanks @phprus, @gsjaardema, @NewbieOrange, @EngineLessCC, @asmaloney, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1204 |
@HazardyKnusperkeks, @sergiud, @Youw, @thesmurph, @czudziakm, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1205 |
@Roman-Koshelev, @chronoxor, @ShawnZhong, @russelltg, @glebm, @tmartin-gh, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1206 |
@Zhaojun-Liu, @louiswins and @mogemimi. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1207 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1208 |
# 9.1.0 - 2022-08-27 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1209 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1210 |
- `fmt::formatted_size` now works at compile time |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1211 |
(https://github.com/fmtlib/fmt/pull/3026). For example |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1212 |
([godbolt](https://godbolt.org/z/1MW5rMdf8)): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1213 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1214 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1215 |
#include <fmt/compile.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1216 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1217 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1218 |
using namespace fmt::literals; |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1219 |
constexpr size_t n = fmt::formatted_size("{}"_cf, 42); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1220 |
fmt::print("{}\n", n); // prints 2 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1221 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1222 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1223 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1224 |
Thanks @marksantaniello. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1225 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1226 |
- Fixed handling of invalid UTF-8 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1227 |
(https://github.com/fmtlib/fmt/pull/3038, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1228 |
https://github.com/fmtlib/fmt/pull/3044, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1229 |
https://github.com/fmtlib/fmt/pull/3056). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1230 |
Thanks @phprus and @skeeto. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1231 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1232 |
- Improved Unicode support in `ostream` overloads of `print` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1233 |
(https://github.com/fmtlib/fmt/pull/2994, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1234 |
https://github.com/fmtlib/fmt/pull/3001, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1235 |
https://github.com/fmtlib/fmt/pull/3025). Thanks @dimztimz. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1236 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1237 |
- Fixed handling of the sign specifier in localized formatting on |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1238 |
systems with 32-bit `wchar_t` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1239 |
(https://github.com/fmtlib/fmt/issues/3041). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1240 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1241 |
- Added support for wide streams to `fmt::streamed` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1242 |
(https://github.com/fmtlib/fmt/pull/2994). Thanks @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1243 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1244 |
- Added the `n` specifier that disables the output of delimiters when |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1245 |
formatting ranges (https://github.com/fmtlib/fmt/pull/2981, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1246 |
https://github.com/fmtlib/fmt/pull/2983). For example |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1247 |
([godbolt](https://godbolt.org/z/roKqGdj8c)): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1248 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1249 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1250 |
#include <fmt/ranges.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1251 |
#include <vector> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1252 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1253 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1254 |
auto v = std::vector{1, 2, 3}; |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1255 |
fmt::print("{:n}\n", v); // prints 1, 2, 3 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1256 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1257 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1258 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1259 |
Thanks @BRevzin. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1260 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1261 |
- Worked around problematic `std::string_view` constructors introduced |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1262 |
in C++23 (https://github.com/fmtlib/fmt/issues/3030, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1263 |
https://github.com/fmtlib/fmt/issues/3050). Thanks @strega-nil-ms. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1264 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1265 |
- Improve handling (exclusion) of recursive ranges |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1266 |
(https://github.com/fmtlib/fmt/issues/2968, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1267 |
https://github.com/fmtlib/fmt/pull/2974). Thanks @Dani-Hub. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1268 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1269 |
- Improved error reporting in format string compilation |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1270 |
(https://github.com/fmtlib/fmt/issues/3055). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1271 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1272 |
- Improved the implementation of |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1273 |
[Dragonbox](https://github.com/jk-jeon/dragonbox), the algorithm |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1274 |
used for the default floating-point formatting |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1275 |
(https://github.com/fmtlib/fmt/pull/2984). Thanks @jk-jeon. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1276 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1277 |
- Fixed issues with floating-point formatting on exotic platforms. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1278 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1279 |
- Improved the implementation of chrono formatting |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1280 |
(https://github.com/fmtlib/fmt/pull/3010). Thanks @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1281 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1282 |
- Improved documentation |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1283 |
(https://github.com/fmtlib/fmt/pull/2966, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1284 |
https://github.com/fmtlib/fmt/pull/3009, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1285 |
https://github.com/fmtlib/fmt/issues/3020, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1286 |
https://github.com/fmtlib/fmt/pull/3037). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1287 |
Thanks @mwinterb, @jcelerier and @remiburtin. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1288 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1289 |
- Improved build configuration |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1290 |
(https://github.com/fmtlib/fmt/pull/2991, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1291 |
https://github.com/fmtlib/fmt/pull/2995, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1292 |
https://github.com/fmtlib/fmt/issues/3004, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1293 |
https://github.com/fmtlib/fmt/pull/3007, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1294 |
https://github.com/fmtlib/fmt/pull/3040). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1295 |
Thanks @dimztimz and @hwhsu1231. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1296 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1297 |
- Fixed various warnings and compilation issues |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1298 |
(https://github.com/fmtlib/fmt/issues/2969, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1299 |
https://github.com/fmtlib/fmt/pull/2971, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1300 |
https://github.com/fmtlib/fmt/issues/2975, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1301 |
https://github.com/fmtlib/fmt/pull/2982, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1302 |
https://github.com/fmtlib/fmt/pull/2985, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1303 |
https://github.com/fmtlib/fmt/issues/2988, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1304 |
https://github.com/fmtlib/fmt/issues/2989, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1305 |
https://github.com/fmtlib/fmt/issues/3000, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1306 |
https://github.com/fmtlib/fmt/issues/3006, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1307 |
https://github.com/fmtlib/fmt/issues/3014, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1308 |
https://github.com/fmtlib/fmt/issues/3015, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1309 |
https://github.com/fmtlib/fmt/pull/3021, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1310 |
https://github.com/fmtlib/fmt/issues/3023, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1311 |
https://github.com/fmtlib/fmt/pull/3024, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1312 |
https://github.com/fmtlib/fmt/pull/3029, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1313 |
https://github.com/fmtlib/fmt/pull/3043, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1314 |
https://github.com/fmtlib/fmt/issues/3052, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1315 |
https://github.com/fmtlib/fmt/pull/3053, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1316 |
https://github.com/fmtlib/fmt/pull/3054). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1317 |
Thanks @h-friederich, @dimztimz, @olupton, @bernhardmgruber and @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1318 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1319 |
# 9.0.0 - 2022-07-04 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1320 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1321 |
- Switched to the internal floating point formatter for all decimal |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1322 |
presentation formats. In particular this results in consistent |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1323 |
rounding on all platforms and removing the `s[n]printf` fallback for |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1324 |
decimal FP formatting. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1325 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1326 |
- Compile-time floating point formatting no longer requires the |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1327 |
header-only mode. For example |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1328 |
([godbolt](https://godbolt.org/z/G37PTeG3b)): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1329 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1330 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1331 |
#include <array> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1332 |
#include <fmt/compile.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1333 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1334 |
consteval auto compile_time_dtoa(double value) -> std::array<char, 10> { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1335 |
auto result = std::array<char, 10>(); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1336 |
fmt::format_to(result.data(), FMT_COMPILE("{}"), value); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1337 |
return result; |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1338 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1339 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1340 |
constexpr auto answer = compile_time_dtoa(0.42); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1341 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1342 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1343 |
works with the default settings. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1344 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1345 |
- Improved the implementation of |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1346 |
[Dragonbox](https://github.com/jk-jeon/dragonbox), the algorithm |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1347 |
used for the default floating-point formatting |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1348 |
(https://github.com/fmtlib/fmt/pull/2713, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1349 |
https://github.com/fmtlib/fmt/pull/2750). Thanks @jk-jeon. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1350 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1351 |
- Made `fmt::to_string` work with `__float128`. This uses the internal |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1352 |
FP formatter and works even on system without `__float128` support |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1353 |
in `[s]printf`. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1354 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1355 |
- Disabled automatic `std::ostream` insertion operator (`operator<<`) |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1356 |
discovery when `fmt/ostream.h` is included to prevent ODR |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1357 |
violations. You can get the old behavior by defining |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1358 |
`FMT_DEPRECATED_OSTREAM` but this will be removed in the next major |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1359 |
release. Use `fmt::streamed` or `fmt::ostream_formatter` to enable |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1360 |
formatting via `std::ostream` instead. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1361 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1362 |
- Added `fmt::ostream_formatter` that can be used to write `formatter` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1363 |
specializations that perform formatting via `std::ostream`. For |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1364 |
example ([godbolt](https://godbolt.org/z/5sEc5qMsf)): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1365 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1366 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1367 |
#include <fmt/ostream.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1368 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1369 |
struct date { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1370 |
int year, month, day; |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1371 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1372 |
friend std::ostream& operator<<(std::ostream& os, const date& d) { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1373 |
return os << d.year << '-' << d.month << '-' << d.day; |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1374 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1375 |
}; |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1376 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1377 |
template <> struct fmt::formatter<date> : ostream_formatter {}; |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1378 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1379 |
std::string s = fmt::format("The date is {}", date{2012, 12, 9}); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1380 |
// s == "The date is 2012-12-9" |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1381 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1382 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1383 |
- Added the `fmt::streamed` function that takes an object and formats |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1384 |
it via `std::ostream`. For example |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1385 |
([godbolt](https://godbolt.org/z/5G3346G1f)): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1386 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1387 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1388 |
#include <thread> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1389 |
#include <fmt/ostream.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1390 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1391 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1392 |
fmt::print("Current thread id: {}\n", |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1393 |
fmt::streamed(std::this_thread::get_id())); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1394 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1395 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1396 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1397 |
Note that `fmt/std.h` provides a `formatter` specialization for |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1398 |
`std::thread::id` so you don\'t need to format it via |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1399 |
`std::ostream`. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1400 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1401 |
- Deprecated implicit conversions of unscoped enums to integers for |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1402 |
consistency with scoped enums. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1403 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1404 |
- Added an argument-dependent lookup based `format_as` extension API |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1405 |
to simplify formatting of enums. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1406 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1407 |
- Added experimental `std::variant` formatting support |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1408 |
(https://github.com/fmtlib/fmt/pull/2941). For example |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1409 |
([godbolt](https://godbolt.org/z/KG9z6cq68)): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1410 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1411 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1412 |
#include <variant> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1413 |
#include <fmt/std.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1414 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1415 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1416 |
auto v = std::variant<int, std::string>(42); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1417 |
fmt::print("{}\n", v); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1418 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1419 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1420 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1421 |
prints: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1422 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1423 |
variant(42) |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1424 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1425 |
Thanks @jehelset. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1426 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1427 |
- Added experimental `std::filesystem::path` formatting support |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1428 |
(https://github.com/fmtlib/fmt/issues/2865, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1429 |
https://github.com/fmtlib/fmt/pull/2902, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1430 |
https://github.com/fmtlib/fmt/issues/2917, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1431 |
https://github.com/fmtlib/fmt/pull/2918). For example |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1432 |
([godbolt](https://godbolt.org/z/o44dMexEb)): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1433 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1434 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1435 |
#include <filesystem> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1436 |
#include <fmt/std.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1437 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1438 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1439 |
fmt::print("There is no place like {}.", std::filesystem::path("/home")); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1440 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1441 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1442 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1443 |
prints: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1444 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1445 |
There is no place like "/home". |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1446 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1447 |
Thanks @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1448 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1449 |
- Added a `std::thread::id` formatter to `fmt/std.h`. For example |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1450 |
([godbolt](https://godbolt.org/z/j1azbYf3E)): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1451 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1452 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1453 |
#include <thread> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1454 |
#include <fmt/std.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1455 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1456 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1457 |
fmt::print("Current thread id: {}\n", std::this_thread::get_id()); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1458 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1459 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1460 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1461 |
- Added `fmt::styled` that applies a text style to an individual |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1462 |
argument (https://github.com/fmtlib/fmt/pull/2793). For |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1463 |
example ([godbolt](https://godbolt.org/z/vWGW7v5M6)): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1464 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1465 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1466 |
#include <fmt/chrono.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1467 |
#include <fmt/color.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1468 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1469 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1470 |
auto now = std::chrono::system_clock::now(); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1471 |
fmt::print( |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1472 |
"[{}] {}: {}\n", |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1473 |
fmt::styled(now, fmt::emphasis::bold), |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1474 |
fmt::styled("error", fg(fmt::color::red)), |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1475 |
"something went wrong"); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1476 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1477 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1478 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1479 |
prints |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1480 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1481 |
 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1482 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1483 |
Thanks @rbrugo. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1484 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1485 |
- Made `fmt::print` overload for text styles correctly handle UTF-8 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1486 |
(https://github.com/fmtlib/fmt/issues/2681, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1487 |
https://github.com/fmtlib/fmt/pull/2701). Thanks @AlexGuteniev. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1488 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1489 |
- Fixed Unicode handling when writing to an ostream. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1490 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1491 |
- Added support for nested specifiers to range formatting |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1492 |
(https://github.com/fmtlib/fmt/pull/2673). For example |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1493 |
([godbolt](https://godbolt.org/z/xd3Gj38cf)): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1494 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1495 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1496 |
#include <vector> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1497 |
#include <fmt/ranges.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1498 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1499 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1500 |
fmt::print("{::#x}\n", std::vector{10, 20, 30}); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1501 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1502 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1503 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1504 |
prints `[0xa, 0x14, 0x1e]`. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1505 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1506 |
Thanks @BRevzin. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1507 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1508 |
- Implemented escaping of wide strings in ranges |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1509 |
(https://github.com/fmtlib/fmt/pull/2904). Thanks @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1510 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1511 |
- Added support for ranges with `begin` / `end` found via the |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1512 |
argument-dependent lookup |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1513 |
(https://github.com/fmtlib/fmt/pull/2807). Thanks @rbrugo. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1514 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1515 |
- Fixed formatting of certain kinds of ranges of ranges |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1516 |
(https://github.com/fmtlib/fmt/pull/2787). Thanks @BRevzin. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1517 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1518 |
- Fixed handling of maps with element types other than `std::pair` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1519 |
(https://github.com/fmtlib/fmt/pull/2944). Thanks @BrukerJWD. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1520 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1521 |
- Made tuple formatter enabled only if elements are formattable |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1522 |
(https://github.com/fmtlib/fmt/issues/2939, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1523 |
https://github.com/fmtlib/fmt/pull/2940). Thanks @jehelset. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1524 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1525 |
- Made `fmt::join` compatible with format string compilation |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1526 |
(https://github.com/fmtlib/fmt/issues/2719, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1527 |
https://github.com/fmtlib/fmt/pull/2720). Thanks @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1528 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1529 |
- Made compile-time checks work with named arguments of custom types |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1530 |
and `std::ostream` `print` overloads |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1531 |
(https://github.com/fmtlib/fmt/issues/2816, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1532 |
https://github.com/fmtlib/fmt/issues/2817, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1533 |
https://github.com/fmtlib/fmt/pull/2819). Thanks @timsong-cpp. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1534 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1535 |
- Removed `make_args_checked` because it is no longer needed for |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1536 |
compile-time checks |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1537 |
(https://github.com/fmtlib/fmt/pull/2760). Thanks @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1538 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1539 |
- Removed the following deprecated APIs: `_format`, `arg_join`, the |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1540 |
`format_to` overload that takes a memory buffer, `[v]fprintf` that |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1541 |
takes an `ostream`. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1542 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1543 |
- Removed the deprecated implicit conversion of `[const] signed char*` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1544 |
and `[const] unsigned char*` to C strings. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1545 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1546 |
- Removed the deprecated `fmt/locale.h`. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1547 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1548 |
- Replaced the deprecated `fileno()` with `descriptor()` in |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1549 |
`buffered_file`. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1550 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1551 |
- Moved `to_string_view` to the `detail` namespace since it\'s an |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1552 |
implementation detail. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1553 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1554 |
- Made access mode of a created file consistent with `fopen` by |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1555 |
setting `S_IWGRP` and `S_IWOTH` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1556 |
(https://github.com/fmtlib/fmt/pull/2733). Thanks @arogge. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1557 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1558 |
- Removed a redundant buffer resize when formatting to `std::ostream` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1559 |
(https://github.com/fmtlib/fmt/issues/2842, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1560 |
https://github.com/fmtlib/fmt/pull/2843). Thanks @jcelerier. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1561 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1562 |
- Made precision computation for strings consistent with width |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1563 |
(https://github.com/fmtlib/fmt/issues/2888). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1564 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1565 |
- Fixed handling of locale separators in floating point formatting |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1566 |
(https://github.com/fmtlib/fmt/issues/2830). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1567 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1568 |
- Made sign specifiers work with `__int128_t` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1569 |
(https://github.com/fmtlib/fmt/issues/2773). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1570 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1571 |
- Improved support for systems such as CHERI with extra data stored in |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1572 |
pointers (https://github.com/fmtlib/fmt/pull/2932). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1573 |
Thanks @davidchisnall. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1574 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1575 |
- Improved documentation |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1576 |
(https://github.com/fmtlib/fmt/pull/2706, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1577 |
https://github.com/fmtlib/fmt/pull/2712, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1578 |
https://github.com/fmtlib/fmt/pull/2789, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1579 |
https://github.com/fmtlib/fmt/pull/2803, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1580 |
https://github.com/fmtlib/fmt/pull/2805, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1581 |
https://github.com/fmtlib/fmt/pull/2815, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1582 |
https://github.com/fmtlib/fmt/pull/2924). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1583 |
Thanks @BRevzin, @Pokechu22, @setoye, @rtobar, @rbrugo, @anoonD and |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1584 |
@leha-bot. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1585 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1586 |
- Improved build configuration |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1587 |
(https://github.com/fmtlib/fmt/pull/2766, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1588 |
https://github.com/fmtlib/fmt/pull/2772, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1589 |
https://github.com/fmtlib/fmt/pull/2836, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1590 |
https://github.com/fmtlib/fmt/pull/2852, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1591 |
https://github.com/fmtlib/fmt/pull/2907, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1592 |
https://github.com/fmtlib/fmt/pull/2913, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1593 |
https://github.com/fmtlib/fmt/pull/2914). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1594 |
Thanks @kambala-decapitator, @mattiasljungstrom, @kieselnb, @nathannaveen |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1595 |
and @Vertexwahn. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1596 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1597 |
- Fixed various warnings and compilation issues |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1598 |
(https://github.com/fmtlib/fmt/issues/2408, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1599 |
https://github.com/fmtlib/fmt/issues/2507, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1600 |
https://github.com/fmtlib/fmt/issues/2697, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1601 |
https://github.com/fmtlib/fmt/issues/2715, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1602 |
https://github.com/fmtlib/fmt/issues/2717, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1603 |
https://github.com/fmtlib/fmt/pull/2722, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1604 |
https://github.com/fmtlib/fmt/pull/2724, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1605 |
https://github.com/fmtlib/fmt/pull/2725, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1606 |
https://github.com/fmtlib/fmt/issues/2726, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1607 |
https://github.com/fmtlib/fmt/pull/2728, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1608 |
https://github.com/fmtlib/fmt/pull/2732, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1609 |
https://github.com/fmtlib/fmt/issues/2738, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1610 |
https://github.com/fmtlib/fmt/pull/2742, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1611 |
https://github.com/fmtlib/fmt/issues/2744, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1612 |
https://github.com/fmtlib/fmt/issues/2745, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1613 |
https://github.com/fmtlib/fmt/issues/2746, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1614 |
https://github.com/fmtlib/fmt/issues/2754, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1615 |
https://github.com/fmtlib/fmt/pull/2755, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1616 |
https://github.com/fmtlib/fmt/issues/2757, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1617 |
https://github.com/fmtlib/fmt/pull/2758, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1618 |
https://github.com/fmtlib/fmt/issues/2761, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1619 |
https://github.com/fmtlib/fmt/pull/2762, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1620 |
https://github.com/fmtlib/fmt/issues/2763, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1621 |
https://github.com/fmtlib/fmt/pull/2765, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1622 |
https://github.com/fmtlib/fmt/issues/2769, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1623 |
https://github.com/fmtlib/fmt/pull/2770, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1624 |
https://github.com/fmtlib/fmt/issues/2771, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1625 |
https://github.com/fmtlib/fmt/issues/2777, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1626 |
https://github.com/fmtlib/fmt/pull/2779, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1627 |
https://github.com/fmtlib/fmt/pull/2782, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1628 |
https://github.com/fmtlib/fmt/pull/2783, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1629 |
https://github.com/fmtlib/fmt/issues/2794, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1630 |
https://github.com/fmtlib/fmt/issues/2796, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1631 |
https://github.com/fmtlib/fmt/pull/2797, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1632 |
https://github.com/fmtlib/fmt/pull/2801, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1633 |
https://github.com/fmtlib/fmt/pull/2802, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1634 |
https://github.com/fmtlib/fmt/issues/2808, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1635 |
https://github.com/fmtlib/fmt/issues/2818, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1636 |
https://github.com/fmtlib/fmt/pull/2819, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1637 |
https://github.com/fmtlib/fmt/issues/2829, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1638 |
https://github.com/fmtlib/fmt/issues/2835, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1639 |
https://github.com/fmtlib/fmt/issues/2848, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1640 |
https://github.com/fmtlib/fmt/issues/2860, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1641 |
https://github.com/fmtlib/fmt/pull/2861, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1642 |
https://github.com/fmtlib/fmt/pull/2882, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1643 |
https://github.com/fmtlib/fmt/issues/2886, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1644 |
https://github.com/fmtlib/fmt/issues/2891, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1645 |
https://github.com/fmtlib/fmt/pull/2892, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1646 |
https://github.com/fmtlib/fmt/issues/2895, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1647 |
https://github.com/fmtlib/fmt/issues/2896, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1648 |
https://github.com/fmtlib/fmt/pull/2903, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1649 |
https://github.com/fmtlib/fmt/issues/2906, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1650 |
https://github.com/fmtlib/fmt/issues/2908, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1651 |
https://github.com/fmtlib/fmt/pull/2909, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1652 |
https://github.com/fmtlib/fmt/issues/2920, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1653 |
https://github.com/fmtlib/fmt/pull/2922, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1654 |
https://github.com/fmtlib/fmt/pull/2927, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1655 |
https://github.com/fmtlib/fmt/pull/2929, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1656 |
https://github.com/fmtlib/fmt/issues/2936, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1657 |
https://github.com/fmtlib/fmt/pull/2937, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1658 |
https://github.com/fmtlib/fmt/pull/2938, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1659 |
https://github.com/fmtlib/fmt/pull/2951, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1660 |
https://github.com/fmtlib/fmt/issues/2954, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1661 |
https://github.com/fmtlib/fmt/pull/2957, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1662 |
https://github.com/fmtlib/fmt/issues/2958, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1663 |
https://github.com/fmtlib/fmt/pull/2960). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1664 |
Thanks @matrackif @Tobi823, @ivan-volnov, @VasiliPupkin256, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1665 |
@federico-busato, @barcharcraz, @jk-jeon, @HazardyKnusperkeks, @dalboris, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1666 |
@seanm, @gsjaardema, @timsong-cpp, @seanm, @frithrah, @chronoxor, @Agga, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1667 |
@madmaxoft, @JurajX, @phprus and @Dani-Hub. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1668 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1669 |
# 8.1.1 - 2022-01-06 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1670 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1671 |
- Restored ABI compatibility with version 8.0.x |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1672 |
(https://github.com/fmtlib/fmt/issues/2695, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1673 |
https://github.com/fmtlib/fmt/pull/2696). Thanks @saraedum. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1674 |
- Fixed chrono formatting on big endian systems |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1675 |
(https://github.com/fmtlib/fmt/issues/2698, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1676 |
https://github.com/fmtlib/fmt/pull/2699). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1677 |
Thanks @phprus and @xvitaly. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1678 |
- Fixed a linkage error with mingw |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1679 |
(https://github.com/fmtlib/fmt/issues/2691, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1680 |
https://github.com/fmtlib/fmt/pull/2692). Thanks @rbberger. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1681 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1682 |
# 8.1.0 - 2022-01-02 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1683 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1684 |
- Optimized chrono formatting |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1685 |
(https://github.com/fmtlib/fmt/pull/2500, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1686 |
https://github.com/fmtlib/fmt/pull/2537, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1687 |
https://github.com/fmtlib/fmt/issues/2541, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1688 |
https://github.com/fmtlib/fmt/pull/2544, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1689 |
https://github.com/fmtlib/fmt/pull/2550, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1690 |
https://github.com/fmtlib/fmt/pull/2551, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1691 |
https://github.com/fmtlib/fmt/pull/2576, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1692 |
https://github.com/fmtlib/fmt/issues/2577, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1693 |
https://github.com/fmtlib/fmt/pull/2586, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1694 |
https://github.com/fmtlib/fmt/pull/2591, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1695 |
https://github.com/fmtlib/fmt/pull/2594, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1696 |
https://github.com/fmtlib/fmt/pull/2602, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1697 |
https://github.com/fmtlib/fmt/pull/2617, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1698 |
https://github.com/fmtlib/fmt/issues/2628, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1699 |
https://github.com/fmtlib/fmt/pull/2633, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1700 |
https://github.com/fmtlib/fmt/issues/2670, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1701 |
https://github.com/fmtlib/fmt/pull/2671). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1702 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1703 |
Processing of some specifiers such as `%z` and `%Y` is now up to |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1704 |
10-20 times faster, for example on GCC 11 with libstdc++: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1705 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1706 |
---------------------------------------------------------------------------- |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1707 |
Benchmark Before After |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1708 |
---------------------------------------------------------------------------- |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1709 |
FMTFormatter_z 261 ns 26.3 ns |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1710 |
FMTFormatterCompile_z 246 ns 11.6 ns |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1711 |
FMTFormatter_Y 263 ns 26.1 ns |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1712 |
FMTFormatterCompile_Y 244 ns 10.5 ns |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1713 |
---------------------------------------------------------------------------- |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1714 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1715 |
Thanks @phprus and @toughengineer. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1716 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1717 |
- Implemented subsecond formatting for chrono durations |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1718 |
(https://github.com/fmtlib/fmt/pull/2623). For example |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1719 |
([godbolt](https://godbolt.org/z/es7vWTETe)): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1720 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1721 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1722 |
#include <fmt/chrono.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1723 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1724 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1725 |
fmt::print("{:%S}", std::chrono::milliseconds(1234)); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1726 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1727 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1728 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1729 |
prints \"01.234\". |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1730 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1731 |
Thanks @matrackif. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1732 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1733 |
- Fixed handling of precision 0 when formatting chrono durations |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1734 |
(https://github.com/fmtlib/fmt/issues/2587, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1735 |
https://github.com/fmtlib/fmt/pull/2588). Thanks @lukester1975. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1736 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1737 |
- Fixed an overflow on invalid inputs in the `tm` formatter |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1738 |
(https://github.com/fmtlib/fmt/pull/2564). Thanks @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1739 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1740 |
- Added `fmt::group_digits` that formats integers with a non-localized |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1741 |
digit separator (comma) for groups of three digits. For example |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1742 |
([godbolt](https://godbolt.org/z/TxGxG9Poq)): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1743 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1744 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1745 |
#include <fmt/format.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1746 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1747 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1748 |
fmt::print("{} dollars", fmt::group_digits(1000000)); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1749 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1750 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1751 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1752 |
prints \"1,000,000 dollars\". |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1753 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1754 |
- Added support for faint, conceal, reverse and blink text styles |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1755 |
(https://github.com/fmtlib/fmt/pull/2394): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1756 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1757 |
<https://user-images.githubusercontent.com/576385/147710227-c68f5317-f8fa-42c3-9123-7c4ba3c398cb.mp4> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1758 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1759 |
Thanks @benit8 and @data-man. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1760 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1761 |
- Added experimental support for compile-time floating point |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1762 |
formatting (https://github.com/fmtlib/fmt/pull/2426, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1763 |
https://github.com/fmtlib/fmt/pull/2470). It is currently |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1764 |
limited to the header-only mode. Thanks @alexezeder. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1765 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1766 |
- Added UDL-based named argument support to compile-time format string |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1767 |
checks (https://github.com/fmtlib/fmt/issues/2640, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1768 |
https://github.com/fmtlib/fmt/pull/2649). For example |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1769 |
([godbolt](https://godbolt.org/z/ohGbbvonv)): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1770 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1771 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1772 |
#include <fmt/format.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1773 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1774 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1775 |
using namespace fmt::literals; |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1776 |
fmt::print("{answer:s}", "answer"_a=42); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1777 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1778 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1779 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1780 |
gives a compile-time error on compilers with C++20 `consteval` and |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1781 |
non-type template parameter support (gcc 10+) because `s` is not a |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1782 |
valid format specifier for an integer. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1783 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1784 |
Thanks @alexezeder. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1785 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1786 |
- Implemented escaping of string range elements. For example |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1787 |
([godbolt](https://godbolt.org/z/rKvM1vKf3)): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1788 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1789 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1790 |
#include <fmt/ranges.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1791 |
#include <vector> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1792 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1793 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1794 |
fmt::print("{}", std::vector<std::string>{"\naan"}); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1795 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1796 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1797 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1798 |
is now printed as: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1799 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1800 |
["\naan"] |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1801 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1802 |
instead of: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1803 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1804 |
[" |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1805 |
aan"] |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1806 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1807 |
- Added an experimental `?` specifier for escaping strings. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1808 |
(https://github.com/fmtlib/fmt/pull/2674). Thanks @BRevzin. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1809 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1810 |
- Switched to JSON-like representation of maps and sets for |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1811 |
consistency with Python\'s `str.format`. For example |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1812 |
([godbolt](https://godbolt.org/z/seKjoY9W5)): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1813 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1814 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1815 |
#include <fmt/ranges.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1816 |
#include <map> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1817 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1818 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1819 |
fmt::print("{}", std::map<std::string, int>{{"answer", 42}}); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1820 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1821 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1822 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1823 |
is now printed as: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1824 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1825 |
{"answer": 42} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1826 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1827 |
- Extended `fmt::join` to support C++20-only ranges |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1828 |
(https://github.com/fmtlib/fmt/pull/2549). Thanks @BRevzin. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1829 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1830 |
- Optimized handling of non-const-iterable ranges and implemented |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1831 |
initial support for non-const-formattable types. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1832 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1833 |
- Disabled implicit conversions of scoped enums to integers that was |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1834 |
accidentally introduced in earlier versions |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1835 |
(https://github.com/fmtlib/fmt/pull/1841). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1836 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1837 |
- Deprecated implicit conversion of `[const] signed char*` and |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1838 |
`[const] unsigned char*` to C strings. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1839 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1840 |
- Deprecated `_format`, a legacy UDL-based format API |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1841 |
(https://github.com/fmtlib/fmt/pull/2646). Thanks @alexezeder. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1842 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1843 |
- Marked `format`, `formatted_size` and `to_string` as `[[nodiscard]]` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1844 |
(https://github.com/fmtlib/fmt/pull/2612). @0x8000-0000. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1845 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1846 |
- Added missing diagnostic when trying to format function and member |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1847 |
pointers as well as objects convertible to pointers which is |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1848 |
explicitly disallowed |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1849 |
(https://github.com/fmtlib/fmt/issues/2598, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1850 |
https://github.com/fmtlib/fmt/pull/2609, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1851 |
https://github.com/fmtlib/fmt/pull/2610). Thanks @AlexGuteniev. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1852 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1853 |
- Optimized writing to a contiguous buffer with `format_to_n` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1854 |
(https://github.com/fmtlib/fmt/pull/2489). Thanks @Roman-Koshelev. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1855 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1856 |
- Optimized writing to non-`char` buffers |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1857 |
(https://github.com/fmtlib/fmt/pull/2477). Thanks @Roman-Koshelev. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1858 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1859 |
- Decimal point is now localized when using the `L` specifier. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1860 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1861 |
- Improved floating point formatter implementation |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1862 |
(https://github.com/fmtlib/fmt/pull/2498, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1863 |
https://github.com/fmtlib/fmt/pull/2499). Thanks @Roman-Koshelev. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1864 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1865 |
- Fixed handling of very large precision in fixed format |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1866 |
(https://github.com/fmtlib/fmt/pull/2616). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1867 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1868 |
- Made a table of cached powers used in FP formatting static |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1869 |
(https://github.com/fmtlib/fmt/pull/2509). Thanks @jk-jeon. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1870 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1871 |
- Resolved a lookup ambiguity with C++20 format-related functions due |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1872 |
to ADL (https://github.com/fmtlib/fmt/issues/2639, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1873 |
https://github.com/fmtlib/fmt/pull/2641). Thanks @mkurdej. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1874 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1875 |
- Removed unnecessary inline namespace qualification |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1876 |
(https://github.com/fmtlib/fmt/issues/2642, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1877 |
https://github.com/fmtlib/fmt/pull/2643). Thanks @mkurdej. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1878 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1879 |
- Implemented argument forwarding in `format_to_n` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1880 |
(https://github.com/fmtlib/fmt/issues/2462, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1881 |
https://github.com/fmtlib/fmt/pull/2463). Thanks @owent. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1882 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1883 |
- Fixed handling of implicit conversions in `fmt::to_string` and |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1884 |
format string compilation |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1885 |
(https://github.com/fmtlib/fmt/issues/2565). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1886 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1887 |
- Changed the default access mode of files created by |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1888 |
`fmt::output_file` to `-rw-r--r--` for consistency with `fopen` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1889 |
(https://github.com/fmtlib/fmt/issues/2530). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1890 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1891 |
- Make `fmt::ostream::flush` public |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1892 |
(https://github.com/fmtlib/fmt/issues/2435). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1893 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1894 |
- Improved C++14/17 attribute detection |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1895 |
(https://github.com/fmtlib/fmt/pull/2615). Thanks @AlexGuteniev. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1896 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1897 |
- Improved `consteval` detection for MSVC |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1898 |
(https://github.com/fmtlib/fmt/pull/2559). Thanks @DanielaE. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1899 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1900 |
- Improved documentation |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1901 |
(https://github.com/fmtlib/fmt/issues/2406, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1902 |
https://github.com/fmtlib/fmt/pull/2446, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1903 |
https://github.com/fmtlib/fmt/issues/2493, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1904 |
https://github.com/fmtlib/fmt/issues/2513, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1905 |
https://github.com/fmtlib/fmt/pull/2515, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1906 |
https://github.com/fmtlib/fmt/issues/2522, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1907 |
https://github.com/fmtlib/fmt/pull/2562, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1908 |
https://github.com/fmtlib/fmt/pull/2575, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1909 |
https://github.com/fmtlib/fmt/pull/2606, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1910 |
https://github.com/fmtlib/fmt/pull/2620, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1911 |
https://github.com/fmtlib/fmt/issues/2676). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1912 |
Thanks @sobolevn, @UnePierre, @zhsj, @phprus, @ericcurtin and @Lounarok. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1913 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1914 |
- Improved fuzzers and added a fuzzer for chrono timepoint formatting |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1915 |
(https://github.com/fmtlib/fmt/pull/2461, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1916 |
https://github.com/fmtlib/fmt/pull/2469). @pauldreik, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1917 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1918 |
- Added the `FMT_SYSTEM_HEADERS` CMake option setting which marks |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1919 |
{fmt}\'s headers as system. It can be used to suppress warnings |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1920 |
(https://github.com/fmtlib/fmt/issues/2644, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1921 |
https://github.com/fmtlib/fmt/pull/2651). Thanks @alexezeder. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1922 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1923 |
- Added the Bazel build system support |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1924 |
(https://github.com/fmtlib/fmt/pull/2505, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1925 |
https://github.com/fmtlib/fmt/pull/2516). Thanks @Vertexwahn. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1926 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1927 |
- Improved build configuration and tests |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1928 |
(https://github.com/fmtlib/fmt/issues/2437, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1929 |
https://github.com/fmtlib/fmt/pull/2558, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1930 |
https://github.com/fmtlib/fmt/pull/2648, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1931 |
https://github.com/fmtlib/fmt/pull/2650, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1932 |
https://github.com/fmtlib/fmt/pull/2663, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1933 |
https://github.com/fmtlib/fmt/pull/2677). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1934 |
Thanks @DanielaE, @alexezeder and @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1935 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1936 |
- Fixed various warnings and compilation issues |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1937 |
(https://github.com/fmtlib/fmt/pull/2353, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1938 |
https://github.com/fmtlib/fmt/pull/2356, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1939 |
https://github.com/fmtlib/fmt/pull/2399, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1940 |
https://github.com/fmtlib/fmt/issues/2408, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1941 |
https://github.com/fmtlib/fmt/pull/2414, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1942 |
https://github.com/fmtlib/fmt/pull/2427, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1943 |
https://github.com/fmtlib/fmt/pull/2432, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1944 |
https://github.com/fmtlib/fmt/pull/2442, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1945 |
https://github.com/fmtlib/fmt/pull/2434, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1946 |
https://github.com/fmtlib/fmt/issues/2439, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1947 |
https://github.com/fmtlib/fmt/pull/2447, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1948 |
https://github.com/fmtlib/fmt/pull/2450, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1949 |
https://github.com/fmtlib/fmt/issues/2455, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1950 |
https://github.com/fmtlib/fmt/issues/2465, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1951 |
https://github.com/fmtlib/fmt/issues/2472, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1952 |
https://github.com/fmtlib/fmt/issues/2474, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1953 |
https://github.com/fmtlib/fmt/pull/2476, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1954 |
https://github.com/fmtlib/fmt/issues/2478, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1955 |
https://github.com/fmtlib/fmt/issues/2479, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1956 |
https://github.com/fmtlib/fmt/issues/2481, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1957 |
https://github.com/fmtlib/fmt/pull/2482, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1958 |
https://github.com/fmtlib/fmt/pull/2483, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1959 |
https://github.com/fmtlib/fmt/issues/2490, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1960 |
https://github.com/fmtlib/fmt/pull/2491, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1961 |
https://github.com/fmtlib/fmt/pull/2510, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1962 |
https://github.com/fmtlib/fmt/pull/2518, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1963 |
https://github.com/fmtlib/fmt/issues/2528, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1964 |
https://github.com/fmtlib/fmt/pull/2529, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1965 |
https://github.com/fmtlib/fmt/pull/2539, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1966 |
https://github.com/fmtlib/fmt/issues/2540, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1967 |
https://github.com/fmtlib/fmt/pull/2545, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1968 |
https://github.com/fmtlib/fmt/pull/2555, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1969 |
https://github.com/fmtlib/fmt/issues/2557, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1970 |
https://github.com/fmtlib/fmt/issues/2570, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1971 |
https://github.com/fmtlib/fmt/pull/2573, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1972 |
https://github.com/fmtlib/fmt/pull/2582, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1973 |
https://github.com/fmtlib/fmt/issues/2605, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1974 |
https://github.com/fmtlib/fmt/pull/2611, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1975 |
https://github.com/fmtlib/fmt/pull/2647, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1976 |
https://github.com/fmtlib/fmt/issues/2627, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1977 |
https://github.com/fmtlib/fmt/pull/2630, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1978 |
https://github.com/fmtlib/fmt/issues/2635, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1979 |
https://github.com/fmtlib/fmt/issues/2638, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1980 |
https://github.com/fmtlib/fmt/issues/2653, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1981 |
https://github.com/fmtlib/fmt/issues/2654, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1982 |
https://github.com/fmtlib/fmt/issues/2661, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1983 |
https://github.com/fmtlib/fmt/pull/2664, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1984 |
https://github.com/fmtlib/fmt/pull/2684). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1985 |
Thanks @DanielaE, @mwinterb, @cdacamar, @TrebledJ, @bodomartin, @cquammen, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1986 |
@white238, @mmarkeloff, @palacaze, @jcelerier, @mborn-adi, @BrukerJWD, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1987 |
@spyridon97, @phprus, @oliverlee, @joshessman-llnl, @akohlmey, @timkalu, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1988 |
@olupton, @Acretock, @alexezeder, @andrewcorrigan, @lucpelletier and |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1989 |
@HazardyKnusperkeks. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1990 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1991 |
# 8.0.1 - 2021-07-02 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1992 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1993 |
- Fixed the version number in the inline namespace |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1994 |
(https://github.com/fmtlib/fmt/issues/2374). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1995 |
- Added a missing presentation type check for `std::string` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1996 |
(https://github.com/fmtlib/fmt/issues/2402). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1997 |
- Fixed a linkage error when mixing code built with clang and gcc |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1998 |
(https://github.com/fmtlib/fmt/issues/2377). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
1999 |
- Fixed documentation issues |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2000 |
(https://github.com/fmtlib/fmt/pull/2396, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2001 |
https://github.com/fmtlib/fmt/issues/2403, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2002 |
https://github.com/fmtlib/fmt/issues/2406). Thanks @mkurdej. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2003 |
- Removed dead code in FP formatter ( |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2004 |
https://github.com/fmtlib/fmt/pull/2398). Thanks @javierhonduco. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2005 |
- Fixed various warnings and compilation issues |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2006 |
(https://github.com/fmtlib/fmt/issues/2351, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2007 |
https://github.com/fmtlib/fmt/issues/2359, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2008 |
https://github.com/fmtlib/fmt/pull/2365, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2009 |
https://github.com/fmtlib/fmt/issues/2368, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2010 |
https://github.com/fmtlib/fmt/pull/2370, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2011 |
https://github.com/fmtlib/fmt/pull/2376, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2012 |
https://github.com/fmtlib/fmt/pull/2381, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2013 |
https://github.com/fmtlib/fmt/pull/2382, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2014 |
https://github.com/fmtlib/fmt/issues/2386, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2015 |
https://github.com/fmtlib/fmt/pull/2389, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2016 |
https://github.com/fmtlib/fmt/pull/2395, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2017 |
https://github.com/fmtlib/fmt/pull/2397, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2018 |
https://github.com/fmtlib/fmt/issues/2400, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2019 |
https://github.com/fmtlib/fmt/issues/2401, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2020 |
https://github.com/fmtlib/fmt/pull/2407). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2021 |
Thanks @zx2c4, @AidanSun05, @mattiasljungstrom, @joemmett, @erengy, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2022 |
@patlkli, @gsjaardema and @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2023 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2024 |
# 8.0.0 - 2021-06-21 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2025 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2026 |
- Enabled compile-time format string checks by default. For example |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2027 |
([godbolt](https://godbolt.org/z/sMxcohGjz)): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2028 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2029 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2030 |
#include <fmt/core.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2031 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2032 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2033 |
fmt::print("{:d}", "I am not a number"); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2034 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2035 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2036 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2037 |
gives a compile-time error on compilers with C++20 `consteval` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2038 |
support (gcc 10+, clang 11+) because `d` is not a valid format |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2039 |
specifier for a string. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2040 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2041 |
To pass a runtime string wrap it in `fmt::runtime`: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2042 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2043 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2044 |
fmt::print(fmt::runtime("{:d}"), "I am not a number"); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2045 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2046 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2047 |
- Added compile-time formatting |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2048 |
(https://github.com/fmtlib/fmt/pull/2019, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2049 |
https://github.com/fmtlib/fmt/pull/2044, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2050 |
https://github.com/fmtlib/fmt/pull/2056, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2051 |
https://github.com/fmtlib/fmt/pull/2072, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2052 |
https://github.com/fmtlib/fmt/pull/2075, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2053 |
https://github.com/fmtlib/fmt/issues/2078, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2054 |
https://github.com/fmtlib/fmt/pull/2129, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2055 |
https://github.com/fmtlib/fmt/pull/2326). For example |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2056 |
([godbolt](https://godbolt.org/z/Mxx9d89jM)): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2057 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2058 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2059 |
#include <fmt/compile.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2060 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2061 |
consteval auto compile_time_itoa(int value) -> std::array<char, 10> { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2062 |
auto result = std::array<char, 10>(); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2063 |
fmt::format_to(result.data(), FMT_COMPILE("{}"), value); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2064 |
return result; |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2065 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2066 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2067 |
constexpr auto answer = compile_time_itoa(42); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2068 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2069 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2070 |
Most of the formatting functionality is available at compile time |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2071 |
with a notable exception of floating-point numbers and pointers. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2072 |
Thanks @alexezeder. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2073 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2074 |
- Optimized handling of format specifiers during format string |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2075 |
compilation. For example, hexadecimal formatting (`"{:x}"`) is now |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2076 |
3-7x faster than before when using `format_to` with format string |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2077 |
compilation and a stack-allocated buffer |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2078 |
(https://github.com/fmtlib/fmt/issues/1944). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2079 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2080 |
Before (7.1.3): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2081 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2082 |
---------------------------------------------------------------------------- |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2083 |
Benchmark Time CPU Iterations |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2084 |
---------------------------------------------------------------------------- |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2085 |
FMTCompileOld/0 15.5 ns 15.5 ns 43302898 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2086 |
FMTCompileOld/42 16.6 ns 16.6 ns 43278267 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2087 |
FMTCompileOld/273123 18.7 ns 18.6 ns 37035861 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2088 |
FMTCompileOld/9223372036854775807 19.4 ns 19.4 ns 35243000 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2089 |
---------------------------------------------------------------------------- |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2090 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2091 |
After (8.x): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2092 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2093 |
---------------------------------------------------------------------------- |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2094 |
Benchmark Time CPU Iterations |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2095 |
---------------------------------------------------------------------------- |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2096 |
FMTCompileNew/0 1.99 ns 1.99 ns 360523686 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2097 |
FMTCompileNew/42 2.33 ns 2.33 ns 279865664 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2098 |
FMTCompileNew/273123 3.72 ns 3.71 ns 190230315 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2099 |
FMTCompileNew/9223372036854775807 5.28 ns 5.26 ns 130711631 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2100 |
---------------------------------------------------------------------------- |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2101 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2102 |
It is even faster than `std::to_chars` from libc++ compiled with |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2103 |
clang on macOS: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2104 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2105 |
---------------------------------------------------------------------------- |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2106 |
Benchmark Time CPU Iterations |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2107 |
---------------------------------------------------------------------------- |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2108 |
ToChars/0 4.42 ns 4.41 ns 160196630 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2109 |
ToChars/42 5.00 ns 4.98 ns 140735201 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2110 |
ToChars/273123 7.26 ns 7.24 ns 95784130 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2111 |
ToChars/9223372036854775807 8.77 ns 8.75 ns 75872534 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2112 |
---------------------------------------------------------------------------- |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2113 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2114 |
In other cases, especially involving `std::string` construction, the |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2115 |
speed up is usually lower because handling format specifiers takes a |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2116 |
smaller fraction of the total time. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2117 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2118 |
- Added the `_cf` user-defined literal to represent a compiled format |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2119 |
string. It can be used instead of the `FMT_COMPILE` macro |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2120 |
(https://github.com/fmtlib/fmt/pull/2043, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2121 |
https://github.com/fmtlib/fmt/pull/2242): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2122 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2123 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2124 |
#include <fmt/compile.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2125 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2126 |
using namespace fmt::literals; |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2127 |
auto s = fmt::format(FMT_COMPILE("{}"), 42); // 🙁 not modern |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2128 |
auto s = fmt::format("{}"_cf, 42); // 🙂 modern as hell |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2129 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2130 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2131 |
It requires compiler support for class types in non-type template |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2132 |
parameters (a C++20 feature) which is available in GCC 9.3+. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2133 |
Thanks @alexezeder. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2134 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2135 |
- Format string compilation now requires `format` functions of |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2136 |
`formatter` specializations for user-defined types to be `const`: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2137 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2138 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2139 |
template <> struct fmt::formatter<my_type>: formatter<string_view> { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2140 |
template <typename FormatContext> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2141 |
auto format(my_type obj, FormatContext& ctx) const { // Note const here. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2142 |
// ... |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2143 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2144 |
}; |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2145 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2146 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2147 |
- Added UDL-based named argument support to format string compilation |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2148 |
(https://github.com/fmtlib/fmt/pull/2243, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2149 |
https://github.com/fmtlib/fmt/pull/2281). For example: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2150 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2151 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2152 |
#include <fmt/compile.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2153 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2154 |
using namespace fmt::literals; |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2155 |
auto s = fmt::format(FMT_COMPILE("{answer}"), "answer"_a = 42); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2156 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2157 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2158 |
Here the argument named \"answer\" is resolved at compile time with |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2159 |
no runtime overhead. Thanks @alexezeder. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2160 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2161 |
- Added format string compilation support to `fmt::print` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2162 |
(https://github.com/fmtlib/fmt/issues/2280, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2163 |
https://github.com/fmtlib/fmt/pull/2304). Thanks @alexezeder. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2164 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2165 |
- Added initial support for compiling {fmt} as a C++20 module |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2166 |
(https://github.com/fmtlib/fmt/pull/2235, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2167 |
https://github.com/fmtlib/fmt/pull/2240, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2168 |
https://github.com/fmtlib/fmt/pull/2260, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2169 |
https://github.com/fmtlib/fmt/pull/2282, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2170 |
https://github.com/fmtlib/fmt/pull/2283, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2171 |
https://github.com/fmtlib/fmt/pull/2288, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2172 |
https://github.com/fmtlib/fmt/pull/2298, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2173 |
https://github.com/fmtlib/fmt/pull/2306, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2174 |
https://github.com/fmtlib/fmt/pull/2307, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2175 |
https://github.com/fmtlib/fmt/pull/2309, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2176 |
https://github.com/fmtlib/fmt/pull/2318, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2177 |
https://github.com/fmtlib/fmt/pull/2324, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2178 |
https://github.com/fmtlib/fmt/pull/2332, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2179 |
https://github.com/fmtlib/fmt/pull/2340). Thanks @DanielaE. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2180 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2181 |
- Made symbols private by default reducing shared library size |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2182 |
(https://github.com/fmtlib/fmt/pull/2301). For example |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2183 |
there was a \~15% reported reduction on one platform. Thanks @sergiud. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2184 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2185 |
- Optimized includes making the result of preprocessing `fmt/format.h` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2186 |
\~20% smaller with libstdc++/C++20 and slightly improving build |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2187 |
times (https://github.com/fmtlib/fmt/issues/1998). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2188 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2189 |
- Added support of ranges with non-const `begin` / `end` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2190 |
(https://github.com/fmtlib/fmt/pull/1953). Thanks @kitegi. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2191 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2192 |
- Added support of `std::byte` and other formattable types to |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2193 |
`fmt::join` (https://github.com/fmtlib/fmt/issues/1981, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2194 |
https://github.com/fmtlib/fmt/issues/2040, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2195 |
https://github.com/fmtlib/fmt/pull/2050, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2196 |
https://github.com/fmtlib/fmt/issues/2262). For example: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2197 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2198 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2199 |
#include <fmt/format.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2200 |
#include <cstddef> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2201 |
#include <vector> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2202 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2203 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2204 |
auto bytes = std::vector{std::byte(4), std::byte(2)}; |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2205 |
fmt::print("{}", fmt::join(bytes, "")); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2206 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2207 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2208 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2209 |
prints \"42\". |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2210 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2211 |
Thanks @kamibo. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2212 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2213 |
- Implemented the default format for `std::chrono::system_clock` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2214 |
(https://github.com/fmtlib/fmt/issues/2319, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2215 |
https://github.com/fmtlib/fmt/pull/2345). For example: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2216 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2217 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2218 |
#include <fmt/chrono.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2219 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2220 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2221 |
fmt::print("{}", std::chrono::system_clock::now()); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2222 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2223 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2224 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2225 |
prints \"2021-06-18 15:22:00\" (the output depends on the current |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2226 |
date and time). Thanks @sunmy2019. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2227 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2228 |
- Made more chrono specifiers locale independent by default. Use the |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2229 |
`'L'` specifier to get localized formatting. For example: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2230 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2231 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2232 |
#include <fmt/chrono.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2233 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2234 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2235 |
std::locale::global(std::locale("ru_RU.UTF-8")); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2236 |
auto monday = std::chrono::weekday(1); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2237 |
fmt::print("{}\n", monday); // prints "Mon" |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2238 |
fmt::print("{:L}\n", monday); // prints "пн" |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2239 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2240 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2241 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2242 |
- Improved locale handling in chrono formatting |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2243 |
(https://github.com/fmtlib/fmt/issues/2337, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2244 |
https://github.com/fmtlib/fmt/pull/2349, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2245 |
https://github.com/fmtlib/fmt/pull/2350). Thanks @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2246 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2247 |
- Deprecated `fmt/locale.h` moving the formatting functions that take |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2248 |
a locale to `fmt/format.h` (`char`) and `fmt/xchar` (other |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2249 |
overloads). This doesn\'t introduce a dependency on `<locale>` so |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2250 |
there is virtually no compile time effect. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2251 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2252 |
- Deprecated an undocumented `format_to` overload that takes |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2253 |
`basic_memory_buffer`. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2254 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2255 |
- Made parameter order in `vformat_to` consistent with `format_to` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2256 |
(https://github.com/fmtlib/fmt/issues/2327). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2257 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2258 |
- Added support for time points with arbitrary durations |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2259 |
(https://github.com/fmtlib/fmt/issues/2208). For example: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2260 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2261 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2262 |
#include <fmt/chrono.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2263 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2264 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2265 |
using tp = std::chrono::time_point< |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2266 |
std::chrono::system_clock, std::chrono::seconds>; |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2267 |
fmt::print("{:%S}", tp(std::chrono::seconds(42))); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2268 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2269 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2270 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2271 |
prints \"42\". |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2272 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2273 |
- Formatting floating-point numbers no longer produces trailing zeros |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2274 |
by default for consistency with `std::format`. For example: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2275 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2276 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2277 |
#include <fmt/core.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2278 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2279 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2280 |
fmt::print("{0:.3}", 1.1); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2281 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2282 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2283 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2284 |
prints \"1.1\". Use the `'#'` specifier to keep trailing zeros. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2285 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2286 |
- Dropped a limit on the number of elements in a range and replaced |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2287 |
`{}` with `[]` as range delimiters for consistency with Python\'s |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2288 |
`str.format`. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2289 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2290 |
- The `'L'` specifier for locale-specific numeric formatting can now |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2291 |
be combined with presentation specifiers as in `std::format`. For |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2292 |
example: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2293 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2294 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2295 |
#include <fmt/core.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2296 |
#include <locale> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2297 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2298 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2299 |
std::locale::global(std::locale("fr_FR.UTF-8")); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2300 |
fmt::print("{0:.2Lf}", 0.42); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2301 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2302 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2303 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2304 |
prints \"0,42\". The deprecated `'n'` specifier has been removed. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2305 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2306 |
- Made the `0` specifier ignored for infinity and NaN |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2307 |
(https://github.com/fmtlib/fmt/issues/2305, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2308 |
https://github.com/fmtlib/fmt/pull/2310). Thanks @Liedtke. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2309 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2310 |
- Made the hexfloat formatting use the right alignment by default |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2311 |
(https://github.com/fmtlib/fmt/issues/2308, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2312 |
https://github.com/fmtlib/fmt/pull/2317). Thanks @Liedtke. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2313 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2314 |
- Removed the deprecated numeric alignment (`'='`). Use the `'0'` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2315 |
specifier instead. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2316 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2317 |
- Removed the deprecated `fmt/posix.h` header that has been replaced |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2318 |
with `fmt/os.h`. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2319 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2320 |
- Removed the deprecated `format_to_n_context`, `format_to_n_args` and |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2321 |
`make_format_to_n_args`. They have been replaced with |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2322 |
`format_context`, `` format_args` and ``make_format_args\`\` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2323 |
respectively. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2324 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2325 |
- Moved `wchar_t`-specific functions and types to `fmt/xchar.h`. You |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2326 |
can define `FMT_DEPRECATED_INCLUDE_XCHAR` to automatically include |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2327 |
`fmt/xchar.h` from `fmt/format.h` but this will be disabled in the |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2328 |
next major release. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2329 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2330 |
- Fixed handling of the `'+'` specifier in localized formatting |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2331 |
(https://github.com/fmtlib/fmt/issues/2133). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2332 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2333 |
- Added support for the `'s'` format specifier that gives textual |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2334 |
representation of `bool` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2335 |
(https://github.com/fmtlib/fmt/issues/2094, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2336 |
https://github.com/fmtlib/fmt/pull/2109). For example: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2337 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2338 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2339 |
#include <fmt/core.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2340 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2341 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2342 |
fmt::print("{:s}", true); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2343 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2344 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2345 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2346 |
prints \"true\". Thanks @powercoderlol. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2347 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2348 |
- Made `fmt::ptr` work with function pointers |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2349 |
(https://github.com/fmtlib/fmt/pull/2131). For example: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2350 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2351 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2352 |
#include <fmt/format.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2353 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2354 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2355 |
fmt::print("My main: {}\n", fmt::ptr(main)); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2356 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2357 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2358 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2359 |
Thanks @mikecrowe. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2360 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2361 |
- The undocumented support for specializing `formatter` for pointer |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2362 |
types has been removed. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2363 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2364 |
- Fixed `fmt::formatted_size` with format string compilation |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2365 |
(https://github.com/fmtlib/fmt/pull/2141, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2366 |
https://github.com/fmtlib/fmt/pull/2161). Thanks @alexezeder. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2367 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2368 |
- Fixed handling of empty format strings during format string |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2369 |
compilation (https://github.com/fmtlib/fmt/issues/2042): |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2370 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2371 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2372 |
auto s = fmt::format(FMT_COMPILE("")); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2373 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2374 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2375 |
Thanks @alexezeder. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2376 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2377 |
- Fixed handling of enums in `fmt::to_string` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2378 |
(https://github.com/fmtlib/fmt/issues/2036). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2379 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2380 |
- Improved width computation |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2381 |
(https://github.com/fmtlib/fmt/issues/2033, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2382 |
https://github.com/fmtlib/fmt/issues/2091). For example: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2383 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2384 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2385 |
#include <fmt/core.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2386 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2387 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2388 |
fmt::print("{:-<10}{}\n", "你好", "世界"); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2389 |
fmt::print("{:-<10}{}\n", "hello", "world"); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2390 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2391 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2392 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2393 |
prints |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2394 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2395 |
 |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2396 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2397 |
on a modern terminal. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2398 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2399 |
- The experimental fast output stream (`fmt::ostream`) is now |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2400 |
truncated by default for consistency with `fopen` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2401 |
(https://github.com/fmtlib/fmt/issues/2018). For example: |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2402 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2403 |
```c++ |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2404 |
#include <fmt/os.h> |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2405 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2406 |
int main() { |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2407 |
fmt::ostream out1 = fmt::output_file("guide"); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2408 |
out1.print("Zaphod"); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2409 |
out1.close(); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2410 |
fmt::ostream out2 = fmt::output_file("guide"); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2411 |
out2.print("Ford"); |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2412 |
} |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2413 |
``` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2414 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2415 |
writes \"Ford\" to the file \"guide\". To preserve the old file |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2416 |
content if any pass `fmt::file::WRONLY | fmt::file::CREATE` flags to |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2417 |
`fmt::output_file`. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2418 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2419 |
- Fixed moving of `fmt::ostream` that holds buffered data |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2420 |
(https://github.com/fmtlib/fmt/issues/2197, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2421 |
https://github.com/fmtlib/fmt/pull/2198). Thanks @vtta. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2422 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2423 |
- Replaced the `fmt::system_error` exception with a function of the |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2424 |
same name that constructs `std::system_error` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2425 |
(https://github.com/fmtlib/fmt/issues/2266). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2426 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2427 |
- Replaced the `fmt::windows_error` exception with a function of the |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2428 |
same name that constructs `std::system_error` with the category |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2429 |
returned by `fmt::system_category()` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2430 |
(https://github.com/fmtlib/fmt/issues/2274, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2431 |
https://github.com/fmtlib/fmt/pull/2275). The latter is |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2432 |
similar to `std::system_category` but correctly handles UTF-8. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2433 |
Thanks @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2434 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2435 |
- Replaced `fmt::error_code` with `std::error_code` and made it |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2436 |
formattable (https://github.com/fmtlib/fmt/issues/2269, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2437 |
https://github.com/fmtlib/fmt/pull/2270, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2438 |
https://github.com/fmtlib/fmt/pull/2273). Thanks @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2439 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2440 |
- Added speech synthesis support |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2441 |
(https://github.com/fmtlib/fmt/pull/2206). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2442 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2443 |
- Made `format_to` work with a memory buffer that has a custom |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2444 |
allocator (https://github.com/fmtlib/fmt/pull/2300). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2445 |
Thanks @voxmea. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2446 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2447 |
- Added `Allocator::max_size` support to `basic_memory_buffer`. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2448 |
(https://github.com/fmtlib/fmt/pull/1960). Thanks @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2449 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2450 |
- Added wide string support to `fmt::join` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2451 |
(https://github.com/fmtlib/fmt/pull/2236). Thanks @crbrz. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2452 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2453 |
- Made iterators passed to `formatter` specializations via a format |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2454 |
context satisfy C++20 `std::output_iterator` requirements |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2455 |
(https://github.com/fmtlib/fmt/issues/2156, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2456 |
https://github.com/fmtlib/fmt/pull/2158, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2457 |
https://github.com/fmtlib/fmt/issues/2195, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2458 |
https://github.com/fmtlib/fmt/pull/2204). Thanks @randomnetcat. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2459 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2460 |
- Optimized the `printf` implementation |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2461 |
(https://github.com/fmtlib/fmt/pull/1982, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2462 |
https://github.com/fmtlib/fmt/pull/1984, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2463 |
https://github.com/fmtlib/fmt/pull/2016, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2464 |
https://github.com/fmtlib/fmt/pull/2164). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2465 |
Thanks @rimathia and @moiwi. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2466 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2467 |
- Improved detection of `constexpr` `char_traits` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2468 |
(https://github.com/fmtlib/fmt/pull/2246, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2469 |
https://github.com/fmtlib/fmt/pull/2257). Thanks @phprus. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2470 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2471 |
- Fixed writing to `stdout` when it is redirected to `NUL` on Windows |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2472 |
(https://github.com/fmtlib/fmt/issues/2080). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2473 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2474 |
- Fixed exception propagation from iterators |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2475 |
(https://github.com/fmtlib/fmt/issues/2097). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2476 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2477 |
- Improved `strftime` error handling |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2478 |
(https://github.com/fmtlib/fmt/issues/2238, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2479 |
https://github.com/fmtlib/fmt/pull/2244). Thanks @yumeyao. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2480 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2481 |
- Stopped using deprecated GCC UDL template extension. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2482 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2483 |
- Added `fmt/args.h` to the install target |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2484 |
(https://github.com/fmtlib/fmt/issues/2096). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2485 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2486 |
- Error messages are now passed to assert when exceptions are disabled |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2487 |
(https://github.com/fmtlib/fmt/pull/2145). Thanks @NobodyXu. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2488 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2489 |
- Added the `FMT_MASTER_PROJECT` CMake option to control build and |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2490 |
install targets when {fmt} is included via `add_subdirectory` |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2491 |
(https://github.com/fmtlib/fmt/issues/2098, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2492 |
https://github.com/fmtlib/fmt/pull/2100). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2493 |
Thanks @randomizedthinking. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2494 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2495 |
- Improved build configuration |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2496 |
(https://github.com/fmtlib/fmt/pull/2026, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2497 |
https://github.com/fmtlib/fmt/pull/2122). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2498 |
Thanks @luncliff and @ibaned. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2499 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2500 |
- Fixed various warnings and compilation issues |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2501 |
(https://github.com/fmtlib/fmt/issues/1947, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2502 |
https://github.com/fmtlib/fmt/pull/1959, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2503 |
https://github.com/fmtlib/fmt/pull/1963, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2504 |
https://github.com/fmtlib/fmt/pull/1965, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2505 |
https://github.com/fmtlib/fmt/issues/1966, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2506 |
https://github.com/fmtlib/fmt/pull/1974, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2507 |
https://github.com/fmtlib/fmt/pull/1975, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2508 |
https://github.com/fmtlib/fmt/pull/1990, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2509 |
https://github.com/fmtlib/fmt/issues/2000, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2510 |
https://github.com/fmtlib/fmt/pull/2001, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2511 |
https://github.com/fmtlib/fmt/issues/2002, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2512 |
https://github.com/fmtlib/fmt/issues/2004, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2513 |
https://github.com/fmtlib/fmt/pull/2006, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2514 |
https://github.com/fmtlib/fmt/pull/2009, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2515 |
https://github.com/fmtlib/fmt/pull/2010, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2516 |
https://github.com/fmtlib/fmt/issues/2038, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2517 |
https://github.com/fmtlib/fmt/issues/2039, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2518 |
https://github.com/fmtlib/fmt/issues/2047, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2519 |
https://github.com/fmtlib/fmt/pull/2053, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2520 |
https://github.com/fmtlib/fmt/issues/2059, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2521 |
https://github.com/fmtlib/fmt/pull/2065, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2522 |
https://github.com/fmtlib/fmt/pull/2067, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2523 |
https://github.com/fmtlib/fmt/pull/2068, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2524 |
https://github.com/fmtlib/fmt/pull/2073, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2525 |
https://github.com/fmtlib/fmt/issues/2103, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2526 |
https://github.com/fmtlib/fmt/issues/2105, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2527 |
https://github.com/fmtlib/fmt/pull/2106, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2528 |
https://github.com/fmtlib/fmt/pull/2107, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2529 |
https://github.com/fmtlib/fmt/issues/2116, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2530 |
https://github.com/fmtlib/fmt/pull/2117, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2531 |
https://github.com/fmtlib/fmt/issues/2118, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2532 |
https://github.com/fmtlib/fmt/pull/2119, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2533 |
https://github.com/fmtlib/fmt/issues/2127, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2534 |
https://github.com/fmtlib/fmt/pull/2128, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2535 |
https://github.com/fmtlib/fmt/issues/2140, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2536 |
https://github.com/fmtlib/fmt/issues/2142, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2537 |
https://github.com/fmtlib/fmt/pull/2143, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2538 |
https://github.com/fmtlib/fmt/pull/2144, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2539 |
https://github.com/fmtlib/fmt/issues/2147, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2540 |
https://github.com/fmtlib/fmt/issues/2148, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2541 |
https://github.com/fmtlib/fmt/issues/2149, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2542 |
https://github.com/fmtlib/fmt/pull/2152, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2543 |
https://github.com/fmtlib/fmt/pull/2160, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2544 |
https://github.com/fmtlib/fmt/issues/2170, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2545 |
https://github.com/fmtlib/fmt/issues/2175, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2546 |
https://github.com/fmtlib/fmt/issues/2176, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2547 |
https://github.com/fmtlib/fmt/pull/2177, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2548 |
https://github.com/fmtlib/fmt/issues/2178, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2549 |
https://github.com/fmtlib/fmt/pull/2179, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2550 |
https://github.com/fmtlib/fmt/issues/2180, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2551 |
https://github.com/fmtlib/fmt/issues/2181, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2552 |
https://github.com/fmtlib/fmt/pull/2183, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2553 |
https://github.com/fmtlib/fmt/issues/2184, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2554 |
https://github.com/fmtlib/fmt/issues/2185, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2555 |
https://github.com/fmtlib/fmt/pull/2186, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2556 |
https://github.com/fmtlib/fmt/pull/2187, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2557 |
https://github.com/fmtlib/fmt/pull/2190, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2558 |
https://github.com/fmtlib/fmt/pull/2192, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2559 |
https://github.com/fmtlib/fmt/pull/2194, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2560 |
https://github.com/fmtlib/fmt/pull/2205, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2561 |
https://github.com/fmtlib/fmt/issues/2210, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2562 |
https://github.com/fmtlib/fmt/pull/2211, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2563 |
https://github.com/fmtlib/fmt/pull/2215, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2564 |
https://github.com/fmtlib/fmt/pull/2216, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2565 |
https://github.com/fmtlib/fmt/pull/2218, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2566 |
https://github.com/fmtlib/fmt/pull/2220, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2567 |
https://github.com/fmtlib/fmt/issues/2228, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2568 |
https://github.com/fmtlib/fmt/pull/2229, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2569 |
https://github.com/fmtlib/fmt/pull/2230, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2570 |
https://github.com/fmtlib/fmt/issues/2233, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2571 |
https://github.com/fmtlib/fmt/pull/2239, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2572 |
https://github.com/fmtlib/fmt/issues/2248, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2573 |
https://github.com/fmtlib/fmt/issues/2252, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2574 |
https://github.com/fmtlib/fmt/pull/2253, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2575 |
https://github.com/fmtlib/fmt/pull/2255, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2576 |
https://github.com/fmtlib/fmt/issues/2261, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2577 |
https://github.com/fmtlib/fmt/issues/2278, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2578 |
https://github.com/fmtlib/fmt/issues/2284, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2579 |
https://github.com/fmtlib/fmt/pull/2287, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2580 |
https://github.com/fmtlib/fmt/pull/2289, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2581 |
https://github.com/fmtlib/fmt/pull/2290, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2582 |
https://github.com/fmtlib/fmt/pull/2293, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2583 |
https://github.com/fmtlib/fmt/issues/2295, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2584 |
https://github.com/fmtlib/fmt/pull/2296, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2585 |
https://github.com/fmtlib/fmt/pull/2297, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2586 |
https://github.com/fmtlib/fmt/issues/2311, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2587 |
https://github.com/fmtlib/fmt/pull/2313, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2588 |
https://github.com/fmtlib/fmt/pull/2315, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2589 |
https://github.com/fmtlib/fmt/issues/2320, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2590 |
https://github.com/fmtlib/fmt/pull/2321, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2591 |
https://github.com/fmtlib/fmt/pull/2323, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2592 |
https://github.com/fmtlib/fmt/issues/2328, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2593 |
https://github.com/fmtlib/fmt/pull/2329, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2594 |
https://github.com/fmtlib/fmt/pull/2333, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2595 |
https://github.com/fmtlib/fmt/pull/2338, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2596 |
https://github.com/fmtlib/fmt/pull/2341). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2597 |
Thanks @darklukee, @fagg, @killerbot242, @jgopel, @yeswalrus, @Finkman, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2598 |
@HazardyKnusperkeks, @dkavolis, @concatime, @chronoxor, @summivox, @yNeo, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2599 |
@Apache-HB, @alexezeder, @toojays, @Brainy0207, @vadz, @imsherlock, @phprus, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2600 |
@white238, @yafshar, @BillyDonahue, @jstaahl, @denchat, @DanielaE, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2601 |
@ilyakurdyukov, @ilmai, @JessyDL, @sergiud, @mwinterb, @sven-herrmann, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2602 |
@jmelas, @twoixter, @crbrz and @upsj. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2603 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2604 |
- Improved documentation |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2605 |
(https://github.com/fmtlib/fmt/issues/1986, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2606 |
https://github.com/fmtlib/fmt/pull/2051, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2607 |
https://github.com/fmtlib/fmt/issues/2057, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2608 |
https://github.com/fmtlib/fmt/pull/2081, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2609 |
https://github.com/fmtlib/fmt/issues/2084, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2610 |
https://github.com/fmtlib/fmt/pull/2312). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2611 |
Thanks @imba-tjd, @0x416c69 and @mordante. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2612 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2613 |
- Continuous integration and test improvements |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2614 |
(https://github.com/fmtlib/fmt/issues/1969, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2615 |
https://github.com/fmtlib/fmt/pull/1991, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2616 |
https://github.com/fmtlib/fmt/pull/2020, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2617 |
https://github.com/fmtlib/fmt/pull/2110, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2618 |
https://github.com/fmtlib/fmt/pull/2114, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2619 |
https://github.com/fmtlib/fmt/issues/2196, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2620 |
https://github.com/fmtlib/fmt/pull/2217, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2621 |
https://github.com/fmtlib/fmt/pull/2247, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2622 |
https://github.com/fmtlib/fmt/pull/2256, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2623 |
https://github.com/fmtlib/fmt/pull/2336, |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2624 |
https://github.com/fmtlib/fmt/pull/2346). |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2625 |
Thanks @jgopel, @alexezeder and @DanielaE. |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2626 |
|
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2627 |
The change log for versions 0.8.0 - 7.1.3 is available [here]( |
| 47fd5c32 |
Poul Sander |
2024-10-05 08:44 |
2628 |
doc/ChangeLog-old.md). |
|
|
1970-01-01 00:00 |
2629 |
|