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]

Reply via email to