From b184964f0fb018acf9e0e404307d095854ab1cd4 Mon Sep 17 00:00:00 2001 From: James Daugherty Date: Tue, 16 Dec 2025 11:22:34 -0500 Subject: [PATCH] doc - #15293 - add warning about invokedynamic performance --- grails-doc/src/en/guide/upgrading/upgrading60x.adoc | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/grails-doc/src/en/guide/upgrading/upgrading60x.adoc b/grails-doc/src/en/guide/upgrading/upgrading60x.adoc index 3aa2c618f1c..658d4cf5c4a 100644 --- a/grails-doc/src/en/guide/upgrading/upgrading60x.adoc +++ b/grails-doc/src/en/guide/upgrading/upgrading60x.adoc @@ -62,6 +62,16 @@ In your gradle file, you can force a dependency upgrade via this code: } ---- +5. By default, Groovy 4 switches away from callsite optimizations and uses invokedynamic instead. This can result in performance regressions compared to Grails 6. Groovy 5 will remove the ability to disable invokedynamic, but to disable it for Groovy 4, modify your `build.gradle` to include the following: + +[source,groovy] +.build.gradle +---- + tasks.withType(GroovyCompile).configureEach { + groovyOptions.optimizationOptions.indy = false + } +---- + ==== 3. Unified Project Version Grails 7 moved to a mono repository.