Apache logging services logo Apache log4j logo

API Change Analysis Results

org.apache.logging.log4j.samples:log4j-samples-configuration:jar:2.11.1 vs org.apache.logging.log4j.samples:log4j-samples-configuration:jar:2.11.2

The summary of the API changes between artifacts org.apache.logging.log4j.samples:log4j-samples-configuration:jar:2.11.1 and org.apache.logging.log4j.samples:log4j-samples-configuration:jar:2.11.2.

Breaking Changes

Source

Difference Code Element Description
java.generics.formalTypeParameterAdded class org.apache.logging.log4j.core.appender.AsyncAppender.Builder A new formal type parameter added to element: 'B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>>'.
java.method.returnTypeTypeParametersChanged method org.apache.logging.log4j.core.appender.AsyncAppender.Builder org.apache.logging.log4j.core.appender.AsyncAppender.Builder::setFilter(org.apache.logging.log4j.core.Filter) The return type changed from 'org.apache.logging.log4j.core.appender.AsyncAppender.Builder' to 'B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>'.

Semantic

Difference Code Element Description
java.class.nonPublicPartOfAPI class org.apache.logging.log4j.core.async.AsyncLoggerDisruptor Class 'org.apache.logging.log4j.core.async.AsyncLoggerDisruptor' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).
java.class.nonPublicPartOfAPI class org.apache.logging.log4j.core.async.RingBufferLogEvent.Factory Class 'org.apache.logging.log4j.core.async.RingBufferLogEvent.Factory' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).
java.class.nonPublicPartOfAPI class org.apache.logging.log4j.core.util.CronExpression.ValueSet Class 'org.apache.logging.log4j.core.util.CronExpression.ValueSet' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).

Potentially Breaking Changes

Binary

Difference Code Element Description
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.AsyncAppender.Builder Non-final class now inherits from 'org.apache.logging.log4j.core.filter.AbstractFilterable.Builder<B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>>'.
java.missing.newClass missing-class com.lmax.disruptor.RingBuffer Class 'com.lmax.disruptor.RingBuffer' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.lmax.disruptor.RingBuffer Class 'com.lmax.disruptor.RingBuffer' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.

Source

Difference Code Element Description
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.AsyncAppender.Builder Non-final class now inherits from 'org.apache.logging.log4j.core.filter.AbstractFilterable.Builder<B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>>'.
java.missing.newClass missing-class com.lmax.disruptor.RingBuffer Class 'com.lmax.disruptor.RingBuffer' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.lmax.disruptor.RingBuffer Class 'com.lmax.disruptor.RingBuffer' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.

Semantic

Difference Code Element Description
java.generics.elementNowParameterized class org.apache.logging.log4j.core.appender.AsyncAppender.Builder Element now defines formal type parameters.

org.apache.logging.log4j.samples:log4j-samples-flume-common:jar:2.11.1 vs org.apache.logging.log4j.samples:log4j-samples-flume-common:jar:2.11.2

The summary of the API changes between artifacts org.apache.logging.log4j.samples:log4j-samples-flume-common:jar:2.11.1 and org.apache.logging.log4j.samples:log4j-samples-flume-common:jar:2.11.2.

org.apache.logging.log4j.samples:log4j-samples-loggerProperties:jar:2.11.1 vs org.apache.logging.log4j.samples:log4j-samples-loggerProperties:jar:2.11.2

The summary of the API changes between artifacts org.apache.logging.log4j.samples:log4j-samples-loggerProperties:jar:2.11.1 and org.apache.logging.log4j.samples:log4j-samples-loggerProperties:jar:2.11.2.

org.apache.logging.log4j:log4j-1.2-api:jar:2.11.1 vs org.apache.logging.log4j:log4j-1.2-api:jar:2.11.2

The summary of the API changes between artifacts org.apache.logging.log4j:log4j-1.2-api:jar:2.11.1 and org.apache.logging.log4j:log4j-1.2-api:jar:2.11.2.

Breaking Changes

Source

Difference Code Element Description
java.generics.formalTypeParameterAdded class org.apache.logging.log4j.core.appender.AsyncAppender.Builder A new formal type parameter added to element: 'B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>>'.
java.method.returnTypeTypeParametersChanged method org.apache.logging.log4j.core.appender.AsyncAppender.Builder org.apache.logging.log4j.core.appender.AsyncAppender.Builder::setFilter(org.apache.logging.log4j.core.Filter) The return type changed from 'org.apache.logging.log4j.core.appender.AsyncAppender.Builder' to 'B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>'.

Semantic

Difference Code Element Description
java.class.nonPublicPartOfAPI class org.apache.logging.log4j.core.async.AsyncLoggerDisruptor Class 'org.apache.logging.log4j.core.async.AsyncLoggerDisruptor' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).
java.class.nonPublicPartOfAPI class org.apache.logging.log4j.core.async.RingBufferLogEvent.Factory Class 'org.apache.logging.log4j.core.async.RingBufferLogEvent.Factory' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).
java.class.nonPublicPartOfAPI class org.apache.logging.log4j.core.util.CronExpression.ValueSet Class 'org.apache.logging.log4j.core.util.CronExpression.ValueSet' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).

Potentially Breaking Changes

Binary

Difference Code Element Description
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.AsyncAppender.Builder Non-final class now inherits from 'org.apache.logging.log4j.core.filter.AbstractFilterable.Builder<B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>>'.
java.missing.newClass missing-class com.lmax.disruptor.RingBuffer Class 'com.lmax.disruptor.RingBuffer' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.lmax.disruptor.RingBuffer Class 'com.lmax.disruptor.RingBuffer' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.

Source

Difference Code Element Description
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.AsyncAppender.Builder Non-final class now inherits from 'org.apache.logging.log4j.core.filter.AbstractFilterable.Builder<B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>>'.
java.missing.newClass missing-class com.lmax.disruptor.RingBuffer Class 'com.lmax.disruptor.RingBuffer' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.lmax.disruptor.RingBuffer Class 'com.lmax.disruptor.RingBuffer' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.

Semantic

Difference Code Element Description
java.generics.elementNowParameterized class org.apache.logging.log4j.core.appender.AsyncAppender.Builder Element now defines formal type parameters.

org.apache.logging.log4j:log4j-api:jar:2.11.1 vs org.apache.logging.log4j:log4j-api:jar:2.11.2

The summary of the API changes between artifacts org.apache.logging.log4j:log4j-api:jar:2.11.1 and org.apache.logging.log4j:log4j-api:jar:2.11.2.

Breaking Changes

Binary

Difference Code Element Description
java.method.nowStatic method java.lang.String org.apache.logging.log4j.util.Strings::toRootUpperCase(java.lang.String) method now static
java.method.removed method org.apache.logging.log4j.util.StackLocator.PrivateSecurityManager org.apache.logging.log4j.util.StackLocator::getSecurityManager() Method was removed.

Source

Difference Code Element Description
java.method.removed method org.apache.logging.log4j.util.StackLocator.PrivateSecurityManager org.apache.logging.log4j.util.StackLocator::getSecurityManager() Method was removed.

org.apache.logging.log4j:log4j-appserver:jar:2.11.1 vs org.apache.logging.log4j:log4j-appserver:jar:2.11.2

The summary of the API changes between artifacts org.apache.logging.log4j:log4j-appserver:jar:2.11.1 and org.apache.logging.log4j:log4j-appserver:jar:2.11.2.

org.apache.logging.log4j:log4j-cassandra:jar:2.11.1 vs org.apache.logging.log4j:log4j-cassandra:jar:2.11.2

The summary of the API changes between artifacts org.apache.logging.log4j:log4j-cassandra:jar:2.11.1 and org.apache.logging.log4j:log4j-cassandra:jar:2.11.2.

Breaking Changes

Source

