Add auto-generated content
diff --git a/src/site/_release-notes.adoc b/src/site/_release-notes.adoc
new file mode 100644
index 0000000..3dfd7b9
--- /dev/null
+++ b/src/site/_release-notes.adoc
@@ -0,0 +1,71 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= Release Notes
+
+* xref:2.x.x.adoc[2.x.x]
+* xref:2.20.0.adoc[2.20.0] (2023-02-17)
+* xref:2.19.0.adoc[2.19.0] (2022-09-09)
+* xref:2.18.0.adoc[2.18.0] (2022-06-28)
+* xref:2.17.2.adoc[2.17.2] (2022-02-23)
+* xref:2.17.1.adoc[2.17.1] (2021-12-27)
+* xref:2.17.0.adoc[2.17.0] (2021-12-17)
+* xref:2.16.0.adoc[2.16.0] (2021-12-13)
+* xref:2.15.0.adoc[2.15.0] (2021-12-06)
+* xref:2.14.1.adoc[2.14.1] (2021-03-06)
+* xref:2.14.0.adoc[2.14.0] (2020-11-06)
+* xref:2.13.3.adoc[2.13.3] (2020-05-10)
+* xref:2.13.2.adoc[2.13.2] (2020-04-23)
+* xref:2.13.1.adoc[2.13.1] (2020-02-25)
+* xref:2.13.0.adoc[2.13.0] (2019-12-11)
+* xref:2.12.1.adoc[2.12.1] (2019-08-06)
+* xref:2.12.0.adoc[2.12.0] (2019-06-23)
+* xref:2.11.2.adoc[2.11.2] (2019-02-04)
+* xref:2.11.1.adoc[2.11.1] (2018-07-22)
+* xref:2.11.0.adoc[2.11.0] (2018-03-11)
+* xref:2.10.0.adoc[2.10.0] (2017-11-18)
+* xref:2.9.1.adoc[2.9.1] (2017-09-17)
+* xref:2.9.0.adoc[2.9.0] (2017-08-26)
+* xref:2.8.2.adoc[2.8.2] (2017-04-02)
+* xref:2.8.1.adoc[2.8.1] (2017-02-26)
+* xref:2.8.adoc[2.8] (2017-01-21)
+* xref:2.7.adoc[2.7] (2016-10-02)
+* xref:2.6.2.adoc[2.6.2] (2016-07-05)
+* xref:2.6.1.adoc[2.6.1] (2016-06-05)
+* xref:2.6.adoc[2.6] (2016-05-25)
+* xref:2.5.adoc[2.5] (2015-12-06)
+* xref:2.4.1.adoc[2.4.1] (2015-10-08)
+* xref:2.4.adoc[2.4] (2015-09-20)
+* xref:2.3.adoc[2.3] (2015-05-09)
+* xref:2.2.adoc[2.2] (2015-02-22)
+* xref:2.1.adoc[2.1] (2014-10-19)
+* xref:2.0.2.adoc[2.0.2] (2014-08-16)
+* xref:2.0.1.adoc[2.0.1] (2014-07-29)
+* xref:2.0.adoc[2.0] (2014-07-12)
+* xref:2.0-rc2.adoc[2.0-rc2] (2014-06-21)
+* xref:2.0-rc1.adoc[2.0-rc1] (2014-02-16)
+* xref:2.0-beta9.adoc[2.0-beta9] (2013-09-14)
+* xref:2.0-beta8.adoc[2.0-beta8] (2013-07-10)
+* xref:2.0-beta7.adoc[2.0-beta7] (2013-06-01)
+* xref:2.0-beta6.adoc[2.0-beta6] (2013-05-05)
+* xref:2.0-beta5.adoc[2.0-beta5] (2013-04-20)
+* xref:2.0-beta4.adoc[2.0-beta4] (2013-01-28)
+* xref:2.0-beta3.adoc[2.0-beta3] (2012-11-11)
+* xref:2.0-beta2.adoc[2.0-beta2] (2012-10-07)
+* xref:2.0-beta1.adoc[2.0-beta1] (2012-09-18)
+* xref:2.0-alpha2.adoc[2.0-alpha2] (2012-08-24)
+* xref:2.0-alpha1.adoc[2.0-alpha1] (2012-07-29)
diff --git a/src/site/_release-notes/_2.0-alpha1.adoc b/src/site/_release-notes/_2.0-alpha1.adoc
new file mode 100644
index 0000000..0ae1d0d
--- /dev/null
+++ b/src/site/_release-notes/_2.0-alpha1.adoc
@@ -0,0 +1,30 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.0-alpha1 (2012-07-29)
+
+== Changes
+
+=== Added
+
+* Added ability to filter on the AppenderRef by adding either a level or a filter. (for https://issues.apache.org/jira/browse/LOG4J2-60[LOG4J2-60] by Ralph Goers, Shane Kelly)
+
+=== Fixed
+
+* Make sure all application facing log methods use their own FQCN. This patch resolves a unit test failure for the %C pattern when using the Category logger. (for https://issues.apache.org/jira/browse/LOG4J2-50[LOG4J2-50] by Ralph Goers, John Vasileff)
+* Remove LoggerContext support for custom logger factories. All Loggers returned by LoggerContext should be compatible and of the same type. (for https://issues.apache.org/jira/browse/LOG4J2-51[LOG4J2-51] by Ralph Goers, John Vasileff)
+* Level.toLevel would throw an IllegalArgumentException instead of returning the default value. (for https://issues.apache.org/jira/browse/LOG4J2-56[LOG4J2-56] by Ralph Goers, John Owen Atala)
diff --git a/src/site/_release-notes/_2.0-alpha2.adoc b/src/site/_release-notes/_2.0-alpha2.adoc
new file mode 100644
index 0000000..9041e6c
--- /dev/null
+++ b/src/site/_release-notes/_2.0-alpha2.adoc
@@ -0,0 +1,32 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.0-alpha2 (2012-08-24)
+
+== Changes
+
+=== Added
+
+* Allow components besides core to create a PluginMap for faster plugin loading and not having to specify the plugin package in the configuration. (for https://issues.apache.org/jira/browse/LOG4J2-67[LOG4J2-67] by Ralph Goers)
+* Add support for formatting using String.format(). (for https://issues.apache.org/jira/browse/LOG4J2-68[LOG4J2-68] by Ralph Goers)
+* Allow Flume agents to be embedded into the Flume Appender. (for https://issues.apache.org/jira/browse/LOG4J2-69[LOG4J2-69] by Ralph Goers)
+* Add getLogger(Class) to LogManager. (for https://issues.apache.org/jira/browse/LOG4J2-70[LOG4J2-70] by Ralph Goers)
+
+=== Fixed
+
+* Fix compilation problems in Java 7. (for https://issues.apache.org/jira/browse/LOG4J2-64[LOG4J2-64] by Ralph Goers)
+* Allow variable substitution on the configuration attributes and on the root log level. (for https://issues.apache.org/jira/browse/LOG4J2-65[LOG4J2-65] by Ralph Goers)
diff --git a/src/site/_release-notes/_2.0-beta1.adoc b/src/site/_release-notes/_2.0-beta1.adoc
new file mode 100644
index 0000000..5209a41
--- /dev/null
+++ b/src/site/_release-notes/_2.0-beta1.adoc
@@ -0,0 +1,42 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.0-beta1 (2012-09-18)
+
+== Changes
+
+=== Added
+
+* Added AsynchAppender. (for by Ralph Goers)
+
+=== Changed
+
+* Update the versions of SLF4J and Logback. (for by Ralph Goers)
+
+=== Fixed
+
+* Created web module to allow web applications to include the Log4j context listener in WEB-INF/lib even if Log4j is in the container's class path. Allow locating the LoggerContext to include the ClassLoader. Updated the Loader utility to always choose the child ClassLoader. Verified in Jboss 5 and Tomcat. (for by Ralph Goers)
+* FileRenameAction did not create the parent directories of the archive files causing the rollover to fail. (for https://issues.apache.org/jira/browse/LOG4J2-71[LOG4J2-71] by Ralph Goers)
+* NullPointerException in RollingFileManager when filePattern does not cause the file to be compressed. (for https://issues.apache.org/jira/browse/LOG4J2-72[LOG4J2-72] by Ralph Goers)
+* Logger.error(Marker, Message, Throwable) was internally using Level.TRACE. (for https://issues.apache.org/jira/browse/LOG4J2-74[LOG4J2-74] by Ralph Goers)
+* Enhanced Log4jContextListener to accept a configuration file location. Modified FileConfigurationMonitor to monitor files configured that way. Fixed other reconfiguration related bugs. Tested in JBoss and Tomcat. (for https://issues.apache.org/jira/browse/LOG4J2-75[LOG4J2-75] by Ralph Goers)
+* RewriteAppender was calling the stop method of the referenced appender causing the referenced appender's manager to have its use count decremented too many times. (for https://issues.apache.org/jira/browse/LOG4J2-76[LOG4J2-76] by Ralph Goers)
+* RoutingAppender was calling the stop method for each of its referenced Appenders and was calling the stop method of the default Appender a second time. It will now only call the stop method of Appenders it creates. (for https://issues.apache.org/jira/browse/LOG4J2-77[LOG4J2-77] by Ralph Goers)
+* LogFactoryImpl.setAttribute in the Commons Logging bridge got a NullPointerException when passed a null value. It will now remove the attribute. (for https://issues.apache.org/jira/browse/LOG4J2-78[LOG4J2-78] by Ralph Goers)
+* Allow Log4j 2 to be used as the implementation with SLF4J and SLF4J's jcl-over-slf4j by adding filtering to the log method in SLF4JLogger. (for https://issues.apache.org/jira/browse/LOG4J2-80[LOG4J2-80] by Ralph Goers, Oliver Lamy)
+* PatternLayout was not honoring format modifiers. (for https://issues.apache.org/jira/browse/LOG4J2-81[LOG4J2-81] by Ralph Goers)
+* MarkerFilter called MarkerManager.getMarker causing the Marker to be created during the processing of the configuration. This prevents the application from creating the Marker with any parents. MarkerWrapper in SLF4J-impl was getting a ClassCastException in instanceOf because the Marker isn't a MarkerWrapper. (for https://issues.apache.org/jira/browse/LOG4J2-82[LOG4J2-82] by Ralph Goers)
diff --git a/src/site/_release-notes/_2.0-beta2.adoc b/src/site/_release-notes/_2.0-beta2.adoc
new file mode 100644
index 0000000..a7271c1
--- /dev/null
+++ b/src/site/_release-notes/_2.0-beta2.adoc
@@ -0,0 +1,45 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.0-beta2 (2012-10-07)
+
+== Changes
+
+=== Added
+
+* Add getFormats to MultiformatMessage and allow StructuredDataMessage to format as XML. (for by Ralph Goers)
+* Add support for ANSI colors by adding the highlight and style pattern converters. Fix pattern parsing to allow nested patterns. (for by Ralph Goers)
+* Allow the status logging to be directed to stderr or to a file. (for by Ralph Goers)
+* Add interval and modulate options to TimeBasedTriggeringPolicy to allow more fine-grained control of when file rolling should occur. (for https://issues.apache.org/jira/browse/LOG4J2-35[LOG4J2-35] by Ralph Goers)
+* Add support for filtering packages from stack traces. (for https://issues.apache.org/jira/browse/LOG4J2-58[LOG4J2-58] by Ralph Goers)
+* If system property "disableThreadContextMap" is set puts to the ThreadContext will be ignored. If system property "disableThreadContext" is set both puts and pushes will be ignored. (for https://issues.apache.org/jira/browse/LOG4J2-83[LOG4J2-83] by Ralph Goers)
+* If system property "disableThreadContextStack" is set pushes to the ThreadContext will be ignored. If system property "disableThreadContext" is set both puts and pushes will be ignored. (for https://issues.apache.org/jira/browse/LOG4J2-84[LOG4J2-84] by Ralph Goers)
+
+=== Changed
+
+* Made ParameterizedMessage, StringFormattedMessage and ThreadDumpMessage immutable. LocalizedMessage is immutable except that it will be updated with the logger name when it is added to the LogEvent. (for by Ralph Goers)
+
+=== Fixed
+
+* DefaultConfiguration was not starting the Console Appender. (for by Ralph Goers)
+* If the ThreadContext map is empty the LogEvent will contain a null value to reduce the overhead of creating log events and in the size of the serialized object. (for https://issues.apache.org/jira/browse/LOG4J2-83[LOG4J2-83] by Ralph Goers)
+* If the ThreadContext stack is empty the LogEvent will contain a null value to reduce the overhead of creating log events and in the size of the serialized object. Changed the ThreadContext stack to use a custom stack interface instead of java.util.Stack as that class is overly heavy. This change will cause an API incompatibility. (for https://issues.apache.org/jira/browse/LOG4J2-84[LOG4J2-84] by Ralph Goers)
+* Many logging methods in AbstractLogger were set to an incorrect logging level. catching was using the THROWING marker and was set to debug instead of error. (for https://issues.apache.org/jira/browse/LOG4J2-88[LOG4J2-88] by Ralph Goers)
+* Add documentation on client vs server mode to performance page. (for https://issues.apache.org/jira/browse/LOG4J2-90[LOG4J2-90] by Ralph Goers)
+* Log4j 1.2 adapter's Category class was missing 3 log methods. (for https://issues.apache.org/jira/browse/LOG4J2-91[LOG4J2-91] by Ralph Goers)
+* Converted DynamicThresholdFilter to use KeyValuePair. Fixed bugs in the Map-based filters to allow declaration of multiple values for a key to match the documentation. (for https://issues.apache.org/jira/browse/LOG4J2-92[LOG4J2-92] by Ralph Goers)
+* Move variable substitution from PatternLayout to appropriate converters to improve performance. (for by Ralph Goers)
diff --git a/src/site/_release-notes/_2.0-beta3.adoc b/src/site/_release-notes/_2.0-beta3.adoc
new file mode 100644
index 0000000..291794a
--- /dev/null
+++ b/src/site/_release-notes/_2.0-beta3.adoc
@@ -0,0 +1,48 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.0-beta3 (2012-11-11)
+
+== Changes
+
+=== Added
+
+* Added PropertiesRewritePolicy and ability to define properties on a Logger. (for https://issues.apache.org/jira/browse/LOG4J2-28[LOG4J2-28] by Ralph Goers)
+* Added ability to configure from an InputSource. (for https://issues.apache.org/jira/browse/LOG4J2-55[LOG4J2-55] by Ralph Goers)
+
+=== Changed
+
+* Created combined jar to combine API and Core contents for users who only want the Log4j implementation. (for by Ralph Goers)
+* Add ability to customize the names of the Levels in the LevelPatternConverter. (for https://issues.apache.org/jira/browse/LOG4J2-105[LOG4J2-105] by Ralph Goers)
+* Added font and fontSize parameters to HTMLLayout. Replace newlines in message with br tag. (for https://issues.apache.org/jira/browse/LOG4J2-29[LOG4J2-29] by Ralph Goers)
+* Add ThreadContext.push(String format, Object... args) (for https://issues.apache.org/jira/browse/LOG4J2-85[LOG4J2-85] by Ralph Goers)
+* Build pdf of user's guide. (for https://issues.apache.org/jira/browse/LOG4J2-87[LOG4J2-87] by Ralph Goers)
+
+=== Fixed
+
+* Avoid NPE when duplicate LoggerContextFactorys are present. Allow factories to specify a weight to allow real implementations to outrank test implementations. Provide a simple default LoggerContextFactory. (for by Ralph Goers)
+* A NullPointerException would occur if no format value was passed to the SyslogAppender. (for https://issues.apache.org/jira/browse/LOG4J2-101[LOG4J2-101] by Ralph Goers, Emanuele Colombo)
+* The Facility value was being improperly calculated. (for https://issues.apache.org/jira/browse/LOG4J2-102[LOG4J2-102] by Ralph Goers, Emanuele Colombo)
+* The LogEvent was wrapping a ThrowableProxy with another ThrowableProxy when deserializing. (for https://issues.apache.org/jira/browse/LOG4J2-103[LOG4J2-103] by Ralph Goers, Das Archive)
+* Convert LogManager binding to use "regular" java properties instead of XML properties to work around a bug in Oracle's xmlparserv2 jar. (for https://issues.apache.org/jira/browse/LOG4J2-104[LOG4J2-104] by Ralph Goers)
+* PatternParser was not properly handling adjacent nested options (for https://issues.apache.org/jira/browse/LOG4J2-107[LOG4J2-107] by Ralph Goers)
+* Fix NullPointerException in ClassLoaderContextSelector when no class is returned from the SecurityManager. (for https://issues.apache.org/jira/browse/LOG4J2-108[LOG4J2-108] by Ralph Goers)
+* Interpolator was not stripping Lookup key separator when trying to locate the default value for a variable. (for https://issues.apache.org/jira/browse/LOG4J2-94[LOG4J2-94] by Ralph Goers, Denis Treskunov)
+* Add support for loading plugins inside the OSGi bundle. (for https://issues.apache.org/jira/browse/LOG4J2-95[LOG4J2-95] by Ralph Goers)
+* Added several missing classes and methods for Log4j 1.x compatibility. (for https://issues.apache.org/jira/browse/LOG4J2-97[LOG4J2-97] by Ralph Goers)
+* MapRewritePolicy had an extra call to putAll that caused updates to behave like adds. (for https://issues.apache.org/jira/browse/LOG4J2-99[LOG4J2-99] by Ralph Goers, Das Archive)
+* Log4j 1.2 Category.forcedLog was wrapping the message with an ObjectMessage even if the parameter was an ObjectMessage. (for by Ralph Goers)
diff --git a/src/site/_release-notes/_2.0-beta4.adoc b/src/site/_release-notes/_2.0-beta4.adoc
new file mode 100644
index 0000000..e604626
--- /dev/null
+++ b/src/site/_release-notes/_2.0-beta4.adoc
@@ -0,0 +1,68 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.0-beta4 (2013-01-28)
+
+== Changes
+
+=== Added
+
+* Add MessageFormatMessage and FormattedMessage. (for by Ralph Goers)
+* Added Flume Appender samples. (for by Ralph Goers)
+* Added Log4j 2 to SLF4J adapter. (for by Ralph Goers)
+* Added hostName and contextName to property map. (for by Ralph Goers)
+* Add SMTPAppender. (for https://issues.apache.org/jira/browse/LOG4J2-131[LOG4J2-131] by Ralph Goers, Scott Severtson)
+* Allow custom message creation via a message factory. (for https://issues.apache.org/jira/browse/LOG4J2-133[LOG4J2-133] by Gary Gregory)
+* Use %red, %white, %blue, and so on in the console appender. (for https://issues.apache.org/jira/browse/LOG4J2-134[LOG4J2-134] by Gary Gregory)
+
+=== Changed
+
+* Renamed log4j12-api to log4j-1.2-api. (for https://issues.apache.org/jira/browse/LOG4J2-110[LOG4J2-110] by Ralph Goers)
+* Add unit test to verify exceptions are thrown when the socket connection fails. (for https://issues.apache.org/jira/browse/LOG4J2-122[LOG4J2-122] by Ralph Goers)
+* Add follow attribute to Console Appender. (for https://issues.apache.org/jira/browse/LOG4J2-128[LOG4J2-128] by Ralph Goers)
+* Allow newlines to be escaped in Syslog and RFC5424 layouts. Allow Throwables to be included in the output from RFC5424Layout. (for https://issues.apache.org/jira/browse/LOG4J2-136[LOG4J2-136] by Ralph Goers, Scott Severtson)
+
+=== Fixed
+
+* Allow FlumeAvroManager to initialize even if it cannot connect to an agent. (for by Ralph Goers)
+* Enhanced javadoc copyright statement. (for https://issues.apache.org/jira/browse/LOG4J2-111[LOG4J2-111] by Ralph Goers)
+* StructuredDataFilter createFilter was annotated with PluginAttr instead of PluginElement for the KeyValuePairs. (for https://issues.apache.org/jira/browse/LOG4J2-113[LOG4J2-113] by Ralph Goers)
+* StructuredDataMessage was validating the length of the values in the event Map instead of the lengths of the keys. (for https://issues.apache.org/jira/browse/LOG4J2-114[LOG4J2-114] by Ralph Goers, Arkin Yetis)
+* ThreadContext Map elements with null values are now ignored when constructing a Flume event and in the RFC5424 Layout. (for https://issues.apache.org/jira/browse/LOG4J2-115[LOG4J2-115] by Ralph Goers)
+* File renaming was using the wrong date value. Enhanced DefaultRolloverStrategy to store newest files in highest index as well as lowest. (for https://issues.apache.org/jira/browse/LOG4J2-116[LOG4J2-116] by Ralph Goers)
+* A broken socket connection would cause the TCPSocketManager to continuously reconnect. (for https://issues.apache.org/jira/browse/LOG4J2-119[LOG4J2-119] by Ralph Goers)
+* TCPSocketManager would fail if the initial connection could not be established. (for https://issues.apache.org/jira/browse/LOG4J2-120[LOG4J2-120] by Ralph Goers)
+* The example for ThreadContextMapFilter was incorrect. (for https://issues.apache.org/jira/browse/LOG4J2-123[LOG4J2-123] by Ralph Goers, Olivier Lamy)
+* JMSQueue and JMSTopic Appenders did not allow name to be specified. (for https://issues.apache.org/jira/browse/LOG4J2-125[LOG4J2-125] by Ralph Goers)
+* Allow JMS appenders to recover if the queue or topic is unavailable. (for https://issues.apache.org/jira/browse/LOG4J2-126[LOG4J2-126] by Ralph Goers)
+* AbstractLogger methods were not passing Markers to the isEnabled methods. (for https://issues.apache.org/jira/browse/LOG4J2-127[LOG4J2-127] by Ralph Goers)
+* RoutingAppender was only creating a single appender for the default Route. (for https://issues.apache.org/jira/browse/LOG4J2-129[LOG4J2-129] by Ralph Goers)
+* PatternLayout should format throwables without requiring a converter. (for https://issues.apache.org/jira/browse/LOG4J2-130[LOG4J2-130] by Ralph Goers)
+* AbstractLogger.catching(Throwable) checks for DEBUG level but logs at ERROR level. (for https://issues.apache.org/jira/browse/LOG4J2-132[LOG4J2-132] by Gary Gregory)
+* BaseConfiguration does not close the first appender. (for https://issues.apache.org/jira/browse/LOG4J2-135[LOG4J2-135] by Gary Gregory, Ingo Feltes)
+* Fix hang in Dumbster SMTP test server. (for https://issues.apache.org/jira/browse/LOG4J2-137[LOG4J2-137] by Ralph Goers)
+* Fix null pointer exception in SocketAppender if no protocol is specified. The protocol will default to TCP for the SocketAppender and UDP for the SyslogAppender. (for https://issues.apache.org/jira/browse/LOG4J2-139[LOG4J2-139] by Ralph Goers)
+* Typo in documentation of SocketAppender. (for https://issues.apache.org/jira/browse/LOG4J2-140[LOG4J2-140] by Gary Gregory, Joern Huxhorn)
+* Serialized LogEvents were not reset in the output stream causing them to deserialize incorrectly. (for https://issues.apache.org/jira/browse/LOG4J2-142[LOG4J2-142] by Ralph Goers)
+* MessagePatternConverter now returns "null" if the log message is null. (for https://issues.apache.org/jira/browse/LOG4J2-143[LOG4J2-143] by Ralph Goers)
+* NullPointerException in RFC5424Layout. (for https://issues.apache.org/jira/browse/LOG4J2-144[LOG4J2-144] by Gary Gregory)
+* Add missing serial version IDs. (for https://issues.apache.org/jira/browse/LOG4J2-145[LOG4J2-145] by Gary Gregory)
+* ThreadContextMapFilter was matching on the key instead of the value of the key. (for https://issues.apache.org/jira/browse/LOG4J2-147[LOG4J2-147] by Ralph Goers, William Burns)
+* SMTPAppender will only cache filtered events. (for https://issues.apache.org/jira/browse/LOG4J2-149[LOG4J2-149] by Ralph Goers, Scott Severtson)
+* Convert all System.getProperty calls to use PropertiesUtil to suppress SecurityExceptions. (for https://issues.apache.org/jira/browse/LOG4J2-150[LOG4J2-150] by Ralph Goers)
+* RollingFileAppender's FileRenameAction was throwing a NullPointerException if no directory was specified on the target file name. (for https://issues.apache.org/jira/browse/LOG4J2-152[LOG4J2-152] by Ralph Goers, Remko Popma)
+* LocalizedMessageTest fails on linux system. (for https://issues.apache.org/jira/browse/LOG4J2-156[LOG4J2-156] by Gary Gregory, Andreas Born)
diff --git a/src/site/_release-notes/_2.0-beta5.adoc b/src/site/_release-notes/_2.0-beta5.adoc
new file mode 100644
index 0000000..dcfbb1c
--- /dev/null
+++ b/src/site/_release-notes/_2.0-beta5.adoc
@@ -0,0 +1,67 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.0-beta5 (2013-04-20)
+
+== Changes
+
+=== Added
+
+* Added FlumePersistentManager which writes to BerkeleyDB and then writes to Flume asynchronously. (for by Ralph Goers)
+* Expose file appender configuration details via an advertisement mechanism. (for https://issues.apache.org/jira/browse/LOG4J2-155[LOG4J2-155] by Scott Deboy)
+* Add support for asynchronous loggers. (for https://issues.apache.org/jira/browse/LOG4J2-163[LOG4J2-163] by Ralph Goers, Remko Popma)
+* Add methods is/setEndOfBatch to LogEvent. (for https://issues.apache.org/jira/browse/LOG4J2-164[LOG4J2-164] by Ralph Goers, Remko Popma)
+* Add Logger interface APIs to log at given levels. (for https://issues.apache.org/jira/browse/LOG4J2-179[LOG4J2-179] by Gary Gregory)
+* Add tag library. (for https://issues.apache.org/jira/browse/LOG4J2-187[LOG4J2-187] by Ralph Goers, Nick Williams)
+* Add JMX support. (for https://issues.apache.org/jira/browse/LOG4J2-207[LOG4J2-207] by Ralph Goers, Remko Popma)
+
+=== Changed
+
+* Allow Logger and LoggerContext to be subclassed. (for https://issues.apache.org/jira/browse/LOG4J2-151[LOG4J2-151] by Ralph Goers, Remko Popma)
+* Added ability to include or exclude location information. (for https://issues.apache.org/jira/browse/LOG4J2-153[LOG4J2-153] by Ralph Goers, Remko Popma)
+* Allowed Loggers access to the properties in the LoggerConfig. (for https://issues.apache.org/jira/browse/LOG4J2-157[LOG4J2-157] by Ralph Goers, Remko Popma)
+* Add RFC 5424 compliant escaping rules to RFC5424Layout. (for https://issues.apache.org/jira/browse/LOG4J2-158[LOG4J2-158] by Ralph Goers, Scott Severtson)
+* Move Throwable pattern converter options processing to ThrowableFormatOptions class. (for https://issues.apache.org/jira/browse/LOG4J2-160[LOG4J2-160] by Ralph Goers, Joanne Polsky)
+* Move async subproject into core. (for https://issues.apache.org/jira/browse/LOG4J2-208[LOG4J2-208] by Ralph Goers, Remko Popma)
+* Async documentation update. (for https://issues.apache.org/jira/browse/LOG4J2-214[LOG4J2-214] by Ralph Goers, Remko Popma)
+
+=== Fixed
+
+* Add Fragment-Host to MANIFEST.MF for log4j-core. (for https://issues.apache.org/jira/browse/LOG4J2-159[LOG4J2-159] by Ralph Goers, Jan Winter)
+* Modify ClassLoaderContextSelector to use the first ClassLoader in the child parent hierarchy that has a Context with a configuration to allow JSPs to use the WebApp's context and configuration. (for https://issues.apache.org/jira/browse/LOG4J2-161[LOG4J2-161] by Ralph Goers)
+* Configurator throws a ClassCastException if LogManager returns a SimpleLoggerContext. (for https://issues.apache.org/jira/browse/LOG4J2-167[LOG4J2-167] by Ralph Goers)
+* ConfigurationFactory was adding factories on every call. (for https://issues.apache.org/jira/browse/LOG4J2-169[LOG4J2-169] by Ralph Goers)
+* Plugin cache should be reset when addPackages is called. (for https://issues.apache.org/jira/browse/LOG4J2-175[LOG4J2-175] by Scott Deboy)
+* Avoid IllegalArgumentException in AsynchAppender. (for https://issues.apache.org/jira/browse/LOG4J2-176[LOG4J2-176] by Ralph Goers, Remko Popma)
+* Fix NullPointerException in DatagramOutputStream when flush is called from multiple threads. (for https://issues.apache.org/jira/browse/LOG4J2-177[LOG4J2-177] by Ralph Goers, Remko Popma)
+* OutputStreamManager now adds the layout header whenever the OutputStream is set. (for https://issues.apache.org/jira/browse/LOG4J2-181[LOG4J2-181] by Ralph Goers)
+* AppenderRefs on AsynchAppender didn't support the level and filter elements. (for https://issues.apache.org/jira/browse/LOG4J2-188[LOG4J2-188] by Ralph Goers, Werner)
+* The blocking parameter did not work properly on AsynchAppender. (for https://issues.apache.org/jira/browse/LOG4J2-189[LOG4J2-189] by Ralph Goers, Werner)
+* BaseConfiguration addLoggerAppender saved appender using the Logger name. (for https://issues.apache.org/jira/browse/LOG4J2-190[LOG4J2-190] by Ralph Goers, Werner)
+* RollingFastFileAppender (in log4j-async) did not roll over. (for https://issues.apache.org/jira/browse/LOG4J2-193[LOG4J2-193] by Ralph Goers, Remko Popma)
+* ThrowableFormatOptionsTest failed on Windows due to CR/LF issue. (for https://issues.apache.org/jira/browse/LOG4J2-194[LOG4J2-194] by Ralph Goers, Remko Popma)
+* Unit tests now create files in the target directory. (for https://issues.apache.org/jira/browse/LOG4J2-195[LOG4J2-195] by Ralph Goers, Remko Popma)
+* FlumeAvroManager now uses Flume RPCClient. (for https://issues.apache.org/jira/browse/LOG4J2-196[LOG4J2-196] by Ralph Goers)
+* FlumeAvroManager now uses Flume RPCClient. (for https://issues.apache.org/jira/browse/LOG4J2-198[LOG4J2-198] by Ralph Goers)
+* Highlight subprojects in sub-navigation. (for https://issues.apache.org/jira/browse/LOG4J2-199[LOG4J2-199] by Ralph Goers, Remko Popma)
+* LoggerContext method renamed to removeFilter from removeFiler. (for https://issues.apache.org/jira/browse/LOG4J2-200[LOG4J2-200] by Ralph Goers, Remko Popma)
+* Fix deadlock in SocketAppender. Added option to not wait for socket reconnect. (for https://issues.apache.org/jira/browse/LOG4J2-205[LOG4J2-205] by Ralph Goers)
+* Use the Maven group ID org.apache.logging.log4j for all artifacts. (for https://issues.apache.org/jira/browse/LOG4J2-207[LOG4J2-207] by Gary Gregory)
+* MapMessage was not enclosing key value in quotes when generating XML. (for https://issues.apache.org/jira/browse/LOG4J2-210[LOG4J2-210] by Ralph Goers, Arkin Yetis)
+* Removing extra spaces in entry and exit method output. (for https://issues.apache.org/jira/browse/LOG4J2-211[LOG4J2-211] by Ralph Goers, Nick Williams)
+* Call LoggerContext.stop when the application is shutdown. (for https://issues.apache.org/jira/browse/LOG4J2-212[LOG4J2-212] by Ralph Goers)
+* Loggers without a "." had no parent logger. (for https://issues.apache.org/jira/browse/LOG4J2-212[LOG4J2-212] by Ralph Goers)
diff --git a/src/site/_release-notes/_2.0-beta6.adoc b/src/site/_release-notes/_2.0-beta6.adoc
new file mode 100644
index 0000000..a194290
--- /dev/null
+++ b/src/site/_release-notes/_2.0-beta6.adoc
@@ -0,0 +1,46 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.0-beta6 (2013-05-05)
+
+== Changes
+
+=== Changed
+
+* Documentation updates to clarify use and impact of location in pattern layouts. (for https://issues.apache.org/jira/browse/LOG4J2-225[LOG4J2-225] by Remko Popma)
+* Improved error reporting when misconfigured. (for https://issues.apache.org/jira/browse/LOG4J2-230[LOG4J2-230] by Remko Popma, Wojciech Zaręba)
+* Moved JMX Client GUI classes into separate jmx-gui submodule. (for https://issues.apache.org/jira/browse/LOG4J2-237[LOG4J2-237] by Remko Popma)
+* Moved Clock interface to package org.apache.logging.log4j.core.helpers. (for by Remko Popma)
+* Removed CheckStyle false positives for NewlineAtEndOfFile and whitespace following '*' at end of line in javadoc. (for by Remko Popma)
+* Renamed AsynchAppender to AsyncAppender. Plugin name became Async (was Asynch). (for by Remko Popma)
+
+=== Fixed
+
+* Use OSGi version format in Fragment-Host (for https://issues.apache.org/jira/browse/LOG4J2-159[LOG4J2-159] by Ralph Goers)
+* Add support for interpolating Environment variables when processing the configuration. (for https://issues.apache.org/jira/browse/LOG4J2-192[LOG4J2-192] by Ralph Goers)
+* Renamed Plugin annotation attribute from "type" to "category". (for https://issues.apache.org/jira/browse/LOG4J2-201[LOG4J2-201] by Ralph Goers)
+* Various small documentation fixes. (for https://issues.apache.org/jira/browse/LOG4J2-215[LOG4J2-215] by Remko Popma)
+* Ensure PluginManager streams are always closed. (for https://issues.apache.org/jira/browse/LOG4J2-217[LOG4J2-217] by Remko Popma, Fabien Sanglard)
+* Fix: install default root logger if not configured (this is unchanged), but make sure to include configured named loggers. Clarified documentation. (for https://issues.apache.org/jira/browse/LOG4J2-219[LOG4J2-219] by Remko Popma, Peter DePasquale)
+* Remove hundreds of compiler warnings. (for https://issues.apache.org/jira/browse/LOG4J2-221[LOG4J2-221] by Ralph Goers, Nick Williams)
+* Disruptor will now shut down during Tomcat shutdown. (for https://issues.apache.org/jira/browse/LOG4J2-222[LOG4J2-222] by Ralph Goers, Steven Yang)
+* Fix LoggerContext start and stop to eliminate IllegalStateException and NoClassDefFound errors. (for https://issues.apache.org/jira/browse/LOG4J2-223[LOG4J2-223] by Ralph Goers)
+* The FlumeAppender failed to start if the Flume RPCClient could not connect to any Flume agents. (for https://issues.apache.org/jira/browse/LOG4J2-224[LOG4J2-224] by Ralph Goers)
+* Logger.getParent() was not returning the correct Logger. (for https://issues.apache.org/jira/browse/LOG4J2-231[LOG4J2-231] by Ralph Goers)
+* Fixed link to log4j-user mailing list. (for https://issues.apache.org/jira/browse/LOG4J2-233[LOG4J2-233] by Remko Popma)
+* RegexFilter threw a NullPointerException when used as a context-wide filter. (for https://issues.apache.org/jira/browse/LOG4J2-234[LOG4J2-234] by Ralph Goers)
+* Removed dependency on tools jar from core module, made jconsole dependency optional. (for https://issues.apache.org/jira/browse/LOG4J2-235[LOG4J2-235] by Remko Popma, Sebastian Oerding)
diff --git a/src/site/_release-notes/_2.0-beta7.adoc b/src/site/_release-notes/_2.0-beta7.adoc
new file mode 100644
index 0000000..e3d2351
--- /dev/null
+++ b/src/site/_release-notes/_2.0-beta7.adoc
@@ -0,0 +1,54 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.0-beta7 (2013-06-01)
+
+== Changes
+
+=== Added
+
+* Break up core into multiple osgi jars. (for https://issues.apache.org/jira/browse/LOG4J2-10[LOG4J2-10] by Ralph Goers, Timothy Ward)
+* New JDBC, JPA, and NoSQL database Appenders. (for https://issues.apache.org/jira/browse/LOG4J2-229[LOG4J2-229] by Gary Gregory, Nick Williams)
+* Provide configuration information (location, content type, content if possible) via a registered Advertiser. (for https://issues.apache.org/jira/browse/LOG4J2-251[LOG4J2-251] by Scott Deboy)
+
+=== Changed
+
+* Improve ThreadContext performance with copy-on-write map and stack. (for https://issues.apache.org/jira/browse/LOG4J2-154[LOG4J2-154] by Remko Popma)
+* Allow custom LogEventFactories. (for https://issues.apache.org/jira/browse/LOG4J2-243[LOG4J2-243] by Ralph Goers)
+* Allow context parameters in Log4jContextListener to include properties. (for https://issues.apache.org/jira/browse/LOG4J2-249[LOG4J2-249] by Ralph Goers)
+* Add support for interceptors in the embedded Flume Appender. (for https://issues.apache.org/jira/browse/LOG4J2-262[LOG4J2-262] by Ralph Goers, Edward Sargisson)
+* Method name changes in interface org.apache.logging.log4j.spi.ThreadContextMap: getContext() to getCopy(), get() to getImmutableMapOrNull(). (for by Remko Popma)
+
+=== Fixed
+
+* Remove LoggerContext when LoggerContext is stopped. (for https://issues.apache.org/jira/browse/LOG4J2-223[LOG4J2-223] by Ralph Goers)
+* UDP now sends one event per packet. (for https://issues.apache.org/jira/browse/LOG4J2-228[LOG4J2-228] by Ralph Goers)
+* StringFormattedMessage and MessageFormatMessage now will accept a Throwable as their last argument and pass it on. (for https://issues.apache.org/jira/browse/LOG4J2-242[LOG4J2-242] by Ralph Goers)
+* Rewrite Appender was ignoring filters on referenced appenders. (for https://issues.apache.org/jira/browse/LOG4J2-244[LOG4J2-244] by Ralph Goers)
+* Avoid EmptyStack exception if getCallerClass and SecurityManager are not available. (for https://issues.apache.org/jira/browse/LOG4J2-245[LOG4J2-245] by Ralph Goers)
+* Data buffer is reset in finally clause. (for https://issues.apache.org/jira/browse/LOG4J2-246[LOG4J2-246] by Ralph Goers)
+* SocketServer.isActive should be volatile because it is accessed from different threads. (for https://issues.apache.org/jira/browse/LOG4J2-247[LOG4J2-247] by Gary Gregory)
+* Mark OutputStream in OutputStreamManager as volatile. Mark header and footer as final. (for https://issues.apache.org/jira/browse/LOG4J2-254[LOG4J2-254] by Ralph Goers)
+* Multi-byte character strings are now assumed to be in the platform default encoding, not UTF-8. (for https://issues.apache.org/jira/browse/LOG4J2-255[LOG4J2-255] by Remko Popma)
+* XML layout ignores charset for the XML processing instruction's encoding attribute. (for https://issues.apache.org/jira/browse/LOG4J2-257[LOG4J2-257] by Gary Gregory)
+* HTML layout does not output meta element for charset. (for https://issues.apache.org/jira/browse/LOG4J2-258[LOG4J2-258] by Gary Gregory)
+* HTML layout does not specify charset in content type. (for https://issues.apache.org/jira/browse/LOG4J2-259[LOG4J2-259] by Gary Gregory)
+* XML layout does not specify charset in content type. (for https://issues.apache.org/jira/browse/LOG4J2-260[LOG4J2-260] by Gary Gregory)
+* Add missing "not" to error message. (for https://issues.apache.org/jira/browse/LOG4J2-261[LOG4J2-261] by Ralph Goers, Edward Sargisson)
+* Do not allow a charset on RFC5424Layout - use UTF-8. (for https://issues.apache.org/jira/browse/LOG4J2-263[LOG4J2-263] by Ralph Goers)
+* Add guid to FlumeEvent headers for non-Map Messages. (for https://issues.apache.org/jira/browse/LOG4J2-268[LOG4J2-268] by Ralph Goers)
+* Use transaction when batch size is 1. (for https://issues.apache.org/jira/browse/LOG4J2-269[LOG4J2-269] by Ralph Goers)
diff --git a/src/site/_release-notes/_2.0-beta8.adoc b/src/site/_release-notes/_2.0-beta8.adoc
new file mode 100644
index 0000000..3c19a9f
--- /dev/null
+++ b/src/site/_release-notes/_2.0-beta8.adoc
@@ -0,0 +1,55 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.0-beta8 (2013-07-10)
+
+== Changes
+
+=== Changed
+
+* Include arbitrary message fields in RFC-5424 structured data. (for https://issues.apache.org/jira/browse/LOG4J2-168[LOG4J2-168] by Ralph Goers, Scott Severtson)
+* Improved logging initialization in Servlet containers, especially Servlet 3.0 and newer where Log4j now initializes and deinitializes automatically with no deployment descriptor configuration. (for https://issues.apache.org/jira/browse/LOG4J2-270[LOG4J2-270] by Nick Williams)
+* Wasted work in XMLLayout.toSerializable(). (for https://issues.apache.org/jira/browse/LOG4J2-273[LOG4J2-273] by Gary Gregory)
+* Wasted work in UUIDUtil initialization. (for https://issues.apache.org/jira/browse/LOG4J2-274[LOG4J2-274] by Gary Gregory)
+* Wasted work in RollingAppenderSizeTest.testAppender() and others. (for https://issues.apache.org/jira/browse/LOG4J2-277[LOG4J2-277] by Gary Gregory)
+* Allow the default status level to be specified as a system property. (for https://issues.apache.org/jira/browse/LOG4J2-282[LOG4J2-282] by Ralph Goers)
+* Remove dependency on Apache ORO jar. (for https://issues.apache.org/jira/browse/LOG4J2-283[LOG4J2-283] by Gary Gregory)
+* Update Log4j 1 dependency to 1.2.17 from 1.2.16. (for https://issues.apache.org/jira/browse/LOG4J2-284[LOG4J2-284] by Gary Gregory)
+* Update Jansi jar to 1.11 from 1.9. (for https://issues.apache.org/jira/browse/LOG4J2-285[LOG4J2-285] by Gary Gregory)
+* Update test H2 JDBC driver to 1.172 from 1.171. (for https://issues.apache.org/jira/browse/LOG4J2-286[LOG4J2-286] by Gary Gregory)
+* Update JUnit to 4.11 from 4.7. (for https://issues.apache.org/jira/browse/LOG4J2-288[LOG4J2-288] by Gary Gregory)
+* LogManager.getLogger can now be called without a logger name or with a null logger name. (for https://issues.apache.org/jira/browse/LOG4J2-294[LOG4J2-294] by Ralph Goers)
+* Add printf methods to Logger API. (for https://issues.apache.org/jira/browse/LOG4J2-301[LOG4J2-301] by Ralph Goers)
+* Update NoSQL dependencies: lightcouch 0.0.6 from 0.0.5, mongodb 2.11.2 from 2.11.1. (for https://issues.apache.org/jira/browse/LOG4J2-386[LOG4J2-386] by Gary Gregory)
+
+=== Fixed
+
+* Fix NullPointerException (regression due to fix for LOG4J2-228) (for https://issues.apache.org/jira/browse/LOG4J2-139[LOG4J2-139] by Ralph Goers)
+* FastRollingFileAppender with TimeBasedTriggeringPolicy now works correctly if append=false. (for https://issues.apache.org/jira/browse/LOG4J2-267[LOG4J2-267] by Remko Popma)
+* FastRollingFileAppender with TimeBasedTriggeringPolicy now works correctly if append=false. (for https://issues.apache.org/jira/browse/LOG4J2-271[LOG4J2-271] by Remko Popma)
+* FlumeAvroManager fails to notify client of failing event if Flume RPCClient cannot be created. (for https://issues.apache.org/jira/browse/LOG4J2-275[LOG4J2-275] by Ralph Goers)
+* Filter calls from Avro or Flume to be ignored by the FlumeAppender. (for https://issues.apache.org/jira/browse/LOG4J2-278[LOG4J2-278] by Ralph Goers)
+* FlumePersistentManager now calls Berkeley DB from threads to avoid encountering interrupts in the application. (for https://issues.apache.org/jira/browse/LOG4J2-279[LOG4J2-279] by Ralph Goers)
+* AsyncLogger threads are now daemon threads and won't prevent the JVM from shutting down anymore. (for https://issues.apache.org/jira/browse/LOG4J2-280[LOG4J2-280] by Remko Popma)
+* Upgrade javadoc plugin to 2.9.1 to fix javadoc security issue. (for https://issues.apache.org/jira/browse/LOG4J2-289[LOG4J2-289] by Ralph Goers)
+* Fast(Rolling)FileAppender now correctly appends to (does not overwrite) existing file. (for https://issues.apache.org/jira/browse/LOG4J2-292[LOG4J2-292] by Remko Popma)
+* Fast(Rolling)FileAppender now correctly handles messages exceeding the buffer size. (for https://issues.apache.org/jira/browse/LOG4J2-295[LOG4J2-295] by Remko Popma)
+* Wasted work in FlumePersistentManager.createManager. (for https://issues.apache.org/jira/browse/LOG4J2-296[LOG4J2-296] by Gary Gregory)
+* Wasted work in TestConfigurator.testEnvironment. (for https://issues.apache.org/jira/browse/LOG4J2-297[LOG4J2-297] by Gary Gregory)
+* Wasted work in StyleConverterTest.setupClass. (for https://issues.apache.org/jira/browse/LOG4J2-298[LOG4J2-298] by Gary Gregory)
+* WriterThread was ending when no agents are available which caused an OutOfMemoryError. (for https://issues.apache.org/jira/browse/LOG4J2-300[LOG4J2-300] by Ralph Goers)
+* Added toString methods to ThreadContextStack/Map implementation classes. (for https://issues.apache.org/jira/browse/LOG4J2-302[LOG4J2-302] by Remko Popma)
diff --git a/src/site/_release-notes/_2.0-beta9.adoc b/src/site/_release-notes/_2.0-beta9.adoc
new file mode 100644
index 0000000..e9d0534
--- /dev/null
+++ b/src/site/_release-notes/_2.0-beta9.adoc
@@ -0,0 +1,95 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.0-beta9 (2013-09-14)
+
+== Changes
+
+=== Added
+
+* Added FAQ page to the site. (for https://issues.apache.org/jira/browse/LOG4J2-253[LOG4J2-253] by Remko Popma)
+* Ease porting from 1.x Logger.getRootLogger(): add LogManager.getRootLogger(). (for https://issues.apache.org/jira/browse/LOG4J2-305[LOG4J2-305] by Gary Gregory)
+* Add JNDILookup plugin. (for https://issues.apache.org/jira/browse/LOG4J2-313[LOG4J2-313] by Ralph Goers, Woonsan Ko)
+* Add TLSAppender. Also added missing license headers to several files. (for https://issues.apache.org/jira/browse/LOG4J2-338[LOG4J2-338] by Ralph Goers, Tibor Benke)
+* Enable XInclude for XML configurations. (for https://issues.apache.org/jira/browse/LOG4J2-341[LOG4J2-341] by Gary Gregory)
+* Create a JSON Layout. (for https://issues.apache.org/jira/browse/LOG4J2-356[LOG4J2-356] by Gary Gregory)
+* Allow Plugins to have aliases. (for https://issues.apache.org/jira/browse/LOG4J2-360[LOG4J2-360] by Ralph Goers)
+* Add a diagram to the site (FAQ page) that explains when to use which jar. (for https://issues.apache.org/jira/browse/LOG4J2-362[LOG4J2-362] by Remko Popma)
+* Add WebLookup to retrieve information from the ServletContext. (for https://issues.apache.org/jira/browse/LOG4J2-364[LOG4J2-364] by Ralph Goers, David Nault)
+* Add more options to PatternLayout to display more detailed information about a Throwable. (for https://issues.apache.org/jira/browse/LOG4J2-374[LOG4J2-374] by Gary Gregory, Tibor Benke)
+* [Pattern Layout] Customize level names by length. (for https://issues.apache.org/jira/browse/LOG4J2-383[LOG4J2-383] by Gary Gregory)
+* [Pattern Layout] Customize level names to lower-case. (for https://issues.apache.org/jira/browse/LOG4J2-384[LOG4J2-384] by Gary Gregory)
+* Allow the default file rollover strategy to define the compression level. (for https://issues.apache.org/jira/browse/LOG4J2-399[LOG4J2-399] by Gary Gregory)
+
+=== Changed
+
+* Changed the (relatively new) PatternLayout configuration attribute "suppressExceptions" to "alwaysWriteExceptions" to more correctly indicate what it does. As such, the meaning of this attribute has reversed (previous "true"s should become "false"s, and vice versa). Since this was an undocumented attribute up until now, it's unlikely this change will affect any users. (for by Nick Williams)
+* Changed the "suppressExceptions" configuration attribute for all Appenders to "ignoreExceptions" to avoid confusion with Java 7 suppressed exceptions. Also renamed the Appender#isExceptionSuppressed() method to Appender#ignoreExceptions() to avoid the same confusion. All Appenders by default internally log and then ignore exceptions encountered while logging. Setting "ignoreExceptions" to "false" on an Appender causes it to allow exceptions to propagate to the caller. You must set "ignoreExceptions" to "false" for Appenders you are wrapping in the Failover Appender. (for by Nick Williams)
+* Cleaned up tests and cleared up documentation for the JPA appender following the resolution of EclipseLink issue #412454. (for by Nick Williams)
+* Improved site by adding quick jump-off page and menu for Javadoc links for all components. (for by Nick Williams)
+* Update JSON Jackson library to 2.2.2 from 2.2.1. (for https://issues.apache.org/jira/browse/LOG4J2-306[LOG4J2-306] by Gary Gregory)
+* Updated Async Loggers' LMAX Disruptor library from 3.0.1 to 3.2.0. (for https://issues.apache.org/jira/browse/LOG4J2-307[LOG4J2-307] by Remko Popma)
+* Clarified which library versions were used in Async Loggers performance test. (for https://issues.apache.org/jira/browse/LOG4J2-308[LOG4J2-308] by Remko Popma)
+* XML layout improvements (compact vs. pretty, namespace, namespace prefix, root element). (for https://issues.apache.org/jira/browse/LOG4J2-312[LOG4J2-312] by Gary Gregory)
+* Renamed FastFileAppender and FastRollingFileAppender to RandomAccessFileAppender and RollingRandomAccessFileAppender. Configurations using the Fast(Rolling)File element no longer work and should be modified to use the (Rolling)RandomAccessFile element. (for https://issues.apache.org/jira/browse/LOG4J2-317[LOG4J2-317] by Gary Gregory)
+* Allow shutdown hook to be disabled in the configuration. (for https://issues.apache.org/jira/browse/LOG4J2-318[LOG4J2-318] by Ralph Goers)
+* Update JDBC tests to use H2 database 1.3.173 from 1.3.172. (for https://issues.apache.org/jira/browse/LOG4J2-325[LOG4J2-325] by Gary Gregory)
+* Add support for multiple SD-ELEMENTs in an RFC 5424 syslog message. (for https://issues.apache.org/jira/browse/LOG4J2-355[LOG4J2-355] by Gary Gregory, Tibor Benke)
+* Update commons-logging to 1.1.3 from 1.1.1. (for https://issues.apache.org/jira/browse/LOG4J2-366[LOG4J2-366] by Gary Gregory)
+* Update Jackson dependency to 1.9.13 from 1.9.11. (for https://issues.apache.org/jira/browse/LOG4J2-387[LOG4J2-387] by Gary Gregory)
+* Update Java Mail dependency to 1.5.0 from 1.4.7. (for https://issues.apache.org/jira/browse/LOG4J2-388[LOG4J2-388] by Gary Gregory)
+* Update HSQLDB dependency to 2.3.0 from 2.2.9. (for https://issues.apache.org/jira/browse/LOG4J2-390[LOG4J2-390] by Gary Gregory)
+
+=== Fixed
+
+* The slf4j-ext jar is now an optional dependency of the SLF4J bridge. (for https://issues.apache.org/jira/browse/LOG4J2-165[LOG4J2-165] by Ralph Goers)
+* RoutingAppender's default Route can now be an appender reference. (for https://issues.apache.org/jira/browse/LOG4J2-166[LOG4J2-166] by Ralph Goers)
+* ThrowableProxy no longer extends Throwable. (for https://issues.apache.org/jira/browse/LOG4J2-216[LOG4J2-216] by Ralph Goers)
+* Fix table of contents generation in pdf. (for https://issues.apache.org/jira/browse/LOG4J2-226[LOG4J2-226] by Ralph Goers)
+* Additional fix to make AsyncAppender threads daemon threads and improve their thread name. (for https://issues.apache.org/jira/browse/LOG4J2-280[LOG4J2-280] by Remko Popma)
+* Fixed JDBC, JPA, and NoSQL appenders so that the failover appender properly fails over on error. (for https://issues.apache.org/jira/browse/LOG4J2-291[LOG4J2-291] by Nick Williams)
+* Changed the ConfigurationFactory to recognize and properly use the classpath: URI scheme in addition to the classloader: URI scheme. (for https://issues.apache.org/jira/browse/LOG4J2-293[LOG4J2-293] by Nick Williams, Abhinav Shah)
+* Reset the Configuration if the ClassLoaderContextSelector creates a LoggerContext without a configuration location and then is later provided one. (for https://issues.apache.org/jira/browse/LOG4J2-293[LOG4J2-293] by Ralph Goers)
+* Add getThrowable method to ThrowableProxy. (for https://issues.apache.org/jira/browse/LOG4J2-299[LOG4J2-299] by Ralph Goers)
+* Fixed Async Loggers memory leak. (for https://issues.apache.org/jira/browse/LOG4J2-304[LOG4J2-304] by Remko Popma)
+* Insure jars and distributions only have a single License and Notice file. (for https://issues.apache.org/jira/browse/LOG4J2-309[LOG4J2-309] by Ralph Goers)
+* Fixed issue where SMTPAppender did not send mails with error or fatal level without prior info event. (for https://issues.apache.org/jira/browse/LOG4J2-310[LOG4J2-310] by Remko Popma, Olivier Lemasle)
+* Synchronized flush() and close() methods in the XxxFileManager and OutputStreamManager classes. (for https://issues.apache.org/jira/browse/LOG4J2-311[LOG4J2-311] by Remko Popma)
+* Double stack trace logging when using %throwable in %style and %highlight. (for https://issues.apache.org/jira/browse/LOG4J2-319[LOG4J2-319] by Gary Gregory)
+* JPAAppender stops logging because META-INF/log4j-provider.properties is left open. (for https://issues.apache.org/jira/browse/LOG4J2-320[LOG4J2-320] by Gary Gregory)
+* Centralized reflective use of Reflection#getCallerClass and properly handled its instability in various versions of Java. (for https://issues.apache.org/jira/browse/LOG4J2-322[LOG4J2-322] by Nick Williams)
+* FlumePersistentManager was calling Berkeley DB's count method too frequently. (for https://issues.apache.org/jira/browse/LOG4J2-328[LOG4J2-328] by Ralph Goers)
+* StatusLogger now only creates StatusData objects if they are the appropriate logging level. (for https://issues.apache.org/jira/browse/LOG4J2-329[LOG4J2-329] by Ralph Goers)
+* Added a BSON Transformer so that MongoDB can persist Log4j events. (for https://issues.apache.org/jira/browse/LOG4J2-330[LOG4J2-330] by Nick Williams)
+* Removed erroneous check for affected MongoDB records, which always returns zero on inserts. (for https://issues.apache.org/jira/browse/LOG4J2-331[LOG4J2-331] by Nick Williams)
+* Modified documentation to refer to SLF4J Binding instead of SLF4J Bridge. (for https://issues.apache.org/jira/browse/LOG4J2-332[LOG4J2-332] by Ralph Goers, Hervé Boutemy)
+* Match artifact ids with Maven module names. (for https://issues.apache.org/jira/browse/LOG4J2-333[LOG4J2-333] by Gary Gregory, Hervé Boutemy)
+* FlumePersistentManager's writer thread had high CPU usage. (for https://issues.apache.org/jira/browse/LOG4J2-335[LOG4J2-335] by Ralph Goers)
+* AsyncLogger errors after multiple calls to LoggerContext.reconfigure(). (for https://issues.apache.org/jira/browse/LOG4J2-336[LOG4J2-336] by Remko Popma, Andre Bogus)
+* Ignore xml:base attributes. (for https://issues.apache.org/jira/browse/LOG4J2-342[LOG4J2-342] by Ralph Goers)
+* Removed unnecessary generics from Appender interface and implementing classes. (for https://issues.apache.org/jira/browse/LOG4J2-343[LOG4J2-343] by Remko Popma, Henning Schmiedehausen)
+* Give the AsyncAppender thread a more descriptive name for easier debugging/profiling. (for https://issues.apache.org/jira/browse/LOG4J2-347[LOG4J2-347] by Remko Popma, David Phillips)
+* [OSGi] wrong Fragment-Host in manifest files. (for https://issues.apache.org/jira/browse/LOG4J2-351[LOG4J2-351] by Remko Popma, Roland Weiglhofer)
+* NoSQLAppender using MongoDB provider ignores username and password attributes (for https://issues.apache.org/jira/browse/LOG4J2-358[LOG4J2-358] by Nick Williams)
+* Changed the Servlet 3.0 auto-initializer so that it does nothing in a Servlet 2.5 or older application. This ensures behavioral consistency across containers. (for https://issues.apache.org/jira/browse/LOG4J2-359[LOG4J2-359] by Nick Williams, Abhinav Shah)
+* JMS appenders send two messages for one append. (for https://issues.apache.org/jira/browse/LOG4J2-367[LOG4J2-367] by Gary Gregory, David Parry)
+* Add PatternLayout constructor to Log4j 1.2 bridge for Velocity. (for https://issues.apache.org/jira/browse/LOG4J2-368[LOG4J2-368] by Ralph Goers)
+* Use rollover date when substituting ${date} in the filePattern. (for https://issues.apache.org/jira/browse/LOG4J2-380[LOG4J2-380] by Ralph Goers)
+* FlumePersistentManager now handles LockConflictExceptions in Berkeley Db. (for https://issues.apache.org/jira/browse/LOG4J2-391[LOG4J2-391] by Ralph Goers, Kamal Bahadur)
+* Initialize PluginManager once during configuration. Move advertisement setup into BaseConfiguration. (for https://issues.apache.org/jira/browse/LOG4J2-393[LOG4J2-393] by Ralph Goers)
+* Allow classpath scheme when specifying configuration file location as a system property. (for https://issues.apache.org/jira/browse/LOG4J2-395[LOG4J2-395] by Ralph Goers, Abhinav Shah)
+* Logger.info(Message) Javadoc is incorrect. (for https://issues.apache.org/jira/browse/LOG4J2-397[LOG4J2-397] by Gary Gregory, Yonatan Graber)
diff --git a/src/site/_release-notes/_2.0-rc1.adoc b/src/site/_release-notes/_2.0-rc1.adoc
new file mode 100644
index 0000000..5214138
--- /dev/null
+++ b/src/site/_release-notes/_2.0-rc1.adoc
@@ -0,0 +1,100 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.0-rc1 (2014-02-16)
+
+== Changes
+
+=== Added
+
+* Configure FileAppender buffer size. (for https://issues.apache.org/jira/browse/LOG4J2-401[LOG4J2-401] by Gary Gregory)
+* Configure RandomAccessFileAppender buffer size. (for https://issues.apache.org/jira/browse/LOG4J2-402[LOG4J2-402] by Gary Gregory)
+* Format log event time as UNIX time (seconds or milliseconds). (for https://issues.apache.org/jira/browse/LOG4J2-415[LOG4J2-415] by Gary Gregory)
+* Create a lookup for resource bundle substitution. (for https://issues.apache.org/jira/browse/LOG4J2-420[LOG4J2-420] by Gary Gregory)
+* (JMX) Added MBeans for instrumenting AsyncAppenders and AsyncLogger RingBuffers, exposing queue size, remaining capacity and other attributes. (for https://issues.apache.org/jira/browse/LOG4J2-423[LOG4J2-423] by Remko Popma)
+* Added option to toggle Thread name caching in AsyncLogger. (for https://issues.apache.org/jira/browse/LOG4J2-467[LOG4J2-467] by Remko Popma, Anthony Baldocchi)
+* ThreadContext now uses plain ThreadLocal by default, unless system property isThreadContextMapInheritable has value "true". (for https://issues.apache.org/jira/browse/LOG4J2-479[LOG4J2-479] by Remko Popma, MK)
+* Add Stream interface to Loggers. (for https://issues.apache.org/jira/browse/LOG4J2-481[LOG4J2-481] by Ralph Goers, Matt Sicker)
+* Documentation fix: The attribute of Route to refer to an appender is "ref" not "AppenderRef". (for https://issues.apache.org/jira/browse/LOG4J2-482[LOG4J2-482] by Remko Popma, Hongdi Ren)
+* (JMX) JMX Client GUI should dynamically update when LoggerContext MBeans are registered/unregistered in MBean server. (for https://issues.apache.org/jira/browse/LOG4J2-530[LOG4J2-530] by Remko Popma)
+
+=== Changed
+
+* PatternLayout option to not output ANSI escape codes if no Console is available. (for https://issues.apache.org/jira/browse/LOG4J2-413[LOG4J2-413] by Gary Gregory)
+* Add support for custom logging levels. (for https://issues.apache.org/jira/browse/LOG4J2-41[LOG4J2-41] by Ralph Goers, Nick Williams)
+* Update Flume Appender to use Flume 1.4.0. (for https://issues.apache.org/jira/browse/LOG4J2-453[LOG4J2-453] by Ralph Goers)
+* Update EasyMock to version 3.2. (for https://issues.apache.org/jira/browse/LOG4J2-490[LOG4J2-490] by Ralph Goers, Matt Sicker)
+* Space Level numbers by 100 instead of 1. (for https://issues.apache.org/jira/browse/LOG4J2-507[LOG4J2-507] by Gary Gregory)
+* Rename package org.apache.logging.log4j.core.appender.rolling.helper to org.apache.logging.log4j.core.appender.rolling.action. (for https://issues.apache.org/jira/browse/LOG4J2-528[LOG4J2-528] by Gary Gregory)
+* Resource leak in Flume appender when it cannot create a BerkeleyDB db. (for https://issues.apache.org/jira/browse/LOG4J2-532[LOG4J2-532] by Gary Gregory)
+* Renamed the org.apache.logging.log4j.core.appender.db.nosql.couch package to org.apache.logging.log4j.core.appender.db.nosql.couchdb. (for by `grobmeier`)
+
+=== Removed
+
+* Removed the DataSourceConnectionSource and the <DriverManager> plugin for the JDBC Appender. It is not safe to use. Please use the DataSource or factory connection sources backed by a connection pool. (for by Nick Williams)
+
+=== Fixed
+
+* Resolved memory leak by releasing reference to ThreadLocal when AsyncLogger is stopped. (for https://issues.apache.org/jira/browse/LOG4J2-323[LOG4J2-323] by Remko Popma)
+* Changed the Servlet 3.0 auto-initializer to add the filter by class to get around a WebLogic bug. (for https://issues.apache.org/jira/browse/LOG4J2-344[LOG4J2-344] by Nick Williams, Keir Lawson, Tomasz Wladzinski)
+* (OSGi) logging.log4j-1.2-api doesn't export the log4j API 1.2. Dependent bundles can not be resolved. (for https://issues.apache.org/jira/browse/LOG4J2-345[LOG4J2-345] by Remko Popma, Matt Sicker, Roland Weiglhofer)
+* Changed the Servlet 3.0 auto-initializer so that it does nothing in a Servlet 2.5 or older application. This ensures behavioral consistency across containers. This includes additional fixes to abort initialization if a duplicate filter already exists and to check the actual Servlet EFFECTIVE version. (for https://issues.apache.org/jira/browse/LOG4J2-359[LOG4J2-359] by Nick Williams, Abhinav Shah)
+* (OSGi) Fix NPE during shutdown. (for https://issues.apache.org/jira/browse/LOG4J2-377[LOG4J2-377] by Remko Popma, Matt Sicker, Roland Weiglhofer)
+* Fixed issue that prevented Log4J from working in Google App Engine. (for https://issues.apache.org/jira/browse/LOG4J2-379[LOG4J2-379] by Remko Popma)
+* Fixed issues with time-based file rollover (monthly, weekly, hourly and every minute). (for https://issues.apache.org/jira/browse/LOG4J2-385[LOG4J2-385] by Remko Popma, Ace Funk, Porfirio Partida)
+* Stop AsyncLoggerConfig Disruptor thread(s), then AsyncAppender thread(s) first before stopping other appenders. (for https://issues.apache.org/jira/browse/LOG4J2-392[LOG4J2-392] by Remko Popma, ilynaf, Andre Bogus)
+* Configure properties and setup Interpolator before processing rest of configuration. (for https://issues.apache.org/jira/browse/LOG4J2-398[LOG4J2-398] by Ralph Goers)
+* @EnterpriseNumber" was missing in the ID of structured data when RFC5424Layout is used (for https://issues.apache.org/jira/browse/LOG4J2-404[LOG4J2-404] by Ralph Goers, Kamal Bahadur)
+* Configuration was being processed twice at startup. (for https://issues.apache.org/jira/browse/LOG4J2-405[LOG4J2-405] by Ralph Goers)
+* (JMX) Unregister all log4j JMX MBeans when the LoggerContext is stopped to allow web application classes to be GC-ed on undeploy. (for https://issues.apache.org/jira/browse/LOG4J2-406[LOG4J2-406] by Remko Popma, Kerrigan Joseph)
+* Fixed inability to recover from lost database connection in database appenders by connecting (borrowing from pool) on new write internal or on flush. (for https://issues.apache.org/jira/browse/LOG4J2-407[LOG4J2-407] by Nick Williams)
+* Fixed error in documentation code example in manual/eventlogging.html (for https://issues.apache.org/jira/browse/LOG4J2-408[LOG4J2-408] by Remko Popma, Matt Sicker, Dongqing Hu)
+* Created a utility to properly escape backslashes before creating URIs, and changed URI creation to use the utility instead of instantiating URI directly. (for https://issues.apache.org/jira/browse/LOG4J2-409[LOG4J2-409] by Nick Williams, Frank Steinmann, Thomas Neidhart)
+* Fix Event Level / LoggerConfig Level table at the architecture documentation page. (for https://issues.apache.org/jira/browse/LOG4J2-417[LOG4J2-417] by Gary Gregory)
+* Resolved memory leak by populating AsyncLoggerConfigHelper ring buffer via EventTranslatorTwoArg, eliminating the need for a ThreadLocal. (for https://issues.apache.org/jira/browse/LOG4J2-425[LOG4J2-425] by Remko Popma)
+* Use the formatted Message in RFC5424Layout for non-StructuredDataMessages. (for https://issues.apache.org/jira/browse/LOG4J2-430[LOG4J2-430] by Ralph Goers, David Gstir)
+* Ensured the JDBCAppender commits transactions after a single write or a flush of multiple writes. (for https://issues.apache.org/jira/browse/LOG4J2-438[LOG4J2-438] by Nick Williams)
+* Fixed problem with JDBC and JPA appender connectivity in WebSphere by connecting (borrowing from pool) on new write internal or on flush. (for https://issues.apache.org/jira/browse/LOG4J2-442[LOG4J2-442] by Nick Williams)
+* (JMX) Fixed issue where log4j2 LoggerContext did not show up in JMX GUI or JConsole. (for https://issues.apache.org/jira/browse/LOG4J2-443[LOG4J2-443] by Remko Popma, Colin Froggatt, Tudor Har)
+* ResolverUtil cannot find packages in file URLs which include the '+' character. (for https://issues.apache.org/jira/browse/LOG4J2-445[LOG4J2-445] by Remko Popma, Anthony Baldocchi)
+* XMLLayout does not include marker name. (for https://issues.apache.org/jira/browse/LOG4J2-447[LOG4J2-447] by Gary Gregory, Scott Deboy, Jeff Hudren, Mark Paluch)
+* Fixed typo in documentation: system property should be log4j2.loggerContextFactory (for https://issues.apache.org/jira/browse/LOG4J2-451[LOG4J2-451] by Remko Popma, Matt Sicker, Vinay Pothnis)
+* Added a ServletContext attribute that, when set to "true", disables Log4j's auto-initialization in Servlet 3.0+ web applications. (for https://issues.apache.org/jira/browse/LOG4J2-452[LOG4J2-452] by Nick Williams)
+* TimeBasedTriggeringPolicy should use event time millis. (for https://issues.apache.org/jira/browse/LOG4J2-454[LOG4J2-454] by Remko Popma, Robin Zhang Tao)
+* RingBufferLogEvent should return Message timestamp for TimestampMessage messages. (for https://issues.apache.org/jira/browse/LOG4J2-455[LOG4J2-455] by Remko Popma, Robin Zhang Tao)
+* Fixed failure of JDBC and JPA appender to properly release database connections by connecting (borrowing from pool) on new write internal or on flush. (for https://issues.apache.org/jira/browse/LOG4J2-457[LOG4J2-457] by Nick Williams)
+* Set external context when constructing the LoggerContext. (for https://issues.apache.org/jira/browse/LOG4J2-459[LOG4J2-459] by Ralph Goers)
+* Fix LogEvent to never return null Level, fixes LevelPatternConverter.format may throw NPE. (for https://issues.apache.org/jira/browse/LOG4J2-462[LOG4J2-462] by Remko Popma, Daisuke Baba)
+* Fixed documentation for MyApp example application in the Automatic Configuration section (for https://issues.apache.org/jira/browse/LOG4J2-463[LOG4J2-463] by Remko Popma, Matt Sicker, Michael Diamond)
+* Support arrays as sub-elements of a JSON configuration. (for https://issues.apache.org/jira/browse/LOG4J2-464[LOG4J2-464] by Ralph Goers)
+* Fix LogEvent to never return null Level, fixes ThresholdFilter throws NPE. (for https://issues.apache.org/jira/browse/LOG4J2-465[LOG4J2-465] by Remko Popma, Daisuke Baba)
+* Cannot load log4j2 config file if path contains plus '+' characters. (for https://issues.apache.org/jira/browse/LOG4J2-466[LOG4J2-466] by Remko Popma, Jan Tepke)
+* hostName property was not being set until after the first configuration element. (for https://issues.apache.org/jira/browse/LOG4J2-470[LOG4J2-470] by Ralph Goers)
+* Fixed issue where toString methods that perform logging could deadlock AsyncLogger. (for https://issues.apache.org/jira/browse/LOG4J2-471[LOG4J2-471] by Remko Popma, Anthony Baldocchi)
+* BaseConfiguration class does not properly implement Configuration interface. (for https://issues.apache.org/jira/browse/LOG4J2-472[LOG4J2-472] by Remko Popma, Tal Liron)
+* Changed the MongoDBConnection to add a MongoDB encoding hook instead of a decoding hook. (for https://issues.apache.org/jira/browse/LOG4J2-475[LOG4J2-475] by Nick Williams, Matt Sicker)
+* NPE in ClassLoaderContextSelector. (for https://issues.apache.org/jira/browse/LOG4J2-477[LOG4J2-477] by Remko Popma, Tal Liron)
+* The message and ndc fields are not JavaScript escaped in JSONLayout. (for https://issues.apache.org/jira/browse/LOG4J2-478[LOG4J2-478] by Gary Gregory, Michael Friedmann)
+* Fixed issue where toString methods that perform logging could deadlock AsyncAppender. (for https://issues.apache.org/jira/browse/LOG4J2-485[LOG4J2-485] by Remko Popma)
+* Fixed the JPAAppender's overuse of transactions by connecting (borrowing from pool) on new write internal or on flush. (for https://issues.apache.org/jira/browse/LOG4J2-489[LOG4J2-489] by Nick Williams)
+* (JMX) Fixed MalformedObjectNameException if context name contains '=' or newline characters. (for https://issues.apache.org/jira/browse/LOG4J2-492[LOG4J2-492] by Remko Popma, Shaddy Baddah, Herlani Junior)
+* (JMX - ObjectNames changed!) Unloading one web application unloads JMX MBeans for all web applications. (for https://issues.apache.org/jira/browse/LOG4J2-500[LOG4J2-500] by Remko Popma)
+* Stop AsyncLoggerConfig Disruptor thread(s), then AsyncAppender thread(s) first before stopping other appenders. (for https://issues.apache.org/jira/browse/LOG4J2-511[LOG4J2-511] by Remko Popma, James Pretorius)
+* Exposed Log4j web support interface and methods and the LoggerContext through ServletContext attributes so that threads not affected by filters (such as asynchronous threads) can utilize the LoggerContext. Also updated the Log4j filter so that it supports async. (for https://issues.apache.org/jira/browse/LOG4J2-512[LOG4J2-512] by Nick Williams, Matt Sicker, Chandra Sekhar Kakarla)
+* Switch in log4j-1.2-api Category.getEffectiveLevel has no cases for FATAL, OFF. (for https://issues.apache.org/jira/browse/LOG4J2-517[LOG4J2-517] by Remko Popma)
+* LocalizedMessage serialization is broken. (for https://issues.apache.org/jira/browse/LOG4J2-523[LOG4J2-523] by Gary Gregory)
+* Fixed bugs where rolled log files were overwritten by RollingFile appender with composite time and size based policies. (for https://issues.apache.org/jira/browse/LOG4J2-531[LOG4J2-531] by Remko Popma, Geoff Ballinger)
diff --git a/src/site/_release-notes/_2.0-rc2.adoc b/src/site/_release-notes/_2.0-rc2.adoc
new file mode 100644
index 0000000..e420340
--- /dev/null
+++ b/src/site/_release-notes/_2.0-rc2.adoc
@@ -0,0 +1,96 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.0-rc2 (2014-06-21)
+
+== Changes
+
+=== Added
+
+* Add support for configuration via YAML. (for https://issues.apache.org/jira/browse/LOG4J2-427[LOG4J2-427] by Ralph Goers, Alexander Reelsen)
+* Create an appender to route log events to the ServletContext log. (for https://issues.apache.org/jira/browse/LOG4J2-42[LOG4J2-42] by Ralph Goers)
+* Add EncodingPatternConverter to escape newlines and HTML special characters. (for https://issues.apache.org/jira/browse/LOG4J2-439[LOG4J2-439] by Ralph Goers, Bruce Brouwer)
+* Add org.apache.logging.log4j.Logger.getLevel(). (for https://issues.apache.org/jira/browse/LOG4J2-576[LOG4J2-576] by Gary Gregory)
+* Introduce Java annotation processor as the new plugin pre-caching mechanism. This is available in log4j-core. All custom plugins created before this should be re-built against the current log4j-core. (for https://issues.apache.org/jira/browse/LOG4J2-595[LOG4J2-595] by Matt Sicker)
+* Add support for types other than String for plugin factory values/attributes. (for https://issues.apache.org/jira/browse/LOG4J2-598[LOG4J2-598] by Matt Sicker)
+* Document the system properties used in Log4J 2. (for https://issues.apache.org/jira/browse/LOG4J2-629[LOG4J2-629] by Remko Popma)
+* Implement a SecureSocketAppender and secure server (SSL/TLS). (for https://issues.apache.org/jira/browse/LOG4J2-644[LOG4J2-644] by Gary Gregory)
+* Add support for default plugin values and attributes. (for https://issues.apache.org/jira/browse/LOG4J2-652[LOG4J2-652] by Matt Sicker)
+* Add log4j-perf module to provide a home for all log4j performance tests. Add support for JMH microbenchmark performance tests. (for https://issues.apache.org/jira/browse/LOG4J2-654[LOG4J2-654] by Remko Popma)
+* Add Vagrantfile for testing in GNU+Linux. (for https://issues.apache.org/jira/browse/LOG4J2-655[LOG4J2-655] by Matt Sicker)
+* Made RollingFileAppender buffer size configurable. (for https://issues.apache.org/jira/browse/LOG4J2-674[LOG4J2-674] by Remko Popma)
+* RollingFile and RollingRandomAccessFile now write the layout footer before rollover. (for https://issues.apache.org/jira/browse/LOG4J2-675[LOG4J2-675] by Remko Popma)
+
+=== Changed
+
+* Refactor Log4jLogEvent to lazily create ThrowableProxy. (for https://issues.apache.org/jira/browse/LOG4J2-250[LOG4J2-250] by Remko Popma)
+* SLf4JLogger is now Serializable. (for https://issues.apache.org/jira/browse/LOG4J2-410[LOG4J2-410] by Ralph Goers, Ivlin Zeng)
+* Support default value for missing key in look-ups with fallback to looking in the properties map. (for https://issues.apache.org/jira/browse/LOG4J2-419[LOG4J2-419] by Ralph Goers, Woonsan Ko)
+* Add support to add a LoggerConfig. Document two ways to modify the configuration. (for https://issues.apache.org/jira/browse/LOG4J2-468[LOG4J2-468] by Ralph Goers)
+* Allow header and footer to be specified as lookup patterns in PatternLayout. (for https://issues.apache.org/jira/browse/LOG4J2-496[LOG4J2-496] by Ralph Goers)
+* Have Logger API expose a PrintWriter instead of custom LoggerStream. (for https://issues.apache.org/jira/browse/LOG4J2-547[LOG4J2-547] by Ralph Goers, Bruce Brouwer)
+* Allow configuration files to be located as Servlet Context resources. (for https://issues.apache.org/jira/browse/LOG4J2-554[LOG4J2-554] by Ralph Goers)
+* Introduce ExtendedLogger interface to facilitate implementing and extending Loggers. (for https://issues.apache.org/jira/browse/LOG4J2-555[LOG4J2-555] by Remko Popma, Bruce Brouwer)
+* Allow spaces around commas in Configuration's package attribute. (for https://issues.apache.org/jira/browse/LOG4J2-561[LOG4J2-561] by Gary Gregory, vibin)
+* Made RollingRandomAccessFileAppender buffer size configurable. (for https://issues.apache.org/jira/browse/LOG4J2-566[LOG4J2-566] by Remko Popma, Luigi Alice)
+* Make Blocking the default WaitStrategy for Async Loggers. (for https://issues.apache.org/jira/browse/LOG4J2-574[LOG4J2-574] by Remko Popma)
+* Rename org.apache.logging.log4j.core.net.SocketServer to TCPSocketServer and refactor with UDP. (for https://issues.apache.org/jira/browse/LOG4J2-582[LOG4J2-582] by Gary Gregory)
+* Add support for multiple parents to Markers. (for https://issues.apache.org/jira/browse/LOG4J2-585[LOG4J2-585] by Ralph Goers, Bruce Brouwer)
+* Update Jackson to 2.3.2 from 2.2.2. (for https://issues.apache.org/jira/browse/LOG4J2-592[LOG4J2-592] by Gary Gregory)
+* Update Jackson to 2.3.3. (for https://issues.apache.org/jira/browse/LOG4J2-616[LOG4J2-616] by Matt Sicker)
+* Update SLF4J to 1.7.7. (for https://issues.apache.org/jira/browse/LOG4J2-617[LOG4J2-617] by Matt Sicker)
+* Use Clock to generate all log event timestamps, not just for Async Loggers. (for https://issues.apache.org/jira/browse/LOG4J2-628[LOG4J2-628] by Remko Popma)
+* Override commons-logging dependency version in tests. (for https://issues.apache.org/jira/browse/LOG4J2-641[LOG4J2-641] by Matt Sicker)
+* Merge the TLS Syslog appender into the Syslog appender. (for https://issues.apache.org/jira/browse/LOG4J2-646[LOG4J2-646] by Gary Gregory)
+* Upgrade to Flume 1.5.0. (for https://issues.apache.org/jira/browse/LOG4J2-647[LOG4J2-647] by Gary Gregory)
+
+=== Fixed
+
+* Improved documentation regarding log4j status logger. (for https://issues.apache.org/jira/browse/LOG4J2-141[LOG4J2-141] by Remko Popma, Joern Huxhorn)
+* The log4j-1.2-api module didn't export any packages to OSGi. (for https://issues.apache.org/jira/browse/LOG4J2-345[LOG4J2-345] by Matt Sicker)
+* Cyclic dependency with log4j-slf4j-impl in OSGi. (for https://issues.apache.org/jira/browse/LOG4J2-346[LOG4J2-346] by Matt Sicker)
+* Add DateLookup and ThreadContextLookup to default lookups. (for https://issues.apache.org/jira/browse/LOG4J2-378[LOG4J2-378] by Ralph Goers)
+* Resolved a problem with the previous solution for LOG4J2-392 that resulted in dropped events when using AsyncLoggerConfig with slow appenders when application is stopped. (for https://issues.apache.org/jira/browse/LOG4J2-392[LOG4J2-392] by Remko Popma, Andre Bogus)
+* During shutdown, a NullPointerException could be thrown due to the NullConfiguration class no longer being available to the ClassLoader. (for https://issues.apache.org/jira/browse/LOG4J2-440[LOG4J2-440] by Matt Sicker)
+* A StringIndexOutOfBounds exception could occur during property substitution. (for https://issues.apache.org/jira/browse/LOG4J2-448[LOG4J2-448] by Ralph Goers, X86core)
+* FailoverAppender was not resetting its status after the primary appender recovered. (for https://issues.apache.org/jira/browse/LOG4J2-469[LOG4J2-469] by Ralph Goers)
+* Add equals and hashcode to Log4jLogEvent. (for https://issues.apache.org/jira/browse/LOG4J2-499[LOG4J2-499] by Ralph Goers)
+* Resolved issue where AsyncAppender dropped events if queue still contained events when application is stopped. (for https://issues.apache.org/jira/browse/LOG4J2-520[LOG4J2-520] by Remko Popma, JavaTech, Andre Bogus)
+* Reset rollover time when size rollover is triggered. (for https://issues.apache.org/jira/browse/LOG4J2-535[LOG4J2-535] by Ralph Goers)
+* Fixed issue with "Reconfigure using XML below" function in JMX Client GUI. ConfigurationSource is now a top-level class and can be obtained with Configuration.getConfigurationSource(). LoggerContext.getConfiguration().getConfigurationSource() provides a reliable public method for obtaining a logger context's configuration location and content. (for https://issues.apache.org/jira/browse/LOG4J2-539[LOG4J2-539] by Remko Popma, Colin Froggatt)
+* Make Throwable transient in ThrowableProxy. (for https://issues.apache.org/jira/browse/LOG4J2-542[LOG4J2-542] by Ralph Goers)
+* SyslogAppenderTest and RFC5424LayoutTest were failing in Java 8. (for https://issues.apache.org/jira/browse/LOG4J2-560[LOG4J2-560] by Ralph Goers)
+* FlumeAvroManager now always uses a client type of default_failover. (for https://issues.apache.org/jira/browse/LOG4J2-563[LOG4J2-563] by Ralph Goers, Michael Friedmann)
+* Renamed SLF4J logger class to Log4jLogger. (for https://issues.apache.org/jira/browse/LOG4J2-564[LOG4J2-564] by Matt Sicker)
+* Fix shutdown thread memory leak in servlet containers. (for https://issues.apache.org/jira/browse/LOG4J2-570[LOG4J2-570] by Matt Sicker)
+* Rework Level comparison APIs. (for https://issues.apache.org/jira/browse/LOG4J2-579[LOG4J2-579] by Gary Gregory)
+* RollingRandomAccessFile now writes the layout header after rollover. (for https://issues.apache.org/jira/browse/LOG4J2-581[LOG4J2-581] by Remko Popma, Alexander Khokhlov)
+* StatusLogger was not skipping multiple instances of the FQCN class, causing messages from classes in the Verbose list to be printed. (for https://issues.apache.org/jira/browse/LOG4J2-597[LOG4J2-597] by Ralph Goers)
+* Unit tests are now less verbose during the build process. (for https://issues.apache.org/jira/browse/LOG4J2-602[LOG4J2-602] by Ralph Goers)
+* Password data from the NoSQL plugins no longer shows up in cleartext in debug logging. (for https://issues.apache.org/jira/browse/LOG4J2-605[LOG4J2-605] by Matt Sicker)
+* The OSGi version of log4j-web imports Servlet 2.5 at minimum instead of 3.0. (for https://issues.apache.org/jira/browse/LOG4J2-613[LOG4J2-613] by Matt Sicker)
+* Invalid XML configuration files do not prevent the config file from being checked again. (for https://issues.apache.org/jira/browse/LOG4J2-619[LOG4J2-619] by Ralph Goers, Scott Harrington)
+* Perform reconfiguration in a separate thread to prevent deadlocks. (for https://issues.apache.org/jira/browse/LOG4J2-620[LOG4J2-620] by Ralph Goers)
+* RollingFileManager now correctly honours the bufferedIO configuration after rollover. (for https://issues.apache.org/jira/browse/LOG4J2-622[LOG4J2-622] by Remko Popma, Farooq Khan)
+* Generate MDC properties as a JSON map in JSONLayout. (for https://issues.apache.org/jira/browse/LOG4J2-623[LOG4J2-623] by Ralph Goers)
+* JMX: Updating a Logger's level via jConsole now correctly takes effect. (for https://issues.apache.org/jira/browse/LOG4J2-637[LOG4J2-637] by Remko Popma, Mansoor Sajjad, Jon Wilmoth)
+* Prevent NPE in AsyncLogger and AsyncLoggerConfig if logger is used after log4j has been shut down. (for https://issues.apache.org/jira/browse/LOG4J2-639[LOG4J2-639] by Remko Popma, Mck SembWever)
+* Fix NPE that can be caused by a null ThreadContextClassLoader. (for https://issues.apache.org/jira/browse/LOG4J2-640[LOG4J2-640] by Matt Sicker)
+* Log4j 2 throws ArrayIndexOutOfBoundsException. (for https://issues.apache.org/jira/browse/LOG4J2-651[LOG4J2-651] by Gary Gregory)
+* Moved plugin cache file to META-INF for OSGi compatibility. (for https://issues.apache.org/jira/browse/LOG4J2-664[LOG4J2-664] by Matt Sicker)
+* Correctly process log events when combining AsyncLoggers with AsyncAppender. (for https://issues.apache.org/jira/browse/LOG4J2-668[LOG4J2-668] by Remko Popma)
+* Prevent NPE when combining AsyncLoggers with AsyncLoggerConfigs. (for https://issues.apache.org/jira/browse/LOG4J2-669[LOG4J2-669] by Remko Popma)
diff --git a/src/site/_release-notes/_2.0.1.adoc b/src/site/_release-notes/_2.0.1.adoc
new file mode 100644
index 0000000..c0623b7
--- /dev/null
+++ b/src/site/_release-notes/_2.0.1.adoc
@@ -0,0 +1,60 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.0.1 (2014-07-29)
+
+This is the first patch release of Log4j 2.0 which contains numerous bug fixes.
+
+Apache Log4j 2.0.1 requires a minimum of Java 6 to build and run.
+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 http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Added
+
+* Added documentation for Custom Levels and Custom Loggers. (for https://issues.apache.org/jira/browse/LOG4J2-710[LOG4J2-710] by Remko Popma)
+* Added WebLoggerContextUtils class to log4j-web for helper methods useful for asynchronous servlets. (for https://issues.apache.org/jira/browse/LOG4J2-725[LOG4J2-725] by Matt Sicker)
+
+=== Changed
+
+* Update to LMAX Disruptor 3.3.0 from 3.2.1. (for https://issues.apache.org/jira/browse/LOG4J2-732[LOG4J2-732] by Gary Gregory)
+* Update to latest Jackson jars from the 2.4.1.X line. (for https://issues.apache.org/jira/browse/LOG4J2-733[LOG4J2-733] by Gary Gregory)
+
+=== Fixed
+
+* Fixed ClassLoader issues in loading Log4j providers in an OSGi environment. (for https://issues.apache.org/jira/browse/LOG4J2-373[LOG4J2-373] by Matt Sicker)
+* Fixed AbstractDatabaseManager to close connection on writeInternal error. (for https://issues.apache.org/jira/browse/LOG4J2-657[LOG4J2-657] by Remko Popma, Stefan Wehner)
+* DatePatternConverter ISO8601_PATTERN now conforms to ISO8601. (for https://issues.apache.org/jira/browse/LOG4J2-670[LOG4J2-670] by Remko Popma)
+* Android: Could not find class 'javax.naming.InitialContext', referenced from method org.apache.logging.log4j.core.lookup.JndiLookup.lookup. (for https://issues.apache.org/jira/browse/LOG4J2-703[LOG4J2-703] by Gary Gregory, Nelson Melina)
+* Improved error message if configuration file not found. (for https://issues.apache.org/jira/browse/LOG4J2-704[LOG4J2-704] by Remko Popma)
+* Android: java.lang.VerifyError: org/apache/logging/log4j/core/util/Closer (for https://issues.apache.org/jira/browse/LOG4J2-713[LOG4J2-713] by Gary Gregory, Nelson Melina)
+* Automatically disable log4j JMX when detecting we are running on Android. (for https://issues.apache.org/jira/browse/LOG4J2-716[LOG4J2-716] by Remko Popma)
+* Correctly handle NetworkOnMainThreadException thrown on Android during Log4j2 initialization. (for https://issues.apache.org/jira/browse/LOG4J2-719[LOG4J2-719] by Remko Popma)
+* Updated documentation regarding extensions to LoggerContextFactory and Log4j 2 providers. (for https://issues.apache.org/jira/browse/LOG4J2-731[LOG4J2-731] by Matt Sicker)
+* Fixed log4j-bom so that it won't interfere with spring-bom and others. (for https://issues.apache.org/jira/browse/LOG4J2-735[LOG4J2-735] by Matt Sicker)
+* Fixed log4j-bom so that it won't specify a default scope on any third party dependencies. (for https://issues.apache.org/jira/browse/LOG4J2-736[LOG4J2-736] by Matt Sicker)
+* RollingFileManager deadlock if async action thread fails to start. (for https://issues.apache.org/jira/browse/LOG4J2-738[LOG4J2-738] by Gary Gregory, Timothy Stack)
+* Fixed typo in webapp manual regarding sample web.xml file. (for https://issues.apache.org/jira/browse/LOG4J2-740[LOG4J2-740] by Matt Sicker, Kosta Krauth)
+* Reinstate the package configuration attribute for discovering custom plugins. (for https://issues.apache.org/jira/browse/LOG4J2-741[LOG4J2-741] by Remko Popma)
+* XInclude not working with relative path. (for https://issues.apache.org/jira/browse/LOG4J2-742[LOG4J2-742] by Gary Gregory, Pascal Chollet)
+* Avoid unnecessary Clock calls when TimestampMessage is logged. (for https://issues.apache.org/jira/browse/LOG4J2-744[LOG4J2-744] by Remko Popma, Scott Harrington)
+* Retain the default date pattern after fixing the ISO8601 pattern. (for https://issues.apache.org/jira/browse/LOG4J2-749[LOG4J2-749] by Remko Popma, Scott Harrington)
+* Webapp configuration page has incorrect class name. (for https://issues.apache.org/jira/browse/LOG4J2-750[LOG4J2-750] by Gary Gregory, Mike Calmus)
diff --git a/src/site/_release-notes/_2.0.2.adoc b/src/site/_release-notes/_2.0.2.adoc
new file mode 100644
index 0000000..95edd05
--- /dev/null
+++ b/src/site/_release-notes/_2.0.2.adoc
@@ -0,0 +1,49 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.0.2 (2014-08-16)
+
+This is the third GA release which contains several bugfixes from the previous release.
+
+Apache Log4j 2.0.2 requires a minimum of Java 6 to build and run.
+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 http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Changed
+
+* Allow Log4jContextFactory subclasses to specify a custom ContextSelector. (for https://issues.apache.org/jira/browse/LOG4J2-730[LOG4J2-730] by Remko Popma)
+* Update Apache Flume to 1.5.0.1 from 1.5.0. (for https://issues.apache.org/jira/browse/LOG4J2-775[LOG4J2-775] by Gary Gregory)
+
+=== Fixed
+
+* Resolved race condition that caused log file rotation to fail with error: "Unable to create directory ..." (for https://issues.apache.org/jira/browse/LOG4J2-679[LOG4J2-679] by Remko Popma)
+* Clarified in documentation that Commons Logging jar is required when using log4j-jcl. (for https://issues.apache.org/jira/browse/LOG4J2-722[LOG4J2-722] by Remko Popma)
+* Clarified in documentation that SLF4J API jar is required when using log4j-slf4j-impl. (for https://issues.apache.org/jira/browse/LOG4J2-723[LOG4J2-723] by Remko Popma)
+* Prevent application from hanging when PatternLayout configuration has opening '{' but no closing '}'. (for https://issues.apache.org/jira/browse/LOG4J2-726[LOG4J2-726] by Remko Popma)
+* Emit warning message to console if no configuration file found. (for https://issues.apache.org/jira/browse/LOG4J2-729[LOG4J2-729] by Remko Popma)
+* Prevent JUnit test from creating unnecessary Log4j2Plugins.dat during build. (for https://issues.apache.org/jira/browse/LOG4J2-756[LOG4J2-756] by Remko Popma, Scott Harrington)
+* Fixed various minor site/documentation issues, mostly versioning related. (for https://issues.apache.org/jira/browse/LOG4J2-759[LOG4J2-759] by Remko Popma)
+* Documentation improvement: link to dependency tree from log4j-core component page, link to log4j-core component page from FAQ page. (for https://issues.apache.org/jira/browse/LOG4J2-760[LOG4J2-760] by Remko Popma)
+* Improved asynchronous loggers and appenders to ensure the formatted message does not change even if parameters are modified by the application. (ParameterizedMessage was already safe.) Improved documentation. (for https://issues.apache.org/jira/browse/LOG4J2-763[LOG4J2-763] by Remko Popma, Stephen Connolly)
+* Improve warning message when missing log4j-core in the classpath. (for https://issues.apache.org/jira/browse/LOG4J2-765[LOG4J2-765] by Remko Popma)
+* Startup takes a long time if you have empty packages attribute. (for https://issues.apache.org/jira/browse/LOG4J2-769[LOG4J2-769] by Remko Popma, Scott Harrington)
+* Site: log4j-core component pages were still using the old logo. (for https://issues.apache.org/jira/browse/LOG4J2-773[LOG4J2-773] by Remko Popma)
diff --git a/src/site/_release-notes/_2.0.adoc b/src/site/_release-notes/_2.0.adoc
new file mode 100644
index 0000000..aa04397
--- /dev/null
+++ b/src/site/_release-notes/_2.0.adoc
@@ -0,0 +1,59 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.0 (2014-07-12)
+
+This is the first GA release, after thirteen prior releases over the last 4 years.
+
+Apache Log4j 2.0 requires a minimum of Java 6 to build and run.
+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 http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Added
+
+* Added support for generating custom logger wrappers that replace the existing log levels and extended logger wrappers that add custom log levels to the existing ones. (for https://issues.apache.org/jira/browse/LOG4J2-519[LOG4J2-519] by Remko Popma)
+* RegexFilter does not match multiline log messages. (for https://issues.apache.org/jira/browse/LOG4J2-696[LOG4J2-696] by Gary Gregory)
+
+=== Changed
+
+* Make org.apache.logging.log4j.core.layout.AbstractLayout immutable. (for https://issues.apache.org/jira/browse/LOG4J2-685[LOG4J2-685] by Gary Gregory)
+* Update Jackson to 2.4.1. (for https://issues.apache.org/jira/browse/LOG4J2-689[LOG4J2-689] by Gary Gregory)
+* Update Apache Commons Logging to 1.2 from 1.1.3. (for https://issues.apache.org/jira/browse/LOG4J2-709[LOG4J2-709] by Gary Gregory)
+
+=== Fixed
+
+* LoggerConfigs with no Level now inherit the Level from their parent. (for https://issues.apache.org/jira/browse/LOG4J2-441[LOG4J2-441] by Ralph Goers)
+* JMX GUI: fixed occasional ArrayIndexOutOfBoundsException after pressing "reconfigure with XML below". (Fixed in RC2, but wasn't included in release notes.) (for https://issues.apache.org/jira/browse/LOG4J2-538[LOG4J2-538] by Remko Popma)
+* Fixed Serialization error with SocketAppender and Async Loggers. (Fixed in RC2, but wasn't included in release notes.) (for https://issues.apache.org/jira/browse/LOG4J2-625[LOG4J2-625] by Remko Popma)
+* Update docs to clarify how to use formatter logger and standard logger together. (for https://issues.apache.org/jira/browse/LOG4J2-631[LOG4J2-631] by Remko Popma)
+* AsyncLoggerContextSelector should ensure that different AsyncLoggerContext objects created by web app classloaders have unique names. (for https://issues.apache.org/jira/browse/LOG4J2-666[LOG4J2-666] by Remko Popma)
+* Special characters (tab and so on) in PatternLayout do not work. (for https://issues.apache.org/jira/browse/LOG4J2-682[LOG4J2-682] by Gary Gregory, Scott Harrington)
+* Fix annotation processor warnings on JDK 1.7+. (for https://issues.apache.org/jira/browse/LOG4J2-683[LOG4J2-683] by Matt Sicker, Jurriaan Mous)
+* Core's OptionConverter support for \b is broken (affects PatternLayout). (for https://issues.apache.org/jira/browse/LOG4J2-686[LOG4J2-686] by Gary Gregory)
+* Rename org.apache.logging.log4j.core.util.Closer.closeSilent() to closeSilently(). (for https://issues.apache.org/jira/browse/LOG4J2-687[LOG4J2-687] by Gary Gregory)
+* Make org.apache.logging.log4j.core.layout.PatternLayout immutable. (for https://issues.apache.org/jira/browse/LOG4J2-688[LOG4J2-688] by Gary Gregory)
+* Log4j Web test dependencies should be in scope "test" in the pom. (for https://issues.apache.org/jira/browse/LOG4J2-690[LOG4J2-690] by Ralph Goers, Philip Helger)
+* Update documentation to specify only Maven 3 is supported. (for https://issues.apache.org/jira/browse/LOG4J2-692[LOG4J2-692] by Ralph Goers)
+* Fix strange compilation error that popped up in a test class. (for https://issues.apache.org/jira/browse/LOG4J2-694[LOG4J2-694] by Matt Sicker)
+* PatternLayout manual page missing documentation on header/footer. (for https://issues.apache.org/jira/browse/LOG4J2-699[LOG4J2-699] by Remko Popma)
+* Fixed issue where Async Logger does not log thread context stack data. API change: added method getImmutableStackOrNull() to ThreadContext.ContextStack interface. (for https://issues.apache.org/jira/browse/LOG4J2-705[LOG4J2-705] by Remko Popma)
+* Some exceptions are not logged when configuration problems are detected. (for https://issues.apache.org/jira/browse/LOG4J2-707[LOG4J2-707] by Gary Gregory)
diff --git a/src/site/_release-notes/_2.1.adoc b/src/site/_release-notes/_2.1.adoc
new file mode 100644
index 0000000..fc3d5fc
--- /dev/null
+++ b/src/site/_release-notes/_2.1.adoc
@@ -0,0 +1,95 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.1 (2014-10-19)
+
+This is the fourth GA release which contains several bugfixes and new features.
+There are two new Maven artifacts in this release: `log4j-jul` and `log4j-iostreams`.
+Both components are API-based with optional Core features.
+
+Apache Log4j 2.1 requires a minimum of Java 6 to build and run.
+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 http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Added
+
+* Implement a GELF layout. (for https://issues.apache.org/jira/browse/LOG4J2-428[LOG4J2-428] by Gary Gregory, Mikael Ståldal, Mark Paluch)
+* Added Memory-Mapped File Appender. (for https://issues.apache.org/jira/browse/LOG4J2-431[LOG4J2-431] by Remko Popma, Claude Mamo)
+* Add the Log4j IOStreams component. (for https://issues.apache.org/jira/browse/LOG4J2-547[LOG4J2-547] by Matt Sicker)
+* Supported filtering on custom log levels in configuration. (for https://issues.apache.org/jira/browse/LOG4J2-589[LOG4J2-589] by Remko Popma)
+* Add java.util.logging implementation based on log4j-api. See log4j-jul documentation for more details. (for https://issues.apache.org/jira/browse/LOG4J2-608[LOG4J2-608] by Matt Sicker)
+* Add lookup for application main arguments. (for https://issues.apache.org/jira/browse/LOG4J2-771[LOG4J2-771] by Gary Gregory)
+* Add lookup for JVM arguments. (for https://issues.apache.org/jira/browse/LOG4J2-787[LOG4J2-787] by Gary Gregory)
+* Add support for custom SLF4J Markers in log4j-slf4j-impl module. (for https://issues.apache.org/jira/browse/LOG4J2-793[LOG4J2-793] by Matt Sicker)
+* Move reflection utility class to API's private utility classes. (for https://issues.apache.org/jira/browse/LOG4J2-809[LOG4J2-809] by Matt Sicker)
+* Documentation: added section on XInclude to user manual Configuration page. (for https://issues.apache.org/jira/browse/LOG4J2-816[LOG4J2-816] by Remko Popma)
+* Add simple validation constraint annotations for the Plugin system. (for https://issues.apache.org/jira/browse/LOG4J2-825[LOG4J2-825] by Matt Sicker)
+* Support use of TypeConverter classes through the standard Plugin system. (for https://issues.apache.org/jira/browse/LOG4J2-827[LOG4J2-827] by Matt Sicker)
+* Documentation: added Runtime Dependencies link to left nav-bar on site. (for https://issues.apache.org/jira/browse/LOG4J2-833[LOG4J2-833] by Remko Popma)
+* Add a Java lookup to provide nicely formatted runtime version information. (for https://issues.apache.org/jira/browse/LOG4J2-848[LOG4J2-848] by Gary Gregory)
+* Documentation: add sections on the JUL Adapter, IO Streams and NoSQL Appenders to the Maven and Ivy page. (for https://issues.apache.org/jira/browse/LOG4J2-856[LOG4J2-856] by Remko Popma)
+* Add ShutdownCallbackRegistry interface for customizable shutdown callback handling. This is particularly useful for application servers that wish to integrate with Log4j 2. (for https://issues.apache.org/jira/browse/LOG4J2-868[LOG4J2-868] by Matt Sicker)
+
+=== Changed
+
+* Incomplete documentation for JSONLayout. (for https://issues.apache.org/jira/browse/LOG4J2-766[LOG4J2-766] by Gary Gregory, Bruno P. Kinoshita)
+* Update Spring Framework to 3.2.11.RELEASE from 3.2.8.RELEASE. (for https://issues.apache.org/jira/browse/LOG4J2-780[LOG4J2-780] by Matt Sicker)
+* Update Jackson to 2.4.2 from 2.4.1 (for XML and JSON processing). (for https://issues.apache.org/jira/browse/LOG4J2-790[LOG4J2-790] by Gary Gregory)
+* All life cycle implementations should be serializable. This is still work in progress. (for https://issues.apache.org/jira/browse/LOG4J2-800[LOG4J2-800] by Gary Gregory)
+* org.apache.logging.log4j.core.Logger should be serializable. This is still work in progress. (for https://issues.apache.org/jira/browse/LOG4J2-801[LOG4J2-801] by Gary Gregory)
+* Update javax.mail to 1.5.2 from 1.5.0. (for https://issues.apache.org/jira/browse/LOG4J2-810[LOG4J2-810] by Gary Gregory)
+* Unify the two JMS appenders into a single appender. Configurations written for 2.0 will still work in 2.1+. (for https://issues.apache.org/jira/browse/LOG4J2-815[LOG4J2-815] by Matt Sicker)
+* Update org.eclipse.persistence.jpa to 2.5.2 from 2.5.1. (for https://issues.apache.org/jira/browse/LOG4J2-822[LOG4J2-822] by Gary Gregory)
+* Documentation: updated FAQ "which jars" diagrams for JUL bridge and 2.1 version. (for https://issues.apache.org/jira/browse/LOG4J2-831[LOG4J2-831] by Remko Popma)
+* Update JMH to 1.1 from 0.7.2. (for https://issues.apache.org/jira/browse/LOG4J2-844[LOG4J2-844] by Remko Popma)
+* Add 2.1.0 to compatible versions in Log4j API ProviderUtil and update Log4jAPIVersion to 2.1.0 in core META-INF/log4j-provider.properties. (for https://issues.apache.org/jira/browse/LOG4J2-845[LOG4J2-845] by Matt Sicker)
+* FlumeAppender: maxDelay not in seconds, but milliseconds. Add time scale to some settings, for example maxDelayMillis instead of maxDelay. The old names are aliased for compatibility. (for https://issues.apache.org/jira/browse/LOG4J2-867[LOG4J2-867] by Gary Gregory)
+
+=== Fixed
+
+* FlumePersistentManager now handles LockConflictExceptions in Berkeley Db when sending a batch. (for https://issues.apache.org/jira/browse/LOG4J2-391[LOG4J2-391] by Ralph Goers, Kamal Bahadur)
+* Fix OSGi Import-Package problem with the JMS API. (for https://issues.apache.org/jira/browse/LOG4J2-663[LOG4J2-663] by Matt Sicker, Florian Brunner)
+* Some typo fixes and enhancements for the site. (for https://issues.apache.org/jira/browse/LOG4J2-676[LOG4J2-676] by Ralph Goers, Stefan Bodewig)
+* Documentation: fixed minor issues with Log4j2 website/documentation. (for https://issues.apache.org/jira/browse/LOG4J2-678[LOG4J2-678] by Remko Popma, Matt Sicker)
+* Avoid ConverterKey plugin clashes by using a more predictable plugin loading infrastructure. Plugins have been segmented into three parts: class path, user-specified packages, and OSGi bundles. (for https://issues.apache.org/jira/browse/LOG4J2-745[LOG4J2-745] by Matt Sicker, Scott Harrington)
+* Reduced CachedClock thread contention. (for https://issues.apache.org/jira/browse/LOG4J2-753[LOG4J2-753] by Remko Popma)
+* Remove invalid Oracle Maven repository. (for https://issues.apache.org/jira/browse/LOG4J2-782[LOG4J2-782] by Matt Sicker)
+* PatternLayout should use platform character encoding by default, not UTF-8. (for https://issues.apache.org/jira/browse/LOG4J2-783[LOG4J2-783] by Remko Popma, Minglei Lee)
+* Documentation: fixed capitalization inconsistency in user manual example config. (for https://issues.apache.org/jira/browse/LOG4J2-785[LOG4J2-785] by Remko Popma)
+* Fixed issue where log4j-to-slf4j did not work correctly with SLF4J Simple Logger. (for https://issues.apache.org/jira/browse/LOG4J2-796[LOG4J2-796] by Remko Popma)
+* Documentation: clarified why log4j-core is a compile-time dependency in Maven and Ivy page. (for https://issues.apache.org/jira/browse/LOG4J2-797[LOG4J2-797] by Remko Popma, Andreas Rytina)
+* Fixed plugin scanning redundancy causing massive slowdowns in certain environments. (for https://issues.apache.org/jira/browse/LOG4J2-798[LOG4J2-798] by Matt Sicker, Scott Harrington)
+* Prevent NPE when configuration with AsyncLogger/AsyncRoot is reloaded. (for https://issues.apache.org/jira/browse/LOG4J2-807[LOG4J2-807] by Remko Popma)
+* SimpleLogger throws ArrayIndexOutOfBoundsException for an empty array. (for https://issues.apache.org/jira/browse/LOG4J2-811[LOG4J2-811] by Gary Gregory, Yogesh Rao)
+* MarkerManager Log4jMarker.hasParents() returns opposite of correct result. (for https://issues.apache.org/jira/browse/LOG4J2-813[LOG4J2-813] by Gary Gregory, David Erichsen, Brandon Barry)
+* Fixed memory leak in Tomcat 6 caused by clock background threads unintentionally started by Tomcat after web application stop. (for https://issues.apache.org/jira/browse/LOG4J2-819[LOG4J2-819] by Matt Sicker, Gary Gregory)
+* Fixed issue in RollingFile filePattern: backslashes are path separators, not escape characters. (for https://issues.apache.org/jira/browse/LOG4J2-829[LOG4J2-829] by Remko Popma)
+* Respect external interrupt signal to allow application shutdown after joining AsyncAppender thread. (for https://issues.apache.org/jira/browse/LOG4J2-830[LOG4J2-830] by Remko Popma)
+* ThrowableProxy fails if a class in logged stack trace throws java.lang.Error from initializer (for https://issues.apache.org/jira/browse/LOG4J2-832[LOG4J2-832] by Gary Gregory, Seth Leger)
+* Migrate JdbcH2AppenderTest JUnit performance test to log4j-perf. (for https://issues.apache.org/jira/browse/LOG4J2-840[LOG4J2-840] by Remko Popma)
+* Migrate JdbcHyperSqlAppenderTest JUnit performance test to log4j-perf. (for https://issues.apache.org/jira/browse/LOG4J2-841[LOG4J2-841] by Remko Popma)
+* Migrate JpaH2AppenderTest JUnit performance test to log4j-perf. (for https://issues.apache.org/jira/browse/LOG4J2-842[LOG4J2-842] by Remko Popma)
+* Migrate JpaHyperSqlAppenderTest JUnit performance test to log4j-perf. (for https://issues.apache.org/jira/browse/LOG4J2-843[LOG4J2-843] by Remko Popma)
+* Documentation: fix broken links on Appenders manual page. (for https://issues.apache.org/jira/browse/LOG4J2-855[LOG4J2-855] by Remko Popma)
+* Documentation: fix broken links on left navigation Extending Log4j Configuration sub-menu. (for https://issues.apache.org/jira/browse/LOG4J2-861[LOG4J2-861] by Remko Popma)
+* Fixed classloader issue that prevented Log4j from finding the implementation when used in a custom Ant task. (for https://issues.apache.org/jira/browse/LOG4J2-862[LOG4J2-862] by Matt Sicker, Michael Sutherland)
+* Documentation: fixed missing closing parenthesis in code example. (for https://issues.apache.org/jira/browse/LOG4J2-866[LOG4J2-866] by Remko Popma, Gerard Weatherby)
diff --git a/src/site/_release-notes/_2.10.0.adoc b/src/site/_release-notes/_2.10.0.adoc
new file mode 100644
index 0000000..d156610
--- /dev/null
+++ b/src/site/_release-notes/_2.10.0.adoc
@@ -0,0 +1,139 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.10.0 (2017-11-18)
+
+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 Java 9 module while the other Log4j jars are Java 9 named automatic modules.
+
+This release supports both SLF4J 1.7.x and SLF4J 1.8.x.
+Because SLF4J 1.7.x requires implementations to include classes in the `org.slf4j.impl` package `log4j-sl4j-impl` cannot be used as a Java 9 module.
+Support for SLF4J 1.7.x will be removed in a future release.
+
+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.
+
+During testing of the release it was found that one unit test fails when run on Windows.
+When building from source either use `mvn clean install -DskipTests` on Windows or run the build on a different operating system.
+The unit test failure is a problem in the test, not in Log4j.
+As always, pre-built distributions can be downloaded from http://www.apache.org/dist/logging/log4j/[] or the binaries JARs may be obtained from the Maven central repository.
+
+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:
+
+[source,xml]
+----
+<Appenders>
+  <Socket name="socket" host="localhost" port="9500"/>
+</Appenders>
+----
+
+into:
+
+[source,xml]
+----
+<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:
+
+[source,xml]
+----
+<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.10.0 API, as well as many core components, maintains binary compatibility with previous releases.
+
+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 http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Added
+
+* Allow filtering of line breaks in layout pattern. (for https://issues.apache.org/jira/browse/LOG4J2-1203[LOG4J2-1203] by Mikael Ståldal, Robert Turner)
+* Simplify log4j system property naming scheme. (for https://issues.apache.org/jira/browse/LOG4J2-1431[LOG4J2-1431] by Matt Sicker)
+* Add fields with fixed values to JSON/XML/YAML layouts. (for https://issues.apache.org/jira/browse/LOG4J2-1694[LOG4J2-1694] by Mikael Ståldal, Michal Dvořák)
+* Add global configuration environment SPI. (for https://issues.apache.org/jira/browse/LOG4J2-1809[LOG4J2-1809] by Matt Sicker)
+* 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. (for https://issues.apache.org/jira/browse/LOG4J2-2054[LOG4J2-2054] by Remko Popma)
+* Modularize Log4j-api and make most other log4j jars automatic modules. (for https://issues.apache.org/jira/browse/LOG4J2-2056[LOG4J2-2056] by Ralph Goers)
+* Add possibility of sending the key of a message to Kafka using KafkaAppender. (for https://issues.apache.org/jira/browse/LOG4J2-2062[LOG4J2-2062] by Mikael Ståldal, Jorge Sanchez)
+* Add org.apache.logging.log4j.core.config.composite.CompositeConfiguration#toString(). (for https://issues.apache.org/jira/browse/LOG4J2-2071[LOG4J2-2071] by Gary Gregory, Carter Kozak)
+* Add a noop AppenderSkeleton for applications still using Log4j 1.x. (for https://issues.apache.org/jira/browse/LOG4J2-2098[LOG4J2-2098] by Ralph Goers)
+* XML encoding for PatternLayout. (for https://issues.apache.org/jira/browse/LOG4J2-2103[LOG4J2-2103] by Mikael Ståldal)
+* Add property to disable message pattern converter lookups. (for https://issues.apache.org/jira/browse/LOG4J2-2109[LOG4J2-2109] by Mikael Ståldal, Carter Douglas Kozak)
+* MapMessage should use deep toString for values. (for https://issues.apache.org/jira/browse/LOG4J2-2112[LOG4J2-2112] by Mikael Ståldal, Carter Douglas Kozak)
+* Provide a native Log4j 2 implementation of Eclipse Jetty's org.eclipse.jetty.util.log.Logger. (for https://issues.apache.org/jira/browse/LOG4J2-2114[LOG4J2-2114] by Gary Gregory)
+* Properly escape newlines and other control characters in JSON. (for https://issues.apache.org/jira/browse/LOG4J2-2120[LOG4J2-2120] by Mikael Ståldal, Carter Douglas Kozak)
+
+=== Changed
+
+* Update classes in org.apache.logging.log4j.core.net.ssl in APIs from String to a PasswordProvider producing char[] for passwords. (for https://issues.apache.org/jira/browse/LOG4J2-1896[LOG4J2-1896] by Remko Popma)
+* Provide support for overriding the Tomcat Log class in Tomcat 8.5+. (for https://issues.apache.org/jira/browse/LOG4J2-2025[LOG4J2-2025] by Ralph Goers)
+* Disable thread name caching by default when running on Java 8u102 or later. (for https://issues.apache.org/jira/browse/LOG4J2-2052[LOG4J2-2052] by Remko Popma)
+* Support new SLF4J binding mechanism introduced in SLF4J 1.8. (for https://issues.apache.org/jira/browse/LOG4J2-2057[LOG4J2-2057] by Ralph Goers)
+* Split up log4j-nosql into one module per appender. (for https://issues.apache.org/jira/browse/LOG4J2-2076[LOG4J2-2076] by Mikael Ståldal)
+* Update from Jackson 2.9.1 to 2.9.2. (for https://issues.apache.org/jira/browse/LOG4J2-2077[LOG4J2-2077] by Gary Gregory)
+* Update LMAX disruptor from 3.3.6 to 3.3.7. (for https://issues.apache.org/jira/browse/LOG4J2-2078[LOG4J2-2078] by Gary Gregory)
+* Update Apache Commons Compress from 1.14 to 1.15. (for https://issues.apache.org/jira/browse/LOG4J2-2081[LOG4J2-2081] by Gary Gregory)
+* Upgrade picocli to 2.0.3 from 0.9.8. (for https://issues.apache.org/jira/browse/LOG4J2-2088[LOG4J2-2088] by Remko Popma)
+* [TagLib] Update servlet-api provided dependency from 2.5 to 3.0.1. (for https://issues.apache.org/jira/browse/LOG4J2-2089[LOG4J2-2089] by Gary Gregory)
+* Update Apache Kafka kafka-clients from 0.11.0.1 to 1.0.0. (for https://issues.apache.org/jira/browse/LOG4J2-2096[LOG4J2-2096] by Gary Gregory)
+* Jackson dependencies for 2.9.2 incorrectly bring in jackson-annotations 2.9.0 instead of 2.9.2. (for https://issues.apache.org/jira/browse/LOG4J2-2117[LOG4J2-2117] by Gary Gregory)
+
+=== Fixed
+
+* Nested pattern layout options broken. (for https://issues.apache.org/jira/browse/LOG4J2-1216[LOG4J2-1216] by Gary Gregory, Thies Wellpott, Barna Zsombor Klara, `GFriedrich`)
+* 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. (for https://issues.apache.org/jira/browse/LOG4J2-2031[LOG4J2-2031] by Remko Popma)
+* CompositeConfiguration supports Reconfiguration. PR #115. (for https://issues.apache.org/jira/browse/LOG4J2-2036[LOG4J2-2036] by Gary Gregory, Robert Haycock)
+* Exception java.nio.charset.UnsupportedCharsetException: cp65001 in 2.9.0. (for https://issues.apache.org/jira/browse/LOG4J2-2053[LOG4J2-2053] by Gary Gregory)
+* If Log4j is used as the Tomcat logging implementation startup might fail if an application also uses Log4j. (for https://issues.apache.org/jira/browse/LOG4J2-2055[LOG4J2-2055] by Ralph Goers)
+* AbstractDatabaseManager should make a copy of LogEvents before holding references to them: AsyncLogger log events are mutable. (for https://issues.apache.org/jira/browse/LOG4J2-2060[LOG4J2-2060] by Remko Popma)
+* Log4j1XmlLayout does not provide the entire stack trace, it is missing the caused by information. (for https://issues.apache.org/jira/browse/LOG4J2-2070[LOG4J2-2070] by Gary Gregory, Doug Hughes)
+* Log4j-config.xsd should make AppenderRef optional for each Logger element. (for https://issues.apache.org/jira/browse/LOG4J2-2073[LOG4J2-2073] by Gary Gregory, Patrick Lucas)
+* The console appender should say why it cannot load JAnsi. (for https://issues.apache.org/jira/browse/LOG4J2-2074[LOG4J2-2074] by Gary Gregory)
+* Wrong Apache Commons CSV version referenced in the Javadoc of CsvParameterLayout. (for https://issues.apache.org/jira/browse/LOG4J2-2085[LOG4J2-2085] by Gary Gregory, István Neuwirth)
+* 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. (for https://issues.apache.org/jira/browse/LOG4J2-2087[LOG4J2-2087] by Remko Popma, Andy Gumbrecht)
+* Log4j respects the configured "log4j2.is.webapp" property (for https://issues.apache.org/jira/browse/LOG4J2-2091[LOG4J2-2091] by Mikael Ståldal, Carter Douglas Kozak)
+* LevelMixIn class for Jackson is coded incorrectly (for https://issues.apache.org/jira/browse/LOG4J2-2100[LOG4J2-2100] by Gary Gregory)
+* Non-string value in MapMessage caused ClassCastException. (for https://issues.apache.org/jira/browse/LOG4J2-2101[LOG4J2-2101] by Mikael Ståldal, Carter Douglas Kozak)
+* MapMessage JSON encoding will escape keys and values. (for https://issues.apache.org/jira/browse/LOG4J2-2102[LOG4J2-2102] by Mikael Ståldal, Carter Douglas Kozak)
+* MapMessage supports both StringBuilderFormattable and MultiFormatMessage. (for https://issues.apache.org/jira/browse/LOG4J2-2107[LOG4J2-2107] by Mikael Ståldal, Carter Douglas Kozak)
+* XML Schema for DynamicFilterThreshold does not accept multiple KeyValuePairs. (for https://issues.apache.org/jira/browse/LOG4J2-2289[LOG4J2-2289] by Gary Gregory, Hari Menon)
diff --git a/src/site/_release-notes/_2.11.0.adoc b/src/site/_release-notes/_2.11.0.adoc
new file mode 100644
index 0000000..bdaf8d9
--- /dev/null
+++ b/src/site/_release-notes/_2.11.0.adoc
@@ -0,0 +1,182 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.11.0 (2018-03-11)
+
+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:
+
+[source,xml]
+----
+<Appenders>
+  <Socket name="socket" host="localhost" port="9500"/>
+</Appenders>
+----
+
+into:
+
+[source,xml]
+----
+<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:
+
+[source,xml]
+----
+<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`
+
+Log4j 2.11.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 http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Added
+
+* Added support for precise (micro and nanosecond) timestamps when running on Java 9. A limited number of precise %d date formats are supported with PatternLayout. POTENTIAL BREAKING CHANGE: The XML, JSON and YAML formats have changed: they no longer have the "timeMillis" attribute and instead have an "Instant" element with "epochSecond" and "nanoOfSecond" attributes. (for https://issues.apache.org/jira/browse/LOG4J2-1883[LOG4J2-1883] by Remko Popma, Anthony Maire)
+* Add missing converters to PatternLayout. (for https://issues.apache.org/jira/browse/LOG4J2-2143[LOG4J2-2143] by Mikael Ståldal)
+* Add API org.apache.logging.log4j.core.lookup.Interpolator.getStrLookupMap(). (for https://issues.apache.org/jira/browse/LOG4J2-2160[LOG4J2-2160] by Gary Gregory)
+* The MongoDB Appender should use a keys and values for a Log4j MapMessage. (for https://issues.apache.org/jira/browse/LOG4J2-2179[LOG4J2-2179] by Gary Gregory)
+* Add a MongoDbProvider builder for and deprecate org.apache.logging.log4j.mongodb.MongoDbProvider.createNoSqlProvider(). (for https://issues.apache.org/jira/browse/LOG4J2-2180[LOG4J2-2180] by Gary Gregory)
+* The JDBC Appender should use keys and values from a Log4j MapMessage. (for https://issues.apache.org/jira/browse/LOG4J2-2181[LOG4J2-2181] by Gary Gregory)
+* Add a simple JDBC DriverManager-based ConnectionSource that uses JDBC's DriverManager#getConnection(String, String, String). (for https://issues.apache.org/jira/browse/LOG4J2-2185[LOG4J2-2185] by Gary Gregory)
+* Add a JDBC ConnectionSource that provides pooling through Apache Commons DBCP 2. (for https://issues.apache.org/jira/browse/LOG4J2-2186[LOG4J2-2186] by Gary Gregory)
+* Add a hook for a Connection Source for a JDBC Appender to release its resources. (for https://issues.apache.org/jira/browse/LOG4J2-2187[LOG4J2-2187] by Gary Gregory)
+* Output JSON object for ObjectMessage in JsonLayout. (for https://issues.apache.org/jira/browse/LOG4J2-2190[LOG4J2-2190] by Mikael Ståldal, Franz Wong)
+* Made log4j-core a multi-release ("multi-version") jar, added log4j-core-java9 module. (for https://issues.apache.org/jira/browse/LOG4J2-2191[LOG4J2-2191] by Remko Popma)
+* Add org.apache.logging.log4j.core.util.WatchManager#unwatch(File). (for https://issues.apache.org/jira/browse/LOG4J2-2203[LOG4J2-2203] by Gary Gregory)
+* Add method org.apache.logging.log4j.core.util.WatchManager.reset(File) and reset(). (for https://issues.apache.org/jira/browse/LOG4J2-2206[LOG4J2-2206] by Gary Gregory)
+* Add debug logging to org.apache.logging.log4j.mongodb.MongoDbConnection. (for https://issues.apache.org/jira/browse/LOG4J2-2208[LOG4J2-2208] by Gary Gregory)
+* Add API to enable iterating over message parameters without creating temporary objects. (for https://issues.apache.org/jira/browse/LOG4J2-2253[LOG4J2-2253] by Remko Popma, Carter Kozak)
+
+=== Changed
+
+* Removed unnecessary threadlocal StringBuilder field from MdcPatternConverter. (for https://issues.apache.org/jira/browse/LOG4J2-2127[LOG4J2-2127] by Remko Popma, Carter Kozak)
+* Update ZeroMQ's jeromq from 0.4.2 to 0.4.3. (for https://issues.apache.org/jira/browse/LOG4J2-2132[LOG4J2-2132] by Gary Gregory)
+* Update version of maven bundle plugin to 3.4.0. Convert bundle plugin error to a warning. (for https://issues.apache.org/jira/browse/LOG4J2-2146[LOG4J2-2146] by Ralph Goers)
+* Update Jackson from 2.9.2 to 2.9.3. (for https://issues.apache.org/jira/browse/LOG4J2-2165[LOG4J2-2165] by Gary Gregory)
+* NullPointerException at org.apache.logging.log4j.util.Activator.loadProvider(Activator.java:81) in log4j 2.10.0. (for https://issues.apache.org/jira/browse/LOG4J2-2182[LOG4J2-2182] by Gary Gregory, `liwenxian2017`)
+* Update MongoDB driver from 3.0.4 to 3.6.1. (for https://issues.apache.org/jira/browse/LOG4J2-2184[LOG4J2-2184] by Gary Gregory)
+* Split off JPA support into a new module log4j-jpa. (for https://issues.apache.org/jira/browse/LOG4J2-2188[LOG4J2-2188] by Gary Gregory, Gary Gregory)
+* Update JMH to version 1.19 from 1.1.1. (for https://issues.apache.org/jira/browse/LOG4J2-2193[LOG4J2-2193] by Remko Popma)
+* Require Java 9 to compile the log4j-perf module to allow benchmarking with Java 9 APIs. (for https://issues.apache.org/jira/browse/LOG4J2-2194[LOG4J2-2194] by Remko Popma)
+* Document default property value support. (for https://issues.apache.org/jira/browse/LOG4J2-2197[LOG4J2-2197] by Gary Gregory, Fabrice Daugan)
+* Update MongoDB dependencies from classic to modern. (for https://issues.apache.org/jira/browse/LOG4J2-2198[LOG4J2-2198] by Gary Gregory)
+* MarkerFilter onMismatch invalid attribute in .properties. (for https://issues.apache.org/jira/browse/LOG4J2-2202[LOG4J2-2202] by Gary Gregory, `Kilian`)
+* org.apache.logging.log4j.core.util.WatchManager.getWatchers() should pre-allocate its new Map. (for https://issues.apache.org/jira/browse/LOG4J2-2204[LOG4J2-2204] by Gary Gregory)
+* New module log4j-mongodb3: Remove use of deprecated MongoDB APIs and code to the Java driver version 3 API. (for https://issues.apache.org/jira/browse/LOG4J2-2205[LOG4J2-2205] by Gary Gregory, Gary Gregory)
+* Rename existing MongoDb plugin and related artifacts from MongoDb to MongoDb2. (for https://issues.apache.org/jira/browse/LOG4J2-2209[LOG4J2-2209] by Gary Gregory)
+* Fix error log message for Script which says ScriptFile instead. (for https://issues.apache.org/jira/browse/LOG4J2-2210[LOG4J2-2210] by Gary Gregory, Björn Kautler)
+* Unnecessary contention in CopyOnWriteSortedArrayThreadContextMap. (for https://issues.apache.org/jira/browse/LOG4J2-2212[LOG4J2-2212] by Gary Gregory, Daniel Feist)
+* Unnecessary contention in GarbageFreeSortedArrayThreadContextMap. (for https://issues.apache.org/jira/browse/LOG4J2-2213[LOG4J2-2213] by Gary Gregory, Daniel Feist)
+* Unnecessary contention in DefaultThreadContextMap. (for https://issues.apache.org/jira/browse/LOG4J2-2214[LOG4J2-2214] by Gary Gregory, Daniel Feist)
+* Reduce compiler warnings in log4j-api. (for https://issues.apache.org/jira/browse/LOG4J2-2215[LOG4J2-2215] by Remko Popma)
+* Configuration builder classes should look for "onMismatch", not "onMisMatch". (for https://issues.apache.org/jira/browse/LOG4J2-2219[LOG4J2-2219] by Gary Gregory, `Kilian`)
+* Update Jackson from 2.9.3 to 2.9.4. (for https://issues.apache.org/jira/browse/LOG4J2-2229[LOG4J2-2229] by Gary Gregory, Gary Gregory)
+* Removed unnecessary dependency on jcommander since Log4j uses embedded picocli since 2.9. (for https://issues.apache.org/jira/browse/LOG4J2-2236[LOG4J2-2236] by Remko Popma)
+* Cannot see or copy all of certain JAnsi exception messages on Windows due to NUL characters. (for https://issues.apache.org/jira/browse/LOG4J2-2243[LOG4J2-2243] by Gary Gregory, Gary Gregory)
+* Update Apache Commons Compress from 1.15 to 1.16.1. (for https://issues.apache.org/jira/browse/LOG4J2-2245[LOG4J2-2245] by Gary Gregory, Gary Gregory)
+* The internal status logger timestamp format is now configurable with system property `log4j2.StatusLogger.DateFormat`. (for https://issues.apache.org/jira/browse/LOG4J2-2250[LOG4J2-2250] by Remko Popma)
+* Reusable LogEvents now pass the original format string to downstream components like layouts and filters. (for https://issues.apache.org/jira/browse/LOG4J2-2252[LOG4J2-2252] by Remko Popma, Carter Kozak)
+* Update MongoDB 3 module from driver 3.6.1 to 3.6.3. (for https://issues.apache.org/jira/browse/LOG4J2-2259[LOG4J2-2259] by Gary Gregory)
+* [SMTP] Update javax.mail from 1.6.0 to 1.6.1. (for https://issues.apache.org/jira/browse/LOG4J2-2260[LOG4J2-2260] by Gary Gregory)
+* Update JAnsi from 1.16 to 1.17. (for https://issues.apache.org/jira/browse/LOG4J2-2264[LOG4J2-2264] by Gary Gregory)
+* Documentation fix in manual page for custom configurations. (for https://issues.apache.org/jira/browse/LOG4J2-2273[LOG4J2-2273] by Remko Popma, Bruno P. Kinoshita)
+
+=== Fixed
+
+* Revert OSGi API version to 4.3.1. (for https://issues.apache.org/jira/browse/LOG4J2-1976[LOG4J2-1976] by Ralph Goers)
+* Avoid null attribute values in DefaultConfigurationBuilder. (for https://issues.apache.org/jira/browse/LOG4J2-2002[LOG4J2-2002] by Mikael Ståldal, Paul Burrowes)
+* LoaderUtil was not looping properly over class loaders. (for https://issues.apache.org/jira/browse/LOG4J2-2104[LOG4J2-2104] by Ralph Goers)
+* DefaultMergeStrategy did not merge filters on loggers correctly. (for https://issues.apache.org/jira/browse/LOG4J2-2123[LOG4J2-2123] by Ralph Goers, Jacob Tolar)
+* Removed compile-time dependency on Java Management APIs from Log4J API module to improve compatibility with Android Platform which does not support JMX extensions. (for https://issues.apache.org/jira/browse/LOG4J2-2126[LOG4J2-2126] by Remko Popma, Oleg Kalnichevski)
+* Log4j2 throws NoClassDefFoundError in Java 9 in java.util.ServiceLoader. (for https://issues.apache.org/jira/browse/LOG4J2-2129[LOG4J2-2129] by Ralph Goers, Blazej Bucko)
+* Don't create exit message in traceExit(R) when logging is disabled. (for https://issues.apache.org/jira/browse/LOG4J2-2157[LOG4J2-2157] by Gary Gregory, Malte Skoruppa)
+* Fixed bug where ThreadContext map was cleared, resulting in entries being only available for one log event. (for https://issues.apache.org/jira/browse/LOG4J2-2158[LOG4J2-2158] by Remko Popma, Björn Kautler)
+* Allow SortedArrayStringMap to be filtered upon deserialization. Fix build error in Java 9 when compiling log4j-core test classes. (for https://issues.apache.org/jira/browse/LOG4J2-2163[LOG4J2-2163] by Ralph Goers)
+* Fix typo in Property Substitution docs. (for https://issues.apache.org/jira/browse/LOG4J2-2175[LOG4J2-2175] by Mikael Ståldal, Behrang Saeedzadeh)
+* NullPointerException would occur when header was provided to a Layout on RollingRandingAccessFileAppender with DirectWriteRolloverStrategy. (for https://issues.apache.org/jira/browse/LOG4J2-2247[LOG4J2-2247] by Ralph Goers)
+* Incorrect automatics module name header was being included in manifests. (for https://issues.apache.org/jira/browse/LOG4J2-2254[LOG4J2-2254] by Ralph Goers)
+* Strings::join, when called with [null] returns "null" instead of EMPTY. (for https://issues.apache.org/jira/browse/LOG4J2-2270[LOG4J2-2270] by Gary Gregory, Cyril Martin)
+* Move module-info.class to META-INF/versions/9 directory. (for https://issues.apache.org/jira/browse/LOG4J2-2271[LOG4J2-2271] by Ralph Goers)
+* Allow EnvironmentPropertySource to run with a SecurityManager that rejects environment variable access. (for https://issues.apache.org/jira/browse/LOG4J2-2274[LOG4J2-2274] by Gary Gregory, Sebastien Lannez)
+* ConcurrentModificationException from org.apache.logging.log4j.status.StatusLogger.<clinit>(StatusLogger.java:71). (for https://issues.apache.org/jira/browse/LOG4J2-2276[LOG4J2-2276] by Gary Gregory, Sean Baxter)
+* Allow SystemPropertiesPropertySource to run with a SecurityManager that rejects system property access. (for https://issues.apache.org/jira/browse/LOG4J2-2279[LOG4J2-2279] by Gary Gregory, Gary Gregory)
diff --git a/src/site/_release-notes/_2.11.1.adoc b/src/site/_release-notes/_2.11.1.adoc
new file mode 100644
index 0000000..f80b47f
--- /dev/null
+++ b/src/site/_release-notes/_2.11.1.adoc
@@ -0,0 +1,132 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.11.1 (2018-07-22)
+
+This release contains new features, bugfixes and minor enhancements.
+
+Due to a break in compatibility in the SLF4J binding, Log4j now ships with two versions of the SLF4J to Log4j adapters.
+`log4j-slf4j-impl` should be used with SLF4J 1.7.x and earlier and `log4j-slf4j18-impl` should be used with SLF4J 1.8.x and later.
+
+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:
+
+[source,xml]
+----
+<Appenders>
+  <Socket name="socket" host="localhost" port="9500"/>
+</Appenders>
+----
+
+into:
+
+[source,xml]
+----
+<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:
+
+[source,xml]
+----
+<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.1 API, as well as many core components, maintains binary compatibility with previous releases.
+
+Log4j 2.11.1 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 http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Changed
+
+* Allow composite configuration for context parameter. (for https://issues.apache.org/jira/browse/LOG4J2-1721[LOG4J2-1721] by Ralph Goers, Phokham Nonava)
+* Status logger should show the Log4j name and version when initializing itself. (for https://issues.apache.org/jira/browse/LOG4J2-2302[LOG4J2-2302] by Gary Gregory)
+* Log4j2 2.8.2 JMX unregister NullPointerException. (for https://issues.apache.org/jira/browse/LOG4J2-2304[LOG4J2-2304] by Gary Gregory, wumengsheng)
+* Update Jackson from 2.9.4 to 2.9.5. (for https://issues.apache.org/jira/browse/LOG4J2-2311[LOG4J2-2311] by Gary Gregory)
+* Update LMAX Disruptor from 3.3.7 to 3.4.2. (for https://issues.apache.org/jira/browse/LOG4J2-2313[LOG4J2-2313] by Gary Gregory)
+* Update JAnsi from 1.17 to 1.17.1. (for https://issues.apache.org/jira/browse/LOG4J2-2328[LOG4J2-2328] by Gary Gregory)
+* Added AbstractLogEvent.getMutableInstant to allow the MutableInstant instance to be modified by classes extending AbstractLogEvent. (for https://issues.apache.org/jira/browse/LOG4J2-2351[LOG4J2-2351] by Carter Kozak)
+* Update Jackson from 2.9.5 to 2.9.6. (for https://issues.apache.org/jira/browse/LOG4J2-2357[LOG4J2-2357] by Gary Gregory)
+* Update Kafka client from 1.0.0 to 1.1.0. (for https://issues.apache.org/jira/browse/LOG4J2-2358[LOG4J2-2358] by Gary Gregory)
+* Update Kafka client from 1.1.0 to 1.1.1. (for https://issues.apache.org/jira/browse/LOG4J2-2384[LOG4J2-2384] by Gary Gregory)
+* Update Groovy from 2.4.13 to 2.5.1. (for https://issues.apache.org/jira/browse/LOG4J2-2385[LOG4J2-2385] by Gary Gregory)
+* Update optional Apache Commons DBCP from 2.2.0 to 2.4.0. (for https://issues.apache.org/jira/browse/LOG4J2-2386[LOG4J2-2386] by Gary Gregory)
+* Log4j 2.0 ERROR "Could not search jar" with JBoss EAP 6.2. (for https://issues.apache.org/jira/browse/LOG4J2-548[LOG4J2-548] by Gary Gregory, Shehata, Paresh Varke, Eric Victorson, Martin Laforet)
+
+=== Fixed
+
+* Curly braces in parameters are not treated as placeholders. (for https://issues.apache.org/jira/browse/LOG4J2-2032[LOG4J2-2032] by Carter Kozak, Kostiantyn Shchepanovskyi)
+* Improve plugin error message when elements are missing. (for https://issues.apache.org/jira/browse/LOG4J2-2268[LOG4J2-2268] by Ralph Goers, Tilman Hausherr)
+* MutableLogEvent references to other objects are cleared after each use. Fix a memory leak causing references to parameters to be held after synchronous logging with thread locals enabled. (for https://issues.apache.org/jira/browse/LOG4J2-2269[LOG4J2-2269] by Carter Kozak)
+* ParserConfigurationException when using Log4j with oracle.xml.jaxp.JXDocumentBuilderFactory. (for https://issues.apache.org/jira/browse/LOG4J2-2283[LOG4J2-2283] by Gary Gregory, Vishnu Priya Matha)
+* PoolingDriverConnectionSource does not take into account properties, user name, and password. (for https://issues.apache.org/jira/browse/LOG4J2-2300[LOG4J2-2300] by Gary Gregory)
+* Mixed async loggers no longer forget parameter values, providing some appenders with an array of nulls. (for https://issues.apache.org/jira/browse/LOG4J2-2301[LOG4J2-2301] by Carter Kozak)
+* Make java.util.ServiceLoader properly work in OSGi by using the Service Loader Mediator Specification. (for https://issues.apache.org/jira/browse/LOG4J2-2305[LOG4J2-2305] by Ralph Goers, Björn Kautler)
+* Split the SLF4J binding into 2 implementations - one for SLF4J 1.7.x and one for SLF4J 1.8+. (for https://issues.apache.org/jira/browse/LOG4J2-2305[LOG4J2-2305] by Ralph Goers)
+* MutableLogEvent and RingBufferLogEvent message mementos retain the original format string. (for https://issues.apache.org/jira/browse/LOG4J2-2307[LOG4J2-2307] by Carter Kozak)
+* Jackson layouts used with AsyncLoggerContextSelector output the expected format rather than only a JSON string of the message text. (for https://issues.apache.org/jira/browse/LOG4J2-2312[LOG4J2-2312] by Carter Kozak)
+* If root LoggerConfig does not have a Level return ERROR. (for https://issues.apache.org/jira/browse/LOG4J2-2316[LOG4J2-2316] by Ralph Goers)
+* MutableLogEvent.getNonNullImmutableMessage and Log4jLogEvent.makeMessageImmutable retain format and parameters. (for https://issues.apache.org/jira/browse/LOG4J2-2317[LOG4J2-2317] by Carter Kozak)
+* Messages are no longer mutated when the asynchronous queue is full. A warning is logged to the status logger instead. (for https://issues.apache.org/jira/browse/LOG4J2-2318[LOG4J2-2318] by Carter Kozak)
+* Fix NPE in AbstractLogger when another exception is thrown, masking the root cause. (for https://issues.apache.org/jira/browse/LOG4J2-2320[LOG4J2-2320] by Carter Kozak)
+* AsyncLogger uses the correct level when unspecified. This provides parity between AsyncLogger and Logger. (for https://issues.apache.org/jira/browse/LOG4J2-2321[LOG4J2-2321] by Carter Kozak)
+* Custom ContextSelector implementations which select an AsyncLoggerContext disable LoggerConfig.includeLocation by default for parity with AsyncLoggerContextSelector. (for https://issues.apache.org/jira/browse/LOG4J2-2322[LOG4J2-2322] by Carter Kozak)
+* RollingFileManager debug logging avoids string concatenation and errant braces in favor of parameterized logging. (for https://issues.apache.org/jira/browse/LOG4J2-2331[LOG4J2-2331] by Carter Kozak, Mike Baranski)
+* Handle errors thrown in default disruptor ExceptionHandler implementations to avoid killing background threads. (for https://issues.apache.org/jira/browse/LOG4J2-2333[LOG4J2-2333] by Carter Kozak)
+* Add API org.apache.logging.log4j.core.appender.AsyncAppender.getQueueSize(). (for https://issues.apache.org/jira/browse/LOG4J2-2334[LOG4J2-2334] by Gary Gregory)
+* Remove duplicate hyphen from the AsyncLoggerConfig background thread name. (for https://issues.apache.org/jira/browse/LOG4J2-2336[LOG4J2-2336] by Carter Kozak)
+* The OSGi Activator specified an incorrect version. (for https://issues.apache.org/jira/browse/LOG4J2-2343[LOG4J2-2343] by Ralph Goers, Raymond Augé)
+* Update Apache Commons Compress from 1.16.1 to 1.17. (for https://issues.apache.org/jira/browse/LOG4J2-2347[LOG4J2-2347] by Gary Gregory)
+* RingBufferLogEvent memento messages provide the expected format string, and no longer attempt to substitute parameters into curly braces in parameter toString values. Both RingBufferLogEvent and MutableLogEvent memento implementations memoize results to avoid rebuilding formatted string values. (for https://issues.apache.org/jira/browse/LOG4J2-2352[LOG4J2-2352] by Carter Kozak)
+* PropertiesUtil ignores non-string system properties. Fixes a NoClassDefFoundError initializing StatusLogger caused by an NPE while initializing the static PropertiesUtil field. (for https://issues.apache.org/jira/browse/LOG4J2-2355[LOG4J2-2355] by Carter Kozak, Henrik Brautaset Aronsen)
+* Fixed a memory leak in which ReusableObjectMessage would hold a reference to the most recently logged object. (for https://issues.apache.org/jira/browse/LOG4J2-2362[LOG4J2-2362] by Carter Kozak)
+* Fixed a memory leak in which ReusableParameterizedMessage would hold a reference to the most recently logged throwable and provided varargs array. (for https://issues.apache.org/jira/browse/LOG4J2-2364[LOG4J2-2364] by Carter Kozak)
+* Nested logging doesn't clobber AbstractStringLayout cached StringBuilders (for https://issues.apache.org/jira/browse/LOG4J2-2368[LOG4J2-2368] by Carter Kozak)
+* StringBuilders.escapeJson implementation runs in linear time. Escaping large JSON strings in EncodingPatternConverter and MapMessage will perform significantly better. (for https://issues.apache.org/jira/browse/LOG4J2-2373[LOG4J2-2373] by Carter Kozak, Kevin Meurer)
+* StringBuilders.escapeXml implementation runs in linear time. Escaping large XML strings in EncodingPatternConverter and MapMessage will perform significantly better. (for https://issues.apache.org/jira/browse/LOG4J2-2376[LOG4J2-2376] by Carter Kozak, Kevin Meurer)
+* NullPointerException in org.apache.logging.log4j.util.LoaderUtil.getClassLoaders() when using Bootstrap class loader. (for https://issues.apache.org/jira/browse/LOG4J2-2377[LOG4J2-2377] by Gary Gregory, Mirko Rzehak)
+* Update Mongodb 3 driver from 3.6.3 to 3.8.0. (for https://issues.apache.org/jira/browse/LOG4J2-2382[LOG4J2-2382] by Gary Gregory)
+* Thread indefinitely blocked when logging a message in an interrupted thread. (for https://issues.apache.org/jira/browse/LOG4J2-2388[LOG4J2-2388] by Gary Gregory, Failled)
+* ThrowableProxy was saving and retrieving cache entries using different keys. (for https://issues.apache.org/jira/browse/LOG4J2-2389[LOG4J2-2389] by Ralph Goers, Liu Wen)
+* Fix broken links in log4j web documentation. (for https://issues.apache.org/jira/browse/LOG4J2-2390[LOG4J2-2390] by Ralph Goers, anton-balaniuc)
diff --git a/src/site/_release-notes/_2.11.2.adoc b/src/site/_release-notes/_2.11.2.adoc
new file mode 100644
index 0000000..19118dc
--- /dev/null
+++ b/src/site/_release-notes/_2.11.2.adoc
@@ -0,0 +1,144 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.11.2 (2019-02-04)
+
+This release contains bugfixes and minor enhancements.
+
+Due to a break in compatibility in the SLF4J binding, Log4j now ships with two versions of the SLF4J to Log4j adapters.
+`log4j-slf4j-impl` should be used with SLF4J 1.7.x and earlier and `log4j-slf4j18-impl` should be used with SLF4J 1.8.x and later.
+
+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.
+Applications using Spring Boot must add the Multi-Release header to the JAR manifest or the Java 9+ classes will be ignored.
+
+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, Log4j does not process DTD in XML files.
+If you used DTD for including snippets, you have to use XInclude or Composite Configuration instead.
+
+Also 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:
+
+[source,xml]
+----
+<Appenders>
+  <Socket name="socket" host="localhost" port="9500"/>
+</Appenders>
+----
+
+into:
+
+[source,xml]
+----
+<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:
+
+[source,xml]
+----
+<Appenders>
+  <Socket name="socket" host="localhost" port="9500">
+    <JsonLayout properties="true"/>
+  </Socket>
+</Appenders>
+----
+
+Note that the XML, JSON and YAML formats changed in the 2.11.0 release: they no longer have the `timeMillis` attribute and instead have an `Instant` element with `epochSecond` and `nanoOfSecond` attributes.
+
+The Log4j 2.11.2 API, as well as many core components, maintains binary compatibility with previous releases.
+
+Log4j 2.11.2 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 http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Added
+
+* PatternLayout %date conversion pattern should render time zone designator for ISO-ISO8601. (for https://issues.apache.org/jira/browse/LOG4J2-1246[LOG4J2-1246] by Gary Gregory)
+* JDBC Appender should reconnect to the database when a connection goes stale. (for https://issues.apache.org/jira/browse/LOG4J2-2496[LOG4J2-2496] by Gary Gregory)
+* Let JDBC PoolingDriverConnectionSource with Apache Commons DBCP configure a PoolableConnectionFactory. (for https://issues.apache.org/jira/browse/LOG4J2-2505[LOG4J2-2505] by Gary Gregory)
+* Allow a JDBC Appender to truncate strings to match a table's metadata column length limit. (for https://issues.apache.org/jira/browse/LOG4J2-2509[LOG4J2-2509] by Gary Gregory)
+
+=== Changed
+
+* Switch from CLIRR to RevAPI for detecting API changes. (for https://issues.apache.org/jira/browse/LOG4J2-1576[LOG4J2-1576] by Ralph Goers)
+* Improve exception logging performance. ThrowableProxy construction uses a faster method to discover the current stack trace. ThrowablePatternConverter and ExtendedThrowablePatternConverter default configurations no longer allocate an additional buffer for stack trace contents. (for https://issues.apache.org/jira/browse/LOG4J2-2391[LOG4J2-2391] by Carter Kozak)
+* Better handling of %highlight pattern when using jul-bridge. (for https://issues.apache.org/jira/browse/LOG4J2-2405[LOG4J2-2405] by Gary Gregory, Marco Herrn)
+* Let the NullAppender default its name to "null". (for https://issues.apache.org/jira/browse/LOG4J2-2447[LOG4J2-2447] by Gary Gregory)
+* Update Jackson from 2.9.6 to 2.9.7. (for https://issues.apache.org/jira/browse/LOG4J2-2468[LOG4J2-2468] by Gary Gregory)
+* Update Apache Commons Compress from 1.17 to 1.18. (for https://issues.apache.org/jira/browse/LOG4J2-2469[LOG4J2-2469] by Gary Gregory)
+* Update Apache Commons CSV from 1.5 to 1.6. (for https://issues.apache.org/jira/browse/LOG4J2-2470[LOG4J2-2470] by Gary Gregory)
+* Update javax.mail from 1.6.1 to 1.6.2. (for https://issues.apache.org/jira/browse/LOG4J2-2471[LOG4J2-2471] by Gary Gregory)
+* Update mongo-java-driver 3 from 3.8.0 to 3.8.2. (for https://issues.apache.org/jira/browse/LOG4J2-2472[LOG4J2-2472] by Gary Gregory)
+* JDBC Appender should release parameter resources ASAP. (for https://issues.apache.org/jira/browse/LOG4J2-2489[LOG4J2-2489] by Gary Gregory)
+* Allow all Appenders to optionally carry a Property array. (for https://issues.apache.org/jira/browse/LOG4J2-2491[LOG4J2-2491] by Gary Gregory)
+* Update MongoDB driver from 3.8.2 to 3.9.0 for log4j-mongodb3 module. (for https://issues.apache.org/jira/browse/LOG4J2-2503[LOG4J2-2503] by Gary Gregory)
+
+=== Fixed
+
+* 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. (for https://issues.apache.org/jira/browse/LOG4J2-1570[LOG4J2-1570] by Ralph Goers)
+* Fixed Appenders section in Extending Log4j. (for https://issues.apache.org/jira/browse/LOG4J2-1571[LOG4J2-1571] by Ralph Goers, torbenmoeller)
+* Direct write was creating files with the wrong date/time. (for https://issues.apache.org/jira/browse/LOG4J2-1906[LOG4J2-1906] by Ralph Goers)
+* Expose LoggerContext.setConfiguration as a public method. (for https://issues.apache.org/jira/browse/LOG4J2-2009[LOG4J2-2009] by Ralph Goers)
+* Use the file pattern as the FileManager "name" when no filename is present. (for https://issues.apache.org/jira/browse/LOG4J2-2061[LOG4J2-2061] by Ralph Goers)
+* StackOverflowError at AwaitCompletionReliabilityStrategy. (for https://issues.apache.org/jira/browse/LOG4J2-2134[LOG4J2-2134] by Gary Gregory, David del Amo Mateos)
+* Fix memory leak in ReusableParameterizedMessage. (for https://issues.apache.org/jira/browse/LOG4J2-2201[LOG4J2-2201] by Carter Kozak)
+* Load PropertySources from any accessible ClassLoader. Hide any exceptions that may occur accessing a PropertySource. (for https://issues.apache.org/jira/browse/LOG4J2-2266[LOG4J2-2266] by Ralph Goers)
+* ReusableObjectMessage parameter is properly passed to appenders (#203). (for https://issues.apache.org/jira/browse/LOG4J2-2363[LOG4J2-2363] by Carter Kozak, Brian Laub)
+* NameAbbreviator correctly abbreviates first fragments (#188). (for https://issues.apache.org/jira/browse/LOG4J2-2365[LOG4J2-2365] by Carter Kozak, Eugene Zimichev)
+* Pre-deployment of PersistenceUnit that using Log4j as session logger failed (#198). (for https://issues.apache.org/jira/browse/LOG4J2-2397[LOG4J2-2397] by Gary Gregory, EckelDong)
+* Exceptions are added to all columns when a JDBC Appender's ColumnMapping uses a Pattern. (for https://issues.apache.org/jira/browse/LOG4J2-2413[LOG4J2-2413] by Gary Gregory, Andres Luuk)
+* NullPointerException when closing never used RollingRandomAccessFileAppender. (for https://issues.apache.org/jira/browse/LOG4J2-2418[LOG4J2-2418] by Gary Gregory, Jonas Rutishauser)
+* Handle some unchecked exceptions while loading plugins. (for https://issues.apache.org/jira/browse/LOG4J2-2422[LOG4J2-2422] by Gary Gregory, `rswart`)
+* Setting a null ErrorHandler on AbstractAppender is not allowed and will no-op as expected. (for https://issues.apache.org/jira/browse/LOG4J2-2441[LOG4J2-2441] by Carter Kozak)
+* ErrorHandler is invoked with a LogEvent and Throwable when possible, where previously only a string was used. (for https://issues.apache.org/jira/browse/LOG4J2-2444[LOG4J2-2444] by Carter Kozak)
+* Add Log4j-slf4j18-impl dependency to BOM POM. (for https://issues.apache.org/jira/browse/LOG4J2-2453[LOG4J2-2453] by Ralph Goers, theit)
+* RollingRandomAccessFileManager ignores new file patterns from programmatic reconfiguration. (for https://issues.apache.org/jira/browse/LOG4J2-2457[LOG4J2-2457] by Gary Gregory, Heiko Schwanke)
+* ColumnMapping literal not working. (for https://issues.apache.org/jira/browse/LOG4J2-2466[LOG4J2-2466] by Gary Gregory, Paolo Bonanomi)
+* org.apache.log4j.SimpleLayout and ConsoleAppender missing in log4j-1.2-api. (for https://issues.apache.org/jira/browse/LOG4J2-2476[LOG4J2-2476] by Gary Gregory, Al Bundy)
+* AbstractStringLayoutStringEncodingBenchmark returns the computed variables on each benchmark to avoid DCE. (for https://issues.apache.org/jira/browse/LOG4J2-2478[LOG4J2-2478] by Carter Kozak, Diego Elias Costa)
+* Avoid NullPointerExceptions in org.apache.logging.log4j.core.config.AbstractConfiguration for null arguments. (for https://issues.apache.org/jira/browse/LOG4J2-2481[LOG4J2-2481] by Gary Gregory)
+* BasicContextSelector cannot be used in a OSGI application. (for https://issues.apache.org/jira/browse/LOG4J2-2482[LOG4J2-2482] by Gary Gregory, Rob Gansevles)
+* SizeBasedTriggeringPolicy was not honored when using the DirectWriteRolloverStrategy if the machine restarts. (for https://issues.apache.org/jira/browse/LOG4J2-2485[LOG4J2-2485] by Ralph Goers, Giovanni Matteo Fumarola)
+* JmsAppender reconnectIntervalMillis cannot be set from a configuration file. (for https://issues.apache.org/jira/browse/LOG4J2-2497[LOG4J2-2497] by Gary Gregory)
+* JMS Appender may throw a NullPointerException when JMS is not up while the Appender is starting. (for https://issues.apache.org/jira/browse/LOG4J2-2499[LOG4J2-2499] by Gary Gregory)
+* Document that Properties element must be the first configuration element. (for https://issues.apache.org/jira/browse/LOG4J2-2500[LOG4J2-2500] by Ralph Goers)
+* JDBC Appender fails when using both parameter, source, and literal ColumnMapping elements. (for https://issues.apache.org/jira/browse/LOG4J2-2508[LOG4J2-2508] by Gary Gregory)
+* Make Strings.toRootUpperCase a static method so it can be accessed. (for https://issues.apache.org/jira/browse/LOG4J2-2514[LOG4J2-2514] by Ralph Goers, smilebrian0515)
+* Configuration documentation referenced incorrect method name. (for https://issues.apache.org/jira/browse/LOG4J2-2515[LOG4J2-2515] by Ralph Goers, MakarovS)
+* Fix regression using MapMessageLookup.lookup with MapMessages that do not implement StringMapMessage. (for https://issues.apache.org/jira/browse/LOG4J2-2522[LOG4J2-2522] by Carter Kozak, Adam Lesiak)
+* Prevent ConcurrentModificationException while iterating over ListAppender events. (for https://issues.apache.org/jira/browse/LOG4J2-2527[LOG4J2-2527] by Carter Kozak)
+* Generalize checks using MapMessage implementations with do not extend StringMapMessage. Introduce new JAVA_UNQUOTED MapMessage format type based on the JAVA formatting, but without quoted values. (for https://issues.apache.org/jira/browse/LOG4J2-2530[LOG4J2-2530] by Carter Kozak, Travis Spencer)
+* Fix a regression introduced by LOG4J2-2301 in 2.11.1 allowing allocation to occur in AsyncLoggerConfig. (for https://issues.apache.org/jira/browse/LOG4J2-2533[LOG4J2-2533] by Carter Kozak, Michail Prusakov)
+* CronTriggeringPolicy was not rolling properly, especially when used with the SizeBasedTriggeringPolicy. (for https://issues.apache.org/jira/browse/LOG4J2-2542[LOG4J2-2542] by Ralph Goers)
+* Add Log4j-to-SLF4J to BOM pom.xml. (for https://issues.apache.org/jira/browse/LOG4J2-2543[LOG4J2-2543] by Ralph Goers, Dermot Hardy)
diff --git a/src/site/_release-notes/_2.12.0.adoc b/src/site/_release-notes/_2.12.0.adoc
new file mode 100644
index 0000000..4d5907a
--- /dev/null
+++ b/src/site/_release-notes/_2.12.0.adoc
@@ -0,0 +1,85 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.12.0 (2019-06-23)
+
+This release contains bugfixes and minor enhancements.
+
+Due to a break in compatibility in the SLF4J binding, Log4j now ships with two versions of the SLF4J to Log4j adapters.
+`log4j-slf4j-impl` should be used with SLF4J 1.7.x and earlier and `log4j-slf4j18-impl` should be used with SLF4J 1.8.x and later.
+
+New features include support for reconfiguration of Log4j configuraton files accessed via HTTP(s) and Spring Cloud Config specifically, a new Docker Lookup for obtaining information about the current Docker container, new reconfiguration methods added to the Configurator class, the ability to pad integers with leading zeros in filenames generated by the rolling file appenders, and allowing the TCP `SocketAppender` to connect to multiple IP addresses when they are returned from DNS.
+
+More details on the new features and fixes are itemized below.
+
+Note that the XML, JSON and YAML formats changed in the 2.11.0 release: they no longer have the `timeMillis` attribute and instead have an `Instant` element with `epochSecond` and `nanoOfSecond` attributes.
+
+The Log4j 2.12.0 API, as well as many core components, maintains binary compatibility with previous releases.
+
+Log4j 2.12.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 http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Added
+
+* Allow custom end-of-line with JsonLayout. (for https://issues.apache.org/jira/browse/LOG4J2-2337[LOG4J2-2337] by Gary Gregory, Arvind Sahare, Patrice Ferrot)
+* Allow zero padding the counter of a RollingFileAppender. (for https://issues.apache.org/jira/browse/LOG4J2-2403[LOG4J2-2403] by Ralph Goers, hupfdule)
+* Add reconfiguration methods to Configurator. (for https://issues.apache.org/jira/browse/LOG4J2-2406[LOG4J2-2406] by Ralph Goers)
+* Add filter that will match events when no marker is present. (for https://issues.apache.org/jira/browse/LOG4J2-2427[LOG4J2-2427] by Ralph Goers, Rimaljit Kaur)
+* TCP Appender should support a host name resolving to multiple IP addresses. (for https://issues.apache.org/jira/browse/LOG4J2-2586[LOG4J2-2586] by Ralph Goers)
+* GZIP compression on rollover supports configurable compression levels. (for https://issues.apache.org/jira/browse/LOG4J2-2598[LOG4J2-2598] by Carter Kozak, Carter Kozak)
+* AsyncQueueFullPolicy configuration short values "Default" and "Discard" are case-insensitive to avoid confusion. (for https://issues.apache.org/jira/browse/LOG4J2-2611[LOG4J2-2611] by Carter Kozak)
+* Add and use method org.apache.logging.log4j.message.MapMessage.toKey(String) for simpler subclasses. (for https://issues.apache.org/jira/browse/LOG4J2-2634[LOG4J2-2634] by Gary Gregory)
+* Add support for reconfiguration via HTTP(S), Docker, and Spring Cloud Configuration. (for https://issues.apache.org/jira/browse/LOG4J2-913[LOG4J2-913] by Ralph Goers)
+
+=== Changed
+
+* Update Jackson from 2.9.7 to 2.9.8. (for https://issues.apache.org/jira/browse/LOG4J2-2570[LOG4J2-2570] by Gary Gregory, Gary Gregory)
+* Update MongoDB 3 module driver from 3.9.0 to 3.10.1. (for https://issues.apache.org/jira/browse/LOG4J2-2574[LOG4J2-2574] by Gary Gregory, Gary Gregory)
+* Update Jackson from 2.9.8 to 2.9.9. (for https://issues.apache.org/jira/browse/LOG4J2-2619[LOG4J2-2619] by Gary Gregory)
+* Refactor several AsyncLogger methods below the 35 byte threshold for inlining. (for https://issues.apache.org/jira/browse/LOG4J2-2634[LOG4J2-2634] by Carter Kozak)
+* Update tests from H2 1.4.197 to 1.4.199. (for by Gary Gregory)
+
+=== Fixed
+
+* FailoverAppender was failing with ERROR appender Failover has no parameter that matches element Failovers. (for https://issues.apache.org/jira/browse/LOG4J2-1103[LOG4J2-1103] by Ralph Goers, Seán Dunne)
+* Lookups were not found if the plugin key was not lower case. (for https://issues.apache.org/jira/browse/LOG4J2-1143[LOG4J2-1143] by Ralph Goers, Pascal Heinrich)
+* Locate plugins within a Jar using a URL Connection. (for https://issues.apache.org/jira/browse/LOG4J2-1852[LOG4J2-1852] by Ralph Goers, Tanner Altares)
+* RollingRandomAccessFileAppender error message referenced incorrect class name. (for https://issues.apache.org/jira/browse/LOG4J2-2547[LOG4J2-2547] by Ralph Goers)
+* NullPointerException in JdbcAppender.createAppender(). (for https://issues.apache.org/jira/browse/LOG4J2-2559[LOG4J2-2559] by Gary Gregory, Li Lei)
+* JEP223 version detection fix for JDK 9 and up. (for https://issues.apache.org/jira/browse/LOG4J2-2561[LOG4J2-2561] by Ralph Goers, Ulrich Enslin)
+* MapPatternConverter is properly created from the '%K', '%map', and '%MAP' patterns. PatternConverter instanceOf methods with unknown parameter types no longer elide those with known parameters. (for https://issues.apache.org/jira/browse/LOG4J2-2564[LOG4J2-2564] by Carter Kozak)
+* StackOverflowException when server not reachable with SocketAppender. (for https://issues.apache.org/jira/browse/LOG4J2-2592[LOG4J2-2592] by Gary Gregory, Dávid Kaya)
+* Throw better exception message when both log4j-slf4j-impl and log4j-to-slf4j are present. (for https://issues.apache.org/jira/browse/LOG4J2-2597[LOG4J2-2597] by Ralph Goers)
+* java.lang.StackOverflowError at org.apache.logging.log4j.junit.AbstractExternalFileCleaner.println(AbstractExternalFileCleaner.java:169). (for https://issues.apache.org/jira/browse/LOG4J2-2598[LOG4J2-2598] by Gary Gregory, Gary Gregory)
+* Update file time when size based triggering policy is used without a time-based triggering policy. (for https://issues.apache.org/jira/browse/LOG4J2-2602[LOG4J2-2602] by Ralph Goers)
+* Asynchronous logging when the queue is full no longer results in heavy CPU utilization and low throughput. (for https://issues.apache.org/jira/browse/LOG4J2-2606[LOG4J2-2606] by Carter Kozak)
+* Explicitly set file creation time. (for https://issues.apache.org/jira/browse/LOG4J2-2610[LOG4J2-2610] by Ralph Goers)
+* NullPointerException at org.apache.logging.log4j.core.appender.db.jdbc.JdbcDatabaseManager.writeInternal(JdbcDatabaseManager.java:803). (for https://issues.apache.org/jira/browse/LOG4J2-2612[LOG4J2-2612] by Gary Gregory)
+* Restore constructor to ThrowablePatternConverter that was removed in 2.8.2. (for https://issues.apache.org/jira/browse/LOG4J2-2616[LOG4J2-2616] by Ralph Goers)
+* Possible ClassCastException in org.apache.logging.log4j.core.script.ScriptManager.ScriptManager(Configuration, WatchManager) (for https://issues.apache.org/jira/browse/LOG4J2-2618[LOG4J2-2618] by Gary Gregory)
+* StructuredDataId was ignoring maxLength attribute. (for https://issues.apache.org/jira/browse/LOG4J2-2622[LOG4J2-2622] by Ralph Goers)
+* Fix a race allowing events not to be recorded when a RoutingAppender purge policy attempts to delete an idle appender at exactly the same time as a new event is recorded. (for https://issues.apache.org/jira/browse/LOG4J2-2629[LOG4J2-2629] by Carter Kozak)
+* RoutingAppender PurgePolicy implementations no longer stop appenders referenced from the logger configuration, only those that have been created by the RoutingAppender. Note that RoutingAppender.getAppenders no longer includes entries for referenced appenders, only those which it has created. (for https://issues.apache.org/jira/browse/LOG4J2-2631[LOG4J2-2631] by Carter Kozak)
+* RFC5424Layout was not properly setting default Structured Element id for the MDC (for https://issues.apache.org/jira/browse/LOG4J2-2636[LOG4J2-2636] by Ralph Goers)
diff --git a/src/site/_release-notes/_2.12.1.adoc b/src/site/_release-notes/_2.12.1.adoc
new file mode 100644
index 0000000..c9c1a60
--- /dev/null
+++ b/src/site/_release-notes/_2.12.1.adoc
@@ -0,0 +1,58 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.12.1 (2019-08-06)
+
+This release contains bugfixes and minor enhancements.
+
+This release improves the performance of capturing location information, makes `log4j-core` optional in the log4j 1.2 bridge, and explicitly removes `LoggerContext` references from components that keep track of them when the LoggerContext is shut down.
+More details on the new features and fixes are itemized below.
+
+Due to a break in compatibility in the SLF4J binding, Log4j now ships with two versions of the SLF4J to Log4j adapters.
+`log4j-slf4j-impl` should be used with SLF4J 1.7.x and earlier and `log4j-slf4j18-impl` should be used with SLF4J 1.8.x and later.
+
+Note that the XML, JSON and YAML formats changed in the 2.11.0 release: they no longer have the `timeMillis` attribute and instead have an `Instant` element with `epochSecond` and `nanoOfSecond` attributes.
+
+The Log4j 2.12.1 API, as well as many core components, maintains binary compatibility with previous releases.
+
+Log4j 2.12.1 requires a minimum of Java 8 to build and run.
+Log4j 2.3 was the last release that supported Java 6 and Log4j 2.11.2 is the last release to support Java 7.
+
+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 http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Changed
+
+* Make Log4j Core optional for Log4j 1.2 API. (for https://issues.apache.org/jira/browse/LOG4J2-2556[LOG4J2-2556] by Ralph Goers)
+* Update MongoDB 3 driver from 3.10.1 to 3.10.2. (for https://issues.apache.org/jira/browse/LOG4J2-2646[LOG4J2-2646] by Gary Gregory)
+* Improve exception messages in the JDBC appender. (for https://issues.apache.org/jira/browse/LOG4J2-2657[LOG4J2-2657] by Gary Gregory)
+* Retry when JDBC throws a java.sql.SQLTransactionRollbackException in commitAndClose(). (for https://issues.apache.org/jira/browse/LOG4J2-2660[LOG4J2-2660] by Gary Gregory)
+
+=== Fixed
+
+* Allow file renames to work when files are missing from the sequence. (for https://issues.apache.org/jira/browse/LOG4J2-1946[LOG4J2-1946] by Ralph Goers, Igor Perelyotov)
+* Remove references to LoggerContext when it is shutdown. (for https://issues.apache.org/jira/browse/LOG4J2-2366[LOG4J2-2366] by Ralph Goers)
+* Improve the performance of capturing location information. (for https://issues.apache.org/jira/browse/LOG4J2-2644[LOG4J2-2644] by Ralph Goers)
+* Support emulating a MAC address when using ipv6. (for https://issues.apache.org/jira/browse/LOG4J2-2650[LOG4J2-2650] by Ralph Goers, Mattia Bertorello)
+* AbstractAction.reportException records a warning to the status logger, providing more information when file based appenders fail to compress rolled data asynchronously. (for https://issues.apache.org/jira/browse/LOG4J2-2658[LOG4J2-2658] by Carter Kozak)
+* AbstractAction handles and records unchecked RuntimeException and Error in addition to IOException. (for https://issues.apache.org/jira/browse/LOG4J2-2659[LOG4J2-2659] by Carter Kozak)
+* "Values not bound to statement" when using JDBC appender, appender does not respect bufferSize="0". (for https://issues.apache.org/jira/browse/LOG4J2-2667[LOG4J2-2667] by Gary Gregory, Edith Chui)
diff --git a/src/site/_release-notes/_2.13.0.adoc b/src/site/_release-notes/_2.13.0.adoc
new file mode 100644
index 0000000..1c843d7
--- /dev/null
+++ b/src/site/_release-notes/_2.13.0.adoc
@@ -0,0 +1,77 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.13.0 (2019-12-11)
+
+This release contains bugfixes and minor enhancements.
+Some of the new features in this release are:
+
+* Log4j 2 now requires Java 8 or higher to build and run.
+* Experimental support for Log4j 1 configuration files.
+See Log4j 2 Compatiblity with Log4j 1.
+* The Logger API has been enhanced to support a builder pattern.
+This can dramatically improve the overhead of capturing location information.
+See Log Builder.
+* Better integration with Spring Boot by providing access to Spring variables in Log4j 2 configuration files and allowing Log4j 2 system properties to be defined in the Spring configuration.
+See Logging in the Cloud.
+* Support for accessing Kubernetes information via a Log4j 2 Lookup.
+* The Gelf Layout now allows the message to be formatted using a `PatternLayout` pattern.
+Logging in the Cloud provides an example of this, as well as the use of the Spring and Kubernetes Lookups.
+
+Due to a break in compatibility in the SLF4J binding, Log4j now ships with two versions of the SLF4J to Log4j adapters.
+`log4j-slf4j-impl` should be used with SLF4J 1.7.x and earlier and `log4j-slf4j18-impl` should be used with SLF4J 1.8.x and later.
+
+Note that the XML, JSON and YAML formats changed in the 2.11.0 release: they no longer have the `timeMillis` attribute and instead have an `Instant` element with `epochSecond` and `nanoOfSecond` attributes.
+
+The Log4j 2.13.0 API, as well as many core components, maintains binary compatibility with previous releases.
+
+Log4j 2.13.0 requires a minimum of Java 8 to build and run.
+Log4j 2.3 was the last release that supported Java 6 and Log4j 2.11.2 is the last release to support Java 7.
+
+For complete information on Apache Log4j 2, including instructions on how to submit bug reports, patches, or suggestions for improvement, see http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Added
+
+* Add builder pattern to Logger interface. (for https://issues.apache.org/jira/browse/LOG4J2-2639[LOG4J2-2639] by Ralph Goers)
+* Allow Spring Boot application properties to be accessed in the Log4j 2 configuration. Add lower and upper case Lookups. (for https://issues.apache.org/jira/browse/LOG4J2-2710[LOG4J2-2710] by Ralph Goers)
+* 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. (for https://issues.apache.org/jira/browse/LOG4J2-2716[LOG4J2-2716] by Ralph Goers)
+* Add a Level Pattern Selector. (for https://issues.apache.org/jira/browse/LOG4J2-2731[LOG4J2-2731] by Ralph Goers)
+* Add ThreadContext.putIfNotNull method. (for https://issues.apache.org/jira/browse/LOG4J2-2732[LOG4J2-2732] by Ralph Goers, Matt Pavlovich)
+* Add experimental support for Log4j 1 configuration files. (for https://issues.apache.org/jira/browse/LOG4J2-63[LOG4J2-63] by Ralph Goers)
+
+=== Changed
+
+* Update Jackson to 2.9.10. (for https://issues.apache.org/jira/browse/LOG4J2-2701[LOG4J2-2701] by Ralph Goers)
+* Allow message portion of GELF layout to be formatted using a PatternLayout. Allow ThreadContext attributes to be explicitly included or excluded in the GelfLayout. (for https://issues.apache.org/jira/browse/LOG4J2-2709[LOG4J2-2709] by Ralph Goers)
+
+=== Fixed
+
+* Prevent recursive calls to java.util.LogManager.getLogger(). (for https://issues.apache.org/jira/browse/LOG4J2-2058[LOG4J2-2058] by Ralph Goers)
+* Wrong java version check in ThreadNameCachingStrategy. (for https://issues.apache.org/jira/browse/LOG4J2-2635[LOG4J2-2635] by Ralph Goers, Filipp Gunbin)
+* Validation blocks definition of script in properties configuration. (for https://issues.apache.org/jira/browse/LOG4J2-2647[LOG4J2-2647] by Matt Sicker)
+* Add automatic module names where missing. (for https://issues.apache.org/jira/browse/LOG4J2-2672[LOG4J2-2672] by Ralph Goers, Stephen Colebourne)
+* OutputStreamAppender.Builder ignores setFilter(). (for https://issues.apache.org/jira/browse/LOG4J2-2673[LOG4J2-2673] by Gary Gregory, Yuichi Sugimura)
+* Use a less confusing name for the CompositeConfiguration source. (for https://issues.apache.org/jira/browse/LOG4J2-2674[LOG4J2-2674] by Ralph Goers, Anton Korenkov)
+* Set result of rename action to true if file was copied. (for https://issues.apache.org/jira/browse/LOG4J2-2680[LOG4J2-2680] by Ralph Goers, Guillermo Xavier Hurtado Garcia)
+* @PluginValue does not support attribute names besides "value". (for https://issues.apache.org/jira/browse/LOG4J2-2693[LOG4J2-2693] by Matt Sicker)
+* ArrayIndexOutOfBoundsException could occur with MAC address longer than 6 bytes. (for https://issues.apache.org/jira/browse/LOG4J2-2707[LOG4J2-2707] by Ralph Goers, Christian Frank)
+* The rolling file appenders would fail to compress the file after rollover if the file name matched the file pattern. (for https://issues.apache.org/jira/browse/LOG4J2-2712[LOG4J2-2712] by Ralph Goers)
+* LOG4J2-2725 - Added try/finally around event.execute() for RingBufferLogEventHandler to clear memory correctly in case of exception/error (for https://issues.apache.org/jira/browse/LOG4J2-2725[LOG4J2-2725] by Carter Kozak, Dzmitry Anikechanka)
+* Prevent a memory leak when async loggers throw errors. (for https://issues.apache.org/jira/browse/LOG4J2-2725[LOG4J2-2725] by Carter Kozak, Dzmitry Anikechanka)
+* Add setKey method to Kafka Appender Builder. (for https://issues.apache.org/jira/browse/LOG4J2-2727[LOG4J2-2727] by Ralph Goers, Clément Mathieu)
diff --git a/src/site/_release-notes/_2.13.1.adoc b/src/site/_release-notes/_2.13.1.adoc
new file mode 100644
index 0000000..baeb6fc
--- /dev/null
+++ b/src/site/_release-notes/_2.13.1.adoc
@@ -0,0 +1,80 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.13.1 (2020-02-25)
+
+This release contains bugfixes and minor enhancements.
+
+Due to a break in compatibility in the SLF4J binding, Log4j now ships with two versions of the SLF4J to Log4j adapters.
+`log4j-slf4j-impl` should be used with SLF4J 1.7.x and earlier and `log4j-slf4j18-impl` should be used with SLF4J 1.8.x and later.
+
+Note that the XML, JSON and YAML formats changed in the 2.11.0 release: they no longer have the `timeMillis` attribute and instead have an `Instant` element with `epochSecond` and `nanoOfSecond` attributes.
+
+The Log4j 2.13.1 API, as well as many core components, maintains binary compatibility with previous releases.
+
+Log4j 2.13.1 requires a minimum of Java 8 to build and run.
+Log4j 2.3 was the last release that supported Java 6 and Log4j 2.11.2 is the last release to support Java 7.
+
+For complete information on Apache Log4j 2, including instructions on how to submit bug reports, patches, or suggestions for improvement, see http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Added
+
+* Implement ISO8601_PERIOD_MICROS fixed date format matching ISO8601_PERIOD with support for microsecond precision. (for https://issues.apache.org/jira/browse/LOG4J2-2748[LOG4J2-2748] by Carter Kozak)
+
+=== Changed
+
+* Update log4j-slf4j18-impl slf4j version to 1.8.0-beta4 from 1.8.0-alpha2. (for https://issues.apache.org/jira/browse/LOG4J2-2745[LOG4J2-2745] by Carter Kozak)
+* Update dependencies. (for https://issues.apache.org/jira/browse/LOG4J2-2763[LOG4J2-2763] by Gary Gregory)
+* Add a retry count attribute to the KafkaAppender. (for https://issues.apache.org/jira/browse/LOG4J2-2777[LOG4J2-2777] by Ralph Goers, joongs4)
+* Use LinkedBlockingQueue instead of synchronized collection in StatusConfiguration. (for https://issues.apache.org/jira/browse/LOG4J2-2782[LOG4J2-2782] by Ralph Goers)
+* Conditionally perform status logging calculations in PluginRegistry. (for https://issues.apache.org/jira/browse/LOG4J2-2789[LOG4J2-2789] by Ralph Goers, Marius Volkhart)
+
+=== Fixed
+
+* Rollover fails when file matches pattern but index is too large. (for https://issues.apache.org/jira/browse/LOG4J2-2039[LOG4J2-2039] by Ralph Goers)
+* Allow Lookup keys with leading dashes by using a slash as an escape character. (for https://issues.apache.org/jira/browse/LOG4J2-2211[LOG4J2-2211] by Ralph Goers)
+* Fix lock contention in the classloader using new versions of slf4j without EventData on slf4j logger creation. (for https://issues.apache.org/jira/browse/LOG4J2-2415[LOG4J2-2415] by Carter Kozak, Andrey Turbanov)
+* CronExpression.getBeforeTime() would sometimes return incorrect result. (for https://issues.apache.org/jira/browse/LOG4J2-2575[LOG4J2-2575] by Ralph Goers, Nathan Friess)
+* GraalVM does not allow use of MethodHandles. (for https://issues.apache.org/jira/browse/LOG4J2-2649[LOG4J2-2649] by Ralph Goers)
+* JSON output wrong when using additional fields. (for https://issues.apache.org/jira/browse/LOG4J2-2652[LOG4J2-2652] by Ralph Goers)
+* PluginProcessor should use Messager instead of System.out. (for https://issues.apache.org/jira/browse/LOG4J2-2676[LOG4J2-2676] by Ralph Goers, Gregg Donovan)
+* Rollover handles parallel file deletion gracefully. (for https://issues.apache.org/jira/browse/LOG4J2-2677[LOG4J2-2677] by Carter Kozak)
+* MapMessage.getFormattedMessage() would incorrectly format objects. (for https://issues.apache.org/jira/browse/LOG4J2-2703[LOG4J2-2703] by Ralph Goers, Volkan Yazici)
+* Slow initialization on Windows due to accessing network interfaces. (for https://issues.apache.org/jira/browse/LOG4J2-2717[LOG4J2-2717] by Ralph Goers)
+* PluginCache output is reproducible allowing the annotation processor to produce deterministic results. (for https://issues.apache.org/jira/browse/LOG4J2-2735[LOG4J2-2735] by Carter Kozak, Andy Wilkinson)
+* Fix erroneous log4j-jul recursive logger detection resulting in some no-op JUL loggers and 'WARN Recursive call to getLogger' being reported by the status logger. (for https://issues.apache.org/jira/browse/LOG4J2-2739[LOG4J2-2739] by Carter Kozak)
+* Remove unnecessary EventLogger references from log4j-slf4j18-impl due to removal from slf4j. (for https://issues.apache.org/jira/browse/LOG4J2-2744[LOG4J2-2744] by Carter Kozak)
+* ClassLoaderContextSelector was not locating the LoggerContext during shutdown. (for https://issues.apache.org/jira/browse/LOG4J2-2746[LOG4J2-2746] by Ralph Goers)
+* Fix a memory leak using fully asynchronous logging when the queue is full using the 'discard' asynchronous queue full strategy. (for https://issues.apache.org/jira/browse/LOG4J2-2747[LOG4J2-2747] by Carter Kozak)
+* Fix StackLocator.getCallerClass performance in cases where Reflection.getCallerClass is not accessible. (for https://issues.apache.org/jira/browse/LOG4J2-2751[LOG4J2-2751] by Carter Kozak)
+* MutableLogEvent and RingBufferLogEvent avoid StringBuffer and parameter array allocation unless reusable messages are used. (for https://issues.apache.org/jira/browse/LOG4J2-2752[LOG4J2-2752] by Carter Kozak)
+* LoaderUtil.getClassLoaders may discover additional loaders and no longer erroneously returns a result with a null element in some environments. (for https://issues.apache.org/jira/browse/LOG4J2-2754[LOG4J2-2754] by Carter Kozak)
+* Prevent LoggerContext from being garbage collected while being created. (for https://issues.apache.org/jira/browse/LOG4J2-2756[LOG4J2-2756] by Ralph Goers)
+* NullPointerException when using a custom DirectFileRolloverStrategy without a file name. (for https://issues.apache.org/jira/browse/LOG4J2-2758[LOG4J2-2758] by Ralph Goers, Christoph Kaser)
+* RollingFileAppender was not rolling on startup if createOnDemand was set to true. (for https://issues.apache.org/jira/browse/LOG4J2-2759[LOG4J2-2759] by Ralph Goers)
+* Always write header on a new OutputStream. (for https://issues.apache.org/jira/browse/LOG4J2-2760[LOG4J2-2760] by Ralph Goers, Christoph Kaser)
+* [JDBC] MS-SQL Server JDBC driver throws SQLServerException when inserting a null value for a VARBINARY column. (for https://issues.apache.org/jira/browse/LOG4J2-2762[LOG4J2-2762] by Gary Gregory)
+* Warn if pattern is missing on Routes element. Use default route. (for https://issues.apache.org/jira/browse/LOG4J2-2767[LOG4J2-2767] by Ralph Goers)
+* Add multi-parameter overloads to LogBuilder. (for https://issues.apache.org/jira/browse/LOG4J2-2768[LOG4J2-2768] by Ralph Goers, Marius Volkhart)
+* Do not log an error if Files.move does not work. (for https://issues.apache.org/jira/browse/LOG4J2-2769[LOG4J2-2769] by Ralph Goers)
+* Fixed NullPointerException after reconfiguring via JMX. (for https://issues.apache.org/jira/browse/LOG4J2-2770[LOG4J2-2770] by Ralph Goers, Bill Kuker)
+* NullPointerException after reconfiguring via JMX. (for https://issues.apache.org/jira/browse/LOG4J2-2770[LOG4J2-2770] by Gary Gregory, Bill Kuker)
+* An error message in RollingFileAppender uses a placeholder for the name but does not specify the name argument in the logging call (for https://issues.apache.org/jira/browse/LOG4J2-2776[LOG4J2-2776] by Ralph Goers, Christoph Kaser)
+* ServletContainerInitializer was obtaining the StatusLogger too soon. (for https://issues.apache.org/jira/browse/LOG4J2-2781[LOG4J2-2781] by Ralph Goers, qxo)
+* Counter stuck at 10 and overwriting files when leading zeros used in the file pattern count. (for https://issues.apache.org/jira/browse/LOG4J2-2784[LOG4J2-2784] by Ralph Goers)
diff --git a/src/site/_release-notes/_2.13.2.adoc b/src/site/_release-notes/_2.13.2.adoc
new file mode 100644
index 0000000..7f6f6da
--- /dev/null
+++ b/src/site/_release-notes/_2.13.2.adoc
@@ -0,0 +1,67 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.13.2 (2020-04-23)
+
+This release contains bugfixes and minor enhancements.
+
+Due to a break in compatibility in the SLF4J binding, Log4j now ships with two versions of the SLF4J to Log4j adapters.
+`log4j-slf4j-impl` should be used with SLF4J 1.7.x and earlier and `log4j-slf4j18-impl` should be used with SLF4J 1.8.x and later.
+
+Note that the XML, JSON and YAML formats changed in the 2.11.0 release: they no longer have the `timeMillis` attribute and instead have an `Instant` element with `epochSecond` and `nanoOfSecond` attributes.
+
+The Log4j 2.13.2 API, as well as many core components, maintains binary compatibility with previous releases.
+
+Log4j 2.13.2 requires a minimum of Java 8 to build and run.
+Log4j 2.3 was the last release that supported Java 6 and Log4j 2.11.2 is the last release to support Java 7.
+
+For complete information on Apache Log4j 2, including instructions on how to submit bug reports, patches, or suggestions for improvement, see http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Added
+
+* Provide a Log4j implementation of System.Logger. (for https://issues.apache.org/jira/browse/LOG4J2-1360[LOG4J2-1360] by Ralph Goers, Kevin Leturc)
+* Added EventLookup to retrieve fields from the log event. (for https://issues.apache.org/jira/browse/LOG4J2-2807[LOG4J2-2807] by Ralph Goers)
+
+=== Changed
+
+* Allow the file extension in the file pattern to be modified during reconfiguration. (for https://issues.apache.org/jira/browse/LOG4J2-2457[LOG4J2-2457] by Ralph Goers)
+* Allow servlet context path to be retrieved without "/". (for https://issues.apache.org/jira/browse/LOG4J2-2520[LOG4J2-2520] by Ralph Goers)
+* Add ContextDataProviders as an alternative to having to implement a ContextDataInjector. (for https://issues.apache.org/jira/browse/LOG4J2-2779[LOG4J2-2779] by Ralph Goers)
+* [JDBC] Throw a AppenderLoggingException instead of an NPE in the JDBC database manager. (for https://issues.apache.org/jira/browse/LOG4J2-2812[LOG4J2-2812] by Gary Gregory)
+* Allow Spring Boot applications to use composite configurations. (for https://issues.apache.org/jira/browse/LOG4J2-2815[LOG4J2-2815] by Ralph Goers)
+* Allow Spring Lookup to return default and active profiles. (for https://issues.apache.org/jira/browse/LOG4J2-2818[LOG4J2-2818] by Ralph Goers)
+* Add support for specifying an SSL configuration for SmtpAppender. (for https://issues.apache.org/jira/browse/LOG4J2-2819[LOG4J2-2819] by Matt Sicker)
+
+=== Fixed
+
+* Add option to restore printing timeMillis in the JsonLayout. (for https://issues.apache.org/jira/browse/LOG4J2-2588[LOG4J2-2588] by Ralph Goers)
+* Fix Exceptions when whitespace is in the file path and Java security manager is used. (for https://issues.apache.org/jira/browse/LOG4J2-2761[LOG4J2-2761] by Ralph Goers, Uwe Schindler)
+* Initialize pattern processor before triggering policy during reconfiguration. (for https://issues.apache.org/jira/browse/LOG4J2-2766[LOG4J2-2766] by Ralph Goers)
+* Conditionally allocate PluginEntry during PluginCache loading. (for https://issues.apache.org/jira/browse/LOG4J2-2790[LOG4J2-2790] by Ralph Goers, Marius Volkhart)
+* Correct JsonLayout timestamp sorting issue. (for https://issues.apache.org/jira/browse/LOG4J2-2791[LOG4J2-2791] by Ralph Goers, Johan Karlberg)
+* Allow trailing and leading spaces in log level. (for https://issues.apache.org/jira/browse/LOG4J2-2793[LOG4J2-2793] by Ralph Goers, Renukaprasad C)
+* Make YamlLayoutTest more resilient to environmental differences. (for https://issues.apache.org/jira/browse/LOG4J2-2794[LOG4J2-2794] by Ralph Goers, Johan Karlberg)
+* TimeFilter did not handle daylight saving time transitions and did not support a range over 2 days. (for https://issues.apache.org/jira/browse/LOG4J2-2805[LOG4J2-2805] by Ralph Goers)
+* Avoid NullPointerException when StackWalker returns null. (for https://issues.apache.org/jira/browse/LOG4J2-2809[LOG4J2-2809] by Ralph Goers, Romain Manni-Bucau)
+* Add information about using a url in log4j.configurationFile. (for https://issues.apache.org/jira/browse/LOG4J2-2810[LOG4J2-2810] by Ralph Goers)
+* Add missing includeLocation parameter when creating AsyncLogger. (for https://issues.apache.org/jira/browse/LOG4J2-2811[LOG4J2-2811] by Ralph Goers, Kuojian21)
+* serializeToBytes was checking wrong variable for null. (for https://issues.apache.org/jira/browse/LOG4J2-2813[LOG4J2-2813] by Ralph Goers, Keith D Gregory)
+* Fix Javadoc for ScriptPatternSelector. (for https://issues.apache.org/jira/browse/LOG4J2-2814[LOG4J2-2814] by Ralph Goers)
+* Allow the file size action to parse the value without being sensitive to the current locale. (for https://issues.apache.org/jira/browse/LOG4J2-2817[LOG4J2-2817] by Ralph Goers, Trejkaz)
+* Implement requiresLocation in GelfLayout to reflect whether location information is used in the message Pattern. (for https://issues.apache.org/jira/browse/LOG4J2-2824[LOG4J2-2824] by Ralph Goers, CrazyBills)
diff --git a/src/site/_release-notes/_2.13.3.adoc b/src/site/_release-notes/_2.13.3.adoc
new file mode 100644
index 0000000..df330a2
--- /dev/null
+++ b/src/site/_release-notes/_2.13.3.adoc
@@ -0,0 +1,38 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.13.3 (2020-05-10)
+
+This release contains a fix for bug https://issues.apache.org/jira/browse/LOG4J2-2838[LOG4J2-2838].
+
+Due to a break in compatibility in the SLF4J binding, Log4j now ships with two versions of the SLF4J to Log4j adapters.
+`log4j-slf4j-impl` should be used with SLF4J 1.7.x and earlier and `log4j-slf4j18-impl` should be used with SLF4J 1.8.x and later.
+
+Note that the XML, JSON and YAML formats changed in the 2.11.0 release: they no longer have the `timeMillis` attribute and instead have an `Instant` element with `epochSecond` and `nanoOfSecond` attributes.
+
+The Log4j 2.13.3 API, as well as many core components, maintains binary compatibility with previous releases.
+
+Log4j 2.13.3 requires a minimum of Java 8 to build and run.
+Log4j 2.3 was the last release that supported Java 6 and Log4j 2.11.2 is the last release to support Java 7.
+
+For complete information on Apache Log4j 2, including instructions on how to submit bug reports, patches, or suggestions for improvement, see http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Fixed
+
+* Fix NullPointerException in ThreadContextDataInjector. (for https://issues.apache.org/jira/browse/LOG4J2-2838[LOG4J2-2838] by Ralph Goers)
diff --git a/src/site/_release-notes/_2.14.0.adoc b/src/site/_release-notes/_2.14.0.adoc
new file mode 100644
index 0000000..0c32922
--- /dev/null
+++ b/src/site/_release-notes/_2.14.0.adoc
@@ -0,0 +1,93 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.14.0 (2020-11-06)
+
+This release contains a new Layout, `JsonTemplateLayout`, that is intended to ultimately replace `JsonLayout`.
+As its name suggests it uses a template to define the elements to include in the JSON.
+This Layout was contributed by the author of the https://github.com/vy/log4j2-logstash-layout[log4j2-logstash-layout], and who is now a member of the Log4j community.
+
+Log4j 2.14.0 adds support for MongoDB 4 and removes support for MongoDB 2.
+
+This release also contains a number of bug fixes which are listed below.
+
+Due to a break in compatibility in the SLF4J binding, Log4j now ships with two versions of the SLF4J to Log4j adapters.
+`log4j-slf4j-impl` should be used with SLF4J 1.7.x and earlier and `log4j-slf4j18-impl` should be used with SLF4J 1.8.x and later.
+
+The Log4j 2.14.0 API, as well as many core components, maintains binary compatibility with previous releases.
+
+Log4j 2.14.0 requires a minimum of Java 8 to build and run.
+Log4j 2.12.1 is the last release to support Java 7.
+
+For complete information on Apache Log4j 2, including instructions on how to submit bug reports, patches, or suggestions for improvement, see http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Added
+
+* Create module log4j-mongodb4 to use new major version 4 MongoDB driver. (for https://issues.apache.org/jira/browse/LOG4J2-2848[LOG4J2-2848] by Gary Gregory)
+* More flexible configuration of the Disruptor WaitStrategy. (for https://issues.apache.org/jira/browse/LOG4J2-2858[LOG4J2-2858] by Carter Kozak, Stepan Gorban)
+* Add JsonTemplateLayout. (for https://issues.apache.org/jira/browse/LOG4J2-2957[LOG4J2-2957] by Volkan Yazıcı)
+
+=== Changed
+
+* Add date pattern support for HTML layout. (for https://issues.apache.org/jira/browse/LOG4J2-2889[LOG4J2-2889] by Matt Sicker, Geng Yuanzhe)
+* Allow GelfLayout to produce newline delimited events. (for https://issues.apache.org/jira/browse/LOG4J2-2892[LOG4J2-2892] by Ralph Goers, Jakub Lukes)
+* Update MongoDB tests to require Java 8 unconditionally now that Log4j requires Java 8. (for by Gary Gregory)
+* Update com.fasterxml.jackson.* 2.10.2 -> 2.11.0. (for by Gary Gregory)
+* Update jackson 2.11.0 -> 2.11.2. (for by Gary Gregory)
+* Update mongodb3.version from 3.12.1 to 3.12.6. (for by Gary Gregory)
+* Update org.apache.activemq:activemq-broker 5.15.11 -> 5.16.0. (for by Gary Gregory)
+* Update org.apache.commons:commons-compress 1.19 -> 1.20. (for by Gary Gregory)
+* Update org.apache.commons:commons-csv 1.7 -> 1.8. (for by Gary Gregory)
+* Update org.apache.commons:commons-lang3 3.9 -> 3.10. (for by Gary Gregory)
+* Update org.codehaus.groovy:* 2.5.6 -> 3.0.5. (for by Gary Gregory)
+* Update tests commons-io:commons-io 2.6 -> 2.7. (for by Gary Gregory)
+* Update tests hsqldb 2.5.0 -> 2.5.1. (for by Gary Gregory)
+* Update tests junit:junit 4.12 -> 4.13. (for by Gary Gregory)
+
+=== Removed
+
+* Drop log4j-mongodb2 module. (for https://issues.apache.org/jira/browse/LOG4J2-2851[LOG4J2-2851] by Gary Gregory)
+
+=== Fixed
+
+* Javadoc link in ThreadContext description was incorrect. (for https://issues.apache.org/jira/browse/LOG4J2-2822[LOG4J2-2822] by Ralph Goers)
+* Correct class name printed in error message in RollingFileAppender. (for https://issues.apache.org/jira/browse/LOG4J2-2832[LOG4J2-2832] by Ralph Goers, Benjamin Asbach)
+* Disruptor and JUL no longer recursively start the AsyncLoggerDisruptor resulting in an extra disruptor background thread constantly waiting. (for https://issues.apache.org/jira/browse/LOG4J2-2837[LOG4J2-2837] by Carter Kozak)
+* Null pointer exception when no network interfaces are available. (for https://issues.apache.org/jira/browse/LOG4J2-2844[LOG4J2-2844] by Gary Gregory)
+* Fixed typos where mergeFactory should be mergeStrategy. (for https://issues.apache.org/jira/browse/LOG4J2-2859[LOG4J2-2859] by Ralph Goers, Yanming Zhou)
+* Obtain ContextDataProviders asynchronously. (for https://issues.apache.org/jira/browse/LOG4J2-2867[LOG4J2-2867] by Ralph Goers)
+* RingBufferLogEventTranslator uses a static ContextDataInjector instead of initializing a new object on each thread. (for https://issues.apache.org/jira/browse/LOG4J2-2867[LOG4J2-2867] by Carter Kozak)
+* Rollover was failing to create directories when using a DirectFileRolloverStrategy. (for https://issues.apache.org/jira/browse/LOG4J2-2875[LOG4J2-2875] by Ralph Goers)
+* Determine the container id to obtain container and image information. (for https://issues.apache.org/jira/browse/LOG4J2-2877[LOG4J2-2877] by Ralph Goers)
+* Create StackWalker benchmark. Revert back to StackWalker.walk based on benchmark results. (for https://issues.apache.org/jira/browse/LOG4J2-2880[LOG4J2-2880] by Ralph Goers)
+* Support java.util.logging filters when using that API. (for https://issues.apache.org/jira/browse/LOG4J2-2882[LOG4J2-2882] by Ralph Goers, Emmanuel Bourg)
+* When using DirectFileRolloverStrategy the file pattern was not being recalculated on size based rollover after a time based rollover had occurred. (for https://issues.apache.org/jira/browse/LOG4J2-2883[LOG4J2-2883] by Ralph Goers)
+* Fix spelling error in log message. (for https://issues.apache.org/jira/browse/LOG4J2-2894[LOG4J2-2894] by Ralph Goers)
+* Fix potential deadlock in asynchronous logging by avoiding blocking for queue space on Log4jThreads (for https://issues.apache.org/jira/browse/LOG4J2-2895[LOG4J2-2895] by Carter Kozak)
+* Avoid initializing volatile fields with default values. (for https://issues.apache.org/jira/browse/LOG4J2-2898[LOG4J2-2898] by Carter Kozak, Turbanov Andrey)
+* Fix log4j-1.2-api LogEventWrapper threadId and priority accessors when called multiple times. (for https://issues.apache.org/jira/browse/LOG4J2-2899[LOG4J2-2899] by Carter Kozak)
+* Missing configuration files should be ignored when creating a composite configuration. (for https://issues.apache.org/jira/browse/LOG4J2-2901[LOG4J2-2901] by Ralph Goers)
+* Fix UnsupportedOperationException when initializing the Log4j2CloudConfigLoggingSystem. (for https://issues.apache.org/jira/browse/LOG4J2-2906[LOG4J2-2906] by Ralph Goers, Stephen Joyner)
+* Move Spring Lookup and Spring PropertySource to its own module. (for https://issues.apache.org/jira/browse/LOG4J2-2908[LOG4J2-2908] by Ralph Goers)
+* Log4j-web should now store the servlet context as a map entry instead of in the single external context field. (for https://issues.apache.org/jira/browse/LOG4J2-2910[LOG4J2-2910] by Ralph Goers)
+* Log4j2EventListener in spring.cloud.config.client listens for wrong event. (for https://issues.apache.org/jira/browse/LOG4J2-2911[LOG4J2-2911] by Ralph Goers)
+* Call ReliabilityStrategy's beforeStopAppenders() method before stopping AsyncAppender. (for https://issues.apache.org/jira/browse/LOG4J2-2919[LOG4J2-2919] by Matt Sicker, Geng Yuanzhe)
+* Fix broken link in FAQ. (for https://issues.apache.org/jira/browse/LOG4J2-2925[LOG4J2-2925] by Ralph Goers)
+* Fix NPE in MDCContextMap on 'contains' and 'isEmpty' invocations. (for https://issues.apache.org/jira/browse/LOG4J2-2939[LOG4J2-2939] by Carter Kozak, Constantin Hirsch)
+* Prevent premature garbage collection of shutdown hooks in DefaultShutdownCallbackRegistry. (for https://issues.apache.org/jira/browse/LOG4J2-2954[LOG4J2-2954] by Carter Kozak, Henry Tung)
diff --git a/src/site/_release-notes/_2.14.1.adoc b/src/site/_release-notes/_2.14.1.adoc
new file mode 100644
index 0000000..e925056
--- /dev/null
+++ b/src/site/_release-notes/_2.14.1.adoc
@@ -0,0 +1,104 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.14.1 (2021-03-06)
+
+This release contains a number of bug fixes and minor enhancements which are
+listed below.
+
+Due to a break in compatibility in the SLF4J binding, Log4j now ships with two versions of the SLF4J to Log4j adapters.
+`log4j-slf4j-impl` should be used with SLF4J 1.7.x and earlier and `log4j-slf4j18-impl` should be used with SLF4J 1.8.x and later.
+
+The Log4j 2.14.1 API, as well as many core components, maintains binary compatibility with previous releases.
+
+Log4j 2.14.1 requires a minimum of Java 8 to build and run.
+Log4j 2.12.1 is the last release to support Java 7.
+
+For complete information on Apache Log4j 2, including instructions on how to submit bug reports, patches, or suggestions for improvement, see http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Added
+
+* Enrich "map" resolver by unifying its backend with "mdc" resolver. (for https://issues.apache.org/jira/browse/LOG4J2-2962[LOG4J2-2962] by Volkan Yazıcı)
+* Support stack trace truncation in JsonTemplateLayout. (for https://issues.apache.org/jira/browse/LOG4J2-2993[LOG4J2-2993] by Volkan Yazıcı)
+* Replace JsonTemplateLayout resolver configurations table in docs with sections. (for https://issues.apache.org/jira/browse/LOG4J2-2999[LOG4J2-2999] by Volkan Yazıcı)
+
+=== Changed
+
+* Allow reconfiguration when Log4j 1 configuration files are updated. (for https://issues.apache.org/jira/browse/LOG4J2-2893[LOG4J2-2893] by Ralph Goers)
+* Add Rollover Listener to aid in unit test validation. (for https://issues.apache.org/jira/browse/LOG4J2-2923[LOG4J2-2923] by Ralph Goers)
+* Replace outdated PatternLayout.createLayout() calls in docs with createDefaultLayout(). (for https://issues.apache.org/jira/browse/LOG4J2-2977[LOG4J2-2977] by Volkan Yazıcı, Ron Grabowski)
+* Update JSON Unit 2.21.0 -> 2.22.0. (for by Gary Gregory)
+* Update JaCoCo 0.8.3 -> 0.8.6. (for by Gary Gregory)
+* Update Mockito 3.6.0 -> 3.7.0. (for by Gary Gregory)
+* Update MongoDB 3 plugin: org.mongodb:mongodb-driver 3.12.6 -> 3.12.7. (for by Gary Gregory)
+* Update MongoDB 4 plugin: org.mongodb:* 4.1.0 -> 4.1.1. (for by Gary Gregory)
+* Update Spring dependencies to 5.3.2, Spring Boot to 2.3.6, and Spring Cloud to Hoxton.SR9 (for by Ralph Goers)
+* Update Woodstox 5.0.3 -> 6.2.3 to match Jackson 2.12.1. (for by Gary Gregory)
+* Update XML Unit 2.8.0 -> 2.8.2. (for by Gary Gregory)
+* Update com.fasterxml.jackson.*:* 2.11.2 - 2.11.3. (for by Gary Gregory)
+* Update commons-codec:commons-codec 1.14 -> 1.15. (for by Gary Gregory)
+* Update commons-io:commons-io 2.7 -> 2.8.0. (for by Gary Gregory)
+* Update de.flapdoodle.embed:de.flapdoodle.embed.mongo 2.2.0 -> 3.0.0. (for by Gary Gregory)
+* Update junit:junit 4.13 -> 4.13.1. (for by Gary Gregory)
+* Update mongodb4.version 4.1.1 -> 4.2.0. (for by Gary Gregory)
+* Update net.javacrumbs.json-unit:json-unit 1.31.1 -> 2.22.0. (for by Gary Gregory)
+* Update net.javacrumbs.json-unit:json-unit 2.22.0 -> 2.23.0. (for by Gary Gregory)
+* Update org.apache.activemq:* 5.16.0 -> 5.16.1. (for by Gary Gregory)
+* Update org.apache.commons:commons-dbcp2 2.4.0 -> 2.8.0. (for by Gary Gregory)
+* Update org.apache.commons:commons-lang3 3.10 -> 3.11. (for by Gary Gregory)
+* Update org.apache.commons:commons-pool2 2.8.1 -> 2.9.0. (for by Gary Gregory)
+* Update org.assertj:assertj-core 3.14.0 -> 3.18.1. (for by Gary Gregory)
+* Update org.assertj:assertj-core 3.18.1 -> 3.19.0. (for by Gary Gregory)
+* Update org.awaitility:awaitility 4.0.2 -> 4.0.3. (for by Gary Gregory)
+* Update org.codehaus.groovy:* 3.0.5 -> 3.0.6. (for by Gary Gregory)
+* Update org.codehaus.plexus:plexus-utils 3.2.0 -> 3.3.0. (for by Gary Gregory)
+* Update org.eclipse.tycho:org.eclipse.osgi 3.12.1.v20170821-1548 -> 3.13.0.v20180226-1711. (for by Gary Gregory)
+* Update org.fusesource.jansi:jansi 1.17.1 -> 2.0.1. (for by Gary Gregory)
+* Update org.fusesource.jansi:jansi 1.18 -> 2.2.0. (for by Gary Gregory)
+* Update org.fusesource.jansi:jansi 1.18 -> 2.3.1. (for by Gary Gregory)
+* Update org.mockito:mockito-* 3.7.0 -> 3.7.7. (for by Gary Gregory)
+* Update org.springframework:* 5.2.8.RELEASE -> 5.3.1. (for by Gary Gregory)
+* Update org.springframework:* 5.3.2 -> 5.3.3. (for by Gary Gregory)
+* Update org.xmlunit:* 2.7.0 -> 2.8.0. (for by Gary Gregory)
+* - com.fasterxml.jackson.core:jackson-annotations ................. 2.12.1 -> 2.12.2 - com.fasterxml.jackson.core:jackson-core ........................ 2.12.1 -> 2.12.2 - com.fasterxml.jackson.core:jackson-databind .................... 2.12.1 -> 2.12.2 - com.fasterxml.jackson.dataformat:jackson-dataformat-xml ........ 2.12.1 -> 2.12.2 - com.fasterxml.jackson.dataformat:jackson-dataformat-yaml ....... 2.12.1 -> 2.12.2 - com.fasterxml.jackson.module:jackson-module-jaxb-annotations ... 2.12.1 -> 2.12.2 - org.apache.commons:commons-lang3 ............................... 3.11 -> 3.12.0 - org.junit.jupiter:junit-jupiter-engine ......................... 5.7.0 -> 5.7.1 - org.junit.jupiter:junit-jupiter-migrationsupport ............... 5.7.0 -> 5.7.1 - org.junit.jupiter:junit-jupiter-params ......................... 5.7.0 -> 5.7.1 - org.junit.vintage:junit-vintage-engine ......................... 5.7.0 -> 5.7.1 - org.mockito:mockito-core ....................................... 3.7.7 -> 3.8.0 - org.mockito:mockito-junit-jupiter .............................. 3.7.7 -> 3.8.0 - org.mongodb:bson ............................................... 4.2.0 -> 4.2.2 - org.mongodb:mongodb-driver-sync ................................ 4.2.0 -> 4.2.2 (for by Gary Gregory)
+
+=== Fixed
+
+* Allow auto-shutdown of log4j in log4j-web to be turned off and provide a ServletContextListener "Log4jShutdownOnContextDestroyedListener" to stop log4j. Register the listener at the top of web.xml to ensure the shutdown happens last. (for https://issues.apache.org/jira/browse/LOG4J2-1606[LOG4J2-1606] by Matt Sicker, Tim Perry)
+* Allow auto-shutdown of log4j in log4j-web to be turned off and provide a ServletContextListener "Log4jShutdownOnContextDestroyedListener" to stop log4j. Register the listener at the top of web.xml to ensure the shutdown happens last. (for https://issues.apache.org/jira/browse/LOG4J2-2624[LOG4J2-2624] by Matt Sicker, Tim Perry)
+* Avoid redundant Kafka producer instantiation causing thread leaks. (for https://issues.apache.org/jira/browse/LOG4J2-2916[LOG4J2-2916] by Volkan Yazıcı, wuqian0808)
+* Document that LogBuilder default methods do nothing. (for https://issues.apache.org/jira/browse/LOG4J2-2947[LOG4J2-2947] by Ralph Goers)
+* Replace HashSet with IdentityHashMap in ParameterFormatter to detect cycles. (for https://issues.apache.org/jira/browse/LOG4J2-2948[LOG4J2-2948] by Volkan Yazıcı)
+* Fix reading of JsonTemplateLayout event additional fields from config. (for https://issues.apache.org/jira/browse/LOG4J2-2961[LOG4J2-2961] by Volkan Yazıcı)
+* Merge packages from several Configurations in Composite Configuration. (for https://issues.apache.org/jira/browse/LOG4J2-2964[LOG4J2-2964] by Volkan Yazıcı, Valery Yatsynovich)
+* Fix JsonTemplateLayout index based parameter resolution when messages contain too few parameters. (for https://issues.apache.org/jira/browse/LOG4J2-2967[LOG4J2-2967] by Carter Kozak)
+* Refactor AsyncAppender and AppenderControl for handling of Throwables. (for https://issues.apache.org/jira/browse/LOG4J2-2972[LOG4J2-2972] by Volkan Yazıcı)
+* Rename EventTemplateAdditionalField#type (conflicting with properties file parser) to "format". (for https://issues.apache.org/jira/browse/LOG4J2-2973[LOG4J2-2973] by Volkan Yazıcı, Fabio Ricchiuti)
+* Log4j would fail to initialize in Java 8 with log4j-spring-boot. (for https://issues.apache.org/jira/browse/LOG4J2-2974[LOG4J2-2974] by Ralph Goers)
+* JdbcAppender composes an incorrect INSERT statement without a ColumnMapping element. (for https://issues.apache.org/jira/browse/LOG4J2-2976[LOG4J2-2976] by Carter Kozak)
+* OnStartupTriggeringPolicy would fail to cause the file to roll over with DirectWriteTriggeringPolicy unless minSize was set to 0. (for https://issues.apache.org/jira/browse/LOG4J2-2981[LOG4J2-2981] by Ralph Goers)
+* Add eventTemplateRootObjectKey parameter to JsonTemplateLayout. (for https://issues.apache.org/jira/browse/LOG4J2-2985[LOG4J2-2985] by Volkan Yazıcı)
+* Reduce garbage by using putAll when copying the ThreadContext for SLF4J. (for https://issues.apache.org/jira/browse/LOG4J2-2990[LOG4J2-2990] by Ralph Goers, Diogo Monteiro)
+* Fix truncation of excessive strings ending with a high surrogate in JsonWriter. (for https://issues.apache.org/jira/browse/LOG4J2-2998[LOG4J2-2998] by Volkan Yazıcı)
+* Directly create a thread instead of using the common ForkJoin pool when initializing ThreadContextDataInjector" (for https://issues.apache.org/jira/browse/LOG4J2-3006[LOG4J2-3006] by Ralph Goers)
+* Log4j1ConfigurationConverter on Windows produces " " at end of every line. (for https://issues.apache.org/jira/browse/LOG4J2-3014[LOG4J2-3014] by Gary Gregory, Lee Breisacher)
+* OutputStreamManager.flushBuffer always resets the buffer, previously the buffer was not reset after an exception. (for https://issues.apache.org/jira/browse/LOG4J2-3028[LOG4J2-3028] by Carter Kozak, Jakub Kozlowski)
+* Add log method with no parameters - i.e. it has an empty message. (for https://issues.apache.org/jira/browse/LOG4J2-3033[LOG4J2-3033] by Ralph Goers)
+* Attempting to call getExtendedStackTraceAsString() after deserializing JSON LogEvent results in a NPE. (for https://issues.apache.org/jira/browse/LOG4J2-3131[LOG4J2-3131] by Gary Gregory, Adam Long)
+* NoGcLayout allocates empty bytes arrays for its header and footer. (for https://issues.apache.org/jira/browse/LOG4J2-3131[LOG4J2-3131] by Gary Gregory, Gary Gregory)
diff --git a/src/site/_release-notes/_2.15.0.adoc b/src/site/_release-notes/_2.15.0.adoc
new file mode 100644
index 0000000..9764ee0
--- /dev/null
+++ b/src/site/_release-notes/_2.15.0.adoc
@@ -0,0 +1,142 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.15.0 (2021-12-06)
+
+This release contains a number of bug fixes and minor enhancements which are listed below.
+
+The Log4j team has been made aware of a security vulnerability, CVE-2021-44228, that has been addressed in Log4j 2.15.0.
+
+Log4j's JNDI support has not restricted what names could be resolved.
+Some protocols are unsafe or can allow remote code execution.
+Log4j now limits the protocols by default to only java, ldap, and ldaps and limits the ldap protocols to only accessing Java primitive objects by default served on the local host.
+
+One vector that allowed exposure to this vulnerability was Log4j's allowance of Lookups to appear in log messages.
+As of Log4j 2.15.0 this feature is now disabled by default.
+While an option has been provided to enable Lookups in this fashion, users are strongly discouraged from enabling it.
+
+Users who cannot upgrade to 2.15.0 can mitigate the exposure by:
+
+. Users of Log4j 2.10 or greater may add `-Dlog4j.formatMsgNoLookups=true` as a command line option or add `log4j.formatMsgNoLookups=true` to a `log4j2.component.properties` file on the classpath to prevent lookups in log event messages.
+. Users since Log4j 2.7 may specify `%\{nolookups}` in the `PatternLayout` configuration to prevent lookups in log event messages.
+. Remove the `JndiLookup` and `JndiManager` classes from the `log4j-core` JAR.
+Removal of the `JndiManager` will cause the `JndiContextSelector` and `JMSAppender` to no longer function.
+
+Due to a break in compatibility in the SLF4J binding, Log4j now ships with two versions of the SLF4J to Log4j adapters.
+`log4j-slf4j-impl` should be used with SLF4J 1.7.x and earlier and `log4j-slf4j18-impl` should be used with SLF4J 1.8.x and later.
+SLF4J-2.0.0 alpha releases are not fully supported.
+See https://issues.apache.org/jira/browse/LOG4J2-2975[LOG4J2-2975] and https://jira.qos.ch/browse/SLF4J-511[SLF4J-511].
+
+Some of the new features in Log4j 2.15.0 include:
+
+* Support for Arbiters, which are conditionals that can enable sections of the logging configuration for inclusion or exclusion.
+In particular, `SpringProfile`, `SystemProperty`, Script, and Class Arbiters have been provided that use the Spring profile, System property, the result of a script, or the presence of a class respectively to determine whether a section of configuration should be included.
+* Support for Jakarta EE 9.
+This is functionally equivalent to Log4j's `log4j-web` module but uses the Jakarta project.
+* Various performance improvements.
+
+Key changes to note:
+
+* Prior to this release Log4j would automatically resolve Lookups contained in the message or its parameters in the Pattern Layout.
+This behavior is no longer the default and must be enabled by specifying `%msg\{lookup}`.
+* The JNDI Lookup has been restricted to only support the java, ldap, and ldaps protocols by default.
+LDAP also no longer supports classes that implement the `Referenceable` interface and restricts the Serializable classes to the Java primitive classes by default and requires an allow list to be specified to access remote LDAP servers.
+
+The Log4j 2.15.0 API, as well as many core components, maintains binary compatibility with previous releases.
+
+Apache Log4j 2.15.0 requires a minimum of Java 8 to build and run.
+Log4j 2.12.1 is the last release to support Java 7.
+Java 7 is no longer supported by the Log4j team.
+
+For complete information on Apache Log4j 2, including instructions on how to submit bug reports, patches, or suggestions for improvement, see http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Added
+
+* Add support for US-style date patterns and micro/nano seconds to FixedDateTime. (for https://issues.apache.org/jira/browse/LOG4J2-2885[LOG4J2-2885] by Volkan Yazıcı, Markus Spann)
+* Add BasicAsyncLoggerContextSelector equivalent to AsyncLoggerContextSelector for applications with a single LoggerContext. This selector avoids classloader lookup overhead incurred by the existing AsyncLoggerContextSelector. (for https://issues.apache.org/jira/browse/LOG4J2-2940[LOG4J2-2940] by Carter Kozak)
+* Context selectors are aware of their dependence upon the callers ClassLoader, allowing basic context selectors to avoid the unnecessary overhead of walking the stack to determine the caller's ClassLoader. (for https://issues.apache.org/jira/browse/LOG4J2-2940[LOG4J2-2940] by Carter Kozak)
+* Add support for Jakarta EE 9 (Tomcat 10 / Jetty 11) (for https://issues.apache.org/jira/browse/LOG4J2-2978[LOG4J2-2978] by Ralph Goers, Michael Seele)
+* Add plugin support to JsonTemplateLayout. (for https://issues.apache.org/jira/browse/LOG4J2-3004[LOG4J2-3004] by Volkan Yazıcı)
+* Allow a PatternSelector to be specified on GelfLayout. (for https://issues.apache.org/jira/browse/LOG4J2-3041[LOG4J2-3041] by Ralph Goers)
+* Add RepeatPatternConverter. (for https://issues.apache.org/jira/browse/LOG4J2-3044[LOG4J2-3044] by Ralph Goers)
+* Add improved MapMessage support to GelfLayout. (for https://issues.apache.org/jira/browse/LOG4J2-3048[LOG4J2-3048] by Ralph Goers)
+* Allow MapMessage and ThreadContext attributes to be prefixed. (for https://issues.apache.org/jira/browse/LOG4J2-3049[LOG4J2-3049] by Ralph Goers)
+* Allow AdditionalFields to be ignored if their value is null or a zero-length String. (for https://issues.apache.org/jira/browse/LOG4J2-3050[LOG4J2-3050] by Ralph Goers)
+* Add CaseConverterResolver to JsonTemplateLayout. (for https://issues.apache.org/jira/browse/LOG4J2-3051[LOG4J2-3051] by Volkan Yazıcı)
+* Refactor MD5 usage for sharing sensitive information. (for https://issues.apache.org/jira/browse/LOG4J2-3056[LOG4J2-3056] by Volkan Yazıcı, Marcono1234)
+* Add Arbiters and SpringProfile plugin. (for https://issues.apache.org/jira/browse/LOG4J2-3064[LOG4J2-3064] by Ralph Goers)
+* Add CounterResolver to JsonTemplateLayout. (for https://issues.apache.org/jira/browse/LOG4J2-3067[LOG4J2-3067] by Volkan Yazıcı)
+* Add replacement parameter to ReadOnlyStringMapResolver. (for https://issues.apache.org/jira/browse/LOG4J2-3074[LOG4J2-3074] by Volkan Yazıcı)
+* Add JsonTemplateLayout for Google Cloud Platform structured logging layout. (for https://issues.apache.org/jira/browse/LOG4J2-3116[LOG4J2-3116] by Raman Gupta)
+* Add missing slf4j-api singleton accessors to log4j-slf4j-impl (1.7) StaticMarkerBinder and StaticMDCBinder. This doesn't impact behavior or correctness, but avoids throwing and catching NoSuchMethodErrors when slf4j is initialized and avoids linkage linting warnings. (for https://issues.apache.org/jira/browse/LOG4J2-3133[LOG4J2-3133] by Carter Kozak)
+* Avoid ThreadLocal overhead in RandomAccessFileAppender, RollingRandomAccessFileManager, and MemoryMappedFileManager due to the unused setEndOfBatch and isEndOfBatch methods. The methods on LogEvent are preferred. (for https://issues.apache.org/jira/browse/LOG4J2-3141[LOG4J2-3141] by Carter Kozak)
+* Prefer string.getBytes(Charset) over string.getBytes(String) based on performance improvements in modern Java releases. (for https://issues.apache.org/jira/browse/LOG4J2-3144[LOG4J2-3144] by Carter Kozak)
+* Make CRLF/HTML encoding run in O(n) worst-case time, rather than O(n^2). (for https://issues.apache.org/jira/browse/LOG4J2-3170[LOG4J2-3170] by Volkan Yazıcı, Gareth Smith)
+* Improve PatternLayout performance by reducing unnecessary indirection and branching. (for https://issues.apache.org/jira/browse/LOG4J2-3171[LOG4J2-3171] by Carter Kozak)
+* Improve NameAbbreviator worst-case performance. (for https://issues.apache.org/jira/browse/LOG4J2-3189[LOG4J2-3189] by Carter Kozak)
+* Allow fractional attributes for size attribute of SizeBasedTriggeringPolicy. (for https://issues.apache.org/jira/browse/LOG4J2-3194[LOG4J2-3194] by Ralph Goers, markuss)
+* Pattern layout no longer enables lookups within message text by default for cleaner API boundaries and reduced formatting overhead. The old 'log4j2.formatMsgNoLookups' which enabled this behavior has been removed as well as the 'nolookups' message pattern converter option. The old behavior can be enabled on a per-pattern basis using '%m{lookups}'. (for https://issues.apache.org/jira/browse/LOG4J2-3198[LOG4J2-3198] by Carter Kozak)
+
+=== Changed
+
+* Handle interrupted exceptions that occur during rollover. (for https://issues.apache.org/jira/browse/LOG4J2-1798[LOG4J2-1798] by Ralph Goers, Viacheslav Zhivaev)
+* Provide support for overriding the Tomcat Log class in Tomcat 8.5+. (for https://issues.apache.org/jira/browse/LOG4J2-2025[LOG4J2-2025] by Ralph Goers)
+* Minor documentation corrections regarding log levels. (for https://issues.apache.org/jira/browse/LOG4J2-2540[LOG4J2-2540] by Ralph Goers)
+* Minor documentation corrections in the configuration section. (for https://issues.apache.org/jira/browse/LOG4J2-2541[LOG4J2-2541] by Ralph Goers, Gerold Broser)
+* Correct documentation for SyslogAppender when using TLS. (for https://issues.apache.org/jira/browse/LOG4J2-2553[LOG4J2-2553] by Ralph Goers)
+* Log4j 1.x properties were not being substituted. (for https://issues.apache.org/jira/browse/LOG4J2-2951[LOG4J2-2951] by Ralph Goers)
+* Fix Log Event Level vs Logger Config Level table. (for https://issues.apache.org/jira/browse/LOG4J2-3166[LOG4J2-3166] by Ralph Goers)
+* Update Spring framework to 5.3.13, Spring Boot to 2.5.7, and Spring Cloud to 2020.0.4. (for by Ralph Goers)
+* Updated dependencies. - com.fasterxml.jackson.core:jackson-annotations ................. 2.12.2 -> 2.12.4 - com.fasterxml.jackson.core:jackson-core ........................ 2.12.2 -> 2.12.4 - com.fasterxml.jackson.core:jackson-databind .................... 2.12.2 -> 2.12.4 - com.fasterxml.jackson.dataformat:jackson-dataformat-xml ........ 2.12.2 -> 2.12.4 - com.fasterxml.jackson.dataformat:jackson-dataformat-yaml ....... 2.12.2 -> 2.12.4 - com.fasterxml.jackson.module:jackson-module-jaxb-annotations ... 2.12.2 -> 2.12.4 - com.fasterxml.woodstox:woodstox-core ........................... 6.2.4 -> 6.2.6 - commons-io:commons-io .......................................... 2.8.0 -> 2.11.0 - net.javacrumbs.json-unit:json-unit ............................. 2.24.0 -> 2.25.0 - net.javacrumbs.json-unit:json-unit ............................. 2.25.0 -> 2.27.0 - org.apache.activemq:activemq-broker ............................ 5.16.1 -> 5.16.2 - org.apache.activemq:activemq-broker ............................ 5.16.2 -> 5.16.3 - org.apache.commons:commons-compress ............................ 1.20 -> 1.21 - org.apache.commons:commons-csv ................................. 1.8 -> 1.9.0 - org.apache.commons:commons-dbcp2 ............................... 2.8.0 -> 2.9.0 - org.apache.commons:commons-pool2 ............................... 2.9.0 -> 2.11.1 - org.apache.maven.plugins:maven-failsafe-plugin ................. 2.22.2 -> 3.0.0-M5 - org.apache.maven.plugins:maven-surefire-plugin ................. 2.22.2 -> 3.0.0-M5 - org.apache.rat:apache-rat-plugin ............................... 0.12 -> 0.13 - org.assertj:assertj-core ....................................... 3.19.0 -> 3.20.2 - org.codehaus.groovy:groovy-dateutil ............................ 3.0.7 -> 3.0.8 - org.codehaus.groovy:groovy-jsr223 .............................. 3.0.7 -> 3.0.8 - org.codehaus.plexus:plexus-utils ............................... 3.3.0 -> 3.4.0 - org.eclipse.persistence:javax.persistence ...................... 2.1.1 -> 2.2.1 - org.eclipse.persistence:org.eclipse.persistence.jpa ............ 2.6.5 -> 2.6.9 - org.eclipse.persistence:org.eclipse.persistence.jpa ............ 2.7.8 -> 2.7.9 - org.fusesource.jansi ........................................... 2.3.2 -> 2.3.4 - org.fusesource.jansi:jansi ..................................... 2.3.1 -> 2.3.2 - org.hsqldb:hsqldb .............................................. 2.5.1 -> 2.5.2 - org.junit.jupiter:junit-jupiter-engine ......................... 5.7.1 -> 5.7.2 - org.junit.jupiter:junit-jupiter-migrationsupport ............... 5.7.1 -> 5.7.2 - org.junit.jupiter:junit-jupiter-params ......................... 5.7.1 -> 5.7.2 - org.junit.vintage:junit-vintage-engine ......................... 5.7.1 -> 5.7.2 - org.liquibase:liquibase-core ................................... 3.5.3 -> 3.5.5 - org.mockito:mockito-core ....................................... 3.8.0 -> 3.11.2 - org.mockito:mockito-junit-jupiter .............................. 3.8.0 -> 3.11.2 - org.springframework:spring-aop ................................. 5.3.3 -> 5.3.9 - org.springframework:spring-beans ............................... 5.3.3 -> 5.3.9 - org.springframework:spring-context ............................. 5.3.3 -> 5.3.9 - org.springframework:spring-context-support ..................... 5.3.3 -> 5.3.9 - org.springframework:spring-core ................................ 5.3.3 -> 5.3.9 - org.springframework:spring-expression .......................... 5.3.3 -> 5.3.9 - org.springframework:spring-oxm ................................. 5.3.3 -> 5.3.9 - org.springframework:spring-test ................................ 5.3.3 -> 5.3.9 - org.springframework:spring-web ................................. 5.3.3 -> 5.3.9 - org.springframework:spring-webmvc .............................. 5.3.3 -> 5.3.9 - org.tukaani:xz ................................................. 1.8 -> 1.9 (for by Gary Gregory)
+
+=== Fixed
+
+* LoggerContext skips resolving localhost when hostName is configured. (for https://issues.apache.org/jira/browse/LOG4J2-2808[LOG4J2-2808] by Carter Kozak, Asapha Halifa)
+* Handle Disruptor event translation exceptions. (for https://issues.apache.org/jira/browse/LOG4J2-2816[LOG4J2-2816] by Volkan Yazıcı, Jacob Shields)
+* SocketAppender should propagate failures when reconnection fails. (for https://issues.apache.org/jira/browse/LOG4J2-2829[LOG4J2-2829] by Volkan Yazıcı)
+* Slf4j implementations walk the stack at most once rather than twice to determine the caller's class loader. (for https://issues.apache.org/jira/browse/LOG4J2-2940[LOG4J2-2940] by Carter Kozak)
+* Fixed a deadlock between the AsyncLoggerContextSelector and java.util.logging.LogManager by updating Disruptor to 3.4.4. (for https://issues.apache.org/jira/browse/LOG4J2-2965[LOG4J2-2965] by Carter Kozak)
+* BasicContextSelector hasContext and shutdown take the default context into account (for https://issues.apache.org/jira/browse/LOG4J2-3054[LOG4J2-3054] by Carter Kozak)
+* Fix thread-safety issues in DefaultErrorHandler. (for https://issues.apache.org/jira/browse/LOG4J2-3060[LOG4J2-3060] by Volkan Yazıcı, Nikita Mikhailov)
+* Ensure EncodingPatternConverter#handlesThrowable is implemented. (for https://issues.apache.org/jira/browse/LOG4J2-3070[LOG4J2-3070] by Volkan Yazıcı, Romain Manni-Bucau)
+* Fix formatting of nanoseconds in JsonTemplateLayout. (for https://issues.apache.org/jira/browse/LOG4J2-3075[LOG4J2-3075] by Volkan Yazıcı)
+* Use SimpleMessage in Log4j 1 Category whenever possible. (for https://issues.apache.org/jira/browse/LOG4J2-3080[LOG4J2-3080] by Volkan Yazıcı)
+* log4j-slf4j-impl and log4j-slf4j18-impl correctly detect the calling class using both LoggerFactory.getLogger methods as well as LoggerFactory.getILoggerFactory().getLogger. (for https://issues.apache.org/jira/browse/LOG4J2-3083[LOG4J2-3083] by Carter Kozak)
+* Fix race in JsonTemplateLayout where a timestamp could end up unquoted. (for https://issues.apache.org/jira/browse/LOG4J2-3087[LOG4J2-3087] by Volkan Yazıcı, Anton Klarén)
+* Fix sporadic JsonTemplateLayoutNullEventDelimiterTest failures on Windows. (for https://issues.apache.org/jira/browse/LOG4J2-3089[LOG4J2-3089] by Volkan Yazıcı, Tim Perry)
+* Fix JsonWriter memory leaks due to retained excessive buffer growth. (for https://issues.apache.org/jira/browse/LOG4J2-3092[LOG4J2-3092] by Volkan Yazıcı, xmh51)
+* Category.setLevel should accept null value. (for https://issues.apache.org/jira/browse/LOG4J2-3095[LOG4J2-3095] by Gary Gregory, Kenny MacLeod)
+* Fix a regression in 2.14.1 which allowed the AsyncAppender background thread to keep the JVM alive because the daemon flag was not set. (for https://issues.apache.org/jira/browse/LOG4J2-3102[LOG4J2-3102] by Carter Kozak)
+* Fix race condition which can result in ConcurrentModificationException on context.stop. (for https://issues.apache.org/jira/browse/LOG4J2-3103[LOG4J2-3103] by Carter Kozak, Mike Glazer)
+* SmtpManager.createManagerName ignores port. (for https://issues.apache.org/jira/browse/LOG4J2-3107[LOG4J2-3107] by Volkan Yazıcı, Markus Spann)
+* Fix the number of {}-placeholders in the string literal argument does not match the number of other arguments to the logging call. (for https://issues.apache.org/jira/browse/LOG4J2-3110[LOG4J2-3110] by Ralph Goers, Arturo Bernal)
+* Enable immediate flush on RollingFileAppender when buffered i/o is not enabled. (for https://issues.apache.org/jira/browse/LOG4J2-3114[LOG4J2-3114] by Ralph Goers, Barnabas Bodnar)
+* log4j2 config modified at run-time may trigger incomplete MBean re-initialization due to InstanceAlreadyExistsException. (for https://issues.apache.org/jira/browse/LOG4J2-3121[LOG4J2-3121] by Gary Gregory, Markus Spann)
+* log4j-1.2-api implements LogEventAdapter.getTimestamp() based on the original event timestamp instead of returning zero. (for https://issues.apache.org/jira/browse/LOG4J2-3142[LOG4J2-3142] by Carter Kozak, John Meikle)
+* RandomAccessFile appender uses the correct default buffer size of 256 kB rather than the default appender buffer size of 8 kB. (for https://issues.apache.org/jira/browse/LOG4J2-3150[LOG4J2-3150] by Carter Kozak)
+* DatePatternConverter performance is not impacted by microsecond-precision clocks when such precision isn't required. (for https://issues.apache.org/jira/browse/LOG4J2-3153[LOG4J2-3153] by Carter Kozak)
+* Fixed an unlikely race condition in Log4jMarker.getParents() volatile access. (for https://issues.apache.org/jira/browse/LOG4J2-3159[LOG4J2-3159] by Carter Kozak)
+* Fix documentation on how to toggle log4j2.debug system property. (for https://issues.apache.org/jira/browse/LOG4J2-3160[LOG4J2-3160] by Volkan Yazıcı, Lars Bohl)
+* Fix bug when file names contain regex characters. (for https://issues.apache.org/jira/browse/LOG4J2-3168[LOG4J2-3168] by Ralph Goers, Benjamin Wöster)
+* Buffer immutable log events in the SmtpManager. (for https://issues.apache.org/jira/browse/LOG4J2-3172[LOG4J2-3172] by Volkan Yazıcı, Barry Fleming)
+* Wrong subject on mail when it depends on the LogEvent (for https://issues.apache.org/jira/browse/LOG4J2-3174[LOG4J2-3174] by Volkan Yazıcı, romainmoreau)
+* Avoid KafkaManager override when topics differ. (for https://issues.apache.org/jira/browse/LOG4J2-3175[LOG4J2-3175] by Volkan Yazıcı, wuqian0808)
+* Avoid using MutableInstant of the event as a cache key in JsonTemplateLayout. (for https://issues.apache.org/jira/browse/LOG4J2-3183[LOG4J2-3183] by Volkan Yazıcı)
+* Fix thread-safety issues in DefaultErrorHandler. (for https://issues.apache.org/jira/browse/LOG4J2-3185[LOG4J2-3185] by Volkan Yazıcı, mzbonnt)
+* Limit the protocols JNDI can use by default. Limit the servers and classes that can be accessed via LDAP. (for https://issues.apache.org/jira/browse/LOG4J2-3201[LOG4J2-3201] by Ralph Goers)
diff --git a/src/site/_release-notes/_2.16.0.adoc b/src/site/_release-notes/_2.16.0.adoc
new file mode 100644
index 0000000..6636f39
--- /dev/null
+++ b/src/site/_release-notes/_2.16.0.adoc
@@ -0,0 +1,51 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.16.0 (2021-12-13)
+
+This release contains one change which is noted below.
+
+Due to a break in compatibility in the SLF4J binding, Log4j now ships with two versions of the SLF4J to Log4j adapters.
+`log4j-slf4j-impl` should be used with SLF4J 1.7.x and earlier and `log4j-slf4j18-impl` should be used with SLF4J 1.8.x and later.
+SLF4J-2.0.0 alpha releases are not fully supported.
+See https://issues.apache.org/jira/browse/LOG4J2-2975[LOG4J2-2975] and https://jira.qos.ch/browse/SLF4J-511[SLF4J-511].
+
+Some of the changes in Log4j 2.16.0 include:
+
+* Removed Message Lookups.
+This is a hardening related to changes made to prevent CVE-2021-44228.
+While this change is recommended, it is NOT required to fix CVE-2021-44228.
+* While release 2.15.0 removed the ability to resolve Lookups and log messages and addressed issues with how JNDI is accessed, the Log4j team feels that having JNDI enabled by default introduces an undue risk for our users.
+Starting in version 2.16.0, JNDI functionality is disabled by default and can be re-enabled via the `log4j2.enableJndi` system property.
+Use of JNDI in an unprotected context is a large security risk and should be treated as such in both this library and all other Java libraries using JNDI.
+* Prior to version 2.15.0, Log4j would automatically resolve Lookups contained in the message or its parameters in the Pattern Layout.
+This behavior is no longer the default and must be enabled by specifying `%msg\{lookup}`.
+
+The Log4j 2.16.0 API, as well as many core components, maintains binary compatibility with previous releases.
+
+Apache Log4j 2.16.0 requires a minimum of Java 8 to build and run.
+Log4j 2.12.1 is the last release to support Java 7.
+Java 7 is no longer supported by the Log4j team.
+
+For complete information on Apache Log4j 2, including instructions on how to submit bug reports, patches, or suggestions for improvement, see http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Fixed
+
+* Disable JNDI by default. Require log4j2.enableJndi to be set to true to allow JNDI. (for https://issues.apache.org/jira/browse/LOG4J2-3208[LOG4J2-3208] by Ralph Goers)
+* Completely remove support for Message Lookups. (for https://issues.apache.org/jira/browse/LOG4J2-3211[LOG4J2-3211] by Ralph Goers)
diff --git a/src/site/_release-notes/_2.17.0.adoc b/src/site/_release-notes/_2.17.0.adoc
new file mode 100644
index 0000000..984a9e8
--- /dev/null
+++ b/src/site/_release-notes/_2.17.0.adoc
@@ -0,0 +1,46 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.17.0 (2021-12-17)
+
+The major changes contained in this release include:
+
+* Address CVE-2021-45105 by disabling recursive evaluation of Lookups during log event processing.
+Recursive evaluation is still allowed while generating the configuration.
+* The `JndiLookup`, `JndiContextSelector`, and `JMSAppender` now require individual system properties to be enabled.
+* Remove LDAP and LDAPS as supported protocols from JNDI.
+
+The single `log4j2.enableJndi` property introduced in Log4j 2.16.0 has been replaced with three individual properties; `log4j2.enableJndiContextSelector`, `log4j2.enableJndiJms`, and `log4j2.enableJndiLookup`.
+
+The Log4j 2.17.0 API, as well as many core components, maintains binary compatibility with previous releases.
+
+Apache Log4j 2.17.0 requires a minimum of Java 8 to build and run.
+Log4j 2.12.2 is the last release to support Java 7.
+Java 7 is no longer supported by the Log4j team.
+
+For complete information on Apache Log4j 2, including instructions on how to submit bug reports, patches, or suggestions for improvement, see http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Fixed
+
+* Fix string substitution recursion. (for https://issues.apache.org/jira/browse/LOG4J2-3230[LOG4J2-3230] by Carter Kozak)
+* Log4j 1.2 bridge API hard codes the Syslog protocol to TCP. (for https://issues.apache.org/jira/browse/LOG4J2-3237[LOG4J2-3237] by Gary Gregory)
+* Do not declare log4j-api-java9 and log4j-core-java9 as dependencies as it causes problems with the Maven enforcer plugin. (for https://issues.apache.org/jira/browse/LOG4J2-3241[LOG4J2-3241] by Ralph Goers)
+* Limit JNDI to the java protocol only. JNDI will remain disabled by default. Rename JNDI enablement property from 'log4j2.enableJndi' to 'log4j2.enableJndiLookup', 'log4j2.enableJndiJms', and 'log4j2.enableJndiContextSelector'. (for https://issues.apache.org/jira/browse/LOG4J2-3242[LOG4J2-3242] by Ralph Goers)
+* PropertiesConfiguration.parseAppenderFilters NPE when parsing properties file filters. (for https://issues.apache.org/jira/browse/LOG4J2-3247[LOG4J2-3247] by Gary Gregory)
+* Log4j 1.2 bridge for Syslog Appender defaults to port 512 instead of 514. (for https://issues.apache.org/jira/browse/LOG4J2-3249[LOG4J2-3249] by Gary Gregory)
diff --git a/src/site/_release-notes/_2.17.1.adoc b/src/site/_release-notes/_2.17.1.adoc
new file mode 100644
index 0000000..98c173c
--- /dev/null
+++ b/src/site/_release-notes/_2.17.1.adoc
@@ -0,0 +1,49 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.17.1 (2021-12-27)
+
+This release addresses CVE-2021-44832 and contains other minor fixes.
+
+Due to a break in compatibility in the SLF4J binding, Log4j now ships with two versions of the SLF4J to Log4j adapters.
+`log4j-slf4j-impl` should be used with SLF4J 1.7.x and earlier and `log4j-slf4j18-impl` should be used with SLF4J 1.8.x and later.
+SLF4J-2.0.0 alpha releases are not fully supported.
+See https://issues.apache.org/jira/browse/LOG4J2-2975[LOG4J2-2975] and https://jira.qos.ch/browse/SLF4J-511[SLF4J-511].
+
+The Log4j 2.17.1 API, as well as many core components, maintains binary compatibility with previous releases.
+
+Apache Log4j 2.17.1 requires a minimum of Java 8 to build and run.
+Log4j 2.12.2 is the last release to support Java 7.
+Java 7 is no longer supported by the Log4j team.
+
+For complete information on Apache Log4j 2, including instructions on how to submit bug reports, patches, or suggestions for improvement, see http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Fixed
+
+* Fix NPE when input is null in StrSubstitutor.replace(String, Properties). (for by Gary Gregory)
+* Correct SpringLookup package name in Interpolator. (for https://issues.apache.org/jira/browse/LOG4J2-3204[LOG4J2-3204] by Volkan Yazıcı, Francis-FY)
+* Reduce ignored package scope of KafkaAppender. (for https://issues.apache.org/jira/browse/LOG4J2-3256[LOG4J2-3256] by Gary Gregory, Lee Dongjin)
+* Fix MapLookup to lookup MapMessage before DefaultMap (for https://issues.apache.org/jira/browse/LOG4J2-3264[LOG4J2-3264] by Carter Kozak, Yanming Zhou)
+* Lookups with no prefix only read values from the configuration properties as expected. (for https://issues.apache.org/jira/browse/LOG4J2-3270[LOG4J2-3270] by Carter Kozak)
+* Buffered I/O checked had inverted logic in RollingFileAppenderBuilder. (for https://issues.apache.org/jira/browse/LOG4J2-3274[LOG4J2-3274] by Ralph Goers, Faisal Khan Thayub Khan)
+* log4j-to-slf4j takes the provided MessageFactory into account (for https://issues.apache.org/jira/browse/LOG4J2-3284[LOG4J2-3284] by Carter Kozak, Michael Vorburger)
+* log4j-to-slf4j no longer re-interpolates formatted message contents. (for https://issues.apache.org/jira/browse/LOG4J2-3289[LOG4J2-3289] by Carter Kozak)
+* Remove unused method. (for https://issues.apache.org/jira/browse/LOG4J2-3290[LOG4J2-3290] by Ralph Goers)
+* ExtendedLoggerWrapper.logMessage no longer double-logs when location is requested. (for https://issues.apache.org/jira/browse/LOG4J2-3292[LOG4J2-3292] by Carter Kozak)
+* JdbcAppender now uses JndiManager to access JNDI resources. JNDI is only enabled when system property log4j2.enableJndiJdbc is set to true. (for https://issues.apache.org/jira/browse/LOG4J2-3293[LOG4J2-3293] by Gary Gregory)
diff --git a/src/site/_release-notes/_2.17.2.adoc b/src/site/_release-notes/_2.17.2.adoc
new file mode 100644
index 0000000..8c39d4a
--- /dev/null
+++ b/src/site/_release-notes/_2.17.2.adoc
@@ -0,0 +1,155 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.17.2 (2022-02-23)
+
+This release contains the changes noted below:
+
+* Over 50 improvements and fixes to the Log4j 1.x support.
+Continued testing has shown it is a suitable replacement for Log4j 1.x in most cases.
+* Scripting now requires a system property be specified naming the languages the user wishes to allow.
+The scripting engine will not load if the property isn't set.
+* By default, the only remote protocol allowed for loading configuration files is HTTPS.
+Users can specify a system property to allow others or prevent remote loading entirely.
+* Variable resolution has been modified so that only properties defined as properties in the configuration file can be recursive.
+All other Lookups are now non-recursive.
+This addresses issues users were having resolving lookups specified in property definitions for use in the `RoutingAppender` and `RollingFileAppender` due to restrictions put in place in 2.17.1.
+* Many other fixes and improvements.
+
+Due to a break in compatibility in the SLF4J binding, Log4j now ships with two versions of the SLF4J to Log4j adapters.
+`log4j-slf4j-impl` should be used with SLF4J 1.7.x and earlier and `log4j-slf4j18-impl` should be used with SLF4J 1.8.x and later.
+SLF4J-2.0.0 alpha releases are not fully supported.
+See https://issues.apache.org/jira/browse/LOG4J2-2975[LOG4J2-2975] and https://jira.qos.ch/browse/SLF4J-511[SLF4J-511].
+
+The Log4j 2.17.2 API, as well as many core components, maintains binary compatibility with previous releases.
+
+Apache Log4j 2.17.2 requires a minimum of Java 8 to build and run.
+Log4j 2.12.4 is the last release to support Java 7.
+Log4j 2.3.2 is the last release to support Java 6.
+Java 6 and Java 7 are no longer supported by the Log4j team.
+
+For complete information on Apache Log4j 2, including instructions on how to submit bug reports, patches, or suggestions for improvement, see http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Added
+
+* Add Configurator.setLevel(Logger, Level), setLevel(String, String), and setLevel(Class, Level). (for by Gary Gregory)
+* Add org.apache.logging.log4j.core.appender.AsyncAppender.getAppenders() to more easily port from org.apache.log4j.AsyncAppender.getAllAppenders(). (for by Gary Gregory)
+* Require log4j2.Script.enableLanguages to be specified to enable scripting for specific languages. (for https://issues.apache.org/jira/browse/LOG4J2-2486[LOG4J2-2486] by Ralph Goers)
+* Add the log4j-to-jul JDK Logging Bridge (for https://issues.apache.org/jira/browse/LOG4J2-3282[LOG4J2-3282] by Carter Kozak, Michael Vorburger)
+* Limit loading of configuration via a url to https by default. (for https://issues.apache.org/jira/browse/LOG4J2-3297[LOG4J2-3297] by Ralph Goers)
+* Add TB support to FileSize. (for https://issues.apache.org/jira/browse/LOG4J2-3303[LOG4J2-3303] by Volkan Yazıcı, ramananravi)
+* Add shorthand syntax for properties configuration format for specifying a logger level and appender refs. (for https://issues.apache.org/jira/browse/LOG4J2-3341[LOG4J2-3341] by Ralph Goers)
+* Add optional additional fields to NoSQLAppender. (for https://issues.apache.org/jira/browse/LOG4J2-3391[LOG4J2-3391] by Gary Gregory, Gary Gregory)
+
+=== Changed
+
+* Bump Jackson from 2.12.4 to 2.13.1. (for by Gary Gregory)
+* Bump Mockito from 3.11.2 to 4.2.0. (for by Gary Gregory)
+* Bump Woodstox 6.2.6 to 6.2.8. (for by Gary Gregory)
+* Bump awaitility from 4.0.3 to 4.1.1 #663. (for by Gary Gregory)
+* Bump de.flapdoodle.embed:de.flapdoodle.embed.mongo from 3.0.0 to 3.4.1. Update tests for binary incompatibilities in APIs. (for by Gary Gregory)
+* Bump maven-compiler-plugin from 3.8.1 to 3.9.0. (for by Gary Gregory)
+* Bump mongodb3.version from 3.12.4 to 3.12.10 #605. (for by Gary Gregory)
+* Bump net.javacrumbs.json-unit:json-unit from 2.27.0 to 2.28.0. (for by Gary Gregory)
+* Bump org.apache.activemq:activemq-broker from 5.16.3 to 5.16.4. (for by Gary Gregory)
+* Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.3.1 to 3.3.2. (for by Gary Gregory)
+* Bump org.assertj:assertj-core from 3.20.2 to 3.22.0. (for by Gary Gregory)
+* Bump org.codehaus.groovy:groovy-* from 3.0.8 to 3.0.9. (for by Gary Gregory)
+* Bump org.eclipse.persistence:org.eclipse.persistence.jpa from 2.7.9 to 2.7.10. (for by Gary Gregory)
+* Bump org.fusesource.jansi:jansi from 2.3.4 to 2.4.0. (for by Gary Gregory)
+* Bump org.jacoco:jacoco-maven-plugin from 0.8.6 to 0.8.7. (for by Gary Gregory)
+* Bump org.junit.jupiter:junit-* from 5.7.2 to 5.8.2. (for by Gary Gregory)
+* Bump org.junit-pioneer:junit-pioneer from 1.5.0 to 1.6.1. (for by Gary Gregory)
+* Bump org.mongodb:bson from 4.2.2 to 4.5.0. (for by Gary Gregory)
+* Bump org.mongodb:mongodb-driver-sync from 4.2.2 to 4.5.0. (for by Gary Gregory)
+* Bump org.springframework:spring-* from 5.3.13 to 5.3.15. (for by Gary Gregory)
+* Bump org.xmlunit:xmlunit-* from 2.8.3 to 2.8.4. (for by Gary Gregory)
+* Replace usages of "compile" with "implementation" in the Gradle docs. (for https://issues.apache.org/jira/browse/LOG4J2-3215[LOG4J2-3215] by Volkan Yazıcı, quapka)
+* Change modifier of method org.apache.logging.log4j.core.tools.Generate#generate to public (was package private) to facilitate automated code generation. (for https://issues.apache.org/jira/browse/LOG4J2-3267[LOG4J2-3267] by Remko Popma)
+* log4j-jpl formats message parameters correctly using MessageFormat. (for https://issues.apache.org/jira/browse/LOG4J2-3345[LOG4J2-3345] by Carter Kozak)
+* Bump Tomcat from 8.5.20 to 10.0.14 in log4j-appserver along with some dependency clean-up. (for https://issues.apache.org/jira/browse/LOG4J2-3368[LOG4J2-3368] by Volkan Yazıcı)
+
+=== Fixed
+
+* Fix DTD error: Add missing ELEMENT for Marker. (for by Gary Gregory)
+* Fix log4j-jakarta-web service file #723. (for by Gary Gregory, Piotr P. Karwasz)
+* JndiManager reverts to 2.17.0 behavior: Read the system property for each call. (for by Gary Gregory)
+* Log4j 1.2 bridge PropertiesConfiguration.buildAppender not adding filters to custom appender. (for https://issues.apache.org/jira/browse/LOG4J2-3281[LOG4J2-3281] by Gary Gregory)
+* Flag LogManager as initialized if the LoggerFactory is provided as a property. (for https://issues.apache.org/jira/browse/LOG4J2-3304[LOG4J2-3304] by Ralph Goers, francis-FY)
+* OptionConverter could cause a StackOverflowError. (for https://issues.apache.org/jira/browse/LOG4J2-3306[LOG4J2-3306] by Ralph Goers)
+* Log4j 1.2 bridge should ignore case in properties file keys. (for https://issues.apache.org/jira/browse/LOG4J2-3316[LOG4J2-3316] by Gary Gregory)
+* Fix RoutingAppender backward compatibility and disallow recursive evaluation of lookup results outside of configuration properties. (for https://issues.apache.org/jira/browse/LOG4J2-3317[LOG4J2-3317] by Carter Kozak)
+* Log4j 1.2 bridge class org.apache.log4j.spi.LoggingEvent missing constructors and public instance variable. (for https://issues.apache.org/jira/browse/LOG4J2-3326[LOG4J2-3326] by Gary Gregory, Gary Gregory)
+* Log4j 1.2 bridge fixes parsing filters in properties configuration file #680. (for https://issues.apache.org/jira/browse/LOG4J2-3326[LOG4J2-3326] by Gary Gregory, Benjamin Röhl)
+* Log4j 1.2 bridge missing OptionConverter.instantiateByKey(Properties, String, Class, Object). (for https://issues.apache.org/jira/browse/LOG4J2-3326[LOG4J2-3326] by Gary Gregory, Gary Gregory)
+* Log4j 1.2 bridge does not support system properties in log4j.xml. (for https://issues.apache.org/jira/browse/LOG4J2-3328[LOG4J2-3328] by Gary Gregory, Gary Gregory)
+* Configurator.setLevel not fetching the correct LoggerContext. (for https://issues.apache.org/jira/browse/LOG4J2-3330[LOG4J2-3330] by Gary Gregory, Mircea Lemnaru)
+* Fix ThreadContextDataInjector initialization deadlock (for https://issues.apache.org/jira/browse/LOG4J2-3333[LOG4J2-3333] by Carter Kozak)
+* Fix substitutions when programmatic configuration is used (for https://issues.apache.org/jira/browse/LOG4J2-3358[LOG4J2-3358] by Carter Kozak)
+* AppenderLoggingException logging any exception to a MongoDB Appender. (for https://issues.apache.org/jira/browse/LOG4J2-3392[LOG4J2-3392] by Gary Gregory, Omer U)
+* Possible NullPointerException in MongoDb4DocumentObject, MongoDbDocumentObject, DefaultNoSqlObject. (for https://issues.apache.org/jira/browse/LOG4J2-3392[LOG4J2-3392] by Gary Gregory, Gary Gregory)
+* Fix DefaultConfiguration leak in PatternLayout (for https://issues.apache.org/jira/browse/LOG4J2-3404[LOG4J2-3404] by Carter Kozak, Piotr P. Karwasz)
+* Document that the Spring Boot Lookup requires the log4j-spring-boot dependency. (for https://issues.apache.org/jira/browse/LOG4J2-3405[LOG4J2-3405] by Ralph Goers)
+* Log4j 1.2 bridge Check for non-existent appender when parsing properties #761. (for https://issues.apache.org/jira/browse/LOG4J2-3407[LOG4J2-3407] by Gary Gregory, Kenny MacLeod)
+* Log4j 1.2 bridge supports global threshold #764. (for https://issues.apache.org/jira/browse/LOG4J2-3407[LOG4J2-3407] by Gary Gregory, Piotr P. Karwasz)
+* Log4j 1.2 bridge throws a ClassCastException when logging a Map with non-String keys. (for https://issues.apache.org/jira/browse/LOG4J2-3410[LOG4J2-3410] by Gary Gregory, Barry Sham)
+* Log4j 1.2 bridge adds org.apache.log4j.Hierarchy. (for by Gary Gregory)
+* Log4j 1.2 bridge adds org.apache.log4j.component.helpers.Constants. (for by Gary Gregory)
+* Log4j 1.2 bridge adds org.apache.log4j.helpers.Loader. (for by Gary Gregory)
+* Log4j 1.2 bridge adds org.apache.log4j.helpers.LogLog. (for by Gary Gregory)
+* Log4j 1.2 bridge adds org.apache.log4j.spi.DefaultRepositorySelector. (for by Gary Gregory)
+* Log4j 1.2 bridge adds org.apache.log4j.spi.NOPLoggerRepository and NOPLogger. (for by Gary Gregory)
+* Log4j 1.2 bridge adds org.apache.log4j.spi.RootLogger. (for by Gary Gregory)
+* Log4j 1.2 bridge class Category is missing some protected instance variables. (for by Gary Gregory)
+* Log4j 1.2 bridge class Category should implement AppenderAttachable. (for by Gary Gregory)
+* Log4j 1.2 bridge class ConsoleAppender should extend WriterAppender and provide better compatibility with custom appenders. (for by Gary Gregory)
+* Log4j 1.2 bridge class LogManager default constructor should be public. (for by Gary Gregory)
+* Log4j 1.2 bridge class OptionConverter is missing selectAndConfigure() methods. (for by Gary Gregory)
+* Log4j 1.2 bridge class PatternLayout is missing constants DEFAULT_CONVERSION_PATTERN and TTCC_CONVERSION_PATTERN. (for by Gary Gregory)
+* Log4j 1.2 bridge class PropertyConfigurator should implement Configurator. (for by Gary Gregory)
+* Log4j 1.2 bridge creates a SocketAppender instead of a SyslogAppender. (for by Gary Gregory, Gary Gregory)
+* Log4j 1.2 bridge implements LogManager.getCurrentLoggers() fully. (for by Gary Gregory)
+* Log4j 1.2 bridge implements most of DOMConfigurator. (for by Gary Gregory, Gary Gregory)
+* Log4j 1.2 bridge interface Configurator doConfigure() methods should use LoggerRepository, not LoggerContext. (for by Gary Gregory)
+* Log4j 1.2 bridge interface org.apache.log4j.spi.RendererSupport was in the wrong package and incomplete. (for by Gary Gregory)
+* Log4j 1.2 bridge interfaces missing from package org.apache.log4j.spi: ThrowableRenderer, ThrowableRendererSupport, TriggeringEventEvaluator. (for by Gary Gregory)
+* Log4j 1.2 bridge issues with filters #753. (for by Gary Gregory, Piotr P. Karwasz)
+* Log4j 1.2 bridge method Category.exists(String) should be static. (for by Gary Gregory)
+* Log4j 1.2 bridge method NDC.inherit(Stack) should not use generics to provide source compatibility. (for by Gary Gregory)
+* Log4j 1.2 bridge methods Category.getChainedPriority() and getEffectiveLevel() should not be final. (for by Gary Gregory)
+* Log4j 1.2 bridge methods missing in org.apache.log4j.Category: getDefaultHierarchy(), getHierarchy(), getLoggerRepository(). (for by Gary Gregory)
+* Log4j 1.2 bridge missed (for by Gary Gregory, Gary Gregory)
+* Log4j 1.2 bridge missed org.apache.log4j.pattern.FormattingInfo. (for by Gary Gregory, Gary Gregory)
+* Log4j 1.2 bridge missed org.apache.log4j.pattern.NameAbbreviator. (for by Gary Gregory, Gary Gregory)
+* Log4j 1.2 bridge missing DefaultThrowableRenderer. (for by Gary Gregory, Gary Gregory)
+* Log4j 1.2 bridge missing FormattingInfo. (for by Gary Gregory, Gary Gregory)
+* Log4j 1.2 bridge missing PatternConverter. (for by Gary Gregory, Gary Gregory)
+* Log4j 1.2 bridge missing PatternParser. (for by Gary Gregory, Gary Gregory)
+* Log4j 1.2 bridge missing UtilLoggingLevel. (for by Gary Gregory, Gary Gregory)
+* Log4j 1.2 bridge missing class org.apache.log4j.or.RendererMap. (for by Gary Gregory)
+* Log4j 1.2 bridge missing some LocationInfo constructors. (for by Gary Gregory, Gary Gregory)
+* Log4j 1.2 bridge missing some ThrowableInformation constructors. (for by Gary Gregory, Gary Gregory)
+* Log4j 1.2 bridge now logs a warning instead of throwing an NullPointerException when building a Syslog appender with a missing "SyslogHost" param. (for by Gary Gregory, Gary Gregory)
+* Log4j 1.2 bridge should allow property and XML attributes to start with either an upper-case or lower-case letter. (for by Gary Gregory, Piotr P. Karwasz)
+* Log4j 1.2 bridge supports the SocketAppender. (for by Gary Gregory, Gary Gregory)
+* Log4j 1.2 bridge throws ClassCastException when using SimpleLayout and others #708. (for by Gary Gregory, Piotr P. Karwasz)
+* Log4j 1.2 bridge uses some incorrect default property values in some appenders. (for by Gary Gregory, Piotr P. Karwasz)
+* Log4j 1.2 bridge uses the wrong default values for a TTCCLayout #709. (for by Gary Gregory, Piotr P. Karwasz)
+* Log4j 1.2 bridge uses the wrong file pattern for rolling file appenders #710. (for by Gary Gregory, Piotr P. Karwasz)
+* Trim whitespace before parsing a String into an Integer. (for by Gary Gregory, Gary Gregory)
diff --git a/src/site/_release-notes/_2.18.0.adoc b/src/site/_release-notes/_2.18.0.adoc
new file mode 100644
index 0000000..66912a4
--- /dev/null
+++ b/src/site/_release-notes/_2.18.0.adoc
@@ -0,0 +1,91 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.18.0 (2022-06-28)
+
+This release primarily contains bug fixes and minor enhancements.
+
+Due to a break in compatibility in the SLF4J binding, Log4j now ships with two versions of the SLF4J to Log4j adapters.
+`log4j-slf4j-impl` should be used with SLF4J 1.7.x and earlier and `log4j-slf4j18-impl` should be used with SLF4J 1.8.x and later.
+SLF4J-2.0.0 alpha releases are not fully supported.
+See https://issues.apache.org/jira/browse/LOG4J2-2975[LOG4J2-2975] and https://jira.qos.ch/browse/SLF4J-511[SLF4J-511].
+
+The Log4j 2.18.0 API, as well as many core components, maintains binary compatibility with previous releases.
+
+Apache Log4j 2.18.0 requires a minimum of Java 8 to build and run.
+Log4j 2.12.4 is the last release to support Java 7.
+Log4j 2.3.2 is the last release to support Java 6.
+Java 6 and Java 7 are no longer supported by the Log4j team.
+
+For complete information on Apache Log4j 2, including instructions on how to submit bug reports, patches, or suggestions for improvement, see http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Added
+
+* Add support for Jakarta Mail API in the SMTP appender. (for https://issues.apache.org/jira/browse/LOG4J2-3362[LOG4J2-3362] by Piotr P. Karwasz)
+* Add support for custom Log4j 1.x levels. (for https://issues.apache.org/jira/browse/LOG4J2-3419[LOG4J2-3419] by Piotr P. Karwasz)
+* Add support for adding and retrieving appenders in Log4j 1.x bridge. (for https://issues.apache.org/jira/browse/LOG4J2-3440[LOG4J2-3440] by Piotr P. Karwasz)
+* Add support for custom LMAX disruptor WaitStrategy configuration. (for https://issues.apache.org/jira/browse/LOG4J2-3472[LOG4J2-3472] by Remko Popma)
+* Add support for Apache Extras' RollingFileAppender in Log4j 1.x bridge. (for https://issues.apache.org/jira/browse/LOG4J2-3483[LOG4J2-3483] by Piotr P. Karwasz)
+* Add MutableThreadContextMapFilter. (for https://issues.apache.org/jira/browse/LOG4J2-3495[LOG4J2-3495] by Ralph Goers)
+* Add support for 24 colors in highlighting (for https://issues.apache.org/jira/browse/LOG4J2-3538[LOG4J2-3538] by Piotr P. Karwasz, Pavel_K)
+
+=== Changed
+
+* Improves ServiceLoader support on servlet containers. (for https://issues.apache.org/jira/browse/LOG4J2-3427[LOG4J2-3427] by Piotr P. Karwasz)
+* Make the default disruptor WaitStrategy used by Async Loggers garbage-free. (for https://issues.apache.org/jira/browse/LOG4J2-3473[LOG4J2-3473] by Remko Popma)
+* Do not throw UnsupportedOperationException when JUL ApiLogger::setLevel is called. (for https://issues.apache.org/jira/browse/LOG4J2-3476[LOG4J2-3476] by Remko Popma)
+* Support Spring 2.6.x. (for https://issues.apache.org/jira/browse/LOG4J2-3506[LOG4J2-3506] by Ralph Goers)
+* Move perf tests to log4j-core-its (for https://issues.apache.org/jira/browse/LOG4J2-3516[LOG4J2-3516] by Ralph Goers)
+* Upgrade the Flume Appender to Flume 1.10.0 (for https://issues.apache.org/jira/browse/LOG4J2-3536[LOG4J2-3536] by Ralph Goers)
+
+=== Fixed
+
+* Fix minor typo #792. (for by Gary Gregory, LF-Lin)
+* Improve validation and reporting of configuration errors. (for by Piotr P. Karwasz)
+* Allow enterprise id to be an OID fragment. (for https://issues.apache.org/jira/browse/LOG4J2-1376[LOG4J2-1376] by Piotr P. Karwasz, Mark Niggemann)
+* Fix problem with non-uppercase custom levels. (for https://issues.apache.org/jira/browse/LOG4J2-2872[LOG4J2-2872] by Piotr P. Karwasz, Alla Gofman)
+* Avoid ClassCastException in JeroMqManager with custom LoggerContextFactory #791. (for https://issues.apache.org/jira/browse/LOG4J2-3040[LOG4J2-3040] by Grzegorz Grzybek, `github:ggregory`)
+* DirectWriteRolloverStrategy should use the current time when creating files. (for https://issues.apache.org/jira/browse/LOG4J2-3339[LOG4J2-3339] by Ralph Goers)
+* Fixes the syslog appender in Log4j 1.x bridge, when used with a custom layout. (for https://issues.apache.org/jira/browse/LOG4J2-3359[LOG4J2-3359] by Piotr P. Karwasz, Tukesh)
+* log4j-1.2-api 2.17.2 throws NullPointerException while removing appender with name as null. (for https://issues.apache.org/jira/browse/LOG4J2-3359[LOG4J2-3359] by Gary Gregory, Rajesh)
+* Improve JsonTemplateLayout performance. (for https://issues.apache.org/jira/browse/LOG4J2-3393[LOG4J2-3393] by Volkan Yazıcı)
+* Fix resolution of non-Log4j properties. (for https://issues.apache.org/jira/browse/LOG4J2-3413[LOG4J2-3413] by Piotr P. Karwasz)
+* Fixes Spring Boot logging system registration in a multi-application environment. (for https://issues.apache.org/jira/browse/LOG4J2-3418[LOG4J2-3418] by Piotr P. Karwasz)
+* JAR file containing Log4j configuration isn't closed. (for https://issues.apache.org/jira/browse/LOG4J2-3423[LOG4J2-3423] by Gary Gregory, Radim Tlusty)
+* Properties defined in configuration using a value attribute (as opposed to element) are read correctly. (for https://issues.apache.org/jira/browse/LOG4J2-3424[LOG4J2-3424] by Carter Kozak)
+* Syslog appender lacks the SocketOptions setting. (for https://issues.apache.org/jira/browse/LOG4J2-3425[LOG4J2-3425] by Gary Gregory, Jiří Smolík)
+* Log4j 1.2 bridge should not wrap components unnecessarily. (for https://issues.apache.org/jira/browse/LOG4J2-3426[LOG4J2-3426] by Piotr P. Karwasz, Pooja Pandey)
+* Update 3rd party dependencies for 2.18.0. (for https://issues.apache.org/jira/browse/LOG4J2-3428[LOG4J2-3428] by Gary Gregory)
+* SizeBasedTriggeringPolicy would fail to rename files properly when integer pattern contained a leading zero. (for https://issues.apache.org/jira/browse/LOG4J2-3432[LOG4J2-3432] by Ralph Goers)
+* Fixes default SslConfiguration, when a custom keystore is used. (for https://issues.apache.org/jira/browse/LOG4J2-3439[LOG4J2-3439] by Piotr P. Karwasz, Jayesh Netravali)
+* Fixes appender concurrency problems in Log4j 1.x bridge. (for https://issues.apache.org/jira/browse/LOG4J2-3447[LOG4J2-3447] by Piotr P. Karwasz, Pooja Pandey)
+* Fix and test for race condition in FileUtils.mkdir(). (for https://issues.apache.org/jira/browse/LOG4J2-3452[LOG4J2-3452] by Piotr P. Karwasz, Stefan Vodita)
+* LocalizedMessage logs misleading errors on the console. (for https://issues.apache.org/jira/browse/LOG4J2-3458[LOG4J2-3458] by Gary Gregory)
+* Add missing message parameterization in RegexFilter. (for https://issues.apache.org/jira/browse/LOG4J2-3475[LOG4J2-3475] by Piotr P. Karwasz, Jeremy Lin)
+* Add the missing context stack to JsonLayout template. (for https://issues.apache.org/jira/browse/LOG4J2-3477[LOG4J2-3477] by Volkan Yazıcı, filipc)
+* HttpWatcher did not pass credentials when polling. (for https://issues.apache.org/jira/browse/LOG4J2-3481[LOG4J2-3481] by Ralph Goers)
+* UrlConnectionFactory.createConnection now accepts an AuthorizationProvider as a parameter. (for https://issues.apache.org/jira/browse/LOG4J2-3482[LOG4J2-3482] by Ralph Goers)
+* The DirectWriteRolloverStrategy was not detecting the correct index to use during startup. (for https://issues.apache.org/jira/browse/LOG4J2-3490[LOG4J2-3490] by Ralph Goers)
+* Async Loggers were including the location information by default. (for https://issues.apache.org/jira/browse/LOG4J2-3491[LOG4J2-3491] by Ralph Goers, Avihai Marchiano)
+* ClassArbiter's newBuilder method referenced the wrong class. (for https://issues.apache.org/jira/browse/LOG4J2-3493[LOG4J2-3493] by Ralph Goers, Dmytro Voloshyn)
+* Don't use Paths.get() to avoid circular file systems. (for https://issues.apache.org/jira/browse/LOG4J2-3527[LOG4J2-3527] by Ralph Goers)
+* Fix parsing error, when XInclude is disabled. (for https://issues.apache.org/jira/browse/LOG4J2-3531[LOG4J2-3531] by Piotr P. Karwasz, Simo Nikula)
+* Fix LevelRangeFilterBuilder to align with log4j1's behavior. (for https://issues.apache.org/jira/browse/LOG4J2-3534[LOG4J2-3534] by Piotr P. Karwasz, Yohei Ueki)
+* Fixes problem with wrong ANSI escape code for bright colors (for https://issues.apache.org/jira/browse/LOG4J2-3537[LOG4J2-3537] by Piotr P. Karwasz, Pavel_K)
+* Log4j 1.2 bridge should generate Log4j 2.x messages based on the parameter runtime type. (for by Piotr P. Karwasz)
diff --git a/src/site/_release-notes/_2.19.0.adoc b/src/site/_release-notes/_2.19.0.adoc
new file mode 100644
index 0000000..9e8d62e
--- /dev/null
+++ b/src/site/_release-notes/_2.19.0.adoc
@@ -0,0 +1,71 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.19.0 (2022-09-09)
+
+This release primarily contains bug fixes and minor enhancements.
+
+Due to a break in compatibility in the SLF4J binding, Log4j now ships with two versions of the SLF4J to Log4j adapters.
+`log4j-slf4j-impl` should be used with SLF4J 1.7.x and earlier and `log4j-slf4j18-impl` should be used with SLF4J 1.8.x and later.
+SLF4J-2.0.0 alpha releases are not fully supported.
+See https://issues.apache.org/jira/browse/LOG4J2-2975[LOG4J2-2975] and https://jira.qos.ch/browse/SLF4J-511[SLF4J-511].
+
+The Log4j 2.19.0 API, as well as many core components, maintains binary compatibility with previous releases.
+
+Apache Log4j 2.19.0 requires a minimum of Java 8 to build and run.
+Log4j 2.12.4 is the last release to support Java 7.
+Log4j 2.3.2 is the last release to support Java 6.
+Java 6 and Java 7 are no longer supported by the Log4j team.
+
+For complete information on Apache Log4j 2, including instructions on how to submit bug reports, patches, or suggestions for improvement, see http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Added
+
+* Add implementation of SLF4J2 fluent API. (for https://issues.apache.org/jira/browse/LOG4J2-2975[LOG4J2-2975] by Piotr P. Karwasz, Daniel Gray)
+* Add support for SLF4J2 stack-valued MDC. (for https://issues.apache.org/jira/browse/LOG4J2-3583[LOG4J2-3583] by Piotr P. Karwasz, Pierrick Terrettaz)
+
+=== Changed
+
+* Add getExplicitLevel method to LoggerConfig. (for https://issues.apache.org/jira/browse/LOG4J2-3572[LOG4J2-3572] by Ralph Goers)
+* Allow PropertySources to be added. (for https://issues.apache.org/jira/browse/LOG4J2-3588[LOG4J2-3588] by Ralph Goers)
+* Allow Plugins to be injected with the LoggerContext reference. (for https://issues.apache.org/jira/browse/LOG4J2-3589[LOG4J2-3589] by Ralph Goers)
+
+=== Removed
+
+* Removed build page in favor of a single build instructions file. (for https://issues.apache.org/jira/browse/LOG4J2-3573[LOG4J2-3573] by Volkan Yazıcı, Wolff Bock von Wuelfingen)
+* Remove SLF4J 1.8.x binding. (for https://issues.apache.org/jira/browse/LOG4J2-3590[LOG4J2-3590] by Piotr P. Karwasz)
+
+=== Fixed
+
+* Add correct manifest entries for OSGi to log4j-jcl (for https://issues.apache.org/jira/browse/LOG4J2-3545[LOG4J2-3545] by Piotr P. Karwasz, Johan Compagner)
+* Improve support for passwordless keystores. (for https://issues.apache.org/jira/browse/LOG4J2-3548[LOG4J2-3548] by Piotr P. Karwasz, Kristof Farkas-Pall)
+* SystemPropertyArbiter was assigning the value as the name. (for https://issues.apache.org/jira/browse/LOG4J2-3550[LOG4J2-3550] by Ralph Goers, DongjianPeng)
+* Make JsonTemplateLayout stack trace truncation operate for each label block. (for https://issues.apache.org/jira/browse/LOG4J2-3556[LOG4J2-3556] by Volkan Yazıcı, Arthur Gavlyukovskiy)
+* Fix recursion between Log4j 1.2 LogManager and Category. (for https://issues.apache.org/jira/browse/LOG4J2-3557[LOG4J2-3557] by Piotr P. Karwasz, Andreas Leitgeb)
+* Fix resolution of properties not starting with `log4j2.`. (for https://issues.apache.org/jira/browse/LOG4J2-3559[LOG4J2-3559] by Piotr P. Karwasz, Gary Gregory)
+* Logger$PrivateConfig.filter(Level, Marker, String) was allocating empty varargs array. (for https://issues.apache.org/jira/browse/LOG4J2-3560[LOG4J2-3560] by Carter Kozak, David Schlosnagle)
+* Allows a space separated list of style specifiers in the %style pattern for consistency with %highlight. (for https://issues.apache.org/jira/browse/LOG4J2-3561[LOG4J2-3561] by Piotr P. Karwasz, Robert Papp)
+* Fix NPE in `log4j-to-jul` in the case the root logger level is null. (for https://issues.apache.org/jira/browse/LOG4J2-3564[LOG4J2-3564] by Piotr P. Karwasz)
+* Fix RollingRandomAccessFileAppender with DirectWriteRolloverStrategy can't create the first log file of different directory. (for https://issues.apache.org/jira/browse/LOG4J2-3565[LOG4J2-3565] by Piotr P. Karwasz, Su Pei Tao)
+* Generate new SSL certs for testing. (for https://issues.apache.org/jira/browse/LOG4J2-3578[LOG4J2-3578] by Ralph Goers)
+* Fix ServiceLoaderUtil behavior in the presence of a SecurityManager. (for https://issues.apache.org/jira/browse/LOG4J2-3579[LOG4J2-3579] by Piotr P. Karwasz, Boris Unckel)
+* Make StatusConsoleListener use SimpleLogger internally. (for https://issues.apache.org/jira/browse/LOG4J2-3584[LOG4J2-3584] by Volkan Yazıcı)
+* Fix regression in Rfc5424Layout default values. (for https://issues.apache.org/jira/browse/LOG4J2-3587[LOG4J2-3587] by Piotr P. Karwasz, Tomas Micko)
+* Harden InstantFormatter against delegate failures. (for https://issues.apache.org/jira/browse/LOG4J2-3614[LOG4J2-3614] by Volkan Yazıcı, strainu)
+* Add async support to `Log4jServletFilter`. (for https://issues.apache.org/jira/browse/LOG4J2-708[LOG4J2-708] by Piotr P. Karwasz)
diff --git a/src/site/_release-notes/_2.2.adoc b/src/site/_release-notes/_2.2.adoc
new file mode 100644
index 0000000..a88bb10
--- /dev/null
+++ b/src/site/_release-notes/_2.2.adoc
@@ -0,0 +1,73 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.2 (2015-02-22)
+
+This is the fifth GA release.
+It contains several bugfixes and new features.
+
+Apache Log4j 2.2 requires a minimum of Java 6 to build and run.
+Future releases may require a minimum of Java 7.
+
+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 http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Added
+
+* Specify the SyslogAppender connect timeout value as part of the configuration. The SyslogAppender takes a new parameter connectTimeoutMillis. (for https://issues.apache.org/jira/browse/LOG4J2-895[LOG4J2-895] by Gary Gregory)
+* Specify the SocketAppender connect timeout value as part of the configuration. The SyslogAppender takes a new parameter connectTimeoutMillis. (for https://issues.apache.org/jira/browse/LOG4J2-899[LOG4J2-899] by Gary Gregory)
+* HTML layout should not use attribute minimalization for hr noshade. (for https://issues.apache.org/jira/browse/LOG4J2-933[LOG4J2-933] by Gary Gregory, ppiman)
+* Allow JSON layout to create one compact log record per line. (for https://issues.apache.org/jira/browse/LOG4J2-941[LOG4J2-941] by Gary Gregory, Konstantinos Liakos)
+
+=== Changed
+
+* Update Jackson from 2.4.2 to 2.4.3. (for https://issues.apache.org/jira/browse/LOG4J2-881[LOG4J2-881] by Gary Gregory)
+* Update maven-core from 3.1.0 to 3.2.3. (for https://issues.apache.org/jira/browse/LOG4J2-882[LOG4J2-882] by Gary Gregory)
+* Update tests from org.apache.felix.framework 4.2.1 to 4.4.1. (for https://issues.apache.org/jira/browse/LOG4J2-883[LOG4J2-883] by Gary Gregory)
+* Update org.eclipse.osgi from 3.6.0 to 3.7.1. (for https://issues.apache.org/jira/browse/LOG4J2-884[LOG4J2-884] by Gary Gregory)
+* Update Apache Flume from 1.5.0.1 to 1.5.2. (for https://issues.apache.org/jira/browse/LOG4J2-900[LOG4J2-900] by Gary Gregory)
+* Update docs for SyslogAppender: "No structured id name was supplied" (for https://issues.apache.org/jira/browse/LOG4J2-901[LOG4J2-901] by Gary Gregory, Tihomir Meščić, Siegfried Greisinger)
+* Update Jackson from 2.4.3 to 2.4.4. (for https://issues.apache.org/jira/browse/LOG4J2-910[LOG4J2-910] by Gary Gregory)
+* Update from Jackson 2.4.4 to 2.5.0. (for https://issues.apache.org/jira/browse/LOG4J2-925[LOG4J2-925] by Gary Gregory)
+* Incorrect attribute name in PropertiesRewritePolicy example. (for https://issues.apache.org/jira/browse/LOG4J2-950[LOG4J2-950] by Gary Gregory, Joel Edwards)
+* Documentation: clarify system properties to control status logger, improve troubleshooting FAQ entry. (for https://issues.apache.org/jira/browse/LOG4J2-955[LOG4J2-955] by Remko Popma)
+* Update from Jackson 2.5.0 to 2.5.1. (for https://issues.apache.org/jira/browse/LOG4J2-958[LOG4J2-958] by Gary Gregory)
+
+=== Fixed
+
+* ThrowableProxy throws NoClassDefFoundError. (for https://issues.apache.org/jira/browse/LOG4J2-834[LOG4J2-834] by Gary Gregory, Nikita Koval, Leonard Broman, Thiago Kronig)
+* AbstractLifecycle should not implement equals() and hashCode(). (for https://issues.apache.org/jira/browse/LOG4J2-881[LOG4J2-881] by Gary Gregory, Mariano Gonzalez)
+* AbstractLifecycle should not implement equals() and hashCode(). (for https://issues.apache.org/jira/browse/LOG4J2-891[LOG4J2-891] by Gary Gregory)
+* JUL adapter does not map Log4j'2 FATAL level to a JUL level. (for https://issues.apache.org/jira/browse/LOG4J2-892[LOG4J2-892] by Gary Gregory)
+* NullPointerException on filter when mapping JUL to Log4j2. (for https://issues.apache.org/jira/browse/LOG4J2-893[LOG4J2-893] by Gary Gregory)
+* Javadoc for org.apache.log4j.BasicConfigurator.configure() is incorrect. (for https://issues.apache.org/jira/browse/LOG4J2-897[LOG4J2-897] by Gary Gregory)
+* ClassLoaderContextSelector uses ClassLoader.toString() as a key (for https://issues.apache.org/jira/browse/LOG4J2-903[LOG4J2-903] by Gary Gregory, Mauro Molinari)
+* XML configuration does not report full error message for XInclude parser configuration problems. (for https://issues.apache.org/jira/browse/LOG4J2-912[LOG4J2-912] by Gary Gregory)
+* ThrowableProxy.getExtendedStackTraceAsString causes NullPointerException. (for https://issues.apache.org/jira/browse/LOG4J2-914[LOG4J2-914] by Gary Gregory, Kaj Bjurman)
+* Logging system fails to initialize if XInclude API is not available. (for https://issues.apache.org/jira/browse/LOG4J2-919[LOG4J2-919] by Gary Gregory, David Johle)
+* Log4j 1.2 Bridge doesn't map level ALL correctly in Category.getEffectiveLevel(). (for https://issues.apache.org/jira/browse/LOG4J2-924[LOG4J2-924] by Gary Gregory, Ryan Rupp)
+* ConsoleAppender is missing @PluginFactory annotation at createAppender method. (for https://issues.apache.org/jira/browse/LOG4J2-931[LOG4J2-931] by Gary Gregory, Robert Gacki)
+* (JMX) To avoid memory leaks when web applications are restarted, JMX notifications are sent from the caller thread in web applications. For non-web applications notifications are sent from a background thread as before. (for https://issues.apache.org/jira/browse/LOG4J2-938[LOG4J2-938] by Remko Popma, Mauro Molinari)
+* Log4j Flume appender is not adding millisecond to the event headers when the event is logged at 000 milliseconds. (for https://issues.apache.org/jira/browse/LOG4J2-944[LOG4J2-944] by Gary Gregory, Vinayaka Ramachandra)
+* [docs] Using Log4j 2 in Web Applications: Update example (Log4jWebLifeCycle is not visible). (for https://issues.apache.org/jira/browse/LOG4J2-946[LOG4J2-946] by Gary Gregory, artemonster)
+* Manual refers to Route "AppenderRef" attribute, should be "ref". (for https://issues.apache.org/jira/browse/LOG4J2-956[LOG4J2-956] by Gary Gregory, David Kellerman)
+* Missing toUpperCase(Locale.ENGLISH). (for https://issues.apache.org/jira/browse/LOG4J2-957[LOG4J2-957] by Gary Gregory, Fatih Guleryuz)
diff --git a/src/site/_release-notes/_2.20.0.adoc b/src/site/_release-notes/_2.20.0.adoc
new file mode 100644
index 0000000..2d763a1
--- /dev/null
+++ b/src/site/_release-notes/_2.20.0.adoc
@@ -0,0 +1,77 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.20.0 (2023-02-17)
+
+This release primarily contains bug fixes and minor enhancements.
+
+Due to a break in compatibility in the SLF4J binding, Log4j now ships with two versions of the SLF4J to Log4j adapters.
+`log4j-slf4j-impl` should be used with SLF4J 1.7.x and earlier and `log4j-slf4j18-impl` should be used with SLF4J 1.8.x and later.
+SLF4J-2.0.0 alpha releases are not fully supported.
+See https://issues.apache.org/jira/browse/LOG4J2-2975[LOG4J2-2975] and https://jira.qos.ch/browse/SLF4J-511[SLF4J-511].
+
+The Log4j 2.20.0 API, as well as many core components, maintains binary compatibility with previous releases.
+
+Apache Log4j 2.20.0 requires a minimum of Java 8 to build and run.
+Log4j 2.12.4 is the last release to support Java 7.
+Log4j 2.3.2 is the last release to support Java 6.
+Java 6 and Java 7 are no longer supported by the Log4j team.
+
+For complete information on Apache Log4j 2, including instructions on how to submit bug reports, patches, or suggestions for improvement, see http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Added
+
+* Add support for timezones in `RollingFileAppender` date pattern (for https://issues.apache.org/jira/browse/LOG4J2-1631[LOG4J2-1631] by Piotr P. Karwasz, Danas Mikelinskas)
+* Add `LogEvent` timestamp to `ProducerRecord` in `KafkaAppender` (for https://issues.apache.org/jira/browse/LOG4J2-2678[LOG4J2-2678] by Piotr P. Karwasz, Federico D'Ambrosio)
+* Add `PatternLayout` support for abbreviating the name of all logger components except the 2 rightmost (for https://issues.apache.org/jira/browse/LOG4J2-2785[LOG4J2-2785] by Ralph Goers, Markus Spann)
+* Removes internal field that leaked into public API. (for https://issues.apache.org/jira/browse/LOG4J2-3615[LOG4J2-3615] by Piotr P. Karwasz)
+* Add a `LogBuilder#logAndGet()` method to emulate the `Logger#traceEntry` method. (for https://issues.apache.org/jira/browse/LOG4J2-3645[LOG4J2-3645] by Piotr P. Karwasz)
+
+=== Changed
+
+* Simplify site generation (for https://github.com/apache/logging-log4j2/pull/1166[1166] by Volkan Yazıcı)
+* Switch the issue tracker from https://issues.apache.org/jira/browse/LOG4J2[JIRA] to https://github.com/apache/logging-log4j2/issues[GitHub Issues] (for https://github.com/apache/logging-log4j2/pull/1172[1172] by Volkan Yazıcı)
+* Remove liquibase-log4j2 maven module (for https://github.com/apache/logging-log4j2/pull/1193[1193] by StevenMassaro)
+* Fix order of stacktrace elements, that causes cache misses in `ThrowableProxyHelper`. (for https://github.com/apache/logging-log4j2/pull/1214[1214] by Aliaksei Durbouski, Piotr P. Karwasz)
+* Switch from `com.sun.mail` to Eclipse Angus. (for https://issues.apache.org/jira/browse/LOG4J2-3554[LOG4J2-3554] by Oleh Astappiev, Piotr P. Karwasz)
+* Add Log4j2 Core as default runtime dependency of the SLF4J2-to-Log4j2 API bridge. (for https://issues.apache.org/jira/browse/LOG4J2-3601[LOG4J2-3601] by Andy Seaborne, Piotr P. Karwasz)
+* Replace `maven-changes-plugin` with a custom changelog implementation (for https://issues.apache.org/jira/browse/LOG4J2-3628[LOG4J2-3628] by Volkan Yazıcı)
+* Moved `log4j-api` and `log4j-core` artifacts with classifier `tests` to `log4j-api-test` and `log4j-core-test` respectively. (for https://issues.apache.org/jira/browse/LOG4J2-3650[LOG4J2-3650] by Piotr P. Karwasz)
+
+=== Deprecated
+
+* Deprecate support for package scanning for plugins (for https://issues.apache.org/jira/browse/LOG4J2-3644[LOG4J2-3644] by Ralph Goers)
+
+=== Fixed
+
+* Copy programmatically supplied location even if `includeLocation="false"`. (for https://github.com/apache/logging-log4j2/pull/1197[1197] by Piotr P. Karwasz)
+* Eliminate status logger warning, when `disableAnsi` or `noConsoleNoAnsi` is used the style and highlight patterns. (for https://github.com/apache/logging-log4j2/pull/1202[1202] by `wleese`, Piotr P. Karwasz)
+* Fix detection of location requirements in `RewriteAppender`. (for https://github.com/apache/logging-log4j2/pull/1274[1274] by `amirhadadi`, Piotr P. Karwasz)
+* Replace regex with manual code to escape characters in Rfc5424Layout. (for https://github.com/apache/logging-log4j2/pull/1277[1277] by Adwait Kumar Singh)
+* Fix `java.sql.Time` object formatting in `MapMessage` (for https://issues.apache.org/jira/browse/LOG4J2-2297[LOG4J2-2297] by Ralph Goers)
+* Fix previous fire time computation in `CronTriggeringPolicy` (for https://issues.apache.org/jira/browse/LOG4J2-3357[LOG4J2-3357] by Ralph Goers)
+* Correct default to not include location for ``AsyncRootLogger``s (for https://issues.apache.org/jira/browse/LOG4J2-3487[LOG4J2-3487] by Ralph Goers, Dave Messink)
+* Lazily evaluate the level of a SLF4J `LogEventBuilder` (for https://issues.apache.org/jira/browse/LOG4J2-3598[LOG4J2-3598] by Piotr P. Karwasz)
+* Fixes priority of Legacy system properties, which are now back to having higher priority than Environment variables. (for https://issues.apache.org/jira/browse/LOG4J2-3621[LOG4J2-3615] by Adwait Kumar Singh, Piotr P. Karwasz)
+* Protects `ServiceLoaderUtil` from unchecked `ServiceLoader` exceptions. (for https://issues.apache.org/jira/browse/LOG4J2-3624[LOG4J2-3624] by Piotr P. Karwasz)
+* Fix `Configurator#setLevel` for internal classes (for https://issues.apache.org/jira/browse/LOG4J2-3631[LOG4J2-3631] by Piotr P. Karwasz, Jeff Thomas)
+* Fix level propagation in `Log4jBridgeHandler` (for https://issues.apache.org/jira/browse/LOG4J2-3634[LOG4J2-3634] by Piotr P. Karwasz, Marcel Koch)
+* Disable `OsgiServiceLocator` if not running in OSGI container. (for https://issues.apache.org/jira/browse/LOG4J2-3642[LOG4J2-3642] by Adwait Kumar Singh, Piotr P. Karwasz)
+* When using a Date Lookup in the file pattern the current time should be used. (for https://issues.apache.org/jira/browse/LOG4J2-3643[LOG4J2-3643] by Ralph Goers)
+* Fixed `LogBuilder` filtering in the presence of global filters. (for https://issues.apache.org/jira/browse/LOG4J2-3647[LOG4J2-3647] by Piotr P. Karwasz)
diff --git a/src/site/_release-notes/_2.3.adoc b/src/site/_release-notes/_2.3.adoc
new file mode 100644
index 0000000..bda59bc
--- /dev/null
+++ b/src/site/_release-notes/_2.3.adoc
@@ -0,0 +1,70 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.3 (2015-05-09)
+
+This is the sixth GA release.
+It contains several bugfixes and new features.
+
+Apache Log4j 2.3 requires a minimum of Java 6 to build and run.
+This will be the last release of Log4j 2 to support Java 6.
+Future releases will require a minimum of Java 7.
+
+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 http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Added
+
+* Truncate from the end of text format modifier. (for https://issues.apache.org/jira/browse/LOG4J2-926[LOG4J2-926] by Gary Gregory, David Ohana)
+* PatternLayout %highlight to support noConsoleNoAnsi like %style. (for https://issues.apache.org/jira/browse/LOG4J2-984[LOG4J2-984] by Gary Gregory, Jonas Höpfner)
+
+=== Changed
+
+* Update Jackson from 2.5.1 to 2.5.3. (for https://issues.apache.org/jira/browse/LOG4J2-1004[LOG4J2-1004] by Gary Gregory)
+* Update Slf4j from 1.7.7 to 1.7.12. (for https://issues.apache.org/jira/browse/LOG4J2-1005[LOG4J2-1005] by Gary Gregory)
+* Migrate tests from Logback 1.1.2 to 1.1.3. (for https://issues.apache.org/jira/browse/LOG4J2-987[LOG4J2-987] by Gary Gregory)
+* Update LMAX Disruptor from 3.3.0 to 3.3.2. (for https://issues.apache.org/jira/browse/LOG4J2-988[LOG4J2-988] by Gary Gregory)
+* Update tests to use ActiveMQ from 5.10 to 5.11.1. (for https://issues.apache.org/jira/browse/LOG4J2-988[LOG4J2-988] by Gary Gregory)
+* Move UTF-8 constant from Charsets to Constants class. Remove Charsets class. (for https://issues.apache.org/jira/browse/LOG4J2-995[LOG4J2-995] by Ralph Goers)
+* Make org.apache.logging.log4j.core.Logger#updateConfiguration protected. (for https://issues.apache.org/jira/browse/LOG4J2-998[LOG4J2-998] by Gary Gregory, Mariano Gonzalez)
+
+=== Fixed
+
+* JUL Logger.throwing is mis-mapped to ERROR when it should be TRACE. (for https://issues.apache.org/jira/browse/LOG4J2-1003[LOG4J2-1003] by Gary Gregory, Dan Armbrust)
+* org.apache.logging.log4j.core.util#fileFromUri(URI uri) incorrectly converts '+' characters to spaces. (for https://issues.apache.org/jira/browse/LOG4J2-1007[LOG4J2-1007] by Ralph Goers, Gary Gregory)
+* org.apache.logging.log4j.core.config.plugins.util.ResolverUtil.extractPath(URL) incorrectly converts '+' characters to spaces. (for https://issues.apache.org/jira/browse/LOG4J2-1008[LOG4J2-1008] by Ralph Goers, Gary Gregory)
+* Incorrectly defined compressionType parameter to GelfLayout. (for https://issues.apache.org/jira/browse/LOG4J2-1009[LOG4J2-1009] by Gary Gregory, Mikael Ståldal)
+* A new StatusLoggerAdmin listener is added to StatusLogger every time the log is reconfigured. (for https://issues.apache.org/jira/browse/LOG4J2-947[LOG4J2-947] by Gary Gregory, Stefan Wehner)
+* StringFormattedMessage serialization is incorrect. (for https://issues.apache.org/jira/browse/LOG4J2-964[LOG4J2-964] by Gary Gregory, Jonne Jyrylä)
+* System.out no longer works after the Console appender and JANSI are initialized. (for https://issues.apache.org/jira/browse/LOG4J2-965[LOG4J2-965] by Gary Gregory, Khotyn Huang)
+* KeyStoreConfiguration.createKeyStoreConfiguration() ignores keyManagerFactoryAlgorithm. (for https://issues.apache.org/jira/browse/LOG4J2-966[LOG4J2-966] by Gary Gregory)
+* log4j2.component.properties not read for all properties. (for https://issues.apache.org/jira/browse/LOG4J2-967[LOG4J2-967] by Gary Gregory, Stefan Wehner)
+* SyslogLayout contains extra space. (for https://issues.apache.org/jira/browse/LOG4J2-968[LOG4J2-968] by Gary Gregory, Paul D Johe)
+* Another bad priority in Syslog messages. (for https://issues.apache.org/jira/browse/LOG4J2-971[LOG4J2-971] by Gary Gregory, Paul D Johe)
+* org.apache.logging.log4j.core.net.ssl.TlsSyslogInputStreamReader does not need to create temp Integer objects. (for https://issues.apache.org/jira/browse/LOG4J2-972[LOG4J2-972] by Gary Gregory)
+* Typo in EventLogger documentation. (for https://issues.apache.org/jira/browse/LOG4J2-974[LOG4J2-974] by Gary Gregory, Daniel Galán y Martins)
+* Using monitorInterval with YAML config file format causes JSONParseException. (for https://issues.apache.org/jira/browse/LOG4J2-976[LOG4J2-976] by Gary Gregory, Matt Quinn)
+* Numerical overflow in BurstFilter not handled correctly. (for https://issues.apache.org/jira/browse/LOG4J2-980[LOG4J2-980] by Gary Gregory, Mikhail Mazurskiy)
+* Incorrect unlock in ProviderUtil. (for https://issues.apache.org/jira/browse/LOG4J2-981[LOG4J2-981] by Gary Gregory, Mikhail Mazurskiy)
+* AbstractFilter should not implement equals() and hashCode(). (for https://issues.apache.org/jira/browse/LOG4J2-985[LOG4J2-985] by Remko Popma, Sean Dawson)
+* Async root logger config should default includeLocation to false. (for https://issues.apache.org/jira/browse/LOG4J2-991[LOG4J2-991] by Remko Popma, Ryan Rupp)
+* Deadlock would occur if appender thread creates a new Logger during reconfiguration. (for https://issues.apache.org/jira/browse/LOG4J2-993[LOG4J2-993] by Ralph Goers)
diff --git a/src/site/_release-notes/_2.4.1.adoc b/src/site/_release-notes/_2.4.1.adoc
new file mode 100644
index 0000000..190e5f0
--- /dev/null
+++ b/src/site/_release-notes/_2.4.1.adoc
@@ -0,0 +1,65 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.4.1 (2015-10-08)
+
+This is the ninth GA release.
+It contains several bugfixes and new features.
+Log4j 2 requires a minimum of Java 7.
+
+Apache Log4j 2.4.1 requires a minimum of Java 7 to build and run.
+Log4j 2.4 and greater requires Java 7, version 2.3 required 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 http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Added
+
+* Add possibility to set shutdown timeout on AsyncAppender. (for https://issues.apache.org/jira/browse/LOG4J2-1020[LOG4J2-1020] by Mikael Ståldal)
+* Allow PatternLayout to select a pattern to use based on some selection criteria. (for https://issues.apache.org/jira/browse/LOG4J2-1129[LOG4J2-1129] by Ralph Goers)
+* Add %equals to PatternLayout to test and replace patterns with strings. (for https://issues.apache.org/jira/browse/LOG4J2-1145[LOG4J2-1145] by Gary Gregory)
+* Add %notEmpty to PatternLayout to avoid output of patterns where all variables are empty. (for https://issues.apache.org/jira/browse/LOG4J2-1146[LOG4J2-1146] by Gary Gregory)
+* Add %equalsIgnoreCase to PatternLayout to test and replace patterns with strings. (for https://issues.apache.org/jira/browse/LOG4J2-1147[LOG4J2-1147] by Gary Gregory)
+
+=== Changed
+
+* Update MongoDB driver from 2.13.3 to 3.0.4. (for https://issues.apache.org/jira/browse/LOG4J2-1040[LOG4J2-1040] by Gary Gregory)
+* Reuse StringBuilder to improve performance for String-based layouts: CSV, GELF, HTML, RFC524, Syslog. (for https://issues.apache.org/jira/browse/LOG4J2-1128[LOG4J2-1128] by Gary Gregory)
+* Update mongo-java-driver from 2.13.2 to 2.13.3. (for https://issues.apache.org/jira/browse/LOG4J2-1131[LOG4J2-1131] by Gary Gregory)
+* Do not use Jackson deprecated methods. (for https://issues.apache.org/jira/browse/LOG4J2-1138[LOG4J2-1138] by Gary Gregory)
+* Update Jackson from 2.6.1 to 2.6.2. (for https://issues.apache.org/jira/browse/LOG4J2-1139[LOG4J2-1139] by Gary Gregory)
+* Update kafka-clients from 0.8.2.1 to 0.8.2.2. (for https://issues.apache.org/jira/browse/LOG4J2-1150[LOG4J2-1150] by Gary Gregory)
+* Performance improvement: backport Java 8 fast ISO-8859-1 String to byte[] encoder to AbstractStringLayout. (for https://issues.apache.org/jira/browse/LOG4J2-1151[LOG4J2-1151] by Remko Popma)
+* Performance improvement when converting Strings to byte[] arrays. (for https://issues.apache.org/jira/browse/LOG4J2-935[LOG4J2-935] by Remko Popma)
+
+=== Fixed
+
+* Fixed Log4jLookup. (for https://issues.apache.org/jira/browse/LOG4J2-1050[LOG4J2-1050] by Remko Popma)
+* Web site corrections and updates. (for https://issues.apache.org/jira/browse/LOG4J2-1126[LOG4J2-1126] by Gary Gregory)
+* log4j2.xml cannot be parsed on Oracle Weblogic 12c. (for https://issues.apache.org/jira/browse/LOG4J2-1127[LOG4J2-1127] by Gary Gregory)
+* Do not use MongoDB driver 2.13.3 deprecated methods. (for https://issues.apache.org/jira/browse/LOG4J2-1132[LOG4J2-1132] by Gary Gregory)
+* Compression on rollover was broken: log file was renamed to .zip but not compressed. (for https://issues.apache.org/jira/browse/LOG4J2-1135[LOG4J2-1135] by Remko Popma)
+* Fixed bug where headers were not being written to first file with RollingFileAppender. (for https://issues.apache.org/jira/browse/LOG4J2-1140[LOG4J2-1140] by Remko Popma)
+* Fix potential memory leak in web applications by using a straight ThreadLocal field instead of subclassing ThreadLocal. (for https://issues.apache.org/jira/browse/LOG4J2-1142[LOG4J2-1142] by Remko Popma)
+* Add %markerSimpleName in pattern layout should evaluate to marker name (not toString()). (for https://issues.apache.org/jira/browse/LOG4J2-1144[LOG4J2-1144] by Gary Gregory)
+* Fixed bug where PatternLayout predefined date pattern with time zone always renders default date format. (for https://issues.apache.org/jira/browse/LOG4J2-1149[LOG4J2-1149] by Remko Popma)
+* Fixed NullPointerException when only root logger is defined (and no named loggers) in configuration properties file. (for https://issues.apache.org/jira/browse/LOG4J2-1153[LOG4J2-1153] by Remko Popma)
diff --git a/src/site/_release-notes/_2.4.adoc b/src/site/_release-notes/_2.4.adoc
new file mode 100644
index 0000000..aed5dba
--- /dev/null
+++ b/src/site/_release-notes/_2.4.adoc
@@ -0,0 +1,123 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.4 (2015-09-20)
+
+This is the eighth GA release.
+It contains several bugfixes and new features.
+As of this release Log4j now requires a minimum of Java 7.
+
+Apache Log4j 2.4 requires a minimum of Java 7 to build and run.
+Log4j 2.4 and greater requires Java 7, version 2.3 required 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 http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Added
+
+* Add a way to route messages based on the %marker in Layout for RoutingAppender. (for https://issues.apache.org/jira/browse/LOG4J2-1015[LOG4J2-1015] by Gary Gregory, Daniel Marcotte)
+* New RewritePolicy for changing level of a log event. (for https://issues.apache.org/jira/browse/LOG4J2-1023[LOG4J2-1023] by Gary Gregory, Mikael Ståldal)
+* Add a Log4jLookup class to help write log files relative to log4j2.xml. (for https://issues.apache.org/jira/browse/LOG4J2-1050[LOG4J2-1050] by Gary Gregory, Adam Retter)
+* Add API org.apache.logging.log4j.LogManager.getFormatterLogger(). (for https://issues.apache.org/jira/browse/LOG4J2-1057[LOG4J2-1057] by Gary Gregory)
+* Expose Log4jContextFactory's ShutdownCallbackRegistry. (for https://issues.apache.org/jira/browse/LOG4J2-1066[LOG4J2-1066] by Gary Gregory, Charles Allen)
+* Added support for system nanosecond time in pattern layout. (for https://issues.apache.org/jira/browse/LOG4J2-1074[LOG4J2-1074] by Remko Popma)
+* Added support for compressing to bzip2 format on file rollover. (for https://issues.apache.org/jira/browse/LOG4J2-1075[LOG4J2-1075] by Remko Popma)
+* Support additional Apache Commons Compress compression formats on rollover: Deflate, Pack200, XY. (for https://issues.apache.org/jira/browse/LOG4J2-1077[LOG4J2-1077] by Gary Gregory)
+* Add Comma Separated Value (CSV) layouts for parameter and event logging. (for https://issues.apache.org/jira/browse/LOG4J2-1088[LOG4J2-1088] by Gary Gregory)
+* Add Core Configurator APIs to change a logger's level. (for https://issues.apache.org/jira/browse/LOG4J2-1090[LOG4J2-1090] by Gary Gregory)
+* Add API org.apache.logging.log4j.Level.isInRange(Level, Level). (for https://issues.apache.org/jira/browse/LOG4J2-1105[LOG4J2-1105] by Gary Gregory, Gary Gregory)
+* Add a LevelRangeFilter class. (for https://issues.apache.org/jira/browse/LOG4J2-1106[LOG4J2-1106] by Gary Gregory, Gary Gregory)
+* New Appender for Apache Kafka. (for https://issues.apache.org/jira/browse/LOG4J2-1107[LOG4J2-1107] by Gary Gregory, Mikael Ståldal)
+* New publisher Appender for ZeroMQ (using JeroMQ). (for https://issues.apache.org/jira/browse/LOG4J2-1113[LOG4J2-1113] by Gary Gregory, Gary Gregory)
+* Updated Logger wrapper generator tool to add Java 8 lambda support for custom log levels. (for https://issues.apache.org/jira/browse/LOG4J2-1118[LOG4J2-1118] by Remko Popma)
+* Added support for Java 8 lambda expressions to lazily construct a log message only if the requested log level is enabled. (for https://issues.apache.org/jira/browse/LOG4J2-599[LOG4J2-599] by Remko Popma)
+* Add support for configuration via Properties. (for https://issues.apache.org/jira/browse/LOG4J2-635[LOG4J2-635] by Ralph Goers)
+* New module for Liquibase integration. (for https://issues.apache.org/jira/browse/LOG4J2-767[LOG4J2-767] by Gary Gregory, Mikael Ståldal)
+* Add ConfigurationBuilder for programmatic configuration. (for https://issues.apache.org/jira/browse/LOG4J2-952[LOG4J2-952] by Ralph Goers)
+
+=== Changed
+
+* Pass log event when interpolating logger properties. (for https://issues.apache.org/jira/browse/LOG4J2-1010[LOG4J2-1010] by Ralph Goers)
+* Update Java platform from Java 6 to 7. From this version onwards, log4j 2 requires Java 7. (for https://issues.apache.org/jira/browse/LOG4J2-1017[LOG4J2-1017] by Gary Gregory)
+* Update database tests from H2 1.3.175 to 1.3.176. (for https://issues.apache.org/jira/browse/LOG4J2-1018[LOG4J2-1018] by Gary Gregory)
+* Allow a list of keys to be specified in the MDC pattern converter. (for https://issues.apache.org/jira/browse/LOG4J2-1022[LOG4J2-1022] by Ralph Goers)
+* Log4j2 tries to SystemClassLoader when running on Google AppEngine. (for https://issues.apache.org/jira/browse/LOG4J2-1035[LOG4J2-1035] by Gary Gregory)
+* Update Apache Flume from 1.5.2 to 1.6.0. (for https://issues.apache.org/jira/browse/LOG4J2-1036[LOG4J2-1036] by Gary Gregory)
+* Update MongoDB driver from 2.11.2 to 2.13.2. (for https://issues.apache.org/jira/browse/LOG4J2-1041[LOG4J2-1041] by Gary Gregory)
+* Support batchSize in FlumeAvroManager. (for https://issues.apache.org/jira/browse/LOG4J2-1044[LOG4J2-1044] by Ralph Goers)
+* Avoid creating temporary array object in org.apache.logging.slf4j.Log4jMarker.iterator(). (for https://issues.apache.org/jira/browse/LOG4J2-1063[LOG4J2-1063] by Gary Gregory)
+* Define org.apache.logging.log4j.Marker.equals(Object) and org.apache.logging.log4j.Marker.hashCode(). (for https://issues.apache.org/jira/browse/LOG4J2-1065[LOG4J2-1065] by Gary Gregory)
+* Update Java Mail from 1.5.2 to 1.5.4. (for https://issues.apache.org/jira/browse/LOG4J2-1070[LOG4J2-1070] by Gary Gregory)
+* Update Jackson from 2.5.3 to 2.5.4. (for https://issues.apache.org/jira/browse/LOG4J2-1079[LOG4J2-1079] by Gary Gregory)
+* Update Jackson from 2.6.0 to 2.6.1. (for https://issues.apache.org/jira/browse/LOG4J2-1092[LOG4J2-1092] by Gary Gregory)
+* Improved performance of ParameterizedMessage::getFormattedMessage by ~2X. (for https://issues.apache.org/jira/browse/LOG4J2-1096[LOG4J2-1096] by Remko Popma)
+* PatternLayout timestamp formatting performance improvement: predefined date formats (and variants using a period '.' millisecond separator instead of ',') are now formatted ~2-10X faster than other date formats. (for https://issues.apache.org/jira/browse/LOG4J2-1097[LOG4J2-1097] by Remko Popma)
+* Update Apache Commons Compress from 1.9 to 1.10. (for https://issues.apache.org/jira/browse/LOG4J2-1104[LOG4J2-1104] by Gary Gregory)
+* Add thread name to status logger layout. (for https://issues.apache.org/jira/browse/LOG4J2-1114[LOG4J2-1114] by Gary Gregory)
+* LoggerConfig performance improvements: avoid unnecessary lock acquisition, use more efficient data structure. (for https://issues.apache.org/jira/browse/LOG4J2-1120[LOG4J2-1120] by Remko Popma)
+* PatternLayout performance improvement by caching and reusing a ThreadLocal StringBuilder. (for https://issues.apache.org/jira/browse/LOG4J2-1125[LOG4J2-1125] by Remko Popma)
+* Update Jackson from 2.5.4 to 2.6.0. (for https://issues.apache.org/jira/browse/LOG4J2-1879[LOG4J2-1879] by Gary Gregory)
+* MongoDB appender, username and password should be optional. (for https://issues.apache.org/jira/browse/LOG4J2-403[LOG4J2-403] by Gary Gregory, Poorna Subhash P, Jeremy Lautman)
+* PatternLayout timestamp formatting performance improvement: replaced synchronized SimpleDateFormat with Apache Commons FastDateFormat. This and better caching resulted in a ~3-30X faster timestamp formatting. (for https://issues.apache.org/jira/browse/LOG4J2-812[LOG4J2-812] by Ralph Goers)
+* log4j-web-2.1 should work around a bug in JBOSS EAP 6.2. (for https://issues.apache.org/jira/browse/LOG4J2-890[LOG4J2-890] by Gary Gregory, Remko Popma, Hassan Kalaldeh, Robert Andersson)
+* Fix FindBugs DM_DEFAULT_ENCODING bug in SimpleLogger.logMessage() and simplify code. (for https://issues.apache.org/jira/browse/LOG4J2-959[LOG4J2-959] by Gary Gregory)
+
+=== Removed
+
+* Removed experimental interface LevelLogger which got committed to master by mistake. (for by Remko Popma)
+
+=== Fixed
+
+* ZipCompressAction leaves files open until GC when an IO error takes place. (for https://issues.apache.org/jira/browse/LOG4J2-1019[LOG4J2-1019] by Gary Gregory)
+* GzCompressAction leaves files open until GC when an IO error takes place. (for https://issues.apache.org/jira/browse/LOG4J2-1020[LOG4J2-1020] by Gary Gregory)
+* Custom java.util.logging.Level gives null Log4j Level and causes NPE. (for https://issues.apache.org/jira/browse/LOG4J2-1025[LOG4J2-1025] by Gary Gregory, Mikael Ståldal)
+* HighlightConverter does not obey noConsoleNoAnsi. (for https://issues.apache.org/jira/browse/LOG4J2-1026[LOG4J2-1026] by Gary Gregory)
+* SimpleLogger creates unnecessary Map objects by calling ThreadContext.getContext() instead of getImmutableContext(). (for https://issues.apache.org/jira/browse/LOG4J2-1033[LOG4J2-1033] by Gary Gregory, Mikael Ståldal)
+* Backward compatibility issue in log4j-1.2-api NDC pop() and peek(). (for https://issues.apache.org/jira/browse/LOG4J2-1037[LOG4J2-1037] by Gary Gregory, Marc Dergacz)
+* Incorrect documentation for layout default charset. (for https://issues.apache.org/jira/browse/LOG4J2-1038[LOG4J2-1038] by Gary Gregory, Gili)
+* Socket and Syslog appenders don't take timeout into account at startup. (for https://issues.apache.org/jira/browse/LOG4J2-1042[LOG4J2-1042] by Gary Gregory, Guillaume Turri)
+* Write pending events to Flume when the appender is stopped. (for https://issues.apache.org/jira/browse/LOG4J2-1044[LOG4J2-1044] by Ralph Goers)
+* Externalize log4j2.xml via URL resource. (for https://issues.apache.org/jira/browse/LOG4J2-1045[LOG4J2-1045] by Gary Gregory, Günter Albrecht)
+* Circular Exception cause throws StackOverflowError. (for https://issues.apache.org/jira/browse/LOG4J2-1046[LOG4J2-1046] by Gary Gregory, Kenneth Gendron)
+* FileConfigurationMonitor unnecessarily calls System.currentTimeMillis() causing high CPU usage. (for https://issues.apache.org/jira/browse/LOG4J2-1048[LOG4J2-1048] by Remko Popma, Nikhil)
+* AsyncAppender now resets the thread interrupted flag after catching InterruptedException. (for https://issues.apache.org/jira/browse/LOG4J2-1049[LOG4J2-1049] by Remko Popma, Robert Schaft)
+* NoClassDefFoundError when starting app on Google App Engine. (for https://issues.apache.org/jira/browse/LOG4J2-1051[LOG4J2-1051] by Gary Gregory, Lukasz Lenart)
+* Log4jMarker#contains(String) does not respect org.slf4j.Marker contract. (for https://issues.apache.org/jira/browse/LOG4J2-1058[LOG4J2-1058] by Gary Gregory, Daniel Branzea)
+* Log4jMarker#contains(Marker) does not respect org.slf4j.Marker contract. (for https://issues.apache.org/jira/browse/LOG4J2-1060[LOG4J2-1060] by Gary Gregory)
+* Log4jMarker#remove(Marker) does not respect org.slf4j.Marker contract. (for https://issues.apache.org/jira/browse/LOG4J2-1061[LOG4J2-1061] by Gary Gregory)
+* Log4jMarker#add(Marker) does not respect org.slf4j.Marker contract. (for https://issues.apache.org/jira/browse/LOG4J2-1062[LOG4J2-1062] by Gary Gregory)
+* org.apache.logging.slf4j.Log4jMarker does not implement org.slf4j.Marker.equals(Object) org.slf4j.Marker.hashCode(). (for https://issues.apache.org/jira/browse/LOG4J2-1064[LOG4J2-1064] by Gary Gregory)
+* ThrowableProxy getExtendedStackTraceAsString throws NPE on deserialized nested exceptions. (for https://issues.apache.org/jira/browse/LOG4J2-1067[LOG4J2-1067] by Gary Gregory, Sam Braam)
+* Exceptions not logged when using TcpSocketServer + SerializedLayout. (for https://issues.apache.org/jira/browse/LOG4J2-1068[LOG4J2-1068] by Gary Gregory, Andy McMullan)
+* Improper handling of JSON escape chars when deserializing JSON log events. (for https://issues.apache.org/jira/browse/LOG4J2-1069[LOG4J2-1069] by Gary Gregory, Sam Braam)
+* GelfLayout throws exception if some log event fields are null. (for https://issues.apache.org/jira/browse/LOG4J2-1078[LOG4J2-1078] by Gary Gregory, Mikael Ståldal)
+* Misleading StatusLogger WARN event in LogManager with java.util.Map. (for https://issues.apache.org/jira/browse/LOG4J2-1084[LOG4J2-1084] by Gary Gregory, Philipp Schneider)
+* NullPointerException when passing null to java.util.logging.Logger.setLevel(). (for https://issues.apache.org/jira/browse/LOG4J2-1108[LOG4J2-1108] by Gary Gregory, Mikael Ståldal)
+* org.apache.logging.log4j.jul.CoreLogger.setLevel() checks for security permission too late. (for https://issues.apache.org/jira/browse/LOG4J2-1110[LOG4J2-1110] by Gary Gregory)
+* OutputStreamManager in ConsoleAppender leaking managers. (for https://issues.apache.org/jira/browse/LOG4J2-1117[LOG4J2-1117] by Gary Gregory, Marcus Thiesen)
+* Fixed potential race condition on reconfiguration. Introduced ReliabilityStrategy to facilitate switching between different mechanisms for preventing log events from being dropped on reconfiguration. (for https://issues.apache.org/jira/browse/LOG4J2-1121[LOG4J2-1121] by Remko Popma)
+* Core Configurator.initialize(String, ClassLoader, String) fails to work when config location is a file path. (for https://issues.apache.org/jira/browse/LOG4J2-1123[LOG4J2-1123] by Gary Gregory)
+* ExtendedThrowablePatternConverter does not print suppressed exceptions. (for https://issues.apache.org/jira/browse/LOG4J2-684[LOG4J2-684] by Gary Gregory, Joern Huxhorn, Mauro Molinari)
+* Header in layout should not be written on application startup if appending to an existing file. Fixes LOG4J2-1030. (for https://issues.apache.org/jira/browse/LOG4J2-889[LOG4J2-889] by Remko Popma, Maciej Karaś, Kenneth Leider)
+* Clarify documentation for combining async with sync loggers. (for https://issues.apache.org/jira/browse/LOG4J2-918[LOG4J2-918] by Remko Popma)
+* Circular suppressed Exception throws StackOverflowError. (for https://issues.apache.org/jira/browse/LOG4J2-934[LOG4J2-934] by Gary Gregory, Kenneth Gendron)
+* Use System.nanoTime() to measure time intervals. (for https://issues.apache.org/jira/browse/LOG4J2-982[LOG4J2-982] by Gary Gregory, Mikhail Mazurskiy)
diff --git a/src/site/_release-notes/_2.5.adoc b/src/site/_release-notes/_2.5.adoc
new file mode 100644
index 0000000..6cd3daf
--- /dev/null
+++ b/src/site/_release-notes/_2.5.adoc
@@ -0,0 +1,81 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.5 (2015-12-06)
+
+This is the ninth GA release.
+It contains several bugfixes and new features.
+The new features include the ability to specify delete actions during file rollover, a CRON-based
+triggering policy for file rollover, support for JSR 223 scripts in filters, pattern selectors and delete actions, and a policy for removing idle appenders from the `RoutingAppender`.
+More details on the features and bugfixes are itemized below.
+
+Log4j 2.5 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 http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Added
+
+* Add support for JSR 223 scripts in filters and the PatternSelector. (for https://issues.apache.org/jira/browse/LOG4J2-1136[LOG4J2-1136] by Ralph Goers)
+* Add getters for source and destination file in file rename action. (for https://issues.apache.org/jira/browse/LOG4J2-1168[LOG4J2-1168] by Gary Gregory, Steven Swor)
+* Add getters for classes in org.apache.logging.log4j.core.appender.rolling.action. (for https://issues.apache.org/jira/browse/LOG4J2-1175[LOG4J2-1175] by Gary Gregory)
+* Support use-case for JDBC's CommonDataSource.setLogWriter(PrintWriter) and java.sql.DriverManager.setLogWriter(PrintWriter). (for https://issues.apache.org/jira/browse/LOG4J2-1178[LOG4J2-1178] by Gary Gregory)
+* Support use case for java.sql.DriverManager.setLogStream(PrintStream). (for https://issues.apache.org/jira/browse/LOG4J2-1187[LOG4J2-1187] by Gary Gregory)
+* Added support for custom delete actions triggered by a rollover. (for https://issues.apache.org/jira/browse/LOG4J2-435[LOG4J2-435] by Remko Popma, Robert Schaft)
+* Added system property to allow users to control whether messages should be formatted in the background. (for https://issues.apache.org/jira/browse/LOG4J2-898[LOG4J2-898] by Remko Popma)
+* Allow rollover to occur at any time. Add CronTriggeringPolicy. (for https://issues.apache.org/jira/browse/LOG4J2-89[LOG4J2-89] by Ralph Goers)
+
+=== Changed
+
+* Update Jackson from 2.6.2 to 2.6.3. (for https://issues.apache.org/jira/browse/LOG4J2-1174[LOG4J2-1174] by Gary Gregory)
+* Remove ConfigurationMonitor. The WatchManager is now used to check for configuration changes. (for https://issues.apache.org/jira/browse/LOG4J2-1202[LOG4J2-1202] by Ralph Goers)
+* Update kafka-clients from 0.8.2.2 to 0.9.0.0. (for https://issues.apache.org/jira/browse/LOG4J2-1207[LOG4J2-1207] by Gary Gregory)
+* Add PurgePolicy and IdlePurgePolicy to RoutingAppender. (for https://issues.apache.org/jira/browse/LOG4J2-649[LOG4J2-649] by Ralph Goers, Aleksey Zvolinsky)
+
+=== Fixed
+
+* Performance improvement when gathering location information. (for https://issues.apache.org/jira/browse/LOG4J2-1029[LOG4J2-1029] by Remko Popma, Stefan Leonhartsberger)
+* Web site corrections and updates. (for https://issues.apache.org/jira/browse/LOG4J2-1156[LOG4J2-1156] by Remko Popma)
+* Fix compilation error for classes annotated with @Plugin. (for https://issues.apache.org/jira/browse/LOG4J2-1157[LOG4J2-1157] by Matt Sicker, Norbert Bartels)
+* Log4J JUL adapter is using MessageFormat on String passed by java.util.function.Supplier<String>. (for https://issues.apache.org/jira/browse/LOG4J2-1158[LOG4J2-1158] by Gary Gregory, Michael Fortin)
+* Fixed a ThreadLocal memory leak in Tomcat8 that mentions AsyncLoggers when Async Loggers are not used. (for https://issues.apache.org/jira/browse/LOG4J2-1159[LOG4J2-1159] by Remko Popma)
+* Improve Log4j initialization status messages. (for https://issues.apache.org/jira/browse/LOG4J2-1165[LOG4J2-1165] by Remko Popma)
+* AbstractConfiguration executor should use a DaemonThreadFactory. (for https://issues.apache.org/jira/browse/LOG4J2-1166[LOG4J2-1166] by Remko Popma)
+* Use servlet context name for logger context name when available. (for https://issues.apache.org/jira/browse/LOG4J2-1171[LOG4J2-1171] by Remko Popma)
+* Fixed ThreadLocal leak [AsyncLogger$Info] on Tomcat when using AsyncLoggerContextSelector. (for https://issues.apache.org/jira/browse/LOG4J2-1172[LOG4J2-1172] by Remko Popma)
+* Fixed rollover error when copying to a directory mapped to a remote Linux host. (for https://issues.apache.org/jira/browse/LOG4J2-1173[LOG4J2-1173] by Remko Popma)
+* Fixed memory leak when log4j jars are in Tomcat's lib folder. (for https://issues.apache.org/jira/browse/LOG4J2-1176[LOG4J2-1176] by Remko Popma)
+* Logger cache does not account for message factory. (for https://issues.apache.org/jira/browse/LOG4J2-1180[LOG4J2-1180] by Gary Gregory, Mikael Ståldal)
+* Prefix all thread names Log4j creates with "Log4j2-". (for https://issues.apache.org/jira/browse/LOG4J2-1193[LOG4J2-1193] by Gary Gregory)
+* Documentation does not match parameters for LoggerNameLevelRewritePolicy. (for https://issues.apache.org/jira/browse/LOG4J2-1194[LOG4J2-1194] by Gary Gregory, Adam Brin)
+* Make KafkaAppender support SerializedLayout. (for https://issues.apache.org/jira/browse/LOG4J2-1195[LOG4J2-1195] by Mikael Ståldal, Melvin Du)
+* MongoDbConnection does not close MongoClient. (for https://issues.apache.org/jira/browse/LOG4J2-1196[LOG4J2-1196] by Matt Sicker, René Zanner)
+* Better web app support for async loggers: Fixed a memory leak that occurred when the logging jars are placed in the container's classpath and the configuration file uses AsyncRoot/AsyncLogger. The problem was that the first web application started the Disruptor background thread [AsyncLoggerConfig-1] but did not stop it until all web apps are stopped. Each web application now has its own Disruptor which is stopped/started together with the web app. (for https://issues.apache.org/jira/browse/LOG4J2-323[LOG4J2-323] by Remko Popma)
+* Reduced memory usage of status messages in bounded queue; support zero-length queue that stores no messages. (for https://issues.apache.org/jira/browse/LOG4J2-324[LOG4J2-324] by Remko Popma)
+* Allow triggering policy and rollover strategy to be modified during reconfiguration. (for https://issues.apache.org/jira/browse/LOG4J2-381[LOG4J2-381] by Ralph Goers, Anthony Baldocchi)
+* Better web app support for async loggers: it is now possible to place the logging jars in the container's classpath when making all loggers asynchronous by using AsyncLoggerContextSelector. This fixes a problem where logging would stop working after stopping and restarting a web application. (for https://issues.apache.org/jira/browse/LOG4J2-493[LOG4J2-493] by Remko Popma)
+* org.apache.logging.log4j.core.Logger should be serializable. (for https://issues.apache.org/jira/browse/LOG4J2-801[LOG4J2-801] by Matt Sicker)
+* Fixed bug where omitting the <display-name> element in web.xml caused incorrect log4j initialization, resulting in memory leaks when the web application was stopped or reloaded. (for https://issues.apache.org/jira/browse/LOG4J2-873[LOG4J2-873] by Remko Popma, Martin Dickins, LC, Luke Woodward)
+* Documentation: fixed minor issues with the site and manual pages. (for https://issues.apache.org/jira/browse/LOG4J2-879[LOG4J2-879] by Remko Popma)
+* Fix plugin documentation error about Converters. (for https://issues.apache.org/jira/browse/LOG4J2-948[LOG4J2-948] by Matt Sicker, Andrew Flower)
+* RollingFileAppender should also roll over when log event time is equal to rollover time, not only when later. (for https://issues.apache.org/jira/browse/LOG4J2-999[LOG4J2-999] by Remko Popma, Joan Balagueró)
diff --git a/src/site/_release-notes/_2.6.1.adoc b/src/site/_release-notes/_2.6.1.adoc
new file mode 100644
index 0000000..f3173d4
--- /dev/null
+++ b/src/site/_release-notes/_2.6.1.adoc
@@ -0,0 +1,81 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.6.1 (2016-06-05)
+
+This is the eleventh GA release.
+It is primarily a bugfix release.
+More details on the fixes are itemized below.
+
+Note that subsequent to the 2.6 release a minor source incompatibility was found due to the addition of new methods to the `Logger` interface.
+If you have code that does:
+
+[source,java]
+----
+logger.error(null, “This is the log message”, throwable);
+----
+
+or similar with any log level you will get a compiler error saying the reference is ambiguous.
+To correct this either do:
+
+[source,java]
+----
+logger.error(“This is the log message”, throwable);
+----
+
+or
+
+[source,java]
+----
+logger.error((Marker) null, “This is the log message”, throwable);
+----
+
+Log4j 2.6.1 maintains binary compatibility with previous releases.
+
+Log4j 2.6.1 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 http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Added
+
+* Added documentation about plugin builders compared to factories. (for https://issues.apache.org/jira/browse/LOG4J2-1411[LOG4J2-1411] by Matt Sicker)
+
+=== Changed
+
+* (GC) CSV layouts should not create a new CSVPrinter for each log event. Requires Apache Commons CSV 1.4. (for https://issues.apache.org/jira/browse/LOG4J2-1385[LOG4J2-1385] by Gary Gregory)
+* Update liquibase-core from 3.4.2 to 3.5.1. (for https://issues.apache.org/jira/browse/LOG4J2-1398[LOG4J2-1398] by Gary Gregory)
+* Update Apache Commons CSV from 1.3 to 1.4. (for https://issues.apache.org/jira/browse/LOG4J2-1399[LOG4J2-1399] by Gary Gregory)
+
+=== Fixed
+
+* Changed RenameAction to use java.nio to better report rename failures. (for https://issues.apache.org/jira/browse/LOG4J2-1032[LOG4J2-1032] by Ralph Goers)
+* Logger cache now accounts for message factory. (for https://issues.apache.org/jira/browse/LOG4J2-1180[LOG4J2-1180] by Gary Gregory)
+* Fixed minor issues with the 2.6 website. (for https://issues.apache.org/jira/browse/LOG4J2-1394[LOG4J2-1394] by Matt Sicker, Mikael Ståldal)
+* Fix regression in properties configuration to support arbitrary component ids. (for https://issues.apache.org/jira/browse/LOG4J2-1402[LOG4J2-1402] by Ralph Goers)
+* OnStartupTriggeringPolicy was forcing a rollover of empty files at startup and would append a second footer that was added by the prior shutdown. (for https://issues.apache.org/jira/browse/LOG4J2-1405[LOG4J2-1405] by Ralph Goers)
+* Fixed bug in ReusableParameterizedMessage where Throwable was never updated so first error was logged over and over again and subsequent errors were not logged. (for https://issues.apache.org/jira/browse/LOG4J2-1406[LOG4J2-1406] by Remko Popma, Trask Stalnaker)
+* Fixed misleading WARN log events from Log4j about message factories and unexpected formatting. (for https://issues.apache.org/jira/browse/LOG4J2-1407[LOG4J2-1407] by Gary Gregory)
+* Added the module log4j-liquibase to BOM POM. (for https://issues.apache.org/jira/browse/LOG4J2-1408[LOG4J2-1408] by Gary Gregory)
+* Fixed ArrayIndexOutOfBoundsException that may occur in ReusableParameterizedMessage. (for https://issues.apache.org/jira/browse/LOG4J2-1409[LOG4J2-1409] by Remko Popma, Shahan)
+* Add filter and remove filter were not working properly in AbstractFilterable. (for https://issues.apache.org/jira/browse/LOG4J2-997[LOG4J2-997] by Ralph Goers, Maytee Chinavanichkit)
diff --git a/src/site/_release-notes/_2.6.2.adoc b/src/site/_release-notes/_2.6.2.adoc
new file mode 100644
index 0000000..0d31634
--- /dev/null
+++ b/src/site/_release-notes/_2.6.2.adoc
@@ -0,0 +1,85 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.6.2 (2016-07-05)
+
+This is the twelfth GA release.
+It is primarily a bugfix release.
+More details on the fixes are itemized below.
+
+Note that subsequent to the 2.6 release a minor source incompatibility was found due to the addition of new methods to the `Logger` interface.
+If you have code that does:
+
+[source,java]
+----
+logger.error(null, “This is the log message”, throwable);
+----
+
+or similar with any log level you will get a compiler error saying the reference is ambiguous.
+To correct this either do:
+
+[source,java]
+----
+logger.error(“This is the log message”, throwable);
+----
+
+or
+
+[source,java]
+----
+logger.error((Marker) null, “This is the log message”, throwable);
+----
+
+Log4j 2.6.2 maintains binary compatibility with previous releases.
+
+Log4j 2.6.2 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 http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Added
+
+* Add "direct" option to ConsoleAppender for increased performance. (for https://issues.apache.org/jira/browse/LOG4J2-1395[LOG4J2-1395] by Mikael Ståldal)
+* Unbox utility's ringbuffer of StringBuilders is now configurable. (for https://issues.apache.org/jira/browse/LOG4J2-1412[LOG4J2-1412] by Remko Popma)
+* (GC) ParameterFormatter now avoids calling toString() on auto-boxed primitive message parameters. (for https://issues.apache.org/jira/browse/LOG4J2-1415[LOG4J2-1415] by Remko Popma)
+* (GC) ObjectMessage and ReusableObjectMessage now avoid calling toString() on auto-boxed primitive parameters. (for https://issues.apache.org/jira/browse/LOG4J2-1437[LOG4J2-1437] by Remko Popma)
+
+=== Changed
+
+* Update Jackson from 2.7.4 to 2.7.5. (for https://issues.apache.org/jira/browse/LOG4J2-1432[LOG4J2-1432] by Gary Gregory)
+* Update Jansi from 1.11 to 1.13. (for https://issues.apache.org/jira/browse/LOG4J2-1433[LOG4J2-1433] by Gary Gregory)
+* Update Apache Commons Compress from 1.11 to 1.12. (for https://issues.apache.org/jira/browse/LOG4J2-1444[LOG4J2-1444] by Gary Gregory)
+
+=== Fixed
+
+* CronTriggeringPolicy was not properly setting the prevFileTime value for the PatternProcessor so file dates and times on rolled files were incorrect. (for https://issues.apache.org/jira/browse/LOG4J2-1250[LOG4J2-1250] by Ralph Goers)
+* Fixed minor issues with the 2.6.1 website. (for https://issues.apache.org/jira/browse/LOG4J2-1414[LOG4J2-1414] by Remko Popma, Ralph Goers)
+* Fixed issue where Unbox utility ignored the value Constants.ENABLE_THREADLOCALS and always stored non-JDK classes in ThreadLocals. (for https://issues.apache.org/jira/browse/LOG4J2-1417[LOG4J2-1417] by Remko Popma)
+* Provide MessageFactory2 to custom Logger implementations. (for https://issues.apache.org/jira/browse/LOG4J2-1418[LOG4J2-1418] by Mikael Ståldal)
+* RollingRandomAccessFileManager was not properly rolling over on startup and was getting a NullPointerException. (for https://issues.apache.org/jira/browse/LOG4J2-1420[LOG4J2-1420] by Ralph Goers)
+* Fixed issue where AsyncAppenderQueueFullPolicyTest sometimes hangs. (for https://issues.apache.org/jira/browse/LOG4J2-1422[LOG4J2-1422] by Remko Popma)
+* Ensure that the thread-local StringBuilders used by Layouts to format log events to text will not retain excessive memory after a large message was logged. (for https://issues.apache.org/jira/browse/LOG4J2-1434[LOG4J2-1434] by Remko Popma, Luke Butters)
+* Fix bug in OnStartupTriggeringPolicy that allowed it to roll over on every reconfiguration. Added minSize attribute. (for https://issues.apache.org/jira/browse/LOG4J2-1440[LOG4J2-1440] by Ralph Goers)
+* OnStartupTriggeringPolicyTest fails on Windows saying the file is used by another process. (for https://issues.apache.org/jira/browse/LOG4J2-1445[LOG4J2-1445] by Gary Gregory, Ludovic HOCHET)
+* Fixed issue where reusable messages broke flow tracing logic. (for https://issues.apache.org/jira/browse/LOG4J2-1452[LOG4J2-1452] by Remko Popma, Mikael Ståldal)
+* If copy and delete fails in rename action then resort to truncating the source file after copying it. (for https://issues.apache.org/jira/browse/LOG4J2-904[LOG4J2-904] by Ralph Goers, Bernhard Mähr)
diff --git a/src/site/_release-notes/_2.6.adoc b/src/site/_release-notes/_2.6.adoc
new file mode 100644
index 0000000..e42f135
--- /dev/null
+++ b/src/site/_release-notes/_2.6.adoc
@@ -0,0 +1,174 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.6 (2016-05-25)
+
+This is the tenth GA release.
+It contains several bugfixes and new features.
+The new features include the ability to be _garbage-free_ (avoid allocating temporary objects) while logging if certain conditions are met, a new YAML Layout, the ability to merge configuration files, and documenting Log4j's performance against other logging frameworks and in various logging configurations.
+More details on the features and bugfixes are itemized below.
+
+Note that subsequent to the release a minor source incompatibility was found due to the addition of new methods to the `Logger` interface.
+If you have code that does:
+
+[source,java]
+----
+logger.error(null, “This is the log message”, throwable);
+----
+
+or similar with any log level you will get a compiler error saying the reference is ambiguous.
+To correct this either do:
+
+[source,java]
+----
+logger.error(“This is the log message”, throwable);
+----
+
+or
+
+[source,java]
+----
+logger.error((Marker) null, “This is the log message”, throwable);
+----
+
+Log4j 2.6 maintains binary compatibility with previous releases.
+
+Log4j 2.6 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 http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Added
+
+* Document dependencies for layouts. (for https://issues.apache.org/jira/browse/LOG4J2-1011[LOG4J2-1011] by Mikael Ståldal)
+* Added option to discard events below a certain log level if the async logger ring buffer or async appender queue is full. (for https://issues.apache.org/jira/browse/LOG4J2-1080[LOG4J2-1080] by Remko Popma)
+* Add JNDI lookup documentation. (for https://issues.apache.org/jira/browse/LOG4J2-1133[LOG4J2-1133] by Matt Sicker)
+* PatternLayout: Possible variable substitution in equals substitution parameter. (for https://issues.apache.org/jira/browse/LOG4J2-1169[LOG4J2-1169] by Matt Sicker, Gerald Kritzinger)
+* Documented benchmark results comparing Log4j 2 performance to other logging libraries. (for https://issues.apache.org/jira/browse/LOG4J2-1179[LOG4J2-1179] by Remko Popma)
+* Dynamic Subject for SMTP Appender. (for https://issues.apache.org/jira/browse/LOG4J2-1192[LOG4J2-1192] by Gary Gregory, Jörg Bretschneider)
+* PatternLayout option to limit length of text. (for https://issues.apache.org/jira/browse/LOG4J2-1217[LOG4J2-1217] by Matt Sicker, Thies Wellpott)
+* Added async logger Timeout wait strategy and made this the default wait strategy for async loggers. This prevents a rare deadlock that may occur on Solaris. (for https://issues.apache.org/jira/browse/LOG4J2-1221[LOG4J2-1221] by Remko Popma, Michael Barker)
+* Make PatternLayout header and footer accept a pattern. (for https://issues.apache.org/jira/browse/LOG4J2-1237[LOG4J2-1237] by Gary Gregory, Mike Calmus)
+* Make header and footer values customizable in JSONLayout. (for https://issues.apache.org/jira/browse/LOG4J2-1244[LOG4J2-1244] by Gary Gregory, Remko Popma, Anshu Garg)
+* Make CSV Layout header and footers accept patterns. (for https://issues.apache.org/jira/browse/LOG4J2-1245[LOG4J2-1245] by Gary Gregory)
+* Add shutdown methods to LogManager. (for https://issues.apache.org/jira/browse/LOG4J2-124[LOG4J2-124] by Ralph Goers)
+* JeroMqAppender should support layouts. (for https://issues.apache.org/jira/browse/LOG4J2-1252[LOG4J2-1252] by Matt Sicker)
+* (GC) Added support for garbage-free logging in steady state. This includes Async Loggers and logging synchronously to the console and to a file, but does not include the AsyncAppender. This release makes the GelfLayout and the main patterns in the PatternLayout garbage-free. (for https://issues.apache.org/jira/browse/LOG4J2-1270[LOG4J2-1270] by Remko Popma)
+* (GC) Add MessageFactory that avoid allocation by reusing a cached ParameterizedMessage instance. (for https://issues.apache.org/jira/browse/LOG4J2-1271[LOG4J2-1271] by Remko Popma)
+* (GC) Add encode(LogEvent, ByteBufferDestination) method to Layout API to enable converting LogEvents to bytes without creating temporary objects. (for https://issues.apache.org/jira/browse/LOG4J2-1274[LOG4J2-1274] by Remko Popma)
+* FormattedMessage, MessageFormatMessage and StringFormattedMessage should support passing in a Locale to ensure appropriate formatting. (for https://issues.apache.org/jira/browse/LOG4J2-1277[LOG4J2-1277] by Gary Gregory, Ludovic Hochet)
+* (GC) Added unrolled varargs methods to Logger API, added Unbox utility to avoid auto-boxing when logging primitive values. (for https://issues.apache.org/jira/browse/LOG4J2-1278[LOG4J2-1278] by Remko Popma)
+* (GC) Add interface StringBuilderFormattable to enable converting Messages and parameters to text without allocating temporary objects. ParameterizedMessage, ObjectMessage, SimpleMessage and ThreadDumpMessage now implement StringBuilderFormattable. (for https://issues.apache.org/jira/browse/LOG4J2-1293[LOG4J2-1293] by Remko Popma)
+* (GC) Added manual page on garbage-free logging. (for https://issues.apache.org/jira/browse/LOG4J2-1297[LOG4J2-1297] by Remko Popma)
+* Add pattern converter for thread id and priority in PatternLayout. (for https://issues.apache.org/jira/browse/LOG4J2-1299[LOG4J2-1299] by Gary Gregory)
+* Add documentation links to runtime dependencies in each component intro page. (for https://issues.apache.org/jira/browse/LOG4J2-1303[LOG4J2-1303] by Matt Sicker)
+* (GC) Added methods to the Logger interface for logging CharSequence messages. (for https://issues.apache.org/jira/browse/LOG4J2-1326[LOG4J2-1326] by Remko Popma)
+* (GC) FileAppender, RollingFileAppender and MemoryMappedFileAppender are now also garbage-free by default. (for https://issues.apache.org/jira/browse/LOG4J2-1344[LOG4J2-1344] by Remko Popma)
+* Add an AutoCloseable ThreadContext class: CloseableThreadContext. (for https://issues.apache.org/jira/browse/LOG4J2-1348[LOG4J2-1348] by Gary Gregory, Greg Thomas)
+* Option to not log stack traces for logged Throwables in GelfLayout. (for https://issues.apache.org/jira/browse/LOG4J2-1357[LOG4J2-1357] by Mikael Ståldal)
+* Added a YAML layout. (for https://issues.apache.org/jira/browse/LOG4J2-1362[LOG4J2-1362] by Remko Popma, Gary Gregory)
+* (GC) Update Logger wrapper Generator tool to generate methods for the new Logger methods. (for https://issues.apache.org/jira/browse/LOG4J2-1373[LOG4J2-1373] by Remko Popma)
+* Support merging configurations to for a composite configuration. (for https://issues.apache.org/jira/browse/LOG4J2-494[LOG4J2-494] by Ralph Goers, Philipp Knobel)
+* Pattern to drop first N package parts. (for https://issues.apache.org/jira/browse/LOG4J2-621[LOG4J2-621] by Gary Gregory, Lee Theobald, Kamal Mettananda)
+
+=== Changed
+
+* org.apache.logging.log4j.core.LoggerContext#updateLoggers should call firePropertyChangeEvent. (for https://issues.apache.org/jira/browse/LOG4J2-1206[LOG4J2-1206] by Matt Sicker)
+* Update SLF4J from 1.7.12 to 1.7.13. (for https://issues.apache.org/jira/browse/LOG4J2-1219[LOG4J2-1219] by Gary Gregory)
+* Misleading Value In Properties Example. (for https://issues.apache.org/jira/browse/LOG4J2-1233[LOG4J2-1233] by Gary Gregory, Bahri Gencsoy)
+* Update Jackson from 2.6.3 to 2.6.4. (for https://issues.apache.org/jira/browse/LOG4J2-1239[LOG4J2-1239] by Gary Gregory)
+* Update Liquibase from 3.3.5 to 3.4.2. (for https://issues.apache.org/jira/browse/LOG4J2-1240[LOG4J2-1240] by Gary Gregory)
+* Update Jackson from 2.6.4 to 2.7.0. (for https://issues.apache.org/jira/browse/LOG4J2-1249[LOG4J2-1249] by Gary Gregory)
+* Update LMAX Disruptor from 3.3.2 to 3.3.4. (for https://issues.apache.org/jira/browse/LOG4J2-1253[LOG4J2-1253] by Gary Gregory)
+* Add enhanced entry and exit methods. (for https://issues.apache.org/jira/browse/LOG4J2-1255[LOG4J2-1255] by Ralph Goers)
+* (GC) ParameterizedMessage optimizations to avoid or at least postpone allocating temporary objects. (for https://issues.apache.org/jira/browse/LOG4J2-1271[LOG4J2-1271] by Remko Popma)
+* (GC) Improve LoggerConfig's data structure for AppenderControl objects to avoid allocating temporary objects during traversal for each log event. (for https://issues.apache.org/jira/browse/LOG4J2-1272[LOG4J2-1272] by Remko Popma)
+* (GC) Provide ThreadLocal-based gc-free caching mechanism in DatePatternConverter for non-webapps. (for https://issues.apache.org/jira/browse/LOG4J2-1283[LOG4J2-1283] by Remko Popma)
+* (GC) Update PatternLayout to utilize gc-free mechanism for LogEvent processing. (for https://issues.apache.org/jira/browse/LOG4J2-1291[LOG4J2-1291] by Remko Popma)
+* (GC) Update RandomAccessFileAppender and RollingRandomAccessFileAppender to utilize gc-free Layout.encode() method. (for https://issues.apache.org/jira/browse/LOG4J2-1292[LOG4J2-1292] by Remko Popma)
+* Update Kafka client from 0.9.0.0 to 0.9.0.1. (for https://issues.apache.org/jira/browse/LOG4J2-1294[LOG4J2-1294] by Gary Gregory)
+* Remove serializability from classes that don't need it. (for https://issues.apache.org/jira/browse/LOG4J2-1300[LOG4J2-1300] by Matt Sicker)
+* Update Jackson from 2.7.0 to 2.7.2. (for https://issues.apache.org/jira/browse/LOG4J2-1304[LOG4J2-1304] by Gary Gregory)
+* JeroMqAppender should use ShutdownCallbackRegistry instead of runtime hooks. (for https://issues.apache.org/jira/browse/LOG4J2-1306[LOG4J2-1306] by Matt Sicker)
+* Remove need to pre-specify appender et al. identifiers in property file config format. (for https://issues.apache.org/jira/browse/LOG4J2-1308[LOG4J2-1308] by Matt Sicker)
+* (GC) Avoid allocating unnecessary temporary objects in LoggerContext's getLogger methods. (for https://issues.apache.org/jira/browse/LOG4J2-1318[LOG4J2-1318] by Remko Popma)
+* (GC) Avoid allocating unnecessary temporary objects in PatternLayout's NamePatternConverter and ClassNamePatternConverter. (for https://issues.apache.org/jira/browse/LOG4J2-1321[LOG4J2-1321] by Remko Popma)
+* Update Log4j 1.x migration guide to include information about system property lookup syntax changes. (for https://issues.apache.org/jira/browse/LOG4J2-1322[LOG4J2-1322] by Matt Sicker)
+* (GC) Avoid allocating unnecessary temporary objects in MarkerManager's getMarker methods. (for https://issues.apache.org/jira/browse/LOG4J2-1333[LOG4J2-1333] by Remko Popma)
+* (GC) ConsoleAppender is now garbage-free by default. This logic is reusable for all AbstractOutputStreamAppender subclasses. (for https://issues.apache.org/jira/browse/LOG4J2-1343[LOG4J2-1343] by Remko Popma)
+* (Doc) Clarify documentation for properties that control Log4j behaviour. (for https://issues.apache.org/jira/browse/LOG4J2-1345[LOG4J2-1345] by Remko Popma)
+* Update Jackson from 2.7.2 to 2.7.3. (for https://issues.apache.org/jira/browse/LOG4J2-1351[LOG4J2-1351] by Gary Gregory)
+* Update javax.mail from 1.5.4 to 1.5.5. (for https://issues.apache.org/jira/browse/LOG4J2-1352[LOG4J2-1352] by Gary Gregory)
+* (GC) GelfLayout does now support garbage-free logging (with compressionType=OFF). (for https://issues.apache.org/jira/browse/LOG4J2-1356[LOG4J2-1356] by Mikael Ståldal)
+* Update Apache Commons Compress from 1.10 to 1.11. (for https://issues.apache.org/jira/browse/LOG4J2-1358[LOG4J2-1358] by Gary Gregory)
+* (Log4j-internal) Provide message text as CharSequence for some message types to optimize some layouts. (for https://issues.apache.org/jira/browse/LOG4J2-1365[LOG4J2-1365] by Mikael Ståldal)
+* Migrate tests from Logback 1.1.3 to 1.1.7. (for https://issues.apache.org/jira/browse/LOG4J2-1374[LOG4J2-1374] by Remko Popma)
+* Update SLF4J from 1.7.13 to 1.7.21. (for https://issues.apache.org/jira/browse/LOG4J2-1375[LOG4J2-1375] by Remko Popma)
+* Update Jackson from 2.7.3 to 2.7.4. (for https://issues.apache.org/jira/browse/LOG4J2-1380[LOG4J2-1380] by Gary Gregory)
+* Update Apache Commons CSV from 1.2 to 1.3. (for https://issues.apache.org/jira/browse/LOG4J2-1384[LOG4J2-1384] by Gary Gregory)
+* Update Google java-allocation-instrumenter from 3.0 to 3.0.1. (for https://issues.apache.org/jira/browse/LOG4J2-1388[LOG4J2-1388] by Remko Popma)
+
+=== Fixed
+
+* Add a Log4jLookup class to help write log files relative to log4j2.xml. (for https://issues.apache.org/jira/browse/LOG4J2-1050[LOG4J2-1050] by Matt Sicker, Adam Retter)
+* Fix documentation to specify the correct default wait strategy used by async loggers. (for https://issues.apache.org/jira/browse/LOG4J2-1212[LOG4J2-1212] by Remko Popma)
+* Documentation/XSD inconsistencies. (for https://issues.apache.org/jira/browse/LOG4J2-1215[LOG4J2-1215] by Gary Gregory, Erik Kemperman)
+* Creation of a LoggerContext will fail if shutdown is in progress. LogManager will default to SimpleLogger instead. (for https://issues.apache.org/jira/browse/LOG4J2-1222[LOG4J2-1222] by Ralph Goers)
+* NullPointerException in MapLookup.lookup if the event is null. (for https://issues.apache.org/jira/browse/LOG4J2-1227[LOG4J2-1227] by Matt Sicker, Olivier Lemasle)
+* Don't concatenate SYSLOG Messages. (for https://issues.apache.org/jira/browse/LOG4J2-1230[LOG4J2-1230] by Gary Gregory, Ralph Goers, Vladimir Hudec)
+* Incorrect log rotation in last week of year. (for https://issues.apache.org/jira/browse/LOG4J2-1232[LOG4J2-1232] by Gary Gregory, Nikolai)
+* org.apache.logging.log4j.core.net.TcpSocketManager and other classes does not report internal exceptions to the status logger. (for https://issues.apache.org/jira/browse/LOG4J2-1238[LOG4J2-1238] by Gary Gregory)
+* Fixed broken nanotime in pattern layout. (for https://issues.apache.org/jira/browse/LOG4J2-1248[LOG4J2-1248] by Remko Popma)
+* Fix JUL bridge issue where LogRecord.getParameters() is used when null. (for https://issues.apache.org/jira/browse/LOG4J2-1251[LOG4J2-1251] by Matt Sicker, Romain Manni-Bucau)
+* Fix typo in Flow Tracing documentation. (for https://issues.apache.org/jira/browse/LOG4J2-1254[LOG4J2-1254] by Remko Popma, Josh Trow)
+* Async DynamicThresholdFilter does not use the log event's context map. (for https://issues.apache.org/jira/browse/LOG4J2-1258[LOG4J2-1258] by Gary Gregory, Francis Lalonde)
+* TlsSyslogFrame calculates message length incorrectly. (for https://issues.apache.org/jira/browse/LOG4J2-1260[LOG4J2-1260] by Gary Gregory, Blake Day)
+* Stop throwing unnecessary exception in Log4jServletContextListener.contextDestroyed(). (for https://issues.apache.org/jira/browse/LOG4J2-1262[LOG4J2-1262] by Matt Sicker)
+* The ConfigurationSource was not saved for BuiltConfigurations so monitor interval had no effect. (for https://issues.apache.org/jira/browse/LOG4J2-1263[LOG4J2-1263] by Ralph Goers)
+* FixedDateFormat was incorrect for formats having MMM with the French locale. (for https://issues.apache.org/jira/browse/LOG4J2-1268[LOG4J2-1268] by Remko Popma)
+* (GC) AsyncLogger should use thread-local translator by default. (for https://issues.apache.org/jira/browse/LOG4J2-1269[LOG4J2-1269] by Remko Popma)
+* Fix RollingAppenderNoUnconditionalDeleteTest repeat test runs from failing. (for https://issues.apache.org/jira/browse/LOG4J2-1275[LOG4J2-1275] by Matt Sicker, Ludovic Hochet)
+* LoggerMessageSupplierTest and LoggerSupplierTest are Locale sensitive. (for https://issues.apache.org/jira/browse/LOG4J2-1276[LOG4J2-1276] by Gary Gregory, Ludovic Hochet)
+* Deprecate org.apache.logging.log4j.util.MessageSupplier. (for https://issues.apache.org/jira/browse/LOG4J2-1280[LOG4J2-1280] by Gary Gregory)
+* Logger methods taking Supplier parameters now correctly handle cases where the supplied value is a Message. (for https://issues.apache.org/jira/browse/LOG4J2-1280[LOG4J2-1280] by Remko Popma)
+* (GC) LoggerConfig.getProperties() should not allocate on each call. (for https://issues.apache.org/jira/browse/LOG4J2-1281[LOG4J2-1281] by Remko Popma)
+* Made default MessageFactory configurable. (for https://issues.apache.org/jira/browse/LOG4J2-1284[LOG4J2-1284] by Remko Popma)
+* Change flow logging text from "entry' to "Enter" and "exit" to "Exit". (for https://issues.apache.org/jira/browse/LOG4J2-1289[LOG4J2-1289] by Gary Gregory)
+* Configuration file error does not show cause exception. (for https://issues.apache.org/jira/browse/LOG4J2-1309[LOG4J2-1309] by Gary Gregory)
+* JndiLookup mindlessly casts to String and should use String.valueOf(). (for https://issues.apache.org/jira/browse/LOG4J2-1310[LOG4J2-1310] by Matt Sicker)
+* Improve error handling in the Async Logger background thread: the new default exception handler no longer rethrows the error. (for https://issues.apache.org/jira/browse/LOG4J2-1324[LOG4J2-1324] by Remko Popma)
+* Fix NoClassDefFoundError in ReflectionUtil on Google App Engine. (for https://issues.apache.org/jira/browse/LOG4J2-1330[LOG4J2-1330] by Matt Sicker)
+* LoggerFactory in 1.2 API module is not compatible with 1.2. (for https://issues.apache.org/jira/browse/LOG4J2-1336[LOG4J2-1336] by Gary Gregory, Zbynek Vyskovsky)
+* (Perf) AsyncLogger performance optimization: avoid calling instanceof TimestampMessage in hot path. (for https://issues.apache.org/jira/browse/LOG4J2-1339[LOG4J2-1339] by Remko Popma)
+* Exception from Log4jServletContextListener prevents jetty-maven-plugin run-forked. (for https://issues.apache.org/jira/browse/LOG4J2-1346[LOG4J2-1346] by Gary Gregory)
+* No configuration reload is triggered under Windows when replacing the configuration file with one that has older last modified date. (for https://issues.apache.org/jira/browse/LOG4J2-1354[LOG4J2-1354] by Gary Gregory, Arkadiusz Adolph)
+* Properties Configuration did not support includeLocation attribute on Loggers. (for https://issues.apache.org/jira/browse/LOG4J2-1363[LOG4J2-1363] by Ralph Goers)
+* (Log4j-internal) StatusLogger dropped exceptions when logging parameterized messages. (for https://issues.apache.org/jira/browse/LOG4J2-1368[LOG4J2-1368] by Remko Popma)
+* "xz" compression results in plaintext, uncompressed files. (for https://issues.apache.org/jira/browse/LOG4J2-1369[LOG4J2-1369] by Gary Gregory, Alex Birch)
+* XMLLayout indents, but not the first child tag (Event). (for https://issues.apache.org/jira/browse/LOG4J2-1372[LOG4J2-1372] by Ralph Goers, Kamal Mettananda)
+* Copying a MutableLogEvent using Log4jLogEvent.Builder should not unnecessarily obtain caller location information. (for https://issues.apache.org/jira/browse/LOG4J2-1382[LOG4J2-1382] by Remko Popma)
+* Fixed memory leak related to shutdown hook. (for https://issues.apache.org/jira/browse/LOG4J2-1387[LOG4J2-1387] by Remko Popma)
+* Log4jWebInitializerImpl: Use Thread instead of Class for fallback classloader. (for https://issues.apache.org/jira/browse/LOG4J2-248[LOG4J2-248] by Matt Sicker)
+* Generate MDC properties as a JSON map in JSONLayout, with option to output as list of map entries. (for https://issues.apache.org/jira/browse/LOG4J2-623[LOG4J2-623] by Remko Popma)
+* JSONLayout doesn't add a comma between log events. (for https://issues.apache.org/jira/browse/LOG4J2-908[LOG4J2-908] by Gary Gregory, Konstantinos Liakos, Patrick Flaherty, Robin Coe)
+* ClassNotFoundException for BundleContextSelector when initialising in an OSGi environment. (for https://issues.apache.org/jira/browse/LOG4J2-920[LOG4J2-920] by Matt Sicker, Ludovic Hochet)
diff --git a/src/site/_release-notes/_2.7.adoc b/src/site/_release-notes/_2.7.adoc
new file mode 100644
index 0000000..1b51bfd
--- /dev/null
+++ b/src/site/_release-notes/_2.7.adoc
@@ -0,0 +1,171 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.7 (2016-10-02)
+
+This release contains several bugfixes and new features.
+The new features include new logging API modules for Scala 2.10 and 2.11, and support for various non-blocking queue implementations in `AsyncAppender`.
+Furthermore the `ThreadContext` map can now be configured to be garbage-free, and users can now inject context data from other sources than `ThreadContext`.
+Context data values can be any `Object`, not just ``String``s.
+More details on the fixes are itemized below.
+
+Note that subsequent to the 2.6 release a minor source incompatibility was found due to the addition of new methods to the `Logger` interface.
+If you have code that does:
+
+[source,java]
+----
+logger.error(null, “This is the log message”, throwable);
+----
+
+or similar with any log level you will get a compiler error saying the reference is ambiguous.
+To correct this either do:
+
+[source,java]
+----
+logger.error(“This is the log message”, throwable);
+----
+
+or
+
+[source,java]
+----
+logger.error((Marker) null, “This is the log message”, throwable);
+----
+
+The Log4j 2.7 API, as well as many core components, maintains binary compatibility with previous releases.
+
+Log4j 2.7 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 http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Added
+
+* Users can now inject context data from other sources than ThreadContext. Values can be any Object, not just Strings. (for https://issues.apache.org/jira/browse/LOG4J2-1010[LOG4J2-1010] by Remko Popma, Mikael Ståldal)
+* Added Logging API for Scala 2.10 and 2.11. (for https://issues.apache.org/jira/browse/LOG4J2-1181[LOG4J2-1181] by Mikael Ståldal)
+* (GC) Added support for garbage-free ThreadContext map. Disabled by default, users need to enable this explicitly. (for https://issues.apache.org/jira/browse/LOG4J2-1349[LOG4J2-1349] by Remko Popma)
+* Added optional support for Conversant DisruptorBlockingQueue in AsyncAppender. (for https://issues.apache.org/jira/browse/LOG4J2-1430[LOG4J2-1430] by Matt Sicker, John Cairns)
+* Added optional support for JCTools MPSC bounded lock-free queue in AsyncAppender. (for https://issues.apache.org/jira/browse/LOG4J2-1439[LOG4J2-1439] by Matt Sicker, Anthony Maire)
+* (GC) Changed LogEvent's internal data structure for context data to be garbage-free. Added method LogEvent#getContextData(), deprecated method #getContextMap(). (for https://issues.apache.org/jira/browse/LOG4J2-1447[LOG4J2-1447] by Remko Popma)
+* [PatternLayout] Add an ANSI option to %message. (for https://issues.apache.org/jira/browse/LOG4J2-1458[LOG4J2-1458] by Gary Gregory)
+* [PatternLayout] Add an ANSI option to %xThrowable. (for https://issues.apache.org/jira/browse/LOG4J2-1471[LOG4J2-1471] by Gary Gregory)
+* org.apache.logging.log4j.core.LoggerContext now implements Closeable. (for https://issues.apache.org/jira/browse/LOG4J2-1472[LOG4J2-1472] by Gary Gregory)
+* FileAppender is now able to create files on-demand. (for https://issues.apache.org/jira/browse/LOG4J2-1501[LOG4J2-1501] by Gary Gregory)
+* RollingFileAppender is now able to create files on-demand. (for https://issues.apache.org/jira/browse/LOG4J2-1504[LOG4J2-1504] by Gary Gregory)
+* Create a Builder for the FileAppender plugin to facilitate adding attributes in the future. (for https://issues.apache.org/jira/browse/LOG4J2-1505[LOG4J2-1505] by Gary Gregory)
+* Allow Builders to be completely generic. (for https://issues.apache.org/jira/browse/LOG4J2-1507[LOG4J2-1507] by Gary Gregory)
+* Allow a Builder to subclass another Builder. (for https://issues.apache.org/jira/browse/LOG4J2-1508[LOG4J2-1508] by Gary Gregory)
+* Added options to exclude stack trace from JSON, XML and YAML layouts. (for https://issues.apache.org/jira/browse/LOG4J2-1512[LOG4J2-1512] by Mikael Ståldal)
+* Add ThreadContextMap2 interface supporting method putAll(Map<String, String>). (for https://issues.apache.org/jira/browse/LOG4J2-1516[LOG4J2-1516] by Remko Popma, Gary Gregory)
+* Add ThreadContext.putAll(Map<String, String>). (for https://issues.apache.org/jira/browse/LOG4J2-1519[LOG4J2-1519] by Gary Gregory)
+* Add JUnit Rule implementations to manage the thread context. (for https://issues.apache.org/jira/browse/LOG4J2-1520[LOG4J2-1520] by Gary Gregory)
+* Added ability to generate Log4j 2-style XML configuration file from ConfigurationBuilder. (for https://issues.apache.org/jira/browse/LOG4J2-1528[LOG4J2-1528] by Mikael Ståldal)
+* Added Core API Configurator.shutdown(LoggerContext, long, TimeUnit). (for https://issues.apache.org/jira/browse/LOG4J2-1539[LOG4J2-1539] by Gary Gregory)
+* The Core AbstractManager now tracks its LoggerContext. (for https://issues.apache.org/jira/browse/LOG4J2-1540[LOG4J2-1540] by Gary Gregory)
+* The Core AbstractConfiguration now tracks its LoggerContext and add Configuration.getLoggerContext(). (for https://issues.apache.org/jira/browse/LOG4J2-1547[LOG4J2-1547] by Gary Gregory)
+* AbstractManager now implements AutoCloseable. (for https://issues.apache.org/jira/browse/LOG4J2-1553[LOG4J2-1553] by Gary Gregory)
+* Add a Builder for the SocketAppender (deprecates factory method). (for https://issues.apache.org/jira/browse/LOG4J2-1557[LOG4J2-1557] by Gary Gregory)
+* SocketAppender now supports IO buffering. (for https://issues.apache.org/jira/browse/LOG4J2-1558[LOG4J2-1558] by Gary Gregory)
+* Added support for java.util.concurrent.LinkedTransferQueue to AsyncAppender. (for https://issues.apache.org/jira/browse/LOG4J2-1568[LOG4J2-1568] by Matt Sicker)
+* Add a Builder to the RoutingAppender and deprecate factory method. (for https://issues.apache.org/jira/browse/LOG4J2-1577[LOG4J2-1577] by Gary Gregory)
+* RoutingAppender can be configured with scripts. Add Script in a Routes element. (for https://issues.apache.org/jira/browse/LOG4J2-1578[LOG4J2-1578] by Gary Gregory)
+* Add a ScriptAppenderSelector to create an Appender specified by a Script. (for https://issues.apache.org/jira/browse/LOG4J2-1597[LOG4J2-1597] by Gary Gregory)
+* Add a Builder to ServletAppender and deprecate factory method. (for https://issues.apache.org/jira/browse/LOG4J2-1609[LOG4J2-1609] by Gary Gregory)
+
+=== Changed
+
+* Updated Jackson from 2.7.5 to 2.8.0. (for https://issues.apache.org/jira/browse/LOG4J2-1458[LOG4J2-1458] by Gary Gregory)
+* Updated JMS test from ActiveMQ 5.13.3 to 5.13.4. (for https://issues.apache.org/jira/browse/LOG4J2-1487[LOG4J2-1487] by Gary Gregory)
+* Updated Jackson from 2.8.0 to 2.8.1. (for https://issues.apache.org/jira/browse/LOG4J2-1494[LOG4J2-1494] by Gary Gregory)
+* Updated LMAX Disruptor from 3.3.4 to 3.3.5. (for https://issues.apache.org/jira/browse/LOG4J2-1495[LOG4J2-1495] by Gary Gregory)
+* Updated Kafka client from 0.9.1.0 to 0.10.0.0. (for https://issues.apache.org/jira/browse/LOG4J2-1496[LOG4J2-1496] by Gary Gregory)
+* Updated Kafka client from 0.10.0.0 to 0.10.0.1. (for https://issues.apache.org/jira/browse/LOG4J2-1533[LOG4J2-1533] by Gary Gregory)
+* Removed deprecated Core API org.apache.logging.log4j.core.util.Constants.UTF_8. (for https://issues.apache.org/jira/browse/LOG4J2-1543[LOG4J2-1543] by Gary Gregory)
+* Removed deprecated Core API org.apache.logging.log4j.core.util.Assert.requireNonNull(T, String). (for https://issues.apache.org/jira/browse/LOG4J2-1544[LOG4J2-1544] by Gary Gregory)
+* Removed deprecated Web API org.apache.logging.log4j.web.WebLookup.getServletContext(). (for https://issues.apache.org/jira/browse/LOG4J2-1545[LOG4J2-1545] by Gary Gregory)
+* Updated JMS test from ActiveMQ 5.13.4 to 5.14.0. (for https://issues.apache.org/jira/browse/LOG4J2-1551[LOG4J2-1551] by Gary Gregory)
+* Custom Log4j threads now extend Log4jThread. (for https://issues.apache.org/jira/browse/LOG4J2-1556[LOG4J2-1556] by Gary Gregory)
+* Updated Jackson from 2.8.1 to 2.8.2. (for https://issues.apache.org/jira/browse/LOG4J2-1569[LOG4J2-1569] by Gary Gregory)
+* Allow the RollingFileAppender to use default pattern layout. (for https://issues.apache.org/jira/browse/LOG4J2-1574[LOG4J2-1574] by Gary Gregory)
+* Updated Jackson from 2.8.2 to 2.8.3. (for https://issues.apache.org/jira/browse/LOG4J2-1598[LOG4J2-1598] by Gary Gregory)
+* Log4j2 TcpSocketServer in background. (for https://issues.apache.org/jira/browse/LOG4J2-1604[LOG4J2-1604] by Gary Gregory, Colin Hillman)
+* Improve error messages for TcpSocketServer and UdpSocketServer. (for https://issues.apache.org/jira/browse/LOG4J2-1605[LOG4J2-1605] by Gary Gregory)
+* Update Apache Commons Compress from 1.12 to 1.13. (for https://issues.apache.org/jira/browse/LOG4J2-1757[LOG4J2-1757] by Gary Gregory)
+
+=== Fixed
+
+* When starting on Google App Engine, Interpolator now suppresses the NoClassDefFoundError stack trace for the jvmrunargs lookup. (for https://issues.apache.org/jira/browse/LOG4J2-1051[LOG4J2-1051] by Remko Popma, Lukasz Lenart)
+* Documented that JVM Input Arguments Lookup (JMX) is not available on Google App Engine. (for https://issues.apache.org/jira/browse/LOG4J2-1199[LOG4J2-1199] by Remko Popma)
+* org.apache.logging.log4j.core.appender.routing.IdlePurgePolicy was not working correctly. (for https://issues.apache.org/jira/browse/LOG4J2-1235[LOG4J2-1235] by Gary Gregory, Niranjan Rao, Sascha Scholz, Aleksey Zvolinsky)
+* Log4j threads are no longer leaking on Tomcat shutdown. (for https://issues.apache.org/jira/browse/LOG4J2-1259[LOG4J2-1259] by Gary Gregory, Misagh Moayyed, Steffen Offermann)
+* Prevent NullPointerException in FastDateParser$TimeZoneStrategy. (for https://issues.apache.org/jira/browse/LOG4J2-1279[LOG4J2-1279] by Remko Popma, Tony Baines)
+* Properties declared in configuration can now have their value either in the element body or in an attribute named "value". (for https://issues.apache.org/jira/browse/LOG4J2-1313[LOG4J2-1313] by Remko Popma, Philipp Knobel)
+* Support Property values to be specified in configuration as a value attribute as well as an element. (for https://issues.apache.org/jira/browse/LOG4J2-1313[LOG4J2-1313] by Remko Popma, Philipp Knobel, Leon Finker)
+* Support loading custom plugins from jar files and directories whose classpath entries use the "vfs" URL protocol. (for https://issues.apache.org/jira/browse/LOG4J2-1320[LOG4J2-1320] by Gary Gregory, Paresh Varke, Pierrick Hymbert)
+* (GC) HighlightConverter and StyleConverter are now GC-free. (for https://issues.apache.org/jira/browse/LOG4J2-1341[LOG4J2-1341] by Remko Popma, Richard Zschech)
+* (GC) Added method getParameter() to ObjectMessage (and ReusableObjectMessage). (for https://issues.apache.org/jira/browse/LOG4J2-1438[LOG4J2-1438] by Remko Popma)
+* Allow comma separated agents, host list to be passed to FlumeAppender. (for https://issues.apache.org/jira/browse/LOG4J2-1448[LOG4J2-1448] by Remko Popma, Keith Laban)
+* Fixed class loader deadlock when using async logging and extended stack trace pattern. (for https://issues.apache.org/jira/browse/LOG4J2-1457[LOG4J2-1457] by Matt Sicker, Leon Finker)
+* [OSGi] Fixed missing import package. (for https://issues.apache.org/jira/browse/LOG4J2-1467[LOG4J2-1467] by Remko Popma, Gary Gregory, Ralph Goers)
+* Fixed improper header in CsvParameterLayout. (for https://issues.apache.org/jira/browse/LOG4J2-1482[LOG4J2-1482] by Gary Gregory, Sumit Singhal)
+* (GC) Fixed ISO8601 %date conversion pattern with a period '.' separator for milliseconds is now garbage free. (for https://issues.apache.org/jira/browse/LOG4J2-1488[LOG4J2-1488] by Remko Popma, Richard Zschech)
+* (GC) Fixed %date conversion patterns with a timezone parameter are now garbage free. (for https://issues.apache.org/jira/browse/LOG4J2-1489[LOG4J2-1489] by Remko Popma, Richard Zschech)
+* Log4j2 should postpone creating log file until the appender actually receives an event. (for https://issues.apache.org/jira/browse/LOG4J2-1490[LOG4J2-1490] by Gary Gregory, Krzysztof Taborski)
+* Merging configurations failed with an NPE when comparing Nodes with different attributes. (for https://issues.apache.org/jira/browse/LOG4J2-1500[LOG4J2-1500] by Gary Gregory, Jose Leon)
+* Fixed issue where CsvParameterLayout and CsvLogEventLayout inserted NUL characters if data starts with {, (, [ or " (for https://issues.apache.org/jira/browse/LOG4J2-1502[LOG4J2-1502] by Gary Gregory, Sumit Singhal)
+* Log4j should not unregister JMX MBeans when log4j2.disable.jmx property is true. (for https://issues.apache.org/jira/browse/LOG4J2-1506[LOG4J2-1506] by Gary Gregory, Johannes Schleger)
+* DynamicThresholdFilter filtered incorrectly when params were passed as individual arguments instead of varargs. (for https://issues.apache.org/jira/browse/LOG4J2-1511[LOG4J2-1511] by Gary Gregory, Srikanth Surukuntu)
+* Prevent deadlock in Async Loggers when queue is full and logged Object's toString() logs another message. (for https://issues.apache.org/jira/browse/LOG4J2-1518[LOG4J2-1518] by Remko Popma, Leon Finker)
+* Added support for setting StatusLogger destination in ConfigurationBuilder. (for https://issues.apache.org/jira/browse/LOG4J2-1526[LOG4J2-1526] by Mikael Ståldal)
+* Prevent NPE in RingBufferLogEvent.getFormattedMessage() when used in web applications. (for https://issues.apache.org/jira/browse/LOG4J2-1527[LOG4J2-1527] by Remko Popma, Jose Leon)
+* Attributes were not merged properly in composite configurations. (for https://issues.apache.org/jira/browse/LOG4J2-1529[LOG4J2-1529] by Matt Sicker, Sridevi Narra)
+* Fixed issue where LogEvent.getContextStack() returned null. (for https://issues.apache.org/jira/browse/LOG4J2-1530[LOG4J2-1530] by Mikael Ståldal)
+* Attributes were not merged properly in composite configurations. (for https://issues.apache.org/jira/browse/LOG4J2-1532[LOG4J2-1532] by Gary Gregory)
+* Prevent NPE when dynamically removing filters. (for https://issues.apache.org/jira/browse/LOG4J2-1538[LOG4J2-1538] by Gary Gregory, Igor Karpov)
+* Fix file handle resource leak in XmlConfiguration.XmlConfiguration(ConfigurationSource). (for https://issues.apache.org/jira/browse/LOG4J2-1541[LOG4J2-1541] by Gary Gregory)
+* Prevent ArrayIndexOutOfBoundsException in ParameterizedMessage.formatTo for single-char or empty messages. (for https://issues.apache.org/jira/browse/LOG4J2-1542[LOG4J2-1542] by Remko Popma, Rogério Lecarião Leite)
+* [CronTriggeringPolicy] ConfigurationScheduler scheduled the task infinitely after first fire. (for https://issues.apache.org/jira/browse/LOG4J2-1548[LOG4J2-1548] by Gary Gregory)
+* Fixed issue where AsyncLoggerContextSelector+PropertiesConfigurationBuilder defaulted to includeLocation=true. (for https://issues.apache.org/jira/browse/LOG4J2-1549[LOG4J2-1549] by Mikael Ståldal, Jason Bedard)
+* Prevent NPE in Level.isInRange. (for https://issues.apache.org/jira/browse/LOG4J2-1559[LOG4J2-1559] by Gary Gregory, Andrey Plotkin)
+* Prevent SocketAppender memory usage from growing unbounded if it cannot connect to a server. (for https://issues.apache.org/jira/browse/LOG4J2-1562[LOG4J2-1562] by Gary Gregory)
+* Fix to prevent Log4j 2.6.2 and higher from losing exceptions when a security manager is present. (for https://issues.apache.org/jira/browse/LOG4J2-1563[LOG4J2-1563] by Gary Gregory, Jason Tedor)
+* Layout is no longer optional. (for https://issues.apache.org/jira/browse/LOG4J2-1573[LOG4J2-1573] by Gary Gregory, Steffen Offermann)
+* (GC) LoggerConfig now stores configuration properties in a List, not a Map to prevent creating temporary Iterator objects. Added method LoggerConfig#getPropertyList(), deprecated method #getProperties(). (for https://issues.apache.org/jira/browse/LOG4J2-1575[LOG4J2-1575] by Remko Popma)
+* Unregistering JMX components no longer prints a stack trace when the MBean has already been unregistered. (for https://issues.apache.org/jira/browse/LOG4J2-1581[LOG4J2-1581] by Remko Popma)
+* When initializing on platforms where JMX is not available, Interpolator component no longer prints stack trace for warning messages. (for https://issues.apache.org/jira/browse/LOG4J2-1582[LOG4J2-1582] by Remko Popma)
+* Fixed scrambled log messages triggered by nested logging from toString() method of a logging parameter object. (for https://issues.apache.org/jira/browse/LOG4J2-1583[LOG4J2-1583] by Remko Popma, Larry West)
+* Fixed issue with filters extending AbstractFilter that did not override methods with unrolled varargs. (for https://issues.apache.org/jira/browse/LOG4J2-1590[LOG4J2-1590] by Remko Popma)
+* Introduced new interface LifeCycle2 with stop(long,TimeUnit) method to avoid breaking backwards compatibility with new Configurator.shutdown(LoggerContext, long, TimeUnit) API. (for https://issues.apache.org/jira/browse/LOG4J2-1591[LOG4J2-1591] by Remko Popma)
+* Prevent potential NPE in org.apache.logging.log4j.message.ParameterFormatter.formatMessage3(StringBuilder, char[], int, Object[], int, int[]). (for https://issues.apache.org/jira/browse/LOG4J2-1599[LOG4J2-1599] by Gary Gregory)
+* Prevent potential NPE due to org.apache.logging.log4j.core.layout.MarkerPatternSelector.createSelector(PatternMatch[], String, boolean, boolean, Configuration). (for https://issues.apache.org/jira/browse/LOG4J2-1600[LOG4J2-1600] by Gary Gregory)
+* Prevent potential NPE due to org.apache.logging.log4j.core.layout.ScriptPatternSelector.createSelector(AbstractScript, PatternMatch[], String, boolean, boolean, Configuration). (for https://issues.apache.org/jira/browse/LOG4J2-1601[LOG4J2-1601] by Gary Gregory)
+* Prevent potential NPE in org.apache.logging.log4j.core.util.datetime.FormatCache.MultipartKey.equals(Object) when object is null. (for https://issues.apache.org/jira/browse/LOG4J2-1602[LOG4J2-1602] by Gary Gregory)
+* Redo hashCode() and equals() methods in org.apache.logging.log4j.core.net.ssl classes. (for https://issues.apache.org/jira/browse/LOG4J2-1603[LOG4J2-1603] by Gary Gregory)
+* ServletAppender does not provide throwable object to ServletContext. (for https://issues.apache.org/jira/browse/LOG4J2-1608[LOG4J2-1608] by Gary Gregory)
+* Add targetNamespace to log4j-config.xsd. GitHub #43. (for https://issues.apache.org/jira/browse/LOG4J2-1610[LOG4J2-1610] by Gary Gregory, Shubhankar)
+* Improved performance of context data injector for web applications to be on par with standalone applications. (for https://issues.apache.org/jira/browse/LOG4J2-1611[LOG4J2-1611] by Remko Popma)
+* Fixed ClassCastException when using JUL logging during shutdown. (for https://issues.apache.org/jira/browse/LOG4J2-1618[LOG4J2-1618] by Remko Popma, Raman Gupta)
+* new Log4jLogEvent().toString() throws an NPE. (for https://issues.apache.org/jira/browse/LOG4J2-1619[LOG4J2-1619] by Gary Gregory)
+* 2.7-rc1: RollingFileAppender immediateFlush default value should be true, not false. (for https://issues.apache.org/jira/browse/LOG4J2-1620[LOG4J2-1620] by Gary Gregory, Sascha Scholz)
+* [OSGi] Fixed wrong Fragment-Host in manifest files. (for https://issues.apache.org/jira/browse/LOG4J2-351[LOG4J2-351] by Remko Popma, Gary Gregory, Roland Weiglhofer)
+* Added ability to disable (date) lookup completely for compatibility with other libraries like Camel. (for https://issues.apache.org/jira/browse/LOG4J2-905[LOG4J2-905] by Gary Gregory, Moritz Löser)
diff --git a/src/site/_release-notes/_2.8.1.adoc b/src/site/_release-notes/_2.8.1.adoc
new file mode 100644
index 0000000..7a98335
--- /dev/null
+++ b/src/site/_release-notes/_2.8.1.adoc
@@ -0,0 +1,81 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.8.1 (2017-02-26)
+
+This release primarily contains bugfixes and minor enhancements.
+More details on the new features and fixes are itemized below.
+
+Note that subsequent to the 2.6 release a minor source incompatibility was found due to the addition of new methods to the `Logger` interface.
+If you have code that does:
+
+[source,java]
+----
+logger.error(null, “This is the log message”, throwable);
+----
+
+or similar with any log level you will get a compiler error saying the reference is ambiguous.
+To correct this either do:
+
+[source,java]
+----
+logger.error(“This is the log message”, throwable);
+----
+
+or
+
+[source,java]
+----
+logger.error((Marker) null, “This is the log message”, throwable);
+----
+
+The Log4j 2.8.1 API, as well as many core components, maintains binary compatibility with previous releases.
+
+Log4j 2.8.1 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 http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Added
+
+* [core] Add and implement LogEvent.toImmutable(). (for https://issues.apache.org/jira/browse/LOG4J2-1807[LOG4J2-1807] by Gary Gregory)
+* Remove deprecation on MessageSupplier lambda functions in Logger API. (for https://issues.apache.org/jira/browse/LOG4J2-1823[LOG4J2-1823] by Matt Sicker)
+
+=== Changed
+
+* Update to use Logback 1.1.10 and then Logback 1.2 for tests. (for https://issues.apache.org/jira/browse/LOG4J2-1810[LOG4J2-1810] by Ralph Goers)
+* Improved error message when log4j 2 configuration file not found. (for https://issues.apache.org/jira/browse/LOG4J2-1812[LOG4J2-1812] by Remko Popma)
+* Update Jackson from 2.8.5 to 2.8.6. (for https://issues.apache.org/jira/browse/LOG4J2-1819[LOG4J2-1819] by Gary Gregory)
+* Update SLF4J to 1.7.24. (for https://issues.apache.org/jira/browse/LOG4J2-1822[LOG4J2-1822] by Ralph Goers)
+
+=== Fixed
+
+* Fix ClassNotFoundException org.apache.logging.log4j.core.util.ExecutorServices in OSGi tests. (for https://issues.apache.org/jira/browse/LOG4J2-1753[LOG4J2-1753] by Gary Gregory, Ludovic Hochet)
+* Fixed bug in PropertiesUtil::getCharsetProperty that caused UnsupportedCharsetException for ConsoleAppender. (for https://issues.apache.org/jira/browse/LOG4J2-1799[LOG4J2-1799] by Remko Popma, Eduard Gizatullin)
+* Report errors when sending to Kafka when using syncSend=false. (for https://issues.apache.org/jira/browse/LOG4J2-1800[LOG4J2-1800] by Mikael Ståldal, Vincent Tieleman)
+* Fix Maven POM to ensure JMH generated classes in log4j-perf are included in benchmarks jar. (for https://issues.apache.org/jira/browse/LOG4J2-1803[LOG4J2-1803] by Ralph Goers)
+* Allow %i in file pattern to be preceded with characters other than just '-'. (for https://issues.apache.org/jira/browse/LOG4J2-1804[LOG4J2-1804] by Ralph Goers, Pierrick Hymbert)
+* Fixed rare race condition in FixedDateFormat, made FixedDateFormat::millisSinceMidnight method public. (for https://issues.apache.org/jira/browse/LOG4J2-1805[LOG4J2-1805] by Remko Popma)
+* Fix Javadoc for DefaultRolloverStrategy::purgeAscending (for https://issues.apache.org/jira/browse/LOG4J2-1806[LOG4J2-1806] by Remko Popma, challarao)
+* Change minOccur to minOccurs in Log4j-config.xsd. (for https://issues.apache.org/jira/browse/LOG4J2-1816[LOG4J2-1816] by Remko Popma, shubhankar1100)
+* Fix rollover to work when filePattern contains no directory components. (for https://issues.apache.org/jira/browse/LOG4J2-1818[LOG4J2-1818] by Gary Gregory, xkr47)
diff --git a/src/site/_release-notes/_2.8.2.adoc b/src/site/_release-notes/_2.8.2.adoc
new file mode 100644
index 0000000..db1e817
--- /dev/null
+++ b/src/site/_release-notes/_2.8.2.adoc
@@ -0,0 +1,84 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.8.2 (2017-04-02)
+
+This release primarily contains bugfixes and minor enhancements.
+More details on the new features and fixes are itemized below.
+
+Note that subsequent to the 2.6 release a minor source incompatibility was found due to the addition of new methods to the `Logger` interface.
+If you have code that does:
+
+[source,java]
+----
+logger.error(null, “This is the log message”, throwable);
+----
+
+or similar with any log level you will get a compiler error saying the reference is ambiguous.
+To correct this either do:
+
+[source,java]
+----
+logger.error(“This is the log message”, throwable);
+----
+
+or
+
+[source,java]
+----
+logger.error((Marker) null, “This is the log message”, throwable);
+----
+
+The Log4j 2.8.2 API, as well as many core components, maintains binary compatibility with previous releases.
+
+Log4j 2.8.2 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 http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Added
+
+* Add support for appending common suffix to each line of extended and root throwable stack trace. (for https://issues.apache.org/jira/browse/LOG4J2-1838[LOG4J2-1838] by Matt Sicker, Zilong Song)
+* Add support for appending common suffix to each line of throwable stack trace. (for https://issues.apache.org/jira/browse/LOG4J2-1843[LOG4J2-1843] by Matt Sicker, Zilong Song)
+* Add JSON encoding support to EncodingPatternConverter %encode{}. (for https://issues.apache.org/jira/browse/LOG4J2-1848[LOG4J2-1848] by Matt Sicker)
+* Add support for filtering input in TcpSocketServer and UdpSocketServer. (for https://issues.apache.org/jira/browse/LOG4J2-1863[LOG4J2-1863] by Matt Sicker)
+
+=== Changed
+
+* Move integration tests to their own module to speed up build. (for https://issues.apache.org/jira/browse/LOG4J2-1827[LOG4J2-1827] by Ralph Goers)
+* Update Jackson from 2.8.6 to 2.8.7. (for https://issues.apache.org/jira/browse/LOG4J2-1856[LOG4J2-1856] by Gary Gregory)
+
+=== Fixed
+
+* Log4j 2.8 can lose exceptions when a security manager is present. (for https://issues.apache.org/jira/browse/LOG4J2-1820[LOG4J2-1820] by Gary Gregory, Jason Tedor)
+* NullPointerException in HtmlLayout. (for https://issues.apache.org/jira/browse/LOG4J2-1831[LOG4J2-1831] by Gary Gregory, Edward Serebrinskiy)
+* Fix documentation about the licensing for JeroMQ. (for https://issues.apache.org/jira/browse/LOG4J2-1835[LOG4J2-1835] by Matt Sicker)
+* Update the API version to 2.6.0. (for https://issues.apache.org/jira/browse/LOG4J2-1836[LOG4J2-1836] by Ralph Goers)
+* Fix typo in %replace converter documentation. (for https://issues.apache.org/jira/browse/LOG4J2-1840[LOG4J2-1840] by Matt Sicker, Pradeep Balasundaram)
+* Handle when LogEvent.getLoggerName() returns null in KafkaAppender. (for https://issues.apache.org/jira/browse/LOG4J2-1845[LOG4J2-1845] by Mikael Ståldal)
+* Handle when LogEvent.getLoggerName() returns null in LoggerNameLevelRewritePolicy. (for https://issues.apache.org/jira/browse/LOG4J2-1846[LOG4J2-1846] by Mikael Ståldal)
+* Fixed daylight savings time (DST) issue with FixedDateFormat. (for https://issues.apache.org/jira/browse/LOG4J2-1849[LOG4J2-1849] by Remko Popma)
+* Fix CassandraRule and unit tests on Windows. (for https://issues.apache.org/jira/browse/LOG4J2-1850[LOG4J2-1850] by Matt Sicker, Ludovic Hochet)
+* The default value of RandomAccessFileAppender.Builder append field is wrong. (for https://issues.apache.org/jira/browse/LOG4J2-1853[LOG4J2-1853] by Gary Gregory, wangyuntao)
+* Fix JavaDoc on org.apache.logging.log4j.ThreadContext about inheritance. (for https://issues.apache.org/jira/browse/LOG4J2-1861[LOG4J2-1861] by Matt Sicker)
+* Fix JavaDoc about @Order and OrderComparator ordering. (for https://issues.apache.org/jira/browse/LOG4J2-1862[LOG4J2-1862] by Matt Sicker, wangyuntao)
diff --git a/src/site/_release-notes/_2.8.adoc b/src/site/_release-notes/_2.8.adoc
new file mode 100644
index 0000000..f9c3a84
--- /dev/null
+++ b/src/site/_release-notes/_2.8.adoc
@@ -0,0 +1,174 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.8 (2017-01-21)
+
+This release contains several bugfixes and new features.
+The new features include the ability to have the `RollingFileAppender` log directly to the archive files.
+More details on the new features and fixes are itemized below.
+
+Note that subsequent to the 2.6 release a minor source incompatibility was found due to the addition of new methods to the `Logger` interface.
+If you have code that does:
+
+[source,java]
+----
+logger.error(null, “This is the log message”, throwable);
+----
+
+or similar with any log level you will get a compiler error saying the reference is ambiguous.
+To correct this either do:
+
+[source,java]
+----
+logger.error(“This is the log message”, throwable);
+----
+
+or
+
+[source,java]
+----
+logger.error((Marker) null, “This is the log message”, throwable);
+----
+
+The Log4j 2.8 API, as well as many core components, maintains binary compatibility with previous releases.
+
+Log4j 2.8 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 http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Added
+
+* Make DefaultRolloverStrategy more efficient when renaming files. Add nomax option to the fileIndex attribute. (for https://issues.apache.org/jira/browse/LOG4J2-1032[LOG4J2-1032] by Ralph Goers)
+* RollingFileAppender now supports omitting the file name and writing directly to the archive files. (for https://issues.apache.org/jira/browse/LOG4J2-1101[LOG4J2-1101] by Ralph Goers)
+* Allow default value in property to be a Lookup. (for https://issues.apache.org/jira/browse/LOG4J2-1243[LOG4J2-1243] by Ralph Goers)
+* Add documentation regarding YAML configuration format. (for https://issues.apache.org/jira/browse/LOG4J2-1379[LOG4J2-1379] by Matt Sicker)
+* Added public method ThreadContext::getThreadContextMap; removed class ThreadContextAccess. (for https://issues.apache.org/jira/browse/LOG4J2-1660[LOG4J2-1660] by Remko Popma)
+* Introduce interfaces IndexedStringMap and IndexedReadOnlyStringMap, supporting garbage-free iteration over sorted map. (for https://issues.apache.org/jira/browse/LOG4J2-1681[LOG4J2-1681] by Remko Popma)
+* Add a Builder to ScriptPatternSelector and deprecate ScriptPatternSelector.createSelector(). (for https://issues.apache.org/jira/browse/LOG4J2-1695[LOG4J2-1695] by Gary Gregory)
+* Add a Builder to MarkerPatternSelector and deprecate MarkerPatternSelector.createSelector(). (for https://issues.apache.org/jira/browse/LOG4J2-1696[LOG4J2-1696] by Gary Gregory)
+* Add a SerializerBuilder to PatternLayout and deprecate PatternLayout.createSerializer(). (for https://issues.apache.org/jira/browse/LOG4J2-1697[LOG4J2-1697] by Gary Gregory)
+* Add a Builder to RandomAccessFileAppender and deprecate RandomAccessFileAppender.createAppender(). (for https://issues.apache.org/jira/browse/LOG4J2-1701[LOG4J2-1701] by Gary Gregory)
+* Add a Builder to MemoryMappedFileAppender and deprecate MemoryMappedFileAppender.createAppender(). (for https://issues.apache.org/jira/browse/LOG4J2-1703[LOG4J2-1703] by Gary Gregory)
+* Add a Builder to RollingRandomAccessFileAppender and deprecate RollingRandomAccessFileAppender.createAppender(). (for https://issues.apache.org/jira/browse/LOG4J2-1704[LOG4J2-1704] by Gary Gregory)
+* Allow TCP Socket Appender to set socket options. (for https://issues.apache.org/jira/browse/LOG4J2-1707[LOG4J2-1707] by Gary Gregory)
+* Allow Secure Socket Appender to set socket options. (for https://issues.apache.org/jira/browse/LOG4J2-1708[LOG4J2-1708] by Gary Gregory)
+* Add a Builder to SyslogAppender and deprecate SyslogAppender.createAppender(). (for https://issues.apache.org/jira/browse/LOG4J2-1709[LOG4J2-1709] by Gary Gregory)
+* Introduce marker interface AsynchronouslyFormattable. (for https://issues.apache.org/jira/browse/LOG4J2-1718[LOG4J2-1718] by Remko Popma)
+* Add Apache Cassandra appender and ColumnMapping plugin. (for https://issues.apache.org/jira/browse/LOG4J2-1730[LOG4J2-1730] by Matt Sicker)
+* Add SyncSend attribute to KafkaAppender (as in KafkaLog4jAppender). (for https://issues.apache.org/jira/browse/LOG4J2-1733[LOG4J2-1733] by Gary Gregory, Vincent Tieleman)
+* Add a Builder to SyslogLayout and deprecate SyslogLayout.createLayout(Facility, boolean, String, Charset). (for https://issues.apache.org/jira/browse/LOG4J2-1737[LOG4J2-1737] by Gary Gregory)
+* Add a Builder to JsonLayout and deprecate org.apache.logging.log4j.core.layout.JsonLayout.createLayout(Configuration, boolean, boolean, boolean, boolean, boolean, boolean, String, String, Charset, boolean). (for https://issues.apache.org/jira/browse/LOG4J2-1738[LOG4J2-1738] by Gary Gregory)
+* Add Builder to KafkaAppender and deprecate KafkaAppender.createAppender(Layout, Filter, String, boolean, String, Property[], Configuration). (for https://issues.apache.org/jira/browse/LOG4J2-1739[LOG4J2-1739] by Gary Gregory)
+* Add TypeConverter and constraint validators for java.net.InetAddress and port numbers. (for https://issues.apache.org/jira/browse/LOG4J2-1755[LOG4J2-1755] by Matt Sicker)
+* Add TypeConverter for java.nio.file.Path. (for https://issues.apache.org/jira/browse/LOG4J2-1758[LOG4J2-1758] by Matt Sicker)
+* Add TypeConverter for java.util.UUID. (for https://issues.apache.org/jira/browse/LOG4J2-1759[LOG4J2-1759] by Matt Sicker)
+* Use MethodHandle in ContextDataFactory cached constructor. (for https://issues.apache.org/jira/browse/LOG4J2-1764[LOG4J2-1764] by Matt Sicker)
+* Add a Builder to JdbcAppender and deprecate JdbcAppender.createAppender(). (for https://issues.apache.org/jira/browse/LOG4J2-1770[LOG4J2-1770] by Matt Sicker)
+* Add a Builder to ColumnConfig and deprecate ColumnConfig.createColumnConfig(). (for https://issues.apache.org/jira/browse/LOG4J2-1771[LOG4J2-1771] by Matt Sicker)
+* Add StatusLoggerRule to allow unit tests to set a status level. (for https://issues.apache.org/jira/browse/LOG4J2-1773[LOG4J2-1773] by Matt Sicker)
+* Document how to exclude transitive conflicting dependencies in Maven and Gradle. (for https://issues.apache.org/jira/browse/LOG4J2-1787[LOG4J2-1787] by Matt Sicker)
+* Add non-string data type support to JdbcAppender via new ColumnMapping plugin. (for https://issues.apache.org/jira/browse/LOG4J2-424[LOG4J2-424] by Matt Sicker)
+* Refactor SyslogAppender so that Layout is a Plugin element. (for https://issues.apache.org/jira/browse/LOG4J2-969[LOG4J2-969] by Gary Gregory)
+
+=== Changed
+
+* The log4j-slf4j-impl module now declares a runtime dependency on log4j-core. While not technically required, this makes the log4j-slf4j-impl module behave similarly to slf4j-log4j12, and facilitates migration to Log4j 2. (for https://issues.apache.org/jira/browse/LOG4J2-1302[LOG4J2-1302] by Remko Popma)
+* Update JeroMQ from 0.3.5 to 0.3.6. (for https://issues.apache.org/jira/browse/LOG4J2-1641[LOG4J2-1641] by Gary Gregory)
+* Inefficient locking in AbstractLoggerAdapter. (for https://issues.apache.org/jira/browse/LOG4J2-1644[LOG4J2-1644] by Gary Gregory, Tim Gokcen, Pavel Sivolobtchik)
+* Migrate to Mockito 2.x in unit tests. (for https://issues.apache.org/jira/browse/LOG4J2-1646[LOG4J2-1646] by Matt Sicker)
+* Update Commons Lang from 3.4 to 3.5. (for https://issues.apache.org/jira/browse/LOG4J2-1647[LOG4J2-1647] by Matt Sicker)
+* Update Jackson from 2.8.3 to 2.8.4. (for https://issues.apache.org/jira/browse/LOG4J2-1655[LOG4J2-1655] by Gary Gregory)
+* Update Apache Flume from 1.6.0 to 1.7.0. (for https://issues.apache.org/jira/browse/LOG4J2-1656[LOG4J2-1656] by Gary Gregory)
+* Update LMAX Disruptor from 3.3.5 to 3.3.6. (for https://issues.apache.org/jira/browse/LOG4J2-1698[LOG4J2-1698] by Gary Gregory)
+* Update Jansi from 1.13 to 1.14. (for https://issues.apache.org/jira/browse/LOG4J2-1700[LOG4J2-1700] by Gary Gregory)
+* Update Jackson from 2.8.4 to 2.8.5. (for https://issues.apache.org/jira/browse/LOG4J2-1735[LOG4J2-1735] by Gary Gregory)
+* Update Kafka from 0.10.0.1 to 0.10.1.1. (for https://issues.apache.org/jira/browse/LOG4J2-1750[LOG4J2-1750] by Gary Gregory)
+* Update liquibase-core from 3.5.1 to 3.5.3. (for https://issues.apache.org/jira/browse/LOG4J2-1751[LOG4J2-1751] by Gary Gregory)
+* Replace MockEJB dependency in unit tests with Spring Test and Mockito. (for https://issues.apache.org/jira/browse/LOG4J2-1774[LOG4J2-1774] by Matt Sicker)
+* Update Conversant Disruptor from 1.2.7 to 1.2.10 (for https://issues.apache.org/jira/browse/LOG4J2-1781[LOG4J2-1781] by Matt Sicker)
+
+=== Fixed
+
+* Improve LogEvent serialization to handle non-serializable Messages and deserializing when required classes are missing. (for https://issues.apache.org/jira/browse/LOG4J2-1226[LOG4J2-1226] by Remko Popma)
+* CronTriggeringPolicy raise exception and fail to rollover log file when evaluateOnStartup is true. (for https://issues.apache.org/jira/browse/LOG4J2-1474[LOG4J2-1474] by Gary Gregory, yin mingjun, `Neon`)
+* Configurable JVM shutdown hook timeout. (for https://issues.apache.org/jira/browse/LOG4J2-1623[LOG4J2-1623] by Mikael Ståldal)
+* Fixed file locking regression in FileAppender introduced in 2.6. (for https://issues.apache.org/jira/browse/LOG4J2-1628[LOG4J2-1628] by Remko Popma)
+* Console Appender does not pick up Oracle Java 8's sun.stdout.encoding and sun.stderr.encoding. (for https://issues.apache.org/jira/browse/LOG4J2-1636[LOG4J2-1636] by Gary Gregory, Eldar Gabdullin)
+* Fixed problems when used in OSGi containers (IllegalAccessError, NoClassDefFoundError). (for https://issues.apache.org/jira/browse/LOG4J2-1637[LOG4J2-1637] by Remko Popma)
+* Fix MemoryMappedFileAppender.createAppender() Javadoc for immediateFlush. (for https://issues.apache.org/jira/browse/LOG4J2-1639[LOG4J2-1639] by Gary Gregory, Sridhar Gopinath)
+* DefaultShutdownCallbackRegistry can throw a NoClassDefFoundError. (for https://issues.apache.org/jira/browse/LOG4J2-1642[LOG4J2-1642] by Gary Gregory, Johno Crawford)
+* Immutable empty StringMap. (for https://issues.apache.org/jira/browse/LOG4J2-1645[LOG4J2-1645] by Mikael Ståldal)
+* Insure the ConfigurationScheduler shuts down without blocking. (for https://issues.apache.org/jira/browse/LOG4J2-1649[LOG4J2-1649] by Ralph Goers, Georg Friedrich)
+* CronTriggeringPolicy would use the wrong date/time when rolling over and create multiple triggering policies on reconfiguration. (for https://issues.apache.org/jira/browse/LOG4J2-1653[LOG4J2-1653] by Ralph Goers, Georg Friedrich)
+* Prevent NPE in ThreadContextMapFactory::createThreadContextMap when initializing Log4j with Configurator::initialize and the BasicContextSelector is used. (for https://issues.apache.org/jira/browse/LOG4J2-1658[LOG4J2-1658] by Remko Popma)
+* Ensure SortedArrayStringMap can be serialized and deserialized without errors regardless of content. (for https://issues.apache.org/jira/browse/LOG4J2-1663[LOG4J2-1663] by Remko Popma)
+* Improve OSGi unit tests. (for https://issues.apache.org/jira/browse/LOG4J2-1664[LOG4J2-1664] by Gary Gregory, Ludovic HOCHET)
+* (GC) Avoid allocating temporary objects in IntegerPatternConverter. (for https://issues.apache.org/jira/browse/LOG4J2-1665[LOG4J2-1665] by Remko Popma)
+* (GC) Avoid allocating temporary objects in RelativeTimePatternConverter. (for https://issues.apache.org/jira/browse/LOG4J2-1666[LOG4J2-1666] by Remko Popma)
+* (GC) Avoid allocating temporary objects in SequenceNumberPatternConverter. (for https://issues.apache.org/jira/browse/LOG4J2-1667[LOG4J2-1667] by Remko Popma)
+* (GC) Avoid allocating temporary objects in MarkerPatternConverter. (for https://issues.apache.org/jira/browse/LOG4J2-1668[LOG4J2-1668] by Remko Popma)
+* (GC) Avoid allocating temporary objects in MaxLengthConverter. (for https://issues.apache.org/jira/browse/LOG4J2-1669[LOG4J2-1669] by Remko Popma)
+* (GC) Avoid allocating temporary objects in EqualsReplacementConverter. (for https://issues.apache.org/jira/browse/LOG4J2-1670[LOG4J2-1670] by Remko Popma)
+* (GC) Avoid allocating temporary objects in EqualsIgnoreCaseReplacementConverter. (for https://issues.apache.org/jira/browse/LOG4J2-1671[LOG4J2-1671] by Remko Popma)
+* (GC) Avoid allocating temporary objects in LevelRangeFilter. (for https://issues.apache.org/jira/browse/LOG4J2-1672[LOG4J2-1672] by Remko Popma)
+* (GC) Avoid allocating temporary objects in MarkerFilter. (for https://issues.apache.org/jira/browse/LOG4J2-1673[LOG4J2-1673] by Remko Popma)
+* (GC) Avoid allocating temporary objects in ThresholdFilter. (for https://issues.apache.org/jira/browse/LOG4J2-1674[LOG4J2-1674] by Remko Popma)
+* Some LogEvents may not carry a Throwable (Use Message.getThrowable() in log(Message) methods.) (for https://issues.apache.org/jira/browse/LOG4J2-1676[LOG4J2-1676] by Gary Gregory, Joern Huxhorn)
+* (GC) Avoid allocating temporary objects in MapFilter. (for https://issues.apache.org/jira/browse/LOG4J2-1677[LOG4J2-1677] by Remko Popma)
+* (GC) Avoid allocating temporary objects in ThreadContextMapFilter. (for https://issues.apache.org/jira/browse/LOG4J2-1678[LOG4J2-1678] by Remko Popma)
+* (GC) Avoid allocating temporary objects in StructuredDataFilter. (for https://issues.apache.org/jira/browse/LOG4J2-1679[LOG4J2-1679] by Remko Popma)
+* (GC) Avoid allocating temporary objects in TimeFilter. (for https://issues.apache.org/jira/browse/LOG4J2-1680[LOG4J2-1680] by Remko Popma)
+* Logger using LocalizedMessageFactory prints key instead of message. (for https://issues.apache.org/jira/browse/LOG4J2-1682[LOG4J2-1682] by Gary Gregory, Markus Waidhofer)
+* (GC) Avoid allocating temporary objects in MapMessage. (for https://issues.apache.org/jira/browse/LOG4J2-1683[LOG4J2-1683] by Remko Popma)
+* Option 'disableAnsi' in PatternLayout to unconditionally disable ANSI escape codes. (for https://issues.apache.org/jira/browse/LOG4J2-1685[LOG4J2-1685] by Mikael Ståldal, Raman Gupta)
+* NPE in ThrowableProxy when resolving stack in Java EE/OSGi environment. (for https://issues.apache.org/jira/browse/LOG4J2-1687[LOG4J2-1687] by Gary Gregory, Robert Christiansen)
+* Fixed bug where elements of a log message parameter array were nulled out in garbage-free mode. (for https://issues.apache.org/jira/browse/LOG4J2-1688[LOG4J2-1688] by Remko Popma)
+* Add CleanableThreadContextMap interface supporting method removeAll(Iterable<String>). (for https://issues.apache.org/jira/browse/LOG4J2-1689[LOG4J2-1689] by Mikael Ståldal)
+* Add putAll() method to CloseableThreadContext. (for https://issues.apache.org/jira/browse/LOG4J2-1692[LOG4J2-1692] by Mikael Ståldal, Greg Thomas)
+* Make TimeFilter usable as global filter and as logger filter. (for https://issues.apache.org/jira/browse/LOG4J2-1706[LOG4J2-1706] by Remko Popma)
+* Pick up bug fixes from Apache Commons Lang's org.apache.commons.lang3.time package. (for https://issues.apache.org/jira/browse/LOG4J2-1712[LOG4J2-1712] by Gary Gregory)
+* (GC) Avoid allocating temporary objects in AbstractStyleNameConverter. (for https://issues.apache.org/jira/browse/LOG4J2-1714[LOG4J2-1714] by Remko Popma)
+* (GC) Avoid allocating temporary objects in NdcPatternConverter. (Note that use of the ThreadContext stack is not garbage-free.) (for https://issues.apache.org/jira/browse/LOG4J2-1715[LOG4J2-1715] by Remko Popma)
+* (GC) Avoid allocating temporary objects in MapPatternConverter. (Note that constructing a MapMessage is not garbage-free.) (for https://issues.apache.org/jira/browse/LOG4J2-1716[LOG4J2-1716] by Remko Popma)
+* (GC) Avoid allocating temporary objects in EncodingPatternConverter. (for https://issues.apache.org/jira/browse/LOG4J2-1717[LOG4J2-1717] by Remko Popma)
+* Fixed race condition in ObjectMessage and SimpleMessage, ensuring that the log message contains the value the object has during the logging call. (for https://issues.apache.org/jira/browse/LOG4J2-1719[LOG4J2-1719] by Remko Popma)
+* Make GelfLayout independent of Jackson. (for https://issues.apache.org/jira/browse/LOG4J2-1720[LOG4J2-1720] by Mikael Ståldal)
+* (GC) Avoid allocating temporary objects in VariablesNotEmptyReplacementConverter. (for https://issues.apache.org/jira/browse/LOG4J2-1722[LOG4J2-1722] by Remko Popma)
+* Unwanted transitive dependency on geronimo-jms_1.1_spec causes OSGi tests to fail. (for https://issues.apache.org/jira/browse/LOG4J2-1723[LOG4J2-1723] by Gary Gregory, Ludovic HOCHET)
+* Using variables in GelfLayout's additional fields at runtime. (for https://issues.apache.org/jira/browse/LOG4J2-1724[LOG4J2-1724] by Mikael Ståldal, Alexander Krasnostavsky)
+* SslSocketManager now respects connectTimeoutMillis. (for https://issues.apache.org/jira/browse/LOG4J2-1731[LOG4J2-1731] by Remko Popma, Chris Ribble)
+* SslSocketManagerFactory might leak Sockets when certain startup errors occur. (for https://issues.apache.org/jira/browse/LOG4J2-1734[LOG4J2-1734] by Gary Gregory)
+* TcpSocketManagerFactory might leak Sockets when certain startup errors occur. (for https://issues.apache.org/jira/browse/LOG4J2-1736[LOG4J2-1736] by Gary Gregory)
+* Add CronTriggeringPolicy programmatically leads to NPE. (for https://issues.apache.org/jira/browse/LOG4J2-1740[LOG4J2-1740] by Gary Gregory)
+* CompositeConfiguration does not add filters to appenderRefs. (for https://issues.apache.org/jira/browse/LOG4J2-1743[LOG4J2-1743] by Gary Gregory, Toby Shepheard)
+* The custom logger Generate tool no longer requires the log4j-api module on the classpath. (for https://issues.apache.org/jira/browse/LOG4J2-1744[LOG4J2-1744] by Remko Popma)
+* Do not use non-daemon thread pool for rollover tasks. (for https://issues.apache.org/jira/browse/LOG4J2-1748[LOG4J2-1748] by Mikael Ståldal)
+* Adds xmlns in schema and some other tags. (for https://issues.apache.org/jira/browse/LOG4J2-1756[LOG4J2-1756] by Gary Gregory, shubhankar1100)
+* Add Builder to GelfLayout. (for https://issues.apache.org/jira/browse/LOG4J2-1762[LOG4J2-1762] by Mikael Ståldal)
+* Fixed concurrency issue affecting all layouts except PatternLayout and GelfLayout, which caused scrambled output and exceptions when logging synchronously from multiple threads. (for https://issues.apache.org/jira/browse/LOG4J2-1769[LOG4J2-1769] by Remko Popma, Brandon Goodin)
+* Fixed bug where AsyncLogger did not resolve configuration properties. (for https://issues.apache.org/jira/browse/LOG4J2-1779[LOG4J2-1779] by Remko Popma)
+* Eliminate the use of the ExecutorServices in the LoggerContext. (for https://issues.apache.org/jira/browse/LOG4J2-1780[LOG4J2-1780] by Mikael Ståldal)
+* ConfigurationScheduler now preserves interrupt flag during stop. (for https://issues.apache.org/jira/browse/LOG4J2-1786[LOG4J2-1786] by Remko Popma)
+* Cannot define both `filters` and `separator` for PatternLayout %xEx. (for https://issues.apache.org/jira/browse/LOG4J2-2195[LOG4J2-2195] by Gary Gregory, Raman Gupta)
+* RootThrowablePatternConverter does not use TextRenderer or line separator options. (for https://issues.apache.org/jira/browse/LOG4J2-2221[LOG4J2-2221] by Gary Gregory, Raman Gupta)
diff --git a/src/site/_release-notes/_2.9.0.adoc b/src/site/_release-notes/_2.9.0.adoc
new file mode 100644
index 0000000..0c05987
--- /dev/null
+++ b/src/site/_release-notes/_2.9.0.adoc
@@ -0,0 +1,175 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.9.0 (2017-08-26)
+
+This release contains the first support of Java 9 as well as bugfixes and minor enhancements.
+The Log4j API was modified to use `java.util.ServiceLoader` to locate Log4j implementations, although the former binding mechanism is still supported.
+The Log4j JAR is now a multi-release JAR to provide implementations of the 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 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:
+
+[source,xml]
+----
+<Appenders>
+  <Socket name="socket" host="localhost" port="9500"/>
+</Appenders>
+----
+
+into:
+
+[source,xml]
+----
+<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:
+
+[source,xml]
+----
+<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.9.0 API, as well as many core components, maintains binary compatibility with previous releases.
+
+Log4j 2.9.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 http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Added
+
+* The JMS Appender should use a JMS MapMessage for a Log4j MapMessage. (for https://issues.apache.org/jira/browse/LOG4J2-1294[LOG4J2-1294] by Gary Gregory)
+* Add support for Java 9 StackWalker. (for https://issues.apache.org/jira/browse/LOG4J2-1359[LOG4J2-1359] by Ralph Goers)
+* Generic HTTP appender. (for https://issues.apache.org/jira/browse/LOG4J2-1442[LOG4J2-1442] by Mikael Ståldal)
+* Configurable Log File Permissions with PosixFilePermission. (for https://issues.apache.org/jira/browse/LOG4J2-1699[LOG4J2-1699] by Gary Gregory, Demetrios Dimatos, Pierrick Hymbert)
+* Temporary compress directory during rollover (#88). (for https://issues.apache.org/jira/browse/LOG4J2-1766[LOG4J2-1766] by Gary Gregory, Pierrick HYMBERT)
+* Log4j2 will now print all internal logging to the console if system property `log4j2.debug` is defined with any value (or no value). (for https://issues.apache.org/jira/browse/LOG4J2-1813[LOG4J2-1813] by Remko Popma)
+* Added wrapper classes CustomLoggerGenerator and ExtendedLoggerGenerator to avoid class name with a dollar ($) character which has special meaning in many *nix command line environments. (for https://issues.apache.org/jira/browse/LOG4J2-1814[LOG4J2-1814] by Remko Popma)
+* Support null byte delimiter in GelfLayout. (for https://issues.apache.org/jira/browse/LOG4J2-1854[LOG4J2-1854] by Mikael Ståldal, Xavier Jodoin)
+* Add an optional random delay in TimeBasedTriggeringPolicy (for https://issues.apache.org/jira/browse/LOG4J2-1855[LOG4J2-1855] by Matt Sicker, Anthony Maire)
+* Shortcut to add Property and KeyValuePair component in ConfigurationBuilder. (for https://issues.apache.org/jira/browse/LOG4J2-1860[LOG4J2-1860] by Mikael Ståldal)
+* Support capped collections for MongoDb appender. (for https://issues.apache.org/jira/browse/LOG4J2-1864[LOG4J2-1864] by Matt Sicker, Matthias Kappeller)
+* Added methods ::writeBytes(ByteBuffer) and ::writeBytes(byte[], int, int) to ByteBufferDestination interface and use these methods in TextEncoderHelper where possible to prepare for future enhancements to reduce lock contention. (for https://issues.apache.org/jira/browse/LOG4J2-1874[LOG4J2-1874] by Remko Popma, Roman Leventov)
+* Warn when a configuration file for an inactive ConfigurationFactory is found. (for https://issues.apache.org/jira/browse/LOG4J2-1880[LOG4J2-1880] by Mikael Ståldal)
+* Added process ID (pid) pattern converter. (for https://issues.apache.org/jira/browse/LOG4J2-1884[LOG4J2-1884] by Remko Popma)
+* Add forEach() methods to org.apache.logging.log4j.message.MapMessage. (for https://issues.apache.org/jira/browse/LOG4J2-1930[LOG4J2-1930] by Gary Gregory)
+* Add containsKey() methods to org.apache.logging.log4j.message.MapMessage. (for https://issues.apache.org/jira/browse/LOG4J2-1932[LOG4J2-1932] by Gary Gregory)
+* JMS Appender does not know how to recover from a broken connection. (for https://issues.apache.org/jira/browse/LOG4J2-1934[LOG4J2-1934] by Gary Gregory)
+* Add with(String, primitive) methods to org.apache.logging.log4j.message.MapMessage. (for https://issues.apache.org/jira/browse/LOG4J2-1935[LOG4J2-1935] by Gary Gregory)
+* Generate source jas for all test jars. (for https://issues.apache.org/jira/browse/LOG4J2-1945[LOG4J2-1945] by Gary Gregory)
+* JMS Appender should be able to connect to a broker (later) even it is not present at configuration time. (for https://issues.apache.org/jira/browse/LOG4J2-1955[LOG4J2-1955] by Gary Gregory)
+* JsonLayout, XmlLayout and YamlLayout support 0-byte termination of log events. (for https://issues.apache.org/jira/browse/LOG4J2-1981[LOG4J2-1981] by Mikael Ståldal)
+* Public API for parsing the output from JsonLayout/XmlLayout/YamlLayout into a LogEvent. (for https://issues.apache.org/jira/browse/LOG4J2-1986[LOG4J2-1986] by Mikael Ståldal)
+* Support printing multiple StructuredData elements in RFC5424Layout. (for https://issues.apache.org/jira/browse/LOG4J2-2008[LOG4J2-2008] by Ralph Goers)
+
+=== Changed
+
+* Allow for bufferSize=0 in SMTP appender. (for https://issues.apache.org/jira/browse/LOG4J2-1071[LOG4J2-1071] by Gary Gregory, Ben Ludkiewicz, Benjamin Jaton)
+* Async Loggers no longer use deprecated LMAX Disruptor APIs. (Disruptor-3.3.3 or higher is now required.) (for https://issues.apache.org/jira/browse/LOG4J2-1261[LOG4J2-1261] by Remko Popma)
+* Add more detail to WARN "Ignoring log event" messages printed to the console after log4j was shut down. (for https://issues.apache.org/jira/browse/LOG4J2-1801[LOG4J2-1801] by Remko Popma)
+* Move server components from log4j-core to new log4-server module. (for https://issues.apache.org/jira/browse/LOG4J2-1851[LOG4J2-1851] by Mikael Ståldal)
+* Update ZeroMQ's JeroMQ from 0.3.6 to 0.4.0. (for https://issues.apache.org/jira/browse/LOG4J2-1868[LOG4J2-1868] by Gary Gregory)
+* Update Kafka client from 0.10.1.1 to 0.10.2.0 (for https://issues.apache.org/jira/browse/LOG4J2-1869[LOG4J2-1869] by Gary Gregory)
+* Update JavaMail from 1.5.5 to 1.5.6. (for https://issues.apache.org/jira/browse/LOG4J2-1872[LOG4J2-1872] by Gary Gregory)
+* Missing documentation for Max index limit in DefaultRolloverStrategy. (for https://issues.apache.org/jira/browse/LOG4J2-1877[LOG4J2-1877] by Gary Gregory, Chandra Tungathurthi)
+* Update JAnsi from 1.14 to 1.15. (for https://issues.apache.org/jira/browse/LOG4J2-1879[LOG4J2-1879] by Gary Gregory)
+* Add missing getters to classes in package org.apache.logging.log4j.core.net.ssl. (for https://issues.apache.org/jira/browse/LOG4J2-1899[LOG4J2-1899] by Gary Gregory)
+* Update JAnsi from 1.15 to 1.16. (for https://issues.apache.org/jira/browse/LOG4J2-1900[LOG4J2-1900] by Gary Gregory)
+* Improved error message when misconfigured with multiple incompatible appenders targeting same file. (for https://issues.apache.org/jira/browse/LOG4J2-1908[LOG4J2-1908] by Remko Popma)
+* Support using java.util.ServiceLoader to locate Log4j 2 API providers. (for https://issues.apache.org/jira/browse/LOG4J2-1917[LOG4J2-1917] by Ralph Goers)
+* Facilitate log4j use in Android applications: remove dependency on RMI and Management APIs from log4j-api. (for https://issues.apache.org/jira/browse/LOG4J2-1926[LOG4J2-1926] by Remko Popma)
+* Add support for DirectWriteRolloverStrategy to RollingRandomAccessFileAppender. (for https://issues.apache.org/jira/browse/LOG4J2-1928[LOG4J2-1928] by Ralph Goers)
+* Update Jackson from 2.8.7 to 2.8.9. (for https://issues.apache.org/jira/browse/LOG4J2-1938[LOG4J2-1938] by Gary Gregory)
+* Fix docker build with jdk9 requirements (#84). (for https://issues.apache.org/jira/browse/LOG4J2-1950[LOG4J2-1950] by Gary Gregory, Pierrick HYMBERT)
+* Configurations with multiple root loggers now fail loudly. (for https://issues.apache.org/jira/browse/LOG4J2-1954[LOG4J2-1954] by Remko Popma)
+* JMS Appender broker password should be a char[], not a String. (for https://issues.apache.org/jira/browse/LOG4J2-1956[LOG4J2-1956] by Gary Gregory)
+* Deprecate SerializedLayout and remove it as default. (for https://issues.apache.org/jira/browse/LOG4J2-1958[LOG4J2-1958] by Mikael Ståldal)
+* Disable DTD processing in XML configuration files. (for https://issues.apache.org/jira/browse/LOG4J2-1959[LOG4J2-1959] by Mikael Ståldal)
+* Update ZeroMQ's JeroMQ from 0.4.0 to 0.4.1. (for https://issues.apache.org/jira/browse/LOG4J2-1960[LOG4J2-1960] by Gary Gregory)
+* Update Kafka client from 0.10.2.0 to 0.11.0.0 (for https://issues.apache.org/jira/browse/LOG4J2-1962[LOG4J2-1962] by Gary Gregory)
+* Include separator option of PatternLayout in manual (and other updates). (for https://issues.apache.org/jira/browse/LOG4J2-1966[LOG4J2-1966] by Gary Gregory, M Sazzadul Hoque)
+* Update HdrHistogram from 2.1.8 to 2.1.9. (for https://issues.apache.org/jira/browse/LOG4J2-1970[LOG4J2-1970] by Remko Popma)
+* Update ZeroMQ's JeroMQ from 0.4.1 to 0.4.2. (for https://issues.apache.org/jira/browse/LOG4J2-1974[LOG4J2-1974] by Gary Gregory)
+* Update javax.persistence from 2.1.0 to 2.1.1. (for https://issues.apache.org/jira/browse/LOG4J2-1975[LOG4J2-1975] by Gary Gregory)
+* Update org.osgi.core from 4.3.1 to 6.0.0. (for https://issues.apache.org/jira/browse/LOG4J2-1976[LOG4J2-1976] by Gary Gregory)
+* Allow maxLength of StructuredData to be specified by the user. (for https://issues.apache.org/jira/browse/LOG4J2-1984[LOG4J2-1984] by Ralph Goers)
+* Refactor SimpleMessage to be concise and clear (#100) (for https://issues.apache.org/jira/browse/LOG4J2-1991[LOG4J2-1991] by Gary Gregory)
+* Replace JCommander command line parser with picocli to let users run Log4j2 utility applications without requiring an external dependency. (for https://issues.apache.org/jira/browse/LOG4J2-2011[LOG4J2-2011] by Remko Popma)
+* Allow KeyStoreConfiguration and TrustStoreConfiguration to find files as resources. (for https://issues.apache.org/jira/browse/LOG4J2-2015[LOG4J2-2015] by Gary Gregory)
+* Update Jackson from 2.8.9 to 2.9.0. (for https://issues.apache.org/jira/browse/LOG4J2-2017[LOG4J2-2017] by Gary Gregory)
+* Remove default layout from KafkaAppender. (for https://issues.apache.org/jira/browse/LOG4J2-2020[LOG4J2-2020] by Mikael Ståldal)
+* RFC5424Layout now prints the process id. (for https://issues.apache.org/jira/browse/LOG4J2-2022[LOG4J2-2022] by Ralph Goers)
+* Use a class' canonical name instead of name to create its logger name. (for https://issues.apache.org/jira/browse/LOG4J2-2023[LOG4J2-2023] by Gary Gregory)
+* Update SLF4J from 1.7.24 to 1.7.25. (for by Gary Gregory)
+
+=== Fixed
+
+* SocketAppender will lose several events after re-connection to server. (for https://issues.apache.org/jira/browse/LOG4J2-1311[LOG4J2-1311] by Gary Gregory, Xibing Liang)
+* Prevent NullPointerException when a file name is specified with the DirectWriteRolloverStrategy. (for https://issues.apache.org/jira/browse/LOG4J2-1833[LOG4J2-1833] by Ralph Goers)
+* Ensure the ThreadLocal StringBuilder in ParameterizedMessage won't hold excessively much memory after logging a long message. (for https://issues.apache.org/jira/browse/LOG4J2-1858[LOG4J2-1858] by Remko Popma)
+* Fix configuration documentation. (for https://issues.apache.org/jira/browse/LOG4J2-1867[LOG4J2-1867] by Mikael Ståldal)
+* More reliable checking for runtime dependencies. (for https://issues.apache.org/jira/browse/LOG4J2-1876[LOG4J2-1876] by Mikael Ståldal)
+* Fix documentation about default additivity value for loggers. (for https://issues.apache.org/jira/browse/LOG4J2-1885[LOG4J2-1885] by Matt Sicker)
+* Log4j throws a java.nio.charset.UnsupportedCharsetException: cp65001. (for https://issues.apache.org/jira/browse/LOG4J2-1888[LOG4J2-1888] by Gary Gregory, Misagh Moayyed)
+* Improve the documentation of the DynamicThresholdFilter. (for https://issues.apache.org/jira/browse/LOG4J2-1911[LOG4J2-1911] by Ralph Goers)
+* CompositeConfiguration logs warning "Unable to determine URI for configuration." However, the reconfiguration is completed. (for https://issues.apache.org/jira/browse/LOG4J2-1912[LOG4J2-1912] by Gary Gregory, R Ri)
+* ScriptEngineManager is not available in Android and causes a NoClassDefFoundError. (for https://issues.apache.org/jira/browse/LOG4J2-1920[LOG4J2-1920] by Gary Gregory, Ajitha)
+* EOFException with FormattedMessage. (for https://issues.apache.org/jira/browse/LOG4J2-1929[LOG4J2-1929] by Gary Gregory, Borys Sokolov)
+* The eventPrefix attribute was being ignored in the RFC5424Layout. (for https://issues.apache.org/jira/browse/LOG4J2-1943[LOG4J2-1943] by Ralph Goers)
+* Trim levels read from properties file to remove trailing spaces. (for https://issues.apache.org/jira/browse/LOG4J2-1948[LOG4J2-1948] by Gary Gregory, Michael Lück)
+* JndiManager is not released when the JmsAppender builder catches an exception trying to build itself. (for https://issues.apache.org/jira/browse/LOG4J2-1953[LOG4J2-1953] by Gary Gregory)
+* Reconfigure breaks DirectWriteRolloverStrategy. (for https://issues.apache.org/jira/browse/LOG4J2-1961[LOG4J2-1961] by Gary Gregory, Christian Vent)
+* Dynamic reconfiguration does not work for filePattern of RollingFile. (for https://issues.apache.org/jira/browse/LOG4J2-1964[LOG4J2-1964] by Gary Gregory, Pierrick HYMBERT)
+* ClassCastException: org.eclipse.osgi.internal.loader.SystemBundleLoader$1 cannot be cast to java.lang.ClassLoader. (for https://issues.apache.org/jira/browse/LOG4J2-1971[LOG4J2-1971] by Gary Gregory, liwenxian2017)
+* Register log4j-core as an OSGi service. Skip tests for LOG4J2-1766 on macOS. Use group "staff" for LOG4J2-1699 test on macOS. (for https://issues.apache.org/jira/browse/LOG4J2-1971[LOG4J2-1971] by Ralph Goers)
+* Consider the StringBuilder's capacity instead of content length when trimming. (for https://issues.apache.org/jira/browse/LOG4J2-1977[LOG4J2-1977] by Gary Gregory, Jerry xnslong)
+* Log4j-config.xsd only allows one AppenderRef element for each Logger element. (for https://issues.apache.org/jira/browse/LOG4J2-1982[LOG4J2-1982] by Gary Gregory, Christoph Lembeck)
+* Fix default buffer size to match documentation (from 8102 to 8192 a.k.a. 8KB.) (for https://issues.apache.org/jira/browse/LOG4J2-1985[LOG4J2-1985] by Gary Gregory, Kenneth McFarland)
+* Log4J JUL Bridge and RMI Security Manager causes access denied ("java.util.logging.LoggingPermission" "control") (for https://issues.apache.org/jira/browse/LOG4J2-1987[LOG4J2-1987] by Gary Gregory, Andreas Felder)
+* Clarify Javadoc for AbstractTriggeringPolicy. (for https://issues.apache.org/jira/browse/LOG4J2-1989[LOG4J2-1989] by Gary Gregory, Kenneth McFarland)
+* ConcurrentModificationException logging a parameter of type Map. (for https://issues.apache.org/jira/browse/LOG4J2-1990[LOG4J2-1990] by Gary Gregory, Philippe Mouawad)
+* Fix compiler warnings in LoggerConfigTest. (for https://issues.apache.org/jira/browse/LOG4J2-1993[LOG4J2-1993] by Gary Gregory, Kenneth McFarland)
+* TcpSocketServer does not close accepted Sockets. (for https://issues.apache.org/jira/browse/LOG4J2-1994[LOG4J2-1994] by Gary Gregory)
+* HighlightConverter converts all unrecognized levels to DEBUG. (for https://issues.apache.org/jira/browse/LOG4J2-1999[LOG4J2-1999] by Gary Gregory, Paul Burrowes)
+* StyleConverter.newInstance argument validation is incorrect. (for https://issues.apache.org/jira/browse/LOG4J2-2001[LOG4J2-2001] by Gary Gregory, Paul Burrowes)
+* No compression when using a separate drive in Linux. (for https://issues.apache.org/jira/browse/LOG4J2-2012[LOG4J2-2012] by Gary Gregory, Benjamin Jaton)
+* SslSocketManager does not apply SSLContext on TCP reconnect. (for https://issues.apache.org/jira/browse/LOG4J2-2013[LOG4J2-2013] by Gary Gregory, Taylor Patton)
+* Mark FileRenameAction as successful when using alternative ways to move files. (for https://issues.apache.org/jira/browse/LOG4J2-2016[LOG4J2-2016] by Gary Gregory, Benjamin Jaton)
+* Fix incorrect documentation for LoggerNameLevelRewritePolicy. (for https://issues.apache.org/jira/browse/LOG4J2-2018[LOG4J2-2018] by Remko Popma)
+* Parameter of mdcId in SyslogAppender has no default value. (for https://issues.apache.org/jira/browse/LOG4J2-922[LOG4J2-922] by Gary Gregory, angus.aqlu, Paul Burrowes)
diff --git a/src/site/_release-notes/_2.9.1.adoc b/src/site/_release-notes/_2.9.1.adoc
new file mode 100644
index 0000000..68f0bcf
--- /dev/null
+++ b/src/site/_release-notes/_2.9.1.adoc
@@ -0,0 +1,96 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.9.1 (2017-09-17)
+
+This release contains bugfixes and minor enhancements.
+
+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 JAR is now a multi-release JAR to provide implementations of the 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 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:
+
+[source,xml]
+----
+<Appenders>
+  <Socket name="socket" host="localhost" port="9500"/>
+</Appenders>
+----
+
+into:
+
+[source,xml]
+----
+<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:
+
+[source,xml]
+----
+<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.9.1 API, as well as many core components, maintains binary compatibility with previous releases.
+
+Log4j 2.9.1 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 http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Changed
+
+* Use a class' canonical name instead of name to create its logger name. (for https://issues.apache.org/jira/browse/LOG4J2-2023[LOG4J2-2023] by Gary Gregory)
+* Update Jackson from 2.9.0 to 2.9.1 (fix for Java 9.) (for https://issues.apache.org/jira/browse/LOG4J2-2043[LOG4J2-2043] by Gary Gregory)
+* Update Apache Commons CSV from 1.4 to 1.5. (for https://issues.apache.org/jira/browse/LOG4J2-2044[LOG4J2-2044] by Gary Gregory)
+* Update javax.mail from 1.5.6 to 1.6.0. (for https://issues.apache.org/jira/browse/LOG4J2-2045[LOG4J2-2045] by Gary Gregory)
+* Update Apache Commons Compress from 1.13 to 1.14. (for https://issues.apache.org/jira/browse/LOG4J2-2046[LOG4J2-2046] by Gary Gregory)
+* Update Cassandra driver from 3.1.0 to 3.1.4. (for https://issues.apache.org/jira/browse/LOG4J2-2047[LOG4J2-2047] by Gary Gregory)
+* Update Apache Kafka Client from 0.11.0.0 to 0.11.0.1. (for https://issues.apache.org/jira/browse/LOG4J2-2049[LOG4J2-2049] by Gary Gregory)
+
+=== Fixed
+
+* Prevent ConcurrentModificationException with AsyncLoggerConfig. (for https://issues.apache.org/jira/browse/LOG4J2-1914[LOG4J2-1914] by Remko Popma)
+* ClassNotFoundException when making all loggers asynchronous under OSGi environment. (for https://issues.apache.org/jira/browse/LOG4J2-1936[LOG4J2-1936] by Gary Gregory, Helber Belmiro)
+* Prevent ConcurrentModificationException with AsyncLoggerConfig. (for https://issues.apache.org/jira/browse/LOG4J2-1988[LOG4J2-1988] by Remko Popma)
+* java.lang.AbstractMethodError: javax.xml.parsers.DocumentBuilderFactory.setFeature(). (for https://issues.apache.org/jira/browse/LOG4J2-2026[LOG4J2-2026] by Gary Gregory, Leon Finker)
+* Java 9 StackLocator was not properly skipping the initial stack frames. (for https://issues.apache.org/jira/browse/LOG4J2-2028[LOG4J2-2028] by Ralph Goers, Jason Tedor)
+* Marker examples should not use deprecated flow APIs. (for https://issues.apache.org/jira/browse/LOG4J2-2029[LOG4J2-2029] by Gary Gregory, Fabrizio Cucci)
+* Inspect all known ClassLoaders to locate the service provider. (for https://issues.apache.org/jira/browse/LOG4J2-2030[LOG4J2-2030] by Ralph Goers)
+* Fix documentation to clarify disruptor-3.3.4 is now required for async loggers (previously the docs referred to disruptor-3.3.3 which was never released). (for https://issues.apache.org/jira/browse/LOG4J2-2035[LOG4J2-2035] by Remko Popma)
+* Increase default queue size for AsyncAppender from 128 to 1024. (for https://issues.apache.org/jira/browse/LOG4J2-2048[LOG4J2-2048] by Remko Popma)
diff --git a/src/site/_release-notes/_2.x.x.adoc b/src/site/_release-notes/_2.x.x.adoc
new file mode 100644
index 0000000..6afb3c5
--- /dev/null
+++ b/src/site/_release-notes/_2.x.x.adoc
@@ -0,0 +1,133 @@
+////
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         https://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+////
+
+= 2.x.x
+
+This release primarily contains bug fixes and minor enhancements.
+
+The Log4j 2.20.1 API, as well as many core components, maintains binary compatibility with previous releases.
+
+Apache Log4j 2.20.1 requires a minimum of Java 11 to build and Java 8 to run.
+Log4j 2.12.4 is the last release to support Java 7.
+Log4j 2.3.2 is the last release to support Java 6.
+Java 6 and Java 7 are no longer supported by the Log4j team.
+
+For complete information on Apache Log4j 2, including instructions on how to submit bug reports, patches, or suggestions for improvement, see http://logging.apache.org/log4j/2.x/[the Apache Log4j 2 website].
+
+== Changes
+
+=== Added
+
+* Add marker parent support to `JsonTemplateLayout` (for https://github.com/apache/logging-log4j2/pull/1381[1381] by Eric Herot, Volkan Yazıcı)
+
+=== Changed
+
+* Open `FileExtension` methods to allow their usage in custom ``RolloverStrategy``s (for https://github.com/apache/logging-log4j2/issues/1365[1365], https://github.com/apache/logging-log4j2/pull/1683[1683] by `github:Karthi1711`, `github:vy`)
+* Bump the minimum Java version required for the build to JDK 11. Runtime requirements remain unchanged. (for https://github.com/apache/logging-log4j2/issues/1369[1369] by `github:ppkarwasz`)
+* Set the default `minLevel` and `maxLevel` of `LevelRangeFilter` to `OFF` and `ALL`, respectively (for https://github.com/apache/logging-log4j2/pull/1503[1503] by Volkan Yazıcı)
+* Removes additional `isFiltered` checks in `AsyncLoggerConfig`. (for https://github.com/apache/logging-log4j2/pull/1550[1550] by `github:ppkarwasz`)
+* Log a status error event instead of an NPE in `OsgiServiceLocator.loadServices(Class, Lookup, boolean)` when a bundle has no valid `BundleContext` for a service type (for by Gary Gregory)
+* Runtime dependencies: update Eclipse Angus Activation from version 2.0.0 to version link:https://github.com/eclipse-ee4j/angus-activation/releases/tag/2.0.1[2.0.1]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Runtime dependencies: update Eclipse Angus Mail from version 2.0.1 to version link:https://github.com/eclipse-ee4j/angus-mail/releases/tag/2.0.2[2.0.2]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Runtime dependencies: `com.datastax.cassandra:cassandra-driver-core` to version 3.11.5. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Runtime dependencies: update Apache Cassandra from version 3.11.14 to version link:https://github.com/apache/cassandra/blob/cassandra-3.11/CHANGES.txt[3.11.16]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Runtime dependencies: update Apache Commons Compress from version 1.22 to version link:https://commons.apache.org/proper/commons-compress/changes-report.html#a1.24.0[1.24.0]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Runtime dependencies: update Apache Commons CSV from version 1.9.0 to version link:https://commons.apache.org/proper/commons-csv/changes-report.html#a1.10.0[1.10.0]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Runtime dependencies: update Jackson from version 2.14.1 to version link:https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.15.2[2.15.2]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Runtime dependencies: update Jakarta Activation API from version 2.1.1 to version link:https://jakarta.ee/specifications/activation/2.1/changelog/[2.1.2]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Runtime dependencies: update Jakarta Mail API from version 2.1.1 to version link:https://jakarta.ee/specifications/mail/2.1/changelog/[2.1.2]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Runtime dependencies: update JCTools from version 3.3.0 to version link:https://github.com/JCTools/JCTools/blob/master/RELEASE-NOTES.md[4.0.1]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Runtime dependencies: update Apache Kafka from version 1.1.1 to version link:https://archive.apache.org/dist/kafka/3.4.0/RELEASE_NOTES.html[3.4.0]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Runtime dependencies: update Kubernetes client from version 5.12.2 to version link:https://github.com/fabric8io/kubernetes-client/releases?q=5.12.4[5.12.4]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Runtime dependencies: update `org.mongodb:mongodb-driver-core` to version 4.10.2. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Runtime dependencies: update `io.netty:netty-bom` to version 4.1.97. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Runtime dependencies: update Spring Boot from version 2.7.7 to version link:https://github.com/spring-projects/spring-boot/releases/tag/v2.7.15[2.7.15]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Runtime dependencies: update Spring Framework from version 5.3.24 to version link:https://github.com/spring-projects/spring-framework/releases/tag/v5.3.29[5.3.29]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Runtime dependencies: update Tomcat JULI from version 10.0.23 to version 10.0.27. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Runtime dependencies: update Woodstox from version 6.4.0 to version link:https://github.com/FasterXML/woodstox/blob/master/release-notes/VERSION[6.5.1]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Build dependencies: update `maven-asciidoctor-plugin` from version 2.2.2 to link:https://github.com/asciidoctor/asciidoctor-maven-plugin/releases/tag/asciidoctor-maven-plugin-2.2.4[2.2.4]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Build dependencies: update `build-helper-maven-plugin` from version 3.3.0 to link:https://github.com/mojohaus/build-helper-maven-plugin/releases/tag/3.4.0[3.4.0]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Build dependencies: update `maven-dependency-plugin` from version 3.3.0 to link:https://blogsarchive.apache.org/maven/entry/apache-maven-dependency-plugin-version4[3.5.0]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Build dependencies: update `docker-maven-plugin` from version 0.40.2 to link:https://github.com/fabric8io/docker-maven-plugin/releases/tag/v0.43.2[0.43.2]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Build dependencies: update `log4j-changelog` from version 0.2.0 to link:https://github.com/apache/logging-log4j-tools/releases/tag/rel%2F0.3.0[0.3.0]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Build dependencies: update `maven-scm-plugin` from version 1.12.2 to 1.13.0. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Build dependencies: update `spotbugs-maven-plugin` from version 4.7.2.1 to link:https://github.com/spotbugs/spotbugs-maven-plugin/releases/tag/spotbugs-maven-plugin-4.7.3.5[4.7.3.5]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Build dependencies: update `maven-surefire-plugin` from version 3.0.0-M7 to link:https://github.com/apache/maven-surefire/releases/tag/surefire-3.1.2[3.1.2]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by Ralph Goers)
+* Build dependencies: update `xml-maven-plugin` from version 1.0.2 to link:https://github.com/mojohaus/xml-maven-plugin/releases/tag/1.1.0[1.1.0]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Test dependencies: update Apache ActiveMQ from version 5.17.3 to version 5.17.4. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Test dependencies: update Allocation Instrumenter from version 3.3.0 to version link:https://github.com/google/allocation-instrumenter/releases/tag/java-allocation-instrumenter-3.3.3[3.3.3]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Test dependencies: update AssertJ from version 3.23.1 to version 3.24.2. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Runtime dependencies: update `org.apache.commons:commons-lang3` to version 3.13.0. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Test dependencies: update Elasticsearch HLRC from version 7.17.8 to version link:https://www.elastic.co/guide/en/elasticsearch/reference/7.17/release-notes-7.17.13.html[7.17.13]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Test dependencies: update Groovy from version 3.0.14 to version link:https://groovy-lang.org/changelogs/changelog-3.0.19.html[3.0.19]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Test dependencies: update Guava from version 31.1 to version link:https://github.com/google/guava/releases/tag/v32.1.2[32.1.2]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Test dependencies: update H2 from version 2.1.214 to version link:http://www.h2database.com/html/changelog.html[2.2.222]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Test dependencies (**security**): update HyperSQL DB from version 2.5.2 to version link:https://hsqldb.org/doc/2.0/changelist_2_0.txt[2.7.2]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Test dependencies: update Jetty from version 9.4.50 to version link:https://github.com/eclipse/jetty.project/releases?q=9.4.52[9.4.52]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Test dependencies: update JMH from version 1.36 to version 1.37. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Test dependencies: update link:https://github.com/lukas-krecan/JsonUnit[JsonUnit] from version 2.36.0 to version 2.38.0. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Test dependencies: update JUnit from version 5.9.1 to version link:https://junit.org/junit5/docs/5.10.0/release-notes/[5.10.0]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Test dependencies: update Logback from version 1.2.11 to version link:https://logback.qos.ch/news.html#1.2.12[1.2.12]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Test dependencies: update Apache Maven from version 3.8.6 to version link:https://maven.apache.org/docs/3.9.0/release-notes.html[3.9.0]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Test dependencies: update WebCompere System Stubs from version 2.0.1 to version link:https://github.com/webcompere/system-stubs/releases/tag/system-stubs-parent-2.0.2[2.0.2]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Test dependencies: update `com.github.tomakehurst:wiremock-jre8` to version 2.35.1. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+* Test dependencies: update XMLUnit from version 2.9.0 to version link:https://github.com/xmlunit/xmlunit/releases/tag/v2.9.1[2.9.1]. (for https://github.com/apache/logging-log4j2/issues/1591[1591] by `github:dependabot`)
+
+=== Removed
+
+* Moved `log4j-jmx-gui` to https://github.com/apache/logging-log4j-jmx-gui/actions[its own repository] along with its own release cycle (for by Volkan Yazıcı)
+
+=== Fixed
+
+* Add validation to rolling file manager path conditions. (for https://github.com/apache/logging-log4j2/issues/1231[1231] by Łukasz Spyra, `github:ppkarwasz`)
+* Adapt the OSGi metadata of `log4j-to-slf4j` to work with SLF4J 1 and 2. To achieve that use a version range of `[1.7,3)` for the imported SLF4J packages. (for https://github.com/apache/logging-log4j2/issues/1232[1232] by `hanneswell`, Hannes Wellmann)
+* Remove locale-dependent `toLowerCase/toUpperCase` calls. (for https://github.com/apache/logging-log4j2/pull/1281[1281] by Ammar Awad, `github:ppkarwasz`)
+* Redirect old `/<module>/apidocs` URLs (broken in 2.20.0) to `/javadoc/<module>` (for https://github.com/apache/logging-log4j2/pull/1284[1284] by Volkan Yazıcı, Alexander Brandes)
+* Add environment variable arbiter. (for https://github.com/apache/logging-log4j2/issues/1312[1312] by Charles Leclerc, `github:ppkarwasz`)
+* Fixed logging of java.sql.Date objects by appending it before Log4J tries to call java.util.Date.toInstant() on it. (for https://github.com/apache/logging-log4j2/pull/1366[1366] by Lucas Souza)
+* Adapt the OSGi metadata of `log4j-api`, `log4j-core`, `log4j-slf4j-impl` and `log4j-slf4j2-impl` to activate the bundle when it is accessed. To achieve that set the `Bundle-ActivationPolicy` to `lazy` for the log4j bundles. (for https://github.com/apache/logging-log4j2/issues/1367[1367] by Niklas Kellner, github:ppkarwasz)
+* Avoid using released objects in `StackTraceStringResolver` of JSON Template Layout (for https://github.com/apache/logging-log4j2/pull/1380[1380] by Volkan Yazıcı)
+* Added missing setter for `connectionStringSource` in `MongoDb4Provider` builder (for https://github.com/apache/logging-log4j2/issues/1389[1389] by Ihor Dziuba, Volkan Yazıcı)
+* Fix NPE in `PluginElementVisitor` (for https://github.com/apache/logging-log4j2/issues/1391[1391] by Andrew Zakordonets, Volkan Yazıcı)
+* Add `columnType` as alias for the column mapping `type` attribute. (for https://github.com/apache/logging-log4j2/issues/1405[1405] by `github:ppkarwasz`)
+* Restored `Log4jMarker` visibility in SLF4J adapters (for https://github.com/apache/logging-log4j2/issues/1414[1414] by `github:ppkarwasz`, `github:vy`)
+* Fix buffer size in `Log4jFixedFormatter` date time formatter. (for https://github.com/apache/logging-log4j2/pull/1418[1418] by Piotr P. Karwasz)
+* Fixed `RollingFileManager` to propagate failed synchronous actions correctly. (for https://github.com/apache/logging-log4j2/issues/1445[1445] by Timothy Pfeifer)
+* Replaced the usage of `System.out` in `StackLocator` for warnings with `System.err` (for https://github.com/apache/logging-log4j2/issues/1484[1484] by Henning Blohm, `github:vy`)
+* Fix concurrent date-time formatting issue in `PatternLayout` (for https://github.com/apache/logging-log4j2/issues/1485[1485] by Stephan Markwalder, Volkan Yazıcı)
+* Fix runtime dependencies documentation. (for https://github.com/apache/logging-log4j2/pull/1530[1530] by `github:harryssuperman`, `github:ppkarwasz`)
+* Allow to override fqcn in `Log4jEventBuilder` by implementing `CallerBoundaryAware`. (for https://github.com/apache/logging-log4j2/pull/1533[1533] by Ohad Shai, github:pkarwasz)
+* Add a warning in case of incorrect syntax of highlighting style (without =). e.g. %highlight{%5level}{LOGBACK} should be %highlight{%5level}{STYLE=LOGBACK} (for https://github.com/apache/logging-log4j2/issues/1545[1545] by `aawad6`, Ammar Awad)
+* Migrate MongoDB tests to JUnit 5 and Flapdoodle Embedded MongoDB 4. (for https://github.com/apache/logging-log4j2/issues/1589[1589] by `github:ppkarwasz`)
+* Rewrote message parameter formatter with improved escape handling (for https://github.com/apache/logging-log4j2/issues/1626[1626] by `hucsmn`, Volkan Yazıcı)
+* Improve formatting and serialization of `StackTraceElement` on JDK 9+. (for https://github.com/apache/logging-log4j2/issues/1640[1640] by `github:rgoers`, `github:ppkarwasz`)
+* Fix `MemoryMappedFileAppender` buffer unmapping on JRE 9+. (for https://github.com/apache/logging-log4j2/issues/1646[1646] by `github:ppkarwasz`)
+* Fixed rollover strategy in the Log4j 1.x compatibility layer. (for https://github.com/apache/logging-log4j2/issues/1650[1650] by Krzysztof Krasoń, `github:ppkarwasz`)
+* Remove incorrect mention of `base64` lookup and improve the rest of the lookup manual (for https://github.com/apache/logging-log4j2/issues/1681[1681], https://issues.apache.org/jira/browse/LOG4J2-3504[LOG4J2-3504] by Yakov Shafranovich, `github:vy`)
+* `JsonTemplateLayout` was missing to implement `LocationAware` and this was causing location not being passed to underlying appenders (for https://github.com/apache/logging-log4j2/issues/1692[1692] by Jalyn Xing, `github:vy`)
+* The MongoDb4 appender now supports long values to configure `collectionSize` (for https://github.com/apache/logging-log4j2/issues/1747[1747] by Gary Gregory, Jordi Font)
+* Only shutdown Log4j after last `Log4jServletContextListener` is executed. (for https://github.com/apache/logging-log4j2/issues/1782[1782] by Christian Seewald, `github:ppkarwasz`)
+* Allow using Spring Arbiter without a Spring environment. (for https://github.com/apache/logging-log4j2/issues/1783[1783] by `github:ppkarwasz`)
+* Fixes context data loss if `<AsyncLogger>` components are used with an all async logger context. (for https://github.com/apache/logging-log4j2/issues/1786[1786] by `github:ppkarwasz`)
+* Fixed `JsonTemplateLayout` NPE thrown on custom log levels (for https://github.com/apache/logging-log4j2/issues/1805[1805] by `srangara123`, Volkan Yazıcı)
+* Improve `Log4j-config.xsd` schema. (for https://issues.apache.org/jira/browse/LOG4J2-170[LOG4J2-170] by `github:ppkarwasz`)
+* Fix NPE in `ContextSelector` (for https://issues.apache.org/jira/browse/LOG4J2-3217[LOG4J2-3217], https://github.com/apache/logging-log4j2/pull/1538[1538] by Petr Bodnár, Volkan Yazıcı)
+* When ``ThreadLocal``s are disabled, avoid allocating them in `AbstractLogger` causing memory leaks due to retained reference to class loaders in web applications (for https://issues.apache.org/jira/browse/LOG4J2-3657[LOG4J2-3657] by Marat Kamalov, Volkan Yazıcı)
+* Fix `%notEmpty` directive of `PatternLayout` for empty MDC/NDC inputs (for https://issues.apache.org/jira/browse/LOG4J2-3660[LOG4J2-3660] by Volkan Yazıcı)
+* Fix file descriptor leak on Tomcat. (for https://issues.apache.org/jira/browse/LOG4J2-3663[LOG4J2-3663] by Radek Kraus, Piotr P. Karwasz)
+* Ensure `FileOutputStream` is closed in `CommonsCompressAction.execute()` (for by `mernst`, Volkan Yazıcı)
+* Test dependencies: update Flapdoodle Embedded MongoDB from version 3.5.1 to version 4.7.1. (for https://github.com/apache/logging-log4j2/issues/1589[1589] by `github:ppkarwasz`)