Seems reasonable in principle. I wouldn't want a hard dependency on Eclipse 
though; you should be able to get incremental compiles without it.

I think it should work by watching the filesystem for changes and doing 
dependency analysis to only build what's necessary after a file changed.

One question: is the IncrementalGenerator API still how we want things to 
work? If so, finishing the job of converting generators to it will help.

- Brian

On Wednesday, December 12, 2012 8:18:15 PM UTC-8, Stephen Haberman wrote:
>
> Hey, 
>
> Since Thomas brought up changes to dev mode, I've been thinking about 
> how to implement an incremental dev mode. 
>
> After playing with SuperDevMode, it is better (no extensions/etc.), but 
> AFAICT it still starts over from "let's build a ResourceOracle", "now 
> let's build a TypeOracle", etc. 
>
> Seems like we should be able to reuse ResourceOracle, TypeOracle, etc., 
> instances across compiles. And really, have the notion of invoking GWT 
> dev mode compiles go away altogether. E.g. hook into Eclipse, and 
> during auto builds have the JS files on disk just magically get updated 
> after each save. 
>
> I've been spiking an Eclipse plugin, which seems not as hard as I 
> thought it would be, which incrementally generates .jribble files 
> as .java/.class files change, with the idea of not embedding ecj 
> anymore. That's a slightly separate topic though. 
>
> The only thing that seems impossible with incremental compiles is 
> preserving the semantics that code generators see--currently they are 
> very deterministic/batch, and this would change all of that. But for 
> the better, I think. 
>
> (It would invert how GWT currently works--it's a batch system that 
> sometimes we force (badly) to be incremental, to being an incremental 
> system which sometimes you could run in batch (on the CLI).) 
>
> Does this seem terribly egregious? I think if it worked, it would 
> result in dramatic productivity improvements--the goal would be 
> "faster than coffeescript" (or whatever) compiles, and truly instant 
> refreshes after making changes. 
>
> - Stephen 
>

-- 
http://groups.google.com/group/Google-Web-Toolkit-Contributors

Reply via email to