Difference Code Element Description
java.generics.formalTypeParameterAdded class org.apache.logging.log4j.core.appender.AsyncAppender.Builder A new formal type parameter added to element: 'B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>>'.
java.method.returnTypeTypeParametersChanged method org.apache.logging.log4j.core.appender.AsyncAppender.Builder org.apache.logging.log4j.core.appender.AsyncAppender.Builder::setFilter(org.apache.logging.log4j.core.Filter) The return type changed from 'org.apache.logging.log4j.core.appender.AsyncAppender.Builder' to 'B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>'.

Semantic

Difference Code Element Description
java.class.nonPublicPartOfAPI class org.apache.logging.log4j.core.async.AsyncLoggerDisruptor Class 'org.apache.logging.log4j.core.async.AsyncLoggerDisruptor' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).
java.class.nonPublicPartOfAPI class org.apache.logging.log4j.core.async.RingBufferLogEvent.Factory Class 'org.apache.logging.log4j.core.async.RingBufferLogEvent.Factory' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).
java.class.nonPublicPartOfAPI class org.apache.logging.log4j.core.util.CronExpression.ValueSet Class 'org.apache.logging.log4j.core.util.CronExpression.ValueSet' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).

Potentially Breaking Changes

Binary

Difference Code Element Description
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.AsyncAppender.Builder Non-final class now inherits from 'org.apache.logging.log4j.core.filter.AbstractFilterable.Builder<B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>>'.
java.missing.newClass missing-class com.lmax.disruptor.RingBuffer Class 'com.lmax.disruptor.RingBuffer' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.lmax.disruptor.RingBuffer Class 'com.lmax.disruptor.RingBuffer' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.

Source

Difference Code Element Description
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.AsyncAppender.Builder Non-final class now inherits from 'org.apache.logging.log4j.core.filter.AbstractFilterable.Builder<B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>>'.
java.missing.newClass missing-class com.lmax.disruptor.RingBuffer Class 'com.lmax.disruptor.RingBuffer' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.lmax.disruptor.RingBuffer Class 'com.lmax.disruptor.RingBuffer' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.

Semantic

Difference Code Element Description
java.class.externalClassExposedInAPI class org.apache.logging.log4j.status.StatusLogger A class from supplementary archives is used in a public capacity in the API.
java.class.externalClassExposedInAPI interface org.apache.logging.log4j.status.StatusListener A class from supplementary archives is used in a public capacity in the API.
java.generics.elementNowParameterized class org.apache.logging.log4j.core.appender.AsyncAppender.Builder Element now defines formal type parameters.

org.apache.logging.log4j:log4j-core:jar:2.11.1 vs org.apache.logging.log4j:log4j-core:jar:2.11.2

The summary of the API changes between artifacts org.apache.logging.log4j:log4j-core:jar:2.11.1 and org.apache.logging.log4j:log4j-core:jar:2.11.2.

Breaking Changes

Binary

Difference Code Element Description
java.method.numberOfParametersChanged method org.apache.logging.log4j.core.appender.db.jdbc.JdbcDatabaseManager org.apache.logging.log4j.core.appender.db.jdbc.JdbcDatabaseManager::getManager(java.lang.String, int, org.apache.logging.log4j.core.appender.db.jdbc.ConnectionSource, java.lang.String, org.apache.logging.log4j.core.appender.db.jdbc.ColumnConfig[], org.apache.logging.log4j.core.appender.db.ColumnMapping[]) The number of parameters of the method have changed.
java.method.parameterTypeChanged parameter org.apache.logging.log4j.core.appender.WriterAppender.Builder org.apache.logging.log4j.core.appender.WriterAppender.Builder::setLayout(===org.apache.logging.log4j.core.StringLayout===) The type of the parameter changed from 'org.apache.logging.log4j.core.StringLayout' to 'org.apache.logging.log4j.core.Layout<? extends java.io.Serializable>'.
java.method.removed method B org.apache.logging.log4j.core.appender.mom.kafka.KafkaAppender.Builder<B extends org.apache.logging.log4j.core.appender.mom.kafka.KafkaAppender.Builder<B extends org.apache.logging.log4j.core.appender.mom.kafka.KafkaAppender.Builder<B>>>::setProperties(org.apache.logging.log4j.core.config.Property[]) Method was removed.
java.method.removed method org.apache.logging.log4j.core.config.Property[] org.apache.logging.log4j.core.appender.mom.kafka.KafkaAppender.Builder<B extends org.apache.logging.log4j.core.appender.mom.kafka.KafkaAppender.Builder<B extends org.apache.logging.log4j.core.appender.mom.kafka.KafkaAppender.Builder<B>>>::getProperties() Method was removed.
java.method.returnTypeChanged method void org.apache.logging.log4j.core.util.Closer::close(java.lang.AutoCloseable) throws java.lang.Exception The return type changed from 'void' to 'boolean'.

Source

