////
    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-3-0-0-beta3]
== 3.0.0-beta3

Release date:: 2024-11-09

This release terminates the modularization process of Log4j Core, by moving all the code that uses optional `log4j-core` dependencies into new modules:

* Support for the JAnsi library has been removed since recent Windows OSes support ANSI escape sequences.
See
xref:manual/pattern-layout.adoc#ansi-windows[ANSI styling on Windows]
for more details.
* The
xref:manual/appenders/delegating.adoc#DisruptorBlockingQueueFactory[`DisruptorBlockinQueue` queue factory]
has been moved to a new
xref:components.adoc#log4j-conversant[`log4j-conversant` artifact].
* Support for
xref:manual/appenders/rolling-file.adoc#RolloverStrategy-compress[advanced compression algorithms]
has been moved to a new
xref:components.adoc#log4j-compress[`log4j-compress` artifact].
The Gzip and Zip formats are still supported out-of-the-box.

=== Separate lifecycle

* The
xref:manual/appenders/message-queue.adoc#FlumeAppender[Flume Appender]
releases will follow its own lifecycle.
* All the
xref:manual/installation.adoc#impl-core-bridges[logging bridges]
from and to Log4j API have been removed from the Log4j Core 3.x release.
Please manage your dependencies with
xref:components.adoc#log4j-bom[`log4j-bom`]
to always use the compatible version of the logging bridges.


[#release-notes-3-0-0-beta3-added]
=== Added

* Add `useFqdn` configuration attribute to RFC5424 Layout. (https://github.com/apache/logging-log4j2/issues/1740[1740])
* Split off JNDI support of `log4j-jdbc` to a new `log4j-jdbc-jndi` module (https://github.com/apache/logging-log4j2/issues/1914[1914])
* Add _"Plugin Reference"_ to the website. It is a Javadoc-on-steroids focusing on Log4j plugins. (https://github.com/apache/logging-log4j2/issues/1954[1954])
* Split extended compression algorithm support to new `log4j-compress` module. (https://github.com/apache/logging-log4j2/pull/2921[2921])

[#release-notes-3-0-0-beta3-changed]
=== Changed

* Remove JAnsi library support, since Windows console supports ANSI escapes now. (https://github.com/apache/logging-log4j2/issues/1736[1736])
* Move `DisruptorBlockingQueue` plugin to new `log4j-conversant` module. (https://github.com/apache/logging-log4j2/pull/2914[2914])
* Rewrite `JAnsiTextRenderer` to work without JAnsi library. (https://github.com/apache/logging-log4j2/pull/2916[2916])

[#release-notes-3-0-0-beta3-fixed]
=== Fixed

* Switch MongoDB tests to use Docker. (https://github.com/apache/logging-log4j2/issues/2229[2229])
* Fix custom thread-context data provider handling in lookups and filters. (https://github.com/apache/logging-log4j2/issues/2331[2331])
* Fix reloading of the configuration from an HTTP(S) source (https://github.com/apache/logging-log4j2/issues/2937[2937])
* Fix Android-related issues in Log4j Core. (https://github.com/apache/logging-log4j2/issues/3056[3056])
* Website is migrated to Antora with several formatting and link fixes (https://github.com/apache/logging-log4j2/pull/2443[2443])

[#release-notes-3-0-0-beta3-removed]
=== Removed

* Remove _named_ date & time formatting patterns in Pattern Layout, except for `UNIX` and `UNIX_MILLIS` (https://github.com/apache/logging-log4j2/pull/3150[3150])
* Move Flume Appender to its own release lifecycle. (https://github.com/apache/logging-log4j2/issues/2902[2902])
* Remove `ThrowableProxy` and its usages (https://github.com/apache/logging-log4j2/pull/3047[3047])
* Remove logging bridges from distribution and reference their 2.x equivalents in `log4j-bom`.
* Remove CLI tools to generate logger wrappers and convert configuration files. These tools will be available in the next release of https://logging.apache.org/log4j/transform/latest/[Log4j Transform].
* Remove deprecated `org.apache.logging.log4j.core.appender.rolling.action.Duration` class.
* Remove `log4j-1.2-api` module (https://github.com/apache/logging-log4j2/pull/2621[2621])
* Remove `log4j-iostreams` module (https://github.com/apache/logging-log4j2/pull/2630[2630])

[#release-notes-3-0-0-beta3-updated]
=== Updated

* Rename the log4j-mongodb4, module, package, and classes in favor of log4j-mongodb, in other words, drop the `4`; tracks the current MongoDB client driver.
* Update `apache/logging-parent` to version `` (https://github.com/apache/logging-log4j2/pull/2598[2598])
* Update `com.fasterxml.jackson:jackson-bom` to version `2.18.1` (https://github.com/apache/logging-log4j2/pull/3136[3136])
* Update `io.fabric8:docker-maven-plugin` to version `0.45.1` (https://github.com/apache/logging-log4j2/pull/3036[3036])
* Update `org.apache.commons:commons-compress` to version `1.27.1` (https://github.com/apache/logging-log4j2/pull/2870[2870])
* Update `org.apache.commons:commons-csv` to version `1.12.0` (https://github.com/apache/logging-log4j2/pull/3020[3020])
* Update `org.apache.commons:commons-dbcp2` to version `2.12.0` (https://github.com/apache/logging-log4j2/pull/2342[2342])
* Update `org.apache.logging.log4j:log4j-api` to version `2.24.1` (https://github.com/apache/logging-log4j2/pull/3035[3035])
* Update `org.jctools:jctools-core` to version `4.0.5` (https://github.com/apache/logging-log4j2/pull/2638[2638])
* Update `org.jspecify:jspecify` to version `1.0.0` (https://github.com/apache/logging-log4j2/pull/2750[2750])
* Update `org.mongodb:bson` to version `5.2.1` (https://github.com/apache/logging-log4j2/pull/3179[3179])
* Update `org.springframework.boot:spring-boot-autoconfigure` to version `3.3.5` (https://github.com/apache/logging-log4j2/pull/3120[3120])
* Update `org.springframework.cloud:spring-cloud-context` to version `4.1.4` (https://github.com/apache/logging-log4j2/pull/2733[2733])
* Update `org.springframework:spring-framework-bom` to version `6.1.14` (https://github.com/apache/logging-log4j2/pull/3102[3102])
