This is an automated email from the ASF dual-hosted git repository.

paulk pushed a commit to branch GROOVY_4_0_X
in repository https://gitbox.apache.org/repos/asf/groovy.git


The following commit(s) were added to refs/heads/GROOVY_4_0_X by this push:
     new 6459f57def GROOVY-11674: Grails reproducible build (order trait 
methods - minimise sort impact)
6459f57def is described below

commit 6459f57defbcd69bf34230412f4877184fcde23c
Author: Paul King <[email protected]>
AuthorDate: Sun Jun 1 15:24:29 2025 +1000

    GROOVY-11674: Grails reproducible build (order trait methods - minimise 
sort impact)
---
 .../java/org/codehaus/groovy/transform/trait/TraitComposer.java     | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git 
a/src/main/java/org/codehaus/groovy/transform/trait/TraitComposer.java 
b/src/main/java/org/codehaus/groovy/transform/trait/TraitComposer.java
index 5e038a0a28..5bfb78f0be 100644
--- a/src/main/java/org/codehaus/groovy/transform/trait/TraitComposer.java
+++ b/src/main/java/org/codehaus/groovy/transform/trait/TraitComposer.java
@@ -125,7 +125,7 @@ public abstract class TraitComposer {
         ClassNode staticFieldHelperClassNode = helpers.getStaticFieldHelper();
         Map<String, ClassNode> genericsSpec = 
GenericsUtils.createGenericsSpec(trait, 
GenericsUtils.createGenericsSpec(cNode));
 
-        List<MethodNode> hMethods = helperClassNode.getMethods();
+        List<MethodNode> hMethods = new 
ArrayList<>(helperClassNode.getMethods());
         if (!hMethods.isEmpty()) {
             
hMethods.sort(Comparator.comparing(MethodNodeUtils::methodDescriptorWithoutReturnType));
         }
@@ -178,7 +178,7 @@ public abstract class TraitComposer {
             // implementation of methods
             List<MethodNode> declaredMethods = new LinkedList<>();
             int pos = 0; // keep direct getters at start but in declaration 
order
-            List<MethodNode> fhMethods = fieldHelperClassNode.getMethods();
+            List<MethodNode> fhMethods = new 
ArrayList<>(fieldHelperClassNode.getMethods());
             if (!fhMethods.isEmpty()) {
                 
fhMethods.sort(Comparator.comparing(MethodNodeUtils::methodDescriptorWithoutReturnType));
             }
@@ -191,7 +191,7 @@ public abstract class TraitComposer {
             }
 
             if (staticFieldHelperClassNode != null) {
-                List<MethodNode> sfhMethods = 
staticFieldHelperClassNode.getMethods();
+                List<MethodNode> sfhMethods = new 
ArrayList<>(staticFieldHelperClassNode.getMethods());
                 if (!sfhMethods.isEmpty()) {
                     
sfhMethods.sort(Comparator.comparing(MethodNodeUtils::methodDescriptorWithoutReturnType));
                 }

Reply via email to