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

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


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

commit e42a2a7dc3973a9c4007c4247e58360e95d02e5c
Author: Paul King <pa...@asert.com.au>
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 ece38707f8..af7aba2e64 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