I was not clear below that the ArrayList dependency was a static one.

> On Dec 20, 2018, at 10:58 AM, Harbs <harbs.li...@gmail.com> wrote:
> 
> Using my app:
> 
> First blush looks good. I don’t get any compile errors.
> 
> Second blush reveals that the files are not identical.
> 
> Interestingly:
> 
> I have one class which has a single Royale dependency: ArrayList.
> 
> A double-compile results in:
> goog.require('org.apache.royale.collections.ArrayList');
> goog.require('org.apache.royale.events.EventDispatcher');
> goog.require('org.apache.royale.core.IStrand');
> goog.require('org.apache.royale.events.CollectionEvent');
> goog.require('org.apache.royale.events.Event');
> goog.require('org.apache.royale.collections.IArrayList');
> goog.require('org.apache.royale.collections.ICollectionView');
> goog.require('org.apache.royale.core.IBead');
> 
> While a single-compile results in:
> goog.require('org.apache.royale.collections.ArrayList');
> goog.require('org.apache.royale.events.EventDispatcher');
> goog.require('org.apache.royale.core.IStrand');
> goog.require('org.apache.royale.events.CollectionEvent');
> goog.require('org.apache.royale.events.Event');
> 
> 
> I’m not sure why there’s more than a single require for:
> 
> goog.require('org.apache.royale.collections.ArrayList');
> 
> There is a dependency on another class: com.printui.model.vos.RuntimeOptions 
> which uses ApplicationParametersCaseInsensitiveBead and Application.
> 
> The main app and index.html both have the same number of lines, but the order 
> of the classes is different.
> 
> The good news is that both versions seem to work with no RTE, but it is 
> concerning that the order of the files changes.
> 
> I’ll check some of the examples as well...
> 
>> On Dec 20, 2018, at 7:14 AM, Alex Harui <aha...@adobe.com.INVALID> wrote:
>> 
>> It might just be me, but after fixing the circular dependency issue, I'm 
>> getting repeatable builds.  It makes some sense in that the fix reduces the 
>> amount of mucking with the dependency lists.  Let me know if you still see 
>> differences and we'll see if we can figure out why.
>> 
>> -Alex
>> 
>> On 12/19/18, 12:18 AM, "Harbs" <harbs.li...@gmail.com> wrote:
>> 
>>   The DataBindingExample doesn’t seem to have an obvious runtime error, but 
>> there are missing requires in DataBindingExample.js and the addDependencies 
>> are different.
>> 
>>   HTH,
>>   Harbs
>> 
>>> On Dec 19, 2018, at 10:12 AM, Harbs <harbs.li...@gmail.com> wrote:
>>> 
>>> The TourDeJewel example has the problem.
>>> 
>>> Rebuilding the debug version gets the runtime error that ApplicationBase is 
>>> undefined.
>>> 
>>> Rebuilding the release build results in 238 errors in the Closure Compiler.
>>> 
>>>> On Dec 19, 2018, at 10:01 AM, Alex Harui <aha...@adobe.com.INVALID> wrote:
>>>> 
>>>> The circular dependency issue is almost certain to affect GoogDepsWriter.  
>>>> It is end of my day here so I will start on those changes tomorrow.  So if 
>>>> you can find a simple test case for your issue (it doesn't have to fail in 
>>>> the browser, it might be good enough that the addDependency List is 
>>>> different or missing some items) then I will look at that test case after 
>>>> I finish up the circular issue.
>>>> 
>>>> Thanks,
>>>> -Alex
>>>> 
>>>> On 12/18/18, 11:25 PM, "Alex Harui" <aha...@adobe.com.INVALID> wrote:
>>>> 
>>>> Pretty sure something will need to change in GoogDepsWriter.  Don't know 
>>>> what just yet.  Might be best if you can come up with a simple test case.. 
>>>>  I'm working on a circular dependency issue right now that might also 
>>>> affect GoogDepsWriter.  If you build some of our examples, do any show 
>>>> missing goog.addDependencies?
>>>> 
>>>> -Alex
>>>> 
>>>> On 12/18/18, 11:12 PM, "Harbs" <harbs.li...@gmail.com> wrote:
>>>> 
>>>>     So where do you suggest we fix it? In GoogDepsWriter.removeRequires?
>>>> 
>>>>     I’m not completely following what’s going on there.
>>>> 
>>>>     Harbs
>>>> 
>>>>> On Dec 19, 2018, at 12:52 AM, Alex Harui <aha...@adobe.com.INVALID> wrote:
>>>>> 
>>>>> Yeah, that makes more sense.  So somehow the information we get back from 
>>>>> processing the Royale Dependency List isn't recovering all of the 
>>>>> dependency data.  I had noticed that we didn't list @extends  and 
>>>>> @implements in the Dependency Lists and wondered how that was working.  
>>>>> Maybe it isn't working and we've been getting lucky where we've seen it 
>>>>> work.
>>>>> 
>>>>> -Alex
>>>>> 
>>>>> On 12/18/18, 1:59 PM, "Harbs" <harbs.li...@gmail.com> wrote:
>>>>> 
>>>>> The working one has (in this order):
>>>>> goog.addDependency('../../../org/apache/royale/core/Application.js', 
>>>>> ['org.apache.royale.core.Application'], 
>>>>> ['org.apache.royale.core.ApplicationBase', 
>>>>> 'org.apache.royale.core.IStrand', 'org.apache.royale.core.IParent', 
>>>>> 'org.apache.royale.events.IEventDispatcher', 
>>>>> 'org.apache.royale.core.IInitialViewApplication', 
>>>>> 'org.apache.royale.core.IPopUpHost', 
>>>>> 'org.apache.royale.core.IPopUpHostParent', 
>>>>> 'org.apache.royale.core.IRenderedObject']);
>>>>> goog.addDependency('../../../org/apache/royale/core/IInitialViewApplication.js',
>>>>>  ['org.apache.royale.core.IInitialViewApplication'], 
>>>>> ['org.apache.royale.events.IEventDispatcher']);
>>>>> goog.addDependency('../../../org/apache/royale/core/IPopUpHost.js', 
>>>>> ['org.apache.royale.core.IPopUpHost'], []);
>>>>> goog.addDependency('../../../org/apache/royale/core/IPopUpHostParent.js', 
>>>>> ['org.apache.royale.core.IPopUpHostParent'], 
>>>>> ['org.apache.royale.core.IParent']);
>>>>> goog.addDependency('../../../org/apache/royale/core/ApplicationBase.js', 
>>>>> ['org.apache.royale.core.ApplicationBase'], 
>>>>> ['org.apache.royale.core.HTMLElementWrapper', 
>>>>> 'org.apache.royale.core.IFlexInfo']);
>>>>> goog.addDependency('../../../org/apache/royale/core/IFlexInfo.js', 
>>>>> ['org.apache.royale.core.IFlexInfo'], []);
>>>>> 
>>>>> The broken one has:
>>>>> 
>>>>> goog.addDependency('../../../org/apache/royale/core/Application.js', 
>>>>> ['org.apache.royale.core.Application'], 
>>>>> ['org.apache.royale.core.ApplicationBase', 
>>>>> 'org.apache.royale.core.IStrand', 'org.apache.royale.core.IParent', 
>>>>> 'org.apache.royale.events.IEventDispatcher', 
>>>>> 'org.apache.royale.core.IInitialViewApplication', 
>>>>> 'org.apache.royale.core.IPopUpHost', 
>>>>> 'org.apache.royale.core.IPopUpHostParent', 
>>>>> 'org.apache.royale.core.IRenderedObject']);
>>>>> goog.addDependency('../../../org/apache/royale/core/BrowserResizeListener.js',
>>>>>  ['org.apache.royale.core.BrowserResizeListener'], 
>>>>> ['org.apache.royale.core.IBead']);
>>>>> goog.addDependency('../../../org/apache/royale/core/CallLaterBead.js', 
>>>>> ['org.apache.royale.core.CallLaterBead'], 
>>>>> ['org.apache.royale.core.IBead']);
>>>>> 
>>>>> (No addDependency for ApplicationBase)
>>>>> 
>>>>> The broken one also has no addDependency for HTMLElementWrapper, 
>>>>> IFlexInfo and I’m sure many others.
>>>>> 
>>>>>> On Dec 18, 2018, at 11:43 PM, Alex Harui <aha...@adobe.com.INVALID> 
>>>>>> wrote:
>>>>>> 
>>>>>> Is there a goog.addDependency for ApplicationBase.js in the working and 
>>>>>> non-working index.html, and are they different?
>>>>> 
>>>>> 
>>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>> 
>> 
>> 
>> 
> 

Reply via email to