* clang format configuration file replaces sublime Astyleformatter
* instructions added to pull request template
* code base re-formatted to be consistent throughout.
* Fix FileSink dropping messages introduced by 'optionable buffer to x messages' feature
Commit 6c6122fafc introduced a bug where 99 out of 100 logs were actually dumped
* Updated unit tests to trigger sink flush bug
---------
Co-authored-by: Ryan Ammoury <ryan.ammoury@squadrone-system.com>
* It is confusing to name the target g3logger. KISS --> g3log. This MIGHT break installations for some but it's a needed correction.
* Updated version number to 2.1.x
2020-07-08 22:42:55 -06:00
Kjell Hedström : Available for new Engineering Leadership and Engineering Opportunities
* restore original sigaction in restoreSignalHandler
- Save original sigactions in a map called gSavedSigActions
- In restoreSignalHandler, do nothing if there is no saved sigaction.
If there is a saved sigaction, then re-install it.
- Fixes issue #253
* fix bug found in code review of PR #254
* add functions for reporting sigaction errors
- Factor out reportSigactionError functions from functions that
call sigaction to allow unit testing.
- Use strsignal libc function to convert from signal number to name
to eliminate chance of not finding the name in {g,k}Signals maps.
* cleanup. perror doesn't need a wrapper. put code under test
* unit tests running with windows shared dll
* CMake automatically uses DLL runtime - remove cmake entries modifying
compiler flags
* missing DBUG vs DEBUG issue in Linux
* generated header added
* correction in CMake: Set HEADER_FILES correctly
* added static library option
* switched to powershell and included WORKING_DIRECTORY
* powershell use in windows and WORKING_DIRECTORY instead of cd
* Fixed appveyor.yml to use Release configuration and run unit tests
* trying to make appveyor work again ...
* make sure ERRORLEVEL is 0 when unit tests run successfully
* Still trying to fix appveyor ...
* Defaulting to shared library in linux, too
* Removed runtime loading test when g3log is not a shared library in linux
* Run unit tests verbosly using ctest.exe
* Disabled AggressiveThreadCallsDuringShutdown test
* Revert "Run unit tests verbosly using ctest.exe" (accidental commit)
This reverts commit b30513450d.
* re-committing valid parts of reverted commit
* DBUG vs DEBUG fix moved to generated_definitions.hpp
* cleanup shared/static option
* clarify cmake build types regardless of type
* Added compile test for DEBUG and DBUG
* put back formatting
* Removed commented out /MD switches for MSVC
* static build with MS libs; remove vc11 support from cmake
* support AMD processor on winXp
* mingw build
* support older versions
* removed cmake warnings
* fix cmake >= 3.1 warnings (CMP0054)
* add target_include_directories - in projects that depend on g3log, do not need to specify include_directories
* Improved CPackage installation
* cleanup of build and test scripts
* c++14 gives for cleaner syntax
* build cleanup libg3logger.so will be a link to the actual libg3logger.so.<major><minor><build>. Only shared libraries from now on
* disableAll for log levels
* new setLogLevel impl
* cleaned up levels, now it should be easy for the user to understand how to add custom levels
addLogLevel again resets the log level to the passed enable_state as even requesting the level before adding it would otherwise lead to unexpectedly not setting a "new" level to the passed state. We now assume setLogLevel is not called before addLogLevel without considering this behavior.
Due to popular request I have added the possibility to put in your own custom log levels. Due to performance regards changes to the log levels should ONLY be done
in a single thread context (initialiation) for that reason the namespace
used to "setLogLevel" is named appropriately
i.e. use: g3::only_change_at_initialization::setLogLevel(...)
1) Breaking change: g3 namespace replaces g2
2) g2log.hpp remains in src/g2log.hpp... but now all it does is to include the g3log.hpp, etc
3) ALL HEADER FILES ARE IN src/g3log/ while all .cpp and .ipp files are in /src (exception for g2log.hpp)
This should make it EASIER for clients to copy/install the header files to the new location. It greatly simplifies
rpm and cpackage installationsw
All other are under g3log. Example: #include <g3log/time.hpp> #include <g3log/g3log.hpp> etc
This makes sure that the package manager (to be used soon) does NOT clutter any /usr/local/include space
instead all the includes will be in /usr/local/include/g3log (or similar)