Apache logging services logo Apache log4j logo


Release History

Version Date Description
0.11.0 2020-08-09 Maintenance release.
0.10.0 2008-04-03 First Apache release
0.9.7 2004-05-10  
0.9.6 2004-04-11  
0.9.5 2004-02-04  
0.9.4 2003-10-25  
0.9.3 2003-09-19  
0.9.2 2003-08-10  
0.9.1 2003-08-06  
0.9.0 2003-08-06  
0.1.1 2003-07-09  
0.1.0 2003-07-08  
0.0.1 2003-05-31  

Release 0.11.0 - 2020-08-09

Type Changes By
fix cmake and autotools generate different versioned binaries Fixes LOGCXX-512.
fix CachedDateFormat reuses timestamps without updating milliseconds after formatting timestamp with ms == 654 Fixes LOGCXX-506.
update Checksums/Signatures don't match for log4cxx binaries Fixes LOGCXX-503.
update appenderattachable.h function doc formatted "incorrectly" Fixes LOGCXX-502.
update Logging in Timing-Critical Applications Fixes LOGCXX-500.
fix Provide a windows build environment for the project by replacing the ant build with a CMake build Fixes LOGCXX-494.
fix Wrong usage of milli- vs. micro- and non- vs. milliseconds in some docs. Fixes LOGCXX-493.
fix conditional expression is constant Fixes LOGCXX-490.
fix Space after log level hides messages Fixes LOGCXX-488.
fix Spelling error s/excute/execute Fixes LOGCXX-484.
update Not able to see hebrew values when logging in log4cxx Fixes LOGCXX-483.
fix Build failure with GCC-6 Fixes LOGCXX-482.
fix TimeBasedRollingPolicy should append as configured on rollover Fixes LOGCXX-464.
fix LogLog::setQuietMode(true) does not suppress exception reporting Fixes LOGCXX-455.
fix make install fails, trying to overwrite header files Fixes LOGCXX-446.
fix Return by const reference in Logger::getName() Fixes LOGCXX-443.
fix Autoconf 2.69 needs 'ACLOCAL_AMFLAGS= -I .' Fixes LOGCXX-433.
fix Wildcards in Makefile.am break either VPATH or non-VPATH installs Fixes LOGCXX-428.
fix exceptions in CachedDateFormatTestCase after LOGCXX-420 Fixes LOGCXX-425.
fix liblog4cxx.pc.in should reflect dependency on apr-1, apr-1-util Fixes LOGCXX-424.
fix Repair autogen script warnings Fixes LOGCXX-423.
fix Regression of LOGCXX-420 Fixes LOGCXX-422.
fix Possible out_of_range exception for millisecond formats in CachedDateFormat Fixes LOGCXX-420.
fix atoi undefined on Mac OS 10.9 compiling stringhelper.cpp Fixes LOGCXX-417.
fix Configure and watch could crash on app exit with static linking Fixes LOGCXX-416.
fix Empty XML configuration file causes crash Fixes LOGCXX-415.
fix possibly wrong use of autotools docdir (due to Alex Zbarcea) Fixes LOGCXX-414.
fix log4cxx doesn't compile on openembedded (due to Alex Zbarcea) Fixes LOGCXX-413.
fix Log4cxx doesn't roll normally when working under multiple processes environment Fixes LOGCXX-412.
fix Crash when logging on multiple threads. Fixes LOGCXX-411.
fix C++11 does not allow char literals with highest bit set unless cast Fixes LOGCXX-400.
fix Non-ascii character output wrong. Fixes LOGCXX-399.
fix Infinite loop in Transcoder::encode(const LogString& src, std::wstring& dst) Fixes LOGCXX-398.
fix Levels are not thread safe Fixes LOGCXX-394.
fix Hierarchy::updateParents loops forever on illegal logger-name like '.logger1' Fixes LOGCXX-388.
fix Mingw build type conversion error Fixes LOGCXX-382.
fix Pkgconfig can't find dependencies properly if log4cxx built statically Fixes LOGCXX-381.
fix Load Properties File Fails When There Are multibyte Characters in the Path Fixes LOGCXX-369.
fix method and class name functions not properly implemented Fixes LOGCXX-368.
fix Build fails on Linux with g++ 4.4 Fixes LOGCXX-367.
fix Errors when compile log4cxx 0.10.0 under Win7 x64 with Visual Studio 2010 (due to Christian Boos and Feng Nan) Fixes LOGCXX-366.
fix Unit tests fail on system dates later than 2009-12-31. Fixes LOGCXX-365.
fix SMTPAppender generating Emails with an empty body Fixes LOGCXX-358.
fix apache-log4cxx-0.10.0\src\main\include\log4cxx\spi\configurator.h(57) : warning C4231: nonstandard extension used : 'extern' before template explicit instantiation Fixes LOGCXX-356.
fix When a client disconnects the SocketHubAppender crashes on the next log message Fixes LOGCXX-353.
fix Download page does not have link to KEYS file Fixes LOGCXX-351.
fix Transcoder::encodeCharsetName bungles encoding Fixes LOGCXX-340.
update Child thread does not inherit a copy of the mapped diagnostic context of its parent Fixes LOGCXX-339.
fix Suggested fix for socketappender not reconnecting multiple times Fixes LOGCXX-337.
fix Test compilation fails: Overloading ambiguity Fixes LOGCXX-336.
fix DailyRollingFileAppender should roll if program doesn't run at rolling time Fixes LOGCXX-331.
fix TLS memory of APR is not freed in destructor of APRInitializer Fixes LOGCXX-320.
fix Please make sure that the LOG4CXX_* macro's can be used as ordinary statements. Fixes LOGCXX-319.
fix Log4cxx triggers locking inversion which can result in a deadlock. Fixes LOGCXX-317.
fix Build process fails in case of absence of iconv support in apr-util Fixes LOGCXX-313.
fix Property/DOMConfigurator::configureAndWatch can continue to run after APR termination Fixes LOGCXX-305.
fix BasicConfigurator::configure results in writer not set warning. Fixes LOGCXX-304.
fix DOMConfigurator does not set ErrorHandler. Fixes LOGCXX-303.
fix ODBCAppender connection settings broken (or just have changed). Fixes LOGCXX-300.
fix odbcappender.cpp does not compile with unixODBC on linux. Fixes LOGCXX-299.
fix SMTPAppender does not build properly with autotools. Fixes LOGCXX-298.
fix Escape sequences not recognized in property files. Fixes LOGCXX-293.
fix Value continuation does not properly handle CRLF in property files. Fixes LOGCXX-292.
fix Tab characters are not recognized in property files. Fixes LOGCXX-291.
fix Unnecessary trailing semi-colons after LOG4CXX_INFO et al in docs, examples and tests. Fixes LOGCXX-288.
fix gcc 4.3 requires #include <cstring> when using memcpy and related. Fixes LOGCXX-286.
fix LevelRangeFilter has default value for acceptOnMatch that is different from log4j Fixes LOGCXX-285.
fix Unit tests fail to compile with xlc_r on AIX Fixes LOGCXX-284.
fix Suspicious, but harmless, reuse of LOCAL1 in SyslogAppender Fixes LOGCXX-283.
fix Thread::sleep not affected by Thread::interrupt. Fixes LOGCXX-282.
fix Sun Studio 11 reports function hides base virtual function warning Fixes LOGCXX-281.
fix tests and sample code unnecessarily compiled during default make target Fixes LOGCXX-280.
fix Threads for reconnecting sockets do not end cleanly when program exits Fixes LOGCXX-278.
fix Reconnection not working for sockets Fixes LOGCXX-277.
fix AndFilter and others defined but not implemented Fixes LOGCXX-276.
fix Headers cannot be included with very strict warning settings Fixes LOGCXX-275.
fix Prevent filenamepatterntestcase from failing in some timezones Fixes LOGCXX-273.
update Apache log4cxx 0.11.0 release Fixes LOGCXX-272.
fix MDC::put will not overwrite existing key value pair Fixes LOGCXX-271.
fix Add ability to compile out logging by logging level. Fixes LOGCXX-270.
fix Local variables hide member variables Fixes LOGCXX-267.
fix Eliminate Extra ";" ignored warnings Fixes LOGCXX-266.
fix Eliminate anachronism warnings Fixes LOGCXX-265.
fix Bad link to log4cxx-dev archive Fixes LOGCXX-263.
fix socketappendertestcase and xmlsocketappendertestcase not run Fixes LOGCXX-262.
fix Console appender crashes if layout is not set Fixes LOGCXX-249.
add Set SONAME in cmake like autotools based buildsystem would do. Fixes 32.
add Implementation of map-based filter. Fixes 24.
add Added support for building log4cxx as a statically linked library on Windows. Fixes 21.
add Replaced ant build with cmake. Fixes 14.
add JSONLayout Fixes 13.
update Behavior of StringHelper::startsWith and endsWith synced.
update Documented C (class) and M (method) log format keywords.
add LocationInfo for Borland C++ Builder and successors improved.