Difference Code Element Description
java.generics.formalTypeParameterAdded method java.lang.Object org.apache.logging.log4j.core.util.Loader::newInstanceOf(java.lang.String) throws java.lang.ClassNotFoundException, java.lang.IllegalAccessException, java.lang.InstantiationException, java.lang.NoSuchMethodException, java.lang.reflect.InvocationTargetException A new formal type parameter added to element: 'T'.
java.generics.formalTypeParameterAdded class org.apache.logging.log4j.core.appender.AsyncAppender.Builder A new formal type parameter added to element: 'B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>>'.
java.generics.formalTypeParameterAdded class org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder A new formal type parameter added to element: 'B extends org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder<B extends org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder<B>>'.
java.generics.formalTypeParameterAdded class org.apache.logging.log4j.core.appender.WriterAppender.Builder A new formal type parameter added to element: 'B extends org.apache.logging.log4j.core.appender.WriterAppender.Builder<B extends org.apache.logging.log4j.core.appender.WriterAppender.Builder<B>>'.
java.generics.formalTypeParameterAdded class org.apache.logging.log4j.core.appender.mom.JmsAppender.Builder A new formal type parameter added to element: 'B extends org.apache.logging.log4j.core.appender.mom.JmsAppender.Builder<B extends org.apache.logging.log4j.core.appender.mom.JmsAppender.Builder<B>>'.
java.method.addedToInterface method void org.apache.logging.log4j.core.appender.rolling.DirectFileRolloverStrategy::clearCurrentFileName() Method was added to an interface.
java.method.numberOfParametersChanged method org.apache.logging.log4j.core.appender.db.jdbc.JdbcDatabaseManager org.apache.logging.log4j.core.appender.db.jdbc.JdbcDatabaseManager::getManager(java.lang.String, int, org.apache.logging.log4j.core.appender.db.jdbc.ConnectionSource, java.lang.String, org.apache.logging.log4j.core.appender.db.jdbc.ColumnConfig[], org.apache.logging.log4j.core.appender.db.ColumnMapping[]) The number of parameters of the method have changed.
java.method.removed method B org.apache.logging.log4j.core.appender.mom.kafka.KafkaAppender.Builder<B extends org.apache.logging.log4j.core.appender.mom.kafka.KafkaAppender.Builder<B extends org.apache.logging.log4j.core.appender.mom.kafka.KafkaAppender.Builder<B>>>::setProperties(org.apache.logging.log4j.core.config.Property[]) Method was removed.
java.method.removed method org.apache.logging.log4j.core.config.Property[] org.apache.logging.log4j.core.appender.mom.kafka.KafkaAppender.Builder<B extends org.apache.logging.log4j.core.appender.mom.kafka.KafkaAppender.Builder<B extends org.apache.logging.log4j.core.appender.mom.kafka.KafkaAppender.Builder<B>>>::getProperties() Method was removed.
java.method.returnTypeTypeParametersChanged method java.lang.Object org.apache.logging.log4j.core.util.Loader::newInstanceOf(java.lang.String) throws java.lang.ClassNotFoundException, java.lang.IllegalAccessException, java.lang.InstantiationException, java.lang.NoSuchMethodException, java.lang.reflect.InvocationTargetException The return type changed from 'java.lang.Object' to 'T extends java.lang.Object'.
java.method.returnTypeTypeParametersChanged method org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder::setIgnoreExceptions(boolean) The return type changed from 'org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder' to 'B extends org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder<B>'.
java.method.returnTypeTypeParametersChanged method org.apache.logging.log4j.core.appender.WriterAppender.Builder org.apache.logging.log4j.core.appender.WriterAppender.Builder::setIgnoreExceptions(boolean) The return type changed from 'org.apache.logging.log4j.core.appender.WriterAppender.Builder' to 'B extends org.apache.logging.log4j.core.appender.WriterAppender.Builder<B>'.
java.method.returnTypeTypeParametersChanged method org.apache.logging.log4j.core.appender.mom.JmsAppender.Builder org.apache.logging.log4j.core.appender.mom.JmsAppender.Builder::setIgnoreExceptions(boolean) The return type changed from 'org.apache.logging.log4j.core.appender.mom.JmsAppender.Builder' to 'B extends org.apache.logging.log4j.core.appender.mom.JmsAppender.Builder<B>'.
java.method.returnTypeTypeParametersChanged method org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder::setLayout(org.apache.logging.log4j.core.Layout<? extends java.io.Serializable>) The return type changed from 'org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder' to 'B extends org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder<B>'.
java.method.returnTypeTypeParametersChanged method org.apache.logging.log4j.core.appender.WriterAppender.Builder org.apache.logging.log4j.core.appender.WriterAppender.Builder::setLayout(org.apache.logging.log4j.core.StringLayout) The return type changed from 'org.apache.logging.log4j.core.appender.WriterAppender.Builder' to 'B extends org.apache.logging.log4j.core.appender.WriterAppender.Builder<B>'.
java.method.returnTypeTypeParametersChanged method org.apache.logging.log4j.core.appender.mom.JmsAppender.Builder org.apache.logging.log4j.core.appender.mom.JmsAppender.Builder::setLayout(org.apache.logging.log4j.core.Layout<? extends java.io.Serializable>) The return type changed from 'org.apache.logging.log4j.core.appender.mom.JmsAppender.Builder' to 'B extends org.apache.logging.log4j.core.appender.mom.JmsAppender.Builder<B>'.
java.method.returnTypeTypeParametersChanged method org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder::setName(java.lang.String) The return type changed from 'org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder' to 'B extends org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder<B>'.
java.method.returnTypeTypeParametersChanged method org.apache.logging.log4j.core.appender.WriterAppender.Builder org.apache.logging.log4j.core.appender.WriterAppender.Builder::setName(java.lang.String) The return type changed from 'org.apache.logging.log4j.core.appender.WriterAppender.Builder' to 'B extends org.apache.logging.log4j.core.appender.WriterAppender.Builder<B>'.
java.method.returnTypeTypeParametersChanged method org.apache.logging.log4j.core.appender.mom.JmsAppender.Builder org.apache.logging.log4j.core.appender.mom.JmsAppender.Builder::setName(java.lang.String) The return type changed from 'org.apache.logging.log4j.core.appender.mom.JmsAppender.Builder' to 'B extends org.apache.logging.log4j.core.appender.mom.JmsAppender.Builder<B>'.
java.method.returnTypeTypeParametersChanged method org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder::setFollow(boolean) The return type changed from 'org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder' to 'B extends org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder<B>'.
java.method.returnTypeTypeParametersChanged method org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder::setTarget(java.io.OutputStream) The return type changed from 'org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder' to 'B extends org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder<B>'.
java.method.returnTypeTypeParametersChanged method org.apache.logging.log4j.core.appender.WriterAppender.Builder org.apache.logging.log4j.core.appender.WriterAppender.Builder::setFollow(boolean) The return type changed from 'org.apache.logging.log4j.core.appender.WriterAppender.Builder' to 'B extends org.apache.logging.log4j.core.appender.WriterAppender.Builder<B>'.
java.method.returnTypeTypeParametersChanged method org.apache.logging.log4j.core.appender.WriterAppender.Builder org.apache.logging.log4j.core.appender.WriterAppender.Builder::setTarget(java.io.Writer) The return type changed from 'org.apache.logging.log4j.core.appender.WriterAppender.Builder' to 'B extends org.apache.logging.log4j.core.appender.WriterAppender.Builder<B>'.
java.method.returnTypeTypeParametersChanged method org.apache.logging.log4j.core.appender.AsyncAppender.Builder org.apache.logging.log4j.core.appender.AsyncAppender.Builder::setFilter(org.apache.logging.log4j.core.Filter) The return type changed from 'org.apache.logging.log4j.core.appender.AsyncAppender.Builder' to 'B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>'.
java.method.returnTypeTypeParametersChanged method org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder::setFilter(org.apache.logging.log4j.core.Filter) The return type changed from 'org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder' to 'B extends org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder<B>'.
java.method.returnTypeTypeParametersChanged method org.apache.logging.log4j.core.appender.WriterAppender.Builder org.apache.logging.log4j.core.appender.WriterAppender.Builder::setFilter(org.apache.logging.log4j.core.Filter) The return type changed from 'org.apache.logging.log4j.core.appender.WriterAppender.Builder' to 'B extends org.apache.logging.log4j.core.appender.WriterAppender.Builder<B>'.
java.method.returnTypeTypeParametersChanged method org.apache.logging.log4j.core.appender.mom.JmsAppender.Builder org.apache.logging.log4j.core.appender.mom.JmsAppender.Builder::setFilter(org.apache.logging.log4j.core.Filter) The return type changed from 'org.apache.logging.log4j.core.appender.mom.JmsAppender.Builder' to 'B extends org.apache.logging.log4j.core.appender.mom.JmsAppender.Builder<B>'.

Semantic

Difference Code Element Description
java.class.nonPublicPartOfAPI class org.apache.logging.log4j.core.async.AsyncLoggerDisruptor Class 'org.apache.logging.log4j.core.async.AsyncLoggerDisruptor' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).
java.class.nonPublicPartOfAPI class org.apache.logging.log4j.core.async.RingBufferLogEvent.Factory Class 'org.apache.logging.log4j.core.async.RingBufferLogEvent.Factory' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).
java.class.nonPublicPartOfAPI class org.apache.logging.log4j.core.layout.AbstractJacksonLayout Class 'org.apache.logging.log4j.core.layout.AbstractJacksonLayout' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).
java.class.nonPublicPartOfAPI class org.apache.logging.log4j.core.layout.AbstractJacksonLayout.ResolvableKeyValuePair Class 'org.apache.logging.log4j.core.layout.AbstractJacksonLayout.ResolvableKeyValuePair' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).
java.class.nonPublicPartOfAPI class org.apache.logging.log4j.core.net.SmtpManager.FactoryData Class 'org.apache.logging.log4j.core.net.SmtpManager.FactoryData' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).
java.class.nonPublicPartOfAPI class org.apache.logging.log4j.core.net.TcpSocketManager.FactoryData Class 'org.apache.logging.log4j.core.net.TcpSocketManager.FactoryData' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).
java.class.nonPublicPartOfAPI class org.apache.logging.log4j.core.util.CronExpression.ValueSet Class 'org.apache.logging.log4j.core.util.CronExpression.ValueSet' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).
java.class.nonPublicPartOfAPI interface org.apache.logging.log4j.core.util.datetime.FastDatePrinter.NumberRule Class 'org.apache.logging.log4j.core.util.datetime.FastDatePrinter.NumberRule' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).
java.class.nonPublicPartOfAPI interface org.apache.logging.log4j.core.util.datetime.FastDatePrinter.Rule Class 'org.apache.logging.log4j.core.util.datetime.FastDatePrinter.Rule' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).

Potentially Breaking Changes

Binary

