Skip to content

Kamil/gradle version catalog traits - #8699

Open
KamilPatora wants to merge 13 commits into
openrewrite:mainfrom
KamilPatora:kamil/gradle-version-catalog-traits
Open

Kamil/gradle version catalog traits#8699
KamilPatora wants to merge 13 commits into
openrewrite:mainfrom
KamilPatora:kamil/gradle-version-catalog-traits

Conversation

@KamilPatora

@KamilPatora KamilPatora commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

What's changed?

  • Added document, library, and plugin traits for TOML catalogs.
  • Supported string and inline-table dependency/plugin entries.
  • Coordinated shared version.ref updates.
  • Centralized TOML table lookup and string accessors.
  • Preserved TOML formatting during updates.
  • Added validation for malformed module notation and versionless entries.

What's your motivation?

Provide a reusable, formatting-preserving semantic model for Gradle version catalogs and enable safe dependency, plugin, and shared-version updates.

Anything in particular you'd like reviewers to focus on?

Probably whole pr

Anyone you would like to review specifically?

Have you considered any alternatives or workarounds?

We do have our open-source 'version' of openrewrite where we handle TOML values: https://github.com/allegro/allwrite

Any additional context

Added positive and negative coverage for custom catalog paths, missing version references, versionless notation, malformed coordinates, visitor composition, and TOML quote preservation.

Checklist

  • I've added unit tests to cover both positive and negative cases
  • I've read and applied the recipe conventions and best practices
  • I've used the IntelliJ IDEA auto-formatter on affected files

@KamilPatora

Copy link
Copy Markdown
Contributor Author

MOved this from #8376, as I was using wrong branch from the fork

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: In Progress

Development

Successfully merging this pull request may close these issues.

1 participant