Vladislav Shchapov
19b17618a9
Make constexpr ceil
...
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
2023-05-24 09:07:12 -07:00
Victor Zverovich
858e528abd
Use dragon in constexpr
2023-05-23 06:30:09 -07:00
timsong-cpp
08ef0d0842
fix formatter<char*> ( #3432 )
2023-05-20 06:32:21 -07:00
Victor Zverovich
821f8cdb45
Detemplatize printf more
2023-05-17 12:34:12 -07:00
Victor Zverovich
2f605cc896
Deprecate wide printf
2023-05-17 08:58:55 -07:00
Victor Zverovich
616a493786
Revert Char* formatter removal
2023-05-17 06:11:11 -07:00
Victor Zverovich
aeedac5884
Remove unneeded specialization
2023-05-13 07:46:47 -07:00
Vladislav Shchapov
eaa6307691
Make hex float test more stable ( #3434 )
...
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
2023-05-13 06:34:33 -07:00
Victor Zverovich
ea49c91cd1
Cleanup argument construction
2023-05-11 18:43:39 -07:00
Patrick Geltinger
d7592ad8bf
Fix time_point formatting for durations with certain ratios ( #3430 )
...
* Fix time_point formatting
* Add timestamps_ratios tests
2023-05-11 15:25:21 -07:00
Victor Zverovich
ebfb2e6779
Remove unused alias
2023-05-11 10:51:32 -07:00
Victor Zverovich
5780269d57
Improve API safety
2023-05-11 10:19:56 -07:00
Victor Zverovich
93a30a0746
unicode_to_utf8 -> to_utf8 since both sides of conversion are Unicode
2023-05-10 16:26:02 -07:00
Victor Zverovich
1e0ce567ef
Fix formatting of paths containing invalid Unicode
2023-05-07 10:05:15 -07:00
Vladislav Shchapov
dde8cf3bb7
Unification utf16/utf32 to utf8 conversion
...
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
2023-05-06 08:32:51 -07:00
Vladislav Shchapov
e84b00e014
Workaround to error: variable 'n' set but not used [-Werror,-Wunused-but-set-variable]
...
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
2023-05-06 08:32:51 -07:00
Victor Zverovich
b12ffea4fb
Add filesystem_error test back
2023-05-06 07:49:46 -07:00
Daniela Engert
d7a8e50cb5
Improve module testing ( #3397 )
...
* use the standard `test-main.cc` component instead of injected test infrastructure sources
* undo now obsolete commit `00235d8a` from July 2021
* Clang cannot import user-defined literals as it seems -> disable test
* Clang emits duplicate, non-mergeable copies of `detail::buffer`'s vtable, causing linker errors -> disable test
2023-05-03 07:56:24 -07:00
Victor Zverovich
02cae7e48a
Improve handling of Unicode in paths
2023-04-30 09:58:59 -07:00
Kevin Hwang
e7d6eb6794
Update tests to use recommended MOCK_METHOD ( #3395 )
2023-04-20 13:16:21 -07:00
Victor Zverovich
d97d8cea67
Push module check to test
2023-04-14 11:42:01 -07:00
June Liu
33f7150778
Fix error C2668 on msvc ( #3378 )
2023-04-11 06:27:28 -07:00
Victor Zverovich
fce74caa15
Disable problematic implicit conversions
2023-04-09 09:08:46 -07:00
Victor Zverovich
02bf4d1c1c
Disable to_string_view ADL
2023-04-09 08:49:05 -07:00
Vladislav Shchapov
97aedeab48
Workaround a double-double hexfloat format ( #3366 )
...
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
2023-04-01 07:19:23 -07:00
Victor Zverovich
41cfc739fe
Generalize format_as
2023-03-26 07:37:51 -07:00
Vladislav Shchapov
f6276a2c2b
Force use a signed char (On ARM char is unsigned by default) ( #3362 )
...
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
2023-03-22 11:34:59 -07:00
Victor Zverovich
6549ffde8e
Improve format_as safety
2023-03-19 12:09:54 -07:00
Barry Revzin
93bfa05382
%T is %H:%M:%S ( #3349 )
2023-03-18 07:16:22 -07:00
TheOmegaCarrot
d8e1c4265a
fix case of variant which is valueless by exception ( #3347 )
...
Co-authored-by: theomegacarrot <theomegacarrot@gmail.com>
2023-03-18 07:07:06 -07:00
Vladislav Shchapov
050293646f
Path is not escaped twice in the debug mode ( #3321 )
...
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
2023-03-05 08:01:06 -08:00
Victor Zverovich
e0748e61dd
Fix recursion check in range formatting
2023-03-04 08:20:32 -08:00
Victor Zverovich
98699719f8
Make # handling consistent with std::format
2023-02-26 10:15:16 -08:00
tom-huntington
5b8302079d
Add optional support ( #3303 )
2023-02-25 06:45:56 -08:00
luzpaz
3a69529e8b
Fix various typos ( #3312 )
...
Found via `codespell -q 3 -S ./test/gtest -L "fo,pres,seh,wronly"`
2023-02-21 15:14:41 -08:00
Victor Zverovich
76f520835f
Call element parse in tuple parse
2023-02-20 12:54:20 -08:00
Victor Zverovich
1741e90dec
Always call parse in range formatter
2023-02-18 09:58:37 -08:00
Froster
b5c2f74f45
change sopen_s to wsopen_s (fmtlib#3234) ( #3293 )
2023-02-16 11:17:55 -08:00
Victor Zverovich
655046d24f
Fix container adaptor formatting
2023-02-10 09:45:37 -08:00
Shawn Zhong
581c6292c9
Add formatters for container adapters ( #3279 )
2023-02-08 17:25:41 -08:00
Shawn Zhong
7718eeeacc
Implement glibc ext for sec, min, and hour ( #3271 )
2023-02-08 09:22:58 -08:00
Barry Revzin
05e3a9233a
Allowing formatting non-copyable ranges. ( #3290 )
2023-01-27 12:29:57 -08:00
Shawn Zhong
87c066a35b
Implement println
( #3267 )
2023-01-24 12:30:00 -08:00
Shawn Zhong
dfbb952b2c
Fix empty spec for time point ( #3275 )
2023-01-16 11:48:00 -08:00
Shawn Zhong
39971eb336
Fix localized format for float-point numbers ( #3272 )
2023-01-15 11:47:24 -08:00
jk-jeon
0f42c17d85
Implement a new formatting algorithm for small given precision ( #3269 )
...
Implement the formatting algorithm for small given precision discussed in https://github.com/fmtlib/fmt/issues/3262 and https://github.com/fmtlib/fmt/pull/2750
2023-01-14 11:30:20 -08:00
Shawn Zhong
676c2a107e
Fix negative subsec for time_point ( #3261 )
2023-01-11 11:36:50 -08:00
Shawn Zhong
dda53082be
Support fill, align & width for time point ( #3260 )
2023-01-09 11:25:31 -08:00
Victor Zverovich
9e4a54fa6e
Disable remaining implicit conversions
2023-01-03 12:08:42 -08:00
Victor Zverovich
9121f9b1d3
Enable format_as for classes
2023-01-03 08:58:23 -08:00
Victor Zverovich
b7535365b2
Enable format_as for non-integral types
2023-01-02 13:37:13 -08:00
Victor Zverovich
09ed1ddb9c
Cleanup tests
2023-01-02 09:58:12 -08:00
Victor Zverovich
71e4e02722
Cleanup vprintf
2023-01-02 08:37:00 -08:00
Victor Zverovich
a73a9b6a84
Refactor format string checks
2022-12-30 16:03:41 -08:00
Victor Zverovich
a05ba44df8
Simplify format string parsing
2022-12-30 11:23:42 -08:00
Victor Zverovich
ffb9b1d13c
Improve handling of signed types
2022-12-30 10:31:39 -08:00
Victor Zverovich
32190859ec
Fix handling of char
2022-12-30 09:11:42 -08:00
Victor Zverovich
8fe4d97d5e
Reduce template instantiations
2022-12-30 08:44:23 -08:00
Victor Zverovich
bd12aaa98e
Simplify format string parsing
2022-12-25 12:31:38 -08:00
Vladislav Shchapov
4841784e82
Simplify C99 strftime detection conditions
...
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
2022-12-25 10:16:19 -08:00
Vladislav Shchapov
cb72c23e9e
Improve timezone tests
...
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
2022-12-25 10:16:19 -08:00
Victor Zverovich
dfb857ebef
Refactor format spec parsing
2022-12-25 07:25:32 -08:00
Victor Zverovich
9ea9b6bcb1
Cleanup arg id parsing
2022-12-24 16:33:57 -08:00
Victor Zverovich
d1745084e0
Simplify parse context
2022-12-24 15:20:24 -08:00
Victor Zverovich
407e7b7b6d
basic_format_specs -> format_specs
2022-12-24 14:34:50 -08:00
Victor Zverovich
934c8e5f76
Refactor precision parsing
2022-12-24 13:29:23 -08:00
Victor Zverovich
9660e5b956
Remove redundant tests
2022-12-24 07:28:13 -08:00
Shawn Zhong
a585571e90
Ignore 0 character with align
2022-12-23 19:36:05 -08:00
Victor Zverovich
840ec8569d
Cleanup width handlers
2022-12-23 19:18:35 -08:00
Victor Zverovich
1dadeb8a33
Refactor width parsing
2022-12-23 18:29:59 -08:00
Vladislav Shchapov
e004f1d699
Fix for issue #3241
...
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
2022-12-23 12:26:20 -08:00
Victor Zverovich
bde1a6070d
Simplify fill and alignment parsing
2022-12-23 10:52:56 -08:00
Shawn Zhong
8c56919bd2
Check chrono spec starts with %
2022-12-21 14:40:30 -08:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
115001a3b1
Formatting of system clocks ought to be to UTC, not to local time.
...
This improves standards conformance of fmt.
2022-12-21 14:23:02 -08:00
Victor Zverovich
b90895412f
Fix formatting of named arguments with locale
2022-12-15 09:59:40 -08:00
Victor Zverovich
3999fd193a
Workaround an ADL issue
2022-12-11 09:32:17 -08:00
Vladislav Shchapov
1bf302a4ea
Implement %Ez, %Oz for chrono formatter
...
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
2022-12-10 10:13:53 -08:00
Radek Brich
62ceb181b1
fix #3105 - Compile-time error when mixing named argument with automatic indexing
2022-12-04 08:13:26 -08:00
Vladislav Shchapov
d24be2e95c
Add countl_zero function
...
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
2022-11-30 12:25:01 -08:00
Vladislav Shchapov
115ca96e0e
Bump tested CMake version to 3.25
...
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
2022-11-30 08:09:32 -08:00
Vladislav Shchapov
886491625d
Remove workaround for GTest bug
...
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
2022-11-30 07:16:37 -08:00
Vladislav Shchapov
74c51ff37e
Skip only strptime dependent test in scan-test
...
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
2022-11-27 08:59:30 -08:00
Chris Thrasher
69ffedfe52
Use target_compile_features
to specify C++ standard requirement
2022-11-26 11:03:17 -08:00
Vladislav Shchapov
31364732dc
Replace snprintf-based hex float formatter with internal implementation
...
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
2022-11-24 07:15:46 -08:00
Vladislav Shchapov
8276f1a204
Fix warning: the implicit by-copy capture of "this" is deprecated (EDG frontend)
...
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
2022-11-22 10:51:00 -08:00
thesmurph
c7980542d3
Skip the scan-test if strptime isn't defined ( #3184 )
...
cygwin and embedded systems. By default newlib doesn't provide strptime
in time.h because it was added in a later X/Open versions. Issue: #3178
2022-11-16 09:42:01 -08:00
Hans-Martin B. Jensen
7df30f91ae
Format unique_ptr with custom deleter ( #3177 )
...
* Format unique_ptr with custom deleter
Added deleter type to fmt::ptr unique_ptr overload. Deleter type is
part of the unique_ptr type.
* Review: apply clang-format
Co-authored-by: Hans-Martin B. Jensen <haje@eposaudio.com>
2022-11-13 21:54:32 -08:00
Stepan Ponomaryov
795ed8abf5
Add precision modifier for seconds in chrono format ( #3148 )
...
Co-authored-by: Stepan Ponomarev <stepan.ponomarev@itiviti.com>
2022-11-02 11:58:51 -07:00
Barry Revzin
66d71a1b35
Fixing formatting of range of range of char. ( #3158 )
2022-11-02 11:04:54 -07:00
Vladislav Shchapov
cd7202e039
Fix overflow error ( #3143 )
...
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
2022-10-16 14:04:55 -07:00
Patrick Roocks
9254cfa6f0
Support formatting of subseconds ( #3115 )
...
* Timestamp formatting shall print also subseconds, fixed a bug for fractional durations
2022-10-12 14:33:53 -07:00
Tinson Lai
5ad7b71381
Fix options for C++20 experimental module in CMake ( #3134 )
...
* Fix options for C++20 experimental module in CMake
* Replace `FMT_CAN_MODULE` by `FMT_MODULE` in test/CMakeLists.txt
2022-10-12 08:23:12 -07:00
Vladislav Shchapov
662adf4f33
Move formatter<std::error_code> from fmt/os.h to fmt/std.h ( #3125 )
...
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
2022-10-01 17:46:09 -07:00
Vladislav Shchapov
ad91cab374
Normalization of stdlib inline namespace names ( #3119 )
...
* Normalization of stdlib inline namespace names
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
* Remove all subnamespaces with names matching "__*" mask
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
2022-09-29 09:52:38 -07:00
Patrick Roocks
ad719619cc
Support formatting of std time_point with utc_clock ( #3110 )
2022-09-28 07:31:53 -07:00
Victor Zverovich
0b5cb18b71
Use buffering in to_string to avoid bloat
2022-09-21 17:11:43 -07:00
Sergiu Deitsch
e2f6d7665b
fix gcc <= 7.1 compile errors
2022-09-12 10:43:16 -07:00
Victor Zverovich
94ceb38a09
Improve locale API
2022-09-11 09:33:31 -07:00
Vladislav Shchapov
21c2137e77
Add class name output to formatter for std::exception ( #3076 )
...
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
2022-09-10 08:04:00 -07:00
Victor Zverovich
ecffca6726
Don't parse '}' as fill
2022-09-07 17:33:31 -07:00