Difference Code Element Description
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.AsyncAppender.Builder Non-final class now inherits from 'org.apache.logging.log4j.core.filter.AbstractFilterable.Builder<B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>>'.
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder Non-final class now inherits from 'org.apache.logging.log4j.core.appender.AbstractAppender.Builder<B extends org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder<B>>'.
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder Non-final class now inherits from 'org.apache.logging.log4j.core.appender.AbstractOutputStreamAppender.Builder<B extends org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder<B>>'.
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder Non-final class now inherits from 'org.apache.logging.log4j.core.filter.AbstractFilterable.Builder<B extends org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder<B>>'.
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.WriterAppender.Builder Non-final class now inherits from 'org.apache.logging.log4j.core.appender.AbstractAppender.Builder<B extends org.apache.logging.log4j.core.appender.WriterAppender.Builder<B>>'.
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.WriterAppender.Builder Non-final class now inherits from 'org.apache.logging.log4j.core.filter.AbstractFilterable.Builder<B extends org.apache.logging.log4j.core.appender.WriterAppender.Builder<B>>'.
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.db.jdbc.JdbcAppender.Builder<B extends org.apache.logging.log4j.core.appender.db.jdbc.JdbcAppender.Builder<B>> Non-final class now inherits from 'org.apache.logging.log4j.core.appender.db.AbstractDatabaseAppender.Builder<B extends org.apache.logging.log4j.core.appender.db.jdbc.JdbcAppender.Builder<B>>'.
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.mom.JmsAppender.Builder Non-final class now inherits from 'org.apache.logging.log4j.core.appender.AbstractAppender.Builder<B extends org.apache.logging.log4j.core.appender.mom.JmsAppender.Builder<B>>'.
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.mom.JmsAppender.Builder Non-final class now inherits from 'org.apache.logging.log4j.core.filter.AbstractFilterable.Builder<B extends org.apache.logging.log4j.core.appender.mom.JmsAppender.Builder<B>>'.
java.missing.newClass missing-class com.conversantmedia.util.concurrent.SpinPolicy Class 'com.conversantmedia.util.concurrent.SpinPolicy' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class com.fasterxml.jackson.core.JsonGenerationException Class 'com.fasterxml.jackson.core.JsonGenerationException' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class com.fasterxml.jackson.core.JsonGenerator Class 'com.fasterxml.jackson.core.JsonGenerator' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class com.fasterxml.jackson.core.JsonParser Class 'com.fasterxml.jackson.core.JsonParser' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class com.fasterxml.jackson.core.JsonProcessingException Class 'com.fasterxml.jackson.core.JsonProcessingException' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class com.fasterxml.jackson.databind.DeserializationContext Class 'com.fasterxml.jackson.databind.DeserializationContext' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class com.fasterxml.jackson.databind.JsonMappingException Class 'com.fasterxml.jackson.databind.JsonMappingException' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class com.fasterxml.jackson.databind.ObjectMapper Class 'com.fasterxml.jackson.databind.ObjectMapper' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class com.fasterxml.jackson.databind.ObjectWriter Class 'com.fasterxml.jackson.databind.ObjectWriter' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class com.fasterxml.jackson.databind.SerializerProvider Class 'com.fasterxml.jackson.databind.SerializerProvider' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class com.lmax.disruptor.RingBuffer Class 'com.lmax.disruptor.RingBuffer' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class com.lmax.disruptor.Sequence Class 'com.lmax.disruptor.Sequence' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class javax.jms.Destination Class 'javax.jms.Destination' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class javax.jms.JMSException Class 'javax.jms.JMSException' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class javax.jms.Message Class 'javax.jms.Message' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class javax.jms.MessageConsumer Class 'javax.jms.MessageConsumer' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class javax.jms.MessageProducer Class 'javax.jms.MessageProducer' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class javax.jms.Session Class 'javax.jms.Session' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class javax.mail.Message.RecipientType Class 'javax.mail.Message.RecipientType' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class javax.mail.MessagingException Class 'javax.mail.MessagingException' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class javax.mail.Session Class 'javax.mail.Session' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class javax.mail.internet.InternetHeaders Class 'javax.mail.internet.InternetHeaders' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class javax.mail.internet.MimeMessage Class 'javax.mail.internet.MimeMessage' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class javax.mail.internet.MimeMultipart Class 'javax.mail.internet.MimeMultipart' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class org.apache.commons.csv.CSVFormat Class 'org.apache.commons.csv.CSVFormat' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class org.apache.commons.csv.QuoteMode Class 'org.apache.commons.csv.QuoteMode' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class org.apache.kafka.clients.producer.Producer Class 'org.apache.kafka.clients.producer.Producer' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class org.fusesource.jansi.AnsiRenderer.Code Class 'org.fusesource.jansi.AnsiRenderer.Code' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class org.zeromq.ZMQ.Context Class 'org.zeromq.ZMQ.Context' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.conversantmedia.util.concurrent.SpinPolicy Class 'com.conversantmedia.util.concurrent.SpinPolicy' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.fasterxml.jackson.core.JsonGenerationException Class 'com.fasterxml.jackson.core.JsonGenerationException' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.fasterxml.jackson.core.JsonGenerator Class 'com.fasterxml.jackson.core.JsonGenerator' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.fasterxml.jackson.core.JsonParser Class 'com.fasterxml.jackson.core.JsonParser' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.fasterxml.jackson.core.JsonProcessingException Class 'com.fasterxml.jackson.core.JsonProcessingException' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.fasterxml.jackson.databind.DeserializationContext Class 'com.fasterxml.jackson.databind.DeserializationContext' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.fasterxml.jackson.databind.JsonMappingException Class 'com.fasterxml.jackson.databind.JsonMappingException' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.fasterxml.jackson.databind.ObjectMapper Class 'com.fasterxml.jackson.databind.ObjectMapper' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.fasterxml.jackson.databind.ObjectWriter Class 'com.fasterxml.jackson.databind.ObjectWriter' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.fasterxml.jackson.databind.SerializerProvider Class 'com.fasterxml.jackson.databind.SerializerProvider' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.lmax.disruptor.RingBuffer Class 'com.lmax.disruptor.RingBuffer' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.lmax.disruptor.Sequence Class 'com.lmax.disruptor.Sequence' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class javax.jms.Destination Class 'javax.jms.Destination' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class javax.jms.JMSException Class 'javax.jms.JMSException' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class javax.jms.Message Class 'javax.jms.Message' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class javax.jms.MessageConsumer Class 'javax.jms.MessageConsumer' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class javax.jms.MessageProducer Class 'javax.jms.MessageProducer' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class javax.jms.Session Class 'javax.jms.Session' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class javax.mail.Message.RecipientType Class 'javax.mail.Message.RecipientType' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class javax.mail.MessagingException Class 'javax.mail.MessagingException' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class javax.mail.Session Class 'javax.mail.Session' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class javax.mail.internet.InternetHeaders Class 'javax.mail.internet.InternetHeaders' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class javax.mail.internet.MimeMessage Class 'javax.mail.internet.MimeMessage' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class javax.mail.internet.MimeMultipart Class 'javax.mail.internet.MimeMultipart' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class org.apache.commons.csv.CSVFormat Class 'org.apache.commons.csv.CSVFormat' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class org.apache.commons.csv.QuoteMode Class 'org.apache.commons.csv.QuoteMode' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class org.apache.kafka.clients.producer.Producer Class 'org.apache.kafka.clients.producer.Producer' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class org.fusesource.jansi.AnsiRenderer.Code Class 'org.fusesource.jansi.AnsiRenderer.Code' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class org.zeromq.ZMQ.Context Class 'org.zeromq.ZMQ.Context' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.

Source

