Pin spring-framework.version to 6.2.19 (closes 1 critical + 11 high CVEs) - #283
Pin spring-framework.version to 6.2.19 (closes 1 critical + 11 high CVEs)#283devin-ai-integration[bot] wants to merge 1 commit into
Conversation
…ork CVEs Co-Authored-By: patrick.bradley <patrick.bradley@cognition.ai>
🤖 Devin AI EngineerI'll be helping with this pull request! Here's what you should know: ✅ I will automatically:
Note: I can only respond to comments from users who have write access to this repository. ⚙️ Control Options:
|
✅ Runtime verification: Spring Framework 6.2.19 — full banking flow works end-to-endRan the app locally ( All checks passed:
Full recording of the run: Note: on Tested by Devin — see session for full report & recording. |
Summary
Pins Spring Framework to 6.2.19 under the unchanged
spring-boot-starter-parent:3.3.3, closing the 1 critical + 11 high Spring Framework CVEs from the Snyk SCA scan ofDevOps. Boot 3.3.3 manages Spring Framework via thespring-framework.versionproperty, so a one-line property override is enough — no dependency declarations, no parent bump.<properties> <java.version>17</java.version> + <spring-framework.version>6.2.19</spring-framework.version> </properties>The 6.1 → 6.2 minor bump was flagged as the riskiest of the five parallel pins. It works here: compile, the
contextLoadstest against a real MySQL, and the full dependency resolution are all green — no fallback to 6.1.x was needed. All spring-framework modules (spring-core,spring-beans,spring-context,spring-web,spring-webmvc,spring-expression,spring-aop,spring-tx,spring-jdbc,spring-orm,spring-aspects,spring-jcl,spring-test) resolve to 6.2.19 instead of 6.1.12.CVEs closed
All 12 were present at 6.1.12 and all are gone at 6.2.19:
CVEs remaining open in Spring Framework after this pin: none. All 28 Snyk issues attributed to
org.springframework:spring-*at 6.1.12 are resolved at 6.2.19.Snyk before/after
snyk test --all-projects --dev --jsonon the same working copy, before and after the one-line change:28 issues removed, 0 new issues introduced — the pin pulls in no new vulnerable transitive versions. The remaining 86 are the other components (tomcat, spring-security, thymeleaf, jackson, mysql-connector, …) covered by the sibling remediation PRs.
Verification commands
Tests ran against a real MySQL, not a compile-only check:
docker start bankapp-mysql(mysql:8.0 onlocalhost:3306, dbbankappdb, userroot), andBankappApplicationTests.contextLoadsstarted the full Spring context — Hikari connected, Hibernate 6.5.2 created theaccount/transactiontables, context started in 4.2s — under Spring Framework 6.2.19 on Boot 3.3.3. No compatibility errors, deprecation failures, or context-startup problems.Scope
Minimal diff: one line in the
<properties>block ofpom.xml. No pom reformatting, no unrelated dependency changes, andspring-boot-starter-parentstays at 3.3.3. This is one of five parallel Snyk remediation PRs against the same<properties>block; the other four pintomcat.version,spring-security.version,thymeleaf.versionandjackson-bom.version.Link to Devin session: https://app.devin.ai/sessions/1521b40a18314d0abc78e57ed84590e3
Requested by: @patrickbradley-cog
Devin Review