Andrey Semashev
c072158b44
Moved interprocess_message_queue.hpp -> ipc/reliable_message_queue.hpp.
2016-04-14 19:32:03 +03:00
Andrey Semashev
51da22b2e6
Extracted open_mode and permissions to separate headers.
2016-04-14 19:32:03 +03:00
Andrey Semashev
096a4c22c0
Added noexcept specifiers.
2016-04-14 19:32:03 +03:00
Andrey Semashev
489ac05ddd
Extracting interprocess message queue to separate headers/sources.
2016-04-14 19:32:03 +03:00
Andrey Semashev
100388e7db
Renamed keyword permission -> permissions.
2016-04-14 19:32:03 +03:00
Andrey Semashev
2086ecb3ad
Renamed permission.hpp -> permissions.hpp.
2016-04-14 19:32:03 +03:00
Andrey Semashev
9f1978619b
Extracted permissions wrapper to a separate header. Avoid using shared_ptr on Windows and add interop with Boost.Interprocess.
2016-04-14 19:32:03 +03:00
Andrey Semashev
0cc56f385e
Trim trailing spaces.
2016-04-14 19:32:02 +03:00
Lingxi-Li
8d9002cab8
Add text_ipc_message_queue_backend
...
This new sink backend supports logging messages to an interprocess
message queue.
2016-04-14 19:32:02 +03:00
Andrey Semashev
5c5485122b
Replaced the local forward declaration with string_ref_fwd.hpp as the latter has been reinstated in develop.
2016-04-14 19:31:20 +03:00
Andrey Semashev
768ac379db
Removed the default template argument type from basic_string_ref declaration to avoid conflicts with string_ref.hpp.
2016-04-12 11:13:55 +03:00
Andrey Semashev
4eeadedc98
Extended the workaround for #12025 to MSVC-11 as it is reported to have the same bug.
2016-03-25 00:22:38 +03:00
Andrey Semashev
b449b30cfc
Use move constructor when initializing an attribute value from an rvalue. Fixes #12043 .
2016-03-07 19:23:10 +03:00
Andrey Semashev
4cd22e1103
Fixes #12025 . Added a workaround for MSVC-10 generating broken code for formatters in some cases.
2016-02-27 23:14:27 +03:00
Andrey Semashev
5de58e8a61
Added documentation and comments.
2016-02-25 22:07:29 +03:00
Andrey Semashev
c53fc57bff
Merge remote-tracking branch 'erichkeane/add_max_files' into develop
...
Merge pull request: https://github.com/boostorg/log/pull/24
2016-02-25 21:37:23 +03:00
Andrey Semashev
b2ca4e9673
Restored support for basic_string_ref as it is kept present in Boost.Utility for a deprecation period.
2016-02-25 21:24:19 +03:00
Erich Keane
cd09f68d24
Fixed previous build issue with keyword specification
2015-12-29 11:27:43 -08:00
Erich Keane
5234253333
Added max_files option to text_file_backend's file_collector
...
As requested here: https://svn.boost.org/trac/boost/ticket/8746
this commit introduces the boost::log::keywords::max_files keyword
and implements this functionality in the file collector.
Additionally, the non-keyword make_collector call has max_files added as
a uintmax_t parameter, which has a default value as to not break
existing code.
The purpose of this is to limit the total number of files in the
collected logs. If not specified, the limit will be
std::numeric_limits<uintmax_t>::max(), which is likely greater than the
capacity of the filesystem.
2015-12-29 11:07:41 -08:00
Andrey Semashev
30fcf0ef2d
Renamed all uses of basic_string_ref to basic_string_view to follow Boost.Utility.
2015-12-23 01:58:20 +03:00
Andrey Semashev
a31ec74e51
Make sure that Windows API version is consistent for all sources.
...
Include winapi/config.hpp as soon as possible; avoid including even
Boost.Config before it so that it doesn't set Windows API version
accidentally by including some third party header. In all source files,
include detail/config.hpp or detail/setup_config.hpp first thing.
Moved all WinAPI config macros to the Jamfile.v2 and removed
windows_version.hpp as it was no longer needed. Also enabled inclusion of
windows.h while compiling the library.
Removed auto-linking with psapi.lib and advapi32.lib as it was no longer
working after ecf3114 . Added linking with advapi32.lib to Jamfile.v2.
2015-12-20 21:05:28 +03:00
Andrey Semashev
c6f09d69c8
Fixed compilation on POSIX-like systems. Ported GetTickCount64 emulation to Boost.Atomic and got rid of union-based type punning as it is formally an UB.
2015-12-20 18:15:38 +03:00
Andrey Semashev
388a3e2126
Switch more code to the WinAPI abstraction layer. Use GetModuleHandleW and get_proc_address everywhere to avoid compilation errors for Windows CE.
2015-12-20 17:26:34 +03:00
Andrey Semashev
2f88565e5b
Merge pull request #23 from muggenhor/msvc9-sfinae-compatibility
...
Use the MSVC 8 workaround for SFINAE on MSVC 9 as it fails similarly.
2015-12-20 14:23:37 +03:00
Andrey Semashev
92bc025942
Use Boost.Detail.WinAPI for Windows API declarations. Use #pragma intrinsic only with MSVC.
2015-11-15 17:47:43 +03:00
Andrey Semashev
b5969e5233
Changed adaptive_mutex to use pthread_mutex_t. On systems that support it (Linux, FreeBSD, OpenBSD) PTHREAD_MUTEX_ADAPTIVE_NP is used, otherwise the default mutex type. This greatly imporoves performance in case of heavy thread contention: 100 threads - x2.7 records per second, 1000 threads - x4. Less contended cases are mostly unaffected.
2015-11-15 17:18:48 +03:00
Andrey Semashev
5434177322
Renamed spin_mutex.hpp to adaptive_mutex.hpp.
2015-11-15 16:12:13 +03:00
Andrey Semashev
f9dfc45d85
Cleaned up the TLS implementation to avoid reinterpret_casts and associated warnings about violating strict aliasing rules.
2015-11-10 00:59:21 +03:00
Andrey Semashev
fd3e82a610
Added an explicit call to terminate if any exceptions are thrown in the async frontend destructor. This would have been the case in C++11 already, but the explicit call makes some static analyzers happy and also mandates the same behavior in C++03.
2015-11-04 13:25:24 +03:00
Giel van Schijndel
3b6d6dc158
Use the MSVC 8 workaround on 9 for SFINAE fail too
...
Template expansion fails on MSVC 9 otherwise with:
> error C2440: 'default argument' : cannot convert from 'int' to 'boost::type'
on the basic_formatter constructor taking a functor.
2015-10-30 14:35:42 +01:00
Andrey Semashev
03325f9dca
Removed novtable attribute, which is no longer valid.
2015-10-15 23:00:23 +03:00
Andrey Semashev
6845eb43cc
Use Boost.Atomic for atomic operations. Remove obsolete atomic_queue.hpp header.
2015-10-15 22:52:06 +03:00
Andrey Semashev
c7f18fd7ab
Replaced BOOST_LOG_USE_WINNT6_API macro with BOOST_USE_WINAPI_VERSION. The target Windows version is now selected with the WinAPI submodule. Also simplified a few preprocessor checks and updated docs.
2015-10-14 22:04:02 +03:00
Andrey Semashev
a65d75a30e
Another workaround for MSVC-7.1.
2015-10-13 12:53:18 +03:00
Andrey Semashev
eaf71c96ab
A workaround for MSVC 7.1.
2015-10-12 12:24:29 +03:00
Andrey Semashev
490f2dc5b6
Attempt to fix compilation with MSVC-7.1.
2015-10-09 12:45:40 +03:00
Andrey Semashev
e651649e4d
A cleaner workaround for MSVC-10 and older bug that results in picking a wrong constructor of pattern_replacer.
2015-10-06 23:56:23 +03:00
Andrey Semashev
7c210933e8
Added a workaround for MSVC-10 and older bug that results in picking a wrong constructor of pattern_replacer.
2015-10-05 23:42:48 +03:00
Andrey Semashev
b559675cfe
Corrected docs.
2015-10-04 12:03:05 +03:00
Andrey Semashev
b7de827f23
Fixed compilation of character decorators. Added tests.
2015-09-26 19:20:07 +03:00
Andrey Semashev
b328b0bf9d
Merge pull request #10 from crmoore/fix-setup-linking-clang
...
Fixed missing symbols in libboost_log_setup (on mac/clang)
2015-08-25 10:32:42 +03:00
Andrey Semashev
00cb99aa07
Workaround for MSVC 10 compiler bug. It fails to use sentry in conditional expressions in a particular case.
2015-08-25 10:29:27 +03:00
Christopher Moore
870284ed31
Fixed missing symbols in libboost_log_setup (on mac/clang)
2015-08-24 14:30:58 -04:00
Andrey Semashev
44ef109505
Fixed #11541 . Fixed compilation when native wchar_t type is disabled. Added a note of discouragement to the configuration section.
2015-08-23 20:30:30 +03:00
Andrey Semashev
c2789a4eff
Added a workaround for Solaris Studio 12.4, which should fix the compilation of formatting_ostream. Fixed #11545 .
2015-08-23 17:45:49 +03:00
Andrey Semashev
7da193fde1
Fixed compilation of operator<< into a record ostream, when the operator right hand argument is not directly supported by formatting_ostream. Fixed #11549 .
2015-08-23 17:27:20 +03:00
Andrey Semashev
4be8a1fde6
Removed the check for VC-14 broken codecvt facets. The similar check has been merged to Boost.Config master.
2015-08-04 21:17:10 +03:00
Andrey Semashev
1bb9312a8e
Define BOOST_LOG_NO_CXX11_CODECVT_FACETS for VC14 (replicate the Boost.Config fix that has not been merged to master yet).
2015-08-01 17:14:54 +03:00
Andrey Semashev
9e63900033
Removed the check for MSVC for C++11 codecvt facets as it was moved to Boost.Config.
2015-07-27 14:53:49 +03:00
Andrey Semashev
38af3c7754
Updated check for C++11 codecvt specializations availability.
2015-07-26 18:35:20 +03:00