Skip to content

HBASE-29609, HBASE-29152 Checkstyle upgrade, site skin replacement - #7353

Closed
PDavid wants to merge 1 commit into
apache:masterfrom
PDavid:HBASE-29609-checkstyle-upgrade-2
Closed

HBASE-29609, HBASE-29152 Checkstyle upgrade, site skin replacement#7353
PDavid wants to merge 1 commit into
apache:masterfrom
PDavid:HBASE-29609-checkstyle-upgrade-2

Conversation

@PDavid

@PDavidPDavid commented Sep 30, 2025

Copy link
Copy Markdown
Contributor
  • Upgraded checkstyle to 11.0.1 to handle newer Java syntax
  • Upgraded the Maven checkstyle plugin to 3.6.0
  • There were incompatibilities with the Maven skin and the newer checkstyle version so replaced Josh Elser's old patched fluido Maven skin with the newer Reflow2 Maven skin (Apache Phoenix project uses this). This brings newer Bootstrap (before we used 2.3.2, after 4.x - still not ideal because 5.x is the latest major version but it is an improvement).
  • The new skin also brings new more modern look - please see separate comment with screen shots.
  • Made sure only local resources are used by the website and the book.html - so no CDN is used - as before. We cannot load remote content as it is banned by central ASF Content Security Policy.
  • Made sure the RefGuide (book.html) still works as before.

@PDavidPDavid self-assigned this Sep 30, 2025
@PDavid

Copy link
Copy Markdown
ContributorAuthor

Testing

Created the site with mvn clean install -DskipTests && mvn site. Tested the site with desktop and mobile views.