Release 0.10.0 - 2008-04-03

Type Changes By
fix Several appenders fail to compile in Visual Studio 2008 Fixes LOGCXX-259.
fix unable to build from make dist package due to missing doxygen file Fixes LOGCXX-258.
fix ServerSocket::accept hangs on Unix Fixes LOGCXX-257.
fix SocketHubAppender fails after accepting connection Fixes LOGCXX-256.
add Add build option for static C RTL Fixes LOGCXX-254.
fix Transcoder compilation error with utf-8 charset Fixes LOGCXX-253.
add Add documentation for use of operator<< in logging requests Fixes LOGCXX-252.
fix NDC::cloneStack and NDC::inherit missing in 0.10.0 RC2 Fixes LOGCXX-251.
fix ODBCAppender has unicode issues Fixes LOGCXX-248.
fix MSVC project has wrong additional include directories Fixes LOGCXX-247.
fix Config refresh hangs a client application that uses TelnetAppender Fixes LOGCXX-246.
fix Problem Compile in Doxy Fixes LOGCXX-243.
update Eliminate log4cxx proxies for APR types Fixes LOGCXX-242.
fix Non-ascii named files have names mangled Fixes LOGCXX-241.
update Inconsistent const qualification on logging methods. Fixes LOGCXX-239.
fix Include missing headers Fixes LOGCXX-237.
fix Re-order constructor initialiser lists to match declaration order Fixes LOGCXX-236.
add Add ObjectPtrT::exchange Fixes LOGCXX-235.
fix Assignment operator removes const qualifier Fixes LOGCXX-234.
update Unnecessary casts in ObjectPtrT Fixes LOGCXX-233.
update Drop src/performance Fixes LOGCXX-232.
fix Deadlock in AsyncAppender Fixes LOGCXX-231.
update Align ant build options with automake Fixes LOGCXX-230.
update Remove @author tags Fixes LOGCXX-228.
update Remove @since tags Fixes LOGCXX-227.
update Default configurator uses *.properties in preference to *.xml Fixes LOGCXX-226.
update Migrate unit tests from LGPL'd CPPUNIT to an ASL'd testing framework Fixes LOGCXX-225.
fix trunk compile error. Fixes LOGCXX-222.
fix ThreadID layout does not match debugger Fixes LOGCXX-221.
fix Memory leaks when using MFC Fixes LOGCXX-220.
fix suspicious warnings Fixes LOGCXX-219.
add Visual Studio 8 build Fixes LOGCXX-218.
fix Not initialized LoggerPtr segfault program. Fixes LOGCXX-217.
fix crash on program exit Fixes LOGCXX-216.
update Eliminate sqlext.h from odbcappender.h Fixes LOGCXX-215.
fix Possible memory leak due to fault in build process (via make) Fixes LOGCXX-214.
fix trace method implementation is missing Fixes LOGCXX-213.
fix unittest failed Fixes LOGCXX-212.
fix Crash(Segmentation Fault) in DailyRollingFileAppender when file change Fixes LOGCXX-211.
fix HTMLLayout NDC null check Fixes LOGCXX-210.
fix A message of type wchar_t* is not beeing written correctly to the internal message buffer (Revision: 592627) Fixes LOGCXX-209.
fix isTraceEnabled implemenation missing in logger.cpp (Revision: 592627) Fixes LOGCXX-208.
fix PatternParserTestCase and FileNamePatternTestCase fail only with VC6 Fixes LOGCXX-204.
fix ObjectPtrT has inconsistent const-ness on accessors Fixes LOGCXX-202.
add Visual Studio 6 build Fixes LOGCXX-201.
add Implement compression for RollingFileAppender Fixes LOGCXX-200.
fix ant can't generate vc6 project Fixes LOGCXX-197.
fix Syslog appender destructor can cause core Fixes LOGCXX-196.
fix Syslog appender adds characters to output. Fixes LOGCXX-195.
fix Garbage in log files when appenders are defined in multiple levels of the logger hierarchy Fixes LOGCXX-194.
update Please rename or remove new local variable "buf" in Logger.h macros Fixes LOGCXX-193.
update Suggested improvements to log4cxx webpages Fixes LOGCXX-192.
fix Application cores when syslog appender is given an unreachable host/ip. Fixes LOGCXX-191.
fix The 'logger.h' header includes itself. Fixes LOGCXX-190.
update Migrate to Maven 2.0 for documentation and packaging Fixes LOGCXX-189.
update Upgrade to apr 1.2.9 and apr-util 1.2.8 Fixes LOGCXX-188.
fix LogLog::emit() could potentially interleave messages Fixes LOGCXX-187.
fix Garbage characters in log files when log requests from multiple threads with hyperthreading enabled Fixes LOGCXX-186.
fix Crash when log level set to 'inherited' Fixes LOGCXX-184.
fix Compiler warning: dereferencing type-punned pointer will break strict-aliasing rules Fixes LOGCXX-183.
fix missing man page for simplesocketserver Fixes LOGCXX-182.
fix Level::DEBUG and other non-local statics cause crash on app shutdown on AIX Fixes LOGCXX-181.
fix Build fails at domconfigurator.h Fixes LOGCXX-180.
add example applications do SIGABRT on aix 5.2 Fixes LOGCXX-179.
fix Link failure if wchar_t cannot be determined as UTF-16 or UTF-32 Fixes LOGCXX-178.
fix SocketImpl::accept uses private APR function: apr_wait_for_io_or_timeout Fixes LOGCXX-177.
fix APRCharsetEncoder is not thread safe Fixes LOGCXX-175.
fix configure fail with ".infig.status: error: cannot find input file:" Fixes LOGCXX-172.
add Add project description file for projects.apache.org Fixes LOGCXX-171.
fix XMLLayoutTestCase fails on compilers that do not provide location info Fixes LOGCXX-169.
fix log4j.dtd does not contain rollingPolicy and other o.a.l.r.RFA elements Fixes LOGCXX-168.
fix system locale charmap is not determined properly on Fedora Core 6 Fixes LOGCXX-167.
fix XMLSocketAppender may generate erroneous output due to mismatched encoding Fixes LOGCXX-165.
fix XMLSocketAppender is disabled Fixes LOGCXX-164.
fix liblog4cxx (svn 480882) does not link on Mac OS X 10.4 Fixes LOGCXX-163.
fix Problem printing string with embedded NULL character Fixes LOGCXX-162.
fix Using RollingFileAppender increases the working set with each rollover Fixes LOGCXX-161.
fix helpers/object.h: DECLARE_LOG4CXX_OBJECT macro definition is missing virtual destructor declaration Fixes LOGCXX-160.
fix Initialization of local static objects out of order on Linux Fixes LOGCXX-159.
fix tolower not defined in stringhelper.cpp Fixes LOGCXX-158.
fix make install fails since @manual_dest@ replacement is missing in Makefiles Fixes LOGCXX-157.
update immediate flush in console appender Fixes LOGCXX-156.
update Update source headers per new ASF header policy Fixes LOGCXX-155.
add Automate log4cxx site and doxygen generation and deployment Fixes LOGCXX-153.
fix gcc warning about cast from `const void*' to `log4cxx::helpers::Object*' discards qualifiers from pointer target typ Fixes LOGCXX-152.
fix Umlauts as literal in patternlayout won't be logged correct Fixes LOGCXX-151.
fix logstream's operator<< declared in the wrong namespace Fixes LOGCXX-150.
fix make dist does not work Fixes LOGCXX-149.
fix DailyRollingFileAppender::~DailyRollingFileAppender must call finalize Fixes LOGCXX-146.
fix -xarch=v8plus should be removed from Makefile.in Fixes LOGCXX-143.
fix socketservertestcase.cpp does not compile with Sun Studio 11 on Solaris Fixes LOGCXX-142.
update Upgrade to APR 1.2.7 or later Fixes LOGCXX-141.
fix Handle leak with LoggingEvent::getCurrentThreadName Fixes LOGCXX-140.
fix XMLLayoutTestCase uses inadequate filters for 64 bit platforms Fixes LOGCXX-139.
fix XMLLayoutTestCase output and filtered output gets overwritten Fixes LOGCXX-138.
fix DailyRollingFileAppender not using Property options Fixes LOGCXX-136.
update Use std::string with logstream Fixes LOGCXX-135.
fix FileAppender could create missing directories Fixes LOGCXX-134.
fix Missing parenthesis in LOG4CXX_ASSERT Fixes LOGCXX-133.
fix various segmentation faults in multithreaded application Fixes LOGCXX-132.
fix TimeBasedRollingPolicy is declared "abstract" Fixes LOGCXX-131.
fix Compile fails on gcc4.1 Fixes LOGCXX-130.
fix Asyncappender is full of race conditions (improper use of condition variables) Fixes LOGCXX-129.
fix Main build.xml not referencing "env" properly. Fixes LOGCXX-127.
fix std::cout stops working if log4cxx is first to output Fixes LOGCXX-126.
update L7dTestCase is stubbed out Fixes LOGCXX-125.
fix wchar_t constructor missing in class NDC Fixes LOGCXX-124.
fix UTF-8 build fails on Linux Fixes LOGCXX-123.
fix Wrong parameter description in Patternlayout Fixes LOGCXX-120.
fix ndctestcase not working Fixes LOGCXX-119.
fix Hierarchy corrupts with PropertyConfigurator Fixes LOGCXX-118.
fix Memory leak with ThreadSpecificData on Win32 Fixes LOGCXX-117.
fix SVN head does not compiler with MinGW compiler Fixes LOGCXX-116.
fix SVN head does not compile with Borland C++ compiler Fixes LOGCXX-115.
update Upgrade APR to 1.2.2 from 1.1.0 Fixes LOGCXX-114.
update separate apr detection m4 codes from aclocal.m4 Fixes LOGCXX-113.
update change "static" to "auto" for Transcoder::decode() decoder and CharsetDecoder::getDefaultDecoder() decoder Fixes LOGCXX-112.
update make Logger cache a LoggerRepositoryPtr instead of a "blind" pointer Fixes LOGCXX-111.
fix try fix 64bit log4cxx_intptr_t Fixes LOGCXX-110.
fix Can't compile log4cxx in ascii on Windows Fixes LOGCXX-107.
fix maxFileSize has bad type in SizeBasedTriggeringPolicy file Fixes LOGCXX-106.
fix Infinite loop in string replacing Fixes LOGCXX-105.
fix ODBCAppender::close does not check if appender is already closed Fixes LOGCXX-104.
update Much of CVS HEAD seems #if 0 out, especially ResourceBundle stuff Fixes LOGCXX-103.
fix Fixes for ODBCAppender Fixes LOGCXX-100.
fix Gump build fails for log4cxx-ant-no-wchar-t target Fixes LOGCXX-98.
update simplesocketserver.cpp should use LOG4CXX_STR("...") not L"..." Fixes LOGCXX-94.
update Explore use of security-enhanced CRT methods Fixes LOGCXX-88.
update Remove remaining uses of Category and Priority Fixes LOGCXX-87.
add Add TRACE level Fixes LOGCXX-86.
update Mac OS/X fixes and enhancements Fixes LOGCXX-85.
fix Problems with stream logging in UTF8, no WCHAR_T build Fixes LOGCXX-84.
fix log4cxx::Level::ERROR fails to compile when GDI enabled Fixes LOGCXX-83.
fix Compiling with stream.h in multiple object files errors Fixes LOGCXX-82.
fix SimpleDateFormat does not compile on Solaris 2.95.2 gcc Fixes LOGCXX-81.
update Migrated network appenders to APR network IO Fixes LOGCXX-80.
update configure check for apr-util Fixes LOGCXX-79.
fix Static builds broken Fixes LOGCXX-77.
add user.home, user.dir, java.io.tmpdir available within configuration files Fixes LOGCXX-76.
add Cygwin build Fixes LOGCXX-75.
add MinGW build Fixes LOGCXX-74.
fix Not loading configuration from log4cxx.properties or log4cxx.xml Fixes LOGCXX-73.
update INSTALL out of date Fixes LOGCXX-72.
update Update performance page on web site Fixes LOGCXX-71.
fix Logic flaws in StringHelper::startsWith and StringHelper::endsWith Fixes LOGCXX-70.
fix NTEventLogAppender always uses RPC method for logging and has inadequate error handling. Fixes LOGCXX-67.
fix SyslogAppender append method currently stubbed out Fixes LOGCXX-66.
update Migrate to APR network IO Fixes LOGCXX-64.
update Platform appropriate line-feed convention Fixes LOGCXX-63.
update log4cxx 0.10.0 release Fixes LOGCXX-62.
fix XML layout can be mismatched with document encoding Fixes LOGCXX-60.
update Implement encoding support for Writer appender Fixes LOGCXX-59.
fix ImmediateFlush'd FileAppenders extremely slow on Windows Fixes LOGCXX-58.
add Port log4j performance test Fixes LOGCXX-57.
fix BasicConfiguration is unreliable Fixes LOGCXX-56.
add DailyRolling File Appender Fixes LOGCXX-55.
fix Eliminate use of boost-regex in unit tests Fixes LOGCXX-54.
fix Problems compiling with MsDev 6.0 (space in paths) Fixes LOGCXX-53.
add Migrate log4j 1.3 RollingFileAppender Fixes LOGCXX-52.
fix variable name clash in macro Fixes LOGCXX-50.
add Move timezone specification into pattern, remove locale specification Fixes LOGCXX-49.
add Use hex representation for thread identifier Fixes LOGCXX-48.
fix Check headers for missing declarations and Effective C++ violations Fixes LOGCXX-47.
fix Extra semicolon after namespace closing paren Fixes LOGCXX-46.
fix _T causes error : 1048576 cannot be used as a function Fixes LOGCXX-45.
add GUMP integation Fixes LOGCXX-44.
add configure/make help needed Fixes LOGCXX-43.
fix Layout timestamp doesn't seem to adjust for daylight saving Fixes LOGCXX-41.
fix PatternLayout does not support Java date format specifiers Fixes LOGCXX-40.
remove Remove DailyRollingFileAppender Fixes LOGCXX-39.
fix Unable to build log4cxx under Borland C++ Fixes LOGCXX-37.
add Migrate to Apache Portable Runtime threads Fixes LOGCXX-36.
remove Avoid use of MSXML Fixes LOGCXX-35.
fix Visual Studio 6 CVS build broken Fixes LOGCXX-34.
fix log4cxx::Exception is not derived from std::exception Fixes LOGCXX-33.
fix Missing copy constructors and assignment operators Fixes LOGCXX-32.
fix Missing const qualifiers, Exception::getMessage() in particular. Fixes LOGCXX-31.
fix StringTokenizer uses evil strtok and wcstok functions Fixes LOGCXX-30.
fix Appender attributes are not passed passed to setOption correctly. Fixes LOGCXX-29.
fix Appender threshold cannot be set in configuration files Fixes LOGCXX-28.
fix Appender threshold cannot be set in configuration files Fixes LOGCXX-27.
fix Default initialization is broken Fixes LOGCXX-26.
add Add Ant+cpptasks build file Fixes LOGCXX-25.
fix Class and module name not available in LogEvent Fixes LOGCXX-24.
fix Unit tests have become stale Fixes LOGCXX-23.
fix Backslashes in filenames in XML config of FileAppender broken Fixes LOGCXX-22.
add Add check that libxml2 not libxml has been included Fixes LOGCXX-21.
add Add .cvsignore's to ignore generated files Fixes LOGCXX-19.
add LoggerStream Feature Fixes LOGCXX-18.
update Use of non reentrant time functions Fixes LOGCXX-17.
fix Misleading statements in Introduction to log4cxx Fixes LOGCXX-16.
fix PatternLayout don't use locale time zone,it's use GMT tome zone Fixes LOGCXX-15.
add add -Wall to compile log4cxx will get many warning Fixes LOGCXX-14.
add Add branch optimization hint to LOG4CXX_DEBUG macro Fixes LOGCXX-13.
fix the threshold of ApenderSkeleton can not be set by calling setOption. Fixes LOGCXX-12.
fix Timezone may have side-effects Fixes LOGCXX-11.
fix Conflicting definitions of tchar.h/simulatenous Unicode+MBCS Fixes LOGCXX-10.
fix Compilation problems using VC5 or VC6 with later Platform SDKs Fixes LOGCXX-8.
fix SocketAppender binary format not compatible with Chainsaw Fixes LOGCXX-7.
add Win32 OutputDebugString Fixes LOGCXX-6.
fix Preprocessor macro WIN32 used instead of _WIN32 Fixes LOGCXX-5.
fix initialization not working on many OS's Fixes LOGCXX-4.
fix Missing #else Fixes LOGCXX-3.
fix logger.h includes config.h Fixes LOGCXX-2.

