Hi Josh! Awesome! you fix it! :)) I rebuild all and rebuild TDJ and is working right now! :) I want to updated it with some little things, but could not do it with that problem. I think your finding was very important to get to avoid that random behavior
Thanks for solving this and so fast Josh! :-) Carlos El lun., 8 jul. 2019 a las 22:43, Josh Tynjala (<joshtynj...@bowlerhat.dev>) escribió: > This doesn't seem to be related to any recent changes in the compiler. It > may be one of those cases where Closure decided to start renaming something > that it didn't rename previously due to some file size heuristic being > triggered, or something like that. > > I've found that the generation of the "Royale Dependency List" did not seem > account for externs that were not referenced directly by the application. > If the extern was compiled into a SWC and was only referenced by classes in > the same SWC, the extern would be ignored when compiling the application. > In this case, the Alert class in JewelJS.swc is referencing dialogPolyfill, > but the application doesn't use dialogPolyfill directly. As soon as I add a > reference to dialogPolyfill somewhere in the application, it starts working > correctly. > > I changed to compiler to always output goog.require() calls for externs. > Previously, it was skipping externs completely when adding goog.require() > calls. I guess that this edge case must have been missed when testing that. > > -- > Josh Tynjala > Bowler Hat LLC <https://bowlerhat.dev> > > > On Mon, Jul 8, 2019 at 11:09 AM Carlos Rovira <carlosrov...@apache.org> > wrote: > > > Hi, > > > > when I compile TDJ I can see not a problem in release (but not I debug) > for > > jewel alert component. > > > > I think is a magnification problem for dialogPolyfill. I think Royale is > > changing method name in release mode for method "registerDialog" > > This was not happening before > > > > [Error] TypeError: dialogPolyfill.DH is not a function. (In > > 'dialogPolyfill.DH(a.Vi)', 'dialogPolyfill.DH' is undefined) > > IJ (App.js:1506:197) > > showModal (App.js:1507) > > cG (App.js:1506:439) > > L (App.js:1262) > > (función anónima) > > nx (App.js:91:245) > > Jx (App.js:110:262) > > fH (App.js:965:906) > > ix (App.js:93) > > (función anónima) (App.js:89) > > > > the class is this: > > > > package > > { > > /** > > * @externs > > */ > > public class dialogPolyfill > > { > > COMPILE::JS > > public static function registerDialog(dialog:Element):void {} > > } > > } > > > > Someone knows what of the latest changes in compiler could be causing > this > > problem? > > > > thanks > > > > -- > > Carlos Rovira > > http://about.me/carlosrovira > > > -- Carlos Rovira http://about.me/carlosrovira