Skip to content

Conversation

cwperks
Copy link
Member

@cwperks cwperks commented Oct 17, 2025

Description

This PR allows a plugin to define a range of versions of the core they are compatible with in the opensearchplugin section of their build.gradle file.

Example:

opensearchplugin {
    name 'opensearch-security'
    description 'Provide access control related features for OpenSearch'
    classname 'org.opensearch.security.OpenSearchSecurityPlugin'
    versionRange = "~" + opensearch_build
}

When creating the auto-generated plugin-descriptor.properties file it would create a new dependencies entry like this:

dependencies={ opensearch: "~3.4.0" }

The way to interpret this is that this plugin would be compatible with any patch version of the core. In effect, the plugin will not need to version bump to stay compatible with new patches in the core. I think this could help to solve some of the problems we have with plugin maintenance today and can help towards faster patch releases. This builds on top of existing decoupling logic in the core.

Related Issues

Resolves opensearch-project/opensearch-build#5720 (comment)

Check List

  • Functionality includes testing.
  • API changes companion pull request created, if applicable.
  • Public documentation issue/PR created, if applicable.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

…ange of core versions for compatibility

Signed-off-by: Craig Perkins <[email protected]>
Signed-off-by: Craig Perkins <[email protected]>
Copy link
Contributor

❌ Gradle check result for 9deb8a6: FAILURE

Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change?

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.

[Discussion] Patch releases currently take a lot of effort

1 participant