Skip to content

[java] Enforce warning-free builds - #1535

Merged
bgentry merged 1 commit into
masterfrom
bg/java-build-warnings
Oct 24, 2026
Merged

bgentry merged 1 commit into
masterfrom
bg/java-build-warnings

Conversation

@bgentry

@bgentry bgentry commented Oct 24, 2026 •

Copy link
Copy Markdown
Contributor

Java quality checks currently succeed while repeating intentional test-resource warnings and shaded-JAR warnings on every PR. Suppress unused-resource warnings only on the test methods that intentionally hold workers or subscriptions open, keep -Xlint:all, and make unsuppressed compiler warnings fatal.

Merge dependency license and notice text in both executable JARs, generate one manifest, and exclude dependency module descriptors and signatures. Mark the archives as multi-release so their version-specific dependency classes remain usable.

Run Maven through a shared Make wrapper that streams its output and rejects remaining Maven warnings while preserving command failures. Local checks and CI use the same targets. Focused regression checks cover warning output on both streams, ordinary application logs, and command exit codes.

Document language prefixes for port-specific PR titles and commit subjects in AGENTS.md, with no redundant language names in the rest of the title.

@brandur brandur left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Ah yep. Great call!

@bgentry bgentry changed the title Enforce warning-free Java builds [java] Enforce warning-free builds Oct 24, 2026
Java quality checks succeed while repeating intentional test-resource
warnings and shaded archive warnings on every PR. Keep `-Xlint:all`,
suppress only the test methods that hold workers or subscriptions open
for their lifetime, and reject unsuppressed compiler warnings.

Merge dependency license and notice text in both executable archives,
generate one manifest, and exclude dependency module descriptors and
signatures. Preserve multi-release dependency classes with the matching
manifest entry.

Run Maven through a shared Make wrapper that streams its output and
rejects plugin warnings while preserving command failures. Cover warning
output on both streams, ordinary output, and failing command exit codes
with focused regression checks.

Record the language-prefix convention for PR titles and commit subjects
so port-specific changes identify their scope without repeating it.
@bgentry
bgentry force-pushed the bg/java-build-warnings branch from d4b06da to 0890328 Compare October 24, 2026 22:15
@bgentry
bgentry enabled auto-merge (squash) October 24, 2026 22:16
@bgentry
bgentry merged commit 4e768f9 into master Oct 24, 2026
68 checks passed
@bgentry
bgentry deleted the bg/java-build-warnings branch October 24, 2026 22:19
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