vorburger opened a new pull request #652:
URL: https://github.com/apache/logging-log4j2/pull/652


   - LOG4J2-2236 Removed unnecessary dependency on jcommander since Log4j uses 
embedded picocli since 2.9.
   - [LOG4J2-2243] Cannot see or copy all of certain JAnsi exception messages 
on Windows due to NUL characters.
   - [LOG4J2-2245] Update Apache Commons Compress from 1.15 to 1.16.1.
   - Add TOC for Maven, Ivy, Gradle Artifacts page to left-nav menu
   - LOG4J2-2250 The internal status logger timestamp format is now 
configurable with system property `log4j2.StatusLogger.dateformat`.
   - LOG4J2-2250 update change log (configurable status logger timestamps)
   - Move Legacy Property Name into same column as Property Name to prevent 
page from overflowing horizontally.
   - LOG4J2-2250 (configurable status logger timestamps) bugfix: use 
PropertiesUtil instead of System properties; set showDateTime flag
   - LOG4J2-2250 (configurable status logger timestamps) renamed property to 
use CamelCase after community feedback
   - LOG4J2-2247 - NullPointerException would occur when header was provided to 
a Layout on RollingRandingAccessFileAppender         with 
DirectWriteRolloverStrategy.
   - LOG4J2-2254 - Incorrect automatics module name header was being included 
in manifests.
   - [LOG4J2-2259] Update MongoDB 3 module from driver 3.6.1 to 3.6.3.
   - Update MongoDB tests from de.flapdoodle.embed.mongo 2.0.1 to 2.0.3.
   - Update HttpAppenderTest from Wiremock 2.14.0 to 2.15.0.
   - [LOG4J2-2260] [SMTP] Update javax.mail from 1.6.0 to 1.6.1.
   - Update GelfLayout from Json-Unit 1.28.1 to 1.28.2.
   - [LOG4J2-2264] Update JAnsi from 1.16 to 1.17.
   - [LOG4J2-2270] Strings::join, when called with [null] returns "null" 
instead of EMPTY. I implemented a different fix than the one proposed in the PR.
   - LOG4J2-2271 - Move module-info.class to META-INF/versions/9 directory.
   - LOG4J2-2253 Added ParameterVisitableMessage.forEachParameter
   - LOG4J2-2253 renamed ParameterVisitableMessage to ParameterVisitable
   - fix typo
   - LOG4J2-2253 (change log) Add API to enable iterating over message 
parameters without creating temporary objects
   - LOG4J2-2252 Reusable LogEvents should pass along the original format string
   - LOG4J2-2252 (change log) Reusable LogEvents now pass the original format 
string to downstream components like layouts and filters.
   - LOG4J2-2273 Fix typo in documentation for custom configuration
   - LOG4J2-2273 (change log) Fix typo in documentation for custom configuration
   - LOG4J2-2253 Update ParameterConsumer index type from short to int
   - LOG4J2-2253 Update tests
   - [LOG4J2-2276] ConcurrentModificationException from 
org.apache.logging.log4j.status.StatusLogger.<clinit>(StatusLogger.java:71).
   - Update @since tags for 2.11.0 since there will not be a 2.10.1.
   - Update POMs from version 2.10.1-SNAPSHOT to 2.11.0-SNAPSHOT to stop some 
of the current confusion with JIRA marking the next release as 2.11.0.
   - [LOG4J2-2274] Allow EnvironmentPropertySource to run with a 
SecurityManager that rejects environment variable access.
   - [LOG4J2-2274] Allow EnvironmentPropertySource to run with a 
SecurityManager that rejects environment variable access.
   - [LOG4J2-2274] Allow EnvironmentPropertySource to run with a 
SecurityManager that rejects environment variable access.
   - [LOG4J2-2279] Allow SystemPropertiesPropertySource to run with a 
SecurityManager that rejects system property access.
   - [LOG4J2-2279] Allow SystemPropertiesPropertySource to run with a 
SecurityManager that rejects system property access. This test passes for me on 
Windows 10 but fails on Jenkins. Reorder a sanity check so that it takes place 
before the SecurityManager test rule is evaluated.
   - Better Javadocs.
   - Add missing license headers
   - Add dependencies to be distributed
   - Fix bug in anchor
   - Fix clirr plugin error
   - Shorten description for doap plugin
   - Update for 2.11.0 release
   - Add new modules to Javadoc page.
   - LOG4J2-1976 - Revert OSGi API version to 4.3.1
   - LOG4J2-2104 - LoaderUtil was improperly looping over classloaders
   - LOG4J2-2104 - LoaderUtil was improperly looping over classloaders
   - Remove dead link
   - Prepare for release
   - [maven-release-plugin] prepare release log4j-2.11.0-rc1
   - [maven-release-plugin] prepare for next development iteration
   - Fix site issues
   - Add articles
   - LOG4J2-2268 - Improve error msg if invalid value
   - Closes #160
   - [LOG4J2-2283] ParserConfigurationException when using Log4j with 
oracle.xml.jaxp.JXDocumentBuilderFactory.
   - [BUILD] removed picocli tests from core tests; they do not add value here 
and occasionally fail when building Log4j on a console that supports ANSI colors
   - [LOG4J2-2300] PoolingDriverConnectionSource does not take into account 
properties, user name, and password.
   - [LOG4J2-2300] PoolingDriverConnectionSource does not take into account 
properties, user name, and password.
   - [LOG4J2-2300] PoolingDriverConnectionSource does not take into account 
properties, user name, and password.
   - [LOG4J2-2302] Status logger should show the Log4j name and version when 
initializing itself.
   - [LOG4J2-2304] Log4j2 2.8.2 JMX unregister NullPointerException. Avoid some 
NPEs that don't seem like they should happen. Refactor the "*" context name 
into a constant.
   - [LOG4J2-2304] Log4j2 2.8.2 JMX unregister NullPointerException.
   - [LOG4J2-2289] XML Schema for DynamicFilterThreshold does not accept 
multiple KeyValuePairs.
   - Update tests from H2 1.4.196 to 1.4.197.
   - [LOG4J2-2311] Update Jackson from 2.9.4 to 2.9.5.
   - Update org.apache.logging.log4j.core.appender.HttpAppenderTest from 
Wiremock 2.15.0 to 2.16.0.
   - [LOG4J2-2313] Update LMAX Disruptor from 3.3.7 to 3.4.1. I was getting 
some odd 'JVM has quit' error messages so I updated the Surefire/Failsafe Maven 
plugins from 2.20.1 to 2.21.0 and that seems to fix it. The Histogram class 
from LMAX has been removed so I copied it into our test code base, it is 
licensed under the Apache 2.0 license.
   - [LOG4J2-2313] Update LMAX Disruptor from 3.3.7 to 3.4.2.
   - Update tests from maven-core 3.5.2 to 3.5.3.
   - Specify proper pmc value in doap
   - Update my organization
   - [LOG4J2-548] Log4j 2.0 ERROR "Could not search jar" with JBoss EAP 6.2.
   - maven-clean-plugin 3.0.0 -> 3.1.0.
   - maven-jar-plugin 3.0.2 -> 3.1.0.
   - jacoco-maven-plugin 0.8.0 -> 0.8.1.
   - maven-pmd-plugin 3.8 -> 3.9.0.
   - LOG4J2-2307: RingBufferLogEvent and MutableLogEvent memento to 
MementoLogEvent
   - [LOG4J2-2317] MutableLogEvent.getNonNullImmutableMessage retains format 
and parameters
   - LOG4J2-2318: AsyncQueueFullMessageUtil logs to StatusLogger
   - [LOG4J2-2320] Fix NPE in AbstractLogger when another exception is thrown
   - [LOG4J2-2321] AsyncLogger uses the parent level when unspecified
   - [LOG4J2-2322] Custom async ContextSelectors disable location by default
   - LOG4J2-2269: ReusableLogEventFactory.release clears MutableLogEvent
   - Update changelog with backported commits
   - [LOG4J2-2327] java.util.ServiceConfigurationError: 
org.apache.logging.log4j.util.PropertySource: Provider 
org.apache.logging.log4j.util.EnvironmentPropertySource not a subtype.
   - Revert "[LOG4J2-2327] java.util.ServiceConfigurationError: 
org.apache.logging.log4j.util.PropertySource: Provider 
org.apache.logging.log4j.util.EnvironmentPropertySource not a subtype."
   - [LOG4J2-2328] Update JAnsi from 1.17 to 1.17.1.
   - Add an ignored failing test for LOG4J2-2301
   - Tests for AsyncLoggerContextSelector with AsyncLoggers
   - [LOG4J2-2301] Mixed async loggers no longer forget parameter values
   - [LOG4J2-2331] use logger string formatting instead of concatenation
   - [LOG4J2-2333] Handle errors thrown in disruptor ExceptionHandler
   - [LOG4J2-2334] Add API 
org.apache.logging.log4j.core.appender.AsyncAppender.getQueueSize().
   - [LOG4J2-2336] Fix duplicate hyphen in AsyncLoggerConfig disruptor thread 
name
   - Fix typo.
   - [LOG4J2-2305] Make java.util.ServiceLoader properly work in OSGi by using 
the Service Loader Mediator Specification
   - Update example to latest Java 8.
   - Update Maven Javadoc plugin from 3.0.0 to 3.0.1 for Java 10 compatibility.
   - [LOG4J2-2347] Update Apache Commons Compress from 1.16.1 to 1.17.
   - Log4j 1.2 api tests do not leak MDC values.
   - [LOG4J2-1721] Allow composite configuration for context parameter
   - Add recent articles
   - AsyncLoggerConfig optimization
   - Apply ThreadContextRule to Log4j1XmlLayoutTest
   - [LOG4J2-2351] Added AbstractLogEvent.getMutableInstant
   - [LOG4J2-2352] Reusable event message mementos are memoized
   - [LOG4J2-2355] Avoid NullPointerException in PropertiesUtil.reload()
   - [LOG4J2-2355] Add testing and changelog entry
   - [LOG4J2-2357] Update Jackson from 2.9.5 to 2.9.6.
   - Update MongoDB test plugin from 2.0.3 to 2.1.1.
   - Update HttpAppenderTest from Wiremock 2.16.0 to 2.18.0.
   - Update GelfLayoutTest from JSON Unit 1.28.2 to 1.31.1.
   - Update tests from Maven Core 3.5.3 to 3.5.4.
   - Update Maven PMD plugin from 3.9.0 to 3.10.0.
   - [LOG4J2-2358] Update Kafka client from 1.0.0 to 1.1.0.
   - LOG4J2-2362 ReusableObjectMessage memory leak
   - Fix changes.xml conflict
   - LOG4J2-2305 - Mark slf4j-api as provided
   - LOG4J-2343 - The OSGi Activator specified an incorrect version
   - LOG4J2-2305 - Make java.util.ServiceLoader properly work in OSGi by using 
the Service Loader Mediator Specification
   - LOG4J2-1721 - Allow composite configuration for context parameter
   - LOG4J2-2312 LOG4J2-2341 Fix jackson layout with async loggers
   - LOG4J2-2364 Fix ReusableParameterizedMessage memory leak
   - LOG4J2-2305 - Split SLF4J into 2 modules - one for SLF4J 1.7.x and one for 
SLF4J 1.8+
   - LOG4J2-2305 - remove provided scope
   - LOG4J2-2305 - Move dependency unpack before the bundle plugin
   - LOG4J2-2305 - rename module. Add to distribution
   - LOG4J2-2305 - Create separate implementation for SLF4J 1.8
   - [LOG4J2-2368] Recursive logging doesn't clobber cached StringBuidlers
   - [LOG4J2-2373] Reduce unnecessary character movement in the 
