Updating apichecker for GWT 2.4.

Review at http://gwt-code-reviews.appspot.com/1447807

Review by: rjrjr@google.com

git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@10209 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/build.xml b/build.xml
index 81a956a..22dd94b 100755
--- a/build.xml
+++ b/build.xml
@@ -31,7 +31,7 @@
   </macrodef>
 
   <property name="gwt.apicheck.config" 
-    location="tools/api-checker/config/gwt22_23userApi.conf"/>
+    location="tools/api-checker/config/gwt23_24userApi.conf"/>
 
   <target name="buildonly"
           description="[action] Minimal one-platform devel build, without distro packaging">
diff --git a/tools/api-checker/config/gwt23_24userApi.conf b/tools/api-checker/config/gwt23_24userApi.conf
new file mode 100644
index 0000000..88547b8
--- /dev/null
+++ b/tools/api-checker/config/gwt23_24userApi.conf
@@ -0,0 +1,139 @@
+#existing API
+
+# dirRoot_old is missing because refJars are being supplied
+name_old gwt23userApi
+#sourceFiles is specified as colon-separated list of files
+sourceFiles_old com/google/gwt\
+:com/google/web\
+:javax/validation\
+
+#excludedFiles is specified as colon-separated ant patterns
+excludedFiles_old com/google/gwt/benchmarks/BenchmarkReport.java\
+:com/google/gwt/benchmarks/BenchmarkShell.java\
+:com/google/gwt/benchmarks/client/Benchmark.java\
+:**/linker/**\
+:**/rebind/**\
+:**/server/**\
+:**/tools/**\
+:**/vm/**\
+:com/google/gwt/regexp/shared/**\
+:com/google/gwt/autobean/**/impl/**\
+:com/google/gwt/autobean/shared/ValueCodex.java\
+:com/google/gwt/autobean/shared/ValueCodexHelper.java\
+:com/google/gwt/autobean/shared/AutoBeanCodex.java\
+:com/google/gwt/core/client/impl/WeakMapping.java\
+:com/google/gwt/core/ext/**\
+:com/google/gwt/dev/*.java\
+:com/google/gwt/dev/asm/**\
+:com/google/gwt/dev/cfg/**\
+:com/google/gwt/dev/generator/**\
+:com/google/gwt/dev/javac/**\
+:com/google/gwt/dev/jdt/**\
+:com/google/gwt/dev/jjs/*.java\
+:com/google/gwt/dev/jjs/ast/**\
+:com/google/gwt/dev/jjs/impl/**\
+:com/google/gwt/dev/js/**\
+:com/google/gwt/dev/json/**\
+:com/google/gwt/dev/resource/**\
+:com/google/gwt/dev/shell/**\
+:com/google/gwt/dev/ui/**\
+:com/google/gwt/dev/util/**\
+:com/google/gwt/junit/*.java\
+:com/google/gwt/junit/client/GWTTestCase.java\
+:com/google/gwt/junit/client/impl/GWTRunner.java\
+:com/google/gwt/junit/remote/**\
+:com/google/gwt/requestfactory/**\
+:com/google/gwt/resources/client/impl/**\
+:com/google/gwt/resources/css/**\
+:com/google/gwt/resources/ext/**\
+:com/google/gwt/resources/rg/**\
+:com/google/gwt/rpc/client/impl/ClientWriterFactory.java\
+:com/google/gwt/rpc/client/impl/EscapeUtil.java\
+:com/google/gwt/rpc/client/impl/RpcCallbackAdapter.java\
+:com/google/gwt/soyc/**\
+:com/google/gwt/safehtml/shared/SafeHtmlHostedModeUtils.java\
+:com/google/gwt/user/client/rpc/core/**\
+:com/google/gwt/user/client/rpc/impl/**\
+:com/google/gwt/uibinder/attributeparsers/**\
+:com/google/gwt/uibinder/elementparsers/**\
+:com/google/gwt/uibinder/testing/**\
+:com/google/gwt/util/**\
+:com/google/gwt/validation/**\
+:com/google/web/bindery/autobean/**/impl/**\
+:com/google/web/bindery/autobean/shared/ValueCodexHelper.java\
+:com/google/web/bindery/requestfactory/gwt/client/impl/**\
+:com/google/web/bindery/requestfactory/shared/impl/**\
+
+##############################################
+#new Api
+
+dirRoot_new ./
+name_new gwt24userApi
+#sourceFiles is specified as colon-separated list of files
+sourceFiles_new dev/core/super\
+:user/src\
+:user/super\
+
+#excludedFiles is specified as colon-separated ant patterns
+# The last 3 entries exclude the validation stuff.
+# Bug: http://code.google.com/p/google-web-toolkit/issues/detail?id=5566
+excludedFiles_new user/src/com/google/gwt/benchmarks/BenchmarkReport.java\
+:user/src/com/google/gwt/benchmarks/BenchmarkShell.java\
+:user/src/com/google/gwt/benchmarks/client/Benchmark.java\
+:**/linker/**\
+:**/rebind/**\
+:**/server/**\
+:**/tools/**\
+:**/vm/**\
+:user/src/com/google/gwt/regexp/shared/**\
+:user/src/com/google/web/bindery/autobean/shared/ValueCodexHelper.java\
+:user/src/com/google/web/bindery/autobean/**/impl/**\
+:user/src/com/google/gwt/core/client/impl/WeakMapping.java\
+:user/src/com/google/gwt/junit/*.java\
+:user/src/com/google/gwt/junit/client/GWTTestCase.java\
+:user/src/com/google/gwt/junit/client/impl/GWTRunner.java\
+:user/src/com/google/gwt/junit/remote/**\
+:user/src/com/google/gwt/resources/css/**\
+:user/src/com/google/gwt/resources/ext/**\
+:user/src/com/google/gwt/resources/rg/**\
+:user/src/com/google/gwt/rpc/client/impl/ClientWriterFactory.java\
+:user/src/com/google/gwt/rpc/client/impl/EscapeUtil.java\
+:user/src/com/google/gwt/rpc/client/impl/RpcCallbackAdapter.java\
+:user/src/com/google/gwt/safehtml/shared/SafeHtmlHostedModeUtils.java\
+:user/src/com/google/gwt/user/client/rpc/core/**\
+:user/src/com/google/gwt/user/client/rpc/impl/**\
+:user/src/com/google/gwt/uibinder/attributeparsers/**\
+:user/src/com/google/gwt/uibinder/elementparsers/**\
+:user/src/com/google/gwt/uibinder/testing/**\
+:user/src/com/google/gwt/util/**\
+:user/src/com/google/gwt/validation/**\
+:user/src/com/google/web/bindery/requestfactory/gwt/client/impl/**\
+:user/src/com/google/web/bindery/requestfactory/server/impl/**\
+:user/src/com/google/web/bindery/requestfactory/shared/impl/**\
+:user/src/com/google/web/bindery/requestfactory/vm/**\
+:user/src/javax/**\
+:user/src/org/**\
+
+##############################################
+#excluded packages colon separated list
+excludedPackages com.google.gwt.editor.client.impl\
+:com.google.gwt.junit.client.impl\
+:com.google.gwt.benchmarks.client.impl\
+
+##############################################
+#Api  whitelist
+# when adding to the white-list, include comments as to why the addition is
+# being made.
+
+# Removing a package protected field.
+com.google.gwt.i18n.shared.AlternateMessageSelector::OTHER MISSING
+
+# Package moved to com.google.web.bindery
+com.google.gwt.autobean.shared MISSING
+
+# move i18n classes to shared
+com.google.gwt.i18n.client.DateTimeFormat::format(Ljava/util/Date;Lcom/google/gwt/i18n/client/TimeZone;) OVERRIDABLE_METHOD_ARGUMENT_TYPE_CHANGE
+com.google.gwt.i18n.client.impl.DateRecord MISSING
+
+# Overloading AttachDetachException::tryCommand to attach/detach a finite set of widgets.
+com.google.gwt.user.client.ui.AttachDetachException::tryCommand(Ljava/lang/Iterable;Lcom/google/gwt/user/client/ui/AttachDetachException$Command;) OVERLOADED_METHOD_CALL
diff --git a/tools/api-checker/reference/README b/tools/api-checker/reference/README
index 6a54e45..207aa56 100644
--- a/tools/api-checker/reference/README
+++ b/tools/api-checker/reference/README
@@ -1,2 +1,2 @@
-gwt-dev.jar and gwt-user.jar were extracted from http://google-web-toolkit.googlecode.com/files/gwt-2.2.0.zip
+gwt-dev.jar and gwt-user.jar were extracted from http://google-web-toolkit.googlecode.com/files/gwt-2.3.0.zip
 run ./createApiCheckerReferenceJars.sh
diff --git a/tools/api-checker/reference/createApiCheckerReferenceJars.sh b/tools/api-checker/reference/createApiCheckerReferenceJars.sh
index 6439845..eb38787 100755
--- a/tools/api-checker/reference/createApiCheckerReferenceJars.sh
+++ b/tools/api-checker/reference/createApiCheckerReferenceJars.sh
@@ -29,7 +29,7 @@
   then 
     MODIFIED_FILE=gwt-dev-modified.jar
   fi 
-  jar -cf ../${MODIFIED_FILE} `find com/google/gwt -name *.java`
+  jar -cf ../${MODIFIED_FILE} `find com/google/gwt -name *.java` `find com/google/web -name *.java`
   cd ..
   rm -rf ${TEMP_DIR} 
 done
diff --git a/tools/api-checker/reference/gwt-dev-modified.jar b/tools/api-checker/reference/gwt-dev-modified.jar
index 499b341..89b29e8 100644
--- a/tools/api-checker/reference/gwt-dev-modified.jar
+++ b/tools/api-checker/reference/gwt-dev-modified.jar
Binary files differ
diff --git a/tools/api-checker/reference/gwt-user-modified.jar b/tools/api-checker/reference/gwt-user-modified.jar
index e3918fd..281287b 100644
--- a/tools/api-checker/reference/gwt-user-modified.jar
+++ b/tools/api-checker/reference/gwt-user-modified.jar
Binary files differ
diff --git a/tools/api-checker/src/com/google/gwt/tools/apichecker/ApiCompatibilityChecker.java b/tools/api-checker/src/com/google/gwt/tools/apichecker/ApiCompatibilityChecker.java
index 066f1e0..b6b5785 100644
--- a/tools/api-checker/src/com/google/gwt/tools/apichecker/ApiCompatibilityChecker.java
+++ b/tools/api-checker/src/com/google/gwt/tools/apichecker/ApiCompatibilityChecker.java
@@ -933,7 +933,7 @@
     }
     // gwt-user.jar
     Set<String> gwtIncludedPaths =
-        new HashSet<String>(Arrays.asList(new String[] {"com/google/gwt"}));
+        new HashSet<String>(Arrays.asList(new String[] {"com/google/gwt", "com/google/web"}));
     Set<String> gwtExcludedPaths =
         new HashSet<String>(
             Arrays