Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "GEF/GEF4"

< GEF
m (Nighly Builds/Update Site)
(Replaced contents with short introduction and pointer to new documentation location.)
 
(195 intermediate revisions by 3 users not shown)
Line 1: Line 1:
This page is the entry page for all information related to the GEF4 provisional component.
+
[[GEF/GEF4 | GEF4]] is the initial name for the the fourth generation API of the [http://www.eclipse.org/gef Graphical Editing Framework (GEF)]. It superseded the [https://www.eclipse.org/gef/draw2d/ Draw2d 3.x], [https://www.eclipse.org/gef/gef_mvc/index.php GEF (MVC) 3.x], and [https://www.eclipse.org/gef/zest/index.php Zest 1.x] legacy components, which are not developed further but only maintained.  
  
== Introduction ==
+
With the [https://projects.eclipse.org/projects/tools.gef/releases/5.0.0-oxygen Oxygen release] GEF4 was evolved into GEF 5.0.0, as outlined in [http://nyssen.blogspot.de/2017/02/gef4-1-gef-5.html#Merger%20of%20MVC%20and%20MVC.FX 'GEF4 + 1 = GEF 5'], while the term 'GEF-Legacy' was established to refer to the legacy production components.
As agreed on in Bugzilla [https://bugs.eclipse.org/bugs/show_bug.cgi?id=347636 347636], development of a new GEF 4.0 API will be started in parallel to the current GEF 3.x development branch under the following terms:
+
  
#After the Indigo release has been completed, a GEF experimental branch is created by forking the GEF 3.7 code-base into a Git repository (possibly located next to Zest 2.0, so that all experimental GEF components can be found in one place).
+
For further information, please consider the [https://github.com/eclipse/gef#eclipse-graphical-editing-framework-gef GitHub README] or the meta-data at [https://projects.eclipse.org/projects/tools.gef projects.eclipse.org].
#The experimental branch created thereby will live parallel to the GEF HEAD branch, considering all its API as provisional unless explicitly graduated. It will not interfere with GEF HEAD, i.e. it will have its own build process and separate wiki pages for documentation of the ongoing work (similar to Zest 2.0).
+
#Committers working on the experimental branch will be responsible for ensuring fixes made to GEF HEAD also get applied to the experimental branch.
+
#Graduation of the experimental branch back into GEF HEAD will have to imply that a proper compatibility layer is in place so all GEF 3.x clients run in a 100% binary compatible method. It will furthermore have to be acknowledged by all GEF committers.
+
#Work will start without an incubator project at first, granting commit rights on the Git repository to all current GEF committers. The question of introducing an incubator project (located under GEF) will be deferred until a) community wants to actively get involved or b) Juno has been released (whatever comes first).
+
  
As migration of GEF to git has not been completed yet (see Bugzilla [https://bugs.eclipse.org/bugs/show_bug.cgi?id=351232 351232] for details), development has been started by creating a new Geometry API, based on the current Draw2d geometry classes (see Bugzilla [https://bugs.eclipse.org/bugs/show_bug.cgi?id=355997 355997] for details).
+
[[Category:GEF]]
 
+
Due to the lessons learned in developing an initial GEF 4 Geometry API, and due to the compatibility requirements imposed on a gradation of the new GEF4 API, migrating the existing code base on a module-per-module basis probably is more appropriate than branching the whole code base at once. The completion of the GEF4 Geometry API could be the first package that is to be completed with respect to this. Based on the Geometry API, other packages may then be investigated, as outlined in the Roadmap below.
+
 
+
== Builds/Update Sites ==
+
A Tycho-based build infrastructure for the GEF4 component has been configured under [https://hudson.eclipse.org/hudson/job/gef4-nightly-tycho https://hudson.eclipse.org/hudson/job/gef4-nightly-tycho]. The build job will be triggered hourly in case of changes to the source code repository, or at least once per day. It produces an update-site, which does not get promoted to downloads.eclipse.org, but can directly be consumed from:
+
 
+
* [https://hudson.eclipse.org/hudson/job/gef4-nightly-tycho/lastSuccessfulBuild/artifact/update-site https://hudson.eclipse.org/hudson/job/gef4-nightly-tycho/lastSuccessfulBuild/artifact/update-site]
+
 
+
In addition to this, integration, milestones, and release builds are be promoted to updates sites, which are promoted to downloads.eclipse.org and can thus be found here:
+
 
+
* [http://download.eclipse.org/tools/gef/gef4/updates/integration http://download.eclipse.org/tools/gef/gef4/updates/integration]
+
* [http://download.eclipse.org/tools/gef/gef4/updates/milestones http://download.eclipse.org/tools/gef/gef4/updates/milestones]
+
* [http://download.eclipse.org/tools/gef/gef4/updates/releases http://download.eclipse.org/tools/gef/gef4/updates/releases]
+
 
+
While integration builds are promoted automatically once per week (every friday), milestone and release builds will be published only manually on the respective occasions. Note that those update sites for integration, milestones, and releases will further be merged (i.e. the former content gets preserved when publishing new one), while the nightly update site contents gets replaced on each build.
+
 
+
== Components / Roadmap ==
+
* [[GEF/GEF4/Geometry | GEF4 Geometry]] - Q4 2011
+
* GEF4 Graph (current org.eclipse.draw2d.graph)
+
* GEF4 Draw2d Core (Graphics, Canvas, Figure, Bounds, etc.)
+
* GEF4 Draw2d Shapes
+
* GEF4 Draw2d Text
+

Latest revision as of 10:09, 15 May 2017

GEF4 is the initial name for the the fourth generation API of the Graphical Editing Framework (GEF). It superseded the Draw2d 3.x, GEF (MVC) 3.x, and Zest 1.x legacy components, which are not developed further but only maintained.

With the Oxygen release GEF4 was evolved into GEF 5.0.0, as outlined in 'GEF4 + 1 = GEF 5', while the term 'GEF-Legacy' was established to refer to the legacy production components.

For further information, please consider the GitHub README or the meta-data at projects.eclipse.org.

Copyright © Eclipse Foundation, Inc. All Rights Reserved.