Release 0.9.7 - 2004-05-10

Type Changes By
fix Fixed examples source code in the "Short introduction to log4cxx".
fix Fixed, in the renaming algorithm of RollingFileAppender and DailyRollingFileAppender, a problem specific to Unicode.
fix Fixed conflict with Windows macros "min" and "max", by renaming StrictMath::min and StrictMath::max to StrictMath::minimum and StrictMath::maximum.
add Port to HPUX 11.0.
fix Fixed segmentation fault in PropertyConfigurator.
add Port to Solaris.
fix Fixed MutexException thrown while destroying RollingFileAppender.
fix Logging macros can be used without explicity declaring the use of log4cxx namespace.
fix Fixed static library unresolved externals for msvc 6 and 7.1

Release 0.9.6 - 2004-04-11

Type Changes By
update Timezone management has been optimized through the class TimeZone
update Inter-thread synchronization and reference counting has been optimized
update Reference counting now uses gcc atomic functions (bug 929078)
update Use of StringBuffer has been optimized.
add Support of localisation throug resourceBundles
update SyslogAppender now uses the system function 'syslog' to log on the local host. (only for POSIX systems)
add Added TimeZone configuration to PatternLayout (bug 912563)
add Support of the DailyRollingFileAppender (feature request 842765)

Release 0.9.5 - 2004-02-04

