borinquenkid opened a new pull request, #16744: URL: https://github.com/apache/grails-core/pull/16744
> **Merge this pull request with a merge commit. Never squash and never rebase-merge:** the history of the Java files is visible from the Groovy files only while both commits below survive. ## What Replaces #16576 and its idiom follow-up #16661. Converts the Java sources of `build-logic/docs-core`, `grails-gradle/common` and `grails-gradle/model` to Groovy, the way #16572 does for `grails-data-hibernate7`. It is the conversion and nothing else: no feature, no fix, no documentation change. Commits, in order, on top of `94fd84675f` (`10.0.x`), then a merge of the current `10.0.x`: | Commit | What | |---|---| | move | `git mv` only: 20 `.java` files to their `.groovy` paths, every line `R100`, no content change | | convert | the conversion, already in Groovy style: no semicolons, single quotes, no `public` on members, no suppressions, `@CompileStatic` where there is code, plus the specs that cover the converted classes | `git log --follow` on any converted file reaches its Java history, including `CommandLineParser` and `DefaultCommandLine`, which a single-commit conversion falls below git's rename threshold for. ## Why this replaces #16576 and #16661 #16576 converted in one commit and kept Java syntax to hold rename similarity (52% to 92%, none at 100%); #16661 then removed that syntax. With the move as its own commit that workaround is not needed, so the two collapse into one pull request that is already in the final style. matrei's request on #16576 to git move the files is what the first commit does. ## Java-facing API Public names, parameter names and visibility are the Java ones. The end state of every file equals the tip of the former `groovyism/build-tooling` branch, which is the idiomatic version of #16576. ## Verification | Run | Result | |---|---| | `:grails-docs-core:test` | 67 tests, 1 failure: `FetchTagsTaskSpec` runs `git tag` in a temporary repository and fails on a machine whose git config signs every tag (`tag.gpgsign`); the spec is not touched by this PR | | `:grails-gradle-model:test`, `:grails-gradle-common:test` | 414 and 24 tests, 0 failures | | `codenarcMain` on the three projects | no violations, no suppression | | tree of the convert commit against the former `groovyism/build-tooling` tip | identical | Also run from the root: `rat`, `validateRepositoryConventions` and `codeStyle`, all clean. This pull request carries `no ci` while #16572 runs the first full CI of this series; CI is enabled on it afterwards. https://claude.ai/code/session_01MDHn7fC3hsGJ27vFHD2o1p -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
