Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 356423

Summary: Add widget projects into build
Product: z_Archived Reporter: Huang Ji Yong <hjiyong>
Component: EDTAssignee: Matt Heitz <mheitz>
Status: CLOSED FIXED QA Contact:
Severity: enhancement    
Priority: P3 CC: hjiyong, mheitz, svihovec
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Windows XP   
Whiteboard:

Description Huang Ji Yong CLA 2011-08-31 22:44:17 EDT
We have the following projects in cvs, 
RUI Widget Project:
org.eclipse.edt.rui.widgets_0.7.0
Dojo Widget Project: 
org.eclipse.edt.rui.dojo.widgets_0.7.0
Dojo Runtime Projects:
org.eclipse.edt.rui.dojo.runtime.local_1.6.1
org.eclipse.edt.rui.dojo.runtime.remote_1.6.1
Stub Projects: (These are almost empty project in cvs. The content will be filled in build time; these projects will be the final widget project user seen in their workspace )
org.eclipse.edt.rui.dojo_0.7.0
org.eclipse.edt.rui.dojo.remote_0.7.0

What should be done in build time?

With the cvs structure described as above, I think we have to do 2 things in build time
Combine Dojo runtime project and widget project
* Copy all files except the egldd file under EGLSource folder of org.eclipse.edt.rui.dojo.widgets_0.7.0 into the EGLSource of org.eclipse.edt.rui.dojo_0.7.0 and org.eclipse.edt.rui.dojo.remote_0.7.0
* Copy icons and contents of WebContent folder of org.eclipse.edt.rui.dojo.widgets_0.7.0 into org.eclipse.edt.rui.dojo_0.7.0 and org.eclipse.edt.rui.dojo.remote_0.7.0 
* Copy contents of WebContent folder of org.eclipse.edt.rui.dojo.runtime.local_1.6.1 into org.eclipse.edt.rui.dojo_0.7.0
* Copy contents of WebContent folder of org.eclipse.edt.rui.dojo.runtime.remote_1.6.1 into org.eclipse.edt.rui.dojo.remote_0.7.0

Compress the widget projects to .zip file and place them in the resource plugin

* Compress org.eclipse.edt.rui.widgets_0.7.0, org.eclipse.edt.rui.dojo_0.7.0(after combine), org.eclipse.edt.rui.dojo.remote_0.7.0(after combine) to zip file
* Copy these 3 zip files into resources folder of plugin org.eclipse.edt.ide.rui
Comment 1 Matt Heitz CLA 2011-09-01 08:15:13 EDT
<Scott>
Does anyone know how we're supposed to use the Dojo runtime in the Orbit repository?   For dojo, we submitted a "piggyback CQ" and this is what was approved;  it essentially means we can use the version of Dojo that's already been CQ'ed and is stored in this Orbit repository.  

What we need to understand is whether this means we can check a copy of that version of Dojo into EDT's project (under org.eclipse.edt.rui.dojo.runtime.local_1.6.1 as described by Ji Yong below).....  Hopefully the answer is a simple "yes" -- I don't know what we would do otherwise....
</Scott>

<Justin>
Matt can correct me if I'm wrong, but I would expect we just add it to our feature and map file, and the map file entry would point to its original orbit cvs path (we wouldn't copy it into the edt directory).
</Justin>

<JiYong>
I think this is a good point.
If this is applied, we don't need org.eclipse.edt.rui.dojo.runtime.local_1.6.1 in cvs.
</JiYong>
Comment 2 Matt Heitz CLA 2011-09-01 09:37:02 EDT
*** Bug 353521 has been marked as a duplicate of this bug. ***
Comment 3 Huang Ji Yong CLA 2011-09-02 01:39:49 EDT
(In reply to comment #0)
> We have the following projects in cvs, 
> RUI Widget Project:
> org.eclipse.edt.rui.widgets_0.7.0
> Dojo Widget Project: 
> org.eclipse.edt.rui.dojo.widgets_0.7.0
> Dojo Runtime Projects:
> org.eclipse.edt.rui.dojo.runtime.local_1.6.1
> org.eclipse.edt.rui.dojo.runtime.remote_1.6.1
> Stub Projects: (These are almost empty project in cvs. The content will be
> filled in build time; these projects will be the final widget project user seen
> in their workspace )
> org.eclipse.edt.rui.dojo_0.7.0
> org.eclipse.edt.rui.dojo.remote_0.7.0
> 
> What should be done in build time?
> 
> With the cvs structure described as above, I think we have to do 2 things in
> build time
> Combine Dojo runtime project and widget project
> * Copy all files except the egldd file under EGLSource folder of
> org.eclipse.edt.rui.dojo.widgets_0.7.0 into the EGLSource of
> org.eclipse.edt.rui.dojo_0.7.0 and org.eclipse.edt.rui.dojo.remote_0.7.0
> * Copy icons and contents of WebContent folder of
> org.eclipse.edt.rui.dojo.widgets_0.7.0 into org.eclipse.edt.rui.dojo_0.7.0 and
> org.eclipse.edt.rui.dojo.remote_0.7.0 
> * Copy contents of WebContent folder of
> org.eclipse.edt.rui.dojo.runtime.local_1.6.1 into
> org.eclipse.edt.rui.dojo_0.7.0
> * Copy contents of WebContent folder of
> org.eclipse.edt.rui.dojo.runtime.remote_1.6.1 into
> org.eclipse.edt.rui.dojo.remote_0.7.0
> 
> Compress the widget projects to .zip file and place them in the resource plugin
> 
> * Compress org.eclipse.edt.rui.widgets_0.7.0,
> org.eclipse.edt.rui.dojo_0.7.0(after combine),
> org.eclipse.edt.rui.dojo.remote_0.7.0(after combine) to zip file
> * Copy these 3 zip files into resources folder of plugin
> org.eclipse.edt.ide.rui

The last step have to change to:
 Copy these 3 zip files into 
plugin: org.eclipse.edt.ide.ui.resources 
folder: org.eclipse.edt.ide.ui.rui
Comment 4 Huang Ji Yong CLA 2011-09-02 05:06:40 EDT
Hi Matt,
How do you like Justin's approach?
If I want to commit the widget project, which folder is appropriate?
How about adding a new folder like "widgets"?
Comment 5 Matt Heitz CLA 2011-09-06 13:39:56 EDT
I'm going to add all six projects under a new "widgets" folder.  Plugins org.eclipse.edt.rui.dojo.widgets, org.eclipse.edt.rui.dojo.runtime.local, and org.eclipse.edt.rui.dojo.runtime.remote will come from the zip you sent me.  The other three plugins will come from IBM's CVS.
Comment 6 Matt Heitz CLA 2011-09-07 15:54:30 EDT
After many attempts, I finally got it to work.

The builds will include the latest version of these widget projects from HEAD.

org.eclipse.edt.rui.dojo_0.7.0
org.eclipse.edt.rui.dojo.remote_0.7.0
org.eclipse.edt.rui.dojo.runtime.local_1.6.1
org.eclipse.edt.rui.dojo.runtime.remote_1.6.1
org.eclipse.edt.rui.dojo.widgets_0.7.0
org.eclipse.edt.rui.widgets_0.7.0

Since we don't ship these projects as plugins, they're not listed in the map file and changes aren't released using Team -> Release.  The build will always use the latest code from HEAD.

I'll send a message to egl-dev and update the wiki so people working on the widgets know what to do.
Comment 7 Huang Ji Yong CLA 2011-10-12 21:51:04 EDT
Verified 201110110900