Difference Code Element Description
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.AsyncAppender.Builder Non-final class now inherits from 'org.apache.logging.log4j.core.filter.AbstractFilterable.Builder<B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>>'.
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder Non-final class now inherits from 'org.apache.logging.log4j.core.appender.AbstractAppender.Builder<B extends org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder<B>>'.
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder Non-final class now inherits from 'org.apache.logging.log4j.core.appender.AbstractOutputStreamAppender.Builder<B extends org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder<B>>'.
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder Non-final class now inherits from 'org.apache.logging.log4j.core.filter.AbstractFilterable.Builder<B extends org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder<B>>'.
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.WriterAppender.Builder Non-final class now inherits from 'org.apache.logging.log4j.core.appender.AbstractAppender.Builder<B extends org.apache.logging.log4j.core.appender.WriterAppender.Builder<B>>'.
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.WriterAppender.Builder Non-final class now inherits from 'org.apache.logging.log4j.core.filter.AbstractFilterable.Builder<B extends org.apache.logging.log4j.core.appender.WriterAppender.Builder<B>>'.
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.db.jdbc.JdbcAppender.Builder<B extends org.apache.logging.log4j.core.appender.db.jdbc.JdbcAppender.Builder<B>> Non-final class now inherits from 'org.apache.logging.log4j.core.appender.db.AbstractDatabaseAppender.Builder<B extends org.apache.logging.log4j.core.appender.db.jdbc.JdbcAppender.Builder<B>>'.
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.mom.JmsAppender.Builder Non-final class now inherits from 'org.apache.logging.log4j.core.appender.AbstractAppender.Builder<B extends org.apache.logging.log4j.core.appender.mom.JmsAppender.Builder<B>>'.
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.mom.JmsAppender.Builder Non-final class now inherits from 'org.apache.logging.log4j.core.filter.AbstractFilterable.Builder<B extends org.apache.logging.log4j.core.appender.mom.JmsAppender.Builder<B>>'.
java.method.parameterTypeChanged parameter org.apache.logging.log4j.core.appender.WriterAppender.Builder org.apache.logging.log4j.core.appender.WriterAppender.Builder::setLayout(===org.apache.logging.log4j.core.StringLayout===) The type of the parameter changed from 'org.apache.logging.log4j.core.StringLayout' to 'org.apache.logging.log4j.core.Layout<? extends java.io.Serializable>'.
java.method.returnTypeChanged method void org.apache.logging.log4j.core.util.Closer::close(java.lang.AutoCloseable) throws java.lang.Exception The return type changed from 'void' to 'boolean'.
java.missing.newClass missing-class com.conversantmedia.util.concurrent.SpinPolicy Class 'com.conversantmedia.util.concurrent.SpinPolicy' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class com.fasterxml.jackson.core.JsonGenerationException Class 'com.fasterxml.jackson.core.JsonGenerationException' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class com.fasterxml.jackson.core.JsonGenerator Class 'com.fasterxml.jackson.core.JsonGenerator' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class com.fasterxml.jackson.core.JsonParser Class 'com.fasterxml.jackson.core.JsonParser' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class com.fasterxml.jackson.core.JsonProcessingException Class 'com.fasterxml.jackson.core.JsonProcessingException' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class com.fasterxml.jackson.databind.DeserializationContext Class 'com.fasterxml.jackson.databind.DeserializationContext' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class com.fasterxml.jackson.databind.JsonMappingException Class 'com.fasterxml.jackson.databind.JsonMappingException' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class com.fasterxml.jackson.databind.ObjectMapper Class 'com.fasterxml.jackson.databind.ObjectMapper' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class com.fasterxml.jackson.databind.ObjectWriter Class 'com.fasterxml.jackson.databind.ObjectWriter' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class com.fasterxml.jackson.databind.SerializerProvider Class 'com.fasterxml.jackson.databind.SerializerProvider' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class com.lmax.disruptor.RingBuffer Class 'com.lmax.disruptor.RingBuffer' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class com.lmax.disruptor.Sequence Class 'com.lmax.disruptor.Sequence' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class javax.jms.Destination Class 'javax.jms.Destination' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class javax.jms.JMSException Class 'javax.jms.JMSException' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class javax.jms.Message Class 'javax.jms.Message' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class javax.jms.MessageConsumer Class 'javax.jms.MessageConsumer' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class javax.jms.MessageProducer Class 'javax.jms.MessageProducer' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class javax.jms.Session Class 'javax.jms.Session' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class javax.mail.Message.RecipientType Class 'javax.mail.Message.RecipientType' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class javax.mail.MessagingException Class 'javax.mail.MessagingException' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class javax.mail.Session Class 'javax.mail.Session' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class javax.mail.internet.InternetHeaders Class 'javax.mail.internet.InternetHeaders' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class javax.mail.internet.MimeMessage Class 'javax.mail.internet.MimeMessage' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class javax.mail.internet.MimeMultipart Class 'javax.mail.internet.MimeMultipart' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class org.apache.commons.csv.CSVFormat Class 'org.apache.commons.csv.CSVFormat' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class org.apache.commons.csv.QuoteMode Class 'org.apache.commons.csv.QuoteMode' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class org.apache.kafka.clients.producer.Producer Class 'org.apache.kafka.clients.producer.Producer' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class org.fusesource.jansi.AnsiRenderer.Code Class 'org.fusesource.jansi.AnsiRenderer.Code' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class org.zeromq.ZMQ.Context Class 'org.zeromq.ZMQ.Context' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.conversantmedia.util.concurrent.SpinPolicy Class 'com.conversantmedia.util.concurrent.SpinPolicy' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.fasterxml.jackson.core.JsonGenerationException Class 'com.fasterxml.jackson.core.JsonGenerationException' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.fasterxml.jackson.core.JsonGenerator Class 'com.fasterxml.jackson.core.JsonGenerator' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.fasterxml.jackson.core.JsonParser Class 'com.fasterxml.jackson.core.JsonParser' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.fasterxml.jackson.core.JsonProcessingException Class 'com.fasterxml.jackson.core.JsonProcessingException' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.fasterxml.jackson.databind.DeserializationContext Class 'com.fasterxml.jackson.databind.DeserializationContext' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.fasterxml.jackson.databind.JsonMappingException Class 'com.fasterxml.jackson.databind.JsonMappingException' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.fasterxml.jackson.databind.ObjectMapper Class 'com.fasterxml.jackson.databind.ObjectMapper' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.fasterxml.jackson.databind.ObjectWriter Class 'com.fasterxml.jackson.databind.ObjectWriter' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.fasterxml.jackson.databind.SerializerProvider Class 'com.fasterxml.jackson.databind.SerializerProvider' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.lmax.disruptor.RingBuffer Class 'com.lmax.disruptor.RingBuffer' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.lmax.disruptor.Sequence Class 'com.lmax.disruptor.Sequence' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class javax.jms.Destination Class 'javax.jms.Destination' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class javax.jms.JMSException Class 'javax.jms.JMSException' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class javax.jms.Message Class 'javax.jms.Message' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class javax.jms.MessageConsumer Class 'javax.jms.MessageConsumer' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class javax.jms.MessageProducer Class 'javax.jms.MessageProducer' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class javax.jms.Session Class 'javax.jms.Session' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class javax.mail.Message.RecipientType Class 'javax.mail.Message.RecipientType' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class javax.mail.MessagingException Class 'javax.mail.MessagingException' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class javax.mail.Session Class 'javax.mail.Session' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class javax.mail.internet.InternetHeaders Class 'javax.mail.internet.InternetHeaders' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class javax.mail.internet.MimeMessage Class 'javax.mail.internet.MimeMessage' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class javax.mail.internet.MimeMultipart Class 'javax.mail.internet.MimeMultipart' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class org.apache.commons.csv.CSVFormat Class 'org.apache.commons.csv.CSVFormat' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class org.apache.commons.csv.QuoteMode Class 'org.apache.commons.csv.QuoteMode' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class org.apache.kafka.clients.producer.Producer Class 'org.apache.kafka.clients.producer.Producer' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class org.fusesource.jansi.AnsiRenderer.Code Class 'org.fusesource.jansi.AnsiRenderer.Code' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class org.zeromq.ZMQ.Context Class 'org.zeromq.ZMQ.Context' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.