StringBuilders.escapeJson function.
   - Adds a TriggeringPolicy that never triggers and is handy for edge-cases in 
tests for example.
   - Param name matches other parts of Log4j.
   - Remove incorrect comments.
   - Rename RandomAccessFileAppenderTests to RandomAccessFileAppenderTest.
   - The config object can be null when this builder is built programmatically.
   - Add singleton and better comment.
   - Assume the call site knows what it is doing.
   - Add plugin factory method.
   - These classes should not perform logging using Log4j to avoid accidentally 
loading or re-loading Log4j configurations.
   - Inline private StringBuilders.escapeAndDecrement
   - Revert "Inline private StringBuilders.escapeAndDecrement"
   - Oops, fix SO.
   - Add missing arg.
   - Benchmarks for StringBuilders escapeJson/escapeXml
   - [LOG4J2-2376] Optimize XML escape functionality and add unit testing.
   - [LOG4J2-2377] NullPointerException in 
org.apache.logging.log4j.util.LoaderUtil.getClassLoaders() when using Bootstrap 
classloader.
   - [LOG4J2-2377] NullPointerException in 
org.apache.logging.log4j.util.LoaderUtil.getClassLoaders() when using Bootstrap 
classloader.
   - [LOG4J2-2377] NullPointerException in 
org.apache.logging.log4j.util.LoaderUtil.getClassLoaders() when using Bootstrap 
class loader. Typo.
   - Closes #172 - it doesn't but something has to
   - Typo.
   - maven-site-plugin 3.7.0 -> 3.7.1.
   - [LOG4J2-2382] Update Mongodb 3 driver from 3.6.3 to 3.8.0.
   - [LOG4J2-2384] Update Kafka client from 1.1.0 to 1.1.1.
   - [LOG4J2-2385] Update Groovy from 2.4.13 to 2.5.1.
   - [LOG4J2-2385] Update Groovy from 2.4.13 to 2.5.1.
   - [LOG4J2-2386] Update optional Apache Commons DBCP from 2.2.0 to 2.4.0.
   - wagon-ssh plugin 3.0.0 -> 3.1.0.
   - Fix Javadoc typo.
   - [LOG4J2-2388] Thread indefinitely blocked when logging a message in an 
interrupted thread.
   - [LOG4J2-2388] Thread indefinitely blocked when logging a message in an 
interrupted thread.
   - LOG4J2-2390 - Fix broken links in log4j web documentation
   - LOG4J2-2316 - If root LoggerConfig does not have a Level return ERROR
   - LOG4J2-2389 - ThrowableProxy was saving and retrieving cache entries using 
different keys.
   - Update the SLF4J adapter documentation
   - Add missing license headers
   - Fix formatting
   - Preparation for a release
   - Preparation for a release
   - Prepare for release
   - [maven-release-plugin] prepare release log4j-2.11.1-rc1
   - [maven-release-plugin] prepare for next development iteration
   - [maven-release-plugin] rollback the release of log4j-2.11.1-rc1
   - Revert version number
   - [maven-release-plugin] prepare release log4j-2.11.1-rc1
   - [maven-release-plugin] prepare for next development iteration
   - [LOG4J2-2391] Benchmarks for logging to disk with a Throwable
   - [LOG4J2-2391] Improve ThrowablePatternConverter performance
   - ExtendedThrowablePatternConverter writes to the layout buffer
   - ThrowableProxy cleanup
   - [LOG4J2-2391] StackLocator initializes PrivateSecurityManager
   - [LOG4J2-2391] release note for release-2.x
   - Add myself to the developers list
   - maven-compiler-plugin 3.7.0 -> 3.8.0.
   - Update my role
   - Add missing EOLs.
   - Bullet-proof test tear downs to avoid spurious failures.
   - [LOG4J2-2397] Predeployment of PersistenceUnit that using Log4j as session 
