jamesfredley commented on PR #15557:
URL: https://github.com/apache/grails-core/pull/15557#issuecomment-4880185044

   Merged latest `8.0.x` into this branch and resolved the conflicts, then 
removed the legacy JLine 2 dependency.
   
   ### Merge conflict resolution (3 files)
   
   `8.0.x` had renamed `ControllerTagLibTypeCheckingExtension` → 
`TagLibraryInvokerTypeCheckingExtension` and generalized it from controllers to 
all tag dispatchers (controllers + taglibs) with a `canMakeDynamic()` guard, 
while this branch added the Groovy 5 `GROOVY-12041` namespace-dispatch 
handling. The resolution keeps **both**:
   
   - **`TagLibraryInvokerTypeCheckingExtension`** – takes the `8.0.x` 
rename/generalization (`isTagDispatcher`, `canMakeDynamic()`) and layers in 
this branch's `isDynamicNamespaceReceiver()` so `g.foo(...)`-style dispatch 
still resolves under Groovy 5.
   - **`GrailsASTUtils`** – keeps both the new 
`GRAILS_COMPILE_STATIC_EXTENSIONS` list and the `ZERO_PARAMETERS` deprecation.
   - **`TagLibraryInvokerTypeCheckingExtensionSpec`** – keeps all of `8.0.x`'s 
taglib tests plus this branch's Groovy 5 namespace-dispatch test (retargeted to 
the renamed extension).
   
   Verified: `./gradlew :grails-core:test --tests 
"org.grails.compiler.TagLibraryInvokerTypeCheckingExtensionSpec"` — all 10 
specs pass.
   
   ### Removed the second JLine (JLine 2)
   
   The `jline:jline:2.14.6` pin only existed to satisfy Groovy 4's 
`groovy-groovysh`. On Groovy 5, `groovy-groovysh` uses JLine 3, all source 
already targets the `org.jline.*` (JLine 3) API, and the full JLine 3 stack now 
comes in transitively via `groovy-groovysh` 5.x. So I dropped the `jline2` 
managed dependency from `grails-bom` and every explicit `jline:jline` consumer 
(grails-console runtime + the groovydoc `documentation` configs). Jansi was not 
actually duplicated — there's a single `jansi` version — so nothing changed 
there.
   
   Verified: `:grails-console:build` (incl. `groovydoc`) and 
`:grails-shell-cli:test` pass with only JLine 3 on the classpath.
   


-- 
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