Is the UI Binder DocType Broken?

2020-04-28 Thread Scott Onyx Harmon
http://dl.google.com/gwt/DTD/xhtml.ent;>

No longer seems to be functioning properly, as I now get multiple "errors" 
in my XML files such as:
Element type "ui:UiBinder" must be declared.

Is there a new place to get the DTD?

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/50b54519-f3fb-438d-82ad-fd9b8cdd07d8%40googlegroups.com.


Has anybody found a reasonable way to convert *.ui.xml files to web components.

2019-02-23 Thread Scott Johnson
We have many angular developers on the team and they would like to begin to 
migrate a legacy GWT application (2.7.x) to an NG based application.  RPC 
has already been replaced using resty-gwt; so now the objective is to begin 
migrating the client from GWT to Angular.   

Has anyone found an tools to help convert UIBinder widgets/screens into 
web-components.   

We started by look for gwt compiler options to generate separate html, js, 
and html files for each *.ui.xml; but there are no such options.We did 
find options to generated the bundle sources via -gen/etc.; however these 
are obviously precompile output used to generate the final js file used to 
implement the client.  

Any ideas or suggestions would be greatly appreciated!!  

Thank you.

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit+unsubscr...@googlegroups.com.
To post to this group, send email to google-web-toolkit@googlegroups.com.
Visit this group at https://groups.google.com/group/google-web-toolkit.
For more options, visit https://groups.google.com/d/optout.


super dev mode Jetty version?

2018-04-12 Thread Edward Scott
My project has transitive dependencies on log4j-api and log4j-core and 
normally pulls in 2.9.1, but when I run in super dev mode this leads to 
a RuntimeException scanning ProcessIdUtil.class similar to what is reported 
here 
.
 
Following through to the Jetty github issue 
 shows the issue was 
resolved in Jetty 9.3.x and 9.4.x. GWT super dev mode meanwhile is using 
Jetty 9.2.14.

Several ideas I am exploring -

   - Is it possible to configure my project to use Jetty 9.3.x in super dev 
   mode?
   - Is there any upcoming update to GWT what would update the Jetty 
   version?
   - Is it possible to configure my project to use one version of the log4j 
   dependencies in super dev mode but use another in the deployed artifact?

Any suggestions or ideas would be most welcome.

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit+unsubscr...@googlegroups.com.
To post to this group, send email to google-web-toolkit@googlegroups.com.
Visit this group at https://groups.google.com/group/google-web-toolkit.
For more options, visit https://groups.google.com/d/optout.


Re: Understanding JsInterop

2018-02-20 Thread Scott Shumway
I'm still unable to do this. I want to be able to get a DOMRect from a 
com.google.gwt.dom.client.Element with JsInterop. If I cast to this Element 
class, or even ((HasGetBoundingClientRect) (Object) element), I will get a 
(runtime) java.lang.ClassCastException. The cast to Object works, of 
course, it's the cast to HasGetBoundingClientRect.

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit+unsubscr...@googlegroups.com.
To post to this group, send email to google-web-toolkit@googlegroups.com.
Visit this group at https://groups.google.com/group/google-web-toolkit.
For more options, visit https://groups.google.com/d/optout.


Re: Understanding JsInterop

2018-02-15 Thread Scott Shumway
Thanks! I didn't think of casting to Object first... I'll give it a try. I 
generally turn on as many compiler warnings as I can stand to get my code 
to compile through a strict filter, but I was getting outright errors.

Also, namespace with "Element", Doh! of course...

On Thursday, February 15, 2018 at 2:10:21 AM UTC-8, Thomas Broyer wrote:
>
>
>
> On Thursday, February 15, 2018 at 11:01:41 AM UTC+1, Vassilis Virvilis 
> wrote:
>>
>> Amazing trick!
>>
>> Obvious if you think about it - but very difficult to think it initially 
>> (for us mere mortals).
>>
>
> Well, when you write "element.getBoundingClientRect" in JS (without the 
> parenthesis), this is exactly what you're doing: getting a reference to the 
> function.
> In JS, if you call it later, you need to either use .call(element) or 
> .apply(element) to setup the appropriate 'this' element, or you first need 
> to .bind(element) it to the element. I'm not sure how JsInterop works in 
> this case, maybe (probably) my second example wouldn't actually work as it 
> does neither of these (you could use an element2.core.Function to 
> .call()/.apply() or .bind()).
>
> That being said, I didn't came with this pattern by myself either, I 
> believe I saw it somewhere in GWT's emulation library.
>

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit+unsubscr...@googlegroups.com.
To post to this group, send email to google-web-toolkit@googlegroups.com.
Visit this group at https://groups.google.com/group/google-web-toolkit.
For more options, visit https://groups.google.com/d/optout.


Understanding JsInterop

2018-02-15 Thread Scott Shumway
Greetings

I am trying to get a DOMRect from an Element. I can do this with JSNI, but 
have been unable to make a JsInterop version. Here's what I have:

public final class DOMRect extends JavaScriptObject
{
 // returns DOMRect or null
 public static native DOMRect getBoundingClientRect(Element element)
 /*-{
 return element.getBoundingClientRect && element.getBoundingClientRect();
 }-*/;

 protected DOMRect()
 {
 }

 public final native double getX()
 /*-{
 return this.x;
 }-*/;

 // etc.
}

I can make a JsType for DOMRect, no problem. The issue I'm having is with 
getBoundingClientRect(). This function may not exist which is why there is 
a null check. If I make an interface for getBoundingClientRect, I'm not 
allowed to cast Element to implement it. I can't extend Element, either. 
With JSNI, I am allowed to compile Javascript into Javascript, but I can't 
with JsInterop. It seems like a lot of trouble for 1 line of Javascript.

How can I do this? Thanks in advance...

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit+unsubscr...@googlegroups.com.
To post to this group, send email to google-web-toolkit@googlegroups.com.
Visit this group at https://groups.google.com/group/google-web-toolkit.
For more options, visit https://groups.google.com/d/optout.


Re: GWT 2.8.2 release

2017-11-20 Thread Scott Palmer
Yes, that is what I’m trying to do. 

Thank you for your response.  It prompted me to look a bit closer and I found 
that I had not updated all of the parts of the project to 2.8.2.  After a few 
upgrades of other dependencies (e.g. guava-gwt) it appears to be working.  
Sorry for the noise.

Thanks,

Scott


> On Nov 20, 2017, at 9:27 PM, Colin Alworth <niloc...@gmail.com> wrote:
> 
> Hmm - from that description it sounds like the bug might be in the gradle 
> plugin then, we did test compiling java8 .java files with a java9 jre. Can 
> you confirm that is what you are trying to do, and have you tried testing 
> building without gradle?
> 
> On Monday, November 20, 2017 at 8:23:22 PM UTC-6, Scott Palmer wrote:
> 
> 
> On Thursday, 19 October 2017 16:30:49 UTC-4, Colin Alworth wrote:
> Today we released the next version of GWT, version 2.8.2. A few quick 
> highlights from this new release:
> GWT can now run on Java 9 (though Java 9 features are not yet supported, 
> coming soon!)
> Any idea when we will be able to *build* projects with Java 9?
> Currently, using the gradle plugin from 
> https://github.com/steffenschaefer/gwt-gradle-plugin 
> <https://github.com/steffenschaefer/gwt-gradle-plugin>, I get an error about 
> not finding java.lang.Object
> Same build runs fine if I change the JVM to Java 8.
> 
> Cheers,
> 
> Scott

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit+unsubscr...@googlegroups.com.
To post to this group, send email to google-web-toolkit@googlegroups.com.
Visit this group at https://groups.google.com/group/google-web-toolkit.
For more options, visit https://groups.google.com/d/optout.


Re: GWT 2.8.2 release

2017-11-20 Thread Scott Palmer


On Thursday, 19 October 2017 16:30:49 UTC-4, Colin Alworth wrote:
>
> Today we released the next version of GWT, version 2.8.2. A few quick 
> highlights from this new release:
>
>- GWT can now run on Java 9 (though Java 9 features are not yet 
>supported, coming soon!)
>
> Any idea when we will be able to *build* projects with Java 9?
Currently, using the gradle plugin from 
https://github.com/steffenschaefer/gwt-gradle-plugin, I get an error about 
not finding java.lang.Object
Same build runs fine if I change the JVM to Java 8.

Cheers,

Scott

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit+unsubscr...@googlegroups.com.
To post to this group, send email to google-web-toolkit@googlegroups.com.
Visit this group at https://groups.google.com/group/google-web-toolkit.
For more options, visit https://groups.google.com/d/optout.


tracking usage of a GWT app using Lucky Orange

2017-08-03 Thread Edward Scott
Has anyone had any experience with tracking usage of their GWT app using a 
service such as Lucky Orange ?

I have a single page app built with GWT, using a DeckPanel to manage the 
pages a user has visited to. Each time they navigate to a new page I create 
a widget and add it to the DeckPanel, toggle hide the widget for the page 
they are navigating away from and display the widget for the new page. When 
returning to a page they have already visited I skip the create/add steps 
and just toggle the visibility of the existing widgets in the DeckPanel. As 
the user navigates from page to page the browser URL remains on the same 
.html page, with an anchor changing per page e.g. #homePage or #welcomePage.

Lucky Orange is a service to capture user activity and generate heat maps 
per page, and it seems to struggle with my app.

The videos it captures don't seem to correctly capture what the user sees - 
the mouse movements and clicks will be visible, but the video usually 
continues to show the first page (the login page) no matter what the user 
is actually seeing. Lucky Orange captures a heat map for the first page 
(the login page), but when trying to view a heat map of any other page it 
seems to be unaware that it has captured any kind of user activity for 
those pages at all.

I am reaching out to the Lucky Orange support as well but thought I would 
see if the community here has any experience or insight.

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit+unsubscr...@googlegroups.com.
To post to this group, send email to google-web-toolkit@googlegroups.com.
Visit this group at https://groups.google.com/group/google-web-toolkit.
For more options, visit https://groups.google.com/d/optout.


Re: Replacing StorageImpl with itself?

2017-04-24 Thread Edward Scott
OK this is starting to make sense to me now.

It sounds like defaulting to StorageImplNonNativeEvents 

 is 
intended to avoid browser compatibility problems since some browsers have 
not fully implemented StorageEvents, and does so by eliminating it, 
bringing all browsers down to the lowest common denominator, and thenr 
replacing it with a similar behavior similuated within GWT.

But if I configure my GWT application to use StorageImpl for certain 
browsers with the configuration change described in this thread I can then 
make full use of StorageEvents in browsers that support it, as long as I am 
conscious of different behavior in different browsers.

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit+unsubscr...@googlegroups.com.
To post to this group, send email to google-web-toolkit@googlegroups.com.
Visit this group at https://groups.google.com/group/google-web-toolkit.
For more options, visit https://groups.google.com/d/optout.


Replacing StorageImpl with itself?

2017-04-21 Thread Edward Scott
hello - 

I am looking for some insight into what might be going on with the 
workaround to Wrong LocalStorage event fire #9205 
, an issue raised about a 
year and a half ago.

I have observed the behavior described in the issue. I have also followed 
the workaround described in the comments and found that it does work around 
the issue.

The workaround is to add the following configuration, which appears to 
replace StorageImpl with itself:

  


  
  
  
  

  


I am trying to understand - why does this change anything?

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit+unsubscr...@googlegroups.com.
To post to this group, send email to google-web-toolkit@googlegroups.com.
Visit this group at https://groups.google.com/group/google-web-toolkit.
For more options, visit https://groups.google.com/d/optout.


[gwt-contrib] Re: GWT Patch Review Policy Maintainer list

2014-10-20 Thread Scott Morgan
 


I would like to see some guidelines from the steering committee about 
some sort of rubber stamping of contribution ideas long before the patch 
process.   The learning curve of setting up the GWT build and making a 
patch is fairly expensive, and it makes sense for the GWT process to accept 
or reject idea long before anyone even starts coding a patch.   In other 
words I am looking for;


 1) Anyone submits a idea for a patch.

Where should the idea go?

2) Someone approves or declines the idea.

How does this occur?

3) If the idea is approved the someone creates a patch for the patch 
approval process.

   This step seems to have gotten all of the attention. 


 I suppose this could be done on this GWT Contributors group, perhaps with 
some special key words in the subject.


 In addition I would like to see some general guidelines from the steering 
committee about which contribution ideas are generally accepted/declined.


 Ie;

Bug fixes with test cases are generally accepted.

New JSE classes in JSE packages are generally accepted.


 JSE classes in JSE packages not yet supported by GWT require a passing 
vote in the steering committee.

New features require a passing vote in the steering committee, or consensus 
between at least 3 maintainers.


 I mention all of this because I went through the process of making a 
patch, and it got declined.

https://code.google.com/p/google-web-toolkit/issues/detail?id=8954


 If you just read the GWT makinggwtbetter.html, you could infer that the 
GWT community will generally add anything.

This is NOT the case, and contributors should NOT have to go through the 
work of creating a patch to find out

if a contribution idea will be accepted.

Perhaps this is why your seeing a lot of patch requests. 


 I think the steering committee could save everyone a lot of time by 
amending the GWT contribution process with this suggestion.

Maintainers would generally have less scope, and wouldn't need to spend 
time discussing if a idea should or should not be accepted,

this would give them more time to accept more patches focusing on the 
quality of the code.

Contributors would know long before a patch is in review that the idea was 
accepted, saving them from doing work that could get discarded by the GWT 
community.


 There should also be some mention of how much time it will take for a idea 
to be discussed/accepted or rejected. Perhaps one month for discussion and 
then a week for a final decision.   Also there should be a process for 
re-opening a idea, perhaps you would need to wait a year or so before 
re-opening a rejected idea.


Without something like this the GWT community is discoursing contribution, 
since contributors could think;

Wow after all the work of attempting a contribution, it got shot down, so 
why bother contributing in the future.


Cheers,

Scott


-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/00b834dc-6890-4ff0-a26e-9030a5022432%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[gwt-contrib] Re: Can't get 'ant test' to pass it times out

2014-10-17 Thread Scott Morgan
Since my change causes so many test failures, it would be nice if I
could run the full build failing fast on the first test failure.  Is this 
possible?

This would help me determine the root cause of the other test failures.

Cheers,
Scott

-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/2cebc80a-07fd-4c78-b496-68f000fc5613%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[gwt-contrib] Re: Can't get 'ant test' to pass it times out

2014-10-17 Thread Scott Morgan
Most of the errors appear to be caused by UnableToCompleteException;

Exception in constructor: testGetMethods 
(com.google.gwt.core.ext.UnableToCompleteException: (see previous log 
entries)
at 
com.google.gwt.dev.cfg.ModuleDef.checkForSeedTypes(ModuleDef.java:1031)
at 
com.google.gwt.dev.cfg.ModuleDef.getCompilationState(ModuleDef.java:670)
at 
com.google.gwt.dev.javac.typemodel.ModuleContext.getTypeOracleFor(ModuleContext.java:44)
at 
com.google.gwt.dev.javac.typemodel.ModuleContext.init(ModuleContext.java:55)

-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/f7dd3f07-c62a-4531-be11-472dd6505d06%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [gwt-contrib] Re: Can't get 'ant test' to pass it times out

2014-10-17 Thread Scott Morgan
Nevermind,  it started passing, YEA!  
I am not sure what changed, it could be the updated code (tools/trunk) that 
someone checked in this morning that I pulled in.

-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/15f22598-8ff2-4991-baae-8d9cb85e5208%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [gwt-contrib] Re: Can't get 'ant test' to pass it times out

2014-10-17 Thread Scott Morgan

What are your OS and tools (java, ant, python, g++) versions?
Here are my versions, and a script to get them.   Is there a good place to 
check this script in, perhaps under tools?

Also it would be nice if we could echo the ANT_OPTS in the ant script, 
since I set it to this in ${ANT_HOME}/bin/ant;
ANT_OPTS=-Xmx4g -XX:MaxPermSize=4g -Dfile.encoding=UTF-8

[gwt@localhost bin]$ ./system_info.sh 
This script simply prints the versions software
used by the gwt build.
unix is
Linux localhost.localdomain 3.10.0-123.8.1.el7.x86_64 #1 SMP Thu Oct 9 
23:53:48 CDT 2014 x86_64 x86_64 x86_64 GNU/Linux

java is
java version 1.7.0_65
OpenJDK Runtime Environment (rhel-2.5.1.2.el7_0-x86_64 u65-b17)
OpenJDK 64-Bit Server VM (build 24.65-b04, mixed mode)
ant is
/home/gwt/ant/apache-ant-1.9.4/bin/ant
Apache Ant(TM) version 1.9.4 compiled on April 29 2014

JAVA_HOME is
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el7_0.x86_64

ANT HOME is
/home/gwt/ant/apache-ant-1.9.4

python is
Python 2.7.5

gcc is
gcc (GCC) 4.8.2 20140120 (Red Hat 4.8.2-16)
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


GWT_TOOLS is
/home/gwt/tools

TZ is
America/Los_Angeles

ANT_OPTS may be set in you /home/gwt/ant/apache-ant-1.9.4/bin/ant shell 
script


Cheers,
Scott

-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/42a9f6f4-dad0-47fd-b771-4d78d80f43f0%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
#!/bin/sh
echo This script simply prints the versions software
echo used by the gwt build.
echo unix is
uname -a
echo 
echo java is
java -version
echo ant is
which ant
ant -version
echo 
echo JAVA_HOME is
echo ${JAVA_HOME}
echo 
echo ANT HOME is
echo ${ANT_HOME}
echo 
echo python is
python -V
echo 
echo gcc is 
gcc --version
echo 
echo GWT_TOOLS is
echo ${GWT_TOOLS}
echo 
echo TZ is 
echo ${TZ}
echo 
echo ANT_OPTS may be set in you ${ANT_HOME}/bin/ant shell script



[gwt-contrib] Authentication issues

2014-10-17 Thread Scott Morgan
Hi,

Ok I had issues with the ~/.netrc file, which never authenticated me.  
So I removed it to get command line user/password dialogs which did this;

(Replaced my username as X)
[gwt@localhost trunk]$ git push origin HEAD:refs/for/master
Username for 'https://gwt.googlesource.com': X
Password for 'https://x...@gwt.googlesource.com': 
fatal: remote error:  A Contributor Agreement must be completed before 
uploading.

However I have signed a A Contributor Agreement and it was accepted, can 
someone at google fix this?

I also tried my email as the user name, but it failed earlier in the 
authentication process.

I have also emailed this to the person who accepted the agreement.

Cheers,
Scott

-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/d6d649c9-a19b-4c77-bbcd-dcdac18e7ceb%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [gwt-contrib] Authentication issues

2014-10-17 Thread Scott Morgan
Hi,

I don't see anywhere to 'sign' a agreement in the gerrit web interface, 
I emailed it in per the instructions.
https://gwt-review.googlesource.com/#/settings/new-agreement

Cheers,
Scott

-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/07a68c70-46e8-4465-89d0-2adf4ed8d4ec%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [gwt-contrib] Authentication issues

2014-10-17 Thread Scott Morgan
Oh, looking at signing the individual agreement there electronically.
The Corporate Agreement is email only.

-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/27a849f0-932e-4456-9fe0-37d8edc38470%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [gwt-contrib] Authentication issues

2014-10-17 Thread Scott Morgan
Ok that worked, you have to sign both agreements?
It seemed like a either or thing.

Cheers,
Scott

-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/c0db60dc-0637-47ff-a2b5-d7c0ff933ee0%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[gwt-contrib] problem with Change-Id in (gwt-site) git push origin HEAD:refs/for/master

2014-10-17 Thread Scott Morgan
Hi,

I am having issues pushing my gwt-site change up;
To https://gwt.googlesource.com/gwt-site
 ! [remote rejected] HEAD - refs/for/master (missing Change-Id in commit 
message footer)
error: failed to push some refs to 'https://gwt.googlesource.com/gwt-site'

[gwt@localhost gwt-site]$ ls -Al .git/hooks
total 48
-rwxrwxr-x. 1 gwt gwt  452 Oct 17 14:29 applypatch-msg.sample
-rwxrwxr-x. 1 gwt gwt 4377 Oct 17 14:42 commit-msg
-rwxrwxr-x. 1 gwt gwt  896 Oct 17 14:29 commit-msg.sample
-rwxrwxr-x. 1 gwt gwt  189 Oct 17 14:29 post-update.sample
-rwxrwxr-x. 1 gwt gwt  398 Oct 17 14:29 pre-applypatch.sample
-rwxrwxr-x. 1 gwt gwt 1704 Oct 17 14:29 pre-commit.sample
-rwxrwxr-x. 1 gwt gwt 1239 Oct 17 14:29 prepare-commit-msg.sample
-rw-rw-r--. 1 gwt gwt 1348 Oct 17 14:29 pre-push.sample
-rwxrwxr-x. 1 gwt gwt 4951 Oct 17 14:29 pre-rebase.sample
-rwxrwxr-x. 1 gwt gwt 3611 Oct 17 14:29 update.sample

   Is there some different way to push changes to 'gwt-site' than gwt 
'trunk'?
I tried;
git push origin HEAD:refs/for/master

Anyway it is a simple change to RefJreEmulation.md, and I have attached it.

Cheers,
Scott

-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/20af084e-40bd-41d6-b88d-7c6da79555b2%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


RefJreEmulation.md
Description: Binary data


Re: [gwt-contrib] Authentication issues

2014-10-17 Thread Scott Morgan
Hi Thomas,

   I don't think the corporate agreement ever gets turned on in Gerrit, 
although I could be wrong.
I think this forces the individual to sign the agreement, to get Gerrit to 
accept the change.

   Although someone may have changed something to get my corporate 
agreement to get Gerrit working for me :)

Cheers,
Scott

-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/2871f702-8a50-467f-8064-f392e991bd59%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[gwt-contrib] Re: Can't get 'ant test' to pass it times out

2014-10-17 Thread Scott Morgan
Thanks for the comments on various build systems.  I have been scanning all 
of their docs.  
The strange thing I am noticing is that while they all allow concurrency, 
it generally seems to be a after thought
for multiple projects.  The buck facebook comment says 2x faster, however I 
am thinking a well organized build
with massive concurrency would be a much faster.   For example if the 
concurrency 
unit were the project, and it had to do the following for four projects 
A,B,C and D.

git
compile/jar
test

If B, C and D depend on A, massive
concurrently this would look like.
git A B C D   (4x faster)
compile/jar A  (same)
compile/jar B C D, compile/jar C (3x faster)
test A B C D (4x faster)

If the single threaded approach took 12 minutes (1 minute for each step)
the massive concurrent approach would take 4 minutes or 3x faster.  
If your had a X_tests project for each other project it would enforce
a well optimized build.

I am thinking of wrapping the java part of ant and maven in java to 
accomplish this,
but it would be a huge time commitment/amount of work.  Although
it would be backward compatible with anything ant can do now :)_

Cheers,
Scott

-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/fa0e9803-2368-465a-b897-e2bf6780f7d2%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[gwt-contrib] Re: problem with Change-Id in (gwt-site) git push origin HEAD:refs/for/master

2014-10-17 Thread Scott Morgan
Ok that worked, thanks!
Scott

-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/5cc2356e-8655-42a6-ad02-5b7fc0729014%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [gwt-contrib] Authentication issues

2014-10-17 Thread Scott Morgan
In a third permutation perhaps it needs both :)

Cheers,
 Scott


-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/898c2f7f-fe28-47a5-a36c-3deb3bb1eade%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[gwt-contrib] Re: Can't get 'ant test' to pass it times out

2014-10-16 Thread Scott Morgan
Thanks for the build tools comments, I have a few questions.

Do any of these have source control (git/tag) support for building specific 
versions (ie git clone, checkout)?
Do any of these use massive concurrency for the compiling/testing runs?

The legacy adligo.org build (in ant) did things this way in a fairly 
modular way, but was hard to set-up 
and takes a good chunk of time because it's on a single thread.

Obtain other projects from source control
Compile/Jar
Share Jars (it used its own ~ repository concept)
Test

Also each project could be built solo in less than a minute.

I was thinking it would be nice(fast) if did this all concurrently (by 
default) 
based on the project dependencies, with customizable waves/stages.  

Cheers,
Scott

-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/09777b5b-83b7-46cf-b1f9-811aa2256636%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[gwt-contrib] Re: Can't get 'ant test' to pass it times out

2014-10-16 Thread Scott Morgan
Hi, 

Some other issues;
read 
https://gwt-review.googlesource.com/#/c/9552/8/README.md
this worked
$ ant clean elemental dist
It might be nice to have the following on the ci server...
${uname -r}
3.10.0-123.8.1.el7.x86_64
${python -V}
Python 2.7.5
${gcc -v}
...
gcc version 4.8.2 20140120 (Red Hat 4.8.2-16) (GCC)


  Working on a OutOfMemory PermGen space from
cd dev
ant test
 mucking with ANT_OPTS in the shell :)_
 [echo] scott ${ANT_OPTS}

I don't see any posts on the user group about this, and I have 8Gb RAM
on this machine, so hopefully that's enough.  
I will try to contribute to the doc sometime later;
www.gwtproject.org/makinggwtbetter.html

TIA,
Scott


-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/12e1d7b4-03ac-4fbc-b4ca-3c7ff64b1756%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[gwt-contrib] Re: Can't get 'ant test' to pass it times out

2014-10-16 Thread Scott Morgan
Ok dev ant test is working :)
solved by the obvious
$ which ant
modify $PATH to the $ANT_HOME/bin/ant  script


ANT_OPTS=-Xmx4g -XX:MaxPermSize=4g

quotes are important :)

-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/cdb083f3-1cbd-4f3d-a68b-7fed162f87c2%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[gwt-contrib] Re: Can't get 'ant test' to pass it times out

2014-10-16 Thread Scott Morgan
hmm I added the three classes LinkageError, 
IncompatibleClassChangeError and NoSuchFieldError,

and got a large number of test failures

ie;

[junit] Running 
com.google.web.bindery.requestfactory.gwt.RequestFactorySuite
[junit] Tests run: 182, Failures: 0, Errors: 182, Time elapsed: 5.257 
sec

-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/f8ff920e-7ae8-4f1c-950b-66ea23a3ada9%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[gwt-contrib] Re: Can't get 'ant test' to pass it times out

2014-10-15 Thread Scott Morgan
Hi All,

   Thanks for all of you replies, I will start looking at this again in a 
few days.  Also what build tools are you looking at?
Historically I have favored ant over maven because it is more flexible, 
however I have spent a good chunk of the last week
thinking about writing a build system that can concurrently build a large 
set of projects based on dependencies.   I haven't taken
any time for discovery of other build tools.

Cheers,
Scott




-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/e292b4d6-dd6e-472e-88c9-8aec5af32867%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[gwt-contrib] Can't get 'ant test' to pass it times out

2014-10-08 Thread Scott Morgan
Hi All,

I am trying to contribute NoSuchFieldError (and it's parent classes) to 
GWT.   I have not been able to get get the 'ant test' target to work, my 
most recent attempt is getting a timeout after 5 hours :(

BUILD FAILED

/home/scott/gwt-src/trunk/build.xml:162: The following error occurred while 
executing this line:/home/scott/gwt-src/trunk/build.xml:27: 

The following error occurred while executing this 
line:/home/scott/gwt-src/trunk/build.xml:71:

 The following error occurred while executing this 
line:/home/scott/gwt-src/trunk/user/build.xml:471: 

Interrupted task parallel. Waited 5 hour, but this task did not complete.

Total time: 331 minutes 11 seconds
Any idea what I am doing wrong, or how to fix it?

This is a copy of;
http://code.google.com/p/google-web-toolkit/issues/detail?id=8931q=adligo.comcolspec=ID%20Type%20Status%20Owner%20Milestone%20Summary%20Stars
I was having issues posting to this group.


Cheers,
Scott

-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/0f9795eb-4318-4397-9927-bbe29add7e39%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: I'm enhancing GWT to provide Java stack traces for clientside exceptions in production

2013-07-18 Thread Scott Blum
Very cool.  Bob Vawter and I (and I think a couple more people) worked on 
this a long time ago, and there's definitely a lot of room for improvement. 
 Nice to see someone tackle this!

On Wednesday, July 17, 2013 4:56:40 PM UTC-4, Alex Epshteyn wrote:

 Dear fellow GWT users,

 I would like to announce that I have finally solved what I always thought 
 to be GWT's greatest weakness: its lack of debugging information for 
 client-side exceptions in production.  

 With my patch, your deployed app will be able to report stack traces like 
 this:

 com.google.gwt.core.client.JavaScriptException: (TypeError) : a is null

 com.google.gwt.dom.client.DOMImplMozilla.$getBodyOffsetLeft(DOMImplMozilla.java:145)
  

 com.google.gwt.user.client.ui.PopupPanel.$setPopupPosition(Document.java:1287)

 com.google.gwt.user.client.ui.PopupPanel.setPopupPosition(PopupPanel.java:884)
 com.google.gwt.user.client.ui.PopupPanel.PopupPanel(PopupPanel.java:453) 

 com.typeracer.commons.client.widgets.EnhancedPopup.EnhancedPopup(EnhancedPopup.java:32)

 com.typeracer.commons.client.widgets.PopupWithIcon.PopupWithIcon(PopupWithFocusableTextBox.java:28)
  

 com.typeracer.main.client.controller.TyperacerUncaughtExceptionHandler$1.execute(TyperacerUncaughtExceptionHandler.java:55)
  

 com.google.gwt.core.client.impl.SchedulerImpl.runScheduledTasks(SchedulerImpl.java:50)
  
 etc... :-)


 instead of the current state of affairs that looks like this:

 lineNumber: 3190 columnNumber: 15354: a is null; (TypeError) fileName:  
 http://localhost:8088/9C4DC2D905BEA407601C92C56B43E3B8.cache.html 
 stack: @
 http://localhost:8088/9C4DC2D905BEA407601C92C56B43E3B8.cache.html:2422 
 Rub@http://localhost:8088/9C4DC2D905BEA407601C92C56B43E3B8.cache.html:2423
  
 dSb@http://localhost:8088/9C4DC2D905BEA407601C92C56B43E3B8.cache.html:3190
  
 tA@http://localhost:8088/9C4DC2D905BEA407601C92C56B43E3B8.cache.html:2810 
 Xmb@http://localhost:8088/9C4DC2D905BEA407601C92C56B43E3B8.cache.html:2289
  
 etc... :-(


 I am asking the community to support me in finishing this effort and 
 integrating my patch into GWT.  Please take a look and what I've done, and 
 consider making a donation:

 http://igg.me/at/gwt-stack-traces/x/3494291

 I am an indie developer and I just need some funding to continue this 
 work.  I'm looking for both grassroots and corporate sponsorship for my 
 quest of improving GWT's error reporting and debugging support.

 I've written a detailed white paper ( http://goo.gl/YGsrQ ) that 
 describes how my solution works and why it is necessary.  I welcome your 
 feedback!

 Thanks!
 Alex


-- 
You received this message because you are subscribed to the Google Groups 
Google Web Toolkit group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit+unsubscr...@googlegroups.com.
To post to this group, send email to google-web-toolkit@googlegroups.com.
Visit this group at http://groups.google.com/group/google-web-toolkit.
For more options, visit https://groups.google.com/groups/opt_out.




JMockit compatible with GWTTestCase?

2012-12-28 Thread James Scott
Hello all-

I'm trying to use JMockit in a GWTTestCase (JUnit 3, for what it's worth) 
and I'm not having any luck. I have jmockit.jar on my classpath for the 
test, but when I run it, I get this error message:

[ERROR] Line 50: No source code is available for type 
mockit.NonStrictExpectations; did you forget to inherit a required module?

Line 50 is where I have my NonStrictExpectations declared in my test case. 
Right now, it's empty.

I tried TRACE-level logging of the unit test run in Eclipse, and I get 
similar no source code available errors for other classes in the 
application GWT client code, but those are not under test and not in the 
same module as the code under test, so I don't think those are interfering.

My classpath includes my Eclipse output dir, GWT jars, jmockit.jar and 
junit.jar. Is there something else that should be in the classpath?

Thanks,

JLS

-- 
You received this message because you are subscribed to the Google Groups 
Google Web Toolkit group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-web-toolkit/-/o21Mtvckww4J.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.



Remediating older GWT code with GWT 2.3 XsrfProtectedService - any experiences?

2012-11-28 Thread James Scott
Hi all-

We're looking at remediating an existing GWT application with the CSRF/XSRF 
protection features introduced with GWT 2.3. Has anybody else done this, 
and do you have any experiences/advice to share? I'm looking particularly 
for testing advice. How did you validate that the XSRF protection is 
working?

Thanks,

JLS

-- 
You received this message because you are subscribed to the Google Groups 
Google Web Toolkit group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-web-toolkit/-/g2E9z219I5wJ.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.



Re: Future of GWT survey

2012-09-25 Thread Scott Stanton
I second the call for reducing compile times and making it more extendable.

The slow compile/link times are a major impediment to development.  Some of 
our developers are in favor of dumping GWT in favor of native javascript 
toolkits because the slow dev mode and compile/link times are impeding 
their ability to iterate quickly.  I still think the ability to use Java 
testing and refactoring tools makes it worth it, but as our code base grows 
the tradeoffs are getting more painful.

We have run into a number of situations where we wound up forking the code 
in order to work around classes that weren't using interfaces and weren't 
designed with extensibility in mind.  Some of the newer classes are better 
designed, but there's still a lot of fixup to do.  I hope this gets some 
attention going forward.

Another request is to keep the separation between client and server clean. 
 We are building on top of a mixture of legacy Apache as well as Java 
(jetty) servers.  Our ability to use GWT as a client only library has been 
critical to our success.   Any move to tie the front end more tightly to a 
specific back end technology will make it harder for us to use.  

-- 
You received this message because you are subscribed to the Google Groups 
Google Web Toolkit group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-web-toolkit/-/SvLl8kBz3D8J.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.



Re: GWT Developer Plugin for Firefox not installing completely

2012-02-23 Thread Scott Matthews

Alan Leung acleung@... writes:

 
 
 Hi Allyn:
 
 Thanks for the report. It seems to be that the new
forward compatibility feature in the install-template.rdf is not
backward compatible (the irony) in FF3.6 and that version only.
 
 I disabled the strict check that would fix it. Currently in
review: http://gwt-code-reviews.appspot.com/1642803/
 
 
 As far as I understand that part is not necessary. It might be if binary
extensions become forward compatible by default (not likely anyways). At that
point I might have to break 3.6 and you might have to use a special xpi for 3.6.
 
 I'll try to file a bug to Mozilla people, I am not sure how willing they are
to going back to fix a bug in 3.6.
 
 -Alan
 
 
 
 
 
 On Fri, Feb 10, 2012 at 12:01 AM, Alan Leung
acle...@google.com wrote:
 I am out of office at the moment and can't do much until Monday.
 You can download an older build from SVN to get around the problem:
 

http://code.google.com/p/google-web-toolkit/source/browse/trunk/plugins/xpcom/prebuilt/gwt-dev-plugin.xpi?r=10837
 
 
 -Alan
 On Thu, Feb 9, 2012 at 11:22 AM, Allyn
allyn.h...@gmail.com wrote:
 Up until yesterday I was using the GWT Developer Plugin for Firefox
 3.6 without issue. Then, suddenly, when I started up Firefox yesterday
 it did not recognize the plugin as being installed. In the add-on
 list, the plugin stated that I had to restart Firefox to complete the
 installation. I tried this, many times, to no avail. I even
 reinstalled Firefox and downloaded the plugin again. Still didn't
 work. I have no idea what would cause it to not only stop working
 suddenly and also not to work when I reinstall everything from
 scratch. I selected the option to remove all profile and plugin data
 when I tried the re-install.
 I'm not really sure what additional information to provide, so if
 you're reading this thinking I can't help there's too little
 information then please let me know what else I can provide.
 --
 You received this message because you are subscribed to the Google Groups
Google Web Toolkit group.
 To post to this group, send email to
google-web-toolkit@googlegroups.com.
 To unsubscribe from this group, send email to
google-web-toolkit+unsubscr...@googlegroups.com.
 For more options, visit this group at
http://groups.google.com/group/google-web-toolkit?hl=en.
 
 
 
 
 
 
 
 
 
 
 
 
 

Hi, I've been looking for a solution to this issue as well (Preferably some sort
of rebuild or older version of the plugin).  I was wondering if there has been
any movement on this.  I've found the related defect on this that Allyn 
reported.

http://code.google.com/p/google-web-toolkit/issues/detail?id=7184 




-- 
You received this message because you are subscribed to the Google Groups 
Google Web Toolkit group.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.



Re: RichTextArea on IE7 insert p after enter typed

2012-01-30 Thread scott soward
Anyone come up with a solution to this issue?

On Jan 17, 9:36 pm, gangurg gangurg gang...@gmail.com wrote:
 Any thoughts Team ?







 On Thu, Jan 12, 2012 at 12:01 PM, gangurg gangurg gang...@gmail.com wrote:

  Thanks for pitching in . This is the Issue . I am trying to do some
  formatting as well as recognizing text .
  In firefox and chrome after you  type in a word in the rich text area and
  press enter ,  you would notice that the result html  has br tag where as
  in IE it is p tag . Basically , i just want to make sure IE also uses br
  tag after you press enter and go to a new line .I use GWT 2.4 .

  On Wed, Jan 11, 2012 at 8:51 PM, Pandy .k pandy.k0...@gmail.com wrote:

   i will help you.. what's your problem?

  --
  You received this message because you are subscribed to the Google Groups
  Google Web Toolkit group.
  To post to this group, send email to google-web-toolkit@googlegroups.com.
  To unsubscribe from this group, send email to
  google-web-toolkit+unsubscr...@googlegroups.com.
  For more options, visit this group at
 http://groups.google.com/group/google-web-toolkit?hl=en.

-- 
You received this message because you are subscribed to the Google Groups 
Google Web Toolkit group.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.



Re: TabLayoutPanel inside HeaderPanel - tab body doesn't show

2012-01-15 Thread James Scott
Wrapping the TabLayoutPanel in a ResizeLayoutPanel, and then adding
the RLP as the content widget of the HeaderPanel, resulted in nothing
rendering in the content area.

Here's my test code for my original case - I'm adding the HeaderPanel
directly to the RootLayoutPanel.

public class TestHeaderEntryPoint implements EntryPoint {

@Override
public void onModuleLoad() {
HeaderPanel hp = new HeaderPanel();
TabLayoutPanel tp = new TabLayoutPanel(3, Unit.EM);
tp.add(new Label(This is tab 1), tab 1);
tp.add(new Label(This is tab 2), tab 2);
hp.setHeaderWidget(new Label(this is the header));
hp.setContentWidget(tp);
hp.setFooterWidget(new Label(this is the footer));
RootLayoutPanel.get().add(hp);
}
}

When I set a breakpoint in HeaderPanel.forceLayout I see that
remainingHeight is  0 and (content instanceof RequiresResize) is
true, so I see content.onResize() get called...the tabs display, but
the tab body doesn't.

Possibly interesting aside: When I declared the HeaderPanel and
TabLayoutPanel in a UiBinder .ui.xml, I saw that content ended up as
type FlowPanel, so HeaderPanel.forceLayout didn't call
content.onResize(). But the effect was the same - tabs display, but
tab bodies don't.


JLS

On Jan 15, 5:45 am, Thomas Broyer t.bro...@gmail.com wrote:
 I've read a few times people complaining about HeaderPanel. Have you tried
 putting a ResizeLayoutPanel between the HeaderPanel and your
 TabLayoutPanel? It shouldn't be necessary, but there might be a bug in
 HeaderPanel.

 Also, out of curiosity, is your HeaderPanel in a ProvidesResize widget? (up
 to a RootLayoutPanel or a panel with an explicit size in pixels)

-- 
You received this message because you are subscribed to the Google Groups 
Google Web Toolkit group.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.



Re: TabLayoutPanel inside HeaderPanel - tab body doesn't show

2012-01-14 Thread James Scott
I've applied the patch from the code review referenced in comment 3 on
issue 7065, and it didn't fix the bug. I verified that the
DeckLayoutPanel.onLoad() method implementation added by the patch gets
called, but the tab body is still not rendered when the TabLayoutPanel
is contained in a HeaderPanel.

Even worse, applying the full patch from 
http://gwt-code-reviews.appspot.com/1601804/
(which also changes Layout/LayoutImpl/LayoutImplIE6) causes IE7 to
render a blank page - using dev tools to inspect the DOM shows that
the elements are there but with size 0x0.

I very well might be doing something wrong (this is my first time
building GWT from source) but it doesn't look like the patch addresses
the issue.

JLS


On Jan 4, 5:14 am, Thomas Broyer t.bro...@gmail.com wrote:
 Seehttp://code.google.com/p/google-web-toolkit/issues/detail?id=7065

-- 
You received this message because you are subscribed to the Google Groups 
Google Web Toolkit group.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.



TabLayoutPanel inside HeaderPanel - tab body doesn't show

2012-01-03 Thread James Scott
I'm updating a module originally done in GWT 1.7 to GWT 2.4, and I'm
having a problem with a TabLayoutPanel inside a HeaderPanel. When I
add the TabLayoutPanel to the content area of the HeaderPanel, the tab
content does not appear. Inspecting the HTML shows that the tab
content divs have 0 height.

I think this is a bug, and that's a serious bummer. HeaderPanel sounds
like exactly what we need to replace the Rube Goldberg resize listener
stuff we had to do in a composite using the old widgets.
DockLayoutPanel appears to work OK with TabPanel, but isn't suitable
for this application because we have some resizable elements in the
header area. HeaderPanel handles those just fine...but the main
content of the page doesn't display due to this apparent problem with
TabLayoutPanel.

Am I missing something?

JLS

-- 
You received this message because you are subscribed to the Google Groups 
Google Web Toolkit group.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.



Re: GWT 2.4 - problems with space key handling and FieldUpdater for TextInputCell inside CompositeCell in CellTree

2011-12-29 Thread James Scott
Looks like it boils down to events. After looking at the TextInputCell
and AbstractInputCell source, I added focus and change events to
the list of events consumed by the CompositeCell, and that addressed
both issues.

Incidentally, I tried out the EditTextCell in the CompositeCell, and
to get that working, I needed to add keyup and keydown events to
the CompositeCell.

Clearly I do not yet have my mind wrapped around how the events are
propagated in a CompositeCell, but at least I've solved my immediate
problems.

JLS

On Dec 28, 3:49 pm, James Scott j...@jls.cx wrote:
 Hi all-

 I feel like I'm missing something obvious here, but I haven't been
 able to figure this out. In short, I have a CellTree whose leaf nodes
 are populated with CompositeCells. Each CompositeCell has an
 ImageResourceCell, a TextCell, and a TextInputCell. These are
 displaying in the tree correctly. I have attached an onClick event to
 the ImageResourceCell that deletes the item from the tree, and that
 works as expected. The intent for the TextInputCell is to display a
 field from the entity associated with the cell, and update the field
 on the entity when the user changes the value in the TextInputCell.

 However, I'm having a couple of problems with the TextInputCell.
 First, when I type in the TextInputCell, the space key is ignored -
 well, it's probably being consumed by something else but the upshot is
 that when I type a space character, it doesn't appear in the
 TextInputCell. I thought this might have to do with the SelectionModel
 or KeyboardSelectionPolicy on the CellTree, but I've set the tree to
 KeyboardSelectionPolicy.DISABLED and the TreeViewModel to
 NoSelectionModel and it's still happening.[snip]

-- 
You received this message because you are subscribed to the Google Groups 
Google Web Toolkit group.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.



GWT 2.4 - problems with space key handling and FieldUpdater for TextInputCell inside CompositeCell in CellTree

2011-12-28 Thread James Scott
Hi all-

I feel like I'm missing something obvious here, but I haven't been
able to figure this out. In short, I have a CellTree whose leaf nodes
are populated with CompositeCells. Each CompositeCell has an
ImageResourceCell, a TextCell, and a TextInputCell. These are
displaying in the tree correctly. I have attached an onClick event to
the ImageResourceCell that deletes the item from the tree, and that
works as expected. The intent for the TextInputCell is to display a
field from the entity associated with the cell, and update the field
on the entity when the user changes the value in the TextInputCell.

However, I'm having a couple of problems with the TextInputCell.
First, when I type in the TextInputCell, the space key is ignored -
well, it's probably being consumed by something else but the upshot is
that when I type a space character, it doesn't appear in the
TextInputCell. I thought this might have to do with the SelectionModel
or KeyboardSelectionPolicy on the CellTree, but I've set the tree to
KeyboardSelectionPolicy.DISABLED and the TreeViewModel to
NoSelectionModel and it's still happening.

Furthermore, the up, down and right arrow keys are also ignored, but
the left arrow key causes the CellTree to disappear entirely.

Curiously, if I override the onBrowserEvent in the TextInputCell to
show a Window.alert, the space character DOES make its way into the
TextInputCell, but the alert doesn't affect what happens on arrow key.

Second - the point of having the TextInputCell there is that I want to
update the entity object associated with that tree node. In the
HasCell that describes the TextInputCell, I overrode getFieldUpdater
to return a reference to the object that should do the updating, but
its update method apparently never gets called. Do I need to do
something in the CompositeCell's or TextInputCell's onBrowserEvent to
invoke the update myself?

Code below - sorry for the length.

JLS

//construct composite cell for code descriptions
ListHasCellCcdDTO, ? descripHasCells = new
ArrayListHasCellCcdDTO, ?();
descripHasCells.add(new HasCellCcdDTO, 
ImageResource() {

private ImageResourceCell cell = new 
ImageResourceCell();

public CellImageResource getCell() {
return cell;
}

public FieldUpdaterCcdDTO, ImageResource 
getFieldUpdater() {
return null;
}

public ImageResource getValue(CcdDTO object) {
return pImages.delete();
}
});

descripHasCells.add(new HasCellCcdDTO, String() {
private TextCell cell = new TextCell();

@Override
public CellString getCell() {
return cell;
}

@Override
public FieldUpdaterCcdDTO, String 
getFieldUpdater() {
return null;
}

@Override
public String getValue(CcdDTO value) {
if (value instanceof CcdGroupDTO) {
return ((CcdGroupDTO)value).getGroupName();
} else {
return All;
}
}
});

descripHasCells.add(new HasCellCcdDTO, String() {
private TextInputCell cell = new TextInputCell() {
@Override
public SetString getConsumedEvents() {
HashSetString events = new 
HashSetString();
events.add(click);
events.add(keydown);
return events;
}

// uncomment this and the space key appears in 
the text input,
after the alert
//  public void onBrowserEvent(Context context, 
Element elem,
String value, NativeEvent event, ValueUpdaterString arg4) {
//  Window.alert(text input event: + 
event.getType());
//  };
};

@Override
public CellString getCell() {
return cell;
   

AbstractDataProvider, JsArray, and java.util.List

2011-07-22 Thread Scott Spyrison
Hello,

I've been working on a GWT project that integrates the CellTable
widget with remote services that provide JSON data.

So far, I have successfully created JavaScript Overlay Types and used
the JsonUtils.safeEval method to parse the returned JSON into either
an individual JavaScriptObject or a JsArrayJavaScriptObject.  I can
use the overlay type objects to access the data and populate various
widgets with no problems.

My problem came up when I tried to wire the JsArray as the data
provider for a CellTable.  It seems that AbstractDataProvider has an
updateRowData method that is always looking for a java.util.List, and
my JsArray does is not a List.  So far, I have been unable to find any
GWT provided mechanism to convert a JsArray as a List.  I have seen
other code that uses a helper method to iterate through the JsArray
and add each item to a new List.

Has anyone else encountered this challenge?  How did you (or would
you) approach it?  Ay feedback is welcomed.



-- 
You received this message because you are subscribed to the Google Groups 
Google Web Toolkit group.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.



Modal Window

2011-07-11 Thread Scott Purcell
Hello,

I have the need to convert a flex application into a GWT applcation.
Only problem I am facing right now (analysis) is finding a modal
window widget. Does GWT have one?

The application opens a lot of Modal windows and shades the background
of the window.opener. Does anyone know if GWT can handle this?

Thanks,
Scott

-- 
You received this message because you are subscribed to the Google Groups 
Google Web Toolkit group.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.



[gwt-contrib] Re: UnifyAst correctly handles polymorphic overrides with mixed default/public access. (issue1470803)

2011-07-06 Thread Scott Blum
On Wed, Jul 6, 2011 at 12:07 PM, Eric Ayers zun...@google.com wrote:

 So, the tests in the back-end issue are valid, but the GwtAstBuilder patch
 is superceded.  Could you roll the tests into issue 1470803?


Lemme clarify.

The tests in the back-end are valid tests, which fail both with
GwtAstBuilder and without it.  It's a latent, existing bug in our back end
which 1470803 doesn't fix.  1469804 was my initial attempt to fix it, but
doesn't work.  We cannot commit the tests right now as we have no fix for
them.

1470803 merely brings GwtAstBuilder up to parity with the old compiler to
solve the front end issue.  This solves SOME currently broken cases, but not
all possible cases as the tests in 1469804 demonstrate.

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

[gwt-contrib] Re: Ignore invalid types in heirarchy (issue1466806)

2011-06-24 Thread Scott Blum
On Fri, Jun 24, 2011 at 8:35 AM, zun...@google.com wrote:

 So, what you are saying is that we are getting lots of unrelated errors
 for units that reference foo that are obscuring the real problem?


The unrelated units are actually causing a blow-up.  When we try to
construct the type hierarchy to represent Foo (as seen by the valid units),
it blows up.

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

[gwt-contrib] Re: Suppress additional JDT compile problems (issue1461804)

2011-06-24 Thread Scott Blum
On Fri, Jun 24, 2011 at 10:02 PM, stephen.haber...@gmail.com wrote:

 Sounds good; I was hoping for some kind of for good measure reason
 like that. I've been translating GwtAstBuilder/ReferenceMapper to
 jribble versions and had to skip over this part because jribble only has
 textual ASTs, so when I come across external types, I can't fill these
 in.


Definitely hack around, and if everything works ok without resolving the
hierarchy, great! :)

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

[gwt-contrib] Re: Bug triggered in SourceFileCompilationUnit.asCachedCompilation() (issue1461803)

2011-06-24 Thread Scott Blum
Now that's a good answer!  So the real is is just to close the result of
sourceFile.openContents()?

I would update the doc on DiskCache.tranferTo/FromStream that they don't
close the stream, and then look at all the callers and make sure they do the
right thing.

On Fri, Jun 24, 2011 at 10:36 PM, zun...@google.com wrote:

 Found the reason it fixes it.
 The machine I'm testing on is not tuned for lots of files:

  [java] Caused by: java.io.FileNotFoundException:
 /home/testing/gwt-orig/us\
 er/src/com/google/gwt/i18n/**client/impl/cldr/**
 DateTimeFormatInfoImpl_eu.java
 (Too\
  many open files)
 [java] at java.io.FileInputStream.open(**Native Method)
 [java] at
 java.io.FileInputStream.init**(FileInputStream.java:137)
 [java] at
 com.google.gwt.dev.resource.**impl.FileResource.**openContents(F\
 ileResource.java:63)
 [java] ... 7 more

 The root cause is that the the original code doesn't close the stream
 returned from Resource.openContents().  Everywhere else that
 diskCache.transferFromStream() is used, its in the context of a
 readObject() override, so this is the only place where this would cause
 a problem.

 FYI, here's the original stack trace.  I've seen them before but not in
 such a reproducable way

  [java] [ERROR] Unexpected internal compiler error
 [java] java.lang.NullPointerException
 [java] at
 com.google.gwt.dev.util.**DiskCache.transferFromStream(**
 DiskCache.java:154)
 [java] at
 com.google.gwt.dev.javac.**SourceFileCompilationUnit.**
 asCachedCompilationUnit(**SourceFileCompilationUnit.**java:59)
 [java] at
 com.google.gwt.dev.javac.**CompilationUnitArchive.**addUnit(**
 CompilationUnitArchive.java:**88)
 [java] at
 com.google.gwt.dev.**CompileModule.run(**CompileModule.java:283)
 [java] at
 com.google.gwt.dev.**CompileModule$1.run(**CompileModule.java:162)
 [java] at
 com.google.gwt.dev.**CompileTaskRunner.doRun(**CompileTaskRunner.java:88)
 [java] at
 com.google.gwt.dev.**CompileTaskRunner.**runWithAppropriateLogger(**
 CompileTaskRunner.java:82)
 [java] at
 com.google.gwt.dev.**CompileModule.main(**CompileModule.java:165)








 http://gwt-code-reviews.**appspot.com/1461803/http://gwt-code-reviews.appspot.com/1461803/


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

[gwt-contrib] Re: Add concrete SourceInfo for varargs in method calls (issue1454801)

2011-06-09 Thread Scott Blum
SGTM, I'll double-check my settings.

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

[gwt-contrib] Re: JavaAstConstructor uses UnifyAst. (issue1453810)

2011-06-08 Thread Scott Blum
What Eric said.  I haven't nailed down all the error reporting yet (although
it's closer now), but the idea is that we really can avoid reporting errors
on unreachable types.  And not reaching code means fewer deserialized types,
which is better for memory and takes less time.  But there's an even bigger
one...

When code flow reaches GWT.create() calls, we have to run rebinds, and
therefore generators, and reach even more code.  So there's a spiraling
effect.  JDT used to limit the total reach by only pulling in the types
necessarily to finish a compilation.  If we didn't do SOME kind of prune
off, we might end up being SLOWER than before.  Since we have to do some
prune off then, it makes sense to do a good job with it.

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

[gwt-contrib] Re: This patch substantially reduces the overhead of Java types in the output by minimizing vtable s... (issue1447821)

2011-06-08 Thread Scott Blum
Don't worry about it, since I'm punting the review over to Jason and Eric.
:P

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

[gwt-contrib] Re: I don't believe in magic, but as Scott points out, there are consistent (issue1453804)

2011-06-05 Thread Scott Blum
LOL

On Sun, Jun 5, 2011 at 1:50 PM, zun...@google.com wrote:

 srsly, we don't want this kind of thing to be happening:

 http://www.wsbtv.com/news/**28127904/detail.htmlhttp://www.wsbtv.com/news/28127904/detail.html



 http://gwt-code-reviews.**appspot.com/1453804/http://gwt-code-reviews.appspot.com/1453804/


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

[gwt-contrib] Re: Add concrete SourceInfo for varargs in method calls (issue1454801)

2011-06-03 Thread Scott Blum
Be sure to get the one in GwtAstBuilder too.  But don't makeChild() there,
just use the existing reference.

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

Re: [gwt-contrib] Dollar sign and binary types

2011-05-29 Thread Scott Blum
On Sat, May 28, 2011 at 3:41 PM, Grzegorz Kossakowski 
grzegorz.kossakow...@gmail.com wrote:

 I cannot comment on your proposals because I don't know gwt internals
 enough. I decided to add a method to TypeOracle that allows me to ask if
 given type comes from Java or Jribble. If it's Jribble I don't try to do any
 conversions.

 This is ugly and fragile method but seems to be the only viable strategy
 for now. If you guys can come up with systematic solution to this problem it
 would be awesome.


Use an annotation.

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

Re: [gwt-contrib] Dollar sign and binary types

2011-05-29 Thread Scott Blum
You wouldn't have to hack TypeOracle. You could just look for your
particular annotation to see what was a Jribble type.

On Sun, May 29, 2011 at 1:47 PM, Grzegorz Kossakowski 
grzegorz.kossakow...@gmail.com wrote:

 2011/5/29 Scott Blum sco...@google.com

 On Sat, May 28, 2011 at 3:41 PM, Grzegorz Kossakowski 
 grzegorz.kossakow...@gmail.com wrote:

 I cannot comment on your proposals because I don't know gwt internals
 enough. I decided to add a method to TypeOracle that allows me to ask if
 given type comes from Java or Jribble. If it's Jribble I don't try to do any
 conversions.

 This is ugly and fragile method but seems to be the only viable strategy
 for now. If you guys can come up with systematic solution to this problem it
 would be awesome.


 Use an annotation.


 You mean putting annotation to every Jribble type? How that would help?

 Also, I thought you'd enjoy this question:
 http://stackoverflow.com/questions/6167326/java-class-name-containing-dollar-sign

 Seems like javac can confuse itself about dollar sign, sigh.

 --
 Grzegorz Kossakowski

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


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

Re: [gwt-contrib] Dollar sign and binary types

2011-05-27 Thread Scott Blum
What John said.  Blame Java for the fact that with some lookup oracle, it's
impossible to distinguish the cases.  We've always assumed that users would
not use '$' in class names in places where it matters.

That being said, let's assume that a user isn't allowed to have both A.B and
A$B like Toby said, as the binary names would collide.  Given that, I
*think* the only place source type name really matters is resolving rebind
requests and results.  So maybe it's possible we could use only binary name
or internal name everywhere and move away from using source name except in
output messages.

On Fri, May 27, 2011 at 9:50 AM, John Tamplin j...@google.com wrote:

 On Fri, May 27, 2011 at 4:45 AM, Grzegorz Kossakowski 
 grzegorz.kossakow...@gmail.com wrote:

 2011/5/26 Eric Ayers zun...@google.com:
  Unfortunately, I tried removing the replace('$',.) and it failed
  miserably.  Looking at it in the debugger, those really are binary
 names.
  e.g.:
  com.google.gwt.core.client.impl.AsyncFragmentLoader$LoadingStrategy

 Thanks guys for you answers. I moved on with my work-around. It would
 be great if those binary names were converted to source names as soon
 as possible so number of places in gwt code where we have to consider
 both options is minimized.


 The problem is conversion to source names is lossy -- given Foo.Bar.Baz,
 you don't know where the split between the package name, enclosing class
 name, and class name is (compare to Foo/Bar$Baz and Foo/Bar/Baz).  I think
 the only way you could avoid this problem is if you kept a structured type
 with those pieces of information rather than a simple string, but that would
 be expensive in terms of allocating several additional objects for every
 class name in the program, plus many uses don't care about the distinctions
 and just wand the source name.

 --
 John A. Tamplin
 Software Engineer (GWT), Google

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


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

Re: [gwt-contrib] Dollar sign and binary types

2011-05-27 Thread Scott Blum
On Fri, May 27, 2011 at 10:12 AM, John Tamplin j...@google.com wrote:

 I don't think that solves the problem -- let's say we store Foo/Bar$Baz
 internally and convert it to a source name where needed.  How do we know
 whether the class name is Bar$Baz or Baz inside of Bar?  The problem is
 simply if you allow $ in a class name, binary and internal names are lossy
 too as they no longer encode the difference.


My point is to NOT convert it to source names, do everything in binary.

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

Re: [gwt-contrib] Dollar sign and binary types

2011-05-27 Thread Scott Blum
The compiler internals could be coded to use binary names.  Obviously,
generators would do something sensible.

For example, I know that rebind rules in gwt.xml are tracked by source name.
 Well, those could get looked up in TypeOracle and translated to the
appropriate binary name and tracked that way.  You would always to one-way
conversions from source-binary and never back.

On Fri, May 27, 2011 at 1:01 PM, John Tamplin j...@google.com wrote:

 On Fri, May 27, 2011 at 12:53 PM, Scott Blum sco...@google.com wrote:

 On Fri, May 27, 2011 at 10:12 AM, John Tamplin j...@google.com wrote:

 I don't think that solves the problem -- let's say we store Foo/Bar$Baz
 internally and convert it to a source name where needed.  How do we know
 whether the class name is Bar$Baz or Baz inside of Bar?  The problem is
 simply if you allow $ in a class name, binary and internal names are lossy
 too as they no longer encode the difference.


 My point is to NOT convert it to source names, do everything in binary.


 So when you generate source code, how do you do that?  Or let's just say
 you want to get the simple class name -- in the example, is it Bar$Baz or
 Baz?  The point is you don't have the information necessary to tell.

 --
 John A. Tamplin
 Software Engineer (GWT), Google

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


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

[gwt-contrib] Re: Autoformats user/super and user/test-super (issue1442805)

2011-05-24 Thread Scott Blum
I'm not sure what all that means, but shouldn't GPE be able to just turn the
code formatter on automatically?

On Tue, May 24, 2011 at 1:00 PM, Eric Ayers zun...@google.com wrote:

 Alex added a new eclipse application to GPE.  If you've got his latest
 and greatest (not sure if its public yet)

  eclipse -nosplash -application
 com.google.gwt.eclipse.core.GWTCodeFormatterApplication java xml
 formatting opts  js .prefs file  [ list of files and/or dirs ]


 On Tue, May 24, 2011 at 12:55 PM,  sco...@google.com wrote:
  Whoa, do you really have autoformatting JSNI working?  If so, that is
  totally awesome!
 
  http://gwt-code-reviews.appspot.com/1442805/
 



 --
 Eric Z. Ayers
 Google Web Toolkit, Atlanta, GA USA


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

[gwt-contrib] Re: Re-implement runAsync to improve code size. (issue1442807)

2011-05-20 Thread Scott Blum
Yeah, sorry.  old = what is now committed and new = this patch.

On Fri, May 20, 2011 at 9:41 AM, zun...@google.com wrote:

 I'm missing some contect here.  I  don't know what you mean by 'new' and
 old implementations of runAsync.  How new is new (this cl? something
 already committed or a project in the works?)



 http://gwt-code-reviews.appspot.com/1442807/


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

Re: [gwt-contrib] Re: Pruner runs only once. (issue1436802)

2011-05-16 Thread Scott Blum
Cool beans.

On Mon, May 16, 2011 at 8:14 PM, Ray Cromwell cromwell...@google.comwrote:

 I've done a quick scan of this and it looks ok, but I'd like to take
 some time tonight to review it in more detail. I like the
 'membersLiveExceptForInstantiability' change, I was going the suggest
 something like that when I was doing the JSO CFA overhaul last time.
 Also the checks in Pruner are simpler now.



 On Fri, May 13, 2011 at 11:37 AM, Scott Blum sco...@google.com wrote:
  On Fri, May 13, 2011 at 11:15 AM, Eric Ayers zun...@google.com wrote:
 
  I've been reading the code and talking to Scott about it.  The loop
  being removed is the while() loop in execImpl().  The jitter is the
  fact that the ControlFlowAnalyzer might return one result for liveness
  before the Pruner runs, and a different result after Pruner runs.  If
  you don't loop inside of Pruner, then the entire optimization pass may
  have to run extra times.
 
  Great explanation!
  The last time we tried to naively remove the while loop from Pruner, the
  outer optimization loop went from ~7 passes to ~10 passes for Showcase,
 and
  the total optimization time went up.
  You can think of my patch as converging faster.  With my patch in and
 the
  Pruner loop gone, you still only get ~7 outer optimization loops, and the
  total optimization time goes down.
 
  --
  http://groups.google.com/group/Google-Web-Toolkit-Contributors

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


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

[gwt-contrib] Re: Decentralize nullmethod/nullfield (issue1442802)

2011-05-14 Thread Scott Blum
On Sat, May 14, 2011 at 9:22 AM, zun...@google.com wrote:

 I know I've asked this before, but if code isn't live in the runer, we
 replace it with null.nullMethod(), null.nullField or the likes.  Why do
 we keep this around?  Dead Code elimination usually gets rid of it (but
 not always?) is it just left there to trip over at run time in case
 there is a bug in our liveness tests?


It's a correct translation of code where static analysis proves that a
qualifier is null.

User code:
String s = null;
s.toCharArray();

Translation:
null.nullMethod();

That way, we throw an NPE in the correct place at runtime.  Or more
technically, it generates an implicit null ref JavaScriptException.  If it
weren't for the desire to match the platform semantics, we could just as
easily replace it with throw new NullPointerException().

Arguably, we could just leave it as null.toCharArray(), but the whole idea
is to remove 'toCharArray() from the AST, and we wouldn't want to leave a
dangling reference to it that we'd have to worry about later.

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

[gwt-contrib] Re: Pruner runs only once. (issue1436802)

2011-05-13 Thread Scott Blum
On Fri, May 13, 2011 at 11:15 AM, Eric Ayers zun...@google.com wrote:

 I've been reading the code and talking to Scott about it.  The loop
 being removed is the while() loop in execImpl().  The jitter is the
 fact that the ControlFlowAnalyzer might return one result for liveness
 before the Pruner runs, and a different result after Pruner runs.  If
 you don't loop inside of Pruner, then the entire optimization pass may
 have to run extra times.


Great explanation!

The last time we tried to naively remove the while loop from Pruner, the
outer optimization loop went from ~7 passes to ~10 passes for Showcase, and
the total optimization time went up.

You can think of my patch as converging faster.  With my patch in and the
Pruner loop gone, you still only get ~7 outer optimization loops, and the
total optimization time goes down.

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

[gwt-contrib] Re: Enables on the persistent unit cache by default. (issue1448801)

2011-05-12 Thread Scott Blum
SGTM.  At some point I'll have to deal with versioning for the embedded GWT
ASTs, but I can burn that bridge when I come to it.

On Thu, May 12, 2011 at 6:48 PM, zun...@google.com wrote:

 I know the paint is still drying on the last patch I submitted for the
 Persistent Unit Cache, but no real problems have been reported in...
 weeks!  I think its ready to be on by default.


 http://gwt-code-reviews.appspot.com/1448801/


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

[gwt-contrib] Re: Rescues cached entries from jar files that are the same, save for the timestamp. (issue1441803)

2011-05-11 Thread Scott Blum
On Wed, May 11, 2011 at 10:57 PM, zun...@google.com wrote:

 this needs to return a copy. all other implementations of
 asCachedCompilationUnit() already return a copy.


That would make CachedCompilationUnit.writeReplace() be weird tho, right?

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

[gwt-contrib] Re: Discards the jar file name in the resource location. It isn't necessary, and (issue1428805)

2011-05-03 Thread Scott Blum
I mean only super-sourced.  Does Object come through as
'com/google/gwt/emul/java/lang/Object.java' or merely
'java/lang/Object.java'?

On Tue, May 3, 2011 at 2:56 PM, zun...@google.com wrote:

 On 2011/05/03 18:45:15, scottb wrote:

 LGTM.  Like Toby said, this is much better.


  Can you confirm that re-rooted resources retain their original

 (non-rerooted)

 path location?


 What do you mean by re-rooted resources? super sourced resources?  One
 thing I looked at was that generated resources create their path from
 the type name, but I don't think they get re-rooted if what you mean
 that is items that have been super sourced.



 http://gwt-code-reviews.appspot.com/1428805/


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

[gwt-contrib] Re: Fix a class of compiler bugs related to staticImpl. (issue1428804)

2011-04-27 Thread Scott Blum
If the Java MethodInliner kept call counts, I would have special-cased it to
allow inlining the static into the instance when it's the only caller.  But
since call counts aren't already computed, I decided it would be best to try
it out as is and see if it actually increases code size in practice.

On Wed, Apr 27, 2011 at 2:20 PM, Ray Cromwell cromwell...@google.comwrote:


 As long as the JsInliner can still clean it up, I'm fine, otherwise, it
 seems like it would introduce some bloat by having trivial delegations. I'm
 actually wondering if we should detect the case when a static method ONLY is
 referenced by the instance method it was created from via delegation, and
 *anti-staticify* it, e.g.

 function foo(x) {
foo$(this, x);
 }

 function foo$(this$static, x) {
this$static.x=x;
 }

 becomes

 function foo(x) {
   this.x=x;
 }

 -Ray


 On Mon, Apr 25, 2011 at 6:46 PM, sco...@google.com wrote:

 Reviewers: cromwellian, jbrosenberg,

 Message:
 Ran into this general class of issue... originally I set out to add
 staticImpl handling logic to a couple more places, such as
 ImplicitUpcastAnalyzer.  But the more I thought about it, the more it
 struck me as a real wart, and one that's not giving us much value.
 Perhaps even negative value by causing code bloat.  I think it's much
 simpler to just never inline staticImpls into the calling virtual
 method.



 Please review this at http://gwt-code-reviews.appspot.com/1428804/

 Affected files:
  M dev/core/src/com/google/gwt/dev/jjs/impl/MethodInliner.java
  M dev/core/src/com/google/gwt/dev/jjs/impl/Pruner.java
  M
 dev/core/src/com/google/gwt/dev/jjs/impl/SameParameterValueOptimizer.java
  M dev/core/src/com/google/gwt/dev/jjs/impl/TypeTightener.java


 Index: dev/core/src/com/google/gwt/dev/jjs/impl/MethodInliner.java
 diff --git a/dev/core/src/com/google/gwt/dev/jjs/impl/MethodInliner.java
 b/dev/core/src/com/google/gwt/dev/jjs/impl/MethodInliner.java
 index
 d7f5f3fecfdb50302c7a723d3d9ead02d30d9e50..92eb2bb156eaee1683049a95472d1d7f9ce09c0d
 100644
 --- a/dev/core/src/com/google/gwt/dev/jjs/impl/MethodInliner.java
 +++ b/dev/core/src/com/google/gwt/dev/jjs/impl/MethodInliner.java
 @@ -145,6 +145,20 @@ public class MethodInliner {
 @Override
 public boolean visit(JMethod x, Context ctx) {
   currentMethod = x;
 +  if (program.getStaticImpl(x) != null) {
 +/*
 + * Never inline a static impl into the calling instance method.
 We used
 + * to allow this, and it required all kinds of special logic in
 the
 + * optimizers to keep the AST sane. This was because it was
 possible to
 + * tighten an instance call to its static impl after the static
 impl had
 + * already been inlined, this meant any flow type optimizer
 would have
 + * to fake artifical flow from the instance method to the static
 impl.
 + *
 + * TODO: allow the inlining if we are the last remaining call
 site, and
 + * prune the static impl? But it might tend to generate more
 code.
 + */
 +return false;
 +  }
   return true;
 }

 Index: dev/core/src/com/google/gwt/dev/jjs/impl/Pruner.java
 diff --git a/dev/core/src/com/google/gwt/dev/jjs/impl/Pruner.java
 b/dev/core/src/com/google/gwt/dev/jjs/impl/Pruner.java
 index
 0ffdcf40faefc2fdc8b3c4ecf293c2ac372d5568..0b67077fe1db9ca11caf48e0fd5be80f15815e0e
 100644
 --- a/dev/core/src/com/google/gwt/dev/jjs/impl/Pruner.java
 +++ b/dev/core/src/com/google/gwt/dev/jjs/impl/Pruner.java
 @@ -360,7 +360,8 @@ public class Pruner {

   for (int i = 0; i  type.getMethods().size(); ++i) {
 JMethod method = type.getMethods().get(i);
 -if (!methodIsReferenced(method) ||
 pruneViaNoninstantiability(isInstantiated, method)) {
 +if (!referencedNonTypes.contains(method)
 +|| pruneViaNoninstantiability(isInstantiated, method)) {
   // Never prune clinit directly out of the class.
   if (i  0) {
 type.removeMethod(i);
 @@ -394,7 +395,7 @@ public class Pruner {
   for (int i = 1; i  type.getMethods().size(); ++i) {
 JMethod method = type.getMethods().get(i);
 // all other interface methods are instance and abstract
 -if (!isInstantiated || !methodIsReferenced(method)) {
 +if (!isInstantiated || !referencedNonTypes.contains(method)) {
   type.removeMethod(i);
   madeChanges();
   --i;
 @@ -426,6 +427,8 @@ public class Pruner {
  * devirtualizations. If the instance method has been pruned, then
 it's
  * okay. Also, it's okay on the final pass since no more
  * devirtualizations will occur.
 + *
 + * TODO: prune params; MakeCallsStatic smarter to account for it.
  */
 JMethod staticImplFor = program.staticImplFor(x);
 // Unless the instance method has already been pruned, of course.
 @@ -485,31 +488,6 @@ public class Pruner {
   return false;
 }


[gwt-contrib] Re: Fix a class of compiler bugs related to staticImpl. (issue1428804)

2011-04-27 Thread Scott Blum
On Wed, Apr 27, 2011 at 3:20 PM, jbrosenb...@google.com wrote:

 If I understand correctly, part of staticification is that all
 call-sites to myVar.foo(x) will be replaced by $foo(myVar, x), and thus
 foo(x) will be unused, and thus pruned.  So, the delegation issues goes
 away, no?


Yes, as long as all call sites can be devirtualized, the instance method
goes away.

On Wed, Apr 27, 2011 at 3:51 PM, jbrosenb...@google.com wrote:

 It looks like there might be some logic in
 ControlFlowAnalyzer.RescueVisitor.Rescue, which can also be removed if
 inlining staticImpl's is not an issue.


Whoops!  Yes, I need to remove that, my bad.

On Wed, Apr 27, 2011 at 4:34 PM, jbrosenb...@google.com wrote:

 I see now (looking at MakeCallsStatic.RewriteCallSites) that not all
 call sites get replaced, there are a few edge cases, relating to split
 points, etc., where the call sites are not replacedBut I'm guessing
 it won't be a large number of cases.


Yes, there will be cases where both the instance and static method make it
into the final output.  In some of those cases, JsInliner will actually do
the inlining.  In others, my theory is that not inlining them won't have a
negative effect on code size.

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

[gwt-contrib] Re: Re-architect how overrides are handled. (issue1422810)

2011-04-26 Thread Scott Blum
It actually does fix the abstract getClass() problem, I was noticing in the
generated output.  I'll mark my change as fixing this issue.

On Tue, Apr 26, 2011 at 4:03 AM, t.bro...@gmail.com wrote:

 Hey, it looks like it would fix this issue, cool!
 http://code.google.com/p/google-web-toolkit/issues/detail?id=4893
 According to my tests at the time, it would enable pruning of most
 getClass() methods (at a minimum all those for abstract classes, which
 are always overridden in the concrete classes, and then never executed):
 http://gwt-code-reviews.appspot.com/609801/show


 http://gwt-code-reviews.appspot.com/1422810/


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

[gwt-contrib] Re: EnumOrdinalizer cleanup better interop. (issue1426804)

2011-04-26 Thread Scott Blum
Based on your comments, I'm going to rework the patch.  You're right, I was
totally confused about the difference between
ReplaceEnumTypesWithInteger  ReplaceOrdinalFieldAndMethodRefsWithOrdinal.
 I think the JField / JFieldRef replacements in the former are what threw
me.  I'll rework the patch.

By valid state of the AST, I had run into a case in some work I was doing
where you had by analogy the equivalent of EnumType x = 3, and TypeTightener
was needing to clean up after.  But I think now that what I needed to do in
my patch was update TypeRemapper instead.  Lemme rework this and see what
falls out.

On Tue, Apr 26, 2011 at 3:12 PM, jbrosenb...@google.com wrote:

 Scott, would you mind, for my own edification, outlining how this
 improves the valid state of the AST after EnumOrdinalizer runs?
 Thanks.


 http://gwt-code-reviews.appspot.com/1426804/


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

[gwt-contrib] Re: Small generator testing framework (issue1424805)

2011-04-19 Thread Scott Blum
Yeah, they're in an impl package.

On Tue, Apr 19, 2011 at 11:12 AM, schm...@google.com wrote:

 I think the idea here is that no one (outside the existing GWT tests)
 should reference the *Resource classes directly - that's why we have the
 new interface Source. This way, you should be able to refactor the
 *Resource classes without breaking anyone, especially the original
 Resource interface.

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

[gwt-contrib] Re: Supress errors when building the Type Oracle. (issue1385810)

2011-03-31 Thread Scott Blum
On Thu, Mar 31, 2011 at 7:38 PM, Eric Ayers zun...@google.com wrote:

 It was kind of disruptive to pass the suppressErrors setting around
 through method parameters.  I assume that's what you're talking about.


Yeah.


 The good thing about logging inside of CompilationStateBuilder is that
 there is a concious decision about what to do with errors when you
 build the CompliationState.


Yeah, but this sort of flips it around and says, If you want errors, log
them.


 Another small
 wrinkle is that in JavaToJavaScript compiler we've ditched the
 CompilationState to save memory before the time we want to report
 errors (but we could always just keep it or some subset of the data
 and log them at a TRACE/DEBUG level like this patch does.)


The new translator stuff I'm working on is going to get rid of that code
path, however.  It will work a lot more like CompilingClassLoader, and
explicitly log errors one unit at a time as you need to reference a unit
that had errors.  The compilation state will have to be around until after
we have the AST built out.

Scott

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

Re: [gwt-contrib] Re: LongLibBase improperly stomps on global 'a' variable. This patch reuses globalTemp (_) instead. (issue1389803)

2011-03-29 Thread Scott Blum
Sounds good.  Now that I think about it, it may not make much performance
difference if time tends to be dominated by the actual math ops, but I
suppose every bit helps?

On Tue, Mar 29, 2011 at 10:35 AM, Daniel Rice (דניאל רייס)
r...@google.comwrote:

 I did the reimplementation.  Being less familiar with the intricacies of
 JavaScript, it seems likely that I missed an opportunity to preserve the
 nativeness of the array.  I'd be happy to take a look at this after the 2.3
 release.

 On Mon, Mar 28, 2011 at 5:52 PM, Scott Blum sco...@google.com wrote:

 Something smells fishy here.  I'm quite certain that this used to be
 implemented strictly as a two-double array in web mode, a true array.  At
 some point it was modified to use 3 elements instead of 2, but I don't think
 it should have lost its nativity.


 On Mon, Mar 28, 2011 at 5:36 PM, cromwell...@google.com wrote:



 http://gwt-code-reviews.appspot.com/1389803/diff/1/dev/core/super/com/google/gwt/lang/LongLibBase.java
 File dev/core/super/com/google/gwt/lang/LongLibBase.java (right):


 http://gwt-code-reviews.appspot.com/1389803/diff/1/dev/core/super/com/google/gwt/lang/LongLibBase.java#newcode325
 dev/core/super/com/google/gwt/lang/LongLibBase.java:325: _.l = l, _.m =
 m, _.h = h, _);
 On 2011/03/28 21:31:25, scottb wrote:

 Stupid question, but why can't we just return {l:l, m:m, h:h}?


 Good question. It looks like LongEmul is not a JSO, because they want to
 reuse it in both JVM and ProdMode, so it's a Java type. This code may
 have existed before @GwtScriptOnly or SingleJsoImpl. If I were during
 this today, I'd make LongEmul an interface, use JSO for ProdMode, and
 JRE impl for everything else.

 I guess we'll revisit it later.


 http://gwt-code-reviews.appspot.com/1389803/


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




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

[gwt-contrib] Re: LongLibBase improperly stomps on global 'a' variable. This patch reuses globalTemp (_) instead. (issue1389803)

2011-03-28 Thread Scott Blum
Something smells fishy here.  I'm quite certain that this used to be
implemented strictly as a two-double array in web mode, a true array.  At
some point it was modified to use 3 elements instead of 2, but I don't think
it should have lost its nativity.

On Mon, Mar 28, 2011 at 5:36 PM, cromwell...@google.com wrote:



 http://gwt-code-reviews.appspot.com/1389803/diff/1/dev/core/super/com/google/gwt/lang/LongLibBase.java
 File dev/core/super/com/google/gwt/lang/LongLibBase.java (right):


 http://gwt-code-reviews.appspot.com/1389803/diff/1/dev/core/super/com/google/gwt/lang/LongLibBase.java#newcode325
 dev/core/super/com/google/gwt/lang/LongLibBase.java:325: _.l = l, _.m =
 m, _.h = h, _);
 On 2011/03/28 21:31:25, scottb wrote:

 Stupid question, but why can't we just return {l:l, m:m, h:h}?


 Good question. It looks like LongEmul is not a JSO, because they want to
 reuse it in both JVM and ProdMode, so it's a Java type. This code may
 have existed before @GwtScriptOnly or SingleJsoImpl. If I were during
 this today, I'd make LongEmul an interface, use JSO for ProdMode, and
 JRE impl for everything else.

 I guess we'll revisit it later.


 http://gwt-code-reviews.appspot.com/1389803/


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

[gwt-contrib] Re: Add missing tests to JavaCompilationSuite (issue1385808)

2011-03-25 Thread Scott Blum
Thanks, it is really nice for Eclipse testing.

On Fri, Mar 25, 2011 at 9:56 PM, Eric Ayers zun...@google.com wrote:

 LGTM

 I didn't think maintaining this suite was a priority - the ant build
 searches for *Test.java and ignores the suite.  I guess if you are
 manually testing from eclipse its useful.

 On Fri, Mar 25, 2011 at 8:10 PM,  sco...@google.com wrote:
  Reviewers: zundel,
 
 
 
  Please review this at http://gwt-code-reviews.appspot.com/1385808/
 
  Affected files:
   M dev/core/test/com/google/gwt/dev/javac/JavaCompilationSuite.java
 
 
  Index: dev/core/test/com/google/gwt/dev/javac/JavaCompilationSuite.java
  diff --git
  a/dev/core/test/com/google/gwt/dev/javac/JavaCompilationSuite.java
  b/dev/core/test/com/google/gwt/dev/javac/JavaCompilationSuite.java
  index
 
 dc61d2436d7d032cf05b6a88bbbd22b59d7a53f8..40730954464cc12237d9a293d4454582f0a5f20c
  100644
  --- a/dev/core/test/com/google/gwt/dev/javac/JavaCompilationSuite.java
  +++ b/dev/core/test/com/google/gwt/dev/javac/JavaCompilationSuite.java
  @@ -42,15 +42,20 @@ public class JavaCompilationSuite {
 
  suite.addTestSuite(ArtificialRescueCheckerTest.class);
  suite.addTestSuite(BinaryTypeReferenceRestrictionsCheckerTest.class);
  +suite.addTestSuite(BytecodeSignatureMakerTest.class);
  suite.addTestSuite(CompilationStateTest.class);
  suite.addTestSuite(CompilationUnitFileReferenceTest.class);
  +suite.addTestSuite(CompiledClassTest.class);
  suite.addTestSuite(GWTProblemTest.class);
  suite.addTestSuite(JavaSourceParserTest.class);
  suite.addTestSuite(JdtBehaviorTest.class);
  suite.addTestSuite(JdtCompilerTest.class);
  -suite.addTestSuite(JSORestrictionsTest.class);
  suite.addTestSuite(JsniCheckerTest.class);
  suite.addTestSuite(JsniCollectorTest.class);
  +suite.addTestSuite(JSORestrictionsTest.class);
  +suite.addTestSuite(MemoryUnitCacheTest.class);
  +suite.addTestSuite(PersistentUnitCacheTest.class);
  +suite.addTestSuite(TypeOracleMediatorFromByteCodeTest.class);
  suite.addTestSuite(TypeOracleMediatorFromSourceTest.class);
 
  suite.addTestSuite(CollectClassDataTest.class);
 
 
 



 --
 Eric Z. Ayers
 Google Web Toolkit, Atlanta, GA USA


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

[gwt-contrib] Re: Adds a cache (PersistenUnitCache) to store CompilationUnits (issue1375802)

2011-03-23 Thread Scott Blum
On Wed, Mar 23, 2011 at 9:57 AM, zun...@google.com wrote:

 If we only write the cache to the same war dir subdirectory, then I
 think my concerns with purging the cache are solved (the cache will be
 in a well known place).  I'm still going to make an exception so that
 setting a system property will allow the cache to be written to a
 specific dir so we can support the caching from GWTShell invocations,
 but I'll remove it from GWTCompiler, Precompile and PrecompileOneShard.


SGTM.

I'll change the key to lookup by resource name, but that's going to
 cause some indigestion for the spam error message reduction patch I've
 been working on.  If there is ambiguity caused by super source, then
 that problem needs to be resolved anyway.


It's not a true ambiguity  imagine you're running two apps at once in
dev mode.  The first module has a com.example.Foo at
'com/example/Foo.java'.  The second module has a totally different
implementation because it uses super source to get the copy at
'com/example/super/com/example/Foo.java'.  These are literally two different
compilation units with different source, mod times, and outputs.

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

[gwt-contrib] Re: Adds a cache (PersistenUnitCache) to store CompilationUnits (issue1375802)

2011-03-23 Thread Scott Blum
On Wed, Mar 23, 2011 at 1:02 PM, Eric Ayers zun...@google.com wrote:

 FYI: I am adding a call to return the resource location to the
 CompilationUnit to handle changing the key.


That's what CompilationUnitBuilder.getLocation() was used for and in
practice, CompilationUnit.getDisplayLocation() returns exactly the same
value and serves exactly the same purpose, although you'd need to update the
antiquated Javadoc that suggests otherwise.

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

Re: [gwt-contrib] Are there any docs describing internals of gwtc?

2011-03-21 Thread Scott Blum
On Mon, Mar 21, 2011 at 10:10 AM, Grzegorz Kossakowski 
grzegorz.kossakow...@gmail.com wrote:

 The problem I described above (broken polymorphic calls) was caused by
 superClass field being equal to null for nodes representing
 interfaces. That would lead to broken overrides calculations for an
 interface containing method called toString (that overrides one from
 java.lang.Object) and thus to broken JS output. That was fairly
 non-trivial to find because you need toString being called through an
 interface to trigger that behaviour.

 Now, I'm wondering if it wouldn't make sense to have an assertion in
 some place checking that whether interfaces have java.lang.Object as
 their superClass as it seems to be invariant for GWT.


I seem to recall at one point we actually put some thought into not having
super interfaces have a superClass field at all, and just always have the
compiler implicitly assume Object.  Not sure where that idea went, or why we
ended up not doing that.

Scott

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

[gwt-contrib] Re: Moving UnitTestTreeLogger from dev/core/src to dev/core/tests, so gwt-dev (issue1383804)

2011-03-19 Thread Scott Blum
I was thinking you'd want to remove junit.jar from the non-test build path
for gwt-dev.

On Fri, Mar 18, 2011 at 1:52 PM, Freeland Abbott fabb...@google.com wrote:

 Turns out that ant is already covered: user/build.xml has, in part:

   !--
 Classpaths added for test cases
   --
   path id=test.extraclasspath
 pathelement location=${gwt.build}/out/dev/bin-test /
 etc.


 so dev/bin-test is already available.  I guess source code wouldn't be, but
 translatable tests seem unlikely to mess with TreeLoggers, and empirically
 when I ran ant tests, the only problem I got was was from
 com.google.gwt.validation.tck.ConstraintCompositionGwtSuite.xml
 (draft-htmlunit and nometa-htmlunit only, dev, emma, and web were all
 fine)... I assumed that was a system flake, not something symptomatic of my
 change.  The error was Testcase: Monitor file
 (blahblahblah/junitvmwatcher6602185781037387809.properties) missing,
 location not writable, testcase not started or mixing ant versions?, which
 seemed unlikely to be related to migration of UserTestTreeLogger, especially
 with the others passing.

 On Fri, Mar 18, 2011 at 1:40 PM, Scott Blum sco...@google.com wrote:

 LGTM.  Shouldn't some ant build rules want to change, though?




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

[gwt-contrib] Re: Moving UnitTestTreeLogger from dev/core/src to dev/core/tests, so gwt-dev (issue1383804)

2011-03-18 Thread Scott Blum
LGTM.  Shouldn't some ant build rules want to change, though?

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

Re: Making GWT 2.2 work in eclipse 3.4

2011-03-14 Thread Scott Selikoff
Excellent solution, worked for me.  Granted it would be good know what
side effects disabling the requirement could have.  Also, it would be
nice if Google fixed the GWT 3.4 Eclipse build since it doesn't work
for many (all?) Eclipse 3.4 instances.

-- 
You received this message because you are subscribed to the Google Groups 
Google Web Toolkit group.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.



Re: [gwt-contrib] Are there any docs describing internals of gwtc?

2011-03-14 Thread Scott Blum
On Mon, Mar 14, 2011 at 3:03 PM, Grzegorz Kossakowski 
grzegorz.kossakow...@gmail.com wrote:

 1. What's the difference between TypeMap and TypeOracle and why they
 seem to have overlapping functionality?


In GWT, there are two major pieces of infrastructure that deal with
representing Java language input.

1) A reflection of the user's type model for the purposes of running
generators.  Approximately equivalent to the kind of information you can get
via Java reflection.  Models types, fields, and methods, but not method
bodies.  The entire machinery around this can be loosely referred to as
TypeOracle, which is the primary interface for accessing this type model.
 Generators use this type model to generate code.  This infrastructure is
used in both dev mode and web mode, as Generators run in both contexts.

2) The GWT AST, which is essentially a source-level representation of the
user's Java code, including method bodies, which is optimized and translated
into JavaScript.  May be referred to as GWTC, the compiler, the web-mode
compiler, etc.  Mostly lives in com.google.gwt.dev.jjs (which stands for
'Java to JavaScript').  TypeMap is a small implementation detail that's only
useful for the JDT AST - GWT AST translation.


 2. Why TypeOracleMediator operates on bytecode whereas gwtc is
 supposed to work with java source, or jdt's asts?


Historically, we've run JDT twice.  Once to build TypeOracle, and once to
build the GWT AST.  Efforts have been made to transition TypeOracle to be
built from bytecode, which would eliminate one of these JDT runs in favor of
using external (presumably IDE-built) class files.


 3. How emulation of object orientation is implemented in gwt?


Using JavaScript prototype chains, and mangling method signatures such that
any given override of a method has a globally unique name in the compiled
output.  Try compiling with -style PRETTY or DETAILED and inspect the
output.


 4. What are main phases in gwtc's execution. What are dependencies?


JavaToJavaScriptCompiler .precompile() is what I would consider the main
high-level algorithm.  But here's a text overview.

1) Build TypeOracle from the initial set of available source units
(CompilationStateBuilder).
2) Begin running the web mode compile (WebModeCompilerFrontEnd).
3) As the web mode compile runs, we encounter GWT.create() calls
(FindDeferredBindingSitesVisitor).
4) Use the rebind infrastructure to resolve rebind requests.  This may
entail running Generators, which generate new code.
5) Newly-generated types get added to CompilationState + TypeOracle in a bit
of a loop-back process.
6) Newly-generated types may themselves contain GWT.create() calls, looping
back through step 4.
7) Eventually, all our code is generated.  Get rid of TypeOracle, we don't
need it anymore.
8) GenerateJavaAST turns the JDT AST into the GWT AST.
9) Normalize certain difficult constructs.
10) Optimize.
11) Post-optimization normalizes to turn high-level Java constructs into
JS-specific implementation details (but still Java AST).
12) GenerateJavaScriptAST
13) Optimize JS AST
14) Produce JS source text.


 I'd like to know where TypeMap is being built and why it's done twice.


It should only get built once.


 Also, TypeOracle seems to be highly mutable data structure. When it
 gets updated and why?


From the outside, it should be seen as append only.  Existing state should
be effectively immutable.  It gets updated because Generators produce new
types as the compile proceeds.


 Do you guys have anything (slides, blog posts, discussions, etc.) that
 would help me to better understand those matters?


Here's wiki entries for TypeOracle / CompilationState.  The first is
outdated by useful to understand the second one.

http://code.google.com/p/google-web-toolkit/wiki/CompilationUnit_1_5
http://code.google.com/p/google-web-toolkit/wiki/CompilationUnit

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

Re: [gwt-contrib] Are there any docs describing internals of gwtc?

2011-03-14 Thread Scott Blum
On Mon, Mar 14, 2011 at 4:41 PM, Grzegorz Kossakowski 
grzegorz.kossakow...@gmail.com wrote:

 So, if my GWT app doesn't have any generators exact contents of
 TypeOracle doesn't matter? I'm asking because I'm thinking of creating
 some stub data structures for jribble units and just move on to fixing
 some other issues and come back only once I want to support Generators
 written in Scala or Generators referring Scala.


That *may* be true but you'd have to try it and find out.  I know we use
TypeOracle for a couple of other purposes in dev mode, but I don't *think*
we use it for anything else in web mode..


  2) The GWT AST, which is essentially a source-level representation of the
  user's Java code, including method bodies, which is optimized and
 translated
  into JavaScript.  May be referred to as GWTC, the compiler, the web-mode
  compiler, etc.  Mostly lives in com.google.gwt.dev.jjs (which stands for
  'Java to JavaScript').  TypeMap is a small implementation detail that's
 only
  useful for the JDT AST - GWT AST translation.

 I see. It happens that TypeMap is quite interesting from my point of
 view because I'm translating Jribble AST to GWT AST by following JDT
 AST - GWT AST translation (more or less).


Eek... to be honest, JDT AST - GWT AST is some of the nastiest code around,
mostly due to JDT.  If you're going to follow a pattern, you might look at
the new GwtAstBuilder, which is at least marginally cleaner than
BuildTypeMap/GenerateJavaAST.


 Is there one class that is dealing specifically with emulating object
 orientation or it's scattered around many classes? I'm asking because
 toString() call get's translated to toString_2() javascript call and
 this method is not being defined anywhere in js source code. I'm
 trying to pinpoint location where this stuff is handled to understand
 why I get a call to non-existing place.


Hmm, I'm not completely sure what you're asking.  GenerateJavaScriptAST is
the place to look for how precisely the Java AST is transformed into
JavaScript.


 I've got another question. Do you have any tool for checking
 correctness of GWT's ASTs or a tool that allows one to dump ASTs and
 compare them? The scenario I have in mind is like this:
 1. I have minimal jribble example that exhibits some obscure problem
 like with toString described above and I fail to find a bug but I
 suspect that GWT ASTs I get out of Jribble are broken.
 2. I prepare corresponding Java code that imitate code from jribble.
 This should work (or I found a bug in gwtc itself but this is highly
 unlikely). Now I'd like to compare those two ASTs. Such comparison
 should immediately reveal the source of my problems.


You can always call toSource() on any GWT AST node to get the source
representation.  GwtAstBuilderTest utilizes this to verify that the new
GwtAstBuilder is mostly source-compatible with the old translator.  We also
have a bunch of unit tests derived from JJSTestBase that all generally
verify that a certain input source + certain transformations turns into
expected output.

Other that that, we use JUnit / GWTTestCase to actually execute the compiled
output and verify correctness JUnit style.

Scott




 Do you have anything handy that would help me with this or do you have
 some other idea how to solve my problem?

 --
 Best regards,
 Grzegorz Kossakowski


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

[gwt-contrib] Re: Adds unit tests for extending JavaScriptObject. Tests a loosening of the (issue1369805)

2011-03-03 Thread Scott Blum
On Thu, Mar 3, 2011 at 10:04 AM, Eric Ayers zun...@google.com wrote:

 After sleeping on the static rogue setter, I don't like it much either and
 came up with some alternatives:

 1) Would it be more palatable to turn setJavaScriptObjectClass() it into an
 instance method?  That way, we wouldn't have to reset the static variable
 each time in tearDown and the override would last for only one instance of a
 TypeOracle.  That is the simplest thing I can think of.


I think that would definitely be an improvement on the static method.


 2) We could make the setter just add to a static list of alternative class
 names to be treated like JavaScriptObject.  That would incur a slight
 run-time penalty in computeSingleJsoImplData() to check against a list of
 strings instead of just a single one.  But then we wouldn't have to worry
 about resetting the name.


Nah, instance method is better than this.


 3) Do you think it would be feasable to taking
 com.google.gwt...mediatortest.JavaScriptObject.class object's bytecode and
 re-write the package using ASM?


Actually, that might not be too hard at all.


 4) You suggested squirreling away a copy of
 com/google/gwt/core/client/JavaScriptObject.class somewhere on the classpath
 for the gwt-dev project and using it as the source for the bytecode.  This
 would require some minor refactoring of CheckedJavaResource and subclasses
 in TypeOracleMediatorTest.  To me, this is kind of obscure black magic
 (comparted to how the rest of the tests are implemented.)


Hmm, MutableJavaResource is a bit of a beast these days.  Kind of cumbersome
that reified Class objects are the primary api there.  If Class objects were
a convenience, and the underlying api was in terms of stuff you could get
from a Class object, then you could have a Class convenience constructor for
most of the cases, and special-case JavaScriptObject to work from bytes.
 You could get the bytes easily enough by instantiating a
CompilationStateTestBase and grabbings its 'state', which will already
contain a Unit for JSO, the one from JavaResourceBase.JAVASCRIPTOBJECT.

I guess it all depends on how serious you are about removing
TypeOracleMediatorFromByteCodeTest.  If you are going to get rid of that
anyway, MutableJavaResource gets a lot simpler, and it becomes pretty easy
to just utilize JavaResourceBase.JAVASCRIPTOBJECT.

Scott

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

[gwt-contrib] Re: Formatting changes with updated Eclipse GWT Format settings for issue 1373803 (issue1371806)

2011-03-03 Thread Scott Blum
LGTM

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

[gwt-contrib] Re: Adds unit tests for extending JavaScriptObject. Tests a loosening of the (issue1369805)

2011-03-03 Thread Scott Blum
On Thu, Mar 3, 2011 at 12:36 PM, zun...@google.com wrote:



 http://gwt-code-reviews.appspot.com/1369805/diff/3001/dev/core/test/com/google/gwt/dev/javac/TypeOracleMediatorTestBase.java
 File
 dev/core/test/com/google/gwt/dev/javac/TypeOracleMediatorTestBase.java
 (right):


 http://gwt-code-reviews.appspot.com/1369805/diff/3001/dev/core/test/com/google/gwt/dev/javac/TypeOracleMediatorTestBase.java#newcode218
 dev/core/test/com/google/gwt/dev/javac/TypeOracleMediatorTestBase.java:218:
 null, getByteCode(aClass), System.currentTimeMillis());
 On 2011/03/03 17:14:07, scottb wrote:

 Unrelated, but shouldn't this be getLastModified() instead of current

 time?

 I dunno, do you want it to use caching?


U... your question makes me realize I have no actual clue how that test
works or what the significance of that timestamp is!

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

[gwt-contrib] Re: Adds unit tests for extending JavaScriptObject. Tests a loosening of the (issue1369805)

2011-03-03 Thread Scott Blum
On Thu, Mar 3, 2011 at 1:47 PM, zun...@google.com wrote:



 http://gwt-code-reviews.appspot.com/1369805/diff/3001/dev/core/test/com/google/gwt/dev/javac/TypeOracleMediatorTestBase.java
 File
 dev/core/test/com/google/gwt/dev/javac/TypeOracleMediatorTestBase.java
 (right):


 http://gwt-code-reviews.appspot.com/1369805/diff/3001/dev/core/test/com/google/gwt/dev/javac/TypeOracleMediatorTestBase.java#newcode218
 dev/core/test/com/google/gwt/dev/javac/TypeOracleMediatorTestBase.java:218:
 null, getByteCode(aClass), System.currentTimeMillis());
 On 2011/03/03 17:36:26, zundel wrote:

 On 2011/03/03 17:14:07, scottb wrote:
  Unrelated, but shouldn't this be getLastModified() instead of

 current time?

  I dunno, do you want it to use caching?


 Its intended to represent the timestamp of the source file or class file
 resource as you mention, but in order to compute dependency between
 types at the type oracle level.  The idea is to use it for determining
 when to re-run generators or to use the cache of the previous generator
 run.

 I figured for unit testing we would want to invalidate any previous
 cache.


Ahh, gotcha.  Mind throwing a comment there while you're in there?

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

[gwt-contrib] Re: Decentralize JClassLiterals. (issue1375801)

2011-03-03 Thread Scott Blum
Yay! Submitted!

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

[gwt-contrib] Re: Adds unit tests for extending JavaScriptObject. Tests a loosening of the (issue1369805)

2011-03-02 Thread Scott Blum
On Wed, Mar 2, 2011 at 7:21 PM, Eric Ayers zun...@google.com wrote:

 @Scott: I was not planning to revert the diff cheese. This uses the
 recently updated official gwt-format.xml autoformatting for Eclipse.  I've
 already volunteered to go through and run the autoformatter to bring
 existing source up to date.


Right, I'm just making the point that it would be great if you could land
that first, so that when you submit this change, it won't mix the formatting
 semantic changes into one CL.

Per our face to face, it'd also be good if you could leave a TODO in
TypeOracle to remove the rogue setter once
TypeOracleMediatorFromByteCodeTest is gone.

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

[gwt-contrib] Re: Tweak JType memory/serialization footprint. (issue1367801)

2011-02-28 Thread Scott Blum
Enums should be almost exactly the same, I think.

On Mon, Feb 28, 2011 at 5:00 PM, Eric Ayers zun...@google.com wrote:

 I was trying to think of a way to use enum support (which serializes kind
 of compactly), but I don't think it would be any more compact than this.


 On Mon, Feb 28, 2011 at 4:52 PM, sco...@google.com wrote:

 http://gwt-code-reviews.appspot.com/1367801/




 --
 Eric Z. Ayers
 Google Web Toolkit, Atlanta, GA USA
 DO NOT FORWARD


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

Re: [gwt-contrib] [RFC] GWT Widgets that ROCK!

2011-02-25 Thread Scott Blum
Hi John,

If my question is stupid or makes incorrect assumptions, feel free to
completely ignore me.  My question relates to render and how the
SafeHtmlBuilder is constructed:

@Override
public void render(Context context, SafeHtml data, SafeHtmlBuilder sb) {
  sb.appendHtmlConstant(button type=\button\ tabindex=\-1\);
  if (data != null) {
sb.append(data);
  }
  sb.appendHtmlConstant(/button);
}

At a glance, this seems to imply that any inner content has to already be
baked HTML.  To me, that seems to imply that for a complex hierarchy, you
have to construct a bunch of SafeHtmlBuilders as you go, bake them, and pass
the result into yet more builders.  I don't know how this fits into the
existing model, but would it be possible to do something more visitor like?

@Override
public void render(Context context, SafeHtmlBuilder sb) {
  sb.appendHtmlConstant(button type=\button\ tabindex=\-1\);
  context.doChildren(sb);
  sb.appendHtmlConstant(/button);
}


In effect, you run the SafeHtmlBuilder in 'one shot'.

Just a comment from the peanut gallery, :)
Scott

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

Re: GWT 2.2.0 broke binary compatibility for code generation

2011-02-23 Thread Scott Blum
I bet you could do something like this:

class FooGenerator extends Generator {

  private static final Generator impl;

  static {
try {
  Class? jTypeClass =
Class.forName(com.google.gwt.core.ext.typeinfo.JType);
  Class? generatorClass;
  if (jTypeClass.isInterface()) {
generatorClass =
Class.forName(com.example.foo.rebind.impl.FooGenerator);
  } else {
generatorClass =
Class.forName(com.example.foo.rebind.legacyimpl.FooGenerator);
  }
  impl = (Generator) generatorClass.newInstance();
} catch (Exception e) {
  if (e instanceof RuntimeException) {
throw (RuntimeException) e;
  }
  throw new RuntimeException(e);
}
  }

  @Override
  public String generate(TreeLogger logger, GeneratorContext context,
  String typeName) throws UnableToCompleteException {
return impl.generate(logger, context, typeName);
  }
}




On Tue, Feb 22, 2011 at 6:06 PM, Brian Reilly brian.irei...@gmail.comwrote:

 I'll have to look into maven to see if that can be done, but I'm not

 too optimistic that it would work very well.


 Is there a gwt.version property that we can check inside the

 generate-with tag of the library's module XML? Theoretically, a

 library could then provide two classes in a single jar... one compiled

 against 2.1.1 and the other compiled against 2.2.


 I'd even take a property that is new or that the default value changed

 in 2.2... really anything to take the burden of worrying about this

 off of the end developer.


 -Brian

 --
 You received this message because you are subscribed to the Google Groups
 Google Web Toolkit group.
 To post to this group, send email to google-web-toolkit@googlegroups.com.
 To unsubscribe from this group, send email to
 google-web-toolkit+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-web-toolkit?hl=en.


-- 
You received this message because you are subscribed to the Google Groups 
Google Web Toolkit group.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.



Re: [gwt-contrib] Re: Adds a 10 second flush timer to the Speed Tracer logger. (issue1361801)

2011-02-23 Thread Scott Blum
On Wed, Feb 23, 2011 at 1:16 PM, Toby Reyelts to...@google.com wrote:

 I'm concerned about how this might impact logging results. For example,
 even if the results are written out on a separate thread (and assuming the
 box has an entirely free processor to deal with it), you can still cause the
 disk to be busy with I/O during the writes, slowing down the real time of
 the even thread if it's also doing I/O. Basically, we already have enough
 problems with reproducible results, so I hate the idea of adding even more
 non-deterministic behavior to the mix.


FWIW, the LogWriterThread already is going to randomly flush itself when the
buffers fill up, so it's probably not any less deterministic to flush it on
a regular basis.  The streamed output from dev mode seems like a
reasonable use case, even flushing every second or two shouldn't impact
performance.

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

Re: RequestFactory/Editor AutoBean has been frozen error

2011-02-22 Thread Scott Olcott
Thomas,
You are correct in understanding my issue.  I tried 
calling AutoBean.clone(), but is fails with a Cannot clone wrapped bean 
error.

I was however able to resubmit the proxy successfully using the following:

   AutoBeanTest autoBean = AutoBeanUtils.getAutoBean(test);

autoBean.setFrozen(false);

requestContext = requestFactory.testRequest();

autoBean.setTag(requestContext, requestContext);

driver.edit(test, requestContext);


calling autoBean.setTag(requestContext, requestContext) is needed to avoid 
a Attempting to edit an EntityProxy previously edited by another 
RequestContext  error.  I know it's a hack but it's the only thing I can 
get to work other than copying the proxy into a new proxy property by 
property.


-- 
You received this message because you are subscribed to the Google Groups 
Google Web Toolkit group.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.



Re: RequestFactory/Editor AutoBean has been frozen error

2011-02-18 Thread Scott Olcott
I have temporarily fixed this by copying AbstractRequestContext into a 
super-source directory and making the change there.  I also had to call 
invocations.clear() to avoid duplicate invocations the next time a request 
is fired.  You also need to make sure editedProxies.clear() is not called 
otherwise all the properties on your proxy will be null on the next request.

It looks like invocations.clear() should also be called when there are 
violations, otherwise you will get duplicate invocations.  I noticed this on 
the violations because it would display duplicated error messages on the 
second request. 

I created http://code.google.com/p/google-web-toolkit/issues/detail?id=6008 
for this issue.

-- 
You received this message because you are subscribed to the Google Groups 
Google Web Toolkit group.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.



RequestFactory/Editor AutoBean has been frozen error

2011-02-17 Thread Scott Olcott
I am trying to use the RequestFactory and Editor frameworks together.
I have it working successfully for requests that finish successfully
or that result in constraint violations.  However, whenever there are
server errors and my Receiver.onFailure(ServerFailure) method is
called I am not able to reuse my proxy object.

If I do nothing in the onFailure method other that setting the some
error message in the ui and then try to fire another request using the
same proxy object I get the AutoBean has been frozen error message.
When there are contraint violations I can successfully fire another
request with the same proxy object.  After digging into the code I
found the doFire method in AbstractRequestContext.  Inside this method
it creates an anonymous TransportReceiver object which handles the
response from the server.

TransportReceiver.onTransportSuccess(String payload) handles an
response that successfully hit the server.  If
response.getGeneralFailure() != null or there are constraint
violations AbstractRequestContext.reuse() is eventually called which
unfreeze any autobean entities that were apart of the request and
unlocked the request context.

However on errors that aren't generalFailures reuse() is never
called.  This means that this instance of the autobean can never be
used again without getting the Autobean is frozen error.  Has anyone
else run into this issue.  If so is there a workaround for it.

Thanks

-- 
You received this message because you are subscribed to the Google Groups 
Google Web Toolkit group.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.



Re: RequestFactory/Editor AutoBean has been frozen error

2011-02-17 Thread Scott Olcott
I am using GWT 2.2

On Feb 17, 3:39 pm, Scott Olcott scottolc...@gmail.com wrote:
 I am trying to use the RequestFactory and Editor frameworks together.
 I have it working successfully for requests that finish successfully
 or that result in constraint violations.  However, whenever there are
 server errors and my Receiver.onFailure(ServerFailure) method is
 called I am not able to reuse my proxy object.

 If I do nothing in the onFailure method other that setting the some
 error message in the ui and then try to fire another request using the
 same proxy object I get the AutoBean has been frozen error message.
 When there are contraint violations I can successfully fire another
 request with the same proxy object.  After digging into the code I
 found the doFire method in AbstractRequestContext.  Inside this method
 it creates an anonymous TransportReceiver object which handles the
 response from the server.

 TransportReceiver.onTransportSuccess(String payload) handles an
 response that successfully hit the server.  If
 response.getGeneralFailure() != null or there are constraint
 violations AbstractRequestContext.reuse() is eventually called which
 unfreeze any autobean entities that were apart of the request and
 unlocked the request context.

 However on errors that aren't generalFailures reuse() is never
 called.  This means that this instance of the autobean can never be
 used again without getting the Autobean is frozen error.  Has anyone
 else run into this issue.  If so is there a workaround for it.

 Thanks

-- 
You received this message because you are subscribed to the Google Groups 
Google Web Toolkit group.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.



[gwt-contrib] Re: A Class that creates a string hash out of the public API of a (issue1359802)

2011-02-17 Thread Scott Blum
On Thu, Feb 17, 2011 at 12:22 AM, jbrosenb...@google.com wrote:

 Scott makes sense, however, would it not also make sense to have a
 signature that can also used by generators to determine whether a type
 has changed (and prevent the need for an alternate signature being
 maintained for that purpose)?  Currently, we have a dumbed down version
 of generating a signature from the full bytecode (in JRealClassType).
 That would benefit from an asm based signature that only looks at api
 level structurePerhaps this present code could be modified to
 alternately accept a flag to consider annotations as well, if desired.


I have to agree that this should be separate.  For example, TypeOracle cares
about parameter names, annotations, etc; none of which would force recompile
propagation.


 I'm wondering if handling the case where some methods have been
 re-ordered in a source file is worth incurring the overhead of sorting
 and managing multiple StringBuilders, etc.  This could add up if we have
 a large number of classes to consider, etc.  I'm not sure how often a
 source file has some fields/methods re-ordered, vs. other api changing
 edits, or how important it is to seamlessly handle that case (I think
 the user expects some recompiling when editing code).  Maybe it's not
 too expensive though (in which case I'll go jump off a cliff)?


I'm sure it's not terribly expensive, and I'm generally not a fan of trying
to micro optimize on the front end.  If it becomes a source of sluggishness,
it'll show up on profiling at some point.

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

[gwt-contrib] Re: Recompute whether an interface is dual-implemented by JSO and Java types after each compiler opt... (issue1351801)

2011-02-17 Thread Scott Blum
On Thu, Feb 17, 2011 at 6:29 PM, Ray Cromwell cromwell...@google.comwrote:

 That sounds better, but is there a reason why JavaScriptObjectNormalizer
 was doing this pre-optimization in the first place?


I dunno Bob?


 Anyway, in favor of keeping the 'null instanceof JSO' behavior is that the
 following code currently will not do a null check either:

 SomeJso foo = getNull();
 foo.someMethod() - translates to jso$someMethod(foo), even if foo is null;

 In most cases, you'll still get an NPE, when interior of the function tries
 to deref 'this'. I'll look at re-rolling this using your proposal.


Yeah, that's not so much my issue.  My issue is more that a user writing
null instanceof JSO should NOT get a 'yes' back.

Scott

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

[gwt-contrib] Re: Eliminates empty constructor seed functions by using 2 helper functions to setup (issue1360802)

2011-02-17 Thread Scott Blum
On Thu, Feb 17, 2011 at 6:43 PM, Ray Cromwell cromwell...@google.comwrote:

 So your proposal is something like this:

 setupVtable(castableTypeMap, someSuperCtor, ctor1, ctor2);


 function setupVtable(ctm, supCtor) {
 var newProto = {};
 copyProtoFields(someSuperCtor.prototype, newProto);
 for(var i = 2; i  arguments.length; i++) {
  arguments[i].prototype = newProto;
}
newProto.castableTypeMap = ctm;
newProto.getClass = getLazyLiteral(...n);
 }


Something like that, yep.  Just need to figure out what to do if there
aren't any super ctors (maybe they got inlined?).
- Use ids after all?
- Make a synthetic super ctor just for this purpose?
- Just attach super symbols directly to concrete type.

Actually, #3 might be a reasonable speed vs. size tradeoff, maybe we should
get rid of even virtual proto chaining.


 One of the other things I want to do is eliminate global class literal
 fields in favor of lazily constructed ones, so that Foo.class is replaced
 with getLazyLiteral(someToken), and Object.getClass() is setup dynamically
 as well. Class literals are responsible for enormous bloat currently.


SG.


 However, my fear is copying prototype fields might hurt V8 optimizations,
 or be atrociously slow on mobile browsers.


Will need to test and find out.  It might actually be better than having to
go through a multi-level lookup chain.

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

  1   2   3   4   5   6   7   >