I think the problem with that classes that SimpleTimeline extends Animation, but Animation has fields (static too) with type SimpleTimeline.
On Tue, Dec 18, 2018 at 9:54 PM mrchnk <mrc...@gmail.com> wrote: > Hi, Alex. > > I tried build #1713. Log output says that following circular dependency is > found: > > ... > Circular Dependency Found > [com.greensock.core.Animation] > [com.greensock.core.SimpleTimeline] > [com.greensock.core.Animation] > End of Circular Dependency > ... > > Here are both .as and .js files mentioned in that dependency > https://gist.github.com/mrchnk/caba399919690a785761242c35e5a01a > > Build output and warnings are available at the old location (with prefix > 1713-): > https://drive.google.com/open?id=17IRbQ1xAfpAirjbW6YjQPFEYHmL1HnhC > > On Tue, Dec 18, 2018 at 11:43 AM Alex Harui <aha...@adobe.com> wrote: > >> Hi, >> >> >> >> That log showed that lots of files are not in the sorted order, not just >> Client. In a test of the Tour De Flex running in Royale, all files 700+ >> files end up in the sorted order. In trying to reproduce the issue, I >> discovered that circularities in the graph are not reported, so I’ve added >> that to the output. So wait a few hours for the new nightly (build #1712 >> or later) and try again and search the output for >> >> >> >> Circular Dependency Found >> >> >> >> Hopefully there will be one which would explain the differences in the >> lists. It should be followed by a list of classes, then: >> >> >> >> >> >> End of Circular Dependency >> >> >> >> Post the list and the ActionScript sources and JavaScript from the output >> folder for the classes. The JS output may not handle certain kinds of >> static initializers and think there are static dependencies when there >> doesn’t need to be which could result in circularities that would work fine >> in SWF. We’ll see what it takes to make the compiler smarter, but you >> might make more progress by modifying the static initializers. >> >> >> >> One pattern for a workaround is to test if the class has been initialized >> and if not, initialize it. So instead of: >> >> >> >> public class SomeClass { >> >> public static var foo:int = SomeOtherClass.foo; >> >> } >> >> >> >> You could do: >> >> public class SomeClass { >> >> public static var initialized:Boolean; >> >> public static var foo:int;; >> >> public static function initialize() { >> >> SomeClass.foo = SomeOtherClass.foo; >> >> SomeClass.initialized = true; >> >> } >> >> } >> >> >> >> And then before you actually read SomeClass.foo, add >> >> >> >> if (!SomeClass.initialized) SomeClass.initialize(); >> >> >> >> But first, we have to see if there is a circularity being reported. >> >> >> >> HTH, >> >> -Alex >> >> >> >> *From: *mrchnk <mrc...@gmail.com> >> *Reply-To: *"users@royale.apache.org" <users@royale.apache.org> >> *Date: *Monday, December 17, 2018 at 9:48 AM >> >> >> *To: *"users@royale.apache.org" <users@royale.apache.org> >> *Subject: *Re: Linkage problem for asjs compiler >> >> >> >> Hi, Alex! >> >> >> >> I downloaded the latest nightly build of royale (which is 1707) and build >> my project using it with "-diagnostics=32768" argument. >> >> Here is build output (too large to be posted as a gist): >> >> https://drive.google.com/open?id=17IRbQ1xAfpAirjbW6YjQPFEYHmL1HnhC >> <https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdrive.google.com%2Fopen%3Fid%3D17IRbQ1xAfpAirjbW6YjQPFEYHmL1HnhC&data=02%7C01%7Caharui%40adobe.com%7C05c93f3d4cf94a178dcf08d66447e552%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636806657282447495&sdata=KKtA%2BHd3j5LqVB48JZS38dz%2BRRKJBWwI2WxPTTzWvN8%3D&reserved=0> >> >> >> >> I also enabled warnings for that build and save error output as a >> separated log file. >> >> >> >> That project is large and has a long history, so it could be really bad >> at dependencies with spaghetti code. >> >> But that seems to be ok for a mxmlc compiler from AIR SDK. >> >> >> >> On Mon, Dec 17, 2018 at 10:49 AM Alex Harui <aha...@adobe.com> wrote: >> >> Hi,, >> >> >> >> After more investigation, I’m not sure what is going wrong. I tested >> some scenarios with all dependencies removed and they worked. I added more >> diagnostics to the compiler. It can take several hours for the nightly >> build to update, but when it does, please add -diagnostics=32768 to your >> build and post a link to the output. >> >> >> >> Check the nightly build status here: >> http://apacheroyaleci.westus2.cloudapp.azure.com:8080/job/royale-asjs/ >> <https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fapacheroyaleci.westus2.cloudapp.azure.com%3A8080%2Fjob%2Froyale-asjs%2F&data=02%7C01%7Caharui%40adobe.com%7C05c93f3d4cf94a178dcf08d66447e552%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636806657282457504&sdata=5yEN1QIB6suavS0edNLqbMhMq20I3JSZ9LBxKV52aT8%3D&reserved=0> >> The updated compiler should be in build #1705 or later. >> >> >> >> Thanks, >> >> -Alex >> >> >> >> *From: *Alex Harui <aha...@adobe.com> >> *Reply-To: *"users@royale.apache.org" <users@royale.apache.org> >> *Date: *Friday, December 14, 2018 at 11:32 PM >> >> >> *To: *"users@royale.apache.org" <users@royale.apache.org> >> *Subject: *Re: Linkage problem for asjs compiler >> >> >> >> Hi, >> >> >> >> I think I found the problem. A class that had all of its dependencies >> removed in the circulars calculation (except its base class) wasn’t being >> output to the addDependency list because the base class dependency wasn’t >> being added into the addDependency list. I won’t have much time to work on >> it until Sunday evening. >> >> >> >> I did notice that openfl.swc does not contain externs/typedefs. That >> might be an issue for minification some day. >> >> >> >> -Alex >> >> >> >> >> >> *From: *mrchnk <mrc...@gmail.com> >> *Reply-To: *"users@royale.apache.org" <users@royale.apache.org> >> *Date: *Friday, December 14, 2018 at 11:06 AM >> *To: *"users@royale.apache.org" <users@royale.apache.org> >> *Subject: *Re: Linkage problem for asjs compiler >> >> >> >> Alex, here are files you requested: >> >> >> >> https://gist.github.com/mrchnk/c0965fdfef6caf0632acc78d1138940c >> <https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgist.github.com%2Fmrchnk%2Fc0965fdfef6caf0632acc78d1138940c&data=02%7C01%7Caharui%40adobe.com%7C05c93f3d4cf94a178dcf08d66447e552%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636806657282457504&sdata=EgFnC9MiM5kcbyuZeOixqLgsT4h8RR52BMOLh2VLqmo%3D&reserved=0> >> >> >> >> I used npm distribution of openfl version 8.7.0. You can download it into >> the current directory using npm or yarn package manager: >> >> >> >> npm install openfl@8.7.0 >> >> >> >> After that command, you can find openfl.swc, openfl.min.js as well as >> non-minified version openfl.js at path node_modules/openfl/dist of the >> current directory. >> >> >> >> Also I used npm script "asconfigc --debug=true" to build the code >> >> >> >> I tried to disable "remove-circulars" option (thanks to Harbs for >> pointing me to that). It still compiles, and linkage problems seem to goes >> away. But I figured out that circular dependencies cannot be resolved >> properly by the closure library after all. Is there any common solution to >> that problem? >> >> >> >> On Fri, Dec 14, 2018 at 8:56 PM Alex Harui <aha...@adobe.com> wrote: >> >> In addition to the data I asked for earlier, please also post link to >> openfl.swc and openfl.min.js. >> >> >> >> Thanks, >> >> -Alex >> >> >> >> *From: *mrchnk <mrc...@gmail.com> >> *Reply-To: *"users@royale.apache.org" <users@royale.apache.org> >> *Date: *Friday, December 14, 2018 at 8:22 AM >> *To: *"users@royale.apache.org" <users@royale.apache.org> >> *Subject: *Re: Linkage problem for asjs compiler >> >> >> >> I don't know anything about the option "remove-circulars", so I think I >> use the default value here, which is enabled I guess. >> >> Actually, I am using asconfigc wrapper over the compiler, but I have >> nothing about that option in my asconfig.json neither. >> >> >> >> On Fri, Dec 14, 2018 at 2:39 PM Harbs <harbs.li...@gmail.com> wrote: >> >> Are you using the remove-circulars compiler option? >> >> >> >> On Dec 14, 2018, at 10:24 AM, Alex Harui <aha...@adobe.com> wrote: >> >> >> >> OK. >> >> >> >> Please post a link to the entire output of the compiler including, if >> possible, the command-line you used. I won’t have time to look at it right >> away as I am at the end of my work day. >> >> >> >> Also post links to Client.as, Client.js, OasisClient.as, OasisClient.js, >> OasisHTML5Launcher.as, OasisHTML5Launcher.js >> >> >> >> And also verify how the compiler “should” find Client.js. Is Client.as >> in the source-path or is Client.js in a SWC? >> >> >> >> Thanks, >> >> -Alex >> >> >> >> *From: *mrchnk <mrc...@gmail.com> >> *Reply-To: *"users@royale.apache.org" <users@royale.apache.org> >> *Date: *Thursday, December 13, 2018 at 10:24 PM >> *To: *"users@royale.apache.org" <users@royale.apache.org> >> *Subject: *Re: Linkage problem for asjs compiler >> >> >> >> Same problem with the nightly build. I also asked about my issue in >> openfl community. >> >> I think that problem may be related to circular dependencies in my code. >> >> Is there any way that can be handled automatically by royale compiler? >> >> >> >> On Thu, Dec 13, 2018 at 11:23 PM Alex Harui <aha...@adobe.com> wrote: >> >> Hi, >> >> >> >> Try a nightly build of Royale. I think some things have been fixed in >> the calculation of dependencies. I think if you are using npm, you can >> uninstall royale and then: >> >> >> >> npm install >> http://apacheroyaleci.westus2.cloudapp.azure.com:8080/job/royale-asjs/lastSuccessfulBuild/artifact/out/apache-royale-0.9.6-bin-js.tar.gz >> <https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fapacheroyaleci.westus2.cloudapp.azure.com%3A8080%2Fjob%2Froyale-asjs%2FlastSuccessfulBuild%2Fartifact%2Fout%2Fapache-royale-0.9.6-bin-js.tar.gz&data=02%7C01%7Caharui%40adobe.com%7C05c93f3d4cf94a178dcf08d66447e552%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636806657282467513&sdata=etrcaueU%2BzRXWFDsPKnKXNEbwIqf%2FCljMHR7ODNPXWI%3D&reserved=0> >> >> >> >> No guarantees that will fix your issue, but at least we can eliminate >> some possibilities. >> >> >> >> HTH, >> >> -Alex >> >> >> >> *From: *mrchnk <mrc...@gmail.com> >> *Reply-To: *"users@royale.apache.org" <users@royale.apache.org> >> *Date: *Thursday, December 13, 2018 at 10:34 AM >> *To: *"users@royale.apache.org" <users@royale.apache.org> >> *Subject: *Linkage problem for asjs compiler >> >> >> >> Greetings! >> >> >> >> I tried to compile a large project using npm distribution of Apache >> Royale asjs compiler (@apache-royale/royale-js@0.9.4). I changed all >> flash.* classes to openfl.*. After several hotfixes that project starts to >> compile. >> >> >> >> Here is index.html generated: >> https://gist.github.com/mrchnk/4f468d1abb1b02466a0dad43265c4333 >> <https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgist.github.com%2Fmrchnk%2F4f468d1abb1b02466a0dad43265c4333&data=02%7C01%7Caharui%40adobe.com%7C05c93f3d4cf94a178dcf08d66447e552%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636806657282467513&sdata=K1OCTkGVNCkMEbc%2Bw54O7qQ5PwwhOhMcw%2BZJadx1JLE%3D&reserved=0> >> >> >> >> The page is loaded with javascript errors: >> >> Uncaught Error: Undefined nameToPath for Client >> >> at visitNode (base.js:1356) >> >> at visitNode (base.js:1354) >> >> at Object.goog.writeScripts_ (base.js:1368) >> >> at Object.goog.require (base.js:705) >> >> at (index):1681 >> >> >> >> (index):1687 Uncaught ReferenceError: OasisHTML5Launcher is not defined >> >> at (index):1687 >> >> >> >> So Client.as is the superclass of OasisClient.as and is used in main >> OasisHTML5Launcher. >> >> It is successfully compiled to Client.js and declared as a dependency at >> index.html >> >> But a link to js file and declaration for that class is missing (I mean >> "goog.addDependency('../../../Client.as' ... )") >> >> >> >> So how to deal with that? Is it a Royale bug? Are there some guidelines I >> missed about my code? >> >> >> >> Thanks in advance. >> >> >> >> PS: I'm kinda new to mailing lists. So don't hesitate to correct me if I >> do something wrong. >> >> >> >>