93 Commits

Author SHA1 Message Date
Victor Zverovich
94b8bc8eae Add an experimental writer API 2024-08-17 09:54:09 -07:00
Victor Zverovich
020af729dd Simplify ostream 2024-08-17 08:38:10 -07:00
Cameron Angus
31b3c325f6
Mark namespace scope constexpr variable 'buffer_size' inline. (#4084)
* Mark namespace scope constexpr variable 'buffer_size' inline.

* Use provided macro for inline variable.
2024-07-24 09:58:38 -07:00
Victor Zverovich
febd8ed5fe Cleanup includes 2024-06-16 10:59:06 -07:00
LoveSy
8687315e86
Guard more system headers by FMT_MODULE (#4006)
* Guard more system headers by `FMT_MODULE`

* Merge FMT_MODULE and FMT_IMPORT_STD
2024-06-14 10:53:51 -07:00
Victor Zverovich
9b12491c19 Migrate docs 2024-06-02 14:20:41 -07:00
Victor Zverovich
ab29ef37d9 Migrate docs and cleanup 2024-06-02 13:17:04 -07:00
Victor Zverovich
97117cbb51 Migrate to mkdocs 2024-06-02 12:21:11 -07:00
Victor Zverovich
38ba3d3993 Migrate to mkdocs 2024-06-02 08:26:56 -07:00
Victor Zverovich
1f436c646e Cleanup locking/buffering 2024-05-12 09:34:17 -07:00
Jiwoo Park
f4b256c667 Fix warning C26439 2024-04-19 09:06:46 -07:00
Matthias Moulin
116a9ce488
Added FMT_IMPORT_STD feature macro (#3928) 2024-04-10 11:48:32 -07:00
Victor Zverovich
53347891cf Make line buffering test less flaky 2024-03-20 16:45:50 +09:00
Victor Zverovich
b71ef65b6e Remove iterator dependency 2024-01-10 18:52:53 -08:00
Victor Zverovich
63ce170853 Replace virtual dispatch with normal functions in buffers 2024-01-02 07:02:20 -08:00
Victor Zverovich
c142385033 Improve the pipe API 2024-01-01 15:55:37 -08:00
Victor Zverovich
d5823aae36 Ceci n'est pas une pipe 2023-12-29 08:11:29 -08:00
Victor Zverovich
d5da9cc40e Apply clang-tidy 2023-12-19 17:52:50 -08:00
Victor Zverovich
6b0082e6c7 Improve OpenBSD workaround 2023-11-07 09:24:33 -10:00
hotwatermorning
b35d4e40fe fix: use FMT_HAS_INCLUDE instead of __has_include 2023-11-03 15:10:40 -07:00
hotwatermorning
acaf83f40f feat: enable building with gcc 4.8 2023-11-03 02:38:05 +09:00
hotwatermorning
05aa783779 feat: include xlocale.h only if exists 2023-11-03 02:38:05 +09:00
Victor Zverovich
d9063baf22 Fix perf regression in ostream::print 2023-10-15 08:23:36 -07:00
Victor Zverovich
bd393456ed Remove FMT_*_DETAIL_NAMESPACE 2023-05-28 07:33:26 -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
Victor Zverovich
c98e5a08a4 Fix modular build on clang 2023-04-10 12:07:25 -07:00
Victor Zverovich
1d0257e4c0 FMT_MODULE_EXPORT_* -> FMT_EXPORT_* 2023-04-10 08:33:39 -07:00
Froster
b5c2f74f45
change sopen_s to wsopen_s (fmtlib#3234) (#3293) 2023-02-16 11:17:55 -08:00
Ihor Dutchak
80f8d34427
fmt::ostream - aggregate buffer instead of inheriting it (#3139)
Some MSVC-specific behavior:
When class fmt::ostream inherits detail::buffer - the last gets implicitly exported when fmt is built as a shared library.
Unless os.h is included, the compiler assumes detail::buffer is not externally exported and instantiates a local copy of it, which causes ODR violation.
With aggregation - there is no extra exporting of detail::buffer symbols.
2022-10-23 07:21:36 -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
Victor Zverovich
ce246aaf74 Remove deprecated APIs 2022-05-22 07:10:09 -07:00
rtobar
dcfbe4a77a
Document output_file default behavior correctly (#2803)
The documentation for output_file incorrectly says that opening an output file happens with `file::WRONLY | file::CREATE` by default, but this includes `file::TRUNC` is also included since 119f7dc3d.
2022-03-08 10:02:22 -08:00
Boris Dalstein
e3d688e79a
Fix warning C4251: class fmt::v8::file needs to have dll-interface (#2797)
* Fix warning C4251: class fmt::v8::file needs to have dll-interface

* Add CMake target dependency between test-main and fmt
2022-03-07 12:09:48 -08:00
Victor Zverovich
afbcf1e8ea Remove legacy C locale wrapper 2022-02-05 12:37:21 -08:00
Victor Zverovich
c28500556a FMT_NOEXCEPT -> noexcept 2022-01-20 16:55:47 -08:00
Victor Zverovich
7c12118c19 Deprecate buffered_file::fileno 2022-01-12 10:54:44 -08:00
Florin Iucha
acad8cfab1 Reformat all source code; no functional changes
Before adding the format checker, the mainline should be clean, to
avoid false failures.
2021-11-25 09:15:25 -08:00
timkalu
0697c5edb6
FMT_USE_FCNTL can be predefined (#2573)
'os.h' accepts a predefined FMT_USE_FCNTL override so using FMT with e.g. the NXP toolchain for ARM (e.g. for FreeRTOS) does not have a fcntl() call, but the detection routine does not detect this correctly.
2021-10-30 08:35:48 -07:00
Josh Essman
febdef43f5 fix: add workaround for intel parameter pack bug 2021-10-14 10:44:24 -07:00
Victor Zverovich
729a44e67d Depreate strtod and remove problematic tests 2021-08-28 09:20:36 -07:00
Cory Quammen
f488eed101 Resolve default constructor error in Xcode 7.2.1 and 8.2.1
Fix issue that produces the error 'default initialization of an object
of const type 'const detail::buffer_size' without a user-provided
default constructor'
2021-08-06 11:17:02 -07:00
Victor Zverovich
bba0a9d962 Make flush public 2021-07-30 07:02:49 -07:00
Daniela Engert
5221242f6e Instruct msvc to report the _true_ value in __cplusplus and force _full_ C++ conformance
* do this  in _some_ tests to improve test coverage and catch possible problems due to that
 * fix invalid export of `static constexpr` constant
 * fix msvc warnings about unreachable code in high warning levels
2021-06-24 09:10:08 -07:00
Daniela Engert
126c8cb46b
Export os.h API, too (#2318) 2021-05-28 09:27:45 -07:00
John Melas
ca466374bd
qualify make_format_args (#2315)
Co-authored-by: John Melas <john@jmelas.gr>
2021-05-26 06:42:02 -07:00
Victor Zverovich
34b8acaef7 More wchar_t-specific API to wchar.h 2021-05-21 18:24:39 -07:00
Victor Zverovich
c5c968cb22 Improve binary size 2021-05-21 08:50:35 -07:00
Sergiu Deitsch
13e652939b export missed symbols
Enable `-fvisibility=hidden` and `-fvisibility-inlines-hidden` by default in CI builds to ensure all public symbols are exported correctly.
2021-05-19 16:03:45 -07:00
Victor Zverovich
21d93bfd33 Move generic format functions to format.h 2021-05-18 19:01:43 -07:00
Владислав Щапов
0036a1d195 Fix issue #2274. 2021-05-10 15:57:23 -07:00