2
0
mirror of https://github.com/boostorg/log.git synced 2026-02-10 11:32:32 +00:00
Commit Graph

436 Commits

Author SHA1 Message Date
Andrey Semashev
0e2965b4ee More robust conversions if pthread_key_t is a signed integer. 2016-04-14 19:32:03 +03:00
Andrey Semashev
bcc1e533e1 Removed unnecessary virtual destructor for logger_holder_base.
Also added a forwarding constructor to logger_holder to move the logger
instead of copying it.
2016-04-14 19:32:03 +03:00
Andrey Semashev
f596af6e01 Added remove method to the interprocess message queue. 2016-04-14 19:32:03 +03:00
Andrey Semashev
48721d0dc0 Added exception throw methods that take C-style strings for messages.
This results in mode compact code at throw sites as often the exception
is thrown with a constant string literal as the description. std::string
construction was effectively duplicated at every throw site.

Also added constructors taking const char* to bad_alloc-derived
exceptions to remove one std::string allocation.
2016-04-14 19:32:03 +03:00
Andrey Semashev
b909c5bdb3 Added a slightly more optimal implementation for the case when pthread_key_t is an integer, like on Linux. 2016-04-14 19:32:03 +03:00
Andrey Semashev
83e7e33646 Removed union-based type punning. Added result checks for pthread_setspecific. 2016-04-14 19:32:03 +03:00
Andrey Semashev
b284e68200 Moved queue overflow policy handling to the IPC queue. Compilation fixes. 2016-04-14 19:32:03 +03:00
Andrey Semashev
60c33d501e Implemented receiving messages. Working on the updated sink backend interface. 2016-04-14 19:32:03 +03:00
Andrey Semashev
9fb7b75415 Implemented interprocess queue creation and opening. 2016-04-14 19:32:03 +03:00
Andrey Semashev
25c96d32df Added a boostdoc target to unify Boost release docs building. 2016-04-14 19:32:03 +03:00
Andrey Semashev
84b45f78a6 Continuing renaming files. 2016-04-14 19:32:03 +03:00
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. boost-1.61.0 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
3d498a0100 Fixed a link to the header reference. 2016-04-04 19:35:05 +03:00
Andrey Semashev
696a0a72af Changed the fix for Solaris to define _XOPEN_SOURCE=500. This should fix #12098. 2016-04-01 10:56:15 +03:00
Andrey Semashev
886f0d0eb9 Attempt to work around #12098. Solaris headers cannot be included in C++ when _XOPEN_SOURCE=600 is defined. 2016-03-26 14:18:14 +03:00
Andrey Semashev
f56bf1f510 Updated changelog. 2016-03-25 00:23:25 +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
2f6facfdcd Silenced signed/unsigned mismatch warnings. 2016-02-25 21:26:04 +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
Andrey Semashev
353278865b Updated changelog. 2016-02-17 23:35:44 +03:00
Andrey Semashev
854e15269a Merge pull request #26 from gsauthof/solaris10xopen600
Request POSIX 2004 definitions on Solaris 10
2016-02-09 11:56:22 +03:00
Georg Sauthoff
b2bc15cf81 Request POSIX 2004 definitions on Solaris 10
Otherwise, the Boost Log build fails.

Tested on Solaris 10/SPARC (with gcc 4.9).
2016-02-08 20:58:36 +01:00
Erich Keane
cd09f68d24 Fixed previous build issue with keyword specification 2015-12-29 11:27:43 -08:00
Erich Keane
5b8575cfab Added max_files to parser_utils and init_from_settings 2015-12-29 11:20:57 -08:00
Erich Keane
2b9cf67a4a Add max_files parameter to the examples that use make_file_collector 2015-12-29 11:16:51 -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
1f32d51dce Added branch prediction hints. 2015-12-20 23:12:35 +03:00
Andrey Semashev
953f2f2132 Updated changelog. 2015-12-20 21:57:37 +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
88ec57deac Avoid including unneeded Windows headers when SSSE2/AVX2 are not enabled. This hopefully fixes including a missing header on Windows CE. 2015-12-20 15:18:18 +03:00
Andrey Semashev
eeb9ddb1b8 Move some includes to more correct places. 2015-12-20 14:33:48 +03:00
Andrey Semashev
f667fdd8fd Undef BOOST_AUTO_LINK_NOMANGLE after it's been used. 2015-12-20 14:32:13 +03:00
Andrey Semashev
f75dd58956 Merge pull request #20 from remote-tracking branch 'muggenhor/no-undesired-auto-linking' into develop. 2015-12-20 14:29:02 +03:00