Semantic

Difference Code Element Description
java.annotation.attributeAdded parameter org.apache.logging.log4j.core.appender.NullAppender org.apache.logging.log4j.core.appender.NullAppender::createAppender(===java.lang.String===) Attribute 'org.apache.logging.log4j.core.config.plugins.PluginAttribute' of annotation '@org.apache.logging.log4j.core.config.plugins.PluginAttribute(value = "name", defaultString = "null")' is now explicitly set.
java.field.enumConstantOrderChanged field org.apache.logging.log4j.core.util.datetime.FixedDateFormat.FixedFormat.ISO8601_PERIOD The enum constant was defined on position 14 but is now on 17. The user code can break if it relies on the return value of the "ordinal()" method.
java.generics.elementNowParameterized method java.lang.Object org.apache.logging.log4j.core.util.Loader::newInstanceOf(java.lang.String) throws java.lang.ClassNotFoundException, java.lang.IllegalAccessException, java.lang.InstantiationException, java.lang.NoSuchMethodException, java.lang.reflect.InvocationTargetException Element now defines formal type parameters.
java.generics.elementNowParameterized class org.apache.logging.log4j.core.appender.AsyncAppender.Builder Element now defines formal type parameters.
java.generics.elementNowParameterized class org.apache.logging.log4j.core.appender.OutputStreamAppender.Builder Element now defines formal type parameters.
java.generics.elementNowParameterized class org.apache.logging.log4j.core.appender.WriterAppender.Builder Element now defines formal type parameters.
java.generics.elementNowParameterized class org.apache.logging.log4j.core.appender.mom.JmsAppender.Builder Element now defines formal type parameters.
java.method.addedToInterface method void org.apache.logging.log4j.core.appender.rolling.DirectFileRolloverStrategy::clearCurrentFileName() Method was added to an interface.

org.apache.logging.log4j:log4j-couchdb:jar:2.11.1 vs org.apache.logging.log4j:log4j-couchdb:jar:2.11.2

The summary of the API changes between artifacts org.apache.logging.log4j:log4j-couchdb:jar:2.11.1 and org.apache.logging.log4j:log4j-couchdb:jar:2.11.2.

Breaking Changes

Semantic

Difference Code Element Description
java.class.nonPublicPartOfAPI class org.lightcouch.CouchDbConfig Class 'org.lightcouch.CouchDbConfig' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).

org.apache.logging.log4j:log4j-flume-ng:jar:2.11.1 vs org.apache.logging.log4j:log4j-flume-ng:jar:2.11.2

The summary of the API changes between artifacts org.apache.logging.log4j:log4j-flume-ng:jar:2.11.1 and org.apache.logging.log4j:log4j-flume-ng:jar:2.11.2.

Breaking Changes

Source

Difference Code Element Description
java.generics.formalTypeParameterAdded class org.apache.logging.log4j.core.appender.AsyncAppender.Builder A new formal type parameter added to element: 'B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>>'.
java.method.returnTypeTypeParametersChanged method org.apache.logging.log4j.core.appender.AsyncAppender.Builder org.apache.logging.log4j.core.appender.AsyncAppender.Builder::setFilter(org.apache.logging.log4j.core.Filter) The return type changed from 'org.apache.logging.log4j.core.appender.AsyncAppender.Builder' to 'B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>'.

Semantic

Difference Code Element Description
java.class.nonPublicPartOfAPI class com.sleepycat.je.cleaner.UtilizationCalculator.AverageSize Class 'com.sleepycat.je.cleaner.UtilizationCalculator.AverageSize' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).
java.class.nonPublicPartOfAPI class com.sleepycat.je.log.JEFileFilter Class 'com.sleepycat.je.log.JEFileFilter' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).
java.class.nonPublicPartOfAPI class com.sleepycat.je.log.LogBufferPool Class 'com.sleepycat.je.log.LogBufferPool' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).
java.class.nonPublicPartOfAPI class com.sleepycat.je.tree.Tree.SplitInfo Class 'com.sleepycat.je.tree.Tree.SplitInfo' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).
java.class.nonPublicPartOfAPI class com.sleepycat.je.txn.LockAttemptResult Class 'com.sleepycat.je.txn.LockAttemptResult' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).
java.class.nonPublicPartOfAPI class com.sleepycat.je.txn.Txn.DatabaseCleanupInfo Class 'com.sleepycat.je.txn.Txn.DatabaseCleanupInfo' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).
java.class.nonPublicPartOfAPI class org.apache.logging.log4j.core.async.AsyncLoggerDisruptor Class 'org.apache.logging.log4j.core.async.AsyncLoggerDisruptor' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).
java.class.nonPublicPartOfAPI class org.apache.logging.log4j.core.async.RingBufferLogEvent.Factory Class 'org.apache.logging.log4j.core.async.RingBufferLogEvent.Factory' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).
java.class.nonPublicPartOfAPI class org.apache.logging.log4j.core.util.CronExpression.ValueSet Class 'org.apache.logging.log4j.core.util.CronExpression.ValueSet' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).

Potentially Breaking Changes

Binary

Difference Code Element Description
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.AsyncAppender.Builder Non-final class now inherits from 'org.apache.logging.log4j.core.filter.AbstractFilterable.Builder<B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>>'.
java.missing.newClass missing-class com.lmax.disruptor.RingBuffer Class 'com.lmax.disruptor.RingBuffer' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class org.apache.flume.agent.embedded.EmbeddedAgent Class 'org.apache.flume.agent.embedded.EmbeddedAgent' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.lmax.disruptor.RingBuffer Class 'com.lmax.disruptor.RingBuffer' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class org.apache.flume.agent.embedded.EmbeddedAgent Class 'org.apache.flume.agent.embedded.EmbeddedAgent' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.

Source

Difference Code Element Description
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.AsyncAppender.Builder Non-final class now inherits from 'org.apache.logging.log4j.core.filter.AbstractFilterable.Builder<B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>>'.
java.missing.newClass missing-class com.lmax.disruptor.RingBuffer Class 'com.lmax.disruptor.RingBuffer' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.newClass missing-class org.apache.flume.agent.embedded.EmbeddedAgent Class 'org.apache.flume.agent.embedded.EmbeddedAgent' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.lmax.disruptor.RingBuffer Class 'com.lmax.disruptor.RingBuffer' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class org.apache.flume.agent.embedded.EmbeddedAgent Class 'org.apache.flume.agent.embedded.EmbeddedAgent' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.

Semantic

Difference Code Element Description
java.class.externalClassExposedInAPI class org.apache.logging.log4j.status.StatusLogger A class from supplementary archives is used in a public capacity in the API.
java.class.externalClassExposedInAPI interface org.apache.logging.log4j.status.StatusListener A class from supplementary archives is used in a public capacity in the API.
java.generics.elementNowParameterized class org.apache.logging.log4j.core.appender.AsyncAppender.Builder Element now defines formal type parameters.

org.apache.logging.log4j:log4j-iostreams:jar:2.11.1 vs org.apache.logging.log4j:log4j-iostreams:jar:2.11.2

The summary of the API changes between artifacts org.apache.logging.log4j:log4j-iostreams:jar:2.11.1 and org.apache.logging.log4j:log4j-iostreams:jar:2.11.2.

org.apache.logging.log4j:log4j-jcl:jar:2.11.1 vs org.apache.logging.log4j:log4j-jcl:jar:2.11.2

The summary of the API changes between artifacts org.apache.logging.log4j:log4j-jcl:jar:2.11.1 and org.apache.logging.log4j:log4j-jcl:jar:2.11.2.

org.apache.logging.log4j:log4j-jdbc-dbcp2:jar:2.11.1 vs org.apache.logging.log4j:log4j-jdbc-dbcp2:jar:2.11.2

The summary of the API changes between artifacts org.apache.logging.log4j:log4j-jdbc-dbcp2:jar:2.11.1 and org.apache.logging.log4j:log4j-jdbc-dbcp2:jar:2.11.2.