Type Changes By
add Port of log4j Jnuit tests with Cppunit and Boost Regex.
add Added explicit exports for MSDEV 6 and MSDEV 7 (no further need of .def files)
add Custom levels can be configured through the DOMConfigurator and PropertyConfigurator classes (Level inherites from Object)
add Added a reference counter to LoggingEvent to avoid useless copies (LoggingEvent inherites from Object)
add The file log4j.xml as well as the file log4j.properties are now search for, in log4cxx initialization.
add The root logger can be assigned the "OFF" level.
add Added MSVC6 project missing files mutext.cpp and condition.cpp (bug 847397)
fix condition.cpp now compiles with MSVC6 (bug 847417)
fix fixed pure virtual function call in PropertyConfigurator::configureAndWatch (bug 848521)
fix XMLAppender now displays correct timestamp with MSVC 6 (bug 852836)
add SRLPORT 4.6 support.
fix Fixed an infinite loop in class Properties.
fix Fixed compilations problems with unicode.
fix Fixed SocketAppender bug concerning MDC and NDC.

Release 0.9.4 - 2003-10-25

Type Changes By
update StringBuffer has been optimized.
fix Fixed miscellaneous threading problems.
add Added TimeZone support in PatternLayout (bug 796894)
fix Fixed threading configuration problems (bug 809125)
fix Fixed miscellaneous MSVC and cygwin compilation problems.

