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.
>>
>>
>>
>>

Reply via email to