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

Reply via email to