This is an automated email from the ASF dual-hosted git repository.
paulk pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/groovy-website.git
The following commit(s) were added to refs/heads/asf-site by this push:
new a138829 add missing breaking change
a138829 is described below
commit a138829f2ed468d3301e22fc285febb16afb9ec9
Author: Paul King <[email protected]>
AuthorDate: Mon Sep 22 07:59:21 2025 +1000
add missing breaking change
---
site/src/site/releasenotes/groovy-4.0.adoc | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/site/src/site/releasenotes/groovy-4.0.adoc
b/site/src/site/releasenotes/groovy-4.0.adoc
index b3306d0..ad4f13d 100644
--- a/site/src/site/releasenotes/groovy-4.0.adoc
+++ b/site/src/site/releasenotes/groovy-4.0.adoc
@@ -1250,6 +1250,16 @@ language whereby accessing a public field or a property
(private field with a ge
can have the same syntactic form. This idea wasn't carried over to the
`getProperties()`
method in an object's metaclass. Now `getProperties()` also returns public
fields.
link:https://issues.apache.org/jira/browse/GROOVY-10449[GROOVY-10449].
+* The code for generating needed calls to make Groovy's Meta-Object-Protocol
(MOP) work correctly with runtime selection of super calls was created back in
Groovy 1.0 days and didn't account for things like default methods in
interfaces.
+Attempts to patch this over time have left a number of inconsistencies and
faulty edge cases.
+MOP method generation and method indexing were changed in Groovy 4 to use a
more sophisticated approach that doesn't have the limitations of the earlier
design,
+but unfortunately full backwards compatibility was not possible.
+This isn't a concern when compiling a complete set of Groovy source files,
+but can cause problems when compiling Groovy source files under Groovy 4+
+with libraries built by pre-Groovy 4 versions or vice versa.
+A workaround is to use `@CompileStatic` for impacted super calls
+which alleviates the problem.
+link:https://issues.apache.org/jira/browse/GROOVY-8693[GROOVY-8693].
[[Groovy4.0-requirements]]
== JDK requirements