1log4cplus 1.1.2 2 3- Added AbstractSocket::shutdown(). 4 5- Added missing documentation of MDC pattern layout converter. 6 7- Fixed bug #278 - TLS key leak. 8 9- Implemented %E{ENVVAR} pattern layout formatter for expansion of environment 10 variables. 11 12log4cplus 1.1.2-RC3 13 14- Fixed build issues on HP-UX with aCC. 15 16- Fixed build issues on Haiku. 17 18- Added mingw-log4cplus.spec to allow cross-compilation from 19 Fedora. (John Smits) 20 21- Fixed build issues on AIX with XLC. 22 23- Fixed build issues related to Microsoft's foo_s() functions with 24 some version of MinGW tool-chain. 25 26- Tiny speedup of getFormattedTime(). 27 28- Imported newer android/android.toolchain.cmake from OpenCV 29 repository. 30 31 32log4cplus 1.1.2-RC2 33 34- Fixed crash of DLL builds on Windows when _WIN32_WINNT>=0x0600. 35 36- Roll log file both before and after append to avoid logging into 37 stale file when the log file has already been rolled by another 38 logging process. 39 40- Known issue: Logging into a single log file from multiple processes 41 on Windows breaks the rolling of the log files because open files 42 cannot be renamed. 43 44- Fixed bug #166 - Close appender only once even when it is used by 45 multiple loggers. 46 47 48log4cplus 1.1.2-RC1 49 50- Fixed bug #163 - Initialization issue. 51 52- Added --enable-so-version and --enable-release-version configure 53 script options to allow production of undecorated binaries. 54 55 56log4cplus 1.1.1 57 58- FileAppender - Accept also std::ios_base::ate as "append to a log 59 file" specification. 60 61 62log4cplus 1.1.1-RC4 63 64- Fixed bug #156 - Messages are truncated when produced using the 65 LOG4CPLUS_*_FMT() macros. 66 67- Fixed bug #157 - Fedora package build failure. 68 69- Improved log4cplus initialization: 70 71 - Use APC to initialize log4cplus outside loader lock. 72 73 - Use Microsoft C runtime library TLS callbacks to initialize 74 log4cplus as static library. 75 76 - Warn during compilation that automatic initialization is not 77 possible when log4cplus is being compiled with static Microsoft C 78 runtime library. 79 80 - Provide log4cplus::initialize() function to allow users to 81 initialize log4cplus in situations where automatic initialization 82 is not possible. 83 84- Several improvements to CMake build: 85 86 - Fixed OpenBSD + CMake builds. 87 88 - Fixed issues with Visual Studio 2005 CMake builds. 89 90 - Added support for CMake builds on Android with NDK. (Sergey 91 Nikulov) 92 93 - The defines.hxx.cmake file is now generated out of defines.hxx.in. 94 95 - Library version is parsed out of version.h. (Sergey Nikulov) 96 97- MDC formatter for PatternLayout ("%X") now expands into list of key 98 value pairs if no specific key is given. (Yaqian Shen) 99 100- Avoid clock_nanosleep() on Android. 101 102- ServerSocket::accept() can now be interrupted from another thread 103 using new function ServerSocket::interruptAccept(). 104 105 106log4cplus 1.1.1-RC3 107 108- Fixed another MinGW related build failure. 109 110- Fixed mismatched #if/#endif in Windows builds. 111 112 113log4cplus 1.1.1-RC2 114 115- Allow to disable TLS usage in macros through 116 LOG4CPLUS_MACRO_DISABLE_TLS preprocessor symbol. 117 118- Fixed compilation with Clang on Cygwin. 119 120- Fixed SIGSEGV when built with some MinGW distributions. 121 122- Fixed build failure when using -march=i386. 123 124- Implemented thread callback to initialize log4cplus for Visual 125 Studio builds of static library. 126 127- Fixed bug #154 - getHostname() failure because of uninitialized 128 WinSock. 129 130- Fixed detection of C++11 thread_local keyword. 131 132- Fixed builds using DevKit-tdm-32-4.5.2-20111229-1559. 133 134 135log4cplus 1.1.1-RC1 136 137- Improved documentation for various classes. 138 139- Cherry-picked various small improvements from trunk. 140 141- Fixed Unicode builds on *NIX. 142 143- Fixed static library builds from Visual Studio project. 144 145- Suppressed warning C4127 from MSVC. (Chris Steenwyk) 146 147- Improved MinGW32 and MinGW64 toolchains compatiblity. 148 149- Fixed encoding handling in Properties class. 150 151- Added include directive for properties files. (Jukka Lantto) 152 153- Added colored output for Win32ConsoleAppender. (Konstantin Baumann) 154 155- (Re)Introduced support for C++Builder (XE3) 156 157- Reimplemented acceptSocket() using select() on Windows to allow 158 interrupting the accept() call from different thread. 159 160 161log4cplus 1.1.0 162 163- Fixed MacOS X support - Reimplemented semaphores using named ones 164 for Apple builds. 165 166- Fixed resource leak on failure in openSocket(). 167 168- Improved configuration file modification check to include file size, 169 in addition to file modification time. 170 171 172log4cplus 1.1.0-RC10 173 174- Fixed non-STLPort4 builds with Solaris Studio. Switch 175 '-library=stlport4' is only added if CXXFLAGS does not already 176 contain a switch matching -library=(stlport4|stdcxx4|Cstd). 177 178- Fixed --disable-shared MinGW builds. 179 180- Fixed non-working MinGW DLL binaries. DllMain() was not being called 181 because of missing extern "C" in its definition. 182 183- CMake build configuration checks have been improved. (Chernyshev 184 Vyacheslav) 185 186- GCC switch -O2 is only added if CXXFLAGS does not already contain 187 any other -O. 188 189- Improved logging speed using SysLogAppender and Log4jUdpAppender by 190 optimizations in both the loggers and in common sockets code. 191 192- FileAppender locale can now be specified in properties files using 193 Locale property. See FileAppender Doxygen documentation for more 194 details. 195 196 197log4cplus 1.1.0-RC9 198 199- Improved Log4jUdpAppender compatibility with Chainsaw. 200 201- Fixed crash, bugs #3467112 and #3563699, related to thread-local 202 storage destruction. 203 204- Fixed build with Visual Studio 2005, bug #3565529. (xg00) 205 206- Created Cygwin port's .cygport definition for log4cplus. 207 208- Improved hiding of private symbols using GCC's 209 __attribute__((visibility("hidden"))) and Solaris Studio's __hidden. 210 211- Fixed build in environments where DEBUG (and other log level names) 212 are macros. (Chernyshev Vyacheslav) 213 214- Improved configuration of threads support. (Jens Rehsack) 215 216 217log4cplus 1.1.0-RC8 218 219- Turned on __thread (TLS) detection on NetBSD 5.1.0 and later that 220 has been previously disabled. 221 222- Improved compatibility with log4cplus 1.0.x: allow using log4cplus 223 1.0.x log level to string callbacks in 1.1.x. 224 225- Improved various M4 macros. 226 227- Added detection and use C++11 thread_local. 228 229- Fixed XML entities escaping in Log4jUdpAppender. 230 231- Re-added synchronization between ConsoleAppender and LogLog. 232 233- Changed C logger API to return int instead of bool. 234 235- Added C logger API to Visual Studio 2010 projects. 236 237- Implemented remote syslog logging using UDP in SysLogAppender. 238 239- Enabled SysLogAppender on Windows with only remote syslog logging 240 enabled. 241 242 243log4cplus 1.1.0-RC7 244 245IMPORTANT: Builds with --with-iconv configure switch now assume UTF-8 246 for plain char strings. 247 248- Bumped up SO version for UDP sockets support related changes. 249 250- Removed Windows CE support. 251 252- Regenerated with Automake 1.12.2. 253 254- Fixed Fedora RPM builds spec file. 255 256- Implemented log4cplus.disableOverride similar to log4j's 257 log4j.disableOverride. 258 259- Improved support of profiling and debugging builds with Sun CC. 260 261- Added documentation for configure script options. 262 263- Added detection and use of clock_nanosleep(). 264 265- Disabled __thread (TLS) detection for NetBSD. It is broken there. 266 267- New appender: Log4jUdpAppender. It allows logging using UDP with 268 log4j XML payload to Chainsaw or Log2Console. (Siva Chandran P) 269 270- Added support for __func__ as function name source for logging 271 events. 272 273 274log4cplus 1.1.0-RC6 275 276- Fixed compilation for build with wchar_t being alias to unsigned 277 short (/Zc:wchar_t-) (Windows). 278 279- Added new appender CLFSAppender (experimental), based on Microsoft 280 Common Log File System API. 281 282- Added new appender Qt4DebugAppender (experimenta), based on Qt4's 283 qDebug(), qWarning() and qCritical() functions. 284 285- Fixed bug #3530769 - compilation issues with Visual Studio 2011. 286 287- Added log4cplus.quietMode property handling to PropertyConfigurator. 288 289- Added #pragma once to all headers. 290 291- Implemented Time::gettimeofday() using Win32 API's 292 GetSystemTimeAsFileTime(). 293 294- Moved file based locking from FileAppender to Appender to make it 295 available for all appenders. 296 297- Changed Windows configuration to use __declspec(thread) when 298 compiling for Windows Vista or later and TlsAlloc() otherwise. 299 300- Implemented %r PatternLayout format specifier - miliseconds since 301 process start. 302 303- Fixed bug #3101459 - TTCCLayout time is not in milliseconds since 304 process start by default. 305 306 307log4cplus 1.1.0-RC5 308 309- Fixed single threaded log4cplus build issues. 310 311- Added ability to log to std::cerr (Andreas Bießmann). 312 313- Fixed disabling of LOG4CPLUS_*_FMT() macros. 314 315 316log4cplus 1.1.0-RC4 317 318IMPORTANT: Compilation with Solaris Studio now depends on STLPort 319 (-library=stlport4 switch). The default Cstd library is not 320 conforming enough for use in log4cplus. 321 322- Improved behaviour of log4cplus as a component of larger CMake based 323 project (Andreas Bießmann). 324 325- Updated various Autoconf detection scripts in m4/ directory to newer 326 versions. 327 328- Fixed some signedness and overflow warnings. 329 330- Improved Autotools build system's behaviour for cross compilation. 331 332- Added detection of C++11 <atomic> header and related 333 functions. Implemented SharedObject reference counting using C++11 334 atomics where possible. 335 336- Fixed compilation with GCC 4.6 in C++11 mode. 337 338- Fixed some single-threaded compilation and run time issues. 339 340- Fixed bug #3520891 - FileAppender buffering issue. 341 342- Updated to Autoconf 2.69, Automake 1.12 and Libtool 2.4.2. 343 344- Documented build procedure for Solaris Studio. 345 346- Improved support for Solaris Studio in configure.in. 347 348 349log4cplus 1.1.0-RC3 350 351- Fixed log4cplusS.vcxproj - Added missing source files to the 352 project. 353 354 355log4cplus 1.1.0-RC2 356 357- CMake build system fixes. 358 359- Fixed TTCCLayout double time stamp issue. 360 361 362log4cplus 1.1.0-RC1 363 364Important changes relative to PRODUCTION_1_0_x branch: 365 366- Added AsyncAppender. 367 368- Added simple C interface for interoperability with C. 369 370- Added inter-process file locking to file appenders to allow logging 371 into a single log file from multiple processes. 372 373- Added Mapped Diagnostic Context (MDC) and associated converter (%X). 374 375- Added alternative thread identification (%T) converter to pattern layout. 376 377- Added function name converter (%M). 378 379- Added wchar_t <-> char conversion implementations based on standard 380 C locale functions and based on iconv(). 381 382- Added DeviceAppender to allow use of Boost.IOStream's Sink as appender. 383 384- Added LOG4CPLUS_*_FMT() macros to allow printf-like formatted output 385 where it is possible. 386 387- Logging macros now accept both logger name as string and Logger 388 instance as their first parameter. 389