Skip to content

deps: bump kwetsbare dependencies — sqlite-jdbc, commons-beanutils, junit, flatlaf#41

Open
geertvanzoest wants to merge 2 commits intomainfrom
deps/security-bumps
Open

deps: bump kwetsbare dependencies — sqlite-jdbc, commons-beanutils, junit, flatlaf#41
geertvanzoest wants to merge 2 commits intomainfrom
deps/security-bumps

Conversation

@geertvanzoest
Copy link
Copy Markdown
Owner

@geertvanzoest geertvanzoest commented Apr 4, 2026

Samenvatting

Veilige dependency bumps voor bekende CVEs:

Dependency Was Wordt CVE/Risico
sqlite-jdbc 3.7.2 3.47.2.0 Meerdere CVEs, extreem verouderd
commons-beanutils 1.9.3 1.9.4 CVE-2019-10086
junit 4.12 4.13.2 CVE-2020-15250
flatlaf 1.6.5 3.5.4 Missing security patches
flatlaf-intellij-themes 2.0.1 3.5.4 Sync met flatlaf

Ongebruikte import FlatAtomOneLightContrastIJTheme verwijderd (class bestaat niet meer in flatlaf 3.x).

Niet geüpdatet (breaking changes, aparte PRs nodig):

  • axis 1.4 (EOL, migratie naar CXF nodig)
  • commons-collections 3.2.2 (4.x heeft andere artifact)
  • itext 2.1.7 (5+ is AGPL)
  • poi 3.10.1 (5.x heeft andere packages)
  • velocity 1.7 (2.x heeft andere packages)
  • bsh 2.0b4 (unmaintained)
  • jasperreports 6.4.0 (6.21+ test nodig)

Addresses #25

Testplan

  • CI build slaagt
  • App start en UI themes werken correct

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Onderhoud
    • Projectafhankelijkheden bijgewerkt naar nieuwere versies voor betere stabiliteit en veiligheid.
    • Ongebruikte code-referentie verwijderd.
  • Tests
    • Aanpassing van een automatische testverwachting om de testuitvoer bij te werken en testconsistentie te herstellen.

- sqlite-jdbc 3.7.2 → 3.47.2.0 (meerdere CVEs)
- commons-beanutils 1.9.3 → 1.9.4 (CVE-2019-10086)
- junit 4.12 → 4.13.2 (CVE-2020-15250)
- flatlaf 1.6.5 → 3.5.4 + intellij-themes 2.0.1 → 3.5.4
  - Verwijderde import FlatAtomOneLightContrastIJTheme (ongebruikt,
    verwijderd in flatlaf 3.x)

Addresses #25

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@geertvanzoest geertvanzoest added dependencies Pull requests die dependencies updaten security Beveiligingsgerelateerde issues labels Apr 4, 2026
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Apr 4, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yml

Review profile: CHILL

Plan: Pro

Run ID: 6965198b-d99b-40a7-a617-cc32c0a54358

📥 Commits

Reviewing files that changed from the base of the PR and between 3f28338 and 8db7dbb.

📒 Files selected for processing (1)
  • src/test/java/com/unicenta/PackageScanTest.java
✅ Files skipped from review due to trivial changes (1)
  • src/test/java/com/unicenta/PackageScanTest.java

📝 Walkthrough

Walkthrough

Maven-dependencyversies zijn verhoogd in pom.xml. Een ongebruikte import is verwijderd uit JPanelConfigGeneral.java. Een testverwachting in src/test/java/com/unicenta/PackageScanTest.java is aangepast (aantal verwachte LookAndFeel-items gewijzigd). Geen API- of public-declaratiewijzigingen.

Changes

Cohort / File(s) Samenvatting
Maven-afhankelijkheden
pom.xml
Versies bijgewerkt: org.xerial:sqlite-jdbc 3.7.2 → 3.47.2.0, commons-beanutils 1.9.3 → 1.9.4, com.formdev:flatlaf-intellij-themes 2.0.1 → 3.5.4, com.formdev:flatlaf 1.6.5 → 3.5.4, junit:junit 4.12 → 4.13.2.
Import-opruiming
src/main/java/com/unicenta/pos/config/JPanelConfigGeneral.java
Verwijderd ongebruikte import com.formdev.flatlaf.intellijthemes.materialthemeuilite.FlatAtomOneLightContrastIJTheme.
Test-aanpassing
src/test/java/com/unicenta/PackageScanTest.java
Aangepaste assertie: verwachte grootte van getLafs() gewijzigd van 67 naar 54.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed De titel geeft duidelijk aan dat dit een PR is voor beveiligingsupdates van meerdere dependencies en vermeldt de belangrijkste packages (sqlite-jdbc, commons-beanutils, junit, flatlaf).
Description check ✅ Passed De beschrijving volgt het sjabloon en bevat alle essentiële informatie: samenvatting met CVE-details, type wijziging, gerelateerde issue, wijzigingen, en testplan.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch deps/security-bumps

Warning

There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure.