Release 0.9.3 - 2003-09-19

Type Changes By
update Changed tstring to log4cxx::String and tostringstream to log4cxx::StringBuffer.
fix Fixed MSVC 2003 compilation erros and warnings.
add Added helpers for NDC and MDC.
add Added TimeZone support in TTCCLayout.
fix Fixed compilation problems with logger macros (LOG4CXX_...)
fix Fixed milliseconds formatting problem with MSVC 6.0 and 2003
fix Fixed AsyncAppender crash
add Added new tests
add Added benchmarks

Release 0.9.2 - 2003-08-10

Type Changes By
fix Fixed FreeBSD compilation problem with pthread mutex (class CriticalSection).
fix Fixed milliseconds formatting problem (class DateFormat).
add Long events (> 1024 chars) are now supported in the class XMLSocketAppender.
update Carriage returns have been normalized in the class XMLLayout.

Release 0.9.1 - 2003-08-06

Type Changes By
fix Fixed deadlock problems in classes Logger and AsyncAppender.
fix Fixed MSVC 6.0 compilation problems.
add Added MSVC 6.0 static libraty project.
update Default configuration for the SMTP options is "no".

Release 0.9.0 - 2003-08-06

Type Changes By
add Added ODBCAppender (matching log4j JDBCAppender)
add Added SyslogAppender
add Added SMTPAppender (only for Linux/FreeBSD)
add Added BasicConfigurator
add Added a FileWatchDog in PropertyConfigurator and DOMConfigurator
add Possibility to load a custom LoggerFactory through the DOMConfigurator
add Changed time precision from seconds to milliseconds
add Added MSVC 6.0 'Unicode Debug' and 'Unicode Release' targets
add Added Java like System class.

