Upgrade qulice to 0.27.6 and grizzly to 5.0.1#97
Open
bibonix wants to merge 2 commits intosttc:masterfrom
Open
Upgrade qulice to 0.27.6 and grizzly to 5.0.1#97bibonix wants to merge 2 commits intosttc:masterfrom
bibonix wants to merge 2 commits intosttc:masterfrom
Conversation
Bumps qulice-maven-plugin from 0.25.1 to 0.27.6 and org.glassfish.grizzly:grizzly-http-servlet-server from 4.0.2 to 5.0.1. The new qulice version surfaces additional checkstyle/PMD rules; the source is adjusted to satisfy them (drop blank Javadoc lines before @-clauses and blank lines before closing braces, extract long XPath templates into static constants, restructure fluent chains, refactor RtSttc constructor to delegate to a static factory, replace SttcRule no-arg ctor with fromProperties() and drop public 'srule' field). Build passes 'mvn install -Pqulice' cleanly.
Qulice 0.27.6 and grizzly-http-servlet-server 5.0.1 are both built for Java 21 (class file version 65). With Java 17 in the matrix, those plugins/libraries fail with UnsupportedClassVersionError. Match the upstream jcabi pattern (e.g. jcabi-velocity) and run the mvn job on Java 21 only.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
@yegor256 — this is ready for merge. All CI checks are green.
Upgrades the build to the current stable plugin/dependency versions and adapts the source to the new linter rules introduced by the upgraded
qulice.Changes
qulice-maven-pluginfrom0.25.1to0.27.6(latest stable; supersedes the renovate PR Update dependency com.qulice:qulice-maven-plugin to v0.27.6 #89, which can't pass CI without the source-code adjustments below).org.glassfish.grizzly:grizzly-http-servlet-server(test scope) from4.0.2to5.0.1(latest stable).mvnCI matrix. Both qulice 0.27.6 and grizzly 5.0.1 are compiled for Java 21 (class file version 65), so the Java 17 jobs hitUnsupportedClassVersionError. This matches the matrix used by other recently-upgraded jcabi projects (e.g.jcabi/jcabi-velocity).Code adjustments for the new linter rules
Qulice 0.27.6 surfaces several Checkstyle/PMD rules that flagged 60 violations on the existing tree. All of them are fixed in this PR:
JavadocEmptyLineBeforeTagCheck— drop empty*lines before@-clauses in single-paragraph Javadoc blocks across the codebase.RegexpMultilineCheck(empty line before closing brace) — remove blank lines that preceded closing braces.ConstructorsCodeFreeCheck—RtSttc: refactor to delegate the public ctor to a privateRtSttc(Request)ctor, with aprivate static entry()helper that builds the request; suppress the rule on the singlethis(RtSttc.entry(...))delegation line.Atomic: replaceTimeUnit.MINUTES.toMillis(5L)in the ctor delegation with aDEFAULT_MAXconstant.SttcRule(test): replace the no-arg ctor with aSttcRule.fromProperties()factory and update call sites.BracketsStructureCheck/RegexpSinglelineCheck(fluent-call rules) — extract long XPath templates inRtCounterandRtCountersintoprivate static final Stringconstants and inlineString.formatinto the fluent chain. Inline the XML literals inRtLocksTest.ProhibitFieldsInTestClassesCheck/ PMDPublicMemberInNonPublicType— drop the publicsrulefield fromRtCountersITCase/RtLocksITCaseand useSttcRule.fromProperties()directly inside each test method.UnnecessaryLocalRule— inline the temporary local inAtomicTest#callsUnlockAfterException.Verification
mvn --errors --batch-mode clean install -Pqulicepasses locally on JDK 21 with no errors and no qulice violations.dd937a9.