Potentially Breaking Changes

Semantic

Difference Code Element Description
java.class.externalClassExposedInAPI class org.apache.commons.dbcp2.AbandonedTrace A class from supplementary archives is used in a public capacity in the API.
java.class.externalClassExposedInAPI class org.apache.commons.dbcp2.PoolableConnection A class from supplementary archives is used in a public capacity in the API.
java.class.externalClassExposedInAPI class org.apache.commons.dbcp2.PoolableConnectionFactory A class from supplementary archives is used in a public capacity in the API.
java.class.externalClassExposedInAPI enum org.apache.commons.pool2.PooledObjectState A class from supplementary archives is used in a public capacity in the API.
java.class.externalClassExposedInAPI interface org.apache.commons.dbcp2.ConnectionFactory A class from supplementary archives is used in a public capacity in the API.
java.class.externalClassExposedInAPI interface org.apache.commons.pool2.ObjectPool<T extends java.lang.Object> A class from supplementary archives is used in a public capacity in the API.
java.class.externalClassExposedInAPI interface org.apache.commons.pool2.PooledObject<T extends java.lang.Object> A class from supplementary archives is used in a public capacity in the API.

org.apache.logging.log4j:log4j-jmx-gui:jar:2.11.1 vs org.apache.logging.log4j:log4j-jmx-gui:jar:2.11.2

The summary of the API changes between artifacts org.apache.logging.log4j:log4j-jmx-gui:jar:2.11.1 and org.apache.logging.log4j:log4j-jmx-gui:jar:2.11.2.

org.apache.logging.log4j:log4j-jpa:jar:2.11.1 vs org.apache.logging.log4j:log4j-jpa:jar:2.11.2

The summary of the API changes between artifacts org.apache.logging.log4j:log4j-jpa:jar:2.11.1 and org.apache.logging.log4j:log4j-jpa:jar:2.11.2.

Breaking Changes

Source

Difference Code Element Description
java.generics.formalTypeParameterAdded class org.apache.logging.log4j.core.appender.AsyncAppender.Builder A new formal type parameter added to element: 'B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>>'.
java.method.returnTypeTypeParametersChanged method org.apache.logging.log4j.core.appender.AsyncAppender.Builder org.apache.logging.log4j.core.appender.AsyncAppender.Builder::setFilter(org.apache.logging.log4j.core.Filter) The return type changed from 'org.apache.logging.log4j.core.appender.AsyncAppender.Builder' to 'B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>'.

Semantic

Difference Code Element Description
java.class.nonPublicPartOfAPI class org.apache.logging.log4j.core.async.AsyncLoggerDisruptor Class 'org.apache.logging.log4j.core.async.AsyncLoggerDisruptor' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).
java.class.nonPublicPartOfAPI class org.apache.logging.log4j.core.async.RingBufferLogEvent.Factory Class 'org.apache.logging.log4j.core.async.RingBufferLogEvent.Factory' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).
java.class.nonPublicPartOfAPI class org.apache.logging.log4j.core.util.CronExpression.ValueSet Class 'org.apache.logging.log4j.core.util.CronExpression.ValueSet' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).

Potentially Breaking Changes

Binary

Difference Code Element Description
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.AsyncAppender.Builder Non-final class now inherits from 'org.apache.logging.log4j.core.filter.AbstractFilterable.Builder<B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>>'.
java.missing.newClass missing-class com.lmax.disruptor.RingBuffer Class 'com.lmax.disruptor.RingBuffer' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.lmax.disruptor.RingBuffer Class 'com.lmax.disruptor.RingBuffer' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.

Source

Difference Code Element Description
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.AsyncAppender.Builder Non-final class now inherits from 'org.apache.logging.log4j.core.filter.AbstractFilterable.Builder<B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>>'.
java.missing.newClass missing-class com.lmax.disruptor.RingBuffer Class 'com.lmax.disruptor.RingBuffer' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.lmax.disruptor.RingBuffer Class 'com.lmax.disruptor.RingBuffer' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.

Semantic

Difference Code Element Description
java.class.externalClassExposedInAPI class org.apache.logging.log4j.status.StatusLogger A class from supplementary archives is used in a public capacity in the API.
java.generics.elementNowParameterized class org.apache.logging.log4j.core.appender.AsyncAppender.Builder Element now defines formal type parameters.

org.apache.logging.log4j:log4j-jul:jar:2.11.1 vs org.apache.logging.log4j:log4j-jul:jar:2.11.2

The summary of the API changes between artifacts org.apache.logging.log4j:log4j-jul:jar:2.11.1 and org.apache.logging.log4j:log4j-jul:jar:2.11.2.

org.apache.logging.log4j:log4j-liquibase:jar:2.11.1 vs org.apache.logging.log4j:log4j-liquibase:jar:2.11.2

The summary of the API changes between artifacts org.apache.logging.log4j:log4j-liquibase:jar:2.11.1 and org.apache.logging.log4j:log4j-liquibase:jar:2.11.2.

org.apache.logging.log4j:log4j-mongodb2:jar:2.11.1 vs org.apache.logging.log4j:log4j-mongodb2:jar:2.11.2

The summary of the API changes between artifacts org.apache.logging.log4j:log4j-mongodb2:jar:2.11.1 and org.apache.logging.log4j:log4j-mongodb2:jar:2.11.2.

Breaking Changes

Semantic

Difference Code Element Description
java.class.nonPublicPartOfAPI class com.mongodb.OutMessage Class 'com.mongodb.OutMessage' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).
java.class.nonPublicPartOfAPI class com.mongodb.Response Class 'com.mongodb.Response' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).

org.apache.logging.log4j:log4j-mongodb3:jar:2.11.1 vs org.apache.logging.log4j:log4j-mongodb3:jar:2.11.2

The summary of the API changes between artifacts org.apache.logging.log4j:log4j-mongodb3:jar:2.11.1 and org.apache.logging.log4j:log4j-mongodb3:jar:2.11.2.

Potentially Breaking Changes

Semantic

Difference Code Element Description
java.class.externalClassExposedInAPI enum org.bson.UuidRepresentation A class from supplementary archives is used in a public capacity in the API.

org.apache.logging.log4j:log4j-osgi:jar:2.11.1 vs org.apache.logging.log4j:log4j-osgi:jar:2.11.2

The summary of the API changes between artifacts org.apache.logging.log4j:log4j-osgi:jar:2.11.1 and org.apache.logging.log4j:log4j-osgi:jar:2.11.2.

org.apache.logging.log4j:log4j-perf:jar:2.11.1 vs org.apache.logging.log4j:log4j-perf:jar:2.11.2

The summary of the API changes between artifacts org.apache.logging.log4j:log4j-perf:jar:2.11.1 and org.apache.logging.log4j:log4j-perf:jar:2.11.2.

Breaking Changes

Binary

Difference Code Element Description
java.method.returnTypeChanged method void org.apache.logging.log4j.perf.jmh.AbstractStringLayoutStringEncodingBenchmark::baseline() The return type changed from 'void' to 'long'.
java.method.returnTypeChanged method void org.apache.logging.log4j.perf.jmh.AbstractStringLayoutStringEncodingBenchmark::iso8859_1GetBytes() The return type changed from 'void' to 'long'.
java.method.returnTypeChanged method void org.apache.logging.log4j.perf.jmh.AbstractStringLayoutStringEncodingBenchmark::usAsciiGetBytes() The return type changed from 'void' to 'long'.
java.method.returnTypeChanged method void org.apache.logging.log4j.perf.jmh.AbstractStringLayoutStringEncodingBenchmark::utf16GetBytes() The return type changed from 'void' to 'long'.
java.method.returnTypeChanged method void org.apache.logging.log4j.perf.jmh.AbstractStringLayoutStringEncodingBenchmark::utf8GetBytes() The return type changed from 'void' to 'long'.

Source