Release 0.1.1 - 2003-07-09

Type Changes By
fix Fixed MSVC 6.0 compilation problems concerning the 'Release' target
add Added MSVC 6.0 tests projects

Release 0.1.0 - 2003-07-08

Type Changes By
add FreeBSD Autotools/Compilation support
fix Fixed TelnetAppender crash when a socket bind exception occured.
add Added log4j DTD support to XMLLayout and DOMConfigurator
add Can now send events in XML format over TCP (class XMLSocketAppender) for the log4j Chainsaw UI
add Now compiles with 'configure --enable-unicode' (UTF16 Unicode support)
add Added Java like Properties class. It's a helper for the PropertyConfigurator
add Added Java like objects with dynamic cast and instanciation. Custom objects can be configured through the DOMConfigurator and PropertyConfigurator classes
add Port of the PropertyConfigurator class
add Port of the "Map Diagnostic Context" (MDC) class
add Added 13 tests (try make check)

Release 0.0.1 - 2003-05-31

Type Changes By
add Loggers, Hierarchy, Filters, Appenders, Layouts, NDC
add Appenders: AsyncAppender, ConsoleAppender, FileAppender, NTEventLogAppender, RollingFileAppender, SocketAppender, SocketHubAappender, TelnetAppender
add Layouts: HTMLLayout, PatternLayout, SimpleLayout, TTCCLayout, XMLLayout
add Filters: DenyAllFilter, LevelMatchFilter, LevelRangeFilter, StringMatchFilter
add Configurators: DOMConfigurator