Victor Zverovich
02fb76d69b
Add FMT_STATIC_FORMAT
2025-09-01 09:15:32 -07:00
Victor Zverovich
489fd7ca4b
Simplify locale handling
2025-08-31 09:33:43 -07:00
Victor Zverovich
e7e71009c7
Make FP formatting compatible with exotic chars
2025-08-24 08:49:54 -07:00
Victor Zverovich
f91dc80f4c
Minor cleanup
2025-08-16 14:49:26 -07:00
Victor Zverovich
4120581167
Minor cleanup
2025-08-16 14:20:06 -07:00
Victor Zverovich
7ffc3ca15b
Minor cleanup
2025-08-16 12:20:02 -07:00
Murat Toprak
0d145936ec
Handle allocator propagation in basic_memory_buffer::move, Fix #4487 ( #4490 )
...
* Handle allocator propagation in basic_memory_buffer::move
Update `basic_memory_buffer::move` to respect `propagate_on_container_move_assignment`allocator trait.
If the allocator should not propagate and differs from the target's allocator,
fallback to copying the buffer instead of transferring ownership.
This avoids potential allocator mismatch issues and ensures exception safety.
* Add test cases for the updated move ctor
- Added two test cases `move_ctor_inline_buffer_non_propagating` and `move_ctor_dynamic_buffer_non_propagating`
- Added `PropageteOnMove` template parameter to `allocator_ref` class to be compatible with the old test cases
- `allocator_ref` now implements `!=` and `==` operators
2025-08-09 08:14:15 -07:00
Dominic Pöschko
35dcc58263
fix buffer overflow on all emphasis flags set ( #4498 )
2025-07-20 10:43:33 -07:00
Victor Zverovich
300ce75ca6
Handle invalid glibc FILE buffer
2025-07-06 11:17:16 -07:00
Victor Zverovich
513f978241
Cleanup os-test
2025-07-04 10:52:59 -07:00
Victor Zverovich
6a3b40524c
Use actual example code and move safe_fopen to os-test
2025-07-04 09:50:55 -07:00
Victor Chernyakin
2fa3e1a1bb
Fix interaction between debug presentation, precision, and width for strings ( #4478 )
2025-07-04 07:33:47 -07:00
Vladislav Shchapov
571c02d475
Add xchar support for std::byte formatter ( #4480 )
...
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
2025-06-23 14:02:11 -07:00
Victor Chernyakin
1ef8348070
Properly constrain detail::copy optimization ( #4474 )
2025-06-21 06:59:35 -07:00
Sahil Sinha
a5dccffa56
Add double and float support to scan test
...
- Add double_type and float_type to scan_type enum
- Add double* and float* pointers to scan_arg union
- Add constructors for double and float scan arguments
- Add switch cases for double and float types in visit()
- Implement basic read() functions for floating-point parsing
This partially resolves the TODO comment 'more types' in scan.h by adding
support for the two most commonly needed floating-point types.
2025-06-21 06:57:20 -07:00
Victor Zverovich
4a149f513f
Test non-SSO constexpr string formatting
2025-06-20 07:10:12 -07:00
Victor Zverovich
730fd4d9a7
Remove redundant tests
2025-06-08 08:46:22 -07:00
Mikhail Svetkin
5860688d7e
Enable constexpr support for fmt::format (fmtlib#3403) ( #4456 )
2025-06-07 07:16:49 -07:00
Victor Zverovich
fc0c76a075
Handle large precision
2025-06-01 08:49:41 -07:00
Victor Zverovich
befbc5fdb8
Fix ADL lookup for memory_buffer
2025-05-26 09:44:35 -07:00
Victor Zverovich
8aa1d6a9fb
Minor cleanup
2025-05-25 10:14:24 -07:00
Nikhil
6d79757a38
Interpret precision as display width ( #4443 )
2025-05-25 08:42:47 -07:00
Victor Chernyakin
b5266fd3b9
Remove some redundant consts ( #4445 )
...
`constexpr` variables are implicitly `const`.
2025-05-12 10:41:58 -07:00
Victor Zverovich
9b0ebd4435
Cleanup base-test
2025-05-11 15:42:08 -07:00
Victor Zverovich
7af94e5597
Remove old gcc workaround
2025-05-11 12:35:28 -07:00
Victor Zverovich
2924fcf8f6
Cleanup base-test
2025-05-11 10:36:42 -07:00
Victor Zverovich
a6cd72c9eb
Cleanup base-test
2025-05-11 09:01:28 -07:00
Victor Zverovich
07885271a1
Minor cleanup
2025-05-11 07:54:23 -07:00
Jeremy Rifkin
4999416e5c
Fix reference_wrapper ambiguity with format_as ( #4434 )
2025-05-10 11:15:45 -07:00
Victor Zverovich
6caff7ed9c
Cleanup test
2025-05-03 08:36:42 -07:00
Victor Zverovich
448929d491
Update and apply clang-format
2025-05-03 07:29:31 -07:00
Barry Revzin
8978ab09b2
Avoiding __builtin_strlen ( #4429 )
2025-04-27 09:32:10 -07:00
Victor Zverovich
c936e2e44e
Implement debug format for error_code
2025-04-27 09:06:17 -07:00
Victor Zverovich
a7d7b894cd
Implement the s specifier for error_code
2025-04-27 08:51:18 -07:00
Victor Zverovich
9db5e4df22
Don't specialize std::is_floating_point
2025-04-26 08:17:05 -07:00
Victor Zverovich
c81cbed2b7
Simplify test
2025-04-23 12:32:26 -07:00
LocalSpook
c709138359
Add support for incomplete types
2025-04-20 10:16:11 -07:00
Victor Zverovich
ed0d216f7e
Fix localization and formatting of timezone names
2025-04-13 09:52:59 -07:00
Victor Zverovich
bd9554a29e
Fix formatting of timezone names
2025-04-13 08:52:26 -07:00
Victor Zverovich
f086dc0d27
Fix timezone handling in tm
2025-04-13 08:23:40 -07:00
Victor Zverovich
f10b6dd816
Improve chrono formatting
2025-04-12 09:59:06 -07:00
Victor Zverovich
f470b9c566
Cleanup chrono tests and set consistent TZ
2025-04-12 09:12:49 -07:00
Victor Zverovich
b28214487d
Fix handling of %Z
2025-04-12 08:51:22 -07:00
Victor Zverovich
6d69f0c5f2
Improve chorno tests
2025-04-12 08:24:49 -07:00
Victor Zverovich
da776c9a66
Test timezone
2025-04-12 07:53:58 -07:00
Victor Zverovich
5199e0f885
Fix a flush issue on libstdc++
2025-03-30 10:54:14 -07:00
Victor Zverovich
2f58430573
Move buffering tests to os-test
2025-03-30 09:38:40 -07:00
Victor Zverovich
204661287b
Improve local_time test
2025-03-29 10:56:11 -07:00
Victor Zverovich
e1ab383361
Report an error when timezone is not available
2025-03-29 09:10:00 -07:00
Victor Zverovich
b9e0e94a01
Enable more chrono tests on Windows
2025-03-29 08:20:49 -07:00
Victor Zverovich
b2dfcb2b80
Fix local_time test
2025-03-23 19:51:33 -07:00
Victor Zverovich
7ac97cbd1d
Enable some local_time tests and make them deterministic
2025-03-23 11:50:03 -07:00
Victor Zverovich
17898794a9
Use fmt::local_time
2025-03-23 11:18:14 -07:00
Victor Zverovich
443a8ef342
Deprecate fmt::localtime
2025-03-23 10:46:02 -07:00
Victor Zverovich
43e31614cc
Test ambiguous time
2025-03-23 10:34:37 -07:00
Victor Zverovich
9d6e24c64e
Fix handling of long with FMT_BUILTIN_TYPES=0
2025-03-22 07:52:54 -07:00
Victor Zverovich
191c504b10
Cleanup build config
2025-03-16 08:24:31 -07:00
Victor Zverovich
dd780fde44
Add clang-3.4
2025-03-15 12:22:10 -07:00
Dean Glazeski
37e6474718
Fix dynamic named arg format spec handling ( #4361 )
...
When dealing with dynamic named format args, need to account for
nested named args when skipping the content of the replacement.
Fixes #4360
2025-03-15 09:34:11 -07:00
Victor Zverovich
9212ff6ca1
Apply coding conventions and use constexpr
2025-03-02 09:03:06 -08:00
Dean Glazeski
864bdf9638
Report error on duplicate named arg names ( #4367 )
2025-03-02 07:47:03 -08:00
Victor Chernyakin
b776cf66fc
Optimize text_style using bit packing ( #4363 )
2025-03-01 11:18:19 -08:00
Victor Zverovich
d42a068dbd
Apply coding conventions
2025-02-05 11:06:45 -08:00
Markus Kitsinger
f2cec917da
Move is_compiled_string to public API ( #4342 )
2025-02-04 16:20:27 -08:00
Victor Zverovich
52eeeb52a6
Make exponent threshold depend on representation ( #3649 )
2025-01-26 12:10:48 -08:00
timsong-cpp
cb6fdf2191
Restore constraint on map formatter ( #4326 )
...
* Restore constraint on map formatter
* Remove unnecessary double parens
2025-01-25 08:31:07 -08:00
timsong-cpp
f841ae61e2
Fix #4303 : avoid instantiating formatter<const T> ( #4325 )
2025-01-24 10:53:10 -08:00
Vladislav Shchapov
898d438571
Fix formatting into std::ostreambuf_iterator using a compiled format ( #4312 )
...
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
2025-01-18 07:16:06 -08:00
Aaron Bishop
937b7c5c10
Add args() accessor back to fmt::format_context ( #4310 )
...
Add args() accessor back to fmt::format_context
Add test that would fail to compile if you can't create a fmt::format_context from another fmt::format_context
2025-01-17 10:28:34 -08:00
Vladislav Shchapov
dad3237514
Fix a bug when copying the fill from basic_specs
...
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
2025-01-03 09:16:21 -08:00
Vladislav Shchapov
880e1494dc
Improve xchar support for std::bitset formatter
...
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
2025-01-03 09:16:21 -08:00
Hannes Harnisch
7c50da5385
Allow getting size of dynamic format arg store ( #4270 )
2024-12-18 19:54:35 -08:00
Victor Zverovich
df249d8ad3
Remove an old workaround
2024-11-19 14:28:39 +01:00
Victor Zverovich
dfad80d1c5
Remove an old workaround
2024-11-19 14:22:44 +01:00
Victor Zverovich
b1a054706e
Remove more MSVC 2015 workarounds and fix string_view checks
2024-11-15 08:33:30 -08:00
Victor Zverovich
a35389b3c2
Corrently handle buffer flush
2024-11-09 10:56:31 -08:00
Vladislav Shchapov
5a3576acc8
Implement fmt::join for tuple-like objects ( #4230 )
...
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
2024-11-09 08:28:46 -08:00
Victor Zverovich
8523dba2dc
Make constexpr precede explicit consistently
2024-11-02 11:03:03 -07:00
Vladislav Shchapov
168df9a064
Implement fmt::format_to into std::vector<char> ( #4211 )
...
* Implement fmt::format_to into std::vector<char>
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
* Move get_container to the trait
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
---------
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
2024-10-26 09:23:59 -07:00
Victor Zverovich
2b6a786e35
Use standard context in print
2024-10-20 09:08:24 -07:00
Victor Zverovich
601be1cbe7
Add support for code units > 0xFFFF in fill
2024-10-19 08:15:50 -07:00
Victor Zverovich
c68c5fa7c7
Test FMT_BUILTIN_TYPES
2024-10-04 16:08:46 -07:00
Victor Zverovich
d64b100a30
Relax constexpr
2024-09-29 10:04:57 -07:00
Victor Zverovich
1c5883bef0
Test nondeterministic conversion to format string
2024-09-28 09:16:28 -07:00
Victor Zverovich
3b70966df5
Add width and alignment support to error_code
2024-09-21 07:58:03 -07:00
Victor Zverovich
a197a994c5
Add member format_as for std
2024-09-20 08:49:49 -07:00
Khanh H
ed8f8be70d
More chrono padding ( #4161 )
...
* Add padding modifier to day of year, duration's remains unpadded
* Add padding modifier for %m, %Y
2024-09-18 09:27:45 -07:00
Victor Zverovich
0e62e5dc7c
Simplify has_formatter
2024-09-16 19:53:31 -07:00
Yedidya Feldblum
07e70151d5
format std::reference_wrapper
2024-09-16 19:05:18 -07:00
Victor Zverovich
de28ef5f86
Remove make_arg
2024-09-14 09:18:47 -07:00
Victor Zverovich
0335312320
Demacrify UTF-8 check
2024-09-13 18:41:10 -07:00
Victor Zverovich
1782a6eac0
Rename pragma macros
2024-09-12 19:20:32 -07:00
Victor Zverovich
689ec7a087
Cleanup
2024-09-11 16:05:34 -07:00
Victor Zverovich
1bde49e545
Remove FMT_USE_USER_LITERALS
2024-09-11 11:27:27 -07:00
Victor Zverovich
6c90b31fbd
Improve debug codegen
2024-09-08 07:49:02 -07:00
Victor Zverovich
f5a16a484b
Cleanup
2024-09-06 12:41:53 -07:00
Vladislav Shchapov
5bf577ca58
Backport from GoogleTest: "Work around a maybe-uninitialized warning under GCC 12" ( 0320f517fd)
...
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
2024-09-05 09:40:55 -07:00
Vladislav Shchapov
b6de66819e
Backport from GoogleTest: "Always initialize fields in MatcherBase constructors" ( https://github.com/google/googletest/pull/3797 )
...
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
2024-09-05 09:40:55 -07:00
Victor Zverovich
5f438c967e
Remove make_arg
2024-09-04 14:52:14 -07:00
Vladislav Shchapov
22d50c1a9c
Add support formatting std::expected<void, E>
...
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
2024-09-04 12:31:44 -07:00