log4cplus 1.1.3-RC1 - Added --enable-symbols-visibility-options to configure script to allow turning off use of compiler and platform specific symbols visibility options. - Added ENABLE_SYMBOLS_VISIBILITY setting for CMake build system to the same effect as above. - Disabled LOG4CPLUS_INLINES_ARE_EXPORTED to fix linking issues on MinGW GCC 4.8.x. - Added LOG4CPLUS_BUILD_LOGGINGSERVER setting for CMake build system to allow disabling loggingserver. (Maxym) - Allow users overriding LOG4CPLUS_MACRO_FUNCTION. - Improved Android platform detection in CMake build system. (Maxym) - Allow overriding ConfigureChecks.cmake with user supplied file to help with issues on iOS platform. - Updated android.toolchain.cmake from OpenCV project. - Added iOS support to CMake build system. (Maxym) - Fixed compilation issue of single-threaded builds on Windows. - Improved CMake build system's default installation directories for GNU platforms by using GNUInstallDirs module. log4cplus 1.1.2 - Added AbstractSocket::shutdown(). - Added missing documentation of MDC pattern layout converter. - Fixed bug #278 - TLS key leak. - Implemented %E{ENVVAR} pattern layout formatter for expansion of environment variables. (Ray Logel) log4cplus 1.1.2-RC3 - Fixed build issues on HP-UX with aCC. - Fixed build issues on Haiku. - Added mingw-log4cplus.spec to allow cross-compilation from Fedora. (John Smits) - Fixed build issues on AIX with XLC. - Fixed build issues related to Microsoft's foo_s() functions with some version of MinGW tool-chain. - Tiny speedup of getFormattedTime(). - Imported newer android/android.toolchain.cmake from OpenCV repository. log4cplus 1.1.2-RC2 - Fixed crash of DLL builds on Windows when _WIN32_WINNT>=0x0600. - Roll log file both before and after append to avoid logging into stale file when the log file has already been rolled by another logging process. - Known issue: Logging into a single log file from multiple processes on Windows breaks the rolling of the log files because open files cannot be renamed. - Fixed bug #166 - Close appender only once even when it is used by multiple loggers. log4cplus 1.1.2-RC1 - Fixed bug #163 - Initialization issue. - Added --enable-so-version and --enable-release-version configure script options to allow production of undecorated binaries. log4cplus 1.1.1 - FileAppender - Accept also std::ios_base::ate as "append to a log file" specification. log4cplus 1.1.1-RC4 - Fixed bug #156 - Messages are truncated when produced using the LOG4CPLUS_*_FMT() macros. - Fixed bug #157 - Fedora package build failure. - Improved log4cplus initialization: - Use APC to initialize log4cplus outside loader lock. - Use Microsoft C runtime library TLS callbacks to initialize log4cplus as static library. - Warn during compilation that automatic initialization is not possible when log4cplus is being compiled with static Microsoft C runtime library. - Provide log4cplus::initialize() function to allow users to initialize log4cplus in situations where automatic initialization is not possible. - Several improvements to CMake build: - Fixed OpenBSD + CMake builds. - Fixed issues with Visual Studio 2005 CMake builds. - Added support for CMake builds on Android with NDK. (Sergey Nikulov) - The defines.hxx.cmake file is now generated out of defines.hxx.in. - Library version is parsed out of version.h. (Sergey Nikulov) - MDC formatter for PatternLayout ("%X") now expands into list of key value pairs if no specific key is given. (Yaqian Shen) - Avoid clock_nanosleep() on Android. - ServerSocket::accept() can now be interrupted from another thread using new function ServerSocket::interruptAccept(). log4cplus 1.1.1-RC3 - Fixed another MinGW related build failure. - Fixed mismatched #if/#endif in Windows builds. log4cplus 1.1.1-RC2 - Allow to disable TLS usage in macros through LOG4CPLUS_MACRO_DISABLE_TLS preprocessor symbol. - Fixed compilation with Clang on Cygwin. - Fixed SIGSEGV when built with some MinGW distributions. - Fixed build failure when using -march=i386. - Implemented thread callback to initialize log4cplus for Visual Studio builds of static library. - Fixed bug #154 - getHostname() failure because of uninitialized WinSock. - Fixed detection of C++11 thread_local keyword. - Fixed builds using DevKit-tdm-32-4.5.2-20111229-1559. log4cplus 1.1.1-RC1 - Improved documentation for various classes. - Cherry-picked various small improvements from trunk. - Fixed Unicode builds on *NIX. - Fixed static library builds from Visual Studio project. - Suppressed warning C4127 from MSVC. (Chris Steenwyk) - Improved MinGW32 and MinGW64 toolchains compatiblity. - Fixed encoding handling in Properties class. - Added include directive for properties files. (Jukka Lantto) - Added colored output for Win32ConsoleAppender. (Konstantin Baumann) - (Re)Introduced support for C++Builder (XE3) - Reimplemented acceptSocket() using select() on Windows to allow interrupting the accept() call from different thread. log4cplus 1.1.0 - Fixed MacOS X support - Reimplemented semaphores using named ones for Apple builds. - Fixed resource leak on failure in openSocket(). - Improved configuration file modification check to include file size, in addition to file modification time. log4cplus 1.1.0-RC10 - Fixed non-STLPort4 builds with Solaris Studio. Switch '-library=stlport4' is only added if CXXFLAGS does not already contain a switch matching -library=(stlport4|stdcxx4|Cstd). - Fixed --disable-shared MinGW builds. - Fixed non-working MinGW DLL binaries. DllMain() was not being called because of missing extern "C" in its definition. - CMake build configuration checks have been improved. (Chernyshev Vyacheslav) - GCC switch -O2 is only added if CXXFLAGS does not already contain any other -O. - Improved logging speed using SysLogAppender and Log4jUdpAppender by optimizations in both the loggers and in common sockets code. - FileAppender locale can now be specified in properties files using Locale property. See FileAppender Doxygen documentation for more details. log4cplus 1.1.0-RC9 - Improved Log4jUdpAppender compatibility with Chainsaw. - Fixed crash, bugs #3467112 and #3563699, related to thread-local storage destruction. - Fixed build with Visual Studio 2005, bug #3565529. (xg00) - Created Cygwin port's .cygport definition for log4cplus. - Improved hiding of private symbols using GCC's __attribute__((visibility("hidden"))) and Solaris Studio's __hidden. - Fixed build in environments where DEBUG (and other log level names) are macros. (Chernyshev Vyacheslav) - Improved configuration of threads support. (Jens Rehsack) log4cplus 1.1.0-RC8 - Turned on __thread (TLS) detection on NetBSD 5.1.0 and later that has been previously disabled. - Improved compatibility with log4cplus 1.0.x: allow using log4cplus 1.0.x log level to string callbacks in 1.1.x. - Improved various M4 macros. - Added detection and use C++11 thread_local. - Fixed XML entities escaping in Log4jUdpAppender. - Re-added synchronization between ConsoleAppender and LogLog. - Changed C logger API to return int instead of bool. - Added C logger API to Visual Studio 2010 projects. - Implemented remote syslog logging using UDP in SysLogAppender. - Enabled SysLogAppender on Windows with only remote syslog logging enabled. log4cplus 1.1.0-RC7 IMPORTANT: Builds with --with-iconv configure switch now assume UTF-8 for plain char strings. - Bumped up SO version for UDP sockets support related changes. - Removed Windows CE support. - Regenerated with Automake 1.12.2. - Fixed Fedora RPM builds spec file. - Implemented log4cplus.disableOverride similar to log4j's log4j.disableOverride. - Improved support of profiling and debugging builds with Sun CC. - Added documentation for configure script options. - Added detection and use of clock_nanosleep(). - Disabled __thread (TLS) detection for NetBSD. It is broken there. - New appender: Log4jUdpAppender. It allows logging using UDP with log4j XML payload to Chainsaw or Log2Console. (Siva Chandran P) - Added support for __func__ as function name source for logging events. log4cplus 1.1.0-RC6 - Fixed compilation for build with wchar_t being alias to unsigned short (/Zc:wchar_t-) (Windows). - Added new appender CLFSAppender (experimental), based on Microsoft Common Log File System API. - Added new appender Qt4DebugAppender (experimenta), based on Qt4's qDebug(), qWarning() and qCritical() functions. - Fixed bug #3530769 - compilation issues with Visual Studio 2011. - Added log4cplus.quietMode property handling to PropertyConfigurator. - Added #pragma once to all headers. - Implemented Time::gettimeofday() using Win32 API's GetSystemTimeAsFileTime(). - Moved file based locking from FileAppender to Appender to make it available for all appenders. - Changed Windows configuration to use __declspec(thread) when compiling for Windows Vista or later and TlsAlloc() otherwise. - Implemented %r PatternLayout format specifier - miliseconds since process start. - Fixed bug #3101459 - TTCCLayout time is not in milliseconds since process start by default. log4cplus 1.1.0-RC5 - Fixed single threaded log4cplus build issues. - Added ability to log to std::cerr (Andreas Bießmann). - Fixed disabling of LOG4CPLUS_*_FMT() macros. log4cplus 1.1.0-RC4 IMPORTANT: Compilation with Solaris Studio now depends on STLPort (-library=stlport4 switch). The default Cstd library is not conforming enough for use in log4cplus. - Improved behaviour of log4cplus as a component of larger CMake based project (Andreas Bießmann). - Updated various Autoconf detection scripts in m4/ directory to newer versions. - Fixed some signedness and overflow warnings. - Improved Autotools build system's behaviour for cross compilation. - Added detection of C++11 header and related functions. Implemented SharedObject reference counting using C++11 atomics where possible. - Fixed compilation with GCC 4.6 in C++11 mode. - Fixed some single-threaded compilation and run time issues. - Fixed bug #3520891 - FileAppender buffering issue. - Updated to Autoconf 2.69, Automake 1.12 and Libtool 2.4.2. - Documented build procedure for Solaris Studio. - Improved support for Solaris Studio in configure.in. log4cplus 1.1.0-RC3 - Fixed log4cplusS.vcxproj - Added missing source files to the project. log4cplus 1.1.0-RC2 - CMake build system fixes. - Fixed TTCCLayout double time stamp issue. log4cplus 1.1.0-RC1 Important changes relative to PRODUCTION_1_0_x branch: - Added AsyncAppender. - Added simple C interface for interoperability with C. - Added inter-process file locking to file appenders to allow logging into a single log file from multiple processes. - Added Mapped Diagnostic Context (MDC) and associated converter (%X). - Added alternative thread identification (%T) converter to pattern layout. - Added function name converter (%M). - Added wchar_t <-> char conversion implementations based on standard C locale functions and based on iconv(). - Added DeviceAppender to allow use of Boost.IOStream's Sink as appender. - Added LOG4CPLUS_*_FMT() macros to allow printf-like formatted output where it is possible. - Logging macros now accept both logger name as string and Logger instance as their first parameter.