Skip to content

Gradle 9 - #159

Merged
Flowdalic merged 5 commits into
MiniDNS:masterfrom
Flowdalic:gradle-9
Oct 18, 2026
Merged

Flowdalic merged 5 commits into
MiniDNS:masterfrom
Flowdalic:gradle-9

Conversation

@Flowdalic

Copy link
Copy Markdown
Collaborator

No description provided.

Prepare for the upcoming bump of Error Prone, which reports
UnnecessaryStringBuilder, RedundantControlFlow, EffectivelyPrivate,
IntLiteralCast and UnnecessaryParentheses warnings.

Note that the toString() methods use " " instead of ' ' in the string
concatenation, as otherwise the numeric fields would be added to the
char value instead of being concatenated.
minidns-repl does not contain any Scala sources, hence there is no
need for the scala plugin and scalastyle. Ammonite, and with it the
Scala library, is still pulled in as dependency.
The mainClassName convention property is gone in Gradle 9. Also drop
the applicationDefaultJvmArgs and the run configuration, as both are
already provided by the application-conventions plugin.
Align MiniDNS' build-logic with the one of Smack, which already uses
Gradle 9:

- Rename the common-conventions plugin to global-conventions and the
  java-conventions plugin to java-common-conventions
- Read the version file in settings.gradle, instead of in every
  project
- Lazily determine the Android boot classpath, so that ANDROID_HOME is
  only required if the Android runtime jar is actually needed
- Register javadocAll lazily and drop evaluationDependsOnChildren()
- Prefer Maven Central over the local Maven repository
- Add the gradle-versions-plugin and the copyJavadocDocFiles workaround
- Show the test's standard streams if
  GRADLE_TEST_SHOW_STANDARD_STREAMS is set

Also bump bnd to 7.3.0, gradle-errorprone-plugin to 4.3.0,
gradle-animalsniffer-plugin to 2.0.1, Error Prone to 2.41.0, jacoco to
0.8.15, JUnit to 5.12.2 and junit-platform-launcher to 1.12.2. The
latter fixes the version mismatch between the JUnit Jupiter and the
JUnit platform artifacts.
Sonatype's OSSRH (oss.sonatype.org) has been shut down, and artifacts
are now published via the Maven Central Portal. Use the
gradle-maven-publish-plugin for publishing, as Smack does.

The tests jar is still part of the publication, so that other projects
can continue to consume the tests of MiniDNS.

Note that the customRepoUrl option is gone, and that the credentials
are now provided via the mavenCentralUsername and mavenCentralPassword
properties.
@coveralls

Copy link
Copy Markdown

Coverage Report for CI Build 39128505260

Warning

Build has drifted: This PR's base is out of sync with its target branch, so coverage data may include unrelated changes.
Quick fix: rebase this PR. Learn more →

Coverage decreased (-0.2%) to 60.81%

Details

  • Coverage decreased (-0.2%) from the base build.
  • Patch coverage: No coverable lines changed in this PR.
  • 39 coverage regressions across 2 files.

Uncovered Changes

No uncovered changes found.

Coverage Regressions

39 previously-covered lines in 2 files lost coverage.

File Lines Losing Coverage Coverage
org/minidns/DnsClient.java 35 45.42%
org/minidns/record/DNSKEY.java 4 84.13%

Coverage Stats

Coverage Status
Relevant Lines: 4746
Covered Lines: 3047
Line Coverage: 64.2%
Relevant Branches: 1794
Covered Branches: 930
Branch Coverage: 51.84%
Branches in Coverage %: Yes
Coverage Strength: 2.89 hits per line

💛 - Coveralls

@Flowdalic
Flowdalic merged commit 6450095 into MiniDNS:master Oct 18, 2026
3 checks passed
@Flowdalic
Flowdalic deleted the gradle-9 branch October 18, 2026 12:47
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