Skip to content

build(deps): Hold logback on the 1.5 line - #140

Merged
wolpert merged 2 commits into
mainfrom
chore/pin-logback-1.5
Jul 29, 2026
Merged

build(deps): Hold logback on the 1.5 line#140
wolpert merged 2 commits into
mainfrom
chore/pin-logback-1.5

Conversation

@wolpert

@wolpert wolpert commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

Unblocks #138, which fails on its logback 1.5.38 → 1.6.1 bump.

Why

logback 1.6.0 removed ch.qos.logback.classic.PatternLayout.DEFAULT_CONVERTER_MAP. Dropwizard 5's dropwizard-request-logging reads that field in a static initializer, so with 1.6.1 on the classpath every Dropwizard app dies at boot:

java.lang.NoSuchFieldError: Class ch.qos.logback.classic.PatternLayout
  does not have member field 'java.util.Map DEFAULT_CONVERTER_MAP'
  at io.dropwizard.request.logging.layout.LogbackAccessRequestLayout.<clinit>(LogbackAccessRequestLayout.java:20)
  at io.dropwizard.request.logging.layout.LogbackAccessRequestLayoutFactory.build(...:16)
  at io.dropwizard.request.logging.LogbackAccessRequestLogFactory.build(...:80)

On #138 that took out 16 integration tests in :pk-auth-dropwizard (PkAuthBundleIntegrationTest, PkAuthBundleAltFlowsIntegrationTest — everything that boots the app) and the e2e (dropwizard-demo) job, where :examples:dropwizard-demo:run failed at startup with the same trace.

Dropwizard 5.0.2 resolves logback-classic:1.5.33; the catalog force-upgrades the classpath to 1.6.1 (dependencyInsight shows 1.5.33 -> 1.6.1). Dropwizard 5.0.2 is the newest release on Maven Central, so there is no upgrade path out of the conflict yet.

Change

One ignore entry in .github/dependabot.yml for ch.qos.logback:*, covering minor and major updates — 1.5 → 1.6 is a semver-minor bump, so the major-only form used for Micronaut would not hold the line. Patch updates on 1.5.x still flow. Remove this once Dropwizard ships logback 1.6 support.

Verification

Reproduced on the #138 branch locally, then reverted only logback to 1.5.38 — ./gradlew :pk-auth-dropwizard:test goes BUILD SUCCESSFUL, confirming the other two bumps in that PR (spotless 8.9.0, aws-sdk 2.49.5) are fine.

Once this merges, @dependabot recreate on #138 regenerates it without the logback bump.

🤖 Generated with Claude Code

logback 1.6.0 removed ch.qos.logback.classic.PatternLayout.DEFAULT_CONVERTER_MAP.
Dropwizard 5's dropwizard-request-logging reads that field in a static
initializer, so with logback 1.6.1 on the classpath every Dropwizard app dies at
boot:

  java.lang.NoSuchFieldError: Class ch.qos.logback.classic.PatternLayout
    does not have member field 'java.util.Map DEFAULT_CONVERTER_MAP'
    at io.dropwizard.request.logging.layout.LogbackAccessRequestLayout.<clinit>

That is what fails dependabot PR #138 — 16 integration tests in
:pk-auth-dropwizard plus the dropwizard-demo e2e run. Dropwizard 5.0.2 is the
newest release and still resolves logback 1.5.x, so ignore minor and major
logback updates until Dropwizard supports 1.6. Patch updates on 1.5.x still flow.

The minor entry matters: 1.5 -> 1.6 is a semver-minor bump, so a major-only
ignore (as used for Micronaut) would not have held the line.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@wolpert
wolpert enabled auto-merge (rebase) July 29, 2026 14:15
@sonarqubecloud

Copy link
Copy Markdown

@wolpert
wolpert merged commit ffa3211 into main Jul 29, 2026
8 checks passed
@wolpert
wolpert deleted the chore/pin-logback-1.5 branch July 29, 2026 14:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant