Skip to content

SOLR-18432: SolrVersion tolerates prerelease qualifier - #5254

Open
dsmiley wants to merge 1 commit into
apache:mainfrom
dsmiley:SOLR-18432-solrversion-prerelease
Open

dsmiley wants to merge 1 commit into
apache:mainfrom
dsmiley:SOLR-18432-solrversion-prerelease

Conversation

@dsmiley

@dsmiley dsmiley commented Oct 28, 2026

Copy link
Copy Markdown
Contributor

🤖 https://issues.apache.org/jira/browse/SOLR-18432

SolrVersion and its callers don't tolerate a prerelease qualifier such as -SNAPSHOT, which blocks making LATEST_STRING match the build version. This fixes the three breakages first:

  • SolrVersion.satisfies() now evaluates on the version with the prerelease cleared (semver4j otherwise rejects every range for a prerelease), and a new withoutPrerelease() is added. This unblocks PackageManager's constraint check. compareTo/equals stay strict semver.
  • ZkController.checkClusterVersionCompatibility compares versions without the prerelease, so a dev node is not reported as older than a released node of the same x.y.z. Log and exception messages still print full versions.
  • SystemInfoProvider falls back to LATEST_STRING rather than LATEST.getPrereleaseVersion() for solrImplVersion.

Whether LATEST_STRING should be generated from the Gradle version is left for a follow-up.

🤖 Generated with Claude Code

- satisfies() ignores the prerelease qualifier; add withoutPrerelease()
- ZkController version-compat check compares without prerelease
- SystemInfoProvider solrImplVersion fallback uses LATEST_STRING

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@dsmiley
dsmiley force-pushed the SOLR-18432-solrversion-prerelease branch from c764fda to d59169c Compare October 28, 2026 00:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant