[gwt-contrib] Functional interfaces
What do you think about adding functional interfaces as RPC callbacks to GWT in the next release and make their use optional? Once Java8 is released this request will come anyways to make Java code more readable and even today at least IntelliJ users (not sure about Eclipse) can benefit from them, because IntelliJ reformats them to lambda style. Taking GWT-RPC as example we would introduce SuccessCallback and FailureCallback and you can then choose between - serverMethod(parameter, new AsyncCallback()) - serverMethod(parameter, new SuccessCallback(), new FailureCallback()) Same for RequestFactory's Receiver and RequestBuilder's RequestCallback. For example as of today I am using something like the following which reads quite nice (thanks to IntelliJ's formatting): service.getPerson(id, createAsyncCallback( //wraps both functional interfaces into an AsyncCallback because of current API (result) -> { onPersonLoaded(result); }, (failure) -> { onPersonLoadFailed(failure); } ); -- 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 google-web-toolkit-contributors+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[gwt-contrib] Change in gwt[master]: Super Dev Mode: deemphasize unused Java lines in codeserver'...
Brian Slesinsky has submitted this change and it was merged. Change subject: Super Dev Mode: deemphasize unused Java lines in codeserver's UI .. Super Dev Mode: deemphasize unused Java lines in codeserver's UI Modified the code server to render Java files as HTML when browsing interactively. (JavaScript debuggers continue to load the plain text.) In the HTML, lines that make no contribution to the JavaScript according to the source map are greyed out. This implementation is pretty inefficient since we parse the entire source map on every html page load, but it seems to suffice. Change-Id: Id16bcd2287630cebf7afb8bbbe0a198b28f5ada9 Review-Link: https://gwt-review.googlesource.com/#/c/3600/ --- M dev/codeserver/java/com/google/gwt/dev/codeserver/HtmlWriter.java A dev/codeserver/java/com/google/gwt/dev/codeserver/ReverseSourceMap.java M dev/codeserver/java/com/google/gwt/dev/codeserver/SourceHandler.java M dev/codeserver/java/com/google/gwt/dev/codeserver/SourceMap.java 4 files changed, 142 insertions(+), 15 deletions(-) Approvals: Matthew Dempsky: Looks good to me, approved Leeroy Jenkins: Verified diff --git a/dev/codeserver/java/com/google/gwt/dev/codeserver/HtmlWriter.java b/dev/codeserver/java/com/google/gwt/dev/codeserver/HtmlWriter.java index 7cde2c4..ddf7db4 100644 --- a/dev/codeserver/java/com/google/gwt/dev/codeserver/HtmlWriter.java +++ b/dev/codeserver/java/com/google/gwt/dev/codeserver/HtmlWriter.java @@ -17,10 +17,12 @@ class HtmlWriter { private static final Set ALLOWED_TAGS = Collections.unmodifiableSet(new HashSet(Arrays.asList( - "html", "head", "title", "style", "body", "pre", "span", "h1", "h2", "a", + "html", "head", "title", "style", + "body", "h1", "h2", "h3", "h4", "h5", "h6", "a", "pre", "span", "table", "tr", "td"))); private static final Set ALLOWED_ATTS = - Collections.unmodifiableSet(new HashSet(Arrays.asList("class=", "href="))); + Collections.unmodifiableSet(new HashSet(Arrays.asList( + "class=", "href="))); private final Writer out; diff --git a/dev/codeserver/java/com/google/gwt/dev/codeserver/ReverseSourceMap.java b/dev/codeserver/java/com/google/gwt/dev/codeserver/ReverseSourceMap.java new file mode 100644 index 000..a000d71 --- /dev/null +++ b/dev/codeserver/java/com/google/gwt/dev/codeserver/ReverseSourceMap.java @@ -0,0 +1,59 @@ +/* + * Copyright 2013 Google Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not + * use this file except in compliance with the License. You may obtain a copy of + * the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations under + * the License. + */ + +package com.google.gwt.dev.codeserver; + +import com.google.gwt.core.ext.TreeLogger; +import com.google.gwt.dev.util.Util; +import com.google.gwt.thirdparty.debugging.sourcemap.SourceMapConsumerV3; +import com.google.gwt.thirdparty.debugging.sourcemap.SourceMapParseException; + +/** + * A mapping from Java lines to JavaScript. + */ +class ReverseSourceMap { + private final SourceMapConsumerV3 consumer; + + private ReverseSourceMap(SourceMapConsumerV3 consumer) { +this.consumer = consumer; + } + + /** + * Reads a source map from disk and parses it into an in-memory representation. + * If it can't be loaded, logs a warning and returns an empty source map. + */ + static ReverseSourceMap load(TreeLogger logger, ModuleState moduleState) { +SourceMapConsumerV3 consumer = new SourceMapConsumerV3(); +String unparsed = Util.readFileAsString(moduleState.findSourceMap()); +try { + consumer.parse(unparsed); + return new ReverseSourceMap(consumer); +} catch (SourceMapParseException e) { + logger.log(TreeLogger.WARN, "can't parse source map", e); + return new ReverseSourceMap(null); +} + } + + /** + * Returns true if the given line in a Java file has any corresponding JavaScript in + * the GWT compiler's output. (The source file's path is relative to the source root directory + * where the GWT compiler found it.) + */ + boolean appearsInJavaScript(String path, int lineNumber) { +// TODO: getReverseMapping() seems to be off by one (lines numbered from zero). Why? +return consumer != null && !consumer.getReverseMapping(path, lineNumber - 1, -1).isEmpty(); + } +} diff --git a/dev/codeserver/java/com/google/gwt/dev/codeserver/SourceHandler.java b/dev/codeserver/java/com/google/gwt/dev/codeserver/SourceHandler.java index e24755a..e3bc45b 100644 --- a/dev/codeserver/java/com/google/g
[gwt-contrib] Change in gwt[master]: Super Dev Mode: deemphasize unused Java lines in codeserver'...
Matthew Dempsky has posted comments on this change. Change subject: Super Dev Mode: deemphasize unused Java lines in codeserver's UI .. Patch Set 3: Code-Review+2 -- To view, visit https://gwt-review.googlesource.com/3600 To unsubscribe, visit https://gwt-review.googlesource.com/settings Gerrit-MessageType: comment Gerrit-Change-Id: Id16bcd2287630cebf7afb8bbbe0a198b28f5ada9 Gerrit-PatchSet: 3 Gerrit-Project: gwt Gerrit-Branch: master Gerrit-Owner: Brian Slesinsky Gerrit-Reviewer: Brian Slesinsky Gerrit-Reviewer: John Stalcup Gerrit-Reviewer: Leeroy Jenkins Gerrit-Reviewer: Matthew Dempsky Gerrit-HasComments: No -- 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 google-web-toolkit-contributors+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[gwt-contrib] Change in gwt[master]: Super Dev Mode: deemphasize unused Java lines in codeserver'...
Hello Matthew Dempsky, Leeroy Jenkins, I'd like you to reexamine a change. Please visit https://gwt-review.googlesource.com/3600 to look at the new patch set (#3). Change subject: Super Dev Mode: deemphasize unused Java lines in codeserver's UI .. Super Dev Mode: deemphasize unused Java lines in codeserver's UI Modified the code server to render Java files as HTML when browsing interactively. (JavaScript debuggers continue to load the plain text.) In the HTML, lines that make no contribution to the JavaScript according to the source map are greyed out. This implementation is pretty inefficient since we parse the entire source map on every html page load, but it seems to suffice. Change-Id: Id16bcd2287630cebf7afb8bbbe0a198b28f5ada9 Review-Link: https://gwt-review.googlesource.com/#/c/3600/ --- M dev/codeserver/java/com/google/gwt/dev/codeserver/HtmlWriter.java A dev/codeserver/java/com/google/gwt/dev/codeserver/ReverseSourceMap.java M dev/codeserver/java/com/google/gwt/dev/codeserver/SourceHandler.java M dev/codeserver/java/com/google/gwt/dev/codeserver/SourceMap.java 4 files changed, 142 insertions(+), 15 deletions(-) -- To view, visit https://gwt-review.googlesource.com/3600 To unsubscribe, visit https://gwt-review.googlesource.com/settings Gerrit-MessageType: newpatchset Gerrit-Change-Id: Id16bcd2287630cebf7afb8bbbe0a198b28f5ada9 Gerrit-PatchSet: 3 Gerrit-Project: gwt Gerrit-Branch: master Gerrit-Owner: Brian Slesinsky Gerrit-Reviewer: Brian Slesinsky Gerrit-Reviewer: John Stalcup Gerrit-Reviewer: Leeroy Jenkins Gerrit-Reviewer: Matthew Dempsky -- 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 google-web-toolkit-contributors+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[gwt-contrib] Change in gwt[master]: Super Dev Mode: deemphasize unused Java lines in codeserver'...
Brian Slesinsky has posted comments on this change. Change subject: Super Dev Mode: deemphasize unused Java lines in codeserver's UI .. Patch Set 1: (7 comments) File dev/codeserver/java/com/google/gwt/dev/codeserver/ReverseSourceMap.java Line 1: package com.google.gwt.dev.codeserver; Done Line 12: private final SourceMapConsumerV3 consumer; Not wild about it but I don't have a better name. Line 20:* If it can't be loaded, logs an error and returns null. Done Line 29: logger.log(TreeLogger.WARN, "can't parse source map", e); This class is package-local and it's only used in one place, so I think it's okay to specialize it to make the calling code cleaner. If we ever reuse it, we can generalize it. But there was a bug because the caller didn't check for null. Fixed by changing load() to return an empty source map instead of null. File dev/codeserver/java/com/google/gwt/dev/codeserver/SourceHandler.java Line 189: private void sendSourceFileAsHtml(String moduleName, String fileName, BufferedReader lines, If this were a public API then from a "what's the contract with the caller" perspective, all that matters is that it sends an HTTP response. But since this isn't a public API and there's only one caller, I'd rather explain what it actually does. Line 194: File file = new File(fileName); Done. Went with "sourcePath" since it's actually a path. Line 200: out.startTag("html").nl(); We don't currently have a server-side templating library as a GWT dependency and I decided to avoid adding one. (Anything we use should do auto-escaping to protect against XSS.) -- To view, visit https://gwt-review.googlesource.com/3600 To unsubscribe, visit https://gwt-review.googlesource.com/settings Gerrit-MessageType: comment Gerrit-Change-Id: Id16bcd2287630cebf7afb8bbbe0a198b28f5ada9 Gerrit-PatchSet: 1 Gerrit-Project: gwt Gerrit-Branch: master Gerrit-Owner: Brian Slesinsky Gerrit-Reviewer: Brian Slesinsky Gerrit-Reviewer: John Stalcup Gerrit-Reviewer: Leeroy Jenkins Gerrit-Reviewer: Matthew Dempsky Gerrit-HasComments: Yes -- 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 google-web-toolkit-contributors+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[gwt-contrib] Change in gwt[master]: adds type tightening (and tests) for casts inside of RunAsyn...
John Stalcup has submitted this change and it was merged. Change subject: adds type tightening (and tests) for casts inside of RunAsync onSuccessCalls, resulting in smaller leftover fragments .. adds type tightening (and tests) for casts inside of RunAsync onSuccessCalls, resulting in smaller leftover fragments Change-Id: I7b454db222da054834aa0d78b1a769100bf9da9b Review-Link: https://gwt-review.googlesource.com/#/c/3460/ --- M dev/core/src/com/google/gwt/dev/jjs/impl/TypeTightener.java M dev/core/test/com/google/gwt/dev/jjs/impl/CodeSplitter2Test.java 2 files changed, 56 insertions(+), 9 deletions(-) Approvals: Roberto Lublinerman: Looks good to me, approved Leeroy Jenkins: Verified diff --git a/dev/core/src/com/google/gwt/dev/jjs/impl/TypeTightener.java b/dev/core/src/com/google/gwt/dev/jjs/impl/TypeTightener.java index 5ac6ea7..0c13a7a 100644 --- a/dev/core/src/com/google/gwt/dev/jjs/impl/TypeTightener.java +++ b/dev/core/src/com/google/gwt/dev/jjs/impl/TypeTightener.java @@ -45,6 +45,7 @@ import com.google.gwt.dev.jjs.ast.JProgram; import com.google.gwt.dev.jjs.ast.JReferenceType; import com.google.gwt.dev.jjs.ast.JReturnStatement; +import com.google.gwt.dev.jjs.ast.JRunAsync; import com.google.gwt.dev.jjs.ast.JTryStatement; import com.google.gwt.dev.jjs.ast.JType; import com.google.gwt.dev.jjs.ast.JTypeOracle; @@ -625,6 +626,13 @@ } @Override +public boolean visit(JRunAsync x, Context ctx) { + // JRunAsync's onSuccessCall is not normally traversed but should be here. + x.traverseOnSuccess(this); + return true; +} + +@Override public boolean visit(JClassType x, Context ctx) { // don't mess with classes used in code gen if (program.codeGenTypes.contains(x)) { diff --git a/dev/core/test/com/google/gwt/dev/jjs/impl/CodeSplitter2Test.java b/dev/core/test/com/google/gwt/dev/jjs/impl/CodeSplitter2Test.java index 70eaa5e..bc8b1b6 100644 --- a/dev/core/test/com/google/gwt/dev/jjs/impl/CodeSplitter2Test.java +++ b/dev/core/test/com/google/gwt/dev/jjs/impl/CodeSplitter2Test.java @@ -83,13 +83,14 @@ private JProgram jProgram = null; private JsProgram jsProgram = null; - - public void setUp() throws Exception{ + + @Override + public void setUp() throws Exception { super.setUp(); stackMode.addDefinedValue(new ConditionNone(), "STRIP"); jsProgram = new JsProgram(); } - + public void testSimple() throws UnableToCompleteException { StringBuffer code = new StringBuffer(); code.append("package test;\n"); @@ -127,6 +128,34 @@ // functionC must be in the initial fragment. assertInFragment("functionC", 0); + } + + public void testOnSuccessCallCast() throws UnableToCompleteException { +StringBuffer code = new StringBuffer(); +code.append("package test;\n"); +code.append("import com.google.gwt.core.client.GWT;\n"); +code.append("import com.google.gwt.core.client.RunAsyncCallback;\n"); +code.append("public class EntryPoint {\n"); +code.append(" " + functionA); +code.append(" " + functionB); +code.append(" " + functionC); +code.append(" public static void onModuleLoad() {\n"); +code.append("functionC();"); +code.append("" + createRunAsync("(RunAsyncCallback)", "functionA();")); +code.append("" + createRunAsync("(RunAsyncCallback)", "functionB();")); +code.append(" }\n"); +code.append("}\n"); +compileSnippet(code.toString()); + +// init + 2 fragments + leftover. +assertFragmentCount(4); + +assertInFragment("functionA", 1); +assertInFragment("functionB", 2); + +// Verify that functionA and B aren't in the leftover. +assertNotInFragment("functionA", 3); +assertNotInFragment("functionB", 3); } public void testMergeLeftOvers() throws UnableToCompleteException { @@ -292,6 +321,8 @@ jProgram.addEntryMethod(findMethod(jProgram, "onModuleLoad")); CastNormalizer.exec(jProgram, false); ArrayNormalizer.exec(jProgram); +TypeTightener.exec(jProgram); +MethodCallTightener.exec(jProgram); Map symbolTable = new TreeMap(new SymbolData.ClassIdentComparator()); JavaToJavaScriptMap map = GenerateJavaScriptAST.exec( @@ -332,13 +363,21 @@ mergeLimit); } - - private static String createRunAsync(String body) { -return "GWT.runAsync(new RunAsyncCallback() {" + - "public void onFailure(Throwable reason) {}" + - "public void onSuccess() {" + body + "}});"; + private static String createRunAsync(String cast, String body) { +StringBuffer code = new StringBuffer(); +code.append("GWT.runAsync(" + cast + "new RunAsyncCallback() {\n"); +code.append(" public void onFailure(Throwable reason) {}\n"); +code.append(" public void onSuccess() {\n"); +code.append("" + body); +code.append(" }\n"); +code.append("});\n"); +retu
[gwt-contrib] Change in gwt[master]: Super Dev Mode: deemphasize unused Java lines in codeserver'...
Matthew Dempsky has posted comments on this change. Change subject: Super Dev Mode: deemphasize unused Java lines in codeserver's UI .. Patch Set 2: Code-Review+2 (1 comment) Sorry, another nit. :) File dev/codeserver/java/com/google/gwt/dev/codeserver/ReverseSourceMap.java Line 36:* If it can't be loaded, logs an warning and returns an empty source map. Nit: "logs a warning", not "an warning". -- To view, visit https://gwt-review.googlesource.com/3600 To unsubscribe, visit https://gwt-review.googlesource.com/settings Gerrit-MessageType: comment Gerrit-Change-Id: Id16bcd2287630cebf7afb8bbbe0a198b28f5ada9 Gerrit-PatchSet: 2 Gerrit-Project: gwt Gerrit-Branch: master Gerrit-Owner: Brian Slesinsky Gerrit-Reviewer: John Stalcup Gerrit-Reviewer: Leeroy Jenkins Gerrit-Reviewer: Matthew Dempsky Gerrit-HasComments: Yes -- 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 google-web-toolkit-contributors+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[gwt-contrib] Change in gwt[master]: Super Dev Mode: deemphasize unused Java lines in codeserver'...
Hello Matthew Dempsky, Leeroy Jenkins, I'd like you to reexamine a change. Please visit https://gwt-review.googlesource.com/3600 to look at the new patch set (#2). Change subject: Super Dev Mode: deemphasize unused Java lines in codeserver's UI .. Super Dev Mode: deemphasize unused Java lines in codeserver's UI Modified the code server to render Java files as HTML when browsing interactively. (JavaScript debuggers continue to load the plain text.) In the HTML, lines that make no contribution to the JavaScript according to the source map are greyed out. This implementation is pretty inefficient since we parse the entire source map on every html page load, but it seems to suffice. Change-Id: Id16bcd2287630cebf7afb8bbbe0a198b28f5ada9 Review-Link: https://gwt-review.googlesource.com/#/c/3600/ --- M dev/codeserver/java/com/google/gwt/dev/codeserver/HtmlWriter.java A dev/codeserver/java/com/google/gwt/dev/codeserver/ReverseSourceMap.java M dev/codeserver/java/com/google/gwt/dev/codeserver/SourceHandler.java M dev/codeserver/java/com/google/gwt/dev/codeserver/SourceMap.java 4 files changed, 142 insertions(+), 15 deletions(-) -- To view, visit https://gwt-review.googlesource.com/3600 To unsubscribe, visit https://gwt-review.googlesource.com/settings Gerrit-MessageType: newpatchset Gerrit-Change-Id: Id16bcd2287630cebf7afb8bbbe0a198b28f5ada9 Gerrit-PatchSet: 2 Gerrit-Project: gwt Gerrit-Branch: master Gerrit-Owner: Brian Slesinsky Gerrit-Reviewer: John Stalcup Gerrit-Reviewer: Leeroy Jenkins Gerrit-Reviewer: Matthew Dempsky -- 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 google-web-toolkit-contributors+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[gwt-contrib] Change in gwt[master]: Optimize initializing fields at the top scope.
Stephen Haberman has posted comments on this change. Change subject: Optimize initializing fields at the top scope. .. Patch Set 6: (1 comment) File dev/core/src/com/google/gwt/dev/jjs/impl/GenerateJavaScriptAST.java Line 2346: if (x.getTarget().isStatic() | | !x.getTarget().getEnclosingType().replaces(currentClass)) { You are right, fields are tricky. At this point, I'm in favor of 1)--if/when we do miss a complex scenario, the worst case is that the semantics (fields being assigned too soon) will be GWT's current behavior. -- To view, visit https://gwt-review.googlesource.com/3440 To unsubscribe, visit https://gwt-review.googlesource.com/settings Gerrit-MessageType: comment Gerrit-Change-Id: I97a06eb36396a8b8659ce9a025b21a9cf93d0500 Gerrit-PatchSet: 6 Gerrit-Project: gwt Gerrit-Branch: master Gerrit-Owner: Stephen Haberman Gerrit-Reviewer: Brian Slesinsky Gerrit-Reviewer: Leeroy Jenkins Gerrit-Reviewer: Matthew Dempsky Gerrit-Reviewer: Roberto Lublinerman Gerrit-Reviewer: Stephen Haberman Gerrit-HasComments: Yes -- 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 google-web-toolkit-contributors+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[gwt-contrib] Change in gwt[master]: adds type tightening (and tests) for casts inside of RunAsyn...
Roberto Lublinerman has posted comments on this change. Change subject: adds type tightening (and tests) for casts inside of RunAsync onSuccessCalls, resulting in smaller leftover fragments .. Patch Set 2: Code-Review+2 -- To view, visit https://gwt-review.googlesource.com/3460 To unsubscribe, visit https://gwt-review.googlesource.com/settings Gerrit-MessageType: comment Gerrit-Change-Id: I7b454db222da054834aa0d78b1a769100bf9da9b Gerrit-PatchSet: 2 Gerrit-Project: gwt Gerrit-Branch: master Gerrit-Owner: John Stalcup Gerrit-Reviewer: John Stalcup Gerrit-Reviewer: Leeroy Jenkins Gerrit-Reviewer: Roberto Lublinerman Gerrit-HasComments: No -- 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 google-web-toolkit-contributors+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[gwt-contrib] Change in gwt[master]: Optimize initializing fields at the top scope.
Roberto Lublinerman has posted comments on this change. Change subject: Optimize initializing fields at the top scope. .. Patch Set 6: (1 comment) File dev/core/src/com/google/gwt/dev/jjs/impl/GenerateJavaScriptAST.java Line 2346: if (x.getTarget().isStatic() | | !x.getTarget().getEnclosingType().replaces(currentClass)) { I think it is worth keeping in but still think there are some unsafe (incorrect) scenarios . You have to go very out of your way to reproduce those but I think we should be very careful still. Say for example that you store the "this" reference in a field (possibly static) and then call a static function that accesses it and does a dynamic call. Then the optimization in that case is incorrect. We have three choices: (1) Leave it as it is now and assume that we are allowed our semantics to divert from java (as we do in some other limited circumstances). (2) Don't optimize those cases. (3) Add the necessary checks. i.e. that this is not leaked to a field. But we have to make sure that we cover all possible scenarios. -- To view, visit https://gwt-review.googlesource.com/3440 To unsubscribe, visit https://gwt-review.googlesource.com/settings Gerrit-MessageType: comment Gerrit-Change-Id: I97a06eb36396a8b8659ce9a025b21a9cf93d0500 Gerrit-PatchSet: 6 Gerrit-Project: gwt Gerrit-Branch: master Gerrit-Owner: Stephen Haberman Gerrit-Reviewer: Brian Slesinsky Gerrit-Reviewer: Leeroy Jenkins Gerrit-Reviewer: Matthew Dempsky Gerrit-Reviewer: Roberto Lublinerman Gerrit-Reviewer: Stephen Haberman Gerrit-HasComments: Yes -- 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 google-web-toolkit-contributors+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[gwt-contrib] Change in gwt[master]: Adds a regression test for fragment splitting
John Stalcup has submitted this change and it was merged. Change subject: Adds a regression test for fragment splitting .. Adds a regression test for fragment splitting Test to verifies that future changes don't accidentally push *all* code into the leftover fragment. Change-Id: I34d21081ea4e90b95f5b2d77a7a647e388e25335 Review-Link: https://gwt-review.googlesource.com/#/c/3590/ --- M user/src/com/google/gwt/core/client/impl/LoadingStrategyBase.java M user/src/com/google/gwt/core/client/impl/XhrLoadingStrategy.java M user/test/com/google/gwt/dev/jjs/CompilerSuite.java A user/test/com/google/gwt/dev/jjs/RunAsyncContent.gwt.xml A user/test/com/google/gwt/dev/jjs/test/LoggingXhrLoadingStrategy.java A user/test/com/google/gwt/dev/jjs/test/RunAsyncContentTest.java 6 files changed, 200 insertions(+), 3 deletions(-) Approvals: Matthew Dempsky: Looks good to me, but someone else must approve Leeroy Jenkins: Verified Goktug Gokdogan: Looks good to me, approved diff --git a/user/src/com/google/gwt/core/client/impl/LoadingStrategyBase.java b/user/src/com/google/gwt/core/client/impl/LoadingStrategyBase.java index 130200c..5c0d38b 100644 --- a/user/src/com/google/gwt/core/client/impl/LoadingStrategyBase.java +++ b/user/src/com/google/gwt/core/client/impl/LoadingStrategyBase.java @@ -57,7 +57,7 @@ * RequestData's tryInstall() function, and if it fails, it should call it's * RequestData's onLoadError() function. */ - interface DownloadStrategy { + protected interface DownloadStrategy { void tryDownload(final RequestData request); } @@ -110,8 +110,12 @@ this.downloadStrategy = downloadStrategy; } +public LoadTerminatedHandler getErrorHandler() { return errorHandler; } + public int getFragment() { return fragment; } +public int getRetryCount() { return retryCount; } + public String getUrl() { return url; } public void onLoadError(Throwable e, boolean mayRetry) { diff --git a/user/src/com/google/gwt/core/client/impl/XhrLoadingStrategy.java b/user/src/com/google/gwt/core/client/impl/XhrLoadingStrategy.java index 1ced92f..e6054ff 100644 --- a/user/src/com/google/gwt/core/client/impl/XhrLoadingStrategy.java +++ b/user/src/com/google/gwt/core/client/impl/XhrLoadingStrategy.java @@ -29,7 +29,7 @@ /** * Uses XHR's to download the code. */ - protected static class XhrDownloadStrategy implements DownloadStrategy { + public static class XhrDownloadStrategy implements DownloadStrategy { @Override public void tryDownload(final RequestData request) { final XMLHttpRequest xhr = XMLHttpRequest.create(); diff --git a/user/test/com/google/gwt/dev/jjs/CompilerSuite.java b/user/test/com/google/gwt/dev/jjs/CompilerSuite.java index 1e35dd0..47e4018 100644 --- a/user/test/com/google/gwt/dev/jjs/CompilerSuite.java +++ b/user/test/com/google/gwt/dev/jjs/CompilerSuite.java @@ -22,8 +22,8 @@ import com.google.gwt.dev.jjs.test.BlankInterfaceTest; import com.google.gwt.dev.jjs.test.ClassCastTest; import com.google.gwt.dev.jjs.test.ClassObjectTest; -import com.google.gwt.dev.jjs.test.CompilerTest; import com.google.gwt.dev.jjs.test.CompilerMiscRegressionTest; +import com.google.gwt.dev.jjs.test.CompilerTest; import com.google.gwt.dev.jjs.test.CoverageTest; import com.google.gwt.dev.jjs.test.EnhancedForLoopTest; import com.google.gwt.dev.jjs.test.EnumsTest; @@ -47,6 +47,7 @@ import com.google.gwt.dev.jjs.test.MiscellaneousTest; import com.google.gwt.dev.jjs.test.NativeLongTest; import com.google.gwt.dev.jjs.test.ObjectIdentityTest; +import com.google.gwt.dev.jjs.test.RunAsyncContentTest; import com.google.gwt.dev.jjs.test.RunAsyncFailureTest; import com.google.gwt.dev.jjs.test.RunAsyncMetricsIntegrationTest; import com.google.gwt.dev.jjs.test.RunAsyncTest; @@ -97,6 +98,7 @@ suite.addTestSuite(MiscellaneousTest.class); suite.addTestSuite(NativeLongTest.class); suite.addTestSuite(ObjectIdentityTest.class); +suite.addTestSuite(RunAsyncContentTest.class); suite.addTestSuite(RunAsyncFailureTest.class); suite.addTestSuite(RunAsyncMetricsIntegrationTest.class); suite.addTestSuite(RunAsyncTest.class); diff --git a/user/test/com/google/gwt/dev/jjs/RunAsyncContent.gwt.xml b/user/test/com/google/gwt/dev/jjs/RunAsyncContent.gwt.xml new file mode 100644 index 000..a123392 --- /dev/null +++ b/user/test/com/google/gwt/dev/jjs/RunAsyncContent.gwt.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + class="com.google.gwt.dev.jjs.test.LoggingXhrLoadingStrategy"> +class="com.google.gwt.core.client.impl.AsyncFragmentLoader.LoadingStrategy"/> + + diff --git a/user/test/com/google/gwt/dev/jjs/test/LoggingXhrLoadingStrategy.java b/user/test/com/google/gwt/dev/jjs/test/LoggingXhrLoadingStrategy.java new file mode 100644 index 000..7d237bd --- /dev/null +++ b/user/test/com/google/gwt/dev/jjs/test/LoggingXhrLoadi
[gwt-contrib] Change in gwt[master]: Optimize initializing fields at the top scope.
Hello Leeroy Jenkins, I'd like you to reexamine a change. Please visit https://gwt-review.googlesource.com/3440 to look at the new patch set (#8). Change subject: Optimize initializing fields at the top scope. .. Optimize initializing fields at the top scope. Change-Id: I97a06eb36396a8b8659ce9a025b21a9cf93d0500 --- M dev/core/src/com/google/gwt/dev/jjs/impl/GenerateJavaScriptAST.java 1 file changed, 119 insertions(+), 3 deletions(-) -- To view, visit https://gwt-review.googlesource.com/3440 To unsubscribe, visit https://gwt-review.googlesource.com/settings Gerrit-MessageType: newpatchset Gerrit-Change-Id: I97a06eb36396a8b8659ce9a025b21a9cf93d0500 Gerrit-PatchSet: 8 Gerrit-Project: gwt Gerrit-Branch: master Gerrit-Owner: Stephen Haberman Gerrit-Reviewer: Brian Slesinsky Gerrit-Reviewer: Leeroy Jenkins Gerrit-Reviewer: Matthew Dempsky Gerrit-Reviewer: Roberto Lublinerman Gerrit-Reviewer: Stephen Haberman -- 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 google-web-toolkit-contributors+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[gwt-contrib] Change in gwt[master]: Optimize initializing fields at the top scope.
Stephen Haberman has posted comments on this change. Change subject: Optimize initializing fields at the top scope. .. Patch Set 6: (2 comments) Thanks all, for continuing to vet the patch. File dev/core/src/com/google/gwt/dev/jjs/impl/GenerateJavaScriptAST.java Line 2326: public boolean visit(JMethod x, Context ctx) { Done Line 2346: if (x.getTarget().isStatic() | | !x.getTarget().getEnclosingType().replaces(currentClass)) { I believe it's okay because the "new UnrelatedClass(this)" call is itself a JMethodCall to the cstr, which would have leaked "this", and so caused the current class to be marked (I actually saw this happen when debugging; I forget which class it was for). So--the current logic is "if you call any method on yourself, use the slow way" or "if you call any static/other method that could pass you, also use the slow way". If I leave this check out, running CompilerTest, it goes from ~3 classes using the slow way (Throwable, http.client.Request, and FieldInitOrderBase) to ~20-25 classes using the slow way (including ArrayList due to the c.toArray() method call). So, I think this is worth keeping in? -- To view, visit https://gwt-review.googlesource.com/3440 To unsubscribe, visit https://gwt-review.googlesource.com/settings Gerrit-MessageType: comment Gerrit-Change-Id: I97a06eb36396a8b8659ce9a025b21a9cf93d0500 Gerrit-PatchSet: 6 Gerrit-Project: gwt Gerrit-Branch: master Gerrit-Owner: Stephen Haberman Gerrit-Reviewer: Brian Slesinsky Gerrit-Reviewer: Leeroy Jenkins Gerrit-Reviewer: Matthew Dempsky Gerrit-Reviewer: Roberto Lublinerman Gerrit-Reviewer: Stephen Haberman Gerrit-HasComments: Yes -- 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 google-web-toolkit-contributors+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[gwt-contrib] Change in gwt[master]: Optimize initializing fields at the top scope.
Hello Leeroy Jenkins, I'd like you to reexamine a change. Please visit https://gwt-review.googlesource.com/3440 to look at the new patch set (#7). Change subject: Optimize initializing fields at the top scope. .. Optimize initializing fields at the top scope. Change-Id: I97a06eb36396a8b8659ce9a025b21a9cf93d0500 --- M dev/core/src/com/google/gwt/dev/jjs/impl/GenerateJavaScriptAST.java 1 file changed, 120 insertions(+), 3 deletions(-) -- To view, visit https://gwt-review.googlesource.com/3440 To unsubscribe, visit https://gwt-review.googlesource.com/settings Gerrit-MessageType: newpatchset Gerrit-Change-Id: I97a06eb36396a8b8659ce9a025b21a9cf93d0500 Gerrit-PatchSet: 7 Gerrit-Project: gwt Gerrit-Branch: master Gerrit-Owner: Stephen Haberman Gerrit-Reviewer: Brian Slesinsky Gerrit-Reviewer: Leeroy Jenkins Gerrit-Reviewer: Matthew Dempsky Gerrit-Reviewer: Roberto Lublinerman Gerrit-Reviewer: Stephen Haberman -- 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 google-web-toolkit-contributors+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[gwt-contrib] Change in gwt[master]: Super Dev Mode: deemphasize unused Java lines in codeserver'...
John Stalcup has posted comments on this change. Change subject: Super Dev Mode: deemphasize unused Java lines in codeserver's UI .. Patch Set 1: (6 comments) most of these comments are just suggestions. File dev/codeserver/java/com/google/gwt/dev/codeserver/ReverseSourceMap.java Line 12: private final SourceMapConsumerV3 consumer; i think "consumer" is too vague Line 20:* If it can't be loaded, logs an error and returns null. "logs a warning" Line 29: logger.log(TreeLogger.WARN, "can't parse source map", e); seems like maybe the decision about whether a parse exception is fatal, should be deferred to the caller of load() not to load() itself? File dev/codeserver/java/com/google/gwt/dev/codeserver/SourceHandler.java Line 189: private void sendSourceFileAsHtml(String moduleName, String fileName, BufferedReader lines, is source html highlighting out of scope for the responsibilities of this file? "Serves Java source files so that a browser's debugger can display them." Line 194: File file = new File(fileName); s/fileName/sourceFileName s/file/sourceFile Line 200: out.startTag("html").nl(); it might not be worth the hassle, but did you consider using some sort of string templating library instead? -- To view, visit https://gwt-review.googlesource.com/3600 To unsubscribe, visit https://gwt-review.googlesource.com/settings Gerrit-MessageType: comment Gerrit-Change-Id: Id16bcd2287630cebf7afb8bbbe0a198b28f5ada9 Gerrit-PatchSet: 1 Gerrit-Project: gwt Gerrit-Branch: master Gerrit-Owner: Brian Slesinsky Gerrit-Reviewer: John Stalcup Gerrit-Reviewer: Leeroy Jenkins Gerrit-Reviewer: Matthew Dempsky Gerrit-HasComments: Yes -- 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 google-web-toolkit-contributors+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[gwt-contrib] Change in gwt[master]: Optimize initializing fields at the top scope.
Matthew Dempsky has posted comments on this change. Change subject: Optimize initializing fields at the top scope. .. Patch Set 5: (1 comment) File dev/core/src/com/google/gwt/dev/jjs/impl/GenerateJavaScriptAST.java Line 2216: * Technically, to match JVM semantics, we should only do this for final or static fields. For Ah, no, I just misread the comment the first time. I thought it was an observable change. -- To view, visit https://gwt-review.googlesource.com/3440 To unsubscribe, visit https://gwt-review.googlesource.com/settings Gerrit-MessageType: comment Gerrit-Change-Id: I97a06eb36396a8b8659ce9a025b21a9cf93d0500 Gerrit-PatchSet: 5 Gerrit-Project: gwt Gerrit-Branch: master Gerrit-Owner: Stephen Haberman Gerrit-Reviewer: Brian Slesinsky Gerrit-Reviewer: Leeroy Jenkins Gerrit-Reviewer: Matthew Dempsky Gerrit-Reviewer: Roberto Lublinerman Gerrit-Reviewer: Stephen Haberman Gerrit-HasComments: Yes -- 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 google-web-toolkit-contributors+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[gwt-contrib] Change in gwt[master]: Optimize initializing fields at the top scope.
Matthew Dempsky has posted comments on this change. Change subject: Optimize initializing fields at the top scope. .. Patch Set 6: (1 comment) File dev/core/src/com/google/gwt/dev/jjs/impl/GenerateJavaScriptAST.java Line 2231: } else { You can also get rid of the else nesting here, to remove another nested block. -- To view, visit https://gwt-review.googlesource.com/3440 To unsubscribe, visit https://gwt-review.googlesource.com/settings Gerrit-MessageType: comment Gerrit-Change-Id: I97a06eb36396a8b8659ce9a025b21a9cf93d0500 Gerrit-PatchSet: 6 Gerrit-Project: gwt Gerrit-Branch: master Gerrit-Owner: Stephen Haberman Gerrit-Reviewer: Brian Slesinsky Gerrit-Reviewer: Leeroy Jenkins Gerrit-Reviewer: Matthew Dempsky Gerrit-Reviewer: Roberto Lublinerman Gerrit-Reviewer: Stephen Haberman Gerrit-HasComments: Yes -- 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 google-web-toolkit-contributors+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[gwt-contrib] Change in gwt[master]: Optimize initializing fields at the top scope.
Roberto Lublinerman has posted comments on this change. Change subject: Optimize initializing fields at the top scope. .. Patch Set 6: (2 comments) File dev/core/src/com/google/gwt/dev/jjs/impl/GenerateJavaScriptAST.java Line 2326: public boolean visit(JMethod x, Context ctx) { Add // Check constructors and init method. if (x.getName().equals("$$init") { return true; } Line 2346: if (x.getTarget().isStatic() | | !x.getTarget().getEnclosingType().replaces(currentClass)) { I think this is still not safe. If we don't optimize for this case do we leave out many opportunities? The reason it is not safe is that the "this" reference might leak in many ways e.g. seeminglySafe(new UnrelatedClass(this)); To be safe either we need to check every potentially called method (as Brian suggested); or allow methods that won't be able to observe this and this case is subtle. Let's leave this out for the moment, go ahead with the patch and see if we miss too many opportunities. -- To view, visit https://gwt-review.googlesource.com/3440 To unsubscribe, visit https://gwt-review.googlesource.com/settings Gerrit-MessageType: comment Gerrit-Change-Id: I97a06eb36396a8b8659ce9a025b21a9cf93d0500 Gerrit-PatchSet: 6 Gerrit-Project: gwt Gerrit-Branch: master Gerrit-Owner: Stephen Haberman Gerrit-Reviewer: Brian Slesinsky Gerrit-Reviewer: Leeroy Jenkins Gerrit-Reviewer: Matthew Dempsky Gerrit-Reviewer: Roberto Lublinerman Gerrit-Reviewer: Stephen Haberman Gerrit-HasComments: Yes -- 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 google-web-toolkit-contributors+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[gwt-contrib] Change in gwt[master]: Optimize initializing fields at the top scope.
Hello Leeroy Jenkins, I'd like you to reexamine a change. Please visit https://gwt-review.googlesource.com/3440 to look at the new patch set (#6). Change subject: Optimize initializing fields at the top scope. .. Optimize initializing fields at the top scope. Change-Id: I97a06eb36396a8b8659ce9a025b21a9cf93d0500 --- M dev/core/src/com/google/gwt/dev/jjs/impl/GenerateJavaScriptAST.java 1 file changed, 110 insertions(+), 3 deletions(-) -- To view, visit https://gwt-review.googlesource.com/3440 To unsubscribe, visit https://gwt-review.googlesource.com/settings Gerrit-MessageType: newpatchset Gerrit-Change-Id: I97a06eb36396a8b8659ce9a025b21a9cf93d0500 Gerrit-PatchSet: 6 Gerrit-Project: gwt Gerrit-Branch: master Gerrit-Owner: Stephen Haberman Gerrit-Reviewer: Brian Slesinsky Gerrit-Reviewer: Leeroy Jenkins Gerrit-Reviewer: Matthew Dempsky Gerrit-Reviewer: Roberto Lublinerman Gerrit-Reviewer: Stephen Haberman -- 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 google-web-toolkit-contributors+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[gwt-contrib] Change in gwt[master]: Optimize initializing fields at the top scope.
Stephen Haberman has posted comments on this change. Change subject: Optimize initializing fields at the top scope. .. Patch Set 5: (2 comments) File dev/core/src/com/google/gwt/dev/jjs/impl/GenerateJavaScriptAST.java Line 2216: * Technically, to match JVM semantics, we should only do this for final or static fields. For Well, I had added a test to CompilerTest in the last CL that does assert the semantics are correct/match the JVM. Which I thought was the most important part. For this CL, since the optimization does not change any observable program behavior, I'd have to assert against the generated javascript--e.g. assert this field literal as assigned on the prototype. I know other GWT tests do this (assert against the JS), but I didn't see any infrastructure in CompilerTest for doing that...I think I'd have to make a separate test and copy/paste some other approach... Should I explore that? Line 2225: if (x.getLiteralInitializer() != null) { I like minimized nested as well; will change. -- To view, visit https://gwt-review.googlesource.com/3440 To unsubscribe, visit https://gwt-review.googlesource.com/settings Gerrit-MessageType: comment Gerrit-Change-Id: I97a06eb36396a8b8659ce9a025b21a9cf93d0500 Gerrit-PatchSet: 5 Gerrit-Project: gwt Gerrit-Branch: master Gerrit-Owner: Stephen Haberman Gerrit-Reviewer: Brian Slesinsky Gerrit-Reviewer: Leeroy Jenkins Gerrit-Reviewer: Matthew Dempsky Gerrit-Reviewer: Roberto Lublinerman Gerrit-Reviewer: Stephen Haberman Gerrit-HasComments: Yes -- 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 google-web-toolkit-contributors+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[gwt-contrib] Change in gwt[master]: Optimize initializing fields at the top scope.
Matthew Dempsky has posted comments on this change. Change subject: Optimize initializing fields at the top scope. .. Patch Set 5: (2 comments) File dev/core/src/com/google/gwt/dev/jjs/impl/GenerateJavaScriptAST.java Line 2216: * Technically, to match JVM semantics, we should only do this for final or static fields. For Sounds like something we could add a test for? Line 2225: if (x.getLiteralInitializer() != null) { Just as an aside, Go programming has made me accustomed to trying to restructure conditionals to minimize block nesting. E.g., if (x.getLiteralInitializer() == null) { return false; } if (x.isFinal() || x.isStatic()) { return true; } JDeclaredType current = ...; ... But I'll leave it up to you/Roberto to decide whether that actually makes the code more readable or not. -- To view, visit https://gwt-review.googlesource.com/3440 To unsubscribe, visit https://gwt-review.googlesource.com/settings Gerrit-MessageType: comment Gerrit-Change-Id: I97a06eb36396a8b8659ce9a025b21a9cf93d0500 Gerrit-PatchSet: 5 Gerrit-Project: gwt Gerrit-Branch: master Gerrit-Owner: Stephen Haberman Gerrit-Reviewer: Brian Slesinsky Gerrit-Reviewer: Leeroy Jenkins Gerrit-Reviewer: Matthew Dempsky Gerrit-Reviewer: Roberto Lublinerman Gerrit-Reviewer: Stephen Haberman Gerrit-HasComments: Yes -- 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 google-web-toolkit-contributors+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[gwt-contrib] Change in gwt[master]: Super Dev Mode: deemphasize unused Java lines in codeserver'...
Matthew Dempsky has posted comments on this change. Change subject: Super Dev Mode: deemphasize unused Java lines in codeserver's UI .. Patch Set 1: Code-Review+2 (1 comment) LGTM with one nit. File dev/codeserver/java/com/google/gwt/dev/codeserver/ReverseSourceMap.java Line 1: package com.google.gwt.dev.codeserver; Copyright? (I wonder why Jenkins didn't complain about this. Maybe the copyright check doesn't descend into dev/codeserver?) -- To view, visit https://gwt-review.googlesource.com/3600 To unsubscribe, visit https://gwt-review.googlesource.com/settings Gerrit-MessageType: comment Gerrit-Change-Id: Id16bcd2287630cebf7afb8bbbe0a198b28f5ada9 Gerrit-PatchSet: 1 Gerrit-Project: gwt Gerrit-Branch: master Gerrit-Owner: Brian Slesinsky Gerrit-Reviewer: Leeroy Jenkins Gerrit-Reviewer: Matthew Dempsky Gerrit-HasComments: Yes -- 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 google-web-toolkit-contributors+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[gwt-contrib] Change in gwt[master]: Issue 8220: Support for java.lang.reflect.Type - fixed
Matthew Dempsky has posted comments on this change. Change subject: Issue 8220: Support for java.lang.reflect.Type - fixed .. Patch Set 1: (1 comment) Needs a test. File user/super/com/google/gwt/emul/java/lang/Class.java Line 26: public final class Class extends java.lang.reflect.Type { Why use the fully qualified class name here instead of importing it? Also, doesn't this need to be "implements" instead of "extends", since Class is a class and Type is an interface? -- To view, visit https://gwt-review.googlesource.com/3560 To unsubscribe, visit https://gwt-review.googlesource.com/settings Gerrit-MessageType: comment Gerrit-Change-Id: I94ae5fc5f6ed248a8247ce0088246e71e4b32603 Gerrit-PatchSet: 1 Gerrit-Project: gwt Gerrit-Branch: master Gerrit-Owner: Jörg Hohwiller Gerrit-Reviewer: Daniel Kurka Gerrit-Reviewer: Matthew Dempsky Gerrit-HasComments: Yes -- 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 google-web-toolkit-contributors+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[gwt-contrib] Change in gwt[master]: Issue 8220: Support for java.lang.reflect.Type - fixed
Daniel Kurka has posted comments on this change. Change subject: Issue 8220: Support for java.lang.reflect.Type - fixed .. Patch Set 1: (4 comments) File user/super/com/google/gwt/emul/java/lang/reflect/Type.java Line 3: * nit: whitespace Line 7: * nit: whitespace Line 9: * nit: whitespace Line 20: * nit: whitespace -- To view, visit https://gwt-review.googlesource.com/3560 To unsubscribe, visit https://gwt-review.googlesource.com/settings Gerrit-MessageType: comment Gerrit-Change-Id: I94ae5fc5f6ed248a8247ce0088246e71e4b32603 Gerrit-PatchSet: 1 Gerrit-Project: gwt Gerrit-Branch: master Gerrit-Owner: Jörg Hohwiller Gerrit-Reviewer: Daniel Kurka Gerrit-HasComments: Yes -- 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 google-web-toolkit-contributors+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[gwt-contrib] Re: Google GWT team meeting notes for June 26th
Thanks a lot Brian (and the GWT Team at Google as a whole) for sharing these notes. On Thursday, June 27, 2013 8:40:39 PM UTC+2, Brian Slesinsky wrote: > > - Daniel: javadoc regenerated and moved to gwtproject.org to fix a > security issue. > FYI, this is https://code.google.com/p/google-web-toolkit/issues/detail?id=8214 We decided with Daniel (and Ray who happened to be in Munich at the time) to remove the javadocs for older versions (changing them to "redirects" to the new javadocs so we don't break old links –I had a lot in StackOverflow response–) This also fixes https://code.google.com/p/google-web-toolkit/issues/detail?id=8143 ("latest" javadocs were for 2.5.0-rc2, now updated to 2.5.1) and https://code.google.com/p/google-web-toolkit/issues/detail?id=7364 (Google should eventually pick the "redirects" and only offer links to the "latest" javadocs at gwtproject.org in search results) -- 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 google-web-toolkit-contributors+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.