Difference Code Element Description
java.generics.formalTypeParameterAdded class org.apache.logging.log4j.core.appender.AsyncAppender.Builder A new formal type parameter added to element: 'B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>>'.
java.method.returnTypeTypeParametersChanged method org.apache.logging.log4j.core.appender.AsyncAppender.Builder org.apache.logging.log4j.core.appender.AsyncAppender.Builder::setFilter(org.apache.logging.log4j.core.Filter) The return type changed from 'org.apache.logging.log4j.core.appender.AsyncAppender.Builder' to 'B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>'.

Semantic

Difference Code Element Description
java.class.nonPublicPartOfAPI class org.apache.logging.log4j.core.async.AsyncLoggerDisruptor Class 'org.apache.logging.log4j.core.async.AsyncLoggerDisruptor' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).
java.class.nonPublicPartOfAPI class org.apache.logging.log4j.core.async.RingBufferLogEvent.Factory Class 'org.apache.logging.log4j.core.async.RingBufferLogEvent.Factory' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).
java.class.nonPublicPartOfAPI class org.apache.logging.log4j.core.util.CronExpression.ValueSet Class 'org.apache.logging.log4j.core.util.CronExpression.ValueSet' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).
java.class.nonPublicPartOfAPI class org.openjdk.jmh.infra.BlackholeL2 Class 'org.openjdk.jmh.infra.BlackholeL2' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).

Potentially Breaking Changes

Binary

Difference Code Element Description
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.AsyncAppender.Builder Non-final class now inherits from 'org.apache.logging.log4j.core.filter.AbstractFilterable.Builder<B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>>'.

Source

Difference Code Element Description
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.AsyncAppender.Builder Non-final class now inherits from 'org.apache.logging.log4j.core.filter.AbstractFilterable.Builder<B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>>'.
java.method.returnTypeChanged method void org.apache.logging.log4j.perf.jmh.AbstractStringLayoutStringEncodingBenchmark::baseline() The return type changed from 'void' to 'long'.
java.method.returnTypeChanged method void org.apache.logging.log4j.perf.jmh.AbstractStringLayoutStringEncodingBenchmark::iso8859_1GetBytes() The return type changed from 'void' to 'long'.
java.method.returnTypeChanged method void org.apache.logging.log4j.perf.jmh.AbstractStringLayoutStringEncodingBenchmark::usAsciiGetBytes() The return type changed from 'void' to 'long'.
java.method.returnTypeChanged method void org.apache.logging.log4j.perf.jmh.AbstractStringLayoutStringEncodingBenchmark::utf16GetBytes() The return type changed from 'void' to 'long'.
java.method.returnTypeChanged method void org.apache.logging.log4j.perf.jmh.AbstractStringLayoutStringEncodingBenchmark::utf8GetBytes() The return type changed from 'void' to 'long'.

Semantic

Difference Code Element Description
java.generics.elementNowParameterized class org.apache.logging.log4j.core.appender.AsyncAppender.Builder Element now defines formal type parameters.

org.apache.logging.log4j:log4j-slf4j-impl:jar:2.11.1 vs org.apache.logging.log4j:log4j-slf4j-impl:jar:2.11.2

The summary of the API changes between artifacts org.apache.logging.log4j:log4j-slf4j-impl:jar:2.11.1 and org.apache.logging.log4j:log4j-slf4j-impl:jar:2.11.2.

org.apache.logging.log4j:log4j-slf4j18-impl:jar:2.11.1 vs org.apache.logging.log4j:log4j-slf4j18-impl:jar:2.11.2

The summary of the API changes between artifacts org.apache.logging.log4j:log4j-slf4j18-impl:jar:2.11.1 and org.apache.logging.log4j:log4j-slf4j18-impl:jar:2.11.2.

org.apache.logging.log4j:log4j-taglib:jar:2.11.1 vs org.apache.logging.log4j:log4j-taglib:jar:2.11.2

The summary of the API changes between artifacts org.apache.logging.log4j:log4j-taglib:jar:2.11.1 and org.apache.logging.log4j:log4j-taglib:jar:2.11.2.

Breaking Changes

Semantic

Difference Code Element Description
java.class.nonPublicPartOfAPI class org.apache.logging.log4j.taglib.Log4jTaglibLogger Class 'org.apache.logging.log4j.taglib.Log4jTaglibLogger' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).

org.apache.logging.log4j:log4j-to-slf4j:jar:2.11.1 vs org.apache.logging.log4j:log4j-to-slf4j:jar:2.11.2

The summary of the API changes between artifacts org.apache.logging.log4j:log4j-to-slf4j:jar:2.11.1 and org.apache.logging.log4j:log4j-to-slf4j:jar:2.11.2.

org.apache.logging.log4j:log4j-web:jar:2.11.1 vs org.apache.logging.log4j:log4j-web:jar:2.11.2

The summary of the API changes between artifacts org.apache.logging.log4j:log4j-web:jar:2.11.1 and org.apache.logging.log4j:log4j-web:jar:2.11.2.

Breaking Changes

Source

Difference Code Element Description
java.generics.formalTypeParameterAdded class org.apache.logging.log4j.core.appender.AsyncAppender.Builder A new formal type parameter added to element: 'B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>>'.
java.method.returnTypeTypeParametersChanged method org.apache.logging.log4j.core.appender.AsyncAppender.Builder org.apache.logging.log4j.core.appender.AsyncAppender.Builder::setFilter(org.apache.logging.log4j.core.Filter) The return type changed from 'org.apache.logging.log4j.core.appender.AsyncAppender.Builder' to 'B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>'.

Semantic

Difference Code Element Description
java.class.nonPublicPartOfAPI class org.apache.logging.log4j.core.async.AsyncLoggerDisruptor Class 'org.apache.logging.log4j.core.async.AsyncLoggerDisruptor' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).
java.class.nonPublicPartOfAPI class org.apache.logging.log4j.core.async.RingBufferLogEvent.Factory Class 'org.apache.logging.log4j.core.async.RingBufferLogEvent.Factory' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).
java.class.nonPublicPartOfAPI class org.apache.logging.log4j.core.util.CronExpression.ValueSet Class 'org.apache.logging.log4j.core.util.CronExpression.ValueSet' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).
java.class.nonPublicPartOfAPI interface org.apache.logging.log4j.web.Log4jWebLifeCycle Class 'org.apache.logging.log4j.web.Log4jWebLifeCycle' is indirectly included in the API (by the means of method return type for example) but the class is not accessible (neither public nor protected).

Potentially Breaking Changes

Binary

Difference Code Element Description
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.AsyncAppender.Builder Non-final class now inherits from 'org.apache.logging.log4j.core.filter.AbstractFilterable.Builder<B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>>'.
java.missing.newClass missing-class com.lmax.disruptor.RingBuffer Class 'com.lmax.disruptor.RingBuffer' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.lmax.disruptor.RingBuffer Class 'com.lmax.disruptor.RingBuffer' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.

Source

Difference Code Element Description
java.class.nonFinalClassInheritsFromNewClass class org.apache.logging.log4j.core.appender.AsyncAppender.Builder Non-final class now inherits from 'org.apache.logging.log4j.core.filter.AbstractFilterable.Builder<B extends org.apache.logging.log4j.core.appender.AsyncAppender.Builder<B>>'.
java.missing.newClass missing-class com.lmax.disruptor.RingBuffer Class 'com.lmax.disruptor.RingBuffer' could not be found in the archives of the new API. It has been detected as contributing to the API and thus the analysis results may be incorrect.
java.missing.oldClass missing-class com.lmax.disruptor.RingBuffer Class 'com.lmax.disruptor.RingBuffer' could not be found in the archives of the old API. It has been detected as contributing to the API and thus the analysis results may be incorrect.

Semantic

Difference Code Element Description
java.generics.elementNowParameterized class org.apache.logging.log4j.core.appender.AsyncAppender.Builder Element now defines formal type parameters.