Skip to content

chore: upgrade to Spring Boot 4.1.1 - #31

Merged
alexmcdermid merged 1 commit into
mainfrom
chore/spring-boot-4
Oct 17, 2026
Merged

alexmcdermid merged 1 commit into
mainfrom
chore/spring-boot-4

Conversation

@alexmcdermid

@alexmcdermid alexmcdermid commented Oct 16, 2026 •

Copy link
Copy Markdown
Owner

Moves the API off the end-of-life Spring Boot 3.5 line to Spring Boot 4.1.1. Its Spring Framework 7.0.9 fixes GHSA-j9f9-w8pj-32f8 and GHSA-pc63-qcmh-9cmg, which have no 6.2.x fix.

Supersedes #30. This PR includes all of #30's dependency fixes. It also clears the two spring-webmvc criticals that keep #30's Trivy check failing. Close #30 once this merges.

  • Boot 4.1.1: Framework 7.0.9, Security 7.1, Hibernate 7.4, Flyway 12, Jackson 3, Tomcat 11
  • Overrides Tomcat 11.0.27 and Jackson 3.1.7, because Boot's own 11.0.24 / 3.1.5 have critical and high advisories. The Jackson 2, Netty and log4j overrides are no longer needed.
  • spring-boot-starter-flyway replaces flyway-core. Without it, Boot 4 silently skips migrations. Adds a regression test.
  • Excludes the unused AWS netty-nio-client. Pins spring-boot-maven-plugin, which the Docker build was resolving to 4.2.0-M2.
  • Code: Jackson 3 exception API, CSRF cookie customizer, RestTemplateBuilder package. Tests now use @MockitoBean and the Boot 4 test modules.

mvn package passes locally: 126 tests. Not yet tested: Neon/Postgres (Hibernate validate, Flyway history), a real Google login, and the Docker image build.

Spring Boot 3.5 and Spring Framework 6.2 no longer get OSS releases, and
GHSA-j9f9-w8pj-32f8 / GHSA-pc63-qcmh-9cmg are only fixed in Framework 7.0.9.

- Spring Boot 4.1.1 (Framework 7.0.9, Security 7.1, Hibernate 7.4,
  Flyway 12, Jackson 3, Tomcat 11)
- Override Tomcat 11.0.27 and Jackson 3.1.7, because the Boot-managed
  11.0.24 / 3.1.5 have critical and high advisories
- Use the Boot 4 starters, including spring-boot-starter-flyway; without it
  Boot 4 silently skips migrations. Add a regression test for this.
- Exclude the unused AWS netty-nio-client and pin the Maven plugin versions
- Migrate to the Jackson 3 exception API, the CSRF cookie customizer, the
  new RestTemplateBuilder package, @MockitoBean and the Boot 4 test modules
@alexmcdermid
alexmcdermid marked this pull request as ready for review October 17, 2026 03:49
@alexmcdermid
alexmcdermid merged commit 9f52096 into main Oct 17, 2026
4 checks passed

This branch was successfully deployed

1 active deployment
dev — bc286d41 Deployed Oct 17, 2026 by alexmcdermid via pause-when-idle #7
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