Some comments of my own to kick off the discussion.
http://gwt-code-reviews.appspot.com/1375802/diff/1/dev/core/src/com/google/gwt/dev/DevModeBase.java File dev/core/src/com/google/gwt/dev/DevModeBase.java (right): http://gwt-code-reviews.appspot.com/1375802/diff/1/dev/core/src/com/google/gwt/dev/DevModeBase.java#newcode1061 dev/core/src/com/google/gwt/dev/DevModeBase.java:1061: "Initializing CompilationUnit cache.")); This message is mainly there to confirm that the -XpersistentUnitCache flag is doing something. The long term intention is just for this to be a behind the scenes mechanism. Maybe I should TODO remove it once it becomes the default. http://gwt-code-reviews.appspot.com/1375802/diff/1/dev/core/src/com/google/gwt/dev/javac/CompilationStateBuilder.java File dev/core/src/com/google/gwt/dev/javac/CompilationStateBuilder.java (left): http://gwt-code-reviews.appspot.com/1375802/diff/1/dev/core/src/com/google/gwt/dev/javac/CompilationStateBuilder.java#oldcode193 dev/core/src/com/google/gwt/dev/javac/CompilationStateBuilder.java:193: Map<CompiledClass, CompiledClass> cachedStructurallySame = This mapping for tracking whether the non-private API of a class is changed is replaced by just computing a hash signature with BytecodeSignatureMaker inside of Dependencies.java http://gwt-code-reviews.appspot.com/1375802/diff/1/dev/core/src/com/google/gwt/dev/javac/CompilationStateBuilder.java File dev/core/src/com/google/gwt/dev/javac/CompilationStateBuilder.java (right): http://gwt-code-reviews.appspot.com/1375802/diff/1/dev/core/src/com/google/gwt/dev/javac/CompilationStateBuilder.java#newcode232 dev/core/src/com/google/gwt/dev/javac/CompilationStateBuilder.java:232: logger.log(TreeLogger.TRACE, "Invalid units found: " + invalidatedUnits.size()); We always get this message and a small number of units that have to go through and be re-built. Saved units have some dependencies with non-null values (the classes have been successfully compiled), but the dependencies that come out of the first build have some null dependencies. I think its because some sources that get remapped with rename-to or generate-with have yet to be added to the list of units passed to the compiler when we do the initial type oracle build. http://gwt-code-reviews.appspot.com/1375802/diff/1/dev/core/src/com/google/gwt/dev/javac/Dependencies.java File dev/core/src/com/google/gwt/dev/javac/Dependencies.java (right): http://gwt-code-reviews.appspot.com/1375802/diff/1/dev/core/src/com/google/gwt/dev/javac/Dependencies.java#newcode171 dev/core/src/com/google/gwt/dev/javac/Dependencies.java:171: continue; Remove me: This was a failed experiment to get rid of invalid units. http://gwt-code-reviews.appspot.com/1375802/diff/1/dev/core/src/com/google/gwt/dev/javac/PersistentUnitCache.java File dev/core/src/com/google/gwt/dev/javac/PersistentUnitCache.java (right): http://gwt-code-reviews.appspot.com/1375802/diff/1/dev/core/src/com/google/gwt/dev/javac/PersistentUnitCache.java#newcode72 dev/core/src/com/google/gwt/dev/javac/PersistentUnitCache.java:72: * directory with a traditional place for compiled output. If we are happy with the dirs I've chosen, I should add purging the compiled dir to our webappcreator's build.xml clean target and the GWT ant config as well. http://gwt-code-reviews.appspot.com/1375802/diff/1/dev/core/src/com/google/gwt/dev/javac/PersistentUnitCache.java#newcode239 dev/core/src/com/google/gwt/dev/javac/PersistentUnitCache.java:239: private static final String CACHE_PREFIX = "cache-"; too general purpose of a name for these files? http://gwt-code-reviews.appspot.com/1375802/diff/1/dev/core/test/com/google/gwt/dev/javac/CompilationStateTest.java File dev/core/test/com/google/gwt/dev/javac/CompilationStateTest.java (right): http://gwt-code-reviews.appspot.com/1375802/diff/1/dev/core/test/com/google/gwt/dev/javac/CompilationStateTest.java#newcode565 dev/core/test/com/google/gwt/dev/javac/CompilationStateTest.java:565: // Refs should be converted into a compact serializable form This is the only change to this file. I'll back out the formatting change. http://gwt-code-reviews.appspot.com/1375802/ -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
