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

joshtynjala pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/royale-compiler.git

commit 35fc5c54a8eb6b23fb2207fddf9455fccc0e9396
Author: Josh Tynjala <[email protected]>
AuthorDate: Tue Jan 21 14:05:50 2025 -0800

    MXMLRoyalePublisher: when html-output-filename is empty and no HTML file is 
created, output a -dependencies.js file for debug builds
    
    This is basically what JSCPublisher was doing by default before, but now 
it's opt-in for both publishers.
---
 .../internal/codegen/js/jsc/JSCPublisher.java      | 20 ----------------
 .../codegen/mxml/royale/MXMLRoyalePublisher.java   | 28 ++++++++++++++++++++--
 2 files changed, 26 insertions(+), 22 deletions(-)

diff --git 
a/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/js/jsc/JSCPublisher.java
 
b/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/js/jsc/JSCPublisher.java
index 4a54cfbd8..7771324de 100644
--- 
a/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/js/jsc/JSCPublisher.java
+++ 
b/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/js/jsc/JSCPublisher.java
@@ -19,10 +19,6 @@
 
 package org.apache.royale.compiler.internal.codegen.js.jsc;
 
-import java.io.File;
-import java.io.IOException;
-import java.util.List;
-
 import org.apache.royale.compiler.config.Configuration;
 import org.apache.royale.compiler.definitions.IDefinition;
 import 
org.apache.royale.compiler.internal.codegen.mxml.royale.MXMLRoyalePublisher;
@@ -60,20 +56,4 @@ public class JSCPublisher extends MXMLRoyalePublisher
         bodyHTML.append("\t</script>\n");
         return bodyHTML.toString();
     }
-
-    @Override
-    protected void writeHTML(String type, String projectName, String 
mainClassQName, File targetDir,
-                             String deps, List<String> additionalHTML) throws 
IOException
-    {
-        if ("intermediate".equals(type))
-        {
-            StringBuilder depsFile = new StringBuilder();
-            depsFile.append(deps);
-            depsFile.append("goog.require(\"");
-            depsFile.append(projectName);
-            depsFile.append("\");\n");
-            writeFile(new File(targetDir, projectName + "-dependencies.js"), 
depsFile.toString(), false);
-        }
-        //don't call super.writeHTML() because asjsc defaults to no HTML
-    }
 }
diff --git 
a/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/mxml/royale/MXMLRoyalePublisher.java
 
b/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/mxml/royale/MXMLRoyalePublisher.java
index ba3ca3c43..0c348511f 100644
--- 
a/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/mxml/royale/MXMLRoyalePublisher.java
+++ 
b/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/mxml/royale/MXMLRoyalePublisher.java
@@ -897,7 +897,19 @@ public class MXMLRoyalePublisher extends JSPublisher 
implements IJSRoyalePublish
         String htmlOutputFileName = googConfiguration.getHtmlOutputFileName();
         if (htmlOutputFileName.length() == 0)
         {
-            // output file name has been intentionally cleared by the user
+            // output file name has been intentionally cleared by the user.
+            // debug builds still need their dependencies, though, so place
+            // then in a ProjectName-dependencies.js file that can be included
+            // manually by the user.
+            if ("intermediate".equals(type))
+            {
+                StringBuilder depsFile = new StringBuilder();
+                depsFile.append(deps);
+                depsFile.append("goog.require(\"");
+                depsFile.append(projectName);
+                depsFile.append("\");\n");
+                writeFile(new File(targetDir, projectName + 
"-dependencies.js"), depsFile.toString(), false);
+            }
             return;
         }
 
@@ -996,7 +1008,19 @@ public class MXMLRoyalePublisher extends JSPublisher 
implements IJSRoyalePublish
         String htmlOutputFileName = googConfiguration.getHtmlOutputFileName();
         if (htmlOutputFileName.length() == 0)
         {
-            // output file name has been intentionally cleared by the user
+            // output file name has been intentionally cleared by the user.
+            // debug builds still need their dependencies, though, so place
+            // then in a ProjectName-dependencies.js file that can be included
+            // manually by the user.
+            if ("intermediate".equals(type))
+            {
+                StringBuilder depsFile = new StringBuilder();
+                depsFile.append(deps);
+                depsFile.append("goog.require(\"");
+                depsFile.append(projectName);
+                depsFile.append("\");\n");
+                writeFile(new File(targetDir, projectName + 
"-dependencies.js"), depsFile.toString(), false);
+            }
             return;
         }
 

Reply via email to