Skip to content

Fix stale generated configuration across builds#870

Merged
fglock merged 1 commit into
masterfrom
fix/configuration-regeneration
Jul 24, 2026
Merged

Fix stale generated configuration across builds#870
fglock merged 1 commit into
masterfrom
fix/configuration-regeneration

Conversation

@fglock

@fglock fglock commented Jul 24, 2026

Copy link
Copy Markdown
Owner

Summary

  • regenerate the ignored Configuration.java from its tracked template before every Gradle and Maven compilation
  • inject Git metadata and build timestamps only after resetting to canonical template content
  • fail explicitly when the tracked template is missing
  • keep the generated source untracked to avoid build-specific hash and timestamp conflicts

Why

After the 5.44.0 version bump, an existing checkout retained a generated
Configuration.java with version 5.42.0. Fresh CI checkouts passed because
the generated file was absent, while incremental local builds failed every
Perl unit test with a library/executable version mismatch.

Test plan

  • Start with a deliberately stale generated source reporting 5.42.0
  • Run make
  • Confirm the generated source and jperl -v report 5.44.0
  • Confirm all Gradle unit-test shards pass
  • Confirm the Maven generation phase replaces a deliberately stale source
  • Validate pom.xml with xmllint

Generated with Codex

Always derive Configuration.java from the tracked template in Gradle and
Maven builds before injecting Git and timestamp metadata. This prevents
existing checkouts from retaining stale version values across releases.

Keep the generated source untracked to avoid build-specific hash and
timestamp churn.

Generated with [Codex](https://openai.com/codex/)

Co-Authored-By: Codex <codex@openai.com>
@fglock
fglock merged commit 1684666 into master Jul 24, 2026
2 checks passed
@fglock
fglock deleted the fix/configuration-regeneration branch July 24, 2026 11:49
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.

1 participant