logger failed (Closes #198).
   - Add documentation. Fix download page
   - LOG4J2-2365 Make NameAbbreviator correctly abbreviate first fragments
   - [LOG4J2-2365] Refactor PatternAbbreviator.abbreviate
   - Update usage page
   - clean up files generated by FileAppenderPermissionsTest
   - [LOG4J2-2201] Fix memory leak in ReusableParameterizedMessage
   - [LOG4J2-2348] workaround flaky "Operation not permitted" failures in mongo 
tests
   - Add low-level method 
org.apache.logging.log4j.core.appender.AsyncAppender.getThreadQueueSize() to 
help synch tests in applications.
   - Revert "Add low-level method 
org.apache.logging.log4j.core.appender.AsyncAppender.getThreadQueueSize() to 
help synch tests in applications."
   - [LOG4J2-2391] Improve ThrowableProxy performace on java 9+
   - Apply ThreadContextRule to ThreadContext tests
   - Simplify surefire configuration
   - [LOG4J2-2363] pass object parameter to reusable events
   - Test for swapParamterers on ReusableObjectMessage
   - [LOG4J2-2391] Add a FileAppenderThrowableBenchmark over a more complex 
stack
   - Update tests from Groovy 2.5.1 to 2.5.2.
   - [LOG4J2-2418] NullPointerException when closing never used 
RollingRandomAccessFileAppender.
   - [LOG4J2-2422] Handle some unchecked exceptions while loading plugins.
   - [LOG4J2-2391] Refactor as much logic as possible out of ThrowableProxy
   - [LOG4J2-2441] Disallow setting a null ErrorHandler on AbstractAppender
   - [LOG4J2-2444] ErrorHandler is invoked with a LogEvent and Throwable when 
possible
   - In-line unused local variable.
   - Javadoc.
   - [LOG4J2-2447] Let the NullAppender default its name to "null".
   - [LOG4J2-2447] Let the NullAppender default its name to "null".
   - Add status logging.
   - Better status logger message.
   - Better local var name.
   - Better param names.
   - Documentation for base64 variable substitution.
   - Javadoc.
   - [LOG4J2-2468] Update Jackson from 2.9.6 to 2.9.7.
   - [LOG4J2-2469] Update Apache Commons Compress from 1.17 to 1.18.
   - [LOG4J2-2470] Update Apache Commons CSV from 1.5 to 1.6.
   - [LOG4J2-2471] Update javax.mail from 1.6.1 to 1.6.2.
   - Update tests from Wiremock 2.18.0 to 2.19.0.
   - [LOG4J2-2472] Update mongo-java-driver 3 from 3.8.0 to 3.8.2.
   - Add timing information to DEBUG logging on reconfiguration; handy to 
capture how changes to a JDBC Appender for example affects reconfiguration as 
acquiring database connection can be slow sometimes.
   - Format nit.
   - Update tests from Groovy 2.5.2 to 2.5.3.
   - Javadoc.
   - Bullet-proof JDBC tests by always calling the SQL DDL to dropo a table 
even when a test fails.
   - Javadoc.
   - Javadoc.
   - [LOG4J2-2472] Exceptions are added to all columns when a JDBC Appender's 
ColumnMapping uses a Pattern.
   - [LOG4J2-2466] ColumnMapping literal not working.
   - LOG4J2-2478 Return the computed variables on each benchmark to avoid DCE
   - Changelog for LOG4J2-2478
   - Protect test tearDown from NPEs in the event there are problems in the 
tests.
   - [LOG4J2-2476] org.apache.log4j.SimpleLayout missing in log4j-1.2-api. 
Programmatic compatibility.
   - [LOG4J2-2476] org.apache.log4j.SimpleLayout missing in log4j-1.2-api. 
Programmatic compatibility.
   - [LOG4J2-2134] StackOverflowError at AwaitCompletionReliabilityStrategy. 
Closes #221.
   - [LOG4J2-2134] StackOverflowError at AwaitCompletionReliabilityStrategy. 
Closes #221.
   - [LOG4J2-2481] Avoid NullPointerExceptions in 
org.apache.logging.log4j.core.config.AbstractConfiguration for null arguments 
to appenders.
   - [LOG4J2-2457] RollingRandomAccessFileManager ignores new file patterns 
from programmatic reconfiguration.
   - Sentence should start with cap in an exception message.
   - Statement does not need to be in an else clause.
   - [LOG4J2-2482] BasicContextSelector cannot be used in a OSGI application.
   - [LOG4J2-2476] org.apache.log4j.SimpleLayout and ConsoleAppender missing in 
log4j-1.2-api.
   - Javadoc fix.
   - Add a test that shows string substitution works in the JDBC Appender.
   - [LOG4J2-2484] Allow setting of output stream on StatusLogger. Better docs.
   - [LOG4J2-2489] JDBC Appender should release parameter resources ASAP.
   - [LOG4J2-2489] JDBC Appender should release parameter resources ASAP.
   - Pull up logger() method.
   - Access status logger through method.
   - Remove unused imports.
   - [LOG4J2-2491] Allow all Appenders to optionally carry a Property array.
   - Add JdbcDatabaseManager.getConnectionSource().
   - [LOG4J2-2491] Allow all Appenders to optionally carry a Property array.
   - Use final. Remove trailing spaces.
   - Revert "Use final. Remove trailing spaces."
   - Use final.
   - Checkstyle: Remove trailing white spaces on all lines.
   - Add missing '@Override' annotations.
   - New test to assert that Log4j MapMessages are mapped to JMS MapMessages.
   - New test to assert that Log4j MapMessages are mapped to JMS MapMessages.
   - Try to fix compiler error on Jenkins.
   - Use final.
   - [LOG4J2-2491] Allow all Appenders to optionally carry a Property array.
   - Fix funky formating.
   - Fix funky formating.
   - Deprecate org.apache.logging.log4j.Logger.entry(Object...) just like 
org.apache.logging.log4j.Logger.entry() already is.
   - Fix typo in instance variable name.
   - Javadoc format nits.
   - Fix typo in variable name.
   - Javadoc.
   - Consistent use of this in ctor.
   - [LOG4J2-2496] JDBC Appender should reconnect to the database when a 
connection goes stale.
   - [LOG4J2-2496] JDBC Appender should reconnect to the database when a 
connection goes stale.
   - [LOG4J2-2497] JmsAppender reconnectIntervalMillis cannot be set from a 
configuration file.
   - Remove unused imports.
   - Javdoc fix.
   - Fix Javdoc.
   - Private class can have a private ctor.
   - Better status logging and exception messages.
   - [LOG4J2-2499] JMS Appender may throw a NullPointerException when JMS is 
not up while the Appender is starting.
   - [LOG4J2-2496] JDBC Appender should reconnect to the database when a 
connection goes stale.
   - [LOG4J2-2496] JDBC Appender should reconnect to the database when a 
connection goes stale.
   - [LOG4J2-2405] Better handling of %highlight pattern when using jul-bridge.
   - maven-core 3.5.4 -> 3.6.0.
   - Fix typo in comment.
   - [LOG4J2-2496] JDBC Appender should reconnect to the database when a 
connection goes stale.
   - [LOG4J2-2496] JDBC Appender should reconnect to the database when a 
connection goes stale.
   - Clean up.
   - [LOG4J2-2496] JDBC Appender should reconnect to the database when a 
connection goes stale.
   - [LOG4J2-2503] Update MongoDB driver from 3.8.2 to 3.9.0 for log4j-mongodb3 
module.
   - [LOG4J2-2505] Let JDBC PoolingDriverConnectionSource with Apache Commons 
DBCP configure a PoolableConnectionFactory.
   - [LOG4J2-2505] Let JDBC PoolingDriverConnectionSource with Apache Commons 
DBCP configure a PoolableConnectionFactory.
   - [LOG4J2-2505] Let JDBC PoolingDriverConnectionSource with Apache Commons 
DBCP configure a PoolableConnectionFactory.
   - [LOG4J2-2505] Let JDBC PoolingDriverConnectionSource with Apache Commons 
DBCP configure a PoolableConnectionFactory.
   - [LOG4J2-2505] Let JDBC PoolingDriverConnectionSource with Apache Commons 
DBCP configure a PoolableConnectionFactory. Next will be dealing with DBCP's 
Collection<String> parameters.
   - [LOG4J2-2505] Let JDBC PoolingDriverConnectionSource with Apache Commons 
DBCP configure a PoolableConnectionFactory. Use String[].
   - [LOG4J2-2508] JDBC Appender fails when using both parameter, source, and 
literal ColumnMapping elements.
   - [LOG4J2-2509] Allow a JDBC Appender to truncate strings to match a table's 
metadata column length limit.
   - [LOG4J2-2509] Allow a JDBC Appender to truncate strings to match a table's 
metadata column length limit. Not documenting truncateStrings for now since it 
might make sense to always have it on.
   - Make compiler on Jenkins happy.
   - Make compiler on Jenkins happy.
   - Split up predefined date formats in their own table.
   - Javadoc typos.
   - Format nits.
   - Fixed Appenders section in Extending Log4j
   - LOG4J2-1571 - Add CDATA
   - Skip doclint on javadoc plugin when building site
   - LOG4J-2514 - Make Strings.toRootUpperCase static
   - LOG4J2-2515 - Configuration documentation referenced incorrect method name.
   - Added dependency to log4j-slf4j18-impl
   - LOG4J2-2453 - Add Log4j-slf4j18-impl dependency to bom pom
   - LOG4J2-1906 - direct write was creating files with the wrong date/time
   - LOG4J2-1906 - direct write was creating files with the wrong date/time
   - Fix failure on my machine due to odd timing issue.
   - Backout hack but leave reuse of constant.
   - LOG4J2-1906 Second attempt at a fix
   - LOG4J2-1906 - remove unused imports
   - Better param name.
   - No need to nest in else clause.
   - The policy uses the file creation time for its comparison. The test now 
also sets the file creation time. Without this change, the test fails for me on 
Windows 10 and Oracle 8.
   - LOG4J2-1906 - close files after reading
   - LOG4J2-1906 - Add more output if a test failure occurs
   - [LOG4J2-1246] PatternLayout %date conversion pattern should render time 
zone designator for ISO-ISO8601.
   - [LOG4J2-1246] PatternLayout %date conversion pattern should render time 
zone designator for ISO-ISO8601.
   - [LOG4J2-1246] PatternLayout %date conversion pattern should render time 
zone designator for ISO-ISO8601.
   - [LOG4J2-1246] PatternLayout %date conversion pattern should render time 
zone designator for ISO-ISO8601.
   - [LOG4J2-1246] PatternLayout %date conversion pattern should render time 
zone designator for ISO-ISO8601.
   - [LOG4J2-1246] PatternLayout %date conversion pattern should render time 
zone designator for ISO-ISO8601.
   - [LOG4J2-1246] PatternLayout %date conversion pattern should render time 
zone designator for ISO-ISO8601.
   - [LOG4J2-1246] PatternLayout %date conversion pattern should render time 
zone designator for ISO-ISO8601.
   - [LOG4J2-1246] PatternLayout %date conversion pattern should render time 
zone designator for ISO-ISO8601.
   - [LOG4J2-1246] PatternLayout %date conversion pattern should render time 
zone designator for ISO-ISO8601.
   - [LOG4J2-1246] PatternLayout %date conversion pattern should render time 
zone designator for ISO-ISO8601.
   - [LOG4J2-1246] PatternLayout %date conversion pattern should render time 
zone designator for ISO-ISO8601.
   - Use final.
   - Remove unused imports.
   - [LOG4J2-1246] PatternLayout %date conversion pattern should render time 
zone designator for ISO-ISO8601.
   - Enhance direct write test. Add new OnStartup test
   - Add a listener to enable logging
   - LOG4J2-2485 - SizeBasedTriggeringPolicy was not honored when using the 
DirectWriteRolloverStrategy if the machine restarts
   - LOG4J2-1576 - Change from CLIRR to RevAPI to detect changes to the API
   - LOG4J2-2527: ListAppender getters return immutable snapshots
   - ListAppender explicit generic types
   - [LOG4J2-2522] Make MapMessageLookup.lookup usable with MapMessage again
   - [LOG4J2-2522]  Added @Test testLookupDefaultMapIsCheckedBeforeMapMessage()
   - Changelog for LOG4J2-2522
   - LOG4J2-1906 - Allow empty files to rollover. Should fix intermittent test 
failures
   - Promote the Log4j API
   - LOG4J2-2530 Generalize check for MapMessage, so that StructuredDataMessage 
are logged as well as StringMapMessage and ohter subtypes
   - Changelog for LOG4J2-2530
   - Remove garbage creation introduced by LOG4J2-2301
   - Adapt the fix for LOG4J2-2533 (github #251) for java 7
   - Changelog for LOG4J2-2533
   - LOG4J2-1570 - Logging with a lambda expression with a method call that 
also logs would cause logs within method call to reference line num and method 
name of the parent method
   - LOG4J2-1906 - Delay file name resolution closer to when the stream is 
opened
   - LOG4J2-1906 - Fix spelling error
   - LOG4J2-2266 - Load PropertySources from any accessible ClassLoader and 
handle any exceptions
   - LOG4J2-2542 - CronTriggeringPolicy was not rolling properly, especially 
when used with the SizeBasedTriggeringPolicy
   - LOG4J2-2542 - CronTriggeringPolicy was not rolling properly, especially 
when used with the SizeBasedTriggeringPolicy
   - LOG4J-2009 - modify test to match expected behavior
   - LOG4J2-2009 - Expose LoggerContext.setConfiguration as a public method.
   - LOG4j2-2061 - Use the file pattern as the FileManager name when no 
filename is present.
   - Fix license header
   - LOG4J2-2500 and LOG4J2-2543 - Add log4j-to-slf4j to bom pom.xml. Document 
that Properties element must be first
   - Exclude revapi.json from rat check
   - LOG4J2-2500 - update documentation to say properties element must be first
   - Prepare for release
   - [maven-release-plugin] prepare release log4j-2.11.2-rc1
   - [maven-release-plugin] prepare for next development iteration
   - Update changes.xml
   - Update changes.xml for next release
   - LOG4J2-2391 release note grammar s/more faster/faster
   - Fix WriterAppender.Builder break
   - Update for release
   - Update release notes
   - [maven-release-plugin] prepare release log4j-2.11.2-rc2
   - [maven-release-plugin] prepare for next development iteration
   - document incompatibility
   - [maven-release-plugin] prepare release log4j-2.11.2-rc3
   - [maven-release-plugin] prepare for next development iteration
   - [LOG4J2-2559] NullPointerException in JdbcAppender.createAppender().
   - Update tests from H2 1.4.197 to 1.4.199.
   - [LOG4J2-2561] JEP223 version detection fix for JDK 9 and up (release-2.x)
   - [LOG4J2-2570] Update Jackson from 2.9.7 to 2.9.8.
   - [LOG4J2-2570] Update Jackson from 2.9.7 to 2.9.8.
   - Match Travis.
   - Trying to fix Travis build.
   - [LOG4J2-2574] Update MongoDB 3 module driver from 3.9.0 to 3.10.1.
   - Update tests from de.flapdoodle.embed.mongo 2.1.1 to 2.2.0.
   - Update tests from Groovy 2.5.3 to 2.5.6.
   - Update tests from Mockito 2.23.4 to 2.25.1.
   - LOG4J2-2586 - TCP Appender should support a host name resolving to 
multiple IP addresses.
   - LOG4J2-2586 - remove unnecessary log event
   - [LOG4J2-2592] StackOverflowException when server not reachable with 
SocketAppender.
   - [LOG4J2-2592] StackOverflowException when server not reachable with 
SocketAppender.
   - [LOG4J2-2337] Allow custom end-of-line with JsonLayout (2.x branch) (#264)
   - [LOG4J2-2337] Allow custom end-of-line with JsonLayout.
   - LOG4J2-2598: GzCompressAction supports configurable compression levels
   - Update revapi.json
   - Update revapi.json
   - LOG4J2-913 - Access configurations by HTTP/S. Support Spring Cloud Config
   - LOG4J2-1906 - Delay file name resolution closer to when the stream is 
opened
   - LOG4J2-2266 - Load PropertySources from any accessible ClassLoader and 
handle any exceptions
   - Prepare for release
   - Update changes.xml for next release
   - LOG4J2-913 - Add support for dynamic reconfiguration
   - LOG4J2-913 - Code review changes
   - Functional Sample
   - LOG4J2-913 - Fix JSON serialization problems. Configure for various 
deployment methods
   - LOG4J2-913 - Add more tests and update site
   - More documentation fixes
   - LOG4J2-913 - Remove unneeded imports. General cleanup
   - LOG4J2-913 Update changes
   - LOG4J2-913 - correct revision list
   - LOG4J2-913 - Spring Cloud Config client has a minimum version of Java 8
   - LOG4J2-913 - Specify version of module
   - LOG4J2-913 - Use Log4j project version
   - Update some Maven plugins.
   - LOG4J2-2597 - Throw better exception message when both log4j-slf4j-impl 
and log4j-to-slf4j are present
   - [LOG4J2-2598] java.lang.StackOverflowError at 
org.apache.logging.log4j.junit.AbstractExternalFileCleaner.println(AbstractExternalFileCleaner.java:169).
   - LOG4J2-913 - Code review changes
   - LOG4J2-2602 - Update file time when size based triggering policy is used 
without a time-based triggering policy
   - LOG4J2-1103 remove used nodes when child is of list type
   - LOG4J2-1103 - FailoverAppender was failing with ERROR appender Failover 
has no parameter that matches element Failovers
   - LOG4J2-2561 - java version detection was not JEP223 compatible
   - LOG4J2-2564: PatternParser chooses newInstance methods with known 
parameters
   - Implement benchmarks for LOG4J2-2606
   - LOG4J2-2611: AsyncQueueFullPolicy configuration short values are case 
insensitive (#272)
   - [LOG4J2-2612] NullPointerException at 
org.apache.logging.log4j.core.appender.db.jdbc.JdbcDatabaseManager.writeInternal(JdbcDatabaseManager.java:803).
   - [LOG4J2-2618] Possible ClassCastException in 
org.apache.logging.log4j.core.script.ScriptManager.ScriptManager(Configuration, 
WatchManager).
   - [LOG4J2-2619] Update Jackson from 2.9.8 to 2.9.9.
   - Update tests from commons-codec 1.11 to 1.12.
   - LOG4J2-2610 - Explicitly set file creation time
   - LOG4J2-2610 - Only update creation time if flie size is 0
   - Add article
   - Clarify Default Rollover Strategy
   - LOG4J2-2631: RoutingAppender PurgePolicy implementations don't remove 
referenced appenders
   - LOG4J2-2629: Avoid losing log events when the PurgePolicy races a log event
   - Fix RoutingAppender compile error from backport
   - LOG4J2-1852 - Locate plugins inside a Jar using a URLConnection
   - LOG4J2-2613 - Attempt to eliminate test failures by requiring more logs 
before rollover
   - LOG4J2-2606: Substantially improve async logging performance under heavy 
load
   - LOG4J2-2606 documentation
   - LOG4J2-2406 - Add reconfiguration methods to Configurator
   - LOG4J2-1143 - Lookups were not found if the plugin key was not lowercase
   - Add 
org.apache.logging.log4j.junit.LoggerContextRule.getConfigurationLocation().
   - LOG4J2-2427 - Add NoMarker Filter
   - [LOG4J2-2403] Allow zero padding the counter of a RollingFileAppender
   - Separated SequenceNumberPatternConverterTests
   - LOG4J2-2403 - Allow zero padding the counter of a RollingFileAppender
   - LOG4J2-2634: Break up large AsyncLogger methods for inlining
   - LOG4J-2635: Fix java.version check in ThreadNameCachingStrategy
   - ThreadNameCachingStrategy: use enum consts instead of magic strings
   - [LOG4J2-2634] Add and use method 
org.apache.logging.log4j.message.MapMessage.toKey(String) for simpler 
subclasses.
   - Remove trailing whitespace.
   - Update Spring versions
   - LOG4J2-2633 - Handle NoSuchElementException
   - LOG4J2-2636 - RFC5424Layout was not properly setting default Structured 
Element id for the MDC
   - LOG4J2-2636 - RFC5424Layout was not properly setting default Structured 
Element id for the MDC
   - LOG4J2-2622 - StructuredDataId was ignoring maxLength atribute
   - LOG4J2-2616 - Restore constructor to ThrowablePatternConverter that was 
removed in 2.8.2
   - LOG4J2-2547 - RollingRandomAccessFileAppender error message referenced 
incorrect class name
   - LOG4J2-2616 - Restore constructor to ThrowablePatternConverter that was 
removed in 2.8.2
   - LOG4J2-2566 - Add missing modules to bom pom.xml
   - Prepare for release
   - Add missing license headers. Prepare for release
   - [maven-release-plugin] prepare release log4j-2.12.0-rc1
   - [maven-release-plugin] prepare for next development iteration
   - [maven-release-plugin] rollback the release of log4j-2.12.0-rc1
   - Do not deploy Spring samples
   - Revert version
   - [maven-release-plugin] prepare release log4j-2.12.0-rc1
   - [maven-release-plugin] prepare for next development iteration
   - LOG4J2-1852 - Close the JarFile
   - [maven-release-plugin] prepare release log4j-2.12.0-rc2
   - [maven-release-plugin] prepare for next development iteration
   - Enable rat plugin for spring cloud config sample server
   - [LOG4J2-2646] Update MongoDB 3 driver from 3.10.1 to 3.10.2.
   - LOG4J2-2644 - Improve performance of getting location info
   - Update SHA512 download info
   - LOG4J2-2644 - Code review comments and faster algorithm. Fix pre-Java 9 bug
   - LOG4J2-2644 - Call StackLocator earlier by detecting if any components 
require location info. Use a faster StackWalker algorithm
   - [LOG4J2-2646] Update MongoDB 3 driver from 3.10.1 to 3.10.2.
   - Update SHA512 download info
   - LOG4J2-2644 - Improve performance of capturing the caller's location
   - Comment out test that doesn't work in Java 11
   - [LOG4J2-2657] Improve exception messages in the JDBC appender.
   - Tabs -> Spaces.
   - LOG4J2-2658: AbstractAction.reportException records a warning to the 
status logger (#294)
   - LOG4J2-2659: AbstractAction handles unchecked RuntimeException and Error 
(#297)
   - [LOG4J2-2660] Retry when JDBC throws a 
java.sql.SQLTransactionRollbackException in commitAndClose().
   - LOG4J2-2556 - Make Log4j Core optional
   - LOG4J2-2556 - Make Log4j Core optional
   - LOG4J2-2366 - Remove references to LoggerContext when it is shutdown
   - Return always six bytes also when there is an ipv4 or ipv6 The localhost 
address is used for emulate a mac address when is not available
   - LOG4J2-2650 - Support emulating a MAC address when using ipv6
   - Try to fix the travis build
   - Update travis again
   - [LOG4j2-1946] Fix problem with purgeAscending if an old file was deleted
   - LOG4J2-1946 - allow file renames to work even if files are missing
   - Prepare for release
   - LOG4J2-2644 - Cache requiresLocation boolean
   - [LOG4J2-2667] "Values not bound to statement" when using JDBC appender, 
appender does not respect bufferSize="0".
   - Prepare for release
   - [maven-release-plugin] prepare release log4j-2.12.1-rc1
   - [maven-release-plugin] prepare for next development iteration
   - [LOG4J2-2658] Make test OS independent.
   - LOG4J2-2639 - Add support for Log Event builders
   - [LOG4J2-2673] OutputStreamAppender.Builder ignores setFilter().
   - LOG4J2-2672 - Add automatic module names
   - LOG4J2-2672 - Add automatic module names
   - [LOG4J2-2673] OutputStreamAppender.Builder ignores setFilter().
   - Backport Travis config update to 2.x
   - Use java 7
   - Try to fix Travis config for 2.x branch
   - Fix travis config some more
   - Try to use jdk11 and jdk7 concurrently
   - Add jdk8 to toolchain
   - Fix broken link
   - Fix typo on web site
   - Fix typos
   - LOG4J2-2680 - Set result to true after successful copy
   - Clarify documentation on ring buffer size
   - [LOG4J2-2693] Use @PluginValue value
   - LOG4J2-2709 - Allow message portion of GELF layout to be formatted using a 
PatternLayout. Allow ThreadContext attributes to be explicitly included or 
excluded in the GelfLayout.
   - LOG4J2-2710 - Allow Spring Boot application properties to be accessed in 
the Log4j 2 configuraiton. Add lower and upper case Lookups.
   - LOG4J2-2716 - Add the ability to lookup Kubernetes attributes in the Log4j 
configuration. Allow Log4j properties to be retrieved from the Spring 
environment if it is available.
   - Upgrade site plugin version
   - Fix issues with authentication with Spring Cloud Config
   - Fix issues with authentication with Spring Cloud Config
   - LOG4J2-63 - Almost full support for Log4j 1 XML files.
   - LOG4J2-2712 - The rolling file appenders would fail to compress the file 
after rollover if the file name matched the file pattern
   - LOG4J2-63 - Support Log4j 1 XML and Properties configurations
   - LOG4J2-63 - Add documentation
   - LOG4J2-63 Add AsyncAppender
   - Try to fix travis build again
   - Update jdk for Jenkins
   - Try to fix travis again
   - Allow Java 11 to be used to fix Travis
   - Fixing travis build
   - LOG4J2-63 - Add SyslogAppender
   - LOG4J2 - 1523 Add RewriteAppenderBuilder to Log4j 1.
   - Update compatiblity documentation
   - LOG4J2-63 - Add to changes.xml
   - Update site documentation
   - LOG4J2-2707 - ArrayIndexOutOfBoundsException could occur with MAC address 
longer than 6 characters
   - LOG4J2-2707 - fix due-to
   - LOG4J2-2727 - Add setKey method
   - LOG4J2-2701 - update Jackson to 2.9.10
   - LOG4J2-2731 - Add a LevelPatternSelector
   - LOG4J2-2732 - Add ThreadContext.putIfNotNull method
   - LOG4J2-2674 - Change the name of the ConfigurationSource
   - added log4j-kafka with "retryCount" function
   - added "KafkaAppenderWithRetryCount"
   - LOG4J2-2635 - Wrong java version check in ThreadNameCachingStrategy
   - Delete pom.xml
   - Delete KafkaAppenderCloseTimeoutTest.java
   - Delete KafkaAppenderTest.java
   - Delete ConfigurationAssemblerTest.java
   - Delete ConfigurationBuilderTest.java
   - Delete CustomConfigurationFactory.java
   - Delete site.xml
   - Delete index.md
   - Delete DefaultKafkaProducerFactory.java
   - Delete KafkaAppender.java
   - Delete KafkaManager.java
   - Delete KafkaProducerFactory.java
   - Update KafkaAppender.java
   - Update KafkaManager.java
   - added testAppendWithRetryCount
   - Add articles
   - LOG4J2-2725 - Added try/finally around event.execute() for 
RingBufferLogEventHandler to clear memory correctly in case of exception/error 
(#316)
   - Changelog and test coverage for LOG4J2-2725
   - LOG4J2-2058 - Prevent recursive calls to getLogger
   - LOG4J2-2058 - Prevent recursive calls to getLogger
   - modification KafkaManager and KafkaAppender
   - Prepare for relesae
   - Prepare for relesae
   - [maven-release-plugin] prepare release log4j-2.13.0-rc1
   - [maven-release-plugin] prepare for next development iteration
   - Fix unit tests
   - Add windows toolchain
   - Fix layout wording
   - Update release date
   - [maven-release-plugin] prepare release log4j-2.13.0-rc2
   - [maven-release-plugin] prepare for next development iteration
   - Fix errors in the download page
   - LOG4J2-2415 - Lock contention in classloader because of missing 
org.slf4j.ext.EventData (#324)
   - LOG4J2-2415 changelog
   - LOG4J2-2677: Rollover and Deletion handle file deletions gracefully
   - Update revapi.json for 8d42a1a64ac79eca0644e660f1cbca39b1cc7320
   - LOG4J2-2745: LOG4J2-2744: Upgrade slf4j-1.8 to beta4 (from alpha2)
   - LOG4J2-2747: Fix a memory leak using discard and synchronous queue-full 
routes
   - LOG4J2-2739: Fix erroneous log4j-jul recursive logger detection
   - LOG4J2-2748: Implement ISO8601_PERIOD_MICROS fixed date format
   - LOG4J-2735 - make PluginCache output reproducible (#321)
   - LOG4J-2735 changelog
   - Fix LOG4J2-2735 issue reference, previously missing '2'
   - Fix log4j2-perf-file-throwable.xml async logger configuration
   - LOG4J2-2751: Avoid unnecessary throw/catch in StackLocator.getCallerClass
   - Remove empty statement in java9 StackLocator
   - LOG4J2-2752: MutableLogEvent and RingBufferLogEvent lazily create buffers
   - Parameterize FileAppenderThrowableBenchmark
   - Add support page
   - LOG4J2-2754: LoaderUtil.getClassLoaders may discover additional loaders
   - Add articles
   - kafkaAppender retryCount function added
   - KafkaAppenderTest.xml 수정
   - LOG4J2-2575 - CronExpression.getBeforeTime() would sometimes return 
incorrect result
   - Add new article
   - [LOG4J2-2762] [JDBC] MS-SQL Server JDBC driver throws SQLServerException 
when inserting a null value for a VARBINARY column.
   - [LOG4J2-2763] Update dependencies.
   - [LOG4J2-2763] Update dependencies.
   - [LOG4J2-2763] Update dependencies.
   - LOG4J2-2767 - Warn if pattern is missing on Routes element. Use default 
route
   - [LOG4J2-2770] CronExpression.getBeforeTime() would sometimes return 
incorrect result.
   - [LOG4J2-2770] NullPointerException after reconfiguring via JMX.
   - LOG4J2-2759 - RollingFileAppender was not rolling on startup if 
createOnDemand was set to true.
   - Log4j 2LOG4J2-2770 Fix NPE in JMX reconfiguration (#337)
   - LOG4J2-2770 - changes.xml
   - LOG4J2-2768 Add log(String, ...) overloads to LogBuilder (#336)
   - LOG4J2-2768 - add changes.xml entry
   - (doc) fix typos (#334)
   - Fixed check for RollingFileManager,directWrite (#331)
   - Fix build errors
   - Fixed log message in RollingFileAppender (#330)
   - Update changes.xml
   - LOG4J2-2777 - Add a retry count to the Kafka Appender
   - LOG4J2-2760: Fixes RollingFileAppender with DirectWriteRolloverStrategy 
and HtmlLayout (#332)
   - LOG4J2-2760 - Always write header to new files
   - LOG4J2-2703 Complex data type support for the default MapMessage JSON 
formatter. (#339)
   - LOG4J2-2703 - MapMessage.getFormattedMesssage() would incorrectly format 
objects.
   - LOG4J2-2760 - Always write header to new files
   - PluginProcessor should use Messager instead of writing to System.out
   - LOG4J2-2676 - PluginProcessor should use Messager instead of writing to 
System.out
   - call #StatusLogger.getLogger() only when it's needed. (#300)
   - LOG4J2-2781 - ServletContainerInitializer was obtaining the StatusLogger 
too soon.
   - LOG4J2-2782 - Use LinkedBlockingQueue instead of synchronous collection
   - LOG4J2-2211 - Allow Lookup keys with leading dashes by using a slash as an 
escape character.
   - [LOG4J2-2604/2649] Change MethodHandle to Constructor to adapt graalvm 
(#291)
   - LOG4J2-2649 - GraalVM does not allow the use of MethodHandles
   - LOG4J2-2652 - JSON output wrong when using additonal fields
   - LOG4J2-2652 - JSON output wrong when using additonal fields
   - Add another test
   - LOG4J2-2746 - ClassLoaderContextSelector was not locating the 
LoggerContext during shutdown.
   - Make RollingAppenderOnstartupTest do something reasonable
   - Add messages for debugging
   - Fix unit test - Java doesn't close streams automatically
   - Fix unit test
   - LOG4J2-2784 - Counter stuck at 10 and overwriting files when leading zeros 
used in the file pattern count.
   - LOG4J2-2039 - RolloverFails when file matches pattern but index is too 
large.
   - LOG4J2-2769 - Do not log an error if Files.move does not work.
   - LOG4J2-2756 - Prevent LoggerContext from being garbage collected while 
being created.
   - LOG4J2-2756 - Prevent LoggerContext from being garbage collected while 
being created.
   - (doc) Fix "construct" typo (#340)
   - ThreadContext: Convert static fields to ivars (#341)
   - Update ThreadContext docs
   - LOG4J2-2789 - Conditionally perform status logging calculations in 
PluginRegistry.
   - LOG4J2-2717 - Slow initialization on Windows due to accessing network 
interfaces.
   - Prepare for release
   - Remove Serializable
   - [maven-release-plugin] prepare release log4j-2.13.1-rc1
   - [maven-release-plugin] prepare for next development iteration
   - Fix errors in the release
   - [maven-release-plugin] prepare release log4j-2.13.1-rc2
   - [maven-release-plugin] prepare for next development iteration
   - Javadoc fixes
   - [maven-release-plugin] prepare release log4j-2.13.1-rc2
   - [maven-release-plugin] prepare for next development iteration
   - LOG4J2-2791 - Correct JsonLayout issue causing timestamps to not be sorted 
as intended.
   - LOG4J2-2794 - Make unit test more resilient to environment differences.
   - LOG4J2-2779 - Add ContextDataProviders as an alternative to having to 
implement a ContextDataInjector.
   - Add debugging to status logger.
   - Add debugging to status logger.
   - LOG4J2-2805 - TimeFilter did not handle daylight saving time transitions 
and did not support a range over 2 days.
   - LOG4J2-2807 - Add EventLookup to retrieve fields from the log event
   - avoid NPE because the stacklocator returned null (#356)
   - Avoid NullPointerException when StackWalker returns null.
   - LOG4J2-2761: For absolute URIs don't fail on wrongly formatted file URIs
   - LOG4J2-2761 - Fix Exceptions when whitespace is in the file path and Java 
security manager is used.
   - Documentation fix
   - fix bug:support includeLocation for AsyncLogger (#352)
   - LOG4J2-2811 - Add missing includeLocation parameter when creating 
AsyncLogger.
   - LOG4J2-2790 - Conditionally allocate PluginEntry during PluginCache 
loading.
   - [LOG4J2-2812] [JDBC] Throw a AppenderLoggingException instead of an NPE in 
the JDBC database manager.
   - [LOG4J2-2812] [JDBC] Throw a AppenderLoggingException instead of an NPE in 
the JDBC database manager.
   - Add helper.
   - Backport Jenkinsfile from master branch
   - Fix reference job
   - Add more info on test failure
   - Backport Jenkinsfile updates from master
   - Fix build again
   - Fix typo
   - Backport latest pipeline
   - Get date in correct timezone
   - LOG4J2-1360 - Add support for Platform Logger
   - LOG4J2-2815 - Allow Spring Boot applications to use composite 
configuratons.
   - LOG4J2-2815 - Allow Spring Boot applications to use composite 
configuratons.
   - LOG4J2-2794 - Make YamlLayoutTest more resiliant to environmental 
differences.
   - Fix erroneous usage of default locale
   - LOG4J2-2817 -  Allow the file size action to parse the value without being 
sensitive to the current locale.
   - LOG4J2-2791 - Allow the file size action to parse the value without being 
sensitive to the current locale.
   - Backport latest Jenkinsfile master fixes
   - Set pom to correct parent version
   - LOG4J2-2818 - Allow Spring Lookup to return default and active profiles
   - LOG4J2-2520 - Allow servlet context path to be retrive with /
   - Fix verifyHostName SSL option
   - Add docs for verifyHostName
   - Add javadoc for verifyHostName
   - [LOG4J2-2819] Add support for specifying an SSL configuration for 
SmtpAppender
   - [LOG4J2-2819] Update manual and changelog
   - LOG4J2-2793 - Allow trailing and leading spaces in log level
   - LOG4J2-2814 - Fix Javadoc in ScriptPatternSelector
   - LOG4J2-2813 - serializeToBytes was checking wrong variable for null
   - LOG4J2-2810 - Add information about using a URL in log4j.configurationFile
   - Clean up and document Jenkinsfile
   - LOG4J2-2766,LOG4J2-2457 - Initialize PatternProcessor before trigging 
policy and allow file extension to be modified during reconfiguration
   - LOG4J2-2588 - Add option to restore printing timeMillis in the JsonLayout.
   - LOG4J2-2588 - Mark timeMillis as read only
   - Merge GelfLayout
   - LOG4J2-2824 - Implement requiresLocation in GelfLayout to reflect whether 
location information is used in the message Pattern.
   - Document includeLocation, fix missing or incorrect license headers, 
prepare for relase
   - [maven-release-plugin] prepare release log4j-2.13.2-rc1
   - [maven-release-plugin] prepare for next development iteration
   - Add security page
   - LOG4J2-2824 - Fix NullPointerException in ThreadContextDataInjector
   - Prepare for release
   - [maven-release-plugin] prepare release log4j-2.13.3-rc1
   - [maven-release-plugin] prepare for next development iteration
   - [LOG4J2-2844] Null pointer exception when no network interfaces are 
available.
   - Test does not need to declare exception in throws clause.
   - Update MongoDB tests to require Java 8 unconditionally now that Log4j 
requires Java 8.
   - Update mongodb3.version from 3.12.1 to 3.12.4.
   - Update dependencies.
   - Revert "Update dependencies."
   - Update dependencies.
   - Fix compiler warnings.
   - Javadoc.
   - Fix possible resource leaks in MongoDB tests.
   - Tests that the level is converted.
   - Tests that the level is converted.
   - Remove MongoDb3 deprecated code since we already register our LevelCodec.
   - Javadoc.
   - Refactor constants.
   - Can't use log4j-slf4j-impl in the tests because it causes a recursive call 
to Log4j since the MongoDB version 3 (as opposed to 2) uses SLF4J for its own 
logging.
   - Use test scope for test-jar jars.
   - Allow this test to be configured from the command line for slower or busy 
machines.
   - [LOG4J2-2848] Create module log4j-mongodb4 to use new major version 4 
MongoDB driver.
   - [LOG4J2-2851] Drop log4j-mongodb2 module.
   - Don't dump to the console during tests unless you really have to.
   - [LOG4J2-2851] Drop log4j-mongodb2 module.
   - [LOG4J2-2848] Create module log4j-mongodb4 to use new major version 4 
MongoDB driver.
   - Update conversantDisruptorVersion comment.
   - Update some test dependencies.
   - Update tests commons-io:commons-io 2.6 -> 2.7.
   - LOG4J2-2828 Preserve file permissions after rollover in 
RollingRandomAccessFileAppender. (#364)
   - LOG4J2-2877 - Determine the container id to obtain container and image 
information
   - LOG4J2-2877 - Determine the container id to obtain container and image 
information
   - LOG4J2-2867 - Measure the time of writing the first log event
   - LOG4J2-2867 - Obtain ContextDataProviders asynchronously
   - Remove unused imports
   - LOG4J2-2867 - Obtain ContextDataProviders asynchronously
   - LOG4J2-2749 Jackson version upgrade to fix empty value handling in 
JsonLayout (#362)
   - LOG4J2-2344 #359 Fix exception message in 
PropertiesConfigurationBuilder#createFilter().
   - Replace {}} with {}
   - LOG4J2-2895: Async logging avoids blocking on Log4jThreads
   - LOG4J2-2837: Disruptor and JUL no longer recursively start the 
AsyncLoggerDisruptor
   - LOG4J2-2867: RingBufferLogEventTranslator uses a static ContextDataInjector
   - LOG4J2-2858: More flexible configuration of WaitStrategy of Disruptor 
(#361)
   - changelog for LOG4J2-2858
   - LOG4J2-2898: Avoid initializing volatile fields with default values (#367)
   - LOG4J2-2898 changelog
   - Move pipeline to logging-pipelines
   - LOG4J2-2880 - Add StackWalker benchmark. Revert back to using 
StackWalker.walk based on performance results
   - LOG4J2-2880 - Add StackWalker benchmark. Revert back to using 
StackWalker.walk based on performance results
   - Bring Dependabot to the 2.x-release branch (copied from master after a 
chat w Matt).
   - LOG4J2-2882 - Add support for JUL filters
   - LOG4J2-2882 - update changes.xml
   - LOG4J2-2899: Fix log4j-1.2-api LogEventWrapper thread data accessors
   - LOG4J2-2832: Updated strategy name to existing strategy 
`DirectFileRolloverStrategy`
   - LOG4J2-2832 - update changes.xml
   - LOG4J2-2859 - Fixed typos where mergeFactory should be mergeStrategy.
   - LOG4J2-2875 - Rollover was failing to create directories when using a 
DirectFileRolloverStrategy
   - LOG4J2-2883 - When When using DirectFileRolloverStrategy the file pattern 
was not being recalculated on size based rollover after a time based rollover 
had occurred.
   - Test was failing on the last day of the month
   - LOG4J2-2901 - Missing configuration files should be ignored when creating 
a composite configuration
   - LOG4J2-2883 - Add unit test
   - LOG4J2-2894 - Fix spelling error in log line
   - LOG4J2-2822 - Javadoc link in ThreadContext description was incorrect
   - Unit test might create less than 3 files on first and last directory.
   - - mongodb3.version 3.12.4 -> 3.12.6. - mongodb4.version 4.0.3 -> 4.1.0.
   - - Update jackson 2.11.0 -> 2.11.2. - Update tests activemq 5.15.12 -> 
5.16.0. - Update tests groovy 3.0.4 -> 3.0.5. - Update tests hsqldb 2.5.0 -> 
2.5.1.
   - LOG4J2-2908 - Move Spring Lookup and Spring properties to a new Spring 
Boot module
   - LOG4J2-2908 - Move Spring Lookup and Spring properties to a new Spring 
Boot module
   - Update spring versions
   - LOG4J2-2906 - Fix UnsupportedOperationException
   - LOG4J2-2906 - document changes
   - LOG4J2-2892 - Allow GelfLayout to produce newline delimited events
   - Add new articles
   - #335 Initial import of JsonTemplateLayout from LogstashLayout.
   - Add GitHub Actions CI support to release-2.x branch.
   - Remove Travis config in favor of GH Actions
   - [LOG4J2-2653] Add initial JUnit 5 support
   - [LOG4J2-2653] Simplify JUnit dependencies
   - Upgrade org.apache.logging.log4j.message tests
   - [LOG4J2-2653] Migrate api/java9 tests to JUnit 5
   - [LOG4J2-2653] Migrate part of log4j-core to JUnit 5
   - Update logging-parent to 3
   - Move dependabot config to proper location
   - Re-add removed dependency
   - Update log4j-bom parent to 3
   - [LOG4J2-2653] Migrate test to JUnit 5
   - Create SECURITY.md
   - [LOG4J2-2653] Migrate pattern tests to JUnit 5
   - Enable AsciiDoc support in maven-site-plugin.
   - #335 Migrate JsonTemplateLayout manual from Xdoc to AsciiDoc.
   - #335 Rename JsonTemplateLayout artifact and package.
   - Upgrade Maven wrapper.
   - #335 Fix forgotten renaming in revapi.json.
   - Try improving RollingAppenderRestartTest to alleviate test report failures.
   - Try improving RollingDirectSizeTimeNewDirectoryTest to alleviate test 
report failures.
   - Try improving RollingDirectTimeNewDirectoryTest to alleviate test report 
failures.
   - Upload test reports in GitHub Actions.
   - [LOG4J2-2653] Migrate lookup and net tests to JUnit 5
   - [LOG4J2-2653] Migrate layout tests to JUnit 5
   - [LOG4J2-2653] Migrate filter and impl tests to JUnit 5
   - Simplify concurrent test and improve Windows resiliency
   - [LOG4J2-2653] Migrate more tests to JUnit 5
   - Introduce annotation for JUnit 5 LCF tests
   - Migrate some parameterized tests to JUnit 5
   - Fix Windows file removal errors
   - Support shutdown timeout in JUnit 5 extension
   - Migrate more tests to JUnit 5
   - LOG4J2-2919 Call ReliabilityStrategy's beforeStopAppenders() method before 
stopping AsyncAppenders to avoid errors caused by logging with AsyncAppender 
while system is reconfiguring Submitted by: gengyuanzhe <gengyuan...@gmail.com>
   - Add tests for LOG4J2-1121 and LOG4J2-2919
   - Add changelog entry for LOG4J2-2919
   - Migrate more config tests to JUnit 5
   - Revert "Introduce annotation for JUnit 5 LCF tests"
   - Migrate MemoryMappedFileAppender tests to JUnit 5
   - Migrate more appender tests to JUnit 5
   - Migrate rewrite tests to JUnit 5
   - Introduce StatusLoggerLevel test annotation
   - Support clean up annotations on methods
   - Migrate rolling action tests to JUnit 5
   - Migrate some rolling tests to JUnit 5
   - Use ResourceLock for locale-related tests
   - [LOG4J2-2921] Enable parallel tests in log4j-api
   - Fix line location
   - Update JUnit to 5.7.0
   - Specify resource lock for status logger extension
   - Swap findbugs with spotbugs
   - [LOG4J2-2889] HtmlLayout support datePattern and timezone
   - Workarounds for Windows-specific "file being used by another process" 
failures.
   - LOG4J2-620 ReconfigurationDeadlockTest rewrite to prevent spurious 
failures.
   - Delete unused BasicLayout.
   - Add changelog entry for LOG4J2-2889
   - LOG4J2-2939: Fix NPE in MDCContextMap (#430)
   - LOG4J2-2939 changelog
   - Fix nested project spotbugs configuration
   - LOG4J2-2911 - Log4j2EventListener in spring.cloud.config.client listens 
for wrong event.
   - Fix unit test issues
   - LOG4J2-2954 Retain strong reference to shutdown callbacks
   - Only generate doap file in parent project
   - Catch all type of exceptions in AppenderControl.
   - LOG4J2-2936 Add message parameter resolver to JSON template layout.
   - LOG4J2-2936 Make JSON template layout message parameter resolver 
garbage-free.
   - Prepare for release. Add missing license headers
   - Add missing license header
   - [maven-release-plugin] prepare release log4j-2.14.0-rc1
   - [maven-release-plugin] prepare for next development iteration
   - Fix failing test for me on a less powerful Mac mini.
   - This test always fails on Windows if you do not close the 
RandomAccessFileManager.
   - All project names start with "Apache Log4j".
   - Update org.fusesource.jansi:jansi 1.17.1 -> 1.18.
   - Update Apache Commons dependencies.
   - Update some dependencies.
   - Sort files before testing helps not fail on Windows.
   - Use NIO API on NIO object.
   - Fix async test since The GZ compression takes place asynchronously.
   - Add an assertion with message for a test that fails when run as part of 
running the whole package from Eclipse.
   - Fix test.
   - Remove unused imports.
   - Oops, need internal import here.
   - Update dependencies.
   - added Log4jBridgeHandler
   - added Log4jBridgeHandlerTest
   - Create log4j2-julBridge-test.xml
   - added JUL-log-config
   - added special test run for Log4jBridgeHandlerTest
   - added site-documentation, JavaDoc enhanced, pom corrected
   - Typos fixed.
   - Documentation enhanced
   - Log level propagation implemented, incl. tests. and doc adjustment
   - Doc adjusted for log level propagation
   - add change entry
   - Update dependencies.
   - Fix test on slow machines.
   - Acronyms in upper-case.
   - Update dependencies.
   - Use Objects.equals().
   - Don't need to create arrays when calling a vararg method.
   - LOG4J2-2916 Avoid redundant Kafka producer instantiation causing thread 
leaks.
   - Use lambdas.
   - LOG4J2-2961 Fix reading of JsonTemplateLayout event additional fields from 
config.
   - No need to nest else clauses.
   - Add missing @Override.
   - Remove trailing whitespace.
   - Use Java 7 diamond.
   - Javadoc nit.
   - Add and document @SuppressWarnings.
   - Add and document @SuppressWarnings.
   - Format nit.
   - Address some generics compiler warnings and formatting nits. Close HTML 
tags in Javadocs. Normalize some formatting and Javadocs.
   - Try suppressing revapi errors regarding JSON Template Layout.
   - No longer need @SuppressWarnings.
   - One more attempt at fixing revapi failures.
   - Fix generics compiler warnings for the Class class. Fix missing type 
argument in test. Don't need to nest some else clauses. Use Java 7 diamonds.
   - Redundant super-interfaces. Remove extra semicolons.
   - Align JSON template layout code base with master.
   - Replace enum singletons with final classes, as requested by Gary Gregory.
   - Suppress revapi complaints regarding JTL.
   - Add missing @Override annotations.
   - Add missing @Deprecated annotations.
   - Objects.hash().
   - Use Objects.equals().
   - Init map when it is created.
   - Define and init local var in one go.
   - No need to call super() explicitly.
   - Use Arrays.fill().
   - Use String.join().
   - Use diamonds.
   - null check not needed.
   - return not needed.
   - Use blocks.
   - Use switch.
   - Add all collection elements at once.
   - Use lambdas.
   - Use try-with-resources.
   - Use Objects.hashCode() when there is only one item to hash.
   - Adjust project name to include "Log4j".
   - Use atomics instead of arrays for access from lambdas.
   - Simplify if/else.
   - return not needed.
   - Don't need new String object.
   - If not needed.
   - LOG4J2-2962 Enrich "map" resolver by unifying its backend with "mdc" 
resolver.
   - Fix doc: Specify log4j2.configurationFile (log4j.configurationFile does 
nothing)
   - Migrate JTL tests to JUnit 5.
   - LOG4J2-2966 Replace String.valueOf() usages with 
ParameterizedMessage.deepToString().
   - LOG4J2-2967 Fix JTL parameter resolution for messages with too few 
parameters. (#443)
   - LOG4J2-2966 Revert the usage of ParameterizedMessage.deepToString().
   - Update AbstractLoggerTest uncommenting java8 tests
   - Better internal name.
   - Better param name.
   - Use the singleton set instead of a new object for empty sets.
   - Optimize class name validation from O(N) to O(1).
   - Better param name and some formatting.
   - Log4j would fail to initialize in Java 8 with log4j-spring-boot
   - [LOG4J2-2976] JdbcAppender composes an incorrect INSERT statement without 
a ColumnMapping element.
   - Update Spring dependencies to 5.3.2, Spring Boot to 2.3.6, and Spring 
Cloud to Hoxton.SR9
   - Note that the SLF4J version should not be updated
   - Add --no-transfer-progress Maven flag to GitHub Actions build.
   - LOG4J2-2985 Add eventTemplateRootObjectKey parameter to 
JsonTemplateLayout. (#454)
   - Collapse multiple identical catch clauses into one.
   - Update some dependencies.
   - LOG4J2-2972 Refactor AsyncAppender and AppenderControl for handling of 
Throwables. (#452)
   - Update change log.
   - Update some dependencies.
   - LOG4J2-2998 Fix truncation of excessive strings ending with a high 
surrogate in JsonWriter. (#457)
   - - [test] Mockito 3.6.0 -> 3.7.0. - [test] XML Unit 2.8.0 -> 2.8.2. - 
[test] JSON Unit 2.21.0 -> 2.22.0.
   - Use isEmpty().
   - Fix formatting in log4j-spring-cloud-config-sample-application README 
(#461)
   - LOG4J2-2993 Support stack trace truncation in JsonTemplateLayout. (#458)
   - LOG4J2-2999 Replace JsonTemplateLayout resolver configurations table in 
docs with sections.
   - LOG4J2-2999 Add new entries to feature comparison matrix.
   - Update NOTICE for 2021.
   - org.apache.activemq:* 5.16.0 -> 5.16.1. org.mockito:mockito-* 3.7.0 -> 
3.7.7. org.springframework:* 5.3.2 -> 5.3.3. mongodb4.version 4.1.1 -> 4.2.0.
   - Update org.fusesource.jansi:jansi 1.18 -> 2.2.0. Update 
org.assertj:assertj-core 3.18.1 -> 3.19.0. Update 
net.javacrumbs.json-unit:json-unit 2.22.0 -> 2.23.0.
   - Remove unused exception from test method signature.
   - Replace deprecated code.
   - Update Woodstox 5.0.3 -> 6.2.3 to match Jackson 2.12.1.
   - Group by type.
   - [LOG4J2-3014] Log4j1ConfigurationConverter on Windows produces "&#xd;" at 
end of every line.
   - [LOG4J2-3014] Log4j1ConfigurationConverter on Windows produces "&#xd;" at 
end of every line.
   - [LOG4J2-3014] Log4j1ConfigurationConverter on Windows produces "&#xd;" at 
end of every line.
   - LOG4J2-2973 Rename EventTemplateAdditionalField#type (conflicting with 
properties file parser) to #format. (#462)
   - LOG4J2-2973 Minor tweaks to previous work.
   - LOG4J2-2973 Add tests for JSON-formatted configuration.
   - [LOG4J2-3014] Log4j1ConfigurationConverter on Windows produces "&#xd;" at 
end of every line.
   - LOG4J2-2977 Replace outdated PatternLayout.createLayout() calls in docs 
with createDefaultLayout().
   - LOG4J2-2964 Merge packages from several Configurations in Composite 
Configuration (#440)
   - LOG4J2-2964 Merge packages from several Configurations in Composite 
Configuration. (#440)
   - LOG4J2-1606 LOG4J2-2624 Add flag to disable automatic log4j shutdown in 
log4j-web. (#463)
   - Clean up changelog.
   - Less nesting.
   - Replace cascading if-else with a switch.
   - Extract common code in if/else statement.
   - Better conversions.
   - Upgrade log4j2-ecs-layout to 0.5.2.
   - Fix compiler warnings in JsonTemplateLayout.
   - Continue on error in GitHub Actions workflow build step.
   - Speed-up JsonWriterTest by using random increments.
   - Update doc to match PR#450
   - LOG4J2-3006 - Directly create a thread instead of using the common 
ForkJoin pool when initializing ThreadContextDataInjector
   - LOG4J2-2990 - Reduce garbage by using putAll when copying the 
ThreadContext for SLF4J
   - Update org.fusesource.jansi:jansi 2.2.0 -> 2.3.1.
   - Update some 3rd part dependencies.
   - Fixing typos in docs. (#465)
   - Cut down test time by moving recycler-specific test schemes from Surefire 
executions to JUnit parameters.
   - Test RecyclerFactory read from XML config.
   - LOG4J2-3020 LOG4J2-3021 Improve Logger javadoc for throwing() and 
catching(). (#466)
   - Javadoc fix.
   - Update text to refer to Java 8, not 7.
   - Make docs easier to read (for me at least).
   - No need to box and unbox.
   - Pull down common code.
   - Remove redundant code.
   - Sort methods.
   - Sort members.
   - [LOG4J2-3026] WatchManager does not stop its ConfigurationScheduler 
thereby leaking a thread.
   - Revert "[LOG4J2-3026] WatchManager does not stop its 
ConfigurationScheduler thereby leaking a thread."
   - Validate input in ctor.
   - LOG4J2-2893 - Add test to validate the scenario. Remove duplicate 
dependency
   - LOG4J2-2893 - Allow reconfiguration when Log4j 1 configuration files are 
updated.
   - LOG4J2-2981 - OnStartupTriggeringPolicy would fail to cause the file to 
roll over with DirectWriteTriggeringPolicy unless minSize was set to 0
   - LOG4J2-3028: Always clear the OutputStreamManager buffer on flush
   - Shutdown log4j before deleting files
   - LOG4J2-2923 - Add Rollover Listener to aid in unit test validation.
   - I hate windows
   - LOG4J2-2948 Replace HashSet with IdentityHashMap in ParameterFormatter to 
detect cycles. (#471)
   - Finally fix test on Windows - I hope
   - Drop useless parens.
   - Update some dependencies. Build passes on Windows 10.
   - Remove unused imports.
   - LOG4J2-2947 - Mention default methods do nothing. Add log method with no 
parameters.
   - Add LOG4J2-2947 to changes.xml
   - LOG4J2-3033 - Add changes.xml entry
   - Prepre for release
   - [maven-release-plugin] prepare release log4j-2.14.1-rc1
   - [maven-release-plugin] prepare for next development iteration
   - Prepare changes.xml for next release
   - LOG4J2-3041 - Allow GelfLayout to use PatternSelectors
   - LOG4J2-3044 - Add RepeatPatternConverter
   - Note that Java 6 & 7 are no longer supported
   - LOG4J2-3048 - Add improved MapMessge support to GelfLayout.
   - LOG4J2-3049 - Allow MapMessage and ThreadContext attributes to be prefixed
   - Make adding a prefix garbage free
   - LOG4J2-Allow GelfLayout to skip fields that are null or empty
   - LOG4J2-3050 - Allow GelfLayout to skip fields that are null or empty
   - LOG4J2-3054: BasicContextSelector takes the default context into account
   - LOG4J2-2940: Context selectors are aware of ClassLoader dependency
   - LOG4J2-2940: Reduce StackWalker interactions accessing an slf4j logger 
instance
   - LOG4J2-2940: Implement BasicAsyncLoggerContextSelector
   - BasicAsyncLoggerContextSelector documentation
   - Add convenience comment.
   - Update some dependencies.
   - Update some dependencies.
   - Update org.liquibase:liquibase-core 3.5.3 -> 3.5.5.
   - LOG4J2-3004 Add plugin support to JsonTemplateLayout. (#476)
   - Specify the locale
   - See if a delay helps performance results in GitHub actions
   - LOG4J2-3004 Revert TypeConverterRegistryTest breaking LoggersPluginTest 
and ValidatingPluginWithFailoverTest.
   - Fix issue found by spotbugs
   - LOG4J2-3056 Refactor MD5 usage for sharing sensitive information (#484)
   - LOG4J2-3064 - Add Arbiters and SpringProfile
   - LOG4J2-3070 Ensure EncodingPatternConverter#handlesThrowable is 
implemented. (#473)
   - LOG4J2-3076 Fixed broken link in build docs.
   - LOG4J2-2965: Fix JUL/AsyncLoggerContext deadlock
   - LOG4J2-3087 Fix race in JsonTemplateLayout where a timestamp could end up 
unquoted (#489)
   - LOG4J2-3051 Add CaseConverterResolver to JsonTemplateLayout (#490)
   - Add articles
   - LOG4J2-3075 Fix formatting of nanoseconds in JsonTemplateLayout. (#495)
   - Allow JsonLayout output JSON `null` for ContextMap (#496)
   - LOG4J2-3089 Fix sporadic JsonTemplateLayoutNullEventDelimiterTest failures 
on Windows.
   - LOG4J2-3092 Fix JsonWriter memory leaks due to retained excessive buffer 
growth.
   - [LOG4J2-3095] Category.setLevel should accept null value.
   - LOG4J2-3103: Make listeners in LoggerContext a CopyOnWriteArrayList (#508)
   - LOG4J2-3103 changelog
   - Fix incorrect LogManager accessor used by LOG4J2-2940
   - LOG4J2-3102: AsyncAppender background thread is a daemon
   - LOG4J2-3080 Use SimpleMessage in Log4j 1 Category whenever possible. (#504)
   - Add the default value of TimeBasedTriggeringPolicy#modulate to the manual.
   - LOG4J2-3107 SmtpManager.createManagerName() ignores port (#528)
   - Google Cloud structured logging via JsonTemplate
   - Minor code review updates
   - LOG4J2-3074 Add replacement parameter to ReadOnlyStringMapResolver.
   - Consolidate ReadOnlyStringMapResolver tests.
   - Consolidate MessageResolver tests.
   - Add missing license preambles to log4j-layout-template-json sources.
   - LOG4J2-3067 Add CounterResolver.
   - GCP layout test enhancement and stack trace fixes
   - LOG4J2-3067 Add "stringified" flag to CounterResolver.
   - LOG4J2-3067 Rename "overflow" flag to "overflowing" in CounterResolver.
   - Consolidated JsonTemplateLayoutAdditionalField*Test classes.
   - Reduce code duplication and memory usage by using a singleton for an empty 
array of PathCondition.
   - LOG4J2-3121 config modified at run-time may trigger incomplete MBean 
re-initialization due to InstanceAlreadyExistsException (#547)
   - LOG4J2-3116 Fix changes.xml typo.
   - LOG4J2-3116 Massage GcpLayout more.
   - LOG4J2-3116 Overhaul GcpLayoutTest.
   - LOG4J2-2816 Handle Disruptor event translation exceptions.
   - Remove unused.
   - Only call getMacAddressString if needed.
   - Javadoc.
   - [LOG4J2-3131] Attempting to call getExtendedStackTraceAsString() after 
deserializing JSON LogEvent results in a NPE.
   - Add and resuse constants to avoid creating empty arrays over and over.
   - Update some dependencies:
   - LOG4J2-2885: Added support for US-style date patterns and micro/nano 
seconds (#548)
   - LOG4J2-2885 Update changelog.
   - LOG4J2-3083 Fix slf4j calling class lookup using both accessors
   - Remove unreleased+replaced StackLocator API from LOG4J2-2940
   - LOG4J2-3085 Skip certain CI jobs for external PRs.
   - Fix BurstFilter javadoc. (#552)
   - LOG4J2-3133: log4j-slf4j-impl provides new singleton accessors from 
slf4j-api 1.7.14
   - LOG4J2-2885 Fix the compilation failure caused by the recently added 
FixedDateFormat entries.
   - Update some dependencies. - org.apache.commons:commons-dbcp2 2.8.0 -> 
2.9.0.
   - Try current Surefire/Failsafe to workaround random-ish test failures where 
Surefire says it cannot find/stop a JVM, 2.22.1 -> 3.0.0-M5.
   - Add missing Apache license header.
   - org.apache.rat:apache-rat-plugin 0.12 -> 0.13.
   - Update some dependencies.
   - Update some dependencies.
   - Update some dependencies.
   - Format nit.
   - LOG4J2-3141: Deprecate and stub out Manager.setEndOfBatch
   - Use time millis from event for `LogEventAdapter` timestamp.
   - LOG4J2-1151: Prefer `string.getBytes(Charset)` over 
`string.getBytes(String)`
   - LOG4J2-3144: Update changelog to reference correct issue
   - LOG4J2-3150: RandomAccessFileAppender uses the correct default buffer size
   - LOG4J2-3147 Fix Spring package check in KubernetesLookup. (#569)
   - Bump actions/setup-java from 2.1.0 to 2.2.0 (#561)
   - LOG4J2-2808 Don't look up localhost if hostName is already configured
   - LOG4J2-2978: add support for Jakarta EE 9
   - corect formatting issues
   - correct documentation
   - corect formatting issues
   - LOG4J2-3153: PreciseClock doesn't impact DatePatternConverter performance
   - FixedDateFormat.isEquivalent is non-final
   - JTL InstantFormatter invalidates cached FixedDateFormat as expected (#576)
   - LOG4J2-3159 Fixed an unlikely race condition in Log4jMarker.getParents
   - LOG4J2-3160 Fix documentation on how to toggle log4j2.debug system 
property.
   - Pass params to log messages that expect params (#3)
   - AppenderControlArraySet uses field updaters rather than AtomicReference
   - Minor cleanup in AbstractLogger
   - LOG4J2-3162 Improve immediateFlush docs regarding its write guarantees. 
(#582)
   - LOG4J2-3170 Make the CRLF and HTML pattern converters O(n) in time. (#585)
   - LOG4J2-3170 Update changes.xml.
   - Upgrade GitHub setup-java action.
   - Bump actions/setup-java from 2.3.0 to 2.3.1 (#586)
   - Add GitHub Actions workflow for benchmarks.
   - Fix code typo in JsonTemplateLayoutBenchmarkState.
   - Prevent override of plugins while shading in log4j-perf.
   - Overhaul `benchmarks` GitHub Actions workflow.
   - Shorten CI benchmark runtimes.
   - Fix code typo in CI benchmarks.
   - Make benchmarks run for an awkwardly short amount of time to speed up the 
debugging cycle.
   - Fix macOS-incompatible `sed` arguments in CI benchmarks.
   - Handle concurrent indexing in CI benchmarks.
   - LOG4J2-3171: Reduce PatternLayout + PatternConverter branching
   - Add `vy` as developer to `pom.xml`.
   - LOG4J2-3175 Avoid KafkaManager override when topics differ. (#590)
   - LOG4J2-3175 Fix `changes.xml`.
   - LOG4J2-3172 Buffer immutable log events in the SmtpManager. (#588)
   - LOG4J2-3172 Update `changes.xml`.
   - LOG4J2-3174 Fix handling of LogEvent-dependent subjects in SmtpManager. 
(#589)
   - Marker isInstanceOf(String) method was not formally tested.
   - LOG4J2-2829 SocketAppender should propagate failures when reconnection 
fails. (#591)
   - Upgrade from hamcrest-all:1.3 to hamcrest:2.2.
   - Add InstantFormatBenchmark.
   - Add `.java-version` file used by jenv.
   - LOG4J2-3183 Avoid using MutableInstant of the event as a cache key in 
JsonTemplateLayout.
   - LOG4J2-2829 Try to fix SocketAppenderReconnectTest failures on Windows.
   - Fix broken links to LMAX Disruptor.
   - Prefer StringBuilderEncoder in JsonTemplateLayout whenever possible.
   - LOG4J2-3060 LOG4J2-3185 Fix thread-safety issues in DefaultErrorHandler. 
(#597)
   - Add changes from PR #592
   - LOG4J2-3060 LOG4J2-3185 Fix error-propagation logic in DefaultErrorHandler.
   - Make test pass on my MacBook
   - refactor: upgrade from hamcrest-all:1.3 to hamcrest:2.2
   - Update documentation
   - LOG4J2-3189: Improve worst-case NameAbbreviator performance
   - Add missing end tags
   - PR #574 - minor changes
   - Fix the number of {}-placeholders in the string literal argument does not 
match the number of other arguments to the logging call.
   - LOG4J2-3110 - Add changes.xml entry
   - LOG4J2-3168 - Fix bug when file names contain regex characters.
   - LOG4J2-3114 - Enable immediate flush on RollingFileAppender when buffered 
i/o is not enabled.
   - Update xml-unit version
   - LOG4J2-3194 - Allow fractional attributes for size attribute of 
SizeBsaedTriggeringPolicy.
   - Update Spring framework to 5.3.13, Spring Boot to 2.5.7, and Spring Cloud 
to 2020.0.4.
   - LOG4J2-3190 Fix ScriptAppenderSelector docs using removed importPackage() 
in Nashorn. (#602)
   - Fix typo in architecture.doc (#609)
   - Restrict LDAP access via JNDI (#608)
   - LOG4J2-3198: Log4j2 no longer formats lookups in messages by default
   - Convert method to return a boolean
   - LOG4J2-2951 - Log4j 1.x properties were not being substrituted.
   - LOG4J2-1798 - Handle interrupted exceptions that occur during rollover.
   - LOG4J2-2553 - Correct documentation for SyslogAppender when using TLS
   - LOG4J2-2541 - Minor documentation fixes
   - LOG4J2-2540 - Minor documentation fixes
   - LOG4J2-3166 - Fix log event Level vs LoggerConfig Level table.
   - Various cleanups in prep for a release
   - Add missing license headers. Prepare for release
   - [maven-release-plugin] prepare release log4j-2.15.0-rc1
   - [maven-release-plugin] prepare for next development iteration
   - Bump actions/setup-java from 2.3.1 to 2.4.0 (#611)
   - Fix NPE in SetUtils#prefixSet(). (#612)
   - Handle URI exception
   - [maven-release-plugin] prepare release log4j-2.15.0-rc2
   - [maven-release-plugin] prepare for next development iteration
   - Add changes manually made to the web site
   - LOG4J2-3208 - Disable JNDI by default
   - Fix typo in method name
   - Test IPV6
   - Prepare for 2.15.1 release
   - Fix typo in perf test
   - Disable Cassandra integration test for now
   - Disable doap plugin
   - Clean up release notes
   - More release note updates
   - update announcement
   - Update main page news
   - Update release announcement
   - Update maven-toolchains-plugin to 3.0.0
   - [maven-release-plugin] prepare release log4j-2.15.1-rc1
   - [maven-release-plugin] prepare for next development iteration
   - Javadoc.
   - Prepare for 2.16.0 release
   - Add self in sponsor list
   - LOG4J2-3211 - Remove Messge Lookups (#623)
   - Update release notes
   - [maven-release-plugin] prepare release log4j-2.16.0-rc1
   - [maven-release-plugin] prepare for next development iteration
   - Null check already performed in closeSilently(), also return the result of 
the close call.
   - Remove SetUtils from core.
   - Add "Volkan Yazıcı" to the sponsorship page.
   - Use cached empty string array in Log4jWebInitializerImpl.
   - Pushdown varargs to downstream methods.
   - Remove static dependency on JndiLookup.class (#625)
   - LOG4J2-3222: Fix typo in version
   - [DOC] fix incorrect version 2.15.1: should be 2.16.0
   - [DOC] fix typo primative should be primitive
   - Improve CVE-2021-44228 section
   - Improve top page
   - Fix broken anchor link
   - Fix typo
   - Text improvements.
   - [DOC] Temporarily remove references to 2.12.2, recommend 2.16 only, move 
2.15 to discredited solutions
   - [DOC] Stop recommending 2.15
   - [DOC] Add Work In Progress notice and credit Kai Mindermann
   - Sentence should start with a capital letter.
   - Update for CVE-2021-45046
   - [DOC] add separate download-2.12.2 page, add links in left side navigation 
menu
   - Revert "[DOC] add separate download-2.12.2 page, add links in left side 
navigation menu"
   - [DOC] modify left side nav menu for 2.12.2
   - Add new "When to use this the Log4j 1.x bridge" section to migration doc 
(#629)
   - Add JndiManagerTest looking for LOG4J2-3231.
   - log4j2.noFormatMsgLookup -> log4j2.formatMsgNoLookups
   - Bo need to mention old bugged version in the menu.
   - Update reference to Java 7 version from 2.12.1 to 2.12.2.
   - Fixed 3 typos.
   - Clean up structure levels, use tables.
   - LOG4J2-3241 - Do not declare log4j-api-java9 and log4j-core-java9 as 
depdendencies as it causes problems with the Maven enforcer plugin
   - Fix 'mvn doap:generate'.
   - Markdown plugin is more picky than Atom preview.
   - Point menu for 2.12.2 to 2.12.2 instead of 2.12.1.
   - Rectify 2.12.2 entry.
   - [DOC] fix incorrect spelling of formatMsgNoLookups sysprop
   - [DOC] fix typo
   - [DOC] add credit to 4ra1n for reporting related to CVE-2021-45046
   - LOG4J2-3242 - Limit JNDI to only the java protocol.
   - Update download page with Java 7 and Java 6 releases.
   - Fix Javadoc RuntimeException.
   - Slightly better text.
   - Add missing package-info.java.
   - Ignore Eclipse metadata folder.
   - Removed unused imports.
   - Use try-with-resources.
   - Use another try-with-resources.
   - Fix compiler warning.
   - No need to nest.
   - [LOG4J2-3247] PropertiesConfiguration.parseAppenderFilters NPE when 
parsing properties file filters.
   - [LOG4J2-3249] Log4j 1.2 bridge for Syslog Appender defaults to port 512 
instead of 514.
   - [DOC] update index page markdown with changes that were made directly to 
the site
   - Rename the `log4j2.enableJndi` property to `log4j2.enableJndiJava`
   - Deprecate internal utility classes in favor of JRE classes.
   - [DOC] update index and security page markdown with changes that were made 
directly to the site
   - [DOC] remove duplicate entry for cve-2021-44228
   - [DOC] clarify that users should not remove JndiLookup in version 2.16.0
   - Less silly variable name.
   - No need to nest.
   - Extract constants.
   - Clear system property after test run.
   - Remove unused method.
   - Use NIO and refactor.
   - [LOG4J2-3237] Log4j 1.2 bridge API hard codes protocol to TCP.
   - [DOC] update CVE-2021-45046 severity to critical
   - Fix Javadoc warnings.
   - [LOG4J2-3242] Rename JNDI enablement property from 'log4j2.enableJndi' to 
'log4j2.enableJndiLookup', 'log4j2.enableJndiJms', and 
'log4j2.enableJndiContextSelector'.
   - Fix string substitution recursion
   - [DOC] add CVE-2021-45105 for 2.17.0 and 2.12.3
   - Prep for releaes
   - Fix bug in template
   - [DOC] fix typos and rephrase mitigation for CVE-2021-45105
   - [DOC] fix missing newline before bullet points
   - [DOC] fix typo: this is not a velocity template page
   - [DOC] update JMS Appender docs; only java: protocol supported from 2.17
   - [DOC] update JNDI Lookup docs; property should be `enableJndiLookup`
   - [DOC] update JndiContextSelector javadoc; mention property 
`enableJndiContextSelector`
   - [DOC] update JndiContextSelector section; mention property 
`enableJndiContextSelector`
   - Update pages
   - [DOC] mention property `enableJndiLookup` is required for JNDI lookup
   - [DOC] fix property name, should be `enableJndiContextSelector`
   - [DOC] replace old `allowedLdap*` properties with 
`enableJndiContextSelector`
   - Remove non-applicable JNDI stuff
   - [DOC] fix Duration string (#639)
   - Prepare for release
   - Add missing license headers
   - [maven-release-plugin] prepare release log4j-2.17.0-rc1
   - [maven-release-plugin] prepare for next development iteration
   - Update RELEASE-NOTES.md
   - Update RELEASE-NOTES.md
   - [DOC] Fix supported Java 7 version; should be 2.12.2
   - Update and simplify requirements on GH README page.
   - Add a GH page of conduct that points to the Apache page.
   - Update credits
   - Make sure we do not cause can error when converting a filter attribute.
   - Add slot of next release.
   - Set release date for 2.17.0.
   - Sort members.
   - Fix NPE when input is null in StrSubstitutor.replace(String, Properties).
   - Oops, fix wrong issue reference.
   - Reuse StrSubstitutor.
   - No need to nest.
   - Remove whitespace.
   - Fix test method name.
   - Reuse StrSubstitutor.
   - [DOC] Update 2.x About page to include mentions of 2.12.3 for java 7
   - [DOC] Update 2.x Security page to include mentions of 2.12.3 for java 7
   - Remove redundant caching from GitHub Actions. (#635)
   - [DOC] Update About page and Security page for release 2.3.1 and 2.12.3
   - Update POM Log4jReleaseVersionJava6 to 2.3.1 and Log4jReleaseVersionJava7 
to 2.12.3
   - [DOC] About page in latest version should use relative links to Security 
page
   - Fix version and Java references meant to 2.12.3.
   - LOG4J2-3274 -  Buffered I/O checked had inverted logic in 
RollingFileAppenderBuidler
   - Generate SHA512 and sign during release
   - JNDI enablement properties are loaded at most once
   - LOG4J2-3270 Provide separation between MapMessage and properties lookups
   - [DOC] Removed broken link
   - [LOG4J2-3277] Update Legacy Sites links in left-side nav menu
   - [LOG4J2-3277] format link consistency for Legacy Sites links in left-side 
nav menu
   - [LOG4J2-2819] update security page for CVE-2020-9488 fix backported to 
2.12.3
   - Refactor timeouts in SocketAppenderReconnectTest.
   - Javadoc: Add missing param tag.
   - No need to nest.
   - Comment.
   - Document changes to lookups in 2.17.0
   - Use constant.
   - [LOG4J2-3281] PropertiesConfiguration.buildAppender not adding filters to 
appender.
   - Remove empty JavaDoc in log4j-to-slf4j
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@logging.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to