Fix skin cannot be null by declaring the fluido skin in site.xml - #310
Conversation
There was a problem hiding this comment.
Pull request overview
This PR unblocks the repository CI by fixing Maven Site generation failures caused by the SITE/2.0.0 descriptor no longer providing a default skin, which makes maven-site-plugin:3.22.0 require an explicit <skin> in src/site/site.xml.
Changes:
- Declare
org.apache.maven.skins:maven-fluido-skin:2.1.0explicitly in the project site descriptor (src/site/site.xml).
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
For the record: the underlying cause — that a missing |
slawekjaranowski
left a comment
There was a problem hiding this comment.
can be as workaround, please add a comment that should be check with next Maven version
We have it in parent site descriptor ... but here parent is not resolved
It was fixed in Maven core ... I don't remember exactly which issue ...
…ound) The site 2.0.0 descriptor no longer defaults a skin, so maven-site-plugin 3.22.0 fails the site build with 'skin cannot be null', which currently blocks the whole repo's CI. This is really a Maven 4.0.0-beta-3 core issue: beta-3 doesn't resolve the parent site descriptor, so the skin declared in the Maven parent isn't inherited. Parent resolution works again on 4.0.0-rc-5+, where this <skin> becomes redundant. Declare it explicitly to unblock CI on beta-3; a comment in site.xml documents that it should be dropped once the build moves off beta-3. Addresses review feedback from @slawekjaranowski. See apache/maven-site-plugin#1286. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
e59a30c to
ce2634b
Compare
|
Thanks @slawekjaranowski! Verified your point: on 4.0.0-rc-5 / 4.0.x-SNAPSHOT / 4.1.0-SNAPSHOT the parent site descriptor is resolved and the parent's skin is inherited — I've added a comment in |
|
@ascheman Please assign appropriate label to PR according to the type of change. |
|
Probably it was: |
Problem
The master
Verifybuild has been red since late June: every run fails at the site step withThe site 2.0.0 descriptor (
SITE/2.0.0) no longer supplies a default skin, so maven-site-plugin 3.22.0 requires an explicit<skin>element, andsrc/site/site.xmldoesn't declare one. (The parent's skin is declared only in maven-parent's ownsite.xml; it is not published as an inheritable site-descriptor artifact —-XshowsNo parent level 1/2/3 site descriptor— so it never reaches this project.)This single failure blocks the whole repo: since master is red, every open PR inherits a red CI and nothing can be merged.
Fix
Declare
maven-fluido-skinexplicitly insite.xml— five lines, no source or dependency changes.Why this is the minimal change
The
-P run-its verifybuild itself (including thereproducibleIT that deploys viafile://) is already green on4.0.0-beta-3— the site skin is the only thing failing. I verified the skin-only change on a fork: the fullVerifymatrix passes 8/8 (ubuntu/macos/windows x JDK 17/21/25) against4.0.0-beta-3— https://github.com/aschemaven/maven-source-plugin/actions/runs/29831325551.This is intentionally the minimal subset needed to unblock CI. It overlaps with the site-skin part of #309, but without that PR's IT-plumbing/transport changes, which aren't needed to make the build green on beta-3.
Testing
mvn clean siteand the full-P run-its verifymatrix pass on 4.0.0-beta-3 (fork run linked above).