| [ |
| { |
| "extension": "revapi.filter", |
| "configuration": { |
| "elements": { |
| "exclude": [ |
| "class com\\.lmax\\.disruptor\\.dsl\\.Disruptor", |
| "class org\\.apache\\.logging\\.log4j\\.corel\\.impl\\.ContextAnchor", |
| "class org\\.apache\\.logging\\.log4j\\.core\\.appender\\.db\\.AbstractDatabaseManager\\.AbstractFactoryData", |
| "class org\\.apache\\.logging\\.log4j\\.core\\.async\\.AsyncLoggerDisruptor", |
| "class org\\.apache\\.logging\\.log4j\\.core\\.async\\.RingBufferLogEvent\\.Factory", |
| "class org\\.apache\\.logging\\.log4j\\.core\\.layout\\.AbstractJacksonLayout", |
| "class org\\.apache\\.logging\\.log4j\\.core\\.layout\\.AbstractJacksonLayout\\.ResolvableKeyValuePair", |
| "class org\\.apache\\.logging\\.log4j\\.core\\.net\\.SmtpManager\\.FactoryData", |
| "class org\\.apache\\.logging\\.log4j\\.core\\.net\\.TcpSocketManager\\.FactoryData", |
| "class org\\.apache\\.logging\\.log4j\\.core\\.util\\.CronExpression\\.ValueSet", |
| "class org\\.apache\\.logging\\.log4j\\.core\\.util\\.datetime\\.FastDatePrinter\\.NumberRule", |
| "class org\\.apache\\.logging\\.log4j\\.core\\.util\\.datetime\\.FastDatePrinter\\.Rule", |
| "class org\\.apache\\.logging\\.log4j\\.core\\.config\\.ConfigurationSource", |
| { |
| "matcher": "java-package", |
| "match": "/com\\.fasterxml\\.jackson(\\..*)?/" |
| }, |
| { |
| "matcher": "java-package", |
| "match": "/org\\.apache\\.logging\\.log4j\\.core\\.jmx(\\..*)?/" |
| }, |
| { |
| "matcher": "java-package", |
| "match": "/org\\.apache\\.logging\\.log4j\\.core\\.jackson(\\..*)?/" |
| }, |
| { |
| "matcher": "java-package", |
| "match": "/org\\.apache\\.logging\\.log4j\\.core\\.time.internal(\\..*)?/" |
| } |
| ] |
| } |
| } |
| }, |
| { |
| "extension": "revapi.ignore", |
| "configuration": [ |
| { |
| "code": "java.class.noLongerImplementsInterface", |
| "old": "class org.apache.logging.log4j.core.script.ScriptManager", |
| "new": "class org.apache.logging.log4j.core.script.ScriptManager", |
| "interface": "java.io.Serializable", |
| "justification": "ScriptManager is an internal class and has no need to implement Serializable." |
| }, |
| { |
| "code": "java.method.numberOfParametersChanged", |
| "old": "method void org.apache.logging.log4j.core.script.ScriptManager::<init>(org.apache.logging.log4j.core.config.Configuration, org.apache.logging.log4j.core.util.WatchManager)", |
| "new": "method void org.apache.logging.log4j.core.script.ScriptManager::<init>(org.apache.logging.log4j.core.config.Configuration, org.apache.logging.log4j.core.util.WatchManager, java.lang.String)", |
| "justification": "LOG4J2-2486 - Require enabled script languages to be specified in a system property" |
| }, |
| { |
| "code": "java.method.returnTypeChanged", |
| "old": "method void org.apache.logging.log4j.core.script.ScriptManager::addScript(org.apache.logging.log4j.core.script.AbstractScript)", |
| "new": "method boolean org.apache.logging.log4j.core.script.ScriptManager::addScript(org.apache.logging.log4j.core.script.AbstractScript)", |
| "justification": "LOG4J2-2486 - Require enabled script languages to be specified in a system property" |
| }, |
| { |
| "code": "java.annotation.removed", |
| "old": "method org.apache.logging.log4j.core.config.LoggerConfig org.apache.logging.log4j.core.config.LoggerConfig::createLogger(boolean, org.apache.logging.log4j.Level, java.lang.String, java.lang.String, org.apache.logging.log4j.core.config.AppenderRef[], org.apache.logging.log4j.core.config.Property[], org.apache.logging.log4j.core.config.Configuration, org.apache.logging.log4j.core.Filter) @ org.apache.logging.log4j.core.async.AsyncLoggerConfig.RootLogger", |
| "new": "method org.apache.logging.log4j.core.config.LoggerConfig org.apache.logging.log4j.core.config.LoggerConfig::createLogger(boolean, org.apache.logging.log4j.Level, java.lang.String, java.lang.String, org.apache.logging.log4j.core.config.AppenderRef[], org.apache.logging.log4j.core.config.Property[], org.apache.logging.log4j.core.config.Configuration, org.apache.logging.log4j.core.Filter) @ org.apache.logging.log4j.core.async.AsyncLoggerConfig.RootLogger", |
| "annotation": "@org.apache.logging.log4j.core.config.plugins.PluginFactory", |
| "justification": "LoggerConfig now uses a Builder" |
| }, |
| { |
| "code": "java.annotation.removed", |
| "old": "method org.apache.logging.log4j.core.config.LoggerConfig org.apache.logging.log4j.core.async.AsyncLoggerConfig.RootLogger::createLogger(java.lang.String, org.apache.logging.log4j.Level, java.lang.String, org.apache.logging.log4j.core.config.AppenderRef[], org.apache.logging.log4j.core.config.Property[], org.apache.logging.log4j.core.config.Configuration, org.apache.logging.log4j.core.Filter)", |
| "new": "method org.apache.logging.log4j.core.config.LoggerConfig org.apache.logging.log4j.core.async.AsyncLoggerConfig.RootLogger::createLogger(java.lang.String, org.apache.logging.log4j.Level, java.lang.String, org.apache.logging.log4j.core.config.AppenderRef[], org.apache.logging.log4j.core.config.Property[], org.apache.logging.log4j.core.config.Configuration, org.apache.logging.log4j.core.Filter)", |
| "annotation": "@org.apache.logging.log4j.core.config.plugins.PluginFactory", |
| "justification": "AsyncLoggerConfig.RootLogger now uses a Builder" |
| }, |
| { |
| "code": "java.annotation.removed", |
| "old": "method org.apache.logging.log4j.core.config.LoggerConfig org.apache.logging.log4j.core.async.AsyncLoggerConfig::createLogger(boolean, org.apache.logging.log4j.Level, java.lang.String, java.lang.String, org.apache.logging.log4j.core.config.AppenderRef[], org.apache.logging.log4j.core.config.Property[], org.apache.logging.log4j.core.config.Configuration, org.apache.logging.log4j.core.Filter)", |
| "new": "method org.apache.logging.log4j.core.config.LoggerConfig org.apache.logging.log4j.core.async.AsyncLoggerConfig::createLogger(boolean, org.apache.logging.log4j.Level, java.lang.String, java.lang.String, org.apache.logging.log4j.core.config.AppenderRef[], org.apache.logging.log4j.core.config.Property[], org.apache.logging.log4j.core.config.Configuration, org.apache.logging.log4j.core.Filter)", |
| "annotation": "@org.apache.logging.log4j.core.config.plugins.PluginFactory", |
| "justification": "AsyncLoggerConfig now uses a Builder" |
| }, |
| { |
| "code": "java.annotation.removed", |
| "old": "method org.apache.logging.log4j.core.config.LoggerConfig org.apache.logging.log4j.core.config.LoggerConfig::createLogger(boolean, org.apache.logging.log4j.Level, java.lang.String, java.lang.String, org.apache.logging.log4j.core.config.AppenderRef[], org.apache.logging.log4j.core.config.Property[], org.apache.logging.log4j.core.config.Configuration, org.apache.logging.log4j.core.Filter) @ org.apache.logging.log4j.core.config.LoggerConfig.RootLogger", |
| "new": "method org.apache.logging.log4j.core.config.LoggerConfig org.apache.logging.log4j.core.config.LoggerConfig::createLogger(boolean, org.apache.logging.log4j.Level, java.lang.String, java.lang.String, org.apache.logging.log4j.core.config.AppenderRef[], org.apache.logging.log4j.core.config.Property[], org.apache.logging.log4j.core.config.Configuration, org.apache.logging.log4j.core.Filter) @ org.apache.logging.log4j.core.config.LoggerConfig.RootLogger", |
| "annotation": "@org.apache.logging.log4j.core.config.plugins.PluginFactory", |
| "justification": "LoggerConfig now uses a Builder" |
| }, |
| { |
| "code": "java.annotation.removed", |
| "old": "method org.apache.logging.log4j.core.config.LoggerConfig org.apache.logging.log4j.core.config.LoggerConfig.RootLogger::createLogger(java.lang.String, org.apache.logging.log4j.Level, java.lang.String, org.apache.logging.log4j.core.config.AppenderRef[], org.apache.logging.log4j.core.config.Property[], org.apache.logging.log4j.core.config.Configuration, org.apache.logging.log4j.core.Filter)", |
| "new": "method org.apache.logging.log4j.core.config.LoggerConfig org.apache.logging.log4j.core.config.LoggerConfig.RootLogger::createLogger(java.lang.String, org.apache.logging.log4j.Level, java.lang.String, org.apache.logging.log4j.core.config.AppenderRef[], org.apache.logging.log4j.core.config.Property[], org.apache.logging.log4j.core.config.Configuration, org.apache.logging.log4j.core.Filter)", |
| "annotation": "@org.apache.logging.log4j.core.config.plugins.PluginFactory", |
| "justification": "LoggerConfig.RootLogger now uses a Builder" |
| }, |
| { |
| "code": "java.annotation.removed", |
| "old": "method org.apache.logging.log4j.core.config.LoggerConfig org.apache.logging.log4j.core.config.LoggerConfig::createLogger(boolean, org.apache.logging.log4j.Level, java.lang.String, java.lang.String, org.apache.logging.log4j.core.config.AppenderRef[], org.apache.logging.log4j.core.config.Property[], org.apache.logging.log4j.core.config.Configuration, org.apache.logging.log4j.core.Filter)", |
| "new": "method org.apache.logging.log4j.core.config.LoggerConfig org.apache.logging.log4j.core.config.LoggerConfig::createLogger(boolean, org.apache.logging.log4j.Level, java.lang.String, java.lang.String, org.apache.logging.log4j.core.config.AppenderRef[], org.apache.logging.log4j.core.config.Property[], org.apache.logging.log4j.core.config.Configuration, org.apache.logging.log4j.core.Filter)", |
| "annotation": "@org.apache.logging.log4j.core.config.plugins.PluginFactory", |
| "justification": "LoggerConfig now uses a Builder" |
| }, |
| { |
| "code": "java.method.returnTypeChanged", |
| "old": "method java.lang.String org.apache.logging.log4j.core.lookup.StrSubstitutor::resolveVariable(org.apache.logging.log4j.core.LogEvent, java.lang.String, java.lang.StringBuilder, int, int)", |
| "new": "method org.apache.logging.log4j.core.lookup.LookupResult org.apache.logging.log4j.core.lookup.StrSubstitutor::resolveVariable(org.apache.logging.log4j.core.LogEvent, java.lang.String, java.lang.StringBuilder, int, int)", |
| "justification": "LOG4J2-3317: Fix RoutingAppender backcompat while improving lookup security" |
| }, |
| { |
| "code": "java.annotation.removed", |
| "old": "parameter org.apache.logging.log4j.core.config.Property org.apache.logging.log4j.core.config.Property::createProperty(===java.lang.String===, java.lang.String)", |
| "new": "parameter org.apache.logging.log4j.core.config.Property org.apache.logging.log4j.core.config.Property::createProperty(===java.lang.String===, java.lang.String)", |
| "annotation": "@org.apache.logging.log4j.core.config.plugins.PluginAttribute(\"name\")", |
| "justification": "LOG4J2-3317: Fix RoutingAppender backcompat while improving lookup security" |
| }, |
| { |
| "code": "java.annotation.removed", |
| "old": "parameter org.apache.logging.log4j.core.config.Property org.apache.logging.log4j.core.config.Property::createProperty(java.lang.String, ===java.lang.String===)", |
| "new": "parameter org.apache.logging.log4j.core.config.Property org.apache.logging.log4j.core.config.Property::createProperty(java.lang.String, ===java.lang.String===)", |
| "annotation": "@org.apache.logging.log4j.core.config.plugins.PluginValue(\"value\")", |
| "justification": "LOG4J2-3317: Fix RoutingAppender backcompat while improving lookup security" |
| }, |
| { |
| "code": "java.annotation.removed", |
| "old": "method org.apache.logging.log4j.core.config.Property org.apache.logging.log4j.core.config.Property::createProperty(java.lang.String, java.lang.String)", |
| "new": "method org.apache.logging.log4j.core.config.Property org.apache.logging.log4j.core.config.Property::createProperty(java.lang.String, java.lang.String)", |
| "annotation": "@org.apache.logging.log4j.core.config.plugins.PluginFactory", |
| "justification": "LOG4J2-3317: Fix RoutingAppender backcompat while improving lookup security" |
| }, |
| { |
| "code": "java.field.constantValueChanged", |
| "old": "field org.apache.logging.log4j.core.config.ConfigurationFactory.AUTHORIZATION_PROVIDER", |
| "new": "field org.apache.logging.log4j.core.config.ConfigurationFactory.AUTHORIZATION_PROVIDER", |
| "justification": "Added support for a second prefix" |
| } |
| ] |
| } |
| ] |