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

jdaugherty pushed a commit to branch 7.0.x
in repository https://gitbox.apache.org/repos/asf/grails-core.git

commit 698f38d28eb0ccf1f056659474e313a2f180bbd5
Author: James Daugherty <[email protected]>
AuthorDate: Tue Jul 8 16:57:46 2025 -0400

    [skip ci] add debug to WriteGrailsVersionInfoTask
---
 .../internal/tasks/WriteGrailsVersionInfoTask.java     | 18 +++++++++++++++---
 1 file changed, 15 insertions(+), 3 deletions(-)

diff --git 
a/grails-forge/buildSrc/src/main/groovy/org/grails/forge/internal/tasks/WriteGrailsVersionInfoTask.java
 
b/grails-forge/buildSrc/src/main/groovy/org/grails/forge/internal/tasks/WriteGrailsVersionInfoTask.java
index 545d488982..5d162c35e3 100644
--- 
a/grails-forge/buildSrc/src/main/groovy/org/grails/forge/internal/tasks/WriteGrailsVersionInfoTask.java
+++ 
b/grails-forge/buildSrc/src/main/groovy/org/grails/forge/internal/tasks/WriteGrailsVersionInfoTask.java
@@ -36,11 +36,13 @@ import org.gradle.maven.MavenPomArtifact;
 import org.xml.sax.SAXException;
 
 import javax.xml.parsers.ParserConfigurationException;
+import java.io.File;
 import java.io.IOException;
 import java.io.OutputStream;
 import java.nio.charset.StandardCharsets;
 import java.nio.file.Files;
 import java.util.Map;
+import java.util.Set;
 import java.util.TreeMap;
 
 @CacheableTask
@@ -58,8 +60,13 @@ public abstract class WriteGrailsVersionInfoTask extends 
DefaultTask {
     @TaskAction
     public void writeVersionInfo() throws IOException {
         Map<String, String> props = generateProperties();
-        try (OutputStream out = 
Files.newOutputStream(getOutputDirectory().file("grails-versions.properties").get().getAsFile().toPath()))
 {
+        File outputFile = 
getOutputDirectory().file("grails-versions.properties").get().getAsFile();
+        if(outputFile.exists()) {
+            outputFile.delete();
+        }
+        try (OutputStream out = Files.newOutputStream(outputFile.toPath())) {
             for (Map.Entry<String, String> entry : props.entrySet()) {
+                getLogger().info("Writing version property: {} => {}", 
entry.getKey(), entry.getValue());
                 String line = entry.getKey() + "=" + entry.getValue() + "\n";
                 out.write(line.getBytes(StandardCharsets.ISO_8859_1));
             }
@@ -73,7 +80,9 @@ public abstract class WriteGrailsVersionInfoTask extends 
DefaultTask {
                 .execute();
         Map<String, String> props = new TreeMap<>();
         props.put("grails.version", getVersion().get());
-        for (ComponentArtifactsResult component : 
result.getResolvedComponents()) {
+        Set<ComponentArtifactsResult> resolvedComponents = 
result.getResolvedComponents();
+        getLogger().info("Resolved {} components", resolvedComponents.size());
+        for (ComponentArtifactsResult component : resolvedComponents) {
             component.getArtifacts(MavenPomArtifact.class).forEach(artifact -> 
{
                 if (artifact instanceof ResolvedArtifactResult) {
                     ResolvedArtifactResult resolved = (ResolvedArtifactResult) 
artifact;
@@ -81,13 +90,16 @@ public abstract class WriteGrailsVersionInfoTask extends 
DefaultTask {
                     try {
                         pom = new XmlSlurper().parse(resolved.getFile());
                     } catch (IOException | SAXException | 
ParserConfigurationException e) {
-                        // ignore
+                        getLogger().warn("Failed to parse POM file: {} due to 
{}", resolved.getFile(), e.getMessage());
                     }
                     ((GPathResult) 
pom.getProperty("properties")).children().forEach(child -> {
                         NodeChild node = (NodeChild) child;
                         props.put(node.name(), node.text());
                     });
                 }
+                else {
+                    getLogger().warn("Expected ResolvedArtifactResult but got: 
{}", artifact.getClass().getName());
+                }
             });
         }
         return props;

Reply via email to