Also, I just want to mention that the incremental compile is behind an
experimental flag because it's still very raw.

There are some low hanging fruit improvements that should make a big
difference:
* Teach IncrementalBuilder to run the compiles in parallel.
* Add stricter freshness checking so that we don't have to recompile all of
the modules that depend on module Foo, if the change in module Foo didn't
change the interface of any of its source files.
* Stop deleting the old library directory on every launch of SuperDevMode
* Improve ModuleDef parsing so that we can do an initial freshness check on
existing library files on disk, even on a fresh launch of SuperDevMode.
* more things...

I'll file some GWT issues for these and maybe get some community
involvement on splitting up the work.




On Tue, Apr 22, 2014 at 2:38 PM, 'Goktug Gokdogan <[email protected]>' via
GWT Contributors <[email protected]> wrote:

>
>
> On Tue, Apr 22, 2014 at 2:28 PM, 'John Stalcup <[email protected]>' via
> GWT Contributors <[email protected]> wrote:
>
>> If you're depending directly on anything (in this case DOM) then that
>> thing needs to be separately compilable. Which means it's .gwt.xml file
>> needs to *not* be marked with type=fileset at the top.
>>
>> If you look at User.gwt.xml and Core.gwt.xml you'll see that these are
>> already not filesets, since they have been verified to be compilable on
>> their own (meaning they accurately include their dependencies).
>>
>> You can try changing DOM.gwt.xml by removing the type=fileset marker, and
>> then deal with any compile failures that result. (Likely DOM.gwt.xml does
>> not accurately include all its dependencies and fixing it will require
>> adding some references and breaking some resulting circular references.
>> This is what Goktug has been doing recently with some other modules).
>>
>
> I untangled a lot of dependencies for this modules and made most them
> separately compilable but I'll need some time before sending out the
> patches.
>
>
>>
>> John
>>
>>
>> On Tue, Apr 22, 2014 at 2:25 PM, John Stalcup <[email protected]> wrote:
>>
>>> Hey Jens
>>>
>>> Thanks for trying it out.
>>>
>>> I would open bugs for these issues. Separate compilation does not assume
>>> that c.g.g.user.User is inherited. (It does secretly add an implicit
>>> c.g.g.core.Core dependency, but the user doesn't need to do anything for
>>> that).
>>>
>>>
>>> On Tue, Apr 22, 2014 at 2:22 PM, Jens <[email protected]> wrote:
>>>
>>>> I just tried separate compilation from gwt trunk on a very small
>>>> project. In this project I never inherited c.g.g.user.User directly but
>>>> only the most specific modules I need.
>>>>
>>>> One such module is c.g.g.dom.DOM which fails with separate compilation
>>>> as MediaElement needs classes from c.g.g.media.dom.client but c.g.g.dom.DOM
>>>> does not inherit it.
>>>>
>>>> Should we open bugs for such problems or does separate compilation
>>>> expect users to always inherit c.g.g.user.User?
>>>>
>>>> When I do so the compilation works again because it seems like it does
>>>> not want to compile the DOM module directly anymore but only the User
>>>> module which has c.g.g.d.DOM and (indirectly) c.g.g.media.dom.DOM
>>>> inherited. I guess the different compilation behavior is because of the
>>>> type="fileset" attribute on all these specific modules?
>>>>
>>>> Can anyone explain what type="fileset" exactly does? Are there other
>>>> types?
>>>>
>>>>
>>>> I also noticed that gwteventbinder does not work with separate
>>>> compilation and it seems like it is only fixable with a breaking change.
>>>> Anyone who is interested in it can take a look at
>>>> https://github.com/google/gwteventbinder/issues/20
>>>>
>>>>
>>>> -- J.
>>>>
>>>> --
>>>> http://groups.google.com/group/Google-Web-Toolkit-Contributors
>>>> ---
>>>> You received this message because you are subscribed to the Google
>>>> Groups "GWT Contributors" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>> an email to
>>>> [email protected].
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>
>>>
>>  --
>> http://groups.google.com/group/Google-Web-Toolkit-Contributors
>> ---
>> You received this message because you are subscribed to the Google Groups
>> "GWT Contributors" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>  --
> http://groups.google.com/group/Google-Web-Toolkit-Contributors
> ---
> You received this message because you are subscribed to the Google Groups
> "GWT Contributors" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.
>

-- 
http://groups.google.com/group/Google-Web-Toolkit-Contributors
--- 
You received this message because you are subscribed to the Google Groups "GWT 
Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to