Please ignore the email below. It contains incorrect text regarding the release.

Ralph

> On Mar 16, 2018, at 5:39 PM, Ralph Goers <ralph.go...@dslextreme.com> wrote:
> 
> The Apache Log4j 2 team is pleased to announce the Log4j 2.10.0 release!
> 
> Apache Log4j is a well known framework for logging application behavior. 
> Log4j 2 is an upgrade to Log4j that provides significant improvements over 
> its predecessor, Log4j 1.x, and provides many other modern features such as 
> support for Markers, lambda expressions for lazy logging, property 
> substitution using Lookups, multiple patterns on a PatternLayout and 
> asynchronous Loggers. Another notable Log4j 2 feature is the ability to be 
> "garbage-free" (avoid allocating temporary objects) while logging. In 
> addition, Log4j 2 will not lose events while reconfiguring.
> 
> This release contains new features, bugfixes and minor enhancements. Some of 
> the new features include support for the Java 9 module system, support for 
> the new SLF4j 1.8 binding mechanism, simplification of the Log4j property 
> naming scheme, and native support of Jetty's logger. Log4j API is now a fully 
> compliant module while the other Log4j jars are named automatic modules.
> 
> As of Log4j 2.9.0, the Log4j API was modified to use java.util.ServiceLoader 
> to locate Log4j implementations, although the former binding mechanism is 
> still supported. The Log4j API jar is now a multi-release jar to provide 
> implementations of Java 9 specific classes. Multi-release jars are not 
> supported by the OSGi specification so OSGi modules will not be able to take 
> advantage of these implementations but will not lose functionality as they 
> will fall back to the implementations used in Java 7 and 8. More details on 
> the new features and fixes are itemized below. Note that some tools are not 
> compatible with multi-release jars and may fail trying to process class files 
> in the META-INF/versions/9 folder. Those errors should be reported to the 
> tool vendor.
> 
> Note that subsequent to the 2.9.0 release, for security reasons, 
> SerializedLayout is deprecated and no longer used as default in the Socket 
> and JMS appenders. SerializedLayout can still be used as before, but has to 
> be specified explicitly. To retain old behaviour, you have to change 
> configuration like:
> 
> <Appenders>
>  <Socket name="socket" host="localhost" port="9500"/>
> </Appenders>
> 
> into:
> 
> <Appenders>
>  <Socket name="socket" host="localhost" port="9500">
>    <SerializedLayout/>
>  </Socket>
> </Appenders>
> 
> We do, however, discourage the use of SerializedLayout and recommend 
> JsonLayout as a replacement:
> 
> <Appenders>
>  <Socket name="socket" host="localhost" port="9500">
>    <JsonLayout properties="true"/>
>  </Socket>
> </Appenders>
> 
> Note that subsequent to the 2.9.0 release, for security reasons, Log4j does 
> not process DTD in XML files. If you used DTD for including snippets, you 
> have to use XInclude or Composite Configuration instead.
> 
> The Log4j 2.11.0 API, as well as many core components, maintains binary 
> compatibility with previous releases with the following exceptions to Log4j 
> Core. Log4j 2.11.0 moves code from log4j-core to several new Maven modules. 
> Dependencies to other jars that used to be optional in log4j-core are now 
> required in the new modules. The code in these modules have been repackaged. 
> These changes do not affect your configuration files.
> 
> The new modules are:
> 
> log4j-jdbc-dbc2
>       • Group ID: org.apache.logging.log4j
>       • Artifact ID: log4j-jdbc-dbc2
>       • Old package: org.apache.logging.log4j.core.appender.db.jdbc
>       • New package: org.apache.logging.log4j.jdbc.appender
> 
> log4j-jpa
>       • Group ID: org.apache.logging.log4j
>       • Artifact ID: log4j-jpa
>       • Old package 1: org.apache.logging.log4j.core.appender.db.jpa
>       • New package 1: org.apache.logging.log4j.jpa.appender
>       • Old package 2: org.apache.logging.log4j.core.appender.db.jpa.converter
>       • New package 2: org.apache.logging.log4j.jpa.converter
> 
> log4j-mongodb2
>       • Group ID: org.apache.logging.log4j
>       • Artifact ID: log4j-mongodb2
>       • Old package: org.apache.logging.log4j.mongodb
>       • New package: org.apache.logging.log4j.mongodb2
> 
> log4j-mongodb3
>       • Group ID: org.apache.logging.log4j
>       • Artifact ID: log4j-mongodb3
>       • Old package: org.apache.logging.log4j.mongodb
>       • New package: org.apache.logging.log4j.mongodb3
> 
> GA Release 2.10.0
> 
> Changes in this version include:
> 
> New Features
> 
>       • LOG4J2-2120: Properly escape newlines and other control characters in 
> JSON. Thanks to Carter Douglas Kozak.
>       • LOG4J2-2109: Add property to disable message pattern converter 
> lookups. Thanks to Carter Douglas Kozak.
>       • LOG4J2-2112: MapMessage should use deep toString for values. Thanks 
> to Carter Douglas Kozak.
>       • LOG4J2-2103: XML encoding for PatternLayout.
>       • LOG4J2-2114: Provide a native Log4j 2 implementation of Eclipse 
> Jetty's org.eclipse.jetty.util.log.Logger.
>       • LOG4J2-1203: Allow filtering of line breaks in layout pattern. Thanks 
> to Robert Turner.
>       • LOG4J2-2098: Add a noop AppenderSkeleton for applications still using 
> Log4j 1.x.
>       • LOG4J2-2062: Add possibility of sending the key of a message to Kafka 
> using KafkaAppender. Thanks to Jorge Sanchez.
>       • LOG4J2-2056: Modularize Log4j-api and make most other log4j jars 
> automatic modules.
>       • LOG4J2-1431: Simplify log4j system property naming scheme.
>       • LOG4J2-1809: Add global configuration environment SPI.
>       • LOG4J2-1694: Add fields with fixed values to JSON/XML/YAML layouts. 
> Thanks to Michal Dvořák.
>       • LOG4J2-2054: Provide ways to configure SSL that avoid plain-text 
> passwords in the log4j configuration. The configuration may now specify a 
> system environment variable that holds the password, or the path to a file 
> that holds the password.
>       • LOG4J2-2071: Add 
> org.apache.logging.log4j.core.config.composite.CompositeConfiguration#toString().
>  Thanks to Carter Kozak.
> Fixed Bugs
> 
>       • LOG4J2-2107: MapMessage supports both StringBuilderFormattable and 
> MultiformatMessage. Thanks to Carter Douglas Kozak.
>       • LOG4J2-2102: MapMessage JSON encoding will escape keys and values. 
> Thanks to Carter Douglas Kozak.
>       • LOG4J2-2101: Non-string value in MapMessage caused 
> ClassCastException. Thanks to Carter Douglas Kozak.
>       • LOG4J2-2091: Log4j respects the configured "log4j2.is.webapp" 
> property Thanks to Carter Douglas Kozak.
>       • LOG4J2-2100: LevelMixIn class for Jackson is coded incorrectly
>       • LOG4J2-2087: Jansi now needs to be enabled explicitly (by setting 
> system property log4j.skipJansi to false). To avoid causing problems for web 
> applications, Log4j will no longer automatically try to load Jansi without 
> explicit configuration. Thanks to Andy Gumbrecht.
>       • LOG4J2-2060: AbstractDatabaseManager should make a copy of LogEvents 
> before holding references to them: AsyncLogger log events are mutable.
>       • LOG4J2-2055: If Log4j is used as the Tomcat logging implementation 
> startup might fail if an application also uses Log4j.
>       • LOG4J2-2031: Until this change, messages appeared out of order in log 
> file any time when the async logging queue was full. With this change, 
> messages are only logged out of order to prevent deadlock when Log4j2 detects 
> recursive logging while the queue is full.
>       • LOG4J2-2053: Exception java.nio.charset.UnsupportedCharsetException: 
> cp65001 in 2.9.0.
>       • LOG4J2-1216: Nested pattern layout options broken. Thanks to Thies 
> Wellpott, Barna Zsombor Klara, GFriedrich.
>       • LOG4J2-2070: Log4j1XmlLayout does not provide the entire stack trace, 
> it is missing the caused by information. Thanks to Doug Hughes.
>       • LOG4J2-2036: CompositeConfiguration supports Reconfiguration. PR 
> #115. Thanks to Robert Haycock.
>       • LOG4J2-2073: Log4j-config.xsd should make AppenderRef optional for 
> each Logger element. Thanks to Patrick Lucas.
>       • LOG4J2-2074: The console appender should say why it cannot load JAnsi.
>       • LOG4J2-2085: Wrong Apache Commons CSV version referenced in the 
> Javadoc of CsvParameterLayout. Thanks to István Neuwirth.
> Changes
> 
>       • LOG4J2-2076: Split up log4j-nosql into one module per appender.
>       • LOG4J2-2088: Upgrade picocli to 2.0.3 from 0.9.8.
>       • LOG4J2-2025: Provide support for overriding the Tomcat Log class in 
> Tomcat 8.5+.
>       • LOG4J2-2057: Support new SLF4J binding mechanism introduced in SLF4J 
> 1.8.
>       • LOG4J2-2052: Disable thread name caching by default when running on 
> Java 8u102 or later.
>       • LOG4J2-1896: Update classes in org.apache.logging.log4j.core.net.ssl 
> in APIs from String to a PasswordProvider producing char[] for passwords.
>       • LOG4J2-2078: Update LMAX disruptor from 3.3.6 to 3.3.7.
>       • LOG4J2-2081: Update Apache Commons Compress from 1.14 to 1.15.
>       • LOG4J2-2089: [TagLib] Update servlet-api provided dependency from 2.5 
> to 3.0.1.
>       • LOG4J2-2096: Update Apache Kafka kafka-clients from 0.11.0.1 to 1.0.0.
>       • LOG4J2-2077: Update from Jackson 2.9.1 to 2.9.2.
>       • LOG4J2-2117: Jackson dependencies for 2.9.2 incorrectly bring in 
> jackson-annotations 2.9.0 instead of 2.9.2.
> Apache Log4j 2.10.0 requires a minimum of Java 7 to build and run. Log4j 2.3 
> was the last release that supported Java 6.
> 
> Basic compatibility with Log4j 1.x is provided through the log4j-1.2-api 
> component, however it does not implement some of the very implementation 
> specific classes and methods. The package names and Maven groupId have been 
> changed to org.apache.logging.log4j to avoid any conflicts with log4j 1.x.
> 
> For complete information on Apache Log4j 2, including instructions on how to 
> submit bug reports, patches, or suggestions for improvement, see the Apache 
> Apache Log4j 2 website:
> 
> https://logging.apache.org/log4j/2.x/
> 


Reply via email to