opensearch-project / opensearch-project/sql
[FEATURE] Migrate Dependencies to Gradle Version Catalog
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 176
- Forks
- 229
- Avg merge
- 2d 21h
- Merged PRs (30d)
- 43
Description
Is your feature request related to a problem?
Currently, dependency versions are being declared on respective build.gradle file module with Groovy DSL.
This scattered approach complicates maintenance, increase the risk of inconsistencies, and make it challenging to manage and update dependencies across the SQL project.
Let's take Junit as an example:
Which both versions .4.13.2 and 5.9.3 are being declared within the project, and because of this, test-cases syntax are being diverted accordingly throughout the project.
What solution would you like?
To have a two-phases approach to eventually migrate all the versions declaration from the current form, to Gradle version catalog, which includes:
- Phase-1: Centralise all version declaration in the form of Gradle property
- Phase-2: Migrate Gradle properties into a standalone
libs.versions.tomlfile.
What alternatives have you considered?
A Gradle version catalog is not suitable in this SQL project, then we should at-least centralise all version declaration into parent module, as a custom configuration file.
Do you have any additional context?
Gradle site reference for version catalogs: https://docs.gradle.org/current/userguide/version_catalogs.html?utm_source=chatgpt.com
PR placeholder:
- Phase-1: Centralise version declaration
- Phase-2: Migrate to version catalogs
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the dependency declarations in the module build.gradle files and the Phase-1 PR, opensearch-project/sql#3294. Compare the current Gradle properties approach with Gradle's version catalog guidance, then define the remaining migration to a standalone libs.versions.toml file. Done means dependency versions are centralized without inconsistent declarations across the SQL project.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- build-system
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100