----- Original Message ----- > From: "Alon Bar-Lev" <[email protected]> > To: "Vojtech Szocs" <[email protected]> > Cc: [email protected], [email protected] > Sent: Tuesday, June 18, 2013 4:56:49 PM > Subject: Re: [Engine-devel] if there is a updated debug environment how to? > > > > ----- Original Message ----- > > From: "Vojtech Szocs" <[email protected]> > > To: "Alon Bar-Lev" <[email protected]> > > Cc: [email protected], [email protected] > > Sent: Tuesday, June 18, 2013 4:16:25 PM > > Subject: Re: [Engine-devel] if there is a updated debug environment how to? > > > > > > ----- Original Message ----- > > > From: "Alon Bar-Lev" <[email protected]> > > > To: "Vojtech Szocs" <[email protected]> > > > Cc: [email protected], [email protected] > > > Sent: Tuesday, June 18, 2013 1:32:52 PM > > > Subject: Re: [Engine-devel] if there is a updated debug environment how > > > to? > > > > > > > > > > > > ----- Original Message ----- > > > > From: "Vojtech Szocs" <[email protected]> > > > > To: "Alon Bar-Lev" <[email protected]> > > > > Cc: [email protected], [email protected] > > > > Sent: Tuesday, June 18, 2013 2:01:01 PM > > > > Subject: Re: [Engine-devel] if there is a updated debug environment how > > > > to? > > > > > > > > Hi Alon, > > > > > > > > revisiting this thread, I have some comments regarding GWT debugging > > > > via > > > > standard development environment, as described in README.developer. > > > > > > Thank you for your comments! > > > As the file is within git, you can submit a patch... :) > > > I will create one for the following comments. > > > > Thanks! I +2'ed your patch [http://gerrit.ovirt.org/#/c/15827/] > > > > > > > > > - README.developer says: > > > > For example, if your machine is low on memory, use: > > > > EXTRA_BUILD_FLAGS_DEV="-Dgwt-plugin.localWorkers=2" > > > > however this should be: > > > > For example, if your machine is low on memory, use: > > > > EXTRA_BUILD_FLAGS_DEV="-Dgwt.compiler.localWorkers=2" > > > > > > Fixed. > > > > > > > > > > > - README.developer says: > > > > By default, only the gecko1_8 support is built > > > > I'd rather explain what this means: > > > > By default, only the gecko1_8 (Mozilla Firefox) support is built > > > > > > Fixed. > > > > > > > - what's the point of having EXTRA_BUILD_FLAGS_DEV_GWT vs. > > > > EXTRA_BUILD_FLAGS_DEV ? > > > > > > I wanted to allow customization of GWT as standalone as it require more > > > flags > > > and defaults. > > > > > > So I can put the following with a default for gwt while allowing > > > application > > > customization. > > > > > > For example if I have: > > > EXTRA_BUILD_FLAGS_DEV_GWT:=-D gwt.userAgent=gecko1_8 > > > > > > and execute: > > > $ make EXTRA_BUILD_FLAGS_DEV="-DskipTests" > > > > > > I do not override the GWT settings. > > > > I see, so developer should only use EXTRA_BUILD_FLAGS_DEV to provide any > > additional settings (or override existing settings), i.e. both GWT and > > non-GWT settings can be customized via EXTRA_BUILD_FLAGS_DEV. > > > > If I understand correctly, EXTRA_BUILD_FLAGS_DEV_GWT is used internally > > for: > > - setting default target browser to Firefox (only) > > Right. > > > - enabling draft compile (if DEV_BUILD_GWT_DRAFT == 1) > > I am going to change that[1] > > [1] http://gerrit.ovirt.org/#/c/15736/ > > > We can consider renaming EXTRA_BUILD_FLAGS_DEV_GWT -> > > EXTRA_BUILD_FLAGS_DEV_GWT_DEFAULTS. > > OK, will do. > > > But in any case, I suggest to apply > > EXTRA_BUILD_FLAGS_DEV_GWT *before* EXTRA_BUILD_FLAGS_DEV (instead of the > > opposite like today). This way, EXTRA_BUILD_FLAGS_DEV can be used to > > override any settings set by EXTRA_BUILD_FLAGS_DEV_GWT. > > > > For example: > > > > $(MVN) \ > > $(EXTRA_BUILD_FLAGS_DEV_GWT) \ --> GWT-specific defaults > > $(EXTRA_BUILD_FLAGS_DEV) \ --> generic overrides (both GWT and > > non-GWT) > > ... > > > > install \ > > EXTRA_BUILD_FLAGS="$(EXTRA_BUILD_FLAGS_DEV_GWT) > > $(EXTRA_BUILD_FLAGS_DEV)" \ --> this one is OK > > > > Let me know what you think about this. > > Good for me.
After http://gerrit.ovirt.org/#/c/15736/ gets merged, I can make a patch that modifies this: DEV_BUILD_FLAGS:=$(DEV_BUILD_FLAGS) $(DEV_EXTRA_BUILD_FLAGS) DEV_BUILD_FLAGS:=$(DEV_BUILD_FLAGS) $(DEV_EXTRA_BUILD_FLAGS_GWT) to this: DEV_BUILD_FLAGS:=$(DEV_BUILD_FLAGS) $(DEV_EXTRA_BUILD_FLAGS_GWT) DEV_BUILD_FLAGS:=$(DEV_BUILD_FLAGS) $(DEV_EXTRA_BUILD_FLAGS) otherwise, it looks good to me. > > > > > > > > > BTW: there is a pending patch to rename this to DEV_XXXX[1] to be more > > > consistent. > > > > > > [1] http://gerrit.ovirt.org/#/c/15735/ > > > > +1'ed this patch. > > > > > > > > > > > > if EXTRA_BUILD_FLAGS_DEV_GWT is meant to control target browser(s) > > > > then > > > > it > > > > should be renamed appropriately > > > > > > Any flags, including debug port and such. But I am opened to > > > suggestions... > > > what do you expect it to be named? > > > > > > > if EXTRA_BUILD_FLAGS_DEV_GWT is meant to group all GWT-specific > > > > flags, > > > > README.developer shouldn't advise to do > > > > EXTRA_BUILD_FLAGS_DEV="-Dgwt..." > > > > > > But then I lose the gwt settings. > > > > Right, please see my suggestion above. > > > > > > > > > - Makefile gwt-debug target looks OK to me > > > > > > > > > What I do expect is that the debugger not to require a specific > > > > > relation > > > > > with > > > > > specific application (Webadmin, userportal). > > > > > > > > gwt-maven-plugin must be invoked in context of a specific Maven module > > > > representing GWT application you want to debug. In other words, you > > > > need > > > > to > > > > start GWT Development Mode for specific application module. This is why > > > > you > > > > need to "cd" to specific directory (webadmin/userportal-gwtp) before > > > > invoking "mvn ... gwt:debug" command. > > > > > > > > You cannot start GWT Development Mode in a generic > > > > (application-agnostic) > > > > way > > > > and *then* connect to it from browser and Java IDE, this is not how GWT > > > > Development Mode is meant to be used. JBoss remote socket debugging and > > > > GWT > > > > application debugging are two different things. > > > > > > Well, I do expect this to be a feature of top level pom.xml... > > > > > > something like: > > > $ mvn -Pgwt-debug -Ddebug.module=webadmin > > > > > > so that the profile will do whatever necessary to activate the debugger. > > > > This would be problematic because when you invoke Maven on root pom, Maven > > only sees root pom classpath/artifacts, and we need Maven/GWT-Plugin to see > > application-specific classpath/artifacts. > > > > I'm not saying this is impossible, I'm just saying it will be much harder > > to > > do than just "cd" to webadmin/userportal-gwtp directory and invoking Maven > > there.. We could introduce new flags like DEBUG_GWT_WEBADMIN [0/1] which > > would take care of providing correct settings to gwt-maven-plugin, not sure > > if it's really worth it, because we already have DEBUG_MODULE and Makefile > > internally cd's to it. > > OK, this issue is not that important now... :) > > > > > > > > > > > The fact that maven is used to start the debugger is not important. > > > > > > > > gwt-maven-plugin is just a wrapper to invoke GWT Development Mode (Java > > > > class). Regardless of how you start GWT Development Mode, you need to > > > > specify which application (more precisely, GWT modules) you want to > > > > debug > > > > right when starting GWT Development Mode. See [1] - "module(s)" are > > > > always > > > > specific for given application. > > > > > > So basically what you saying is that you cannot debug two modules at one > > > time... > > > It is strange... but as long as you fine with it, we are OK. > > > > Yes, basically you need to specify all "modules" that make up for one > > application at time when you start GWT Development Mode. So GWT Development > > Mode, once started, is tied to specific application. > > > > > > > > > > > > > [1] > > > > https://developers.google.com/web-toolkit/doc/latest/DevGuideCompilingAndDebugging#DevGuideCompilerOptions > > > > > > > > > If I add "-P gwtdev" to default build using install-dev, all gwt > > > > > applications > > > > > should be built and installed using the extra debugging information, > > > > > using: > > > > > > > > Yes, as described in [2], besides using "gwtdev" profile for debugging, > > > > it > > > > can also be used for GWT compilation (i.e. "make install-dev") - in > > > > this > > > > case, resulting JavaScript will be un-obfuscated and not-too-optimized > > > > in > > > > order to easily profile the JavaScript application in the browser. In > > > > other > > > > words, using "gwtdev" for GWT compilation has nothing to do with > > > > debugging, > > > > maybe we should create separate profile for this purpose. > > > > > > That's good. > > > > OK, I'll make a patch to introduce "gwtdraft" profile with following > > effects > > once activated (via -Pgwtdraft): > > - set draftCompile to true -> prevent JavaScript code optimizations > > - set style to DETAILED -> produce pretty JavaScript without obfuscation > > > > After this, I suggest to modify Makefile so that DEV_BUILD_GWT_DRAFT=1 > > activates "gwtdraft" profile, instead of just doing -Dgwt.draftCompile=true > > > > > > > > > [2] > > > > http://www.ovirt.org/DebugFrontend#Compiling_Frontend_applications_in_detailed_mode > > > > > > > > PS: I'll update http://www.ovirt.org/DebugFrontend with regard to > > > > standard > > > > development environment, as described in README.developer > > > > > > > > Vojtech > > > > > > > > > > > > ----- Original Message ----- > > > > > From: "Alon Bar-Lev" <[email protected]> > > > > > To: [email protected] > > > > > Cc: [email protected] > > > > > Sent: Friday, June 7, 2013 10:07:40 PM > > > > > Subject: Re: [Engine-devel] if there is a updated debug environment > > > > > how > > > > > to? > > > > > > > > > > > > > > > > > > > > ----- Original Message ----- > > > > > > From: "Alexander Wels" <[email protected]> > > > > > > To: "Alon Bar-Lev" <[email protected]> > > > > > > Cc: [email protected], "bigclouds" <[email protected]> > > > > > > Sent: Friday, June 7, 2013 10:56:40 PM > > > > > > Subject: Re: [Engine-devel] if there is a updated debug environment > > > > > > how > > > > > > to? > > > > > > > > > > > > > > > So if I understand correctly, the following is sequence is > > > > > > > > > required: > > > > > > > > > > > > > > > > > > Build and deploy code: > > > > > > > > > $ make install-dev PREFIX="${HOME}/ovirt-engine" > > > > > > > > > $ > > > > > > > > > "${HOME}/ovirt-engine/share/ovirt-engine/services/ovirt-engine.py" > > > > > > > > > start > > > > > > > > > > > > > > > > You missed this part: > > > > > > > > 1. cd into the source code directory of either webadmin or user > > > > > > > > portal. > > > > > > > > you have to change directory to either > > > > > > > > frontend/webadmin/modules/webadmin > > > > > > > > or frontend/webadmin/modules/userportal-gwtp > > > > > > > > > > > > > > > > As the maven gwt plugin is only defined in the webadmin and > > > > > > > > userportal > > > > > > > > poms > > > > > > > > and > > > > > > > > not in the root pom. > > > > > > > > > > > > > > > > > > > It doesn't make much sense to put the gwt plugin in the root pom, > > > > > > as > > > > > > the > > > > > > root > > > > > > pom has nothing to do with GWT. The plugin exists in userportal and > > > > > > webadmin > > > > > > as those are GWT modules. The debugger is specifically a GWT > > > > > > debugger, > > > > > > you > > > > > > can't debug anything else with it. > > > > > > > > > > You perceive this as something of gwt project, while I perceive this > > > > > part > > > > > of > > > > > the environment. > > > > > > > > > > What I expect it to allow as simple development environment as we > > > > > can. > > > > > Just like I enable the debug port of jboss automatically I would like > > > > > to > > > > > enable gwt debug. > > > > > > > > > > If I add "-P gwtdev" to default build using install-dev, all gwt > > > > > applications > > > > > should be built and installed using the extra debugging information, > > > > > using: > > > > > > > > > > $ make install-dev PREFIX="${HOME}/ovirt-engine" > > > > > > > > > > I can even add GWT_DEBUGGER=1 to optionally enable/disable this > > > > > feature. > > > > > > > > > > Now, after starting ovirt-engine service, all I expect is a simple > > > > > command > > > > > to > > > > > start the gwt debugger. > > > > > > > > > > $ make gwt-debugger > > > > > or: > > > > > ./gwt-debugger > > > > > > > > > > The fact that maven is used to start the debugger is not important. > > > > > > > > > > What I do expect is that the debugger not to require a specific > > > > > relation > > > > > with > > > > > specific application (Webadmin, userportal). > > > > > > > > > > I would have understood if I had to execute something like the > > > > > following > > > > > to > > > > > run the debugger: > > > > > > > > > > $ cd frontend > > > > > $ mvn gwt:debug -Dgwt.noserver=true > > > > > > > > > > Or better to avoid building anything: > > > > > > > > > > $ cd frontend/debugger > > > > > $ mvn gwt:debug -Dgwt.noserver=true > > > > > > > > > > But I do not understand why a cd to specific application is required. > > > > > > > > > > Thanks! > > > > > Alon > > > > > _______________________________________________ > > > > > Engine-devel mailing list > > > > > [email protected] > > > > > http://lists.ovirt.org/mailman/listinfo/engine-devel > > > > > > > > > > > > > > > _______________________________________________ Engine-devel mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-devel
