Commit Graph

287 Commits

Author SHA1 Message Date
gabime
d7db2cf3aa Added some [[nodiscard]] annotations 2023-09-22 18:24:45 +03:00
gabime
6cac90b89a clang format 2023-09-22 18:24:45 +03:00
gabime
2ecc00e9c6 Simplified code 2023-09-22 18:24:45 +03:00
gabime
92daf6954b Removed backtrace feature 2023-09-22 18:24:45 +03:00
gabime
d94830814f Removed SPDLOG_WCHAR_TO_UTF8_SUPPORT 2023-09-22 18:24:45 +03:00
gabime
1f61f5e019 clang format 2023-06-07 13:23:44 +03:00
Gabi Melman
31cf79a70d
Remov foreward to standard vformat_to 2023-05-30 20:38:30 +03:00
Eli Boyarski
62a4b8ce4e
Fix fmt build (#2744) 2023-05-27 22:28:22 +03:00
Charles Milette
4f80077339
Support compile-time format string checking with std::format (#2544)
* Support compile-time format string checking with std::format

* Fix pre-VS 17.5 compilation

* Fix compilation without wchar_t support

* What am I doing

* Bring back fmt optimization

* Move to_string_view to common.h

* Fix SPDLOG_CONSTEXPR_FUNC emitting duplicate symbol errors when building in C++11

* Also add inline on VS 2013

* Appender doesn't work on wide strings
2022-11-12 23:07:11 +02:00
gabime
4accce5d7b Try again fixing fmt::vformat_to when SPDLOG_WCHAR_TO_UTF8_SUPPORT is defined 2022-11-01 00:07:46 +02:00
gabime
678a79c0be Fixed syntax error from prev commit 2022-10-31 23:51:48 +02:00
gabime
fdb1f5926e Fix fmt::vformat_to when SPDLOG_WCHAR_TO_UTF8_SUPPORT is defined 2022-10-31 22:56:29 +02:00
gabime
6c975fa13b Replace fmt::detail::vformat_to(buf,..) with fmt::vformat_to(fmt::appender(buf) 2022-10-31 18:43:38 +02:00
gabime
c627c66560 Replace fmt::detail::vformat_to(buf,..) with fmt::vformat_to(fmt::appender(buf) 2022-10-31 18:26:07 +02:00
Gabi Melman
6c95f4c816
Fix #2419 by documenting the set_pattern behaviour 2022-07-01 10:53:05 +03:00
John Armstrong
799802f93b Add FMT_STRING to allow compilation with FMT_ENFORCE_COMPILE_STRING 2022-05-19 11:32:54 -07:00
gabime
128cbe5a06 clang-format 2022-05-08 13:01:45 +03:00
gabime
6d587f5181 Use fmt::detail::vformat_to(buf, ...) since it is ~20ns faster than fmt::vformat_to(std::back_inserter(buf),..) 2022-05-08 13:01:02 +03:00
Charles Milette
ee00f2e07d
Remove fmt_helper.h include from logger.h 2022-04-22 22:52:56 -04:00
Charles Milette
3cf94968e7
Add missing include 2022-04-21 22:11:16 -04:00
Charles Milette
ebeb3707b1
Switch to vformat_to
Drive-by: reduce the amount of occurences of #ifdef SPDLOG_USE_STD_FORMAT
2022-04-21 21:59:02 -04:00
gabime
dc030ec53c clang-format 2021-11-16 23:44:35 +02:00
Charless Milette
6ff1b83038 Fix usage of std::forward 2021-11-13 11:54:06 -05:00
Charless Milette
44a4517e2b Support C++20 std::format as an alternative to fmtlib 2021-11-13 11:29:05 -05:00
Gabi Melman
29e5930090
Update logger.h 2021-08-17 19:21:39 +03:00
Wolfgang Petroschka
0d10e21c2f Remove inner try catch in SPDLOG_LOGGER_CATCH
The fmt::format call should not throw formatting the exception message and the source code location.
2021-08-17 17:50:35 +02:00
Wolfgang Petroschka
ed27592537 Switch additional information to source location of bad log message 2021-08-17 15:26:59 +02:00
Wolfgang Petroschka
df45d78d14 Windows/wchar problems
Mixing char types in libfmt is a problem and WIP.
2021-08-13 13:53:35 +02:00
Wolfgang Petroschka
119467c580 Added additional information for error handler
Useful when formatting log messages fails. Now you can tell which log message caused the problem.
2021-08-13 12:11:59 +02:00
dkavolis
e471ec884e remove conditional is_convertible_* structs for wide chars 2021-08-09 17:33:00 +01:00
dkavolis
cb35191fc1 clang is acting weird with disabled constructors 2021-08-09 09:59:57 +01:00
Stephane Janel
aecdfc60a0 Fix comment and clang-format 2021-07-27 09:19:02 +02:00
gabime
9049f9aeb9 Fix ambiguous error in clang13 and c++20 2021-07-27 00:26:32 +03:00
dkavolis
d8f13cbd5b replace FormatString template argument with fmt::basic_format_string 2021-07-22 16:23:56 +01:00
dkavolis
1344d44a5a check args on formatting 2021-07-21 23:54:11 +01:00
gabime
db1bc035f7 clang-format 2021-07-20 22:55:47 +03:00
gabime
fe1a4f5fb6 Added SPDLOG_FMT_RUNTIME macro for compatibilty with fmt prior 8 2021-07-20 17:18:40 +03:00
gabime
9c90fe8264 Fixed wchar support 2021-07-20 12:53:50 +03:00
Gabi Melman
5ba95f6816
Update logger.h 2021-07-19 03:46:01 +03:00
Gabi Melman
dc38b7c3c4
Update logger.h 2021-07-19 03:20:34 +03:00
Gabi Melman
6484b03dd9
Update logger.h 2021-07-19 03:09:37 +03:00
gabime
29235d9b4b minor string_view change and comment 2021-07-19 01:15:53 +03:00
gabime
e98265a49b cosmetic reorder of logger funcs definitions 2021-07-19 00:48:01 +03:00
gabime
e87f69bdb6 Removed check if format string can be converted to fmt::is_compile_string 2021-07-19 00:12:17 +03:00
gabime
8faabb4e3a Fix msvc compile 2021-07-10 17:33:08 +03:00
gabime
2838c2c8a5 use vformat_to instead for format_to for better performance 2021-07-10 17:00:13 +03:00
gabime
70b36aa55d Remove fmt::runtime() wrapper in logger.h 2021-07-10 14:07:32 +03:00
gabime
0f83b33d4f backward compatibility with fmt version < 8 2021-07-10 13:48:06 +03:00
Gabi Melman
ffd813435a
fix compile error again with wchar formatting 2021-06-26 20:10:21 +03:00
gabime
cdad84aa46 merge 2021-06-26 18:02:09 +03:00
gabime
a5f5ff70e0 Fixed clang c++20 compile 2021-06-26 17:58:45 +03:00
Gabi Melman
6811112208
Update logger.h 2021-06-24 19:42:12 +03:00
gabime
7b14a65b2b Fixed format_to deprecated warning by wrapping the buffer with std::back_inserter 2021-06-24 17:07:14 +03:00
gabime
e9635c7b2d rethrnow non std exceptions to fix #533 2021-05-01 00:29:36 +03:00
dkavolis
23572369fc Perfect forwarding for arguments 2020-11-02 00:37:03 +00:00
gabime
231ca50700 clang-format 2020-09-26 15:34:05 +03:00
gabime
e69699e12c enable_if 2020-06-08 00:38:30 +03:00
gabime
b0c4794305 Use default pointer type in enable_if 2020-06-06 14:25:36 +03:00
Joe Burzinski
741b0d6e82 Address code review comments: remove perfect forwarding on FormatString template parameters. 2020-06-03 21:47:48 -05:00
Joe Burzinski
3041faffab Address code review comments: revert perfect forwarding on places that didn't need it, remove negative compilation unit test. 2020-06-02 20:30:25 -05:00
Joe Burzinski
30ee690401 Add support for FMT_STRING compile time checking. Add negative compilation unit test for compilers and c++ standard that support relaxed constexpr. 2020-05-31 13:15:40 -05:00
Ron Rechenmacher
faaef7686d pass log_time param by value 2020-04-18 22:44:13 -05:00
Ron Rechenmacher
9e6f5b6b2d add single logger method and log_msg constructor and tests/test_time_point.cpp 2020-04-18 08:58:11 -05:00
Martin Vejdarski
0ca2cb625e Add shared library support for Windows 2020-03-10 03:14:36 +07:00
gabime
5370443ece clang-format 2020-02-10 17:13:41 +02:00
dominicpoeschko
25b10dc264 additional log overload
calling log with a string_view as msg called
```
 template<typename... Args>
    void log(source_loc loc, level::level_enum lvl, string_view_t fmt, const Args &... args)
```

instead of
```
template<class T, typename std::enable_if<std::is_convertible<const T &, spdlog::string_view_t>::value, T>::type * = nullptr>
    void log(source_loc loc, level::level_enum lvl, const T &msg)
```

which lead to an unnecessary call to fmt::format
2020-02-08 11:11:04 +01:00
Cristian Morales Vega
7cdd65075c "#include" <spdlog/.*> instead of "spdlog/.*"
The meaning of using quotes to #include is implementation defined, so it
may or not may be what we want. At least POSIX
(https://pubs.opengroup.org/onlinepubs/9699919799/utilities/c99.html)
says: "headers whose names are enclosed in double-quotes ( "" ) shall be
searched for first in the directory of the file with the #include line",
so not what we want since "spdlog" ends up twice in the path.
2019-11-06 19:15:29 +00:00
gabime
bf40855825 Micro-optimize level checking by inlining 2019-11-03 17:04:34 +02:00
gabime
79468cf676 Micro-optimze log_it_ 2019-11-03 17:00:12 +02:00
gabime
15b393193a Replaced a forgotten try with SPDLOG_TRY 2019-11-03 15:16:03 +02:00
Florian Pigorsch
4aad51a352 Fix some spelling errors.
casese -> cases (1)
chache -> cache (1)
cirucal -> circular (1)
dependecy -> dependency (1)
detrmine -> determine (2)
eavluate -> evaluate (1)
exertnal -> external (1)
ony -> only (1)
registation -> registration (3)
registring -> registering (2)
regsistration -> registration (3)
seperate -> separate (2)
wit -> with (1)
withe -> with (1)
2019-10-19 09:42:38 +02:00
gabime
9a0a0c2d8c clang-format 2019-10-18 16:14:08 +03:00
gabime
fcc809f4f1 Refactored logger 2019-10-18 16:10:57 +03:00
gabime
9369fe8c27 Fix #1262 2019-10-09 21:41:02 +03:00
Gabi Melman
bf49bebe7a
Update logger.h 2019-10-01 01:50:18 +03:00
gabime
4c45c6fbd8 Removed redundant func 2019-09-05 02:31:23 +03:00
gabime
f795297e15 try different apprach to backtracer object 2019-09-05 00:39:11 +03:00
gabime
ed8d099607 Fixed #1197 2019-08-29 01:05:23 +03:00
gabime
f3a7ef1199 Fix compile bug 2019-08-28 23:53:00 +03:00
Gabi Melman
cb890c96b9
Update logger.h 2019-08-28 22:59:16 +03:00
gabime
f5492aed12 Unified usage of fmt::memory_buffer across the codebase 2019-08-28 18:46:09 +03:00
gabime
c97c025adb clang-format 2019-08-27 20:22:07 +03:00
gabime
0fa09f6af4 Removed dead clode 2019-08-27 16:39:18 +03:00
gabime
011ed270e8 backtrace support for wchar api under windows 2019-08-27 15:06:53 +03:00
gabime
408a162044 Removed logger::clone() from API 2019-08-27 01:16:57 +03:00
gabime
e1be7f3d6f Refactoring to better support backtrace 2019-08-27 00:56:49 +03:00
gabime
04a8485b17 Replaced backtace implementation 2019-08-26 19:59:16 +03:00
gabime
f3e379cf78 Fixed async dump_backtrace 2019-08-25 23:55:35 +03:00
gabime
099137fe9a backtrace_sink code cleanup 2019-08-25 18:05:47 +03:00
gabime
a7f7984c4a backtrace support api 2019-08-25 17:24:17 +03:00
gabime
dd33c16aae Replace backtrace trigger with dump_backtrace() 2019-08-23 14:47:40 +03:00
gabime
8d8aacf5e9 Protect from double call to enable_backtrace() 2019-08-23 03:17:45 +03:00
gabime
a6d8b52686 Added enable_backtrace to spdlog_api 2019-08-23 02:28:52 +03:00
gabime
0284a23d0a Changed sink_it_ to accept const log_message& 2019-08-22 19:57:59 +03:00
gabime
0335e3fcc0 Print error and abort instead of throw if SPDLOG_NO_EXEPTIONS is defined 2019-08-19 11:31:33 +03:00
gabime
6506b73523 Add noexcept to move ctor and operator= 2019-08-18 17:33:35 +03:00
gabime
01eb59ca9b Removed spdlog::default_level and its usage in registry 2019-08-16 19:04:49 +03:00
gabime
ffb7c317b5 Fix #1176 again 2019-08-09 10:16:18 +03:00
Gabi Melman
bb7420fc22
Update logger.h 2019-08-07 06:15:46 +03:00
gabime
0df9164e7c Fix #1176 2019-08-07 01:29:59 +03:00