Skip to content

Conversation

@ibanFR
Copy link

@ibanFR ibanFR commented Nov 8, 2025

This PR upgrades build and test dependencies and modernizes the test configuration to JUnit 5.

This PR upgrades three dependencies used by the project: junit, approvaltests, and dom4j. The updates are intended to bring the project up-to-date with newer, more secure, and better-supported versions of these libraries. In addition to the dependency bumps, the Gradle Wrapper has also been updated to a newer version to ensure reproducible builds and compatibility with the updated dependencies.

What changed

Upgrade Gradle Wrapper

  • Update the Gradle wrapper to use Gradle 9.2.0.

Migrate to JUnit 5 (Jupiter)

  • Adopt the JUnit Platform with useJUnitPlatform() in Gradle.
  • Use the official JUnit BOM (org.junit:junit-bom) to manage test dependency versions.
  • Replace legacy org.junit imports with org.junit.jupiter equivalents.

Upgrade other dependencies

  • org.dom4j:dom4j → 2.1.4 (latest in the 2.1.x line).
  • com.approvaltests:approvaltests → 25.7.0 (latest stable release).

Why

  • Build Tooling: Upgrading Gradle lets us use newer plugin APIs, improved performance, and long-term tooling support.
  • Security: Older versions of dom4j and JUnit 4 contain known CVEs. Upgrading reduces potential vulnerabilities.
  • Maintainability: Newer releases are actively maintained and compatible with modern build and IDE tooling.
  • Testing Improvements: JUnit 5 provides a modern testing platform, better extensions, and long-term support; aligning the project will make future maintenance easier.
  • Future Compatibility: Using a JUnit BOM simplifies future upgrades and dependency alignment.

Fixes #1

@ibanFR ibanFR changed the title Upgrade junit, approvaltests, and dom4j Upgrade Graddle Wrapper, JUnit, Approvaltests, and Dom4j Nov 8, 2025
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.

Propose: Upgrade gradle wrapper, junit, dom4j, and approvalTests to address vulnerabilities and modernize test setup

1 participant