Skip to content

Give each Tomcat JSP engine its own Dependabot scan - #242

Merged
jmanico merged 1 commit into
mainfrom
dependabot-tomcat-engine-lines
Oct 14, 2026
Merged

jmanico merged 1 commit into
mainfrom
dependabot-tomcat-engine-lines

Conversation

@jmanico

@jmanico jmanico commented Oct 14, 2026

Copy link
Copy Markdown
Member

jsp/ pins Tomcat 9.0 and jakarta/ pins Tomcat 10.1 under the same Jasper and annotations API coordinates. The reactor scan from / combines repeated coordinates from the lowest version, so it proposed 9.0.123 for both modules in #238 and #239 and broke the Jakarta engine. No ignore rule on that scan can keep the two lines apart.

This change:

  • Makes the root entry ignore both Tomcat coordinates outright.
  • Adds /jsp and /jakarta entries that allow only those two coordinates, ignore major updates and group them into one PR. A module scan fetches the module and its parent POM but not sibling modules, so each entry sees a single engine line. The root ignores everything these entries allow, so they don't bring back the duplicate PRs the reactor-once rule prevents.
  • Adds a policy test that ties the entries to the modules pinning Tomcat and to each module's expected line. It fails on the old config and on a jakarta/ POM moved down to 9.0.123.
  • Updates DEPENDENCY_DECISIONS.md, which previously listed these as manual-review updates.

I ran the Dependabot CLI (v1.94.0) locally against a copy of this branch with the pre-#241 versions, 9.0.122 and 10.1.60:

Job Result
Previous root config 2 PRs, each writing 9.0.123 into jsp/pom.xml and jakarta/pom.xml (reproduces #238/#239)
New root config No Tomcat PR: "All versions … ignored, no update allowed"
New /jsp entry 1 grouped PR, jsp/pom.xml only: Jasper and annotations API 9.0.123
New /jakarta entry 1 grouped PR, jakarta/pom.xml only: Jasper and annotations API 10.1.61

python3 -m unittest discover -s scripts/tests passes (36 tests), and the config validates against the SchemaStore Dependabot schema.

jsp/ pins Tomcat 9.0 and jakarta/ pins Tomcat 10.1 under the same Jasper
and annotations API coordinates. The reactor scan combines repeated
coordinates from the lowest version, so it proposed 9.0.123 for both
modules (#238, #239) and broke the Jakarta engine.

The root entry now ignores both coordinates outright. New /jsp and
/jakarta entries allow only those coordinates and ignore major updates.
A module scan fetches the module and its parent POM but not siblings, so
each sees one engine line and proposes that line's patch as one grouped
pull request. A policy test ties the entries to the modules that pin
Tomcat and to each module's expected line.
@jmanico
jmanico requested a review from jeremylong as a code owner October 14, 2026 07:09
@jmanico
jmanico merged commit cb18f7e into main Oct 14, 2026
18 checks passed
@jmanico
jmanico deleted the dependabot-tomcat-engine-lines branch October 14, 2026 07:15
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