Also made sure mvn surefire-report:report-only is successful. After the checkstyle upgrade (but without the Maven skin change it was failing with the following error:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-report-plugin:3.5.3:report-only (default-cli) on project hbase: An error has occurred in Surefire report generation.: Failed to create context for skin: Cannot use skin: has [1.11.1,2.0.0-M1) Doxia Sitetools prerequisite, but current is 2.0.0 -> [Help 1]

@PDavid

PDavid commented Sep 30, 2025

Copy link
Copy Markdown
ContributorAuthor

Screen shots

(Click on them below to open.)

Desktop site index page (big screen)Desktop site index
Mobile site index pageMobile site index
Downloads page (smaller screen)0 0 0 0_8000_downloads html

Comment threadpom.xml
Comment on lines -2793 to -2809
<artifactItem>
<groupId>org.webjars</groupId>
<artifactId>bootstrap</artifactId>
<version>2.3.2</version>
<type>jar</type>
<overWrite>true</overWrite>
<includes>**/css/bootstrap-responsive.min.css</includes>
</artifactItem>
<artifactItem>
<groupId>org.webjars</groupId>
<artifactId>highlightjs</artifactId>
<version>8.7</version>
<type>jar</type>
<overWrite>true</overWrite>
<includes>**/styles/github.min.css,
**/highlight.min.js,</includes>
</artifactItem>

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

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

These are not required anymore as the new skin brings them from a separate jar.

Comment threadpom.xml
<version>${maven-site.version}</version>
<configuration>
<siteDirectory>${basedir}/src/site</siteDirectory>
<customBundle>${basedir}/src/site/custom/project-info-report.properties</customBundle>

@PDavidPDavidSep 30, 2025

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

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

There was a warning regarding this during the build:

[WARNING] Parameter 'customBundle' is unknown for plugin 'maven-site-plugin:3.12.0:site (default-site)'

Removing this line fixed it.

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

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

Removed this because of the mentioned warning:

[WARNING] Parameter 'customBundle' is unknown for plugin 'maven-site-plugin:3.12.0:site (default-site)'

Comment threadsrc/site/site.xml
Comment on lines -45 to -48
<!-- The ID of the Google custom search engine to use.
This one searches hbase.apache.org, issues.apache.org/browse/HBASE-*,
and user and dev mailing list archives. -->
<customSearch>000385458301414556862:sq1bb0xugjg</customSearch>

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

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

I did not found a solution (yet) to use this Google custom search engine with the newer skin.
Do you think it is still needed? Because most probably this can be solved somehow but may require more work / hacks.

@PDavid
PDavid marked this pull request as ready for review September 30, 2025 11:03
@Apache-HBase

This comment has been minimized.

@PDavid
PDavidforce-pushed the HBASE-29609-checkstyle-upgrade-2 branch from 47958ba to c94d927CompareSeptember 30, 2025 11:43
@Apache-HBase

This comment has been minimized.

@Apache-HBase

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeLogfileComment
+0 🆗reexec0m 29sDocker mode activated.
_ Prechecks _
+1 💚dupname0m 0sNo case conflicting files found.
+0 🆗codespell0m 0scodespell was not available.
+0 🆗detsecrets0m 0sdetect-secrets was not available.
+1 💚@author0m 0sThe patch does not contain any @author tags.
_ master Compile Tests _
+1 💚mvninstall3m 4smaster passed
+1 💚compile8m 43smaster passed
+1 💚mvnsite7m 9smaster passed
+1 💚spotless0m 53sbranch has no errors when running spotless:check.
_ Patch Compile Tests _
+1 💚mvninstall3m 2sthe patch passed
+1 💚compile8m 41sthe patch passed
+1 💚javac8m 41sthe patch passed
+1 💚blanks0m 0sThe patch has no blanks issues.
+1 💚mvnsite8m 24sthe patch passed
+1 💚xmllint0m 0sNo new issues.
+1 💚hadoopcheck11m 43sPatch does not cause any errors with Hadoop 3.3.6 3.4.1.
+1 💚spotless0m 44spatch has no errors when running spotless:check.
_ Other Tests _
+1 💚asflicense0m 12sThe patch does not generate ASF License warnings.
60m 52s
SubsystemReport/Notes
DockerClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7353/2/artifact/yetus-general-check/output/Dockerfile
GITHUB PR#7353
Optional Testsdupname asflicense javac codespell detsecrets xmllint hadoopcheck spotless compile mvnsite
unameLinux 9b1a80a75744 5.4.0-1103-aws #111~18.04.1-Ubuntu SMP Tue May 23 20:04:10 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / c94d927
Default JavaEclipse Adoptium-17.0.11+9
Max. process+thread count189 (vs. ulimit of 30000)
modulesC: . U: .
Console outputhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7353/2/console
versionsgit=2.34.1 maven=3.9.8 xmllint=20913
Powered byApache Yetus 0.15.0 https://yetus.apache.org

This message was automatically generated.

@Apache-HBase

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeLogfileComment
+0 🆗reexec0m 37sDocker mode activated.
-0 ⚠️yetus0m 3sUnprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --author-ignore-list --blanks-eol-ignore-file --blanks-tabs-ignore-file --quick-hadoopcheck
_ Prechecks _
_ master Compile Tests _
+1 💚mvninstall3m 53smaster passed
+1 💚compile2m 14smaster passed
+1 💚javadoc1m 59smaster passed
+1 💚shadedjars6m 16sbranch has no errors when building our shaded downstream artifacts.
_ Patch Compile Tests _
+1 💚mvninstall3m 11sthe patch passed
+1 💚compile2m 14sthe patch passed
+1 💚javac2m 14sthe patch passed
+1 💚javadoc1m 58sthe patch passed
+1 💚shadedjars6m 14spatch has no errors when building our shaded downstream artifacts.
_ Other Tests _
+1 💚unit280m 54sroot in the patch passed.
316m 44s
SubsystemReport/Notes
DockerClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7353/2/artifact/yetus-jdk17-hadoop3-check/output/Dockerfile
GITHUB PR#7353
Optional Testsjavac javadoc unit shadedjars compile
unameLinux 9b8cc9ebf2db 5.4.0-1103-aws #111~18.04.1-Ubuntu SMP Tue May 23 20:04:10 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / c94d927
Default JavaEclipse Adoptium-17.0.11+9
Test Resultshttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7353/2/testReport/
Max. process+thread count6861 (vs. ulimit of 30000)
modulesC: . U: .
Console outputhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7353/2/console
versionsgit=2.34.1 maven=3.9.8
Powered byApache Yetus 0.15.0 https://yetus.apache.org

This message was automatically generated.

@stoty

stoty commented Oct 1, 2025

Copy link
Copy Markdown
Contributor

I would split the skin replacement and the checkstyle update into separate tickets and PRs if possible.
(i.e. if the new skins works with the old checkstyle)

I also suggest starting a [DISCUSS] thread about the skin update to make sure that everyone is aware of this and has a chance to comment.

@stoty

stoty commented Oct 1, 2025

Copy link
Copy Markdown
Contributor

Also, there is some information on why HBase needed the hacked theme in the old tickets.
Were you able to verify the problem areas and confirm that the new skin is free from the bugs that had to be patched ?

@PDavid

Copy link
Copy Markdown
ContributorAuthor

I would split the skin replacement and the checkstyle update into separate tickets and PRs if possible. (i.e. if the new skins works with the old checkstyle)

Thanks for the suggestion. Sure, actually, I was wondering about the same thing: to do these separately. However having them in the same PR proves that the new skin works with the new checkstyle version. But of course I can separate them. :)

I also suggest starting a [DISCUSS] thread about the skin update to make sure that everyone is aware of this and has a chance to comment.

Good idea, I'll do that.

Also, there is some information on why HBase needed the hacked theme in the old tickets. Were you able to verify the problem areas and confirm that the new skin is free from the bugs that had to be patched ?

I checked the commits on the 1.4 branch of the fork which were made in 2019, since a lot of time passed, even the original Maven fluido skin is now at 2.1.0 version and I did not found any issues with the new skin I thought the original problems might not be present anymore. But I'll look into this to be sure.

@PDavid

Copy link
Copy Markdown
ContributorAuthor

Closing this PR as I'll raise two separate PR-s for the checkstyle upgrade and the skin replacement.

@PDavidPDavid closed this Oct 1, 2025
@PDavid

Copy link
Copy Markdown
ContributorAuthor

OK, in the meantime I found out that I already started a [DISCUSS] thread about the skin update:
https://lists.apache.org/thread/21rob15d19ngbx6rvy8d4nmt5klgpoft

I'll post a new message there.

Also it seems HBase master does not uses Josh Elser's old patched skin because Duo changed it back to the official Maven-Fluido skin here: https://github.com/apache/hbase/pull/5993/files , just the comment about Josh's skin was left there.

I opened #7355 for the skin update.

Sign up for freeto 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.

3 participants

@PDavid@Apache-HBase@stoty