Skip to content

Upgrade bolt-jakarta-jetty to Jetty 12.1 - #1641

Draft
skrcode wants to merge 1 commit into
slackapi:mainfrom
skrcode:upgrade-bolt-jakarta-jetty-12
Draft

Upgrade bolt-jakarta-jetty to Jetty 12.1#1641
skrcode wants to merge 1 commit into
slackapi:mainfrom
skrcode:upgrade-bolt-jakarta-jetty-12

Conversation

@skrcode

@skrcode skrcode commented Sep 1, 2026

Copy link
Copy Markdown

Upgrades only bolt-jakarta-jetty to Jetty 12.1 while leaving the legacy bolt-jetty module unchanged.

The adapter stays on Jakarta EE 9, which matches the existing bolt-jakarta-servlet API. This change:

  • switches to Jetty 12's EE9 servlet/webapp artifacts;
  • makes Java 17 explicit for bolt-jakarta-jetty and excludes that module from the JDK 14 test leg;
  • adapts both core and nested servlet error handling so non-debug errors retain the existing minimal JSON response across HTML, JSON, and plain-text content negotiation; and
  • adds a real-server integration test that locks the exact 404 body, negotiated media type, and suppressed Server header across the default request plus all six Jetty-supported Accept forms.

Fixes #1567.

Category (place an x in each of the [ ])

  • bolt (Bolt for Java)
  • bolt-{sub modules} (Bolt for Java - optional modules)
  • slack-api-client (Slack API Clients)
  • slack-api-model (Slack API Data Models)
  • slack-api-*-kotlin-extension (Kotlin Extensions for Slack API Clients)
  • slack-app-backend (The primitive layer of Bolt for Java)

Verification

  • Repository JDK 17 test gate: 22/22 reactor modules passed; 1,542 tests, 0 failures/errors, 17 skipped.
  • Fresh JAIPilot Remote Corretto 17 build of exact commit fe3969c5f4efff7f4cf80d6f78bfe18c92f2d038: 7/7 dependency-reactor modules passed; 1,367 tests, 0 failures/errors, 17 skipped; exit code 0. The Maven command took 263 seconds (484 seconds including worker provisioning), and the source object was deleted at termination.
  • ./mvnw duplicate-finder:check: 22/22 modules passed. The upgraded module has no Servlet API class duplicates; only the repository's existing META-INF.versions.9.module-info warnings remain.
  • Deprecation-detail compile: passed; no upgraded Jetty API is deprecated (the module retains two pre-existing deprecated AppConfig calls).
  • The repository's install gate reached 21/22 modules, including bolt-jakarta-jetty, then failed in the unrelated bolt-quarkus-examples packaging step. The untouched base SHA reproduces the identical failure.

Local Maven invocations used a command-only Central mirror and -Daws.s3.version=2.42.29 because the local Maven cache stalled while enumerating the repository's open AWS SDK version range. No repository dependency property or build tooling was changed for that workaround.

AI assistance

JAIPilot assisted with maintainer-intent analysis, migration routing, test design, execution, and diff review. Exact skills used: jaipilot-maintainer-intent, jaipilot-openrewrite (manual route selected), jaipilot-generate-tests, jaipilot-fast-execution, jaipilot-review-diff, and jaipilot-remote-java. See JAIPilot.

  • Host model identifier: gpt-5.6-sol
  • Reasoning effort: xhigh
  • Host service mode: fast
  • Execution mode: local Corretto 17 plus JAIPilot Remote on a disposable AWS CodeBuild Corretto 17 large worker

The remote build received only an archive of the exact committed SHA. Its source object was deleted and its worker terminated after the build.

Requirements

Please read the Contributing guidelines and Code of Conduct before creating this issue or pull request. By submitting, you agree to those rules.

@salesforce-cla

salesforce-cla Bot commented Sep 1, 2026

Copy link
Copy Markdown

Thanks for the contribution! Before we can merge this, we need @skrcode to sign the Salesforce Inc. Contributor License Agreement.

@skrcode
skrcode force-pushed the upgrade-bolt-jakarta-jetty-12 branch from bc56a8e to fe3969c Compare September 1, 2026 12:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Upgrade Jetty

1 participant