Super Dev Mode is now the default. DevMode automatically starts Super Dev Mode and reloading a web page automatically runs the compiler when necessary. (The -noSuperDevMode flag may be used to revert to the old behavior.)
Compiling in Super Dev Mode is much faster after the first compile.
Experimental support for GSS, also known as Closure Stylesheets. (See below.)
In draft mode and Super Dev Mode, all compiler optimizations are turned off for better debugging. For example, null pointers are detected sooner.
JSNI references no longer require fully qualified class names when this wouldn't be necessary in Java. (For example, imports work.)
We‘ve started implementing JS Interop annotations, which will make it much easier to use GWT with JavaScript libraries. The specification is not final and there are bugs, so production GWT apps and libraries should continue to use JSNI for now. If you wish to experiment, you can enable JS Interop using the -XjsInteropMode
flag, which is available for the compiler and Super Dev Mode. (It doesn’t work with old DevMode.)
The experimental -XmethodNameDisplayMode
flag adds a displayName
property to each JavaScript function containing the name of the Java method. This makes Java method names available in browser debuggers at the expense of code size. (Also available in Super Dev Mode.)
Boxed JavaScript strings (created in JavaScript using new String(...)
) are no longer considered equivalent to Java strings. They should be unboxed before being passed to Java.
Many bugfixes.
Significant performance improvements in String
, ArrayList
, HashMap
, and Exception
.
New emulated classes: Locale
, NavigableSet
, and NavigableMap
.
New emulated methods in Class
, String
, Exception
, RuntimeException
, Logger
, Arrays
, Collections
, and Map.Entry
.
LinkedList
extends Deque
and handles incorrect usage better.
Better wrapping of exceptions thrown from JavaScript.
GWT apps that inherit the com.google.gwt.logging.Logging
module have different default behavior for messages logged using the java.util.logging
package. The new default is to log messages at level SEVERE
and above to the browser's console. PopupLogHandler
and SystemHandler
are no longer enabled by default.
FirebugLogHandler
and NullLoggingPopup
have been removed. ()
The CssResource.enableGss
configuration property turns on GSS support.
When enabled, resource files with a ‘gss’ extension are parsed as a Closure Stylesheet.
When enabled, GSS can be used in a UiBinder file by setting gss=true
on a ui:style
tag.
If the CssResource.legacy
configuration property is set, .css resources and ui:style
tags without gss=true
will first be converted to GSS and then parsed as GSS.
ui:data
tag has new attributes: mimeType
and doNotEmbed
.The rpc.XserializeFinalFields
configuration property turns on experimental support for serializing final fields.
LinkedHashSet
may be serialized without a serialization policy.
deRPC is removed.
Support overridden methods and generics better.
Fix support for @SkipInterfaceValidation
on RequestContext
methods.
Updated support for typed arrays.
Added History.replaceItem()
.
Fixed an issue with Window.addWindowScrollHandler
on Chrome.
The deprecated com.google.gwt.widgets
package is removed.
Various bugfixes and minor improvements.
The -noSuperDevMode
flag may be used to turn off Super Dev Mode and revert to old Dev Mode. (However, most current browsers no longer support Dev Mode plugins.)
The -modulePathPrefix
flag may be used to move DevMode's output to a subdirectory of the war directory.
Compiling is much faster after the first compile. (Compiling is skipped altogether if no files have changed.)
The first compile no longer happens at startup.
Chrome reloads the page faster while debugging. (Sourcemap file size is reduced.)
The -launcherDir
flag may be used to avoid running the GWT compiler before starting Super Dev Mode. When enabled, Super Dev Mode writes stub .nocache.js files that automatically recompile the GWT app before loading it. Therefore the bookmarklets aren't needed. (This feature is automatically enabled when launched via DevMode.)
The -logLevel
flag may be used to adjust how compile errors are reported.
The Dev Mode On
bookmarklet dialog shows whether Super Dev Mode is turned on for each module on the page.
Messages logged using java.util.logging
at level SEVERE
and above are written to the browser console by default.
Fixed a startup failure caused by locked directories on Windows.
Better error reporting for compile errors while running tests.
Messages logged using java.util.logging
at level SEVERE
and above are written to the browser console and test output by default.
-Dgwt.htmlunit.debug
may be used to open a JavaScript debugger window when running a test using HtmlUnit.
Removed RunStyleRemoteWeb
and the BrowserManager
tool.
Removed flags: -standardsMode
, -nostandardsMode
, -quirksMode
. (GWTTestCase tests are always run in an HTML page in standards mode.)
For even more detail, see the [Issue Tracker.] (https://code.google.com/p/google-web-toolkit/issues/list?can=1&q=Milestone%3D2_7+status%3AFixed)
-sourceLevel 6
)@GwtIncompatible
annotation may be used to mark classes, methods, and fields that the GWT compiler should ignore. (Any annotation with this name can be used, regardless of package.)Flags have been cleaned up for consistency, but the old flags are still supported for backward compatibility.
-out
flags were removed-saveSource
and -saveSourceOutput *dest*
options may be used to write source files used by the GWT app to an output directory. (Combined with the includeSourceMapUrl
config property, it is possible to set up source-level debugging outside Super Dev Mode.)compiler.splitpoint.leftovermerge.size
configuration property sets a minimum size for fragmentsdebugger
statementThe ie6
permutation (which also handles IE 7) is now disabled by default. Support for IE6 and IE7 will be removed in the next major GWT release.
Added the ie10
permutation. There's no fallback value, so deferred bindings and conditional CSS that explicitly checks user.agent
may need to be updated. (However, note that workarounds needed for previous versions of IE may no longer be necessary.)
UserAgent: new class to access user.agent
Element methods that return sizes in pixels automatically convert subpixel values to int (for backward compatibility).
All API's that used to take com.google.gwt.user.client.Element
(which has long been deprecated) now take a com.google.gwt.dom.client.Element
instead.
DOM methods that take a URL now accept a SafeUri object as well.
Node: added removeAllChildren()
Element: added toggleClassName()
Element.hasTagName() is now case-insensitive
Element subclasses: added is() methods, for example DivElement.is(elem)
user.client.DOM: deprecate old methods
KeyCodes: many more key codes, added isArrowKey()
HandlerRegistrations: added compose() method
Canvas: added drawImage() overloads, wrap() method
Animation: added isRunning()
DOM events not known to GWT can handled using Widget.addBitlessDomHandler(). This allows third-party libraries to handle events that GWT itself doesn't know about (such as MsPointerEvents). issue 8379
Editor<? super C>
Security: with 2.6 we believe it‘s safe to turn on the Super Dev Mode hook and leave it on in production. As an extra precaution, we recommend setting the devModeUrlWhitelistRegexp configuration property to ensure that it can only load JavaScript from localhost and your developers’ machines in your own domain.
Security: automatically disable Super Dev Mode on https pages (Another precaution, and it doesn't work anyway due to mixed-content restrictions.)
WebAppCreator now creates Ant projects with a “superdevmode” target and Super Dev Mode enabled.
Most sample apps have a “superdevmode” target
GWT.log() works and prints basic stack traces
sourceUrl comment fixed so that in a JavaScript debugger, the JavaScript source shows up as ‘{module}-0.js’ instead of just ‘0.js’.
Grey out unused Java in source code listings on the code server.
RemoteServiceServlet: the gwt.codeserver.port parameter may be used to download serialization policies from a Super Dev Mode code server's /policies/ directory. This can be used to avoid some server recompiles when working on GWT-RPC code.
For even more detail, see Changelists up to 2.6.0-rc1 and the issue tracker.
</li> <br /> <li>Added GWT SDK support for HTML5 local storage</li>
<li>RequestFactory does not fail gracefully for primitive types <a href="https://code.google.com/p/google-web-toolkit/issues/detail?id=5357">(5357)</a></li> <li>Allow CellTable headers/footers to be refreshed <a href="https://code.google.com/p/google-web-toolkit/issues/detail?id=5360">(5360)</a></li> <li>Need to document what situations source change events <a href="https://code.google.com/p/google-web-toolkit/issues/detail?id=5361">(5361)</a></li> <li>Enable tests for RequestFactoryPolymorphicTest <a href="https://code.google.com/p/google-web-toolkit/issues/detail?id=5364">(5364)</a></li> <li>Bring history management to Expenses sample <a href="https://code.google.com/p/google-web-toolkit/issues/detail?id=5366">(5366)</a></li> <li>Polymorphism not supported by Request Factory <a href="https://code.google.com/p/google-web-toolkit/issues/detail?id=5367">(5367)</a></li> <li>Server cannot return unpersisted objects <a href="https://code.google.com/p/google-web-toolkit/issues/detail?id=5373">(5374)</a></li> <li>Javadoc polymorphism rules <a href="https://code.google.com/p/google-web-toolkit/issues/detail?id=5374">(5374)</a></li> <li>Stopping an ActivityManager from a PlaceChangeEvent might cause an NPE <a href="https://code.google.com/p/google-web-toolkit/issues/detail?id=5375">(5375)</a> </li> <li>Why is gwt-servlet.jar a compile-time dependency in the pom.xml generated by the expenses.roo script? <a href="https://code.google.com/p/google-web-toolkit/issues/detail?id=5376">(5376)</a> </li> <li>Why does gwt-user.jar have scope "provided" in the pom.xml generated by the expenses.roo script? <a href="https://code.google.com/p/google-web-toolkit/issues/detail?id=5377">(5377)</a> </li> <li>Server side domain classes cannot be resolved <a href="https://code.google.com/p/google-web-toolkit/issues/detail?id=5378">(5378)</a></li> <li>Confirm logging compiles out of generated scaffold apps <a href="https://code.google.com/p/google-web-toolkit/issues/detail?id=5379">(5379)</a></li> <li>Many classes added in 2.1 still have the experimental API warnings in their javadoc that need to be removed <a href="https://code.google.com/p/google-web-toolkit/issues/detail?id=5380">(5380)</a> </li> <li>Showcase Cell List show {2} in entries with JDK 1.5 <a href="https://code.google.com/p/google-web-toolkit/issues/detail?id=5385">(5385)</a></li> <li>Many stale javadoc warnings of experimental API <a href="https://code.google.com/p/google-web-toolkit/issues/detail?id=5380">(5380)</a></li> <li>Instance methods are not looked up properly in the OperationRegistry <a href="https://code.google.com/p/google-web-toolkit/issues/detail?id=5425">(5425)</a> </li>
<li><b><a href="https://code.google.com/p/google-web-toolkit/issues/list?can=1&q=status%3AFixed%20milestone%3A1_2_Final">Changes included in GWT 1.2 since the RC</a></b> <br>Also see the GWT Blog for a discussion of the <a href="http://googlewebtoolkit.blogspot.com/2006/11/wrapping-up-gwt-12-soon.html">noteworthy issues related to 1.2 RC</a></li> <li><b><a href="https://code.google.com/p/google-web-toolkit/issues/list?can=1&q=status%3AFixed%20milestone%3A1_2_RC">New features and bug fixes in GWT 1.2 RC</a></b></li>