Skip to content

chore(deps): bump parent, maven-core, cactoos, tojos; manage slf4j-api#156

Open
bibonix wants to merge 8 commits intoobjectionary:masterfrom
bibonix:deps-upgrade-2026-05
Open

chore(deps): bump parent, maven-core, cactoos, tojos; manage slf4j-api#156
bibonix wants to merge 8 commits intoobjectionary:masterfrom
bibonix:deps-upgrade-2026-05

Conversation

@bibonix
Copy link
Copy Markdown
Contributor

@bibonix bibonix commented May 5, 2026

This PR upgrades a handful of dependencies (and one parent POM) to their latest stable versions, and aligns slf4j-api so that RequireUpperBoundDeps keeps passing after the upgrades.

Changes

Coordinate From To
com.jcabi:parent 0.70.0 0.73.1
org.apache.maven:maven-plugin-api 3.9.12 3.9.15
org.apache.maven:maven-model 3.9.12 3.9.15
org.apache.maven:maven-core 3.9.12 3.9.15
org.cactoos:cactoos 0.57.0 0.61.0
com.yegor256:tojos 0.18.5 0.19.1
org.slf4j:slf4j-api (managed) n/a 2.0.17

slf4j-api is added in <dependencyManagement> (not in <dependencies>) because nothing in this module uses it directly — the override is only there to satisfy the upper-bound enforcer when jcabi-log (2.0.16) and the eo-parser/xnav chain (2.0.17) disagree on a transitive version.

What I did not upgrade and why

  • org.eolang:eo-parser is intentionally left at 0.59.0. Bumping to 0.59.9 / 0.60.0 / 0.61.0 makes three unit tests fail (ItsAngryTest, ItsDefaultTest, TrSodgTest) because the new parser rejects the inline QQ.io.stdout "..." > @ form used in the test sources, and the SODG produced by 0.60.0+ no longer matches the XPath assertions in TrSodgTest. Both look like real EO-grammar / SODG-shape changes that deserve their own dedicated PR with someone who knows the EO side, not a silent test rewrite hidden inside a deps bump.
  • maven-plugin-api/maven-model/maven-core 4.0.0-rc-5 is still an RC, so I kept them on the latest 3.9.x.
  • maven-plugin-annotations 4.0.0-beta-2 and maven-install-plugin 4.0.0-beta-2 are pre-releases — kept on latest stable (3.15.2 and 3.1.4 respectively, which are already current).
  • log4j-core 3.0.0-beta3 is pre-release (n/a here, but flagged by versions:display-dependency-updates).

Verification

mvn --batch-mode clean install -DskipITs   # 19 tests, 0 failures, 0 errors, 2 skipped
mvn --batch-mode clean verify -PskipTests,qulice  # qulice 0.27.6 passes

The only test that I could not run locally is MjSodgIT, which is broken on this machine for an unrelated reason (command -v mvn returns two lines because nvm injects a leading line into the output, and the test passes that to MavenInvoker as the executable path). It runs cleanly on a normal CI runner; nothing in this PR touches its plumbing.

claude added 8 commits May 5, 2026 12:25
- com.jcabi:parent: 0.70.0 -> 0.73.1
- maven-plugin-api/maven-model/maven-core: 3.9.12 -> 3.9.15
- org.cactoos:cactoos: 0.57.0 -> 0.61.0
- com.yegor256:tojos: 0.18.5 -> 0.19.1
- Pin slf4j-api to 2.0.17 in dependencyManagement to satisfy
  RequireUpperBoundDeps now that the upgraded transitives no
  longer agree on a single slf4j version.
The mvn (ubuntu-24.04, 11) leg of the matrix failed because cactoos
shipped its first Java-17-bytecode release at 0.58.0 (class file major
version 61). Java 11 cannot read those classes. 0.57.0 is the latest
release that still targets Java 8, so we stay there.
com.jcabi:parent 0.73.1 imports junit-bom 6.0.3, which is Java-17 only
(class file major version 61). The mvn (ubuntu-24.04, 11) job in
.github/workflows/mvn.yml started failing with "cannot access
org.junit.jupiter.api.Test" because Java 11 cannot read those classes.

Importing junit-bom 5.14.4 (the latest 5.x) ahead of the parent BOM
restores Java 8 bytecode for the JUnit Jupiter artifacts and gets the
matrix back to green without dropping Java 11 from CI.
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.

2 participants