diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 2e53eb56189..41298c950eb 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -30,7 +30,7 @@ jobs: build: if: github.actor != 'dependabot[bot]' - uses: apache/logging-parent/.github/workflows/build-reusable.yaml@rel/12.0.0 + uses: apache/logging-parent/.github/workflows/build-reusable.yaml@rel/12.1.0 secrets: DV_ACCESS_TOKEN: ${{ startsWith(github.ref_name, 'release/') && '' || secrets.GE_ACCESS_TOKEN }} with: @@ -41,7 +41,7 @@ jobs: deploy-snapshot: needs: build if: github.repository == 'apache/logging-log4j2' && github.ref_name == 'main' - uses: apache/logging-parent/.github/workflows/deploy-snapshot-reusable.yaml@rel/12.0.0 + uses: apache/logging-parent/.github/workflows/deploy-snapshot-reusable.yaml@rel/12.1.0 # Secrets for deployments secrets: NEXUS_USERNAME: ${{ secrets.NEXUS_USER }} @@ -50,7 +50,7 @@ jobs: deploy-release: needs: build if: github.repository == 'apache/logging-log4j2' && startsWith(github.ref_name, 'release/') - uses: apache/logging-parent/.github/workflows/deploy-release-reusable.yaml@rel/12.0.0 + uses: apache/logging-parent/.github/workflows/deploy-release-reusable.yaml@rel/12.1.0 # Secrets for deployments secrets: GPG_SECRET_KEY: ${{ secrets.LOGGING_GPG_SECRET_KEY }} @@ -68,7 +68,7 @@ jobs: needs: [ deploy-snapshot, deploy-release ] if: ${{ always() && (needs.deploy-snapshot.result == 'success' || needs.deploy-release.result == 'success') }} name: "verify-reproducibility (${{ needs.deploy-release.result == 'success' && needs.deploy-release.outputs.project-version || needs.deploy-snapshot.outputs.project-version }})" - uses: apache/logging-parent/.github/workflows/verify-reproducibility-reusable.yaml@rel/12.0.0 + uses: apache/logging-parent/.github/workflows/verify-reproducibility-reusable.yaml@rel/12.1.0 with: nexus-url: ${{ needs.deploy-release.result == 'success' && needs.deploy-release.outputs.nexus-url || 'https://repository.apache.org/content/groups/snapshots' }} # Encode the `runs-on` input as JSON array diff --git a/.github/workflows/codeql-analysis.yaml b/.github/workflows/codeql-analysis.yaml index 02e71a5223f..91257f2a02e 100644 --- a/.github/workflows/codeql-analysis.yaml +++ b/.github/workflows/codeql-analysis.yaml @@ -30,7 +30,7 @@ permissions: read-all jobs: analyze: - uses: apache/logging-parent/.github/workflows/codeql-analysis-reusable.yaml@rel/12.0.0 + uses: apache/logging-parent/.github/workflows/codeql-analysis-reusable.yaml@rel/12.1.0 with: java-version: 17 # Permissions required to publish Security Alerts diff --git a/.github/workflows/deploy-site.yaml b/.github/workflows/deploy-site.yaml index 518dde66fb6..e4417f9f529 100644 --- a/.github/workflows/deploy-site.yaml +++ b/.github/workflows/deploy-site.yaml @@ -33,7 +33,7 @@ jobs: deploy-site-stg: if: github.repository == 'apache/logging-log4j2' && github.ref_name == 'main' - uses: apache/logging-parent/.github/workflows/deploy-site-reusable.yaml@rel/12.0.0 + uses: apache/logging-parent/.github/workflows/deploy-site-reusable.yaml@rel/12.1.0 # Secrets for committing the generated site secrets: GPG_SECRET_KEY: ${{ secrets.LOGGING_GPG_SECRET_KEY }} @@ -51,7 +51,7 @@ jobs: deploy-site-pro: if: github.repository == 'apache/logging-log4j2' && github.ref_name == 'main-site-pro' - uses: apache/logging-parent/.github/workflows/deploy-site-reusable.yaml@rel/12.0.0 + uses: apache/logging-parent/.github/workflows/deploy-site-reusable.yaml@rel/12.1.0 # Secrets for committing the generated site secrets: GPG_SECRET_KEY: ${{ secrets.LOGGING_GPG_SECRET_KEY }} @@ -81,7 +81,7 @@ jobs: deploy-site-rel: needs: export-version - uses: apache/logging-parent/.github/workflows/deploy-site-reusable.yaml@rel/12.0.0 + uses: apache/logging-parent/.github/workflows/deploy-site-reusable.yaml@rel/12.1.0 # Secrets for committing the generated site secrets: GPG_SECRET_KEY: ${{ secrets.LOGGING_GPG_SECRET_KEY }} diff --git a/.github/workflows/merge-dependabot.yaml b/.github/workflows/merge-dependabot.yaml index 78b626f4306..b4ebee85727 100644 --- a/.github/workflows/merge-dependabot.yaml +++ b/.github/workflows/merge-dependabot.yaml @@ -30,7 +30,7 @@ jobs: build: if: github.repository == 'apache/logging-log4j2' && github.event_name == 'pull_request_target' && github.actor == 'dependabot[bot]' - uses: apache/logging-parent/.github/workflows/build-reusable.yaml@rel/12.0.0 + uses: apache/logging-parent/.github/workflows/build-reusable.yaml@rel/12.1.0 secrets: DV_ACCESS_TOKEN: ${{ secrets.GE_ACCESS_TOKEN }} with: @@ -39,7 +39,7 @@ jobs: merge-dependabot: needs: build - uses: apache/logging-parent/.github/workflows/merge-dependabot-reusable.yaml@rel/12.0.0 + uses: apache/logging-parent/.github/workflows/merge-dependabot-reusable.yaml@rel/12.1.0 permissions: contents: write # to push changelog commits pull-requests: write # to close the PR diff --git a/log4j-async-logger/src/main/java/org/apache/logging/log4j/async/logger/AsyncLoggerConfig.java b/log4j-async-logger/src/main/java/org/apache/logging/log4j/async/logger/AsyncLoggerConfig.java index 338dbfc30f0..99b72de2547 100644 --- a/log4j-async-logger/src/main/java/org/apache/logging/log4j/async/logger/AsyncLoggerConfig.java +++ b/log4j-async-logger/src/main/java/org/apache/logging/log4j/async/logger/AsyncLoggerConfig.java @@ -120,6 +120,7 @@ public void initialize() { } @Override + @SuppressWarnings("BoxedPrimitiveEquality") protected void log(final LogEvent event, final Predicate predicate) { // See LOG4J2-2301 if (predicate == null diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/filter/MutableThreadContextMapFilter.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/filter/MutableThreadContextMapFilter.java index f694a19b6fd..c991748621e 100644 --- a/log4j-core/src/main/java/org/apache/logging/log4j/core/filter/MutableThreadContextMapFilter.java +++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/filter/MutableThreadContextMapFilter.java @@ -401,8 +401,8 @@ public void run() { break; } switch (result.status) { - // These results cause changes in the filter - // We call the listeners + // These results cause changes in the filter + // We call the listeners case SUCCESS: case NOT_FOUND: case EMPTY: @@ -410,7 +410,7 @@ public void run() { listener.onEvent(); } break; - // These results do no cause changes in the filter + // These results do no cause changes in the filter case ERROR: case NOT_MODIFIED: break; diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/MainMapLookup.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/MainMapLookup.java index c80e72def5b..a8d3b0397df 100644 --- a/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/MainMapLookup.java +++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/MainMapLookup.java @@ -16,6 +16,7 @@ */ package org.apache.logging.log4j.core.lookup; +import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import java.util.Map; import org.apache.logging.log4j.core.LogEvent; import org.apache.logging.log4j.plugins.Plugin; @@ -75,6 +76,9 @@ public MainMapLookup(final Map map) { * @param args * An application's {@code public static main(String[])} arguments. */ + @SuppressFBWarnings( + value = "HSM_HIDING_METHOD", + justification = "The MapLookup.setMainArguments() method hidden by this one is deprecated.") public static void setMainArguments(final String... args) { if (args == null) { return; diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/time/ClockFactory.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/time/ClockFactory.java index 2bcb5f63db1..7eb38bfc62a 100644 --- a/log4j-core/src/main/java/org/apache/logging/log4j/core/time/ClockFactory.java +++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/time/ClockFactory.java @@ -78,11 +78,10 @@ public Clock clock(final PropertyEnvironment environment) { } return switch (configuration.clock()) { case "SystemMillisClock" -> logSupportedPrecision(new SystemMillisClock()); - case "CachedClock", "org.apache.logging.log4j.core.time.internal.CachedClock" -> logSupportedPrecision( - CachedClock.instance()); - case "CoarseCachedClock", - "org.apache.logging.log4j.core.time.internal.CoarseCachedClock" -> logSupportedPrecision( - CoarseCachedClock.instance()); + case "CachedClock", "org.apache.logging.log4j.core.time.internal.CachedClock" -> + logSupportedPrecision(CachedClock.instance()); + case "CoarseCachedClock", "org.apache.logging.log4j.core.time.internal.CoarseCachedClock" -> + logSupportedPrecision(CoarseCachedClock.instance()); default -> logSupportedPrecision(new SystemClock()); }; } diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/util/internal/instant/InstantPatternDynamicFormatter.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/util/internal/instant/InstantPatternDynamicFormatter.java index 9c93dd34066..a5486f7a500 100644 --- a/log4j-core/src/main/java/org/apache/logging/log4j/core/util/internal/instant/InstantPatternDynamicFormatter.java +++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/util/internal/instant/InstantPatternDynamicFormatter.java @@ -189,7 +189,7 @@ public void formatTo(final StringBuilder buffer, final Instant instant) { switch (formatters.size()) { - // If found an empty pattern, return an empty formatter + // If found an empty pattern, return an empty formatter case 0: return new AbstractFormatter(pattern, locale, timeZone, ChronoUnit.FOREVER) { @Override @@ -198,11 +198,11 @@ public void formatTo(final StringBuilder buffer, final Instant instant) { } }; - // If extracted a single formatter, return it as is + // If extracted a single formatter, return it as is case 1: return formatters.get(0); - // Combine all extracted formatters into one + // Combine all extracted formatters into one default: final ChronoUnit precision = new CompositePatternSequence(sequences).precision; return new AbstractFormatter(pattern, locale, timeZone, precision) { diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/util/internal/instant/InstantPatternFormatter.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/util/internal/instant/InstantPatternFormatter.java index 037e79a0097..61056e3ccb2 100644 --- a/log4j-core/src/main/java/org/apache/logging/log4j/core/util/internal/instant/InstantPatternFormatter.java +++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/util/internal/instant/InstantPatternFormatter.java @@ -117,16 +117,16 @@ public InstantPatternFormatter build() { // Wrap the formatter with caching, if necessary switch (formatter.getPrecision()) { - // It is not worth caching when a precision equal to or higher than microsecond is requested + // It is not worth caching when a precision equal to or higher than microsecond is requested case NANOS: case MICROS: return formatter; - // Millisecond precision cache + // Millisecond precision cache case MILLIS: return InstantPatternThreadLocalCachedFormatter.ofMilliPrecision(formatter); - // Cache everything else with second precision + // Cache everything else with second precision default: return InstantPatternThreadLocalCachedFormatter.ofSecondPrecision(formatter); } diff --git a/log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/ExceptionResolver.java b/log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/ExceptionResolver.java index 6256673aa73..cda28305080 100644 --- a/log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/ExceptionResolver.java +++ b/log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/ExceptionResolver.java @@ -388,10 +388,6 @@ Throwable extractThrowable(final LogEvent logEvent) { return logEvent.getThrown(); } - static String getName() { - return "exception"; - } - @Override public boolean isResolvable() { return stackTraceEnabled; diff --git a/log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/ExceptionResolverFactory.java b/log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/ExceptionResolverFactory.java index 1e330ba73e8..0dc840b8014 100644 --- a/log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/ExceptionResolverFactory.java +++ b/log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/ExceptionResolverFactory.java @@ -38,7 +38,7 @@ public static ExceptionResolverFactory getInstance() { @Override public String getName() { - return ExceptionResolver.getName(); + return "exception"; } @Override diff --git a/log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/ExceptionRootCauseResolver.java b/log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/ExceptionRootCauseResolver.java index bd42ba9c810..91de00eb856 100644 --- a/log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/ExceptionRootCauseResolver.java +++ b/log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/ExceptionRootCauseResolver.java @@ -36,10 +36,6 @@ public final class ExceptionRootCauseResolver extends ExceptionResolver { super(context, config); } - static String getName() { - return "exceptionRootCause"; - } - @Override Throwable extractThrowable(final LogEvent logEvent) { final Throwable thrown = logEvent.getThrown(); diff --git a/log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/ExceptionRootCauseResolverFactory.java b/log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/ExceptionRootCauseResolverFactory.java index b42125fc864..8028d4f63e0 100644 --- a/log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/ExceptionRootCauseResolverFactory.java +++ b/log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/ExceptionRootCauseResolverFactory.java @@ -38,7 +38,7 @@ public static ExceptionRootCauseResolverFactory getInstance() { @Override public String getName() { - return ExceptionRootCauseResolver.getName(); + return "exceptionRootCause"; } @Override diff --git a/log4j-parent/pom.xml b/log4j-parent/pom.xml index 97ccca32cd8..8f6ff04eb66 100644 --- a/log4j-parent/pom.xml +++ b/log4j-parent/pom.xml @@ -659,16 +659,6 @@ - - org.apache.maven.plugins - maven-compiler-plugin - - - --should-stop=ifError=FLOW - - - - diff --git a/pom.xml b/pom.xml index 008284d8dea..a9f9e07e1b8 100644 --- a/pom.xml +++ b/pom.xml @@ -31,7 +31,7 @@ org.apache.logging logging-parent - 12.0.0 + 12.1.0