| Change Log {#changelog} |
| === |
| <!-- |
| Note: License header cannot be first, as doxygen does not generate |
| cleanly if it before the '===' |
| --> |
| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF licenses this file to You under the Apache License, Version 2.0 |
| (the "License"); you may not use this file except in compliance with |
| the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| --> |
| |
| ## Release History {#history} |
| |
| | Version | Date | Description | |
| | ------------------- | ---------- | -------------------- | |
| | [1.6.0](#rel_1_6_0) | 2025-XX-XX | Maintenance release | |
| | [1.5.0](#rel_1_5_0) | 2025-08-03 | Maintenance release | |
| | [1.4.0](#rel_1_4_0) | 2025-03-01 | Maintenance release | |
| | [1.3.1](#rel_1_3_1) | 2024-11-30 | Bugfix release | |
| | [1.3.0](#rel_1_3_0) | 2024-10-21 | Maintenance release | |
| | [1.2.0](#rel_1_2_0) | 2024-01-01 | Maintenance release | |
| | [1.1.0](#rel_1_1_0) | 2023-05-01 | General bugfix release | |
| | [1.0.0](#rel_1_0_0) | 2023-01-01 | Major release to standardize the library and make it ABI stable | |
| | [0.13.0](#rel_13_0) | 2022-04-15 | Maintenance release | |
| | [0.12.1](#rel_12_1) | 2021-09-21 | Bugfix for 0.12.0 | |
| | [0.12.0](#rel_12_0) | 2021-05-01 | First release to require C++11. Updates for smart pointers. Standardization on CMake for building. | |
| | [0.11.0](#rel_11_0) | 2020-08-09 | Maintenance release. | |
| | [0.10.0](#rel_10_0) | 2008-04-03 | First Apache release | |
| | [0.9.7](#rel_9_7) | 2004-05-10 | | |
| | [0.9.6](#rel_9_6) | 2004-04-11 | | |
| | [0.9.5](#rel_9_5) | 2004-02-04 | | |
| | [0.9.4](#rel_9_4) | 2003-10-25 | | |
| | [0.9.3](#rel_9_3) | 2003-09-19 | | |
| | [0.9.2](#rel_9_2) | 2003-08-10 | | |
| | [0.9.1](#rel_9_1) | 2003-08-06 | | |
| | [0.9.0](#rel_9_0) | 2003-08-06 | | |
| | [0.1.1](#rel_1_1) | 2003-07-09 | | |
| | [0.1.0](#rel_1_0) | 2003-07-08 | | |
| | [0.0.1](#rel_0_1) | 2003-05-31 | | |
| |
| ## Release 1.6.0 - 2025-XX-XX {#rel_1_6_0} |
| |
| Release 1.6.0 includes the following new features: |
| |
| * Configuration ${varname} values can be set programatically prior to loading a configuration file (see \ref com/foo/config4.cpp) |
| \[[#520](https://github.com/apache/logging-log4cxx/pull/520)\] |
| * The current executable's file name and its components are available for use in a configuration file |
| and the LOG4CXX_CONFIGURATION environment variable (see log4cxx::spi::Configurator::properties). |
| \[[#520](https://github.com/apache/logging-log4cxx/pull/520)\] |
| * Console output (Log4cxx internal logging and BasicConfigurator) use a color per message level by default |
| \[[#529](https://github.com/apache/logging-log4cxx/pull/529)\] |
| * New logging macros that defer binary-to-text conversion until used in AsyncAppender's background thread |
| * \[[#548](https://github.com/apache/logging-log4cxx/pull/548)\] |
| , \[[#554](https://github.com/apache/logging-log4cxx/pull/554)\] |
| * A simplified way to attach an AsyncAppender to a logger using a configuration file |
| \[[#550](https://github.com/apache/logging-log4cxx/pull/550)\] |
| |
| The following issues have been addressed: |
| |
| |
| ## Release 1.5.0 - 2025-08-03 {#rel_1_5_0} |
| |
| Release 1.5.0 includes the following new features: |
| |
| * Qt6 can be used when building with LOG4CXX_QT_SUPPORT=on |
| \[[#488](https://github.com/apache/logging-log4cxx/pull/488)\] |
| * TelnetAppender can now deliver messages when the socket is in a TIME_WAIT state |
| \[[#495](https://github.com/apache/logging-log4cxx/pull/495)\] |
| * TelnetAppender can be restricted to specific network |
| \[[#498](https://github.com/apache/logging-log4cxx/pull/498)\] |
| |
| The following issues have been addressed: |
| |
| * HTML output was illformed when the logger name, title or thread name contained the special HTML characters |
| * [#509](https://github.com/apache/logging-log4cxx/pull/509) |
| , [#513](https://github.com/apache/logging-log4cxx/pull/513) |
| , [#514](https://github.com/apache/logging-log4cxx/pull/514) |
| * JSON output was illformed when a message contained certain control characters |
| \[[#512](https://github.com/apache/logging-log4cxx/pull/512)\] |
| * Undefined behaviour when reloading a configuration file after calling LogManager::shutdown |
| \[[#504](https://github.com/apache/logging-log4cxx/pull/504)\] |
| * Compilation error when using gcc on MacOS |
| \[[#499](https://github.com/apache/logging-log4cxx/pull/499)\] |
| * It was possible for logging events to be lost when reloading a configuration file |
| \[[#491](https://github.com/apache/logging-log4cxx/pull/491)\] |
| |
| ## Release 1.4.0 - 2025-03-01 {#rel_1_4_0} |
| |
| Release 1.4.0 includes the following new features: |
| |
| * Buffered file output is now periodically flushed by a background thread |
| \[[#445](https://github.com/apache/logging-log4cxx/pull/445)\] |
| |
| The following issues have been addressed: |
| |
| * The MultiprocessRollingFileAppender did not work |
| \[[#439](https://github.com/apache/logging-log4cxx/issues/439)\] |
| * Boundary conditions not comprehensively checked when processing a configuration file |
| * [#470](https://github.com/apache/logging-log4cxx/pull/470) |
| , [#471](https://github.com/apache/logging-log4cxx/pull/471) |
| , [#472](https://github.com/apache/logging-log4cxx/pull/472) |
| , [#473](https://github.com/apache/logging-log4cxx/pull/473) |
| , [#475](https://github.com/apache/logging-log4cxx/pull/475) |
| , [#476](https://github.com/apache/logging-log4cxx/pull/476) |
| , [#477](https://github.com/apache/logging-log4cxx/pull/477) |
| |
| ## Release 1.3.1 - 2024-11-30 {#rel_1_3_1} |
| |
| This is a minor bugfix release to fix issues found with 1.3.0. |
| |
| |
| ### Bug {#rel_1_3_1_bugs} |
| |
| * Properly prevent undefined behaviour when an appender is deleted without being closed |
| \[[#431](https://github.com/apache/logging-log4cxx/pull/431)\] |
| * Prevent abnormal termination on exit when using a static NDC/MDC variable |
| \[[#426](https://github.com/apache/logging-log4cxx/pull/426)\] |
| * Support for std::experimental::optional (in the standard library used by gcc 5.4) |
| \[[#419](https://github.com/apache/logging-log4cxx/pull/419)\] |
| |
| ## Release 1.3.0 - 2024-10-21 {#rel_1_3_0} |
| |
| Release 1.3.0 includes the following new features: |
| |
| * Overhead reduction of upto 60% sending logging events to an appender |
| * Statistics on the AsyncAppender's queue length (in Log4cxx debug output) |
| * [Fuzz tests](@ref fuzzing) along with [Google OSS-Fuzz](https://github.com/google/oss-fuzz) integration |
| |
| The following issues have been addressed: |
| |
| * MSYS2/MINGW build errors \[[#389](https://github.com/apache/logging-log4cxx/pull/389)\] |
| * `thread_local` problems in MSYS2/MINGW \[[#394](https://github.com/apache/logging-log4cxx/pull/394)\] |
| * A potential 'use after free' fault when using AsyncAppender \[[#397](https://github.com/apache/logging-log4cxx/pull/397)\] |
| |
| ## Release 1.2.0 - 2024-01-01 {#rel_1_2_0} |
| |
| The following issues have been addressed: |
| |
| * The `locale` external character encoding option reverting to US-ASCII \[[LOGCXX-483](https://issues.apache.org/jira/browse/LOGCXX-483)\] |
| * A segfault during process exit when log4cxx::LogManager::shutdown is not called \[[#268](https://github.com/apache/logging-log4cxx/pull/268)\] \[[#219](https://github.com/apache/logging-log4cxx/pull/219)\] |
| * The cmake option to include a MultiprocessRollingFileAppender did not work |
| * Build failure in a MSYS2 environment |
| * Format settings (e.g. std::hex) were retained across LOG4CXX_XXXXX macro logging requests |
| * When the APR library was built without support for threads (APR_HAS_THREADS=0): |
| * the AsyncAppender and dynamically loaded configuration changes were not available |
| * a single nested/mapped diagnostic context (NDC/MDC) would be used and updated (without synchronization) |
| * On Windows, GetThreadDescription() called for each logging event when the thread name was empty \[[#321](https://github.com/apache/logging-log4cxx/pull/321)\] |
| |
| Release 1.2.0 includes the following new features: |
| |
| * LOG4CXX_XXXX macros now support logging of QStrings directly |
| * log4cxx::hexdump function that returns a string of hexadecimal byte values |
| * Ability to remove a HierarchyEventListener \[[#233](https://github.com/apache/logging-log4cxx/issues/233)\] |
| * Less string copying when sending a logging event to an appender |
| * Less frequent mutex contention when logging from multiple threads concurrently \[[#320](https://github.com/apache/logging-log4cxx/pull/320)\] |
| * Allow thread information to be included in JSON formatted output |
| * Optional support for logging during process termination \[[#271](https://github.com/apache/logging-log4cxx/pull/271)\] |
| * A cmake option to place Log4cxx functions in a different namespace \[[#277](https://github.com/apache/logging-log4cxx/pull/277)\] |
| * Optionally use std::format in LOG4CXX_XXXX_FMT macros instead of fmt::format \[[#291](https://github.com/apache/logging-log4cxx/pull/291)\] |
| * Support for per object enabling/disabling of logging requests (see log4cxx::LoggerInstancePtr) |
| |
| Note: the `LOG4CXX_CHARSET` cmake option (external character encoding) default value has changed to `utf-8` |
| |
| ## Release 1.1.0 - 2023-05-01 {#rel_1_1_0} |
| |
| This is a general maintenance release. The following bugs/issues have been fixed: |
| |
| * Fix [CVE-2023-31038](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-31038) |
| * Fix to build on Windows Server 2016 |
| * Fix compiling errors with older compilers |
| * Make ODBC and SMTP opt-in instead of automatic |
| * Parameterize statements for ODBC inserts. Add new generic DBAppender class that uses APR for database support |
| * Fix Qt support |
| |
| ## Release 1.0.0 - 2023-01-01 {#rel_1_0_0} |
| |
| This is a major release that fixes a number of long-standing issues and is desinged |
| to make Log4cxx ABI stable moving forward. A few notes on this version: |
| |
| * Removed log4j style Java serialization. Due to Java's inherent problems |
| with serialization, and the fact that Chainsaw no longer supports it, it has |
| been completely removed. |
| * A number of obsolete classes have been removed |
| * Removal of TTCCLayout. If you still want this layout, use a PatternLayout |
| with a format similar to the following: |
| `%%r [%%t] %-5p - %%m%%n` |
| * Removal of DateLayout. Use PatternLayout instead. |
| * Classes now use an internal private class to store member variables in order to |
| make them ABI stable |
| * Multiprocess support is available, but Log4cxx must be explicitly compiled with this option |
| |
| Full release notes are below: |
| |
| ### Bug {#rel_1_0_0_bugs} |
| |
| |
| - \[[LOGCXX-432](https://issues.apache.org/jira/browse/LOGCXX-432)\] - |
| AsyncAppender automatically switches to sync mode when e.g. there is |
| no disk space available |
| - \[[LOGCXX-451](https://issues.apache.org/jira/browse/LOGCXX-451)\] - |
| Application hang up during exit on Windows |
| - \[[LOGCXX-491](https://issues.apache.org/jira/browse/LOGCXX-491)\] - |
| SizeBasedRollingTest cases fail when defining |
| LOG4CXX\_MULTI\_PROCESS |
| - \[[LOGCXX-563](https://issues.apache.org/jira/browse/LOGCXX-563)\] - |
| Fix memory leaks |
| |
| ### New Feature {#rel_1_0_0_features} |
| |
| - \[[LOGCXX-514](https://issues.apache.org/jira/browse/LOGCXX-514)\] - |
| Create a libfmt layout |
| - \[[LOGCXX-518](https://issues.apache.org/jira/browse/LOGCXX-518)\] - |
| Refactor the multi process code of RollingFileAppender |
| - \[[LOGCXX-559](https://issues.apache.org/jira/browse/LOGCXX-559)\] - |
| Implement LocationInfoFilter |
| |
| ### Improvement {#rel_1_0_0_improvements} |
| |
| - \[[LOGCXX-516](https://issues.apache.org/jira/browse/LOGCXX-516)\] - |
| Make classes ABI-stable |
| - \[[LOGCXX-524](https://issues.apache.org/jira/browse/LOGCXX-524)\] - |
| Remove silent exceptions |
| - \[[LOGCXX-527](https://issues.apache.org/jira/browse/LOGCXX-527)\] - |
| Mock the clock for tests |
| - \[[LOGCXX-542](https://issues.apache.org/jira/browse/LOGCXX-542)\] - |
| Remove log4j serialization |
| - \[[LOGCXX-549](https://issues.apache.org/jira/browse/LOGCXX-549)\] - |
| Make networking classes independent of implementation |
| - \[[LOGCXX-557](https://issues.apache.org/jira/browse/LOGCXX-557)\] - |
| Keep track of all appenders even if unused |
| - \[[LOGCXX-558](https://issues.apache.org/jira/browse/LOGCXX-558)\] - |
| Prevent MSVC compilation warnings \"needs to have dll-interface\" |
| - \[[LOGCXX-564](https://issues.apache.org/jira/browse/LOGCXX-564)\] - |
| Put typedefs into log4cxx namespace |
| - \[[LOGCXX-566](https://issues.apache.org/jira/browse/LOGCXX-566)\] - |
| Configurable output colors for log messages |
| - \[[LOGCXX-567](https://issues.apache.org/jira/browse/LOGCXX-567)\] - |
| Investigate backtrace support |
| - \[[LOGCXX-568](https://issues.apache.org/jira/browse/LOGCXX-568)\] - |
| Cleaunup files if rollover fails |
| - \[[LOGCXX-570](https://issues.apache.org/jira/browse/LOGCXX-570)\] - |
| Remove ObjectOutputStream |
| - \[[LOGCXX-571](https://issues.apache.org/jira/browse/LOGCXX-571)\] - |
| Better document \'runtime\' env vars and macros |
| - \[[LOGCXX-572](https://issues.apache.org/jira/browse/LOGCXX-572)\] - |
| Add support to re-read configuration files to Qt support |
| - \[[LOGCXX-573](https://issues.apache.org/jira/browse/LOGCXX-573)\] - |
| Provide feedback when configuring log4cxx |
| - \[[LOGCXX-574](https://issues.apache.org/jira/browse/LOGCXX-574)\] - |
| Provide a list of directories/filenames to try to configure |
| |
| |
| ## Release 0.13.0 - 2022-04-15 {#rel_13_0} |
| |
| This release fixes a number of issues. Notable new features include the |
| ability to block signals from threads that the library creates, automatic |
| creation of log directories, new color patterns, and the ability to determine |
| the library version at compile and run-time. |
| |
| ### Bug {#rel_13_0_bugs} |
| |
| - \[[LOGCXX-102](https://issues.apache.org/jira/browse/LOGCXX-102)\] - |
| PropertyConfigurator does not process the RollingFileAppender |
| options |
| - \[[LOGCXX-387](https://issues.apache.org/jira/browse/LOGCXX-387)\] - |
| SocketAppenderSkeleton re-connects only once |
| - \[[LOGCXX-431](https://issues.apache.org/jira/browse/LOGCXX-431)\] - |
| When log4cxx creates a thread, it doesn\'t block signals it\'s not |
| using, leading to unreliable signal delivery for the calling |
| process. |
| - \[[LOGCXX-519](https://issues.apache.org/jira/browse/LOGCXX-519)\] - |
| Version11 - \"INSTALL.TXT\" and \"vstudio.apt\" miss explenation for |
| generating the log4cxx.dll |
| - \[[LOGCXX-525](https://issues.apache.org/jira/browse/LOGCXX-525)\] - |
| Compressing log files does not create directories |
| - \[[LOGCXX-536](https://issues.apache.org/jira/browse/LOGCXX-536)\] - |
| CMakeLists.txt install pgkconfig and cmake modue to wrong place |
| - \[[LOGCXX-537](https://issues.apache.org/jira/browse/LOGCXX-537)\] - |
| double mutex lock |
| - \[[LOGCXX-540](https://issues.apache.org/jira/browse/LOGCXX-540)\] - |
| propertiestestcase.properties contains CRLF, does not well play with |
| git |
| - \[[LOGCXX-543](https://issues.apache.org/jira/browse/LOGCXX-543)\] - |
| Some tests can fail when there is a \"Q\" in the pathname |
| - \[[LOGCXX-546](https://issues.apache.org/jira/browse/LOGCXX-546)\] - |
| Multi threaded applications run at single threaded speed |
| |
| ### New Feature {#rel_13_0_features} |
| |
| - \[[LOGCXX-529](https://issues.apache.org/jira/browse/LOGCXX-529)\] - |
| Support color and highlight conversion patterns |
| |
| ### Improvement {#rel_13_0_improvements} |
| |
| - \[[LOGCXX-337](https://issues.apache.org/jira/browse/LOGCXX-337)\] - |
| Suggested fix for socketappender not reconnecting multiple times |
| - \[[LOGCXX-538](https://issues.apache.org/jira/browse/LOGCXX-538)\] - |
| Tests cannot be run in parallel |
| - \[[LOGCXX-539](https://issues.apache.org/jira/browse/LOGCXX-539)\] - |
| Allow distribustion log4j to be used for socketservertest |
| - \[[LOGCXX-547](https://issues.apache.org/jira/browse/LOGCXX-547)\] - |
| Allow for hiding of location data |
| - \[[LOGCXX-548](https://issues.apache.org/jira/browse/LOGCXX-548)\] - |
| Doxygen documentation is not reproducible |
| - \[[LOGCXX-550](https://issues.apache.org/jira/browse/LOGCXX-550)\] - |
| Add ability to get thread name not just ID |
| |
| ### Wish {#rel_13_0_wish_list} |
| |
| - \[[LOGCXX-544](https://issues.apache.org/jira/browse/LOGCXX-544)\] - |
| Please embedd library version in a header |
| - \[[LOGCXX-551](https://issues.apache.org/jira/browse/LOGCXX-551)\] - |
| CMake documented build option for Boost vs C++17 Implementation for |
| shared\_mutex |
| |
| |
| ## Release 0.12.1 - 2021-09-21 {#rel_12_1} |
| |
| This is a minor bugfix release to fix issues found with 0.12.0. Notably, this version fixes a bug |
| where a multithreaded application would crash when using a rolling file. |
| |
| ### Bug {#rel_12_1_bugs} |
| |
| - \[[LOGCXX-534](https://issues.apache.org/jira/browse/LOGCXX-534)\] - |
| Crashed in log->forcedLog function when running with multi-thread |
| - \[[LOGCXX-528](https://issues.apache.org/jira/browse/LOGCXX-528)\] - |
| log4cxx fails to build on Centos 7.6 / g++ 4.8.5 / Boost 1.53 |
| |
| |
| ## Release 0.12.0 - 2021-05-01 {#rel_12_0} |
| |
| This is the first release to require a minimum version of C++11. This means that all objects in log4cxx |
| are now created using `std::shared_ptr` as the smart pointer implementation. |
| |
| Alternative build systems have been removed, and we now support CMake only for building the library. |
| |
| With the introduction of smart pointers, the old behavior of implicit casting no longer works. In |
| order to cast between classes, use the new [log4cxx::cast](@ref log4cxx.cast) method. This method returns an invalid |
| `shared_ptr` on failure, or a `shared_ptr` pointing at the same object on success. This should be |
| transparent to user code, unless you are interacting with log4cxx internals directly. |
| |
| Before: |
| |
| ```{.cpp} |
| ObjectPtr instance = Loader::loadClass(className).newInstance(); |
| AppenderPtr appender = instance; |
| ``` |
| |
| After: |
| |
| ```{.cpp} |
| ObjectPtr instance = ObjectPtr(Loader::loadClass(className).newInstance()); |
| AppenderPtr appender = log4cxx::cast<Appender>(instance); |
| // At this point(assuming the cast was good), instance and appender |
| // both point at the same object. |
| ``` |
| |
| ### Bug {#rel_12_0_bugs} |
| |
| - \[[LOGCXX-322](https://issues.apache.org/jira/browse/LOGCXX-322)\] - |
| Crashes on exit from multithreaded program using log4cxx |
| - \[[LOGCXX-485](https://issues.apache.org/jira/browse/LOGCXX-485)\] - |
| Levels leak memory |
| - \[[LOGCXX-486](https://issues.apache.org/jira/browse/LOGCXX-486)\] - |
| Replace ObjectPtr with more standard shared\_ptr. |
| - \[[LOGCXX-507](https://issues.apache.org/jira/browse/LOGCXX-507)\] - |
| Data race on LevelPtr when using the async appender |
| - \[[LOGCXX-508](https://issues.apache.org/jira/browse/LOGCXX-508)\] - |
| sync |
| - \[[LOGCXX-510](https://issues.apache.org/jira/browse/LOGCXX-510)\] - |
| Build problems using CMAKE and Visual Studio 2019 Community |
| - \[[LOGCXX-517](https://issues.apache.org/jira/browse/LOGCXX-517)\] - |
| Circular reference in ErrorHandlerTestCase |
| - \[[LOGCXX-521](https://issues.apache.org/jira/browse/LOGCXX-521)\] - |
| Can\'t link cleanly with ODBC |
| - \[[LOGCXX-526](https://issues.apache.org/jira/browse/LOGCXX-526)\] - |
| GCC-11.1.0 Support |
| |
| ### New Feature {#rel_12_0_features} |
| |
| - \[[LOGCXX-515](https://issues.apache.org/jira/browse/LOGCXX-515)\] - |
| Add macros to utilize libfmt formatting for messages |
| - \[[LOGCXX-523](https://issues.apache.org/jira/browse/LOGCXX-523)\] - |
| Add in error handling for rollover errors |
| |
| ## Release 0.11.0 - 2020-08-09 {#rel_11_0} |
| |
| | | | | |
| | ------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -- | |
| | Type | Changes | By | |
| |  | cmake and autotools generate different versioned binaries Fixes [LOGCXX-512](https://issues.apache.org/jira/browse/LOGCXX-512). | | |
| |  | CachedDateFormat reuses timestamps without updating milliseconds after formatting timestamp with ms == 654 Fixes [LOGCXX-506](https://issues.apache.org/jira/browse/LOGCXX-506). | | |
| |  | Checksums/Signatures don't match for log4cxx binaries Fixes [LOGCXX-503](https://issues.apache.org/jira/browse/LOGCXX-503). | | |
| |  | appenderattachable.h function doc formatted "incorrectly" Fixes [LOGCXX-502](https://issues.apache.org/jira/browse/LOGCXX-502). | | |
| |  | Logging in Timing-Critical Applications Fixes [LOGCXX-500](https://issues.apache.org/jira/browse/LOGCXX-500). | | |
| |  | Provide a windows build environment for the project by replacing the ant build with a CMake build Fixes [LOGCXX-494](https://issues.apache.org/jira/browse/LOGCXX-494). | | |
| |  | Wrong usage of milli- vs. micro- and non- vs. milliseconds in some docs. Fixes [LOGCXX-493](https://issues.apache.org/jira/browse/LOGCXX-493). | | |
| |  | conditional expression is constant Fixes [LOGCXX-490](https://issues.apache.org/jira/browse/LOGCXX-490). | | |
| |  | Space after log level hides messages Fixes [LOGCXX-488](https://issues.apache.org/jira/browse/LOGCXX-488). | | |
| |  | Spelling error s/excute/execute Fixes [LOGCXX-484](https://issues.apache.org/jira/browse/LOGCXX-484). | | |
| |  | Not able to see hebrew values when logging in log4cxx Fixes [LOGCXX-483](https://issues.apache.org/jira/browse/LOGCXX-483). | | |
| |  | Build failure with GCC-6 Fixes [LOGCXX-482](https://issues.apache.org/jira/browse/LOGCXX-482). | | |
| |  | TimeBasedRollingPolicy should append as configured on rollover Fixes [LOGCXX-464](https://issues.apache.org/jira/browse/LOGCXX-464). | | |
| |  | LogLog::setQuietMode(true) does not suppress exception reporting Fixes [LOGCXX-455](https://issues.apache.org/jira/browse/LOGCXX-455). | | |
| |  | make install fails, trying to overwrite header files Fixes [LOGCXX-446](https://issues.apache.org/jira/browse/LOGCXX-446). | | |
| |  | Return by const reference in Logger::getName() Fixes [LOGCXX-443](https://issues.apache.org/jira/browse/LOGCXX-443). | | |
| |  | Autoconf 2.69 needs 'ACLOCAL\_AMFLAGS= -I .' Fixes [LOGCXX-433](https://issues.apache.org/jira/browse/LOGCXX-433). | | |
| |  | Wildcards in Makefile.am break either VPATH or non-VPATH installs Fixes [LOGCXX-428](https://issues.apache.org/jira/browse/LOGCXX-428). | | |
| |  | exceptions in CachedDateFormatTestCase after LOGCXX-420 Fixes [LOGCXX-425](https://issues.apache.org/jira/browse/LOGCXX-425). | | |
| |  | liblog4cxx.pc.in should reflect dependency on apr-1, apr-1-util Fixes [LOGCXX-424](https://issues.apache.org/jira/browse/LOGCXX-424). | | |
| |  | Repair autogen script warnings Fixes [LOGCXX-423](https://issues.apache.org/jira/browse/LOGCXX-423). | | |
| |  | Regression of LOGCXX-420 Fixes [LOGCXX-422](https://issues.apache.org/jira/browse/LOGCXX-422). | | |
| |  | Possible out\_of\_range exception for millisecond formats in CachedDateFormat Fixes [LOGCXX-420](https://issues.apache.org/jira/browse/LOGCXX-420). | | |
| |  | atoi undefined on Mac OS 10.9 compiling stringhelper.cpp Fixes [LOGCXX-417](https://issues.apache.org/jira/browse/LOGCXX-417). | | |
| |  | Configure and watch could crash on app exit with static linking Fixes [LOGCXX-416](https://issues.apache.org/jira/browse/LOGCXX-416). | | |
| |  | Empty XML configuration file causes crash Fixes [LOGCXX-415](https://issues.apache.org/jira/browse/LOGCXX-415). | | |
| |  | possibly wrong use of autotools docdir (due to Alex Zbarcea) Fixes [LOGCXX-414](https://issues.apache.org/jira/browse/LOGCXX-414). | | |
| |  | log4cxx doesn't compile on openembedded (due to Alex Zbarcea) Fixes [LOGCXX-413](https://issues.apache.org/jira/browse/LOGCXX-413). | | |
| |  | Log4cxx doesn't roll normally when working under multiple processes environment Fixes [LOGCXX-412](https://issues.apache.org/jira/browse/LOGCXX-412). | | |
| |  | Crash when logging on multiple threads. Fixes [LOGCXX-411](https://issues.apache.org/jira/browse/LOGCXX-411). | | |
| |  | C++11 does not allow char literals with highest bit set unless cast Fixes [LOGCXX-400](https://issues.apache.org/jira/browse/LOGCXX-400). | | |
| |  | Non-ascii character output wrong. Fixes [LOGCXX-399](https://issues.apache.org/jira/browse/LOGCXX-399). | | |
| |  | Infinite loop in Transcoder::encode(const LogString& src, std::wstring& dst) Fixes [LOGCXX-398](https://issues.apache.org/jira/browse/LOGCXX-398). | | |
| |  | Levels are not thread safe Fixes [LOGCXX-394](https://issues.apache.org/jira/browse/LOGCXX-394). | | |
| |  | Hierarchy::updateParents loops forever on illegal logger-name like '.logger1' Fixes [LOGCXX-388](https://issues.apache.org/jira/browse/LOGCXX-388). | | |
| |  | Mingw build type conversion error Fixes [LOGCXX-382](https://issues.apache.org/jira/browse/LOGCXX-382). | | |
| |  | Pkgconfig can't find dependencies properly if log4cxx built statically Fixes [LOGCXX-381](https://issues.apache.org/jira/browse/LOGCXX-381). | | |
| |  | Load Properties File Fails When There Are multibyte Characters in the Path Fixes [LOGCXX-369](https://issues.apache.org/jira/browse/LOGCXX-369). | | |
| |  | method and class name functions not properly implemented Fixes [LOGCXX-368](https://issues.apache.org/jira/browse/LOGCXX-368). | | |
| |  | Build fails on Linux with g++ 4.4 Fixes [LOGCXX-367](https://issues.apache.org/jira/browse/LOGCXX-367). | | |
| |  | Errors when compile log4cxx 0.10.0 under Win7 x64 with Visual Studio 2010 (due to Christian Boos and Feng Nan) Fixes [LOGCXX-366](https://issues.apache.org/jira/browse/LOGCXX-366). | | |
| |  | Unit tests fail on system dates later than 2009-12-31. Fixes [LOGCXX-365](https://issues.apache.org/jira/browse/LOGCXX-365). | | |
| |  | SMTPAppender generating Emails with an empty body Fixes [LOGCXX-358](https://issues.apache.org/jira/browse/LOGCXX-358). | | |
| |  | 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](https://issues.apache.org/jira/browse/LOGCXX-356). | | |
| |  | When a client disconnects the SocketHubAppender crashes on the next log message Fixes [LOGCXX-353](https://issues.apache.org/jira/browse/LOGCXX-353). | | |
| |  | Download page does not have link to KEYS file Fixes [LOGCXX-351](https://issues.apache.org/jira/browse/LOGCXX-351). | | |
| |  | Transcoder::encodeCharsetName bungles encoding Fixes [LOGCXX-340](https://issues.apache.org/jira/browse/LOGCXX-340). | | |
| |  | Child thread does not inherit a copy of the mapped diagnostic context of its parent Fixes [LOGCXX-339](https://issues.apache.org/jira/browse/LOGCXX-339). | | |
| |  | Suggested fix for socketappender not reconnecting multiple times Fixes [LOGCXX-337](https://issues.apache.org/jira/browse/LOGCXX-337). | | |
| |  | Test compilation fails: Overloading ambiguity Fixes [LOGCXX-336](https://issues.apache.org/jira/browse/LOGCXX-336). | | |
| |  | DailyRollingFileAppender should roll if program doesn't run at rolling time Fixes [LOGCXX-331](https://issues.apache.org/jira/browse/LOGCXX-331). | | |
| |  | TLS memory of APR is not freed in destructor of APRInitializer Fixes [LOGCXX-320](https://issues.apache.org/jira/browse/LOGCXX-320). | | |
| |  | Please make sure that the LOG4CXX\_\* macro's can be used as ordinary statements. Fixes [LOGCXX-319](https://issues.apache.org/jira/browse/LOGCXX-319). | | |
| |  | Log4cxx triggers locking inversion which can result in a deadlock. Fixes [LOGCXX-317](https://issues.apache.org/jira/browse/LOGCXX-317). | | |
| |  | Build process fails in case of absence of iconv support in apr-util Fixes [LOGCXX-313](https://issues.apache.org/jira/browse/LOGCXX-313). | | |
| |  | Property/xml::DOMConfigurator::configureAndWatch can continue to run after APR termination Fixes [LOGCXX-305](https://issues.apache.org/jira/browse/LOGCXX-305). | | |
| |  | BasicConfigurator::configure results in writer not set warning. Fixes [LOGCXX-304](https://issues.apache.org/jira/browse/LOGCXX-304). | | |
| |  | DOMConfigurator does not set ErrorHandler. Fixes [LOGCXX-303](https://issues.apache.org/jira/browse/LOGCXX-303). | | |
| |  | ODBCAppender connection settings broken (or just have changed). Fixes [LOGCXX-300](https://issues.apache.org/jira/browse/LOGCXX-300). | | |
| |  | odbcappender.cpp does not compile with unixODBC on linux. Fixes [LOGCXX-299](https://issues.apache.org/jira/browse/LOGCXX-299). | | |
| |  | SMTPAppender does not build properly with autotools. Fixes [LOGCXX-298](https://issues.apache.org/jira/browse/LOGCXX-298). | | |
| |  | Escape sequences not recognized in property files. Fixes [LOGCXX-293](https://issues.apache.org/jira/browse/LOGCXX-293). | | |
| |  | Value continuation does not properly handle CRLF in property files. Fixes [LOGCXX-292](https://issues.apache.org/jira/browse/LOGCXX-292). | | |
| |  | Tab characters are not recognized in property files. Fixes [LOGCXX-291](https://issues.apache.org/jira/browse/LOGCXX-291). | | |
| |  | Unnecessary trailing semi-colons after LOG4CXX\_INFO et al in docs, examples and tests. Fixes [LOGCXX-288](https://issues.apache.org/jira/browse/LOGCXX-288). | | |
| |  | gcc 4.3 requires \#include \<cstring\> when using memcpy and related. Fixes [LOGCXX-286](https://issues.apache.org/jira/browse/LOGCXX-286). | | |
| |  | LevelRangeFilter has default value for acceptOnMatch that is different from log4j Fixes [LOGCXX-285](https://issues.apache.org/jira/browse/LOGCXX-285). | | |
| |  | Unit tests fail to compile with xlc\_r on AIX Fixes [LOGCXX-284](https://issues.apache.org/jira/browse/LOGCXX-284). | | |
| |  | Suspicious, but harmless, reuse of LOCAL1 in SyslogAppender Fixes [LOGCXX-283](https://issues.apache.org/jira/browse/LOGCXX-283). | | |
| |  | Thread::sleep not affected by Thread::interrupt. Fixes [LOGCXX-282](https://issues.apache.org/jira/browse/LOGCXX-282). | | |
| |  | Sun Studio 11 reports function hides base virtual function warning Fixes [LOGCXX-281](https://issues.apache.org/jira/browse/LOGCXX-281). | | |
| |  | tests and sample code unnecessarily compiled during default make target Fixes [LOGCXX-280](https://issues.apache.org/jira/browse/LOGCXX-280). | | |
| |  | Threads for reconnecting sockets do not end cleanly when program exits Fixes [LOGCXX-278](https://issues.apache.org/jira/browse/LOGCXX-278). | | |
| |  | Reconnection not working for sockets Fixes [LOGCXX-277](https://issues.apache.org/jira/browse/LOGCXX-277). | | |
| |  | AndFilter and others defined but not implemented Fixes [LOGCXX-276](https://issues.apache.org/jira/browse/LOGCXX-276). | | |
| |  | Headers cannot be included with very strict warning settings Fixes [LOGCXX-275](https://issues.apache.org/jira/browse/LOGCXX-275). | | |
| |  | Prevent filenamepatterntestcase from failing in some timezones Fixes [LOGCXX-273](https://issues.apache.org/jira/browse/LOGCXX-273). | | |
| |  | Apache log4cxx 0.11.0 release Fixes [LOGCXX-272](https://issues.apache.org/jira/browse/LOGCXX-272). | | |
| |  | MDC::put will not overwrite existing key value pair Fixes [LOGCXX-271](https://issues.apache.org/jira/browse/LOGCXX-271). | | |
| |  | Add ability to compile out logging by logging level. Fixes [LOGCXX-270](https://issues.apache.org/jira/browse/LOGCXX-270). | | |
| |  | Local variables hide member variables Fixes [LOGCXX-267](https://issues.apache.org/jira/browse/LOGCXX-267). | | |
| |  | Eliminate Extra ";" ignored warnings Fixes [LOGCXX-266](https://issues.apache.org/jira/browse/LOGCXX-266). | | |
| |  | Eliminate anachronism warnings Fixes [LOGCXX-265](https://issues.apache.org/jira/browse/LOGCXX-265). | | |
| |  | Bad link to log4cxx-dev archive Fixes [LOGCXX-263](https://issues.apache.org/jira/browse/LOGCXX-263). | | |
| |  | socketappendertestcase and xmlsocketappendertestcase not run Fixes [LOGCXX-262](https://issues.apache.org/jira/browse/LOGCXX-262). | | |
| |  | Console appender crashes if layout is not set Fixes [LOGCXX-249](https://issues.apache.org/jira/browse/LOGCXX-249). | | |
| |  | Set SONAME in cmake like autotools based buildsystem would do. Fixes [32](https://github.com/apache/logging-log4cxx/pull/32). | | |
| |  | Implementation of map-based filter. Fixes [24](https://github.com/apache/logging-log4cxx/pull/24). | | |
| |  | Added support for building log4cxx as a statically linked library on Windows. Fixes [21](https://github.com/apache/logging-log4cxx/pull/21). | | |
| |  | Replaced ant build with cmake. Fixes [14](https://github.com/apache/logging-log4cxx/pull/14). | | |
| |  | JSONLayout Fixes [13](https://github.com/apache/logging-log4cxx/pull/13). | | |
| |  | Behavior of StringHelper::startsWith and endsWith synced. | | |
| |  | Documented C (class) and M (method) log format keywords. | | |
| |  | LocationInfo for Borland C++ Builder and successors improved. | | |
| |
| ## Release 0.10.0 - 2008-04-03 {#rel_10_0} |
| |
| | | | | |
| | ------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -- | |
| | Type | Changes | By | |
| |  | Several appenders fail to compile in Visual Studio 2008 Fixes [LOGCXX-259](https://issues.apache.org/jira/browse/LOGCXX-259). | | |
| |  | unable to build from make dist package due to missing doxygen file Fixes [LOGCXX-258](https://issues.apache.org/jira/browse/LOGCXX-258). | | |
| |  | ServerSocket::accept hangs on Unix Fixes [LOGCXX-257](https://issues.apache.org/jira/browse/LOGCXX-257). | | |
| |  | SocketHubAppender fails after accepting connection Fixes [LOGCXX-256](https://issues.apache.org/jira/browse/LOGCXX-256). | | |
| |  | Add build option for static C RTL Fixes [LOGCXX-254](https://issues.apache.org/jira/browse/LOGCXX-254). | | |
| |  | Transcoder compilation error with utf-8 charset Fixes [LOGCXX-253](https://issues.apache.org/jira/browse/LOGCXX-253). | | |
| |  | Add documentation for use of operator\<\< in logging requests Fixes [LOGCXX-252](https://issues.apache.org/jira/browse/LOGCXX-252). | | |
| |  | NDC::cloneStack and NDC::inherit missing in 0.10.0 RC2 Fixes [LOGCXX-251](https://issues.apache.org/jira/browse/LOGCXX-251). | | |
| |  | ODBCAppender has unicode issues Fixes [LOGCXX-248](https://issues.apache.org/jira/browse/LOGCXX-248). | | |
| |  | MSVC project has wrong additional include directories Fixes [LOGCXX-247](https://issues.apache.org/jira/browse/LOGCXX-247). | | |
| |  | Config refresh hangs a client application that uses TelnetAppender Fixes [LOGCXX-246](https://issues.apache.org/jira/browse/LOGCXX-246). | | |
| |  | Problem Compile in Doxy Fixes [LOGCXX-243](https://issues.apache.org/jira/browse/LOGCXX-243). | | |
| |  | Eliminate log4cxx proxies for APR types Fixes [LOGCXX-242](https://issues.apache.org/jira/browse/LOGCXX-242). | | |
| |  | Non-ascii named files have names mangled Fixes [LOGCXX-241](https://issues.apache.org/jira/browse/LOGCXX-241). | | |
| |  | Inconsistent const qualification on logging methods. Fixes [LOGCXX-239](https://issues.apache.org/jira/browse/LOGCXX-239). | | |
| |  | Include missing headers Fixes [LOGCXX-237](https://issues.apache.org/jira/browse/LOGCXX-237). | | |
| |  | Re-order constructor initialiser lists to match declaration order Fixes [LOGCXX-236](https://issues.apache.org/jira/browse/LOGCXX-236). | | |
| |  | Add ObjectPtrT::exchange Fixes [LOGCXX-235](https://issues.apache.org/jira/browse/LOGCXX-235). | | |
| |  | Assignment operator removes const qualifier Fixes [LOGCXX-234](https://issues.apache.org/jira/browse/LOGCXX-234). | | |
| |  | Unnecessary casts in ObjectPtrT Fixes [LOGCXX-233](https://issues.apache.org/jira/browse/LOGCXX-233). | | |
| |  | Drop src/performance Fixes [LOGCXX-232](https://issues.apache.org/jira/browse/LOGCXX-232). | | |
| |  | Deadlock in AsyncAppender Fixes [LOGCXX-231](https://issues.apache.org/jira/browse/LOGCXX-231). | | |
| |  | Align ant build options with automake Fixes [LOGCXX-230](https://issues.apache.org/jira/browse/LOGCXX-230). | | |
| |  | Remove \@author tags Fixes [LOGCXX-228](https://issues.apache.org/jira/browse/LOGCXX-228). | | |
| |  | Remove \@since tags Fixes [LOGCXX-227](https://issues.apache.org/jira/browse/LOGCXX-227). | | |
| |  | Default configurator uses \*.properties in preference to \*.xml Fixes [LOGCXX-226](https://issues.apache.org/jira/browse/LOGCXX-226). | | |
| |  | Migrate unit tests from LGPL'd CPPUNIT to an ASL'd testing framework Fixes [LOGCXX-225](https://issues.apache.org/jira/browse/LOGCXX-225). | | |
| |  | trunk compile error. Fixes [LOGCXX-222](https://issues.apache.org/jira/browse/LOGCXX-222). | | |
| |  | ThreadID layout does not match debugger Fixes [LOGCXX-221](https://issues.apache.org/jira/browse/LOGCXX-221). | | |
| |  | Memory leaks when using MFC Fixes [LOGCXX-220](https://issues.apache.org/jira/browse/LOGCXX-220). | | |
| |  | suspicious warnings Fixes [LOGCXX-219](https://issues.apache.org/jira/browse/LOGCXX-219). | | |
| |  | Visual Studio 8 build Fixes [LOGCXX-218](https://issues.apache.org/jira/browse/LOGCXX-218). | | |
| |  | Not initialized LoggerPtr segfault program. Fixes [LOGCXX-217](https://issues.apache.org/jira/browse/LOGCXX-217). | | |
| |  | crash on program exit Fixes [LOGCXX-216](https://issues.apache.org/jira/browse/LOGCXX-216). | | |
| |  | Eliminate sqlext.h from odbcappender.h Fixes [LOGCXX-215](https://issues.apache.org/jira/browse/LOGCXX-215). | | |
| |  | Possible memory leak due to fault in build process (via make) Fixes [LOGCXX-214](https://issues.apache.org/jira/browse/LOGCXX-214). | | |
| |  | trace method implementation is missing Fixes [LOGCXX-213](https://issues.apache.org/jira/browse/LOGCXX-213). | | |
| |  | unittest failed Fixes [LOGCXX-212](https://issues.apache.org/jira/browse/LOGCXX-212). | | |
| |  | Crash(Segmentation Fault) in DailyRollingFileAppender when file change Fixes [LOGCXX-211](https://issues.apache.org/jira/browse/LOGCXX-211). | | |
| |  | HTMLLayout NDC null check Fixes [LOGCXX-210](https://issues.apache.org/jira/browse/LOGCXX-210). | | |
| |  | A message of type wchar\_t\* is not beeing written correctly to the internal message buffer (Revision: 592627) Fixes [LOGCXX-209](https://issues.apache.org/jira/browse/LOGCXX-209). | | |
| |  | isTraceEnabled implemenation missing in logger.cpp (Revision: 592627) Fixes [LOGCXX-208](https://issues.apache.org/jira/browse/LOGCXX-208). | | |
| |  | PatternParserTestCase and FileNamePatternTestCase fail only with VC6 Fixes [LOGCXX-204](https://issues.apache.org/jira/browse/LOGCXX-204). | | |
| |  | ObjectPtrT has inconsistent const-ness on accessors Fixes [LOGCXX-202](https://issues.apache.org/jira/browse/LOGCXX-202). | | |
| |  | Visual Studio 6 build Fixes [LOGCXX-201](https://issues.apache.org/jira/browse/LOGCXX-201). | | |
| |  | Implement compression for RollingFileAppender Fixes [LOGCXX-200](https://issues.apache.org/jira/browse/LOGCXX-200). | | |
| |  | ant can't generate vc6 project Fixes [LOGCXX-197](https://issues.apache.org/jira/browse/LOGCXX-197). | | |
| |  | Syslog appender destructor can cause core Fixes [LOGCXX-196](https://issues.apache.org/jira/browse/LOGCXX-196). | | |
| |  | Syslog appender adds characters to output. Fixes [LOGCXX-195](https://issues.apache.org/jira/browse/LOGCXX-195). | | |
| |  | Garbage in log files when appenders are defined in multiple levels of the logger hierarchy Fixes [LOGCXX-194](https://issues.apache.org/jira/browse/LOGCXX-194). | | |
| |  | Please rename or remove new local variable "buf" in Logger.h macros Fixes [LOGCXX-193](https://issues.apache.org/jira/browse/LOGCXX-193). | | |
| |  | Suggested improvements to log4cxx webpages Fixes [LOGCXX-192](https://issues.apache.org/jira/browse/LOGCXX-192). | | |
| |  | Application cores when syslog appender is given an unreachable host/ip. Fixes [LOGCXX-191](https://issues.apache.org/jira/browse/LOGCXX-191). | | |
| |  | The 'logger.h' header includes itself. Fixes [LOGCXX-190](https://issues.apache.org/jira/browse/LOGCXX-190). | | |
| |  | Migrate to Maven 2.0 for documentation and packaging Fixes [LOGCXX-189](https://issues.apache.org/jira/browse/LOGCXX-189). | | |
| |  | Upgrade to apr 1.2.9 and apr-util 1.2.8 Fixes [LOGCXX-188](https://issues.apache.org/jira/browse/LOGCXX-188). | | |
| |  | LogLog::emit() could potentially interleave messages Fixes [LOGCXX-187](https://issues.apache.org/jira/browse/LOGCXX-187). | | |
| |  | Garbage characters in log files when log requests from multiple threads with hyperthreading enabled Fixes [LOGCXX-186](https://issues.apache.org/jira/browse/LOGCXX-186). | | |
| |  | Crash when log level set to 'inherited' Fixes [LOGCXX-184](https://issues.apache.org/jira/browse/LOGCXX-184). | | |
| |  | Compiler warning: dereferencing type-punned pointer will break strict-aliasing rules Fixes [LOGCXX-183](https://issues.apache.org/jira/browse/LOGCXX-183). | | |
| |  | missing man page for simplesocketserver Fixes [LOGCXX-182](https://issues.apache.org/jira/browse/LOGCXX-182). | | |
| |  | Level::DEBUG and other non-local statics cause crash on app shutdown on AIX Fixes [LOGCXX-181](https://issues.apache.org/jira/browse/LOGCXX-181). | | |
| |  | Build fails at domconfigurator.h Fixes [LOGCXX-180](https://issues.apache.org/jira/browse/LOGCXX-180). | | |
| |  | example applications do SIGABRT on aix 5.2 Fixes [LOGCXX-179](https://issues.apache.org/jira/browse/LOGCXX-179). | | |
| |  | Link failure if wchar\_t cannot be determined as UTF-16 or UTF-32 Fixes [LOGCXX-178](https://issues.apache.org/jira/browse/LOGCXX-178). | | |
| |  | SocketImpl::accept uses private APR function: apr\_wait\_for\_io\_or\_timeout Fixes [LOGCXX-177](https://issues.apache.org/jira/browse/LOGCXX-177). | | |
| |  | APRCharsetEncoder is not thread safe Fixes [LOGCXX-175](https://issues.apache.org/jira/browse/LOGCXX-175). | | |
| |  | configure fail with ".infig.status: error: cannot find input file:" Fixes [LOGCXX-172](https://issues.apache.org/jira/browse/LOGCXX-172). | | |
| |  | Add project description file for projects.apache.org Fixes [LOGCXX-171](https://issues.apache.org/jira/browse/LOGCXX-171). | | |
| |  | XMLLayoutTestCase fails on compilers that do not provide location info Fixes [LOGCXX-169](https://issues.apache.org/jira/browse/LOGCXX-169). | | |
| |  | log4j.dtd does not contain rollingPolicy and other o.a.l.r.RFA elements Fixes [LOGCXX-168](https://issues.apache.org/jira/browse/LOGCXX-168). | | |
| |  | system locale charmap is not determined properly on Fedora Core 6 Fixes [LOGCXX-167](https://issues.apache.org/jira/browse/LOGCXX-167). | | |
| |  | XMLSocketAppender may generate erroneous output due to mismatched encoding Fixes [LOGCXX-165](https://issues.apache.org/jira/browse/LOGCXX-165). | | |
| |  | XMLSocketAppender is disabled Fixes [LOGCXX-164](https://issues.apache.org/jira/browse/LOGCXX-164). | | |
| |  | liblog4cxx (svn 480882) does not link on Mac OS X 10.4 Fixes [LOGCXX-163](https://issues.apache.org/jira/browse/LOGCXX-163). | | |
| |  | Problem printing string with embedded NULL character Fixes [LOGCXX-162](https://issues.apache.org/jira/browse/LOGCXX-162). | | |
| |  | Using RollingFileAppender increases the working set with each rollover Fixes [LOGCXX-161](https://issues.apache.org/jira/browse/LOGCXX-161). | | |
| |  | helpers/object.h: DECLARE\_LOG4CXX\_OBJECT macro definition is missing virtual destructor declaration Fixes [LOGCXX-160](https://issues.apache.org/jira/browse/LOGCXX-160). | | |
| |  | Initialization of local static objects out of order on Linux Fixes [LOGCXX-159](https://issues.apache.org/jira/browse/LOGCXX-159). | | |
| |  | tolower not defined in stringhelper.cpp Fixes [LOGCXX-158](https://issues.apache.org/jira/browse/LOGCXX-158). | | |
| |  | make install fails since \@manual_dest@ replacement is missing in Makefiles Fixes [LOGCXX-157](https://issues.apache.org/jira/browse/LOGCXX-157). | | |
| |  | immediate flush in console appender Fixes [LOGCXX-156](https://issues.apache.org/jira/browse/LOGCXX-156). | | |
| |  | Update source headers per new ASF header policy Fixes [LOGCXX-155](https://issues.apache.org/jira/browse/LOGCXX-155). | | |
| |  | Automate log4cxx site and doxygen generation and deployment Fixes [LOGCXX-153](https://issues.apache.org/jira/browse/LOGCXX-153). | | |
| |  | gcc warning about cast from \`const void\*' to \`log4cxx::helpers::Object\*' discards qualifiers from pointer target typ Fixes [LOGCXX-152](https://issues.apache.org/jira/browse/LOGCXX-152). | | |
| |  | Umlauts as literal in patternlayout won't be logged correct Fixes [LOGCXX-151](https://issues.apache.org/jira/browse/LOGCXX-151). | | |
| |  | logstream's operator\<\< declared in the wrong namespace Fixes [LOGCXX-150](https://issues.apache.org/jira/browse/LOGCXX-150). | | |
| |  | make dist does not work Fixes [LOGCXX-149](https://issues.apache.org/jira/browse/LOGCXX-149). | | |
| |  | DailyRollingFileAppender::~DailyRollingFileAppender must call finalize Fixes [LOGCXX-146](https://issues.apache.org/jira/browse/LOGCXX-146). | | |
| |  | \-xarch=v8plus should be removed from Makefile.in Fixes [LOGCXX-143](https://issues.apache.org/jira/browse/LOGCXX-143). | | |
| |  | socketservertestcase.cpp does not compile with Sun Studio 11 on Solaris Fixes [LOGCXX-142](https://issues.apache.org/jira/browse/LOGCXX-142). | | |
| |  | Upgrade to APR 1.2.7 or later Fixes [LOGCXX-141](https://issues.apache.org/jira/browse/LOGCXX-141). | | |
| |  | Handle leak with LoggingEvent::getCurrentThreadName Fixes [LOGCXX-140](https://issues.apache.org/jira/browse/LOGCXX-140). | | |
| |  | XMLLayoutTestCase uses inadequate filters for 64 bit platforms Fixes [LOGCXX-139](https://issues.apache.org/jira/browse/LOGCXX-139). | | |
| |  | XMLLayoutTestCase output and filtered output gets overwritten Fixes [LOGCXX-138](https://issues.apache.org/jira/browse/LOGCXX-138). | | |
| |  | DailyRollingFileAppender not using Property options Fixes [LOGCXX-136](https://issues.apache.org/jira/browse/LOGCXX-136). | | |
| |  | Use std::string with logstream Fixes [LOGCXX-135](https://issues.apache.org/jira/browse/LOGCXX-135). | | |
| |  | FileAppender could create missing directories Fixes [LOGCXX-134](https://issues.apache.org/jira/browse/LOGCXX-134). | | |
| |  | Missing parenthesis in LOG4CXX\_ASSERT Fixes [LOGCXX-133](https://issues.apache.org/jira/browse/LOGCXX-133). | | |
| |  | various segmentation faults in multithreaded application Fixes [LOGCXX-132](https://issues.apache.org/jira/browse/LOGCXX-132). | | |
| |  | TimeBasedRollingPolicy is declared "abstract" Fixes [LOGCXX-131](https://issues.apache.org/jira/browse/LOGCXX-131). | | |
| |  | Compile fails on gcc4.1 Fixes [LOGCXX-130](https://issues.apache.org/jira/browse/LOGCXX-130). | | |
| |  | Asyncappender is full of race conditions (improper use of condition variables) Fixes [LOGCXX-129](https://issues.apache.org/jira/browse/LOGCXX-129). | | |
| |  | Main build.xml not referencing "env" properly. Fixes [LOGCXX-127](https://issues.apache.org/jira/browse/LOGCXX-127). | | |
| |  | std::cout stops working if log4cxx is first to output Fixes [LOGCXX-126](https://issues.apache.org/jira/browse/LOGCXX-126). | | |
| |  | L7dTestCase is stubbed out Fixes [LOGCXX-125](https://issues.apache.org/jira/browse/LOGCXX-125). | | |
| |  | wchar\_t constructor missing in class NDC Fixes [LOGCXX-124](https://issues.apache.org/jira/browse/LOGCXX-124). | | |
| |  | UTF-8 build fails on Linux Fixes [LOGCXX-123](https://issues.apache.org/jira/browse/LOGCXX-123). | | |
| |  | Wrong parameter description in Patternlayout Fixes [LOGCXX-120](https://issues.apache.org/jira/browse/LOGCXX-120). | | |
| |  | ndctestcase not working Fixes [LOGCXX-119](https://issues.apache.org/jira/browse/LOGCXX-119). | | |
| |  | Hierarchy corrupts with PropertyConfigurator Fixes [LOGCXX-118](https://issues.apache.org/jira/browse/LOGCXX-118). | | |
| |  | Memory leak with ThreadSpecificData on Win32 Fixes [LOGCXX-117](https://issues.apache.org/jira/browse/LOGCXX-117). | | |
| |  | SVN head does not compiler with MinGW compiler Fixes [LOGCXX-116](https://issues.apache.org/jira/browse/LOGCXX-116). | | |
| |  | SVN head does not compile with Borland C++ compiler Fixes [LOGCXX-115](https://issues.apache.org/jira/browse/LOGCXX-115). | | |
| |  | Upgrade APR to 1.2.2 from 1.1.0 Fixes [LOGCXX-114](https://issues.apache.org/jira/browse/LOGCXX-114). | | |
| |  | separate apr detection m4 codes from aclocal.m4 Fixes [LOGCXX-113](https://issues.apache.org/jira/browse/LOGCXX-113). | | |
| |  | change "static" to "auto" for Transcoder::decode() decoder and CharsetDecoder::getDefaultDecoder() decoder Fixes [LOGCXX-112](https://issues.apache.org/jira/browse/LOGCXX-112). | | |
| |  | make Logger cache a LoggerRepositoryPtr instead of a "blind" pointer Fixes [LOGCXX-111](https://issues.apache.org/jira/browse/LOGCXX-111). | | |
| |  | try fix 64bit log4cxx\_intptr\_t Fixes [LOGCXX-110](https://issues.apache.org/jira/browse/LOGCXX-110). | | |
| |  | Can't compile log4cxx in ascii on Windows Fixes [LOGCXX-107](https://issues.apache.org/jira/browse/LOGCXX-107). | | |
| |  | maxFileSize has bad type in SizeBasedTriggeringPolicy file Fixes [LOGCXX-106](https://issues.apache.org/jira/browse/LOGCXX-106). | | |
| |  | Infinite loop in string replacing Fixes [LOGCXX-105](https://issues.apache.org/jira/browse/LOGCXX-105). | | |
| |  | ODBCAppender::close does not check if appender is already closed Fixes [LOGCXX-104](https://issues.apache.org/jira/browse/LOGCXX-104). | | |
| |  | Much of CVS HEAD seems \#if 0 out, especially ResourceBundle stuff Fixes [LOGCXX-103](https://issues.apache.org/jira/browse/LOGCXX-103). | | |
| |  | Fixes for ODBCAppender Fixes [LOGCXX-100](https://issues.apache.org/jira/browse/LOGCXX-100). | | |
| |  | Gump build fails for log4cxx-ant-no-wchar-t target Fixes [LOGCXX-98](https://issues.apache.org/jira/browse/LOGCXX-98). | | |
| |  | simplesocketserver.cpp should use LOG4CXX\_STR("...") not L"..." Fixes [LOGCXX-94](https://issues.apache.org/jira/browse/LOGCXX-94). | | |
| |  | Explore use of security-enhanced CRT methods Fixes [LOGCXX-88](https://issues.apache.org/jira/browse/LOGCXX-88). | | |
| |  | Remove remaining uses of Category and Priority Fixes [LOGCXX-87](https://issues.apache.org/jira/browse/LOGCXX-87). | | |
| |  | Add TRACE level Fixes [LOGCXX-86](https://issues.apache.org/jira/browse/LOGCXX-86). | | |
| |  | Mac OS/X fixes and enhancements Fixes [LOGCXX-85](https://issues.apache.org/jira/browse/LOGCXX-85). | | |
| |  | Problems with stream logging in UTF8, no WCHAR\_T build Fixes [LOGCXX-84](https://issues.apache.org/jira/browse/LOGCXX-84). | | |
| |  | log4cxx::Level::ERROR fails to compile when GDI enabled Fixes [LOGCXX-83](https://issues.apache.org/jira/browse/LOGCXX-83). | | |
| |  | Compiling with stream.h in multiple object files errors Fixes [LOGCXX-82](https://issues.apache.org/jira/browse/LOGCXX-82). | | |
| |  | SimpleDateFormat does not compile on Solaris 2.95.2 gcc Fixes [LOGCXX-81](https://issues.apache.org/jira/browse/LOGCXX-81). | | |
| |  | Migrated network appenders to APR network IO Fixes [LOGCXX-80](https://issues.apache.org/jira/browse/LOGCXX-80). | | |
| |  | configure check for apr-util Fixes [LOGCXX-79](https://issues.apache.org/jira/browse/LOGCXX-79). | | |
| |  | Static builds broken Fixes [LOGCXX-77](https://issues.apache.org/jira/browse/LOGCXX-77). | | |
| |  | user.home, user.dir, java.io.tmpdir available within configuration files Fixes [LOGCXX-76](https://issues.apache.org/jira/browse/LOGCXX-76). | | |
| |  | Cygwin build Fixes [LOGCXX-75](https://issues.apache.org/jira/browse/LOGCXX-75). | | |
| |  | MinGW build Fixes [LOGCXX-74](https://issues.apache.org/jira/browse/LOGCXX-74). | | |
| |  | Not loading configuration from log4cxx.properties or log4cxx.xml Fixes [LOGCXX-73](https://issues.apache.org/jira/browse/LOGCXX-73). | | |
| |  | INSTALL out of date Fixes [LOGCXX-72](https://issues.apache.org/jira/browse/LOGCXX-72). | | |
| |  | Update performance page on web site Fixes [LOGCXX-71](https://issues.apache.org/jira/browse/LOGCXX-71). | | |
| |  | Logic flaws in StringHelper::startsWith and StringHelper::endsWith Fixes [LOGCXX-70](https://issues.apache.org/jira/browse/LOGCXX-70). | | |
| |  | NTEventLogAppender always uses RPC method for logging and has inadequate error handling. Fixes [LOGCXX-67](https://issues.apache.org/jira/browse/LOGCXX-67). | | |
| |  | SyslogAppender append method currently stubbed out Fixes [LOGCXX-66](https://issues.apache.org/jira/browse/LOGCXX-66). | | |
| |  | Migrate to APR network IO Fixes [LOGCXX-64](https://issues.apache.org/jira/browse/LOGCXX-64). | | |
| |  | Platform appropriate line-feed convention Fixes [LOGCXX-63](https://issues.apache.org/jira/browse/LOGCXX-63). | | |
| |  | log4cxx 0.10.0 release Fixes [LOGCXX-62](https://issues.apache.org/jira/browse/LOGCXX-62). | | |
| |  | XML layout can be mismatched with document encoding Fixes [LOGCXX-60](https://issues.apache.org/jira/browse/LOGCXX-60). | | |
| |  | Implement encoding support for Writer appender Fixes [LOGCXX-59](https://issues.apache.org/jira/browse/LOGCXX-59). | | |
| |  | ImmediateFlush'd FileAppenders extremely slow on Windows Fixes [LOGCXX-58](https://issues.apache.org/jira/browse/LOGCXX-58). | | |
| |  | Port log4j performance test Fixes [LOGCXX-57](https://issues.apache.org/jira/browse/LOGCXX-57). | | |
| |  | BasicConfiguration is unreliable Fixes [LOGCXX-56](https://issues.apache.org/jira/browse/LOGCXX-56). | | |
| |  | DailyRolling File Appender Fixes [LOGCXX-55](https://issues.apache.org/jira/browse/LOGCXX-55). | | |
| |  | Eliminate use of boost-regex in unit tests Fixes [LOGCXX-54](https://issues.apache.org/jira/browse/LOGCXX-54). | | |
| |  | Problems compiling with MsDev 6.0 (space in paths) Fixes [LOGCXX-53](https://issues.apache.org/jira/browse/LOGCXX-53). | | |
| |  | Migrate log4j 1.3 RollingFileAppender Fixes [LOGCXX-52](https://issues.apache.org/jira/browse/LOGCXX-52). | | |
| |  | variable name clash in macro Fixes [LOGCXX-50](https://issues.apache.org/jira/browse/LOGCXX-50). | | |
| |  | Move timezone specification into pattern, remove locale specification Fixes [LOGCXX-49](https://issues.apache.org/jira/browse/LOGCXX-49). | | |
| |  | Use hex representation for thread identifier Fixes [LOGCXX-48](https://issues.apache.org/jira/browse/LOGCXX-48). | | |
| |  | Check headers for missing declarations and Effective C++ violations Fixes [LOGCXX-47](https://issues.apache.org/jira/browse/LOGCXX-47). | | |
| |  | Extra semicolon after namespace closing paren Fixes [LOGCXX-46](https://issues.apache.org/jira/browse/LOGCXX-46). | | |
| |  | \_T causes error : 1048576 cannot be used as a function Fixes [LOGCXX-45](https://issues.apache.org/jira/browse/LOGCXX-45). | | |
| |  | GUMP integation Fixes [LOGCXX-44](https://issues.apache.org/jira/browse/LOGCXX-44). | | |
| |  | configure/make help needed Fixes [LOGCXX-43](https://issues.apache.org/jira/browse/LOGCXX-43). | | |
| |  | Layout timestamp doesn't seem to adjust for daylight saving Fixes [LOGCXX-41](https://issues.apache.org/jira/browse/LOGCXX-41). | | |
| |  | PatternLayout does not support Java date format specifiers Fixes [LOGCXX-40](https://issues.apache.org/jira/browse/LOGCXX-40). | | |
| |  | Remove DailyRollingFileAppender Fixes [LOGCXX-39](https://issues.apache.org/jira/browse/LOGCXX-39). | | |
| |  | Unable to build log4cxx under Borland C++ Fixes [LOGCXX-37](https://issues.apache.org/jira/browse/LOGCXX-37). | | |
| |  | Migrate to Apache Portable Runtime threads Fixes [LOGCXX-36](https://issues.apache.org/jira/browse/LOGCXX-36). | | |
| |  | Avoid use of MSXML Fixes [LOGCXX-35](https://issues.apache.org/jira/browse/LOGCXX-35). | | |
| |  | Visual Studio 6 CVS build broken Fixes [LOGCXX-34](https://issues.apache.org/jira/browse/LOGCXX-34). | | |
| |  | log4cxx::Exception is not derived from std::exception Fixes [LOGCXX-33](https://issues.apache.org/jira/browse/LOGCXX-33). | | |
| |  | Missing copy constructors and assignment operators Fixes [LOGCXX-32](https://issues.apache.org/jira/browse/LOGCXX-32). | | |
| |  | Missing const qualifiers, Exception::getMessage() in particular. Fixes [LOGCXX-31](https://issues.apache.org/jira/browse/LOGCXX-31). | | |
| |  | StringTokenizer uses evil strtok and wcstok functions Fixes [LOGCXX-30](https://issues.apache.org/jira/browse/LOGCXX-30). | | |
| |  | Appender attributes are not passed passed to setOption correctly. Fixes [LOGCXX-29](https://issues.apache.org/jira/browse/LOGCXX-29). | | |
| |  | Appender threshold cannot be set in configuration files Fixes [LOGCXX-28](https://issues.apache.org/jira/browse/LOGCXX-28). | | |
| |  | Appender threshold cannot be set in configuration files Fixes [LOGCXX-27](https://issues.apache.org/jira/browse/LOGCXX-27). | | |
| |  | Default initialization is broken Fixes [LOGCXX-26](https://issues.apache.org/jira/browse/LOGCXX-26). | | |
| |  | Add Ant+cpptasks build file Fixes [LOGCXX-25](https://issues.apache.org/jira/browse/LOGCXX-25). | | |
| |  | Class and module name not available in LogEvent Fixes [LOGCXX-24](https://issues.apache.org/jira/browse/LOGCXX-24). | | |
| |  | Unit tests have become stale Fixes [LOGCXX-23](https://issues.apache.org/jira/browse/LOGCXX-23). | | |
| |  | Backslashes in filenames in XML config of FileAppender broken Fixes [LOGCXX-22](https://issues.apache.org/jira/browse/LOGCXX-22). | | |
| |  | Add check that libxml2 not libxml has been included Fixes [LOGCXX-21](https://issues.apache.org/jira/browse/LOGCXX-21). | | |
| |  | Add .cvsignore's to ignore generated files Fixes [LOGCXX-19](https://issues.apache.org/jira/browse/LOGCXX-19). | | |
| |  | LoggerStream Feature Fixes [LOGCXX-18](https://issues.apache.org/jira/browse/LOGCXX-18). | | |
| |  | Use of non reentrant time functions Fixes [LOGCXX-17](https://issues.apache.org/jira/browse/LOGCXX-17). | | |
| |  | Misleading statements in Introduction to log4cxx Fixes [LOGCXX-16](https://issues.apache.org/jira/browse/LOGCXX-16). | | |
| |  | PatternLayout don't use locale time zone,it's use GMT tome zone Fixes [LOGCXX-15](https://issues.apache.org/jira/browse/LOGCXX-15). | | |
| |  | add -Wall to compile log4cxx will get many warning Fixes [LOGCXX-14](https://issues.apache.org/jira/browse/LOGCXX-14). | | |
| |  | Add branch optimization hint to LOG4CXX\_DEBUG macro Fixes [LOGCXX-13](https://issues.apache.org/jira/browse/LOGCXX-13). | | |
| |  | the threshold of ApenderSkeleton can not be set by calling setOption. Fixes [LOGCXX-12](https://issues.apache.org/jira/browse/LOGCXX-12). | | |
| |  | Timezone may have side-effects Fixes [LOGCXX-11](https://issues.apache.org/jira/browse/LOGCXX-11). | | |
| |  | Conflicting definitions of tchar.h/simulatenous Unicode+MBCS Fixes [LOGCXX-10](https://issues.apache.org/jira/browse/LOGCXX-10). | | |
| |  | Compilation problems using VC5 or VC6 with later Platform SDKs Fixes [LOGCXX-8](https://issues.apache.org/jira/browse/LOGCXX-8). | | |
| |  | SocketAppender binary format not compatible with Chainsaw Fixes [LOGCXX-7](https://issues.apache.org/jira/browse/LOGCXX-7). | | |
| |  | Win32 OutputDebugString Fixes [LOGCXX-6](https://issues.apache.org/jira/browse/LOGCXX-6). | | |
| |  | Preprocessor macro WIN32 used instead of \_WIN32 Fixes [LOGCXX-5](https://issues.apache.org/jira/browse/LOGCXX-5). | | |
| |  | initialization not working on many OS's Fixes [LOGCXX-4](https://issues.apache.org/jira/browse/LOGCXX-4). | | |
| |  | Missing \#else Fixes [LOGCXX-3](https://issues.apache.org/jira/browse/LOGCXX-3). | | |
| |  | logger.h includes config.h Fixes [LOGCXX-2](https://issues.apache.org/jira/browse/LOGCXX-2). | | |
| |
| ## Release 0.9.7 - 2004-05-10 {#rel_9_7} |
| |
| | | | | |
| | ---------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- | -- | |
| | Type | Changes | By | |
| |  | Fixed examples source code in the "Short introduction to log4cxx". | | |
| |  | Fixed, in the renaming algorithm of RollingFileAppender and DailyRollingFileAppender, a problem specific to Unicode. | | |
| |  | Fixed conflict with Windows macros "min" and "max", by renaming StrictMath::min and StrictMath::max to StrictMath::minimum and StrictMath::maximum. | | |
| |  | Port to HPUX 11.0. | | |
| |  | Fixed segmentation fault in PropertyConfigurator. | | |
| |  | Port to Solaris. | | |
| |  | Fixed MutexException thrown while destroying RollingFileAppender. | | |
| |  | Logging macros can be used without explicity declaring the use of log4cxx namespace. | | |
| |  | Fixed static library unresolved externals for msvc 6 and 7.1 | | |
| |
| ## Release 0.9.6 - 2004-04-11 {#rel_9_6} |
| |
| | | | | |
| | ------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | -- | |
| | Type | Changes | By | |
| |  | Timezone management has been optimized through the class TimeZone | | |
| |  | Inter-thread synchronization and reference counting has been optimized | | |
| |  | Reference counting now uses gcc atomic functions (bug 929078) | | |
| |  | Use of StringBuffer has been optimized. | | |
| |  | Support of localisation throug resourceBundles | | |
| |  | SyslogAppender now uses the system function 'syslog' to log on the local host. (only for POSIX systems) | | |
| |  | Added TimeZone configuration to PatternLayout (bug 912563) | | |
| |  | Support of the DailyRollingFileAppender (feature request 842765) | | |
| |
| ## Release 0.9.5 - 2004-02-04 {#rel_9_5} |
| |
| | | | | |
| | ---------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -- | |
| | Type | Changes | By | |
| |  | Port of log4j Jnuit tests with Cppunit and Boost Regex. | | |
| |  | Added explicit exports for MSDEV 6 and MSDEV 7 (no further need of .def files) | | |
| |  | Custom levels can be configured through the DOMConfigurator and PropertyConfigurator classes (Level inherites from Object) | | |
| |  | Added a reference counter to LoggingEvent to avoid useless copies (LoggingEvent inherites from Object) | | |
| |  | The file log4j.xml as well as the file log4j.properties are now search for, in log4cxx initialization. | | |
| |  | The root logger can be assigned the "OFF" level. | | |
| |  | Added MSVC6 project missing files mutext.cpp and condition.cpp (bug 847397) | | |
| |  | condition.cpp now compiles with MSVC6 (bug 847417) | | |
| |  | fixed pure virtual function call in PropertyConfigurator::configureAndWatch (bug 848521) | | |
| |  | XMLAppender now displays correct timestamp with MSVC 6 (bug 852836) | | |
| |  | SRLPORT 4.6 support. | | |
| |  | Fixed an infinite loop in class Properties. | | |
| |  | Fixed compilations problems with unicode. | | |
| |  | Fixed SocketAppender bug concerning MDC and NDC. | | |
| |
| ## Release 0.9.4 - 2003-10-25 {#rel_9_4} |
| |
| | | | | |
| | ------------------------------------------------------------------- | --------------------------------------------------------- | -- | |
| | Type | Changes | By | |
| |  | StringBuffer has been optimized. | | |
| |  | Fixed miscellaneous threading problems. | | |
| |  | Added TimeZone support in PatternLayout (bug 796894) | | |
| |  | Fixed threading configuration problems (bug 809125) | | |
| |  | Fixed miscellaneous MSVC and cygwin compilation problems. | | |
| |
| ## Release 0.9.3 - 2003-09-19 {#rel_9_3} |
| |
| | | | | |
| | ------------------------------------------------------------------- | ------------------------------------------------------------------------------- | -- | |
| | Type | Changes | By | |
| |  | Changed tstring to log4cxx::String and tostringstream to log4cxx::StringBuffer. | | |
| |  | Fixed MSVC 2003 compilation erros and warnings. | | |
| |  | Added helpers for NDC and MDC. | | |
| |  | Added TimeZone support in TTCCLayout. | | |
| |  | Fixed compilation problems with logger macros (LOG4CXX\_...) | | |
| |  | Fixed milliseconds formatting problem with MSVC 6.0 and 2003 | | |
| |  | Fixed AsyncAppender crash | | |
| |  | Added new tests | | |
| |  | Added benchmarks | | |
| |
| ## Release 0.9.2 - 2003-08-10 {#rel_9_2} |
| |
| | | | | |
| | ------------------------------------------------------------------- | ----------------------------------------------------------------------------- | -- | |
| | Type | Changes | By | |
| |  | Fixed FreeBSD compilation problem with pthread mutex (class CriticalSection). | | |
| |  | Fixed milliseconds formatting problem (class DateFormat). | | |
| |  | Long events (\> 1024 chars) are now supported in the class XMLSocketAppender. | | |
| |  | Carriage returns have been normalized in the class XMLLayout. | | |
| |
| ## Release 0.9.1 - 2003-08-06 {#rel_9_1} |
| |
| | | | | |
| | ------------------------------------------------------------------- | ------------------------------------------------------------ | -- | |
| | Type | Changes | By | |
| |  | Fixed deadlock problems in classes Logger and AsyncAppender. | | |
| |  | Fixed MSVC 6.0 compilation problems. | | |
| |  | Added MSVC 6.0 static libraty project. | | |
| |  | Default configuration for the SMTP options is "no". | | |
| |
| ## Release 0.9.0 - 2003-08-06 {#rel_9_0} |
| |
| | | | | |
| | ---------------------------------------------------------------- | ---------------------------------------------------------------------- | -- | |
| | Type | Changes | By | |
| |  | Added ODBCAppender (matching log4j JDBCAppender) | | |
| |  | Added SyslogAppender | | |
| |  | Added SMTPAppender (only for Linux/FreeBSD) | | |
| |  | Added BasicConfigurator | | |
| |  | Added a FileWatchDog in PropertyConfigurator and DOMConfigurator | | |
| |  | Possibility to load a custom LoggerFactory through the DOMConfigurator | | |
| |  | Changed time precision from seconds to milliseconds | | |
| |  | Added MSVC 6.0 'Unicode Debug' and 'Unicode Release' targets | | |
| |  | Added Java like System class. | | |
| |
| ## Release 0.1.1 - 2003-07-09 {#rel_1_1} |
| |
| | | | | |
| | ---------------------------------------------------------------- | ------------------------------------------------------------------- | -- | |
| | Type | Changes | By | |
| |  | Fixed MSVC 6.0 compilation problems concerning the 'Release' target | | |
| |  | Added MSVC 6.0 tests projects | | |
| |
| ## Release 0.1.0 - 2003-07-08 {#rel_1_0} |
| |
| | | | | |
| | ---------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | -- | |
| | Type | Changes | By | |
| |  | FreeBSD Autotools/Compilation support | | |
| |  | Fixed TelnetAppender crash when a socket bind exception occured. | | |
| |  | Added log4j DTD support to XMLLayout and DOMConfigurator | | |
| |  | Can now send events in XML format over TCP (class XMLSocketAppender) for the log4j Chainsaw UI | | |
| |  | Now compiles with 'configure --enable-unicode' (UTF16 Unicode support) | | |
| |  | Added Java like Properties class. It's a helper for the PropertyConfigurator | | |
| |  | Added Java like objects with dynamic cast and instanciation. Custom objects can be configured through the DOMConfigurator and PropertyConfigurator classes | | |
| |  | Port of the PropertyConfigurator class | | |
| |  | Port of the "Map Diagnostic Context" (MDC) class | | |
| |  | Added 13 tests (try make check) | | |
| |
| ## Release 0.0.1 - 2003-05-31 {#rel_0_1} |
| |
| | | | | |
| | ---------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | -- | |
| | Type | Changes | By | |
| |  | Loggers, Hierarchy, Filters, Appenders, Layouts, NDC | | |
| |  | Appenders: AsyncAppender, ConsoleAppender, FileAppender, NTEventLogAppender, RollingFileAppender, SocketAppender, SocketHubAappender, TelnetAppender | | |
| |  | Layouts: HTMLLayout, PatternLayout, SimpleLayout, TTCCLayout, XMLLayout | | |
| |  | Filters: DenyAllFilter, LevelMatchFilter, LevelRangeFilter, StringMatchFilter | | |
| |  | Configurators: DOMConfigurator | | |