Skip to content

Update errorprone, fix javadoc, switch to Maven Central#204

Merged
usmansaleem merged 2 commits intoConsensys:masterfrom
usmansaleem:errorprone_lib_update
Mar 26, 2026
Merged

Update errorprone, fix javadoc, switch to Maven Central#204
usmansaleem merged 2 commits intoConsensys:masterfrom
usmansaleem:errorprone_lib_update

Conversation

@usmansaleem
Copy link
Copy Markdown
Contributor

@usmansaleem usmansaleem commented Mar 26, 2026

Summary

  • Update errorprone 2.28.0 → 2.36.0, errorprone-checks 1.1.1 → 1.1.2, errorprone plugin 4.0.1 → 5.1.0
  • Fix javadoc warnings (unescaped HTML generics, relax doclint to -Xdoclint:all,-missing)
  • Replace Cloudsmith publishing with JReleaser + Maven Central (new coordinates: io.consensys.protocols:discovery)
  • Replace grgit with git-versioning plugin, use java.withJavadocJar()/withSourcesJar()
  • Update CI workflow: pin actions with SHAs, publish only on tags with JReleaser secrets
  • Update README with Maven Central badge and new dependency coordinates

Required manual setup

  • Create publish environment in GitHub repo settings
  • Add secrets: JRELEASER_MAVENCENTRAL_USERNAME, JRELEASER_MAVENCENTRAL_PASSWORD, JRELEASER_GPG_PASSPHRASE, JRELEASER_GPG_PUBLIC_KEY, JRELEASER_GPG_SECRET_KEY

Test plan

  • ./gradlew clean build passes (compile + errorprone + tests + javadoc + spotless + license)
  • ./gradlew javadoc passes with zero warnings
  • ./gradlew publish produces staging artifacts in build/staging-deploy

Note

Medium Risk
Medium risk because it changes artifact coordinates and the entire release/publishing pipeline (CI gating, signing, and deployment), which can break releases or downstream dependency resolution if misconfigured.

Overview
Switches distribution to Maven Central by changing published coordinates to io.consensys.protocols:discovery, generating sources/javadoc jars via Gradle, updating POM metadata, and replacing Cloudsmith publishing with a local staging repo plus jreleaser Maven Central deployment.

Modernizes build and CI by replacing grgit-based versioning with git-versioning, upgrading Error Prone + errorprone-checks, relaxing doclint to avoid missing-doc failures, and updating GitHub Actions to pinned SHAs with publish running only on tags using new JReleaser + GPG secrets. Minor hygiene: .factorypath ignored and a couple of Javadoc generic references escaped.

Written by Cursor Bugbot for commit 7bd640d. This will update automatically on new commits. Configure here.

…eleaser

- Update errorprone 2.28.0 -> 2.36.0 and errorprone-checks 1.1.1 -> 1.1.2
- Update errorprone gradle plugin 4.0.1 -> 5.1.0
- Disable new ClassInitializationDeadlock check
- Fix javadoc HTML errors (unescaped generics in ExpirationSet, ExpirationScheduler)
- Relax javadoc doclint to exclude missing tags (-Xdoclint:all,-missing)
- Replace Cloudsmith publishing with JReleaser + Maven Central
- Update maven coordinates from tech.pegasys.discovery to io.consensys.protocols
- Replace grgit with git-versioning plugin for version calculation
- Use java.withJavadocJar()/withSourcesJar() instead of manual sourcesJar task
- Update CI workflow: pin actions with SHAs, publish only on tags
- Update README with Maven Central badge and new dependency coordinates
- Add .factorypath to .gitignore
@usmansaleem usmansaleem merged commit 77b1e42 into Consensys:master Mar 26, 2026
5 checks passed
@usmansaleem usmansaleem deleted the errorprone_lib_update branch March 26, 2026 09:47
@github-actions github-actions Bot locked and limited conversation to collaborators Mar 26, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants