fix: drop openjdk21 Java tooling variants (repoclosure)#16738
fix: drop openjdk21 Java tooling variants (repoclosure)#16738christopherco wants to merge 6 commits intotomls/base/mainfrom
Conversation
There was a problem hiding this comment.
Pull request overview
This PR removes Fedora f43-era -openjdk21 Java tooling variants from Azure Linux components via overlays, resolving repoclosure failures caused by missing java-21-openjdk-* packages (AZL ships java-25-openjdk only).
Changes:
- Add per-component overlays to remove openjdk21 bindings/toolchains/subpackages (ant, maven, maven4, xmvn, xmvn5, javapackages-tools).
- Remove the affected components’ bare entries from
base/comps/components.tomlnow that dedicated*.comp.tomlfiles exist.
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 7 comments.
Show a summary per file
| File | Description |
|---|---|
| base/comps/ant/ant.comp.toml | Removes openjdk21 jp_binding/config generation to prevent ant-openjdk21 output. |
| base/comps/maven/maven.comp.toml | Removes openjdk21 binding/conf generation to prevent maven-openjdk21 output. |
| base/comps/maven4/maven4.comp.toml | Removes openjdk21 binding/conf generation to prevent maven4-openjdk21 output. |
| base/comps/xmvn/xmvn.comp.toml | Removes openjdk21 toolchain install and binding to prevent xmvn-toolchain-openjdk21 output. |
| base/comps/xmvn5/xmvn5.comp.toml | Removes openjdk21 toolchain install and binding to prevent xmvn5-toolchain-openjdk21 output. |
| base/comps/javapackages-tools/javapackages-tools.comp.toml | Removes openjdk21 local subpackages and fixes remaining Requires/configure args to align with openjdk25-only. |
| base/comps/components.toml | Drops inline component entries for components that now have dedicated *.comp.toml customization files. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Backport of upstream Fedora rawhide commit 4ca7a3b. AZL only ships java-25-openjdk; the ant-openjdk21 subpackage produces an unsatisfiable dependency on java-21-openjdk-headless.
Backport of upstream Fedora rawhide commit e19767f. AZL only ships java-25-openjdk; the maven-openjdk21 subpackage produces an unsatisfiable dependency on java-21-openjdk-headless.
Backport of upstream Fedora rawhide commit 4b6c6ee. AZL only ships java-25-openjdk; the maven4-openjdk21 subpackage produces an unsatisfiable dependency on java-21-openjdk-headless.
Backport of upstream Fedora rawhide commit 2c9d321. AZL only ships java-25-openjdk; the xmvn-toolchain-openjdk21 subpackage produces an unsatisfiable dependency on java-21-openjdk-devel.
Backport of upstream Fedora rawhide commit b9afca4. AZL only ships java-25-openjdk; the xmvn5-toolchain-openjdk21 subpackage produces an unsatisfiable dependency on java-21-openjdk-devel.
Backport of upstream Fedora rawhide commits: - 62dfe8f: Remove openjdk21 support packages - 7debb9d: Fix broken Requires of ivy-local - 83cd9c8: Fix broken Requires of javapackages-compat AZL only ships java-25-openjdk; the maven-local-openjdk21 and javapackages-local-openjdk21 subpackages produce unsatisfiable dependencies on java-21-openjdk-devel. Uses spec-remove-section overlays to excise the %package, %description, and %files sections for both openjdk21 subpackages, plus spec-search-replace to remove the --jvm=openjdk21 configure flag and fix ivy-local/javapackages-compat Requires that referenced the virtual javapackages-local provide.
cb5a3e0 to
deb1a68
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 7 out of 7 changed files in this pull request and generated no new comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
reubeno
left a comment
There was a problem hiding this comment.
Main feedback here is that the regexes are much more tightly coupled to the actual syntax in the specs. In several cases, simply replacing .*openjdk21.* with "" may be sufficient? Perhaps that's too simplistic, but the precise whitespace and verbatim other tokens decreases likelihood that the overlay would continue to apply as generically.
Consideration for future: if there are already changes in a future version of Fedora -- do we actually want to have a mechanism to allow storing those dist-git commits as local .patch files and an overlay that can apply them?
Summary
AZL ships only
java-25-openjdk. The f43-based Java tooling specs stillproduce
-openjdk21variant subpackages that depend on the missingjava-21-openjdk-*, causing 7 repoclosure failures.This PR surgically removes the openjdk21 bindings/subpackages via overlays,
backporting the equivalent changes already landed in Fedora rawhide/f44.
Changes
%jp_binding --variant openjdk214ca7a3b%jp_binding --variant openjdk21e19767f%jp_binding --variant openjdk214b6c6ee2c9d321b9afca4spec-remove-sectionfor%package/%description/%filesblocks; fix--jvm=openjdk21configure flag; fix ivy-local and javapackages-compat Requires62dfe8f,7debb9d,83cd9c8Repoclosure issues resolved
ant-openjdk21→java-21-openjdk-headlessjavapackages-local-openjdk21→java-21-openjdk-develmaven-local-openjdk21→java-21-openjdk-develmaven-openjdk21→java-21-openjdk-headlessmaven4-openjdk21→java-21-openjdk-headlessxmvn-toolchain-openjdk21→java-21-openjdk-develxmvn5-toolchain-openjdk21→java-21-openjdk-develFixes: AB#18867