🔧 OpenGrep (1.16.5)
src/test/java/com/unicenta/PackageScanTest.java

┌──────────────┐
│ Opengrep CLI │
└──────────────┘

�[32m✔�[39m �[1mOpengrep OSS�[0m
�[32m✔�[39m Basic security coverage for first-party code vulnerabilities.

�[1m Loading rules from local config...�[0m


Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
pom.xml (1)

276-292: ⚠️ Potential issue | 🟡 Minor

Werk flatlaf-swingx bij naar versie 3.5.4 of hoger.

De upgrade van FlatLaf naar 3.5.4 is correct, maar flatlaf-swingx op regel 291 blijft op 1.6.5 en is incompatibel met FlatLaf 3.5.4. Dit kan runtime-fouten veroorzaken. Voer flatlaf-swingx bij naar minimaal 3.5.4 (huidige recentste versie is 3.6, uit april 2025) om compatibiliteit te waarborgen.

De gebruikte theme-klassen (FlatGrayIJTheme, FlatCarbonIJTheme, FlatDraculaIJTheme, etc. in StartPOS.java en JFrmConfig.java) zijn beschikbaar in versie 3.5.4.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@pom.xml` around lines 276 - 292, De dependency flatlaf-swingx (artifactId
flatlaf-swingx) in pom.xml is nog op 1.6.5 en moet naar ten minste 3.5.4 (bij
voorkeur 3.6) bijgewerkt om compatibiliteit met flatlaf 3.5.4 te garanderen;
open de pom.xml dependency-blok voor flatlaf-swingx en vervang de
<version>1.6.5</version> door een versie >=3.5.4, bouw en verifieer dat
StartPOS.java en JFrmConfig.java (gebruikers van
FlatGrayIJTheme/FlatCarbonIJTheme/FlatDraculaIJTheme) nog compileren en draaien
met de nieuwe versie.
🧹 Nitpick comments (1)
pom.xml (1)

392-409: JUnit upgrade naar 4.13.2 is correct.

De upgrade van JUnit 4.12 naar 4.13.2 mitigeert CVE-2020-15250 en is in lijn met de projectrichtlijnen voor JUnit 4.

Opmerking: De mockito-junit-jupiter dependency (regels 404-409) is bedoeld voor JUnit 5 integratie, niet JUnit 4. Overweeg om dit in een toekomstige PR te verwijderen of te vervangen door mockito-core. Dit valt buiten de scope van deze security-update.

Based on learnings: "Do not use mockito-junit-jupiter in tests; use JUnit 4 instead."

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@pom.xml` around lines 392 - 409, The pom includes mockito-junit-jupiter
(artifactId mockito-junit-jupiter) which is a JUnit 5 integration and conflicts
with the project's JUnit 4 test setup; remove the mockito-junit-jupiter
dependency and replace it with the appropriate Mockito artifact for JUnit 4 (use
artifactId mockito-core, version aligned with mockito-inline) and mark it with
<scope>test</scope> so tests use Mockito without JUnit 5 integration.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Outside diff comments:
In `@pom.xml`:
- Around line 276-292: De dependency flatlaf-swingx (artifactId flatlaf-swingx)
in pom.xml is nog op 1.6.5 en moet naar ten minste 3.5.4 (bij voorkeur 3.6)
bijgewerkt om compatibiliteit met flatlaf 3.5.4 te garanderen; open de pom.xml
dependency-blok voor flatlaf-swingx en vervang de <version>1.6.5</version> door
een versie >=3.5.4, bouw en verifieer dat StartPOS.java en JFrmConfig.java
(gebruikers van FlatGrayIJTheme/FlatCarbonIJTheme/FlatDraculaIJTheme) nog
compileren en draaien met de nieuwe versie.

---

Nitpick comments:
In `@pom.xml`:
- Around line 392-409: The pom includes mockito-junit-jupiter (artifactId
mockito-junit-jupiter) which is a JUnit 5 integration and conflicts with the
project's JUnit 4 test setup; remove the mockito-junit-jupiter dependency and
replace it with the appropriate Mockito artifact for JUnit 4 (use artifactId
mockito-core, version aligned with mockito-inline) and mark it with
<scope>test</scope> so tests use Mockito without JUnit 5 integration.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yml

Review profile: CHILL

Plan: Pro

Run ID: 7f52ddf3-1a7b-4cd4-bb10-2b029665fbdc

📥 Commits

Reviewing files that changed from the base of the PR and between e395bc0 and 3f28338.

📒 Files selected for processing (2)
  • pom.xml
  • src/main/java/com/unicenta/pos/config/JPanelConfigGeneral.java
💤 Files with no reviewable changes (1)
  • src/main/java/com/unicenta/pos/config/JPanelConfigGeneral.java

FlatLaf 3.x verwijderde Material Theme UI Lite themes,
waardoor het aantal LaFs van 67 naar 54 ging.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@codecov
Copy link
Copy Markdown

codecov Bot commented Apr 4, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests die dependencies updaten security Beveiligingsgerelateerde issues

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant