-
-
Notifications
You must be signed in to change notification settings - Fork 107
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Externalize the Dependency Notations API #435
Comments
I don't think this use case is important right now. Probably people will want to either contribute to refreshVersions or generate a versions catalog. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
The problem
Adding custom dependency notations that provide the same user experience as the ones bundled in refreshVersions is not straightforward and requires to setup a Gradle plugin, and makes upgrading refreshVersions harder as you need to update your plugin first.
What we want
We want to make it as easy as possible for folks to make their own dependency notations that integrate nicely with refreshVersions. Big set of libraries could publish their catalog (yes, it would compete with Gradle's incubating version catalog), and companies could make their own, be it for internal, or public libraries.
One way we can do it: externalizing the API
Externalizing the Dependency Notations API to its minimum would allow folks to start a Kotlin/JVM library, depend on it, and provide their own objects.
refreshVersions-core itself would depend on this library, and refreshVersions (with its bundled dependency notations) would use that API just like any other "dependency catalog".
Challenges
We need to figure out:
Something that could be extra nice is allowing to extend the default/bundled catalog (with warnings since they can be shadowed by refreshVersions updates). That way, folks can add that latest library with the same syntax while we're on vacation or busy.
The text was updated successfully, but these errors were encountered: