http://wiki.eclipse.org/api.php?action=feedcontributions&user=Pombredanne.nexb.com&feedformat=atomEclipsepedia - User contributions [en]2020-06-07T10:06:41ZUser contributionsMediaWiki 1.26.4http://wiki.eclipse.org/index.php?title=Google_Summer_of_Code_2009_Ideas&diff=146513Google Summer of Code 2009 Ideas2009-03-26T20:25:48Z<p>Pombredanne.nexb.com: </p>
<hr />
<div>== Rules ==<br />
* Be creative<br />
* Be specific: what do you want to be implemented<br />
* If you are willing to mentors those ideas, add your name and email to the idea.<br />
* It is ok to have a project idea without parent project<br />
* If you're an interested student, add your name and email next to the idea. It is ok to have several students interested by one idea.<br />
* Aspiring students and mentors need to register and submit their proposals or request on the [http://socghop.appspot.com/ Soc app]<br />
<br />
== Ideas ==<br />
<br />
{| border=&quot;1&quot; cellpadding=&quot;2&quot; width=&quot;100%&quot;<br />
!width=&quot;20%&quot;|Title<br />
!width=&quot;5%&quot; align=&quot;center&quot;|Project<br />
!width=&quot;40%&quot;|Abstract - links to details/bugs/etc<br />
!width=&quot;10%&quot;|Reporter<br />
!width=&quot;10%&quot;|Possible mentor(s)<br />
!width=&quot;15%&quot;|Comments<br />
!width=&quot;10%&quot;|Potential student(s)<br />
|-<br />
| Your project title here e.g. Cure world hunger<br />
| Your project link here e.g. [http://www.eclipse.org/soc SoC]<br />
| Your project description here. Be as precise and specific as possible. Link to bugs...<br />
| Your name here<br />
| Your Prospective mentors here (If you're an eclipse committer + the reporter, you should leave your name here too!<br />
| Your additional comments<br />
| &lt;br&gt;<br />
|-<br />
| PDE Menage A Trois<br />
| [http://www.eclipse.org/pde PDE]<br />
| The goal of this project is to update PDE to use EMF and Databinding under the covers. In PDE, we have a lot of models and editors backed by custom code that has shown its age and is difficult to maintain. This is an opportunity to modernize PDE and make it more extensible.<br />
| &lt;interested student here&gt;<br />
| Chris Aniszczyk, Benjamin Cabé<br />
| None<br />
| &lt;br&gt;<br />
|-<br />
| Write Eclipse plug-ins in PHP<br />
| [[e4/Languages]]<br />
| Leverage one of existing PHP/Java bridges for adding a PHP support into [[e4]]<br />
| Michael Spector<br />
| [http://wiki.eclipse.org/User:Mspector Michael Spector]<br />
| None<br />
| [mailto:wcandillon@gmail.com William Candillon].[mailto:zachhabersang@gmail.com Zach Habersang] from Texas A&amp;M Univ., USA<br />
|-<br />
| Write Eclipse plug-ins in Python or Jython<br />
| [[e4/Languages]]<br />
| Leverage one of existing Python/Java bridges or Jython (which now supports Python 2.5x) to add Python support into [[e4]]. Ideally this would include a guide to do it step by step in the current version of Eclipse, glue code and plugins to support Python bundles, a sample application and possibly some wizards and add-ons to PDE to make the experience smooth.<br />
| Philippe Ombredanne<br />
| [http://wiki.eclipse.org/User:Pombredanne.nexb.com Philippe Ombredanne]<br />
| None<br />
| <br />
|-<br />
| Rewrite PHP grammar in [http://www.antlr.org ANTLR]<br />
| [[PDT]]<br />
| Reasons: &lt;ul&gt;&lt;li&gt;ANTLR is more robust than JavaCUP&lt;/li&gt;&lt;li&gt;It has great [http://www.antlr.org/works/index.html editing/debugging tools]&lt;/li&gt;&lt;li&gt;It's supported by a community&lt;/li&gt;&lt;/ul&gt;<br />
| Michael Spector<br />
| [http://wiki.eclipse.org/User:Mspector Michael Spector]<br />
| None<br />
| [mailto:zachhabersang@gmail.com Zach Habersang] from Texas A&amp;M Univ., USA [mailto:dustin.xu@gmail.com Renjie Xu] from University of San Francisco., USA<br />
|-<br />
| Ant buildfile refactorings<br />
| [http://www.eclipse.org/eclipse/ant/ Platform Ant]<br />
| Ant buildfiles can become large and complex and would benefit from refactoring. Currently there is no support beyond renaming within a buildfile to allow the developer to efficiently refactor Ant buildfiles. The goals would be to implement an infrastructure to support refactorings in Ant buildfiles, participate in other components refactorings and provide a starter set of Ant buildfile refactorings. See [https://bugs.eclipse.org/bugs/show_bug.cgi?id=89938 bug 89938] for some initial buildfile refactoring ideas.<br />
| Darin Swanson<br />
| [mailto:Darin_Swanson@us.ibm.com Darin Swanson]<br />
| None<br />
| [mailto:allenchue@gmail.com Yin Qiu] from Nanjing Univ., China &lt;br/&gt;[mailto:st.shadow.by@gmail.com St.Shadow] from BSUIR., Belarus<br />
|-<br />
| XSLT Refactorings<br />
| [http://www.eclipse.org/webtools/incubator/ Webtools XSL Tools]<br />
| XSL Tools provides editing and debugging support. Currently there is no refactoring support for XSLT 1.0 or XSLT 2.0 stylesheets. Refactorings could include Extract Template, Extract Call Template, etc. Refactorings should participate with the platform refactoring framework.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| None<br />
| &lt;br&gt;<br />
|-<br />
| External XSLT Transformations<br />
| [http://www.eclipse.org/webtools/incubator/ Webtools XSL Tools]<br />
| Implement a configuration option and launching ability for non java XSLT processors. Particularly add support so that xsltproc could be used as a processor. {{bug|245743}}<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| None<br />
| &lt;br&gt;<br />
|-<br />
| XQuery/XPath Parser<br />
| [http://www.eclipse.org/webtools/incubator/ Webtools XQuery]<br />
| Currently the XQuery Development Tools is using an Antlr xpath parser from the XQPretty project. However this does not currently integrate well with the editor, and a javacc implementation that expands the current XML javacc parser would be ideal. This would leverage and hook into the existing parsing framework for the Structured Source Editor and provide identification of Regions and Partitions for the editor. A bonus would be to have validation of the XQuery syntax as well. See {{bug|226245}} for more information in regards to the XPath 2.0 support. <br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| None<br />
| [mailto:jin.phd@gmail.com Jin Mingjian], Chinese Academy of Sciences, China<br />
|-<br />
| VEX (Visual Editor for XML) Multipage Editor support<br />
| [http://www.eclipse.org/webtools/incubator/ Webtools VEX]<br />
| VEX supports the visual editing in a word processor like feel of a variety of XML formats. With the use of CSS stylesheets for the XML, it can render a WYSIWYG presentation. VEX currently does not have a working Multipage Editor..meaning that switching from the Design view to a source view, the XML is not shown in the source view and not synchronized. The model is EMF based, and the XML editor from WTP is DOM based, this project would leverage the EMF2SSEDOM framework for providing the synchronization between the two. The project is also open to other alternatives, and will allow the candidate wide latitude in experimentation of ways to implement the synchronization.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| None<br />
| [mailto:cbingiel@gmail.com Chelsea Bingiel], University of Chicago<br />
|-<br />
| RelaxNG Validator<br />
| [http://www.eclipse.org/webtools/incubator/ Webtools Incubator]<br />
| RelaxNG is an alternative schema language to the more widely known XML Schemas and DTDs. This project would implement RelaxNG valadition using the WTP validation framework. This should allow for both the as you type validation, as well as batch validation.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| None<br />
| &lt;br&gt;<br />
|-<br />
| RelaxNG Editor<br />
| [http://www.eclipse.org/webtools/incubator/ Webtools Incubator]<br />
| Implement a full featured editor for the RelaxNG compact syntax, with optional editing of the RelaxNG XML syntax as well. Should offer syntax highlighting, content assistance, validation against the relaxng specification, file wizards, preference pages, etc. Ideally built off and leverages the Structured Source Editor from WTP.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| None<br />
| &lt;br&gt;<br />
|-<br />
| VEX - Docbook 5 support<br />
| [http://www.eclipse.org/webtools/incubator/ Webtools VEX]<br />
| Implement a set of CSS stylesheets and appropriate outline views and enhancements for DocBook 5 features. This may require enhancements to the VEX model to support XML Namespaces, and displaying of images. DocBook 4.5 and Simplified Docbook 1.0 are currently supported, and can be used as a basis to provide Docbook 5 support.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| None<br />
| [mailto:cbingiel@gmail.com Chelsea Bingiel], University of Chicago<br />
|-<br />
| XSLT 2.0 content assistance<br />
| [http://www.eclipse.org/webtools/incubator/ Webtools XSL Tools]<br />
| XSL Tools provides good support for the XSLT 1.0 specification in the way of content assistance. It however does not provide support for some more advance features in XSLT 2.0 like custom functions, and content assistance for these features. Custom functions can be written in xslt 2.0, and then used within the stylesheet within XPath expressions. This allows for the generation of reuseable libraries like FXSL, to be created entirely in XSLT 2.0.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| None<br />
| [mailto:wellington.bengtson@gmail.com Wellington Bengtson], Institut National des Sciences Appliquées de Rouen<br />
|-<br />
| API Tooling for the Extension Registry<br />
| [http://www.eclipse.org/pde PDE]<br />
| The goal of this project is to add support to API Tools to work with the extension registry. For example, there are things in extensions that can be considered API. For example, the id of a view can be referenced by anyone. This should be considered API and changing it has the potential of breaking downstream clients. <br />
| &lt;interested student here&gt;<br />
| Chris Aniszczyk, Darin Wright<br />
| None<br />
| &lt;br&gt;<br />
|-<br />
| ECF connections for JDBC and DTP<br />
| [http://www.eclipse.org/datatools]<br />
| We'd like to find a way to bridge the gap between DTP and ECF to find a way to use a shared connection framework in E4. The idea would be to have an ECF connection for JDBC (would require jdbc url, jar list, uid/pwd, and any other properties) that could then be used to get the raw JDBC connection to be used in DTP...<br />
| &lt;interested student here&gt;<br />
| Brian Fitzpatrick, Scott Lewis<br />
| Brian Fitzpatrick (brianf@sybase.com)<br />
| &lt;br&gt;<br />
|-<br />
| JWT View Editor<br />
| [http://www.eclipse.org/jwt JWT]<br />
| With JWT processes can be modeled in different views: a business view which is more abstract (e.g. in BPMN) or a technical view which includes much more execution details (e.g. using UML activity diagrams with extensions). In order to configure these views, we developed a [https://bugs.eclipse.org/bugs/show_bug.cgi?id=249437 view editor]. But this view editor is currently only usable for the core metamodel. In the meanwhile we developed an [http://wiki.eclipse.org/JWT_Metamodel_Extension aspect-oriented mechanism] for vendors to extend the metamodel with their specific details. These aspects need to be considered in the views, but are currently neglected. This project shall extend the existing JWT view editor and adapt the views to the aspects.<br />
| Florian Lautenbacher<br />
| [mailto:lautenbacher@ds-lab.org Florian Lautenbacher]<br />
| -<br />
| [mailto:melanie@hesselbart.de Melanie Hesselbart], University of Augsburg, Germany<br />
|-<br />
| XPath 2.0 W3C Test Suite<br />
| [http://www.eclipse.org/webtools/incubator XSL Tools]<br />
| XSL Tools received a code contribution from the author of the PsychoPath XPath 2.0 java processor. This was developed before the finalized spec so is based on a draft version of the specification. The W3C has created a test suite that implementors of XPath 2.0 can use to verify their implementations. This project would help implement the test suite, identify, and provide patches for the XPath 2.0 processor so that it passes the tests. This is currently tracked in {{bug|262765}}.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| -<br />
| [mailto:jin.phd@gmail.com Jin Mingjian], Chinese Academy of Sciences, China<br />
|-<br />
| Objective-C first class IDE<br />
| <br />
| Extend CDT to provide a great IDE for Objectivce-C language, see [http://alblue.blogspot.com/2009/02/objectiveclipse.html blog entry] and {{bug|68083}}<br />
| Mariot Chauvin<br />
| Alex Blewitt or Doug Schaefer<br />
| -<br />
| [mailto:rsisnett@gmail.com Ricardo Sisnett], Instituto Tecnológico de Monterrey, Mexico<br />
| &lt;br&gt;<br />
|-<br />
| 3D visualization of model differences<br />
| [http://www.eclipse.org/modeling/emft/?project=compare EMF Compare]<br />
| Thanks to GEF3D and EMF Compare, it's now possible to display diagrams, <br />
compare the semantic model, and show the differences through a 3D <br />
representation. This project is about integrating those tools and <br />
experimenting with such visualization (one can easily imagine a &quot;Time <br />
Machine&quot;-like view for his diagrams.<br />
| Cédric Brun<br />
| [mailto:cedric.brun@obeo.fr Cédric Brun]<br />
| <br />
| &lt;br&gt;<br />
|-<br />
| Huge Model Comparison<br />
| [http://www.eclipse.org/modeling/emft/?project=compare EMF Compare]<br />
| EMF Compare uses an heuristic-based algorithm to compare two models, while <br />
doing so its keeping processing data in memory (more important the models are, <br />
more memory is used). This project is about leveraging CDO and writing another <br />
implementation of match algorithm to be able to compare any size of model, <br />
even ones with millions of elements.<br />
| Cédric Brun<br />
| [mailto:cedric.brun@obeo.fr Cédric Brun]<br />
| <br />
| &lt;br&gt;<br />
|-<br />
| Improve graphical comparison<br />
| [http://www.eclipse.org/modeling/emft/?project=compare EMF Compare]<br />
| A first implementation of graphical comparison has been done, see https://bugs.eclipse.org/bugs/show_bug.cgi?id=241385.<br />
Several enhancements could be made, such as supporting diagrams with images. <br />
| Mariot Chauvin<br />
| [mailto:cedric.brun@obeo.fr Cédric Brun]<br />
| <br />
| &lt;br&gt;<br />
|-<br />
| ProtocolBuffer EMF Serialization<br />
| [http://www.eclipse.org/modeling/emf/ EMF]<br />
| ProtocolBuffer is binary serialization API which is smaller and faster than XML.<br />
It would be interesting to be able to serialize EMF models with it.See http://code.google.com/intl/fr/apis/protocolbuffers/<br />
| Mariot Chauvin<br />
| To be defined<br />
| <br />
| [mailto:dalvac@gmail.com Diego Alvarez Araujo Correia] - From Instituto Tecnológico de Aeronáutica - ITA, Brazil.<br />
|-<br />
| Acceleo and ATL Combine<br />
| [http://www.eclipse.org/modeling/m2t/?project=acceleo Acceleo]<br />
| Study possibility to call model to model transformations from model to text transformations and inversely without high coupling between the two.<br />
| Mariot Chauvin<br />
| To be defined<br />
| <br />
| &lt;br&gt;<br />
|-<br />
| Index search for Java EE metadata<br />
| [http://www.eclipse.org/webtools/jee/ WTP Java EE Tools]<br />
| Bugzilla: [https://bugs.eclipse.org/233505 233505]<br />
<br />
;Pain point<br />
<br />
Working on huge projects is a common task for many Java EE developers. Sooner or later the developer would fall in a situation where he or she needs to find an exact Java EE artifact by just remembering a portion of the artifact's name or description, but not the its exact location. In such situation the developer should try different methods of searching, including file search, full-text search, etc. It would be much more convenient if the IDE provides a Java EE metadata search. <br />
<br />
;Solution<br />
<br />
We are all familiar with the ''Open Type'' and ''Open Resource'' index searches in the workbench and how useful they are when we try to quickly locate our files and Java classes in the huge projects we are working with. The Java EE perspective should naturally evolve these features to Java EE metadata index search, where developers can search for certain metadata in their Java EE projects. <br />
<br />
This new feature should introduce new dialog box that looks similar to the ''Open Type'' and ''Open Resource'' dialogs. There should be a hotkey combination available that enables users to quickly call the dialog. Typing a portion of the Java EE metadata name or description should filter the available Java EE artifacts and assist the user choice. <br />
<br />
Examples for Java EE metadata are:<br />
* EJB beans<br />
* Web servlets<br />
* EJB references<br />
* Security roles<br />
<br />
There is a new Eclipse project proposed - [http://www.eclipse.org/proposals/emf-index/ EMF Index] - that could help with the realization of this idea. <br />
| Kaloyan Raev<br />
| [mailto:kaloyan.raev@sap.com Kaloyan Raev]<br />
| None<br />
| [mailto:dimpata@gmail.com Georgi Dimitrov] from the University of Sofia, Bulgaria<br />
<br />
[mailto:sajith.vim@gmail.com Sajith Vimukthi]<br />
|-<br />
| Embed OpenEJB in J2EE Preview server adapter<br />
| [http://www.eclipse.org/webtools/server/ WTP Server Tools]<br />
| Currently the J2EE Preview adapter, that ships with WTP, utilizes the embedded Jetty server and makes possible for users to develop and run Web application without the need to install additional J2EE runtime and servers. <br />
<br />
It would be useful if an EJB container is embedded in the J2EE Preview adapter, too. This will make possible EJB development &quot;out of the box&quot; the same way as web development. <br />
<br />
There is a suitable embeddable EJB container - [http://openejb.apache.org/ OpenEJB]. There is a guide how to [http://openejb.apache.org/tomcat.html embed OpenEJB in Tomcat]. So, it should be possible to embed it in a similar way in the Jetty web container. <br />
<br />
In the end the J2EE Preview server adapter should be able to deploy and run WEB, EJB and EAR modules.<br />
<br />
| Kaloyan Raev<br />
| [mailto:kaloyan.raev@sap.com Kaloyan Raev]<br />
| None<br />
| [mailto:marcelo.dias@students.ic.unicamp.br Marcelo de Oliveira Dias] from the University of Campinas – UNICAMP, Brazil<br />
|-<br />
| Improve support for PostgreSQL in DTP Enablement<br />
| [http://www.eclipse.org/datatools/ Eclipse Datatools]<br />
| <br />
PostgreSQL support is minimal in DTP. Only connection profile is implemented, other needed functions are derived from Generic SQL support.<br />
<br />
Stundents job would be to implement PostgreSQL specific loaders and models and based on that the student should start implementing DDL generator.<br />
<br />
Brian Fitzpatrick has documented how to do some parts in his [http://fitzdtp.blogspot.com/ blog] that can be used<br />
<br />
| Ivar Meikas<br />
| [mailto:ivar@codehoop.com Ivar Meikas]<br />
| PostgreSQL is not the only database thats support could be improved, if the student knows some other database well and he wants to see in DTP he can implement that also.<br />
| &lt;br&gt;<br />
|-<br />
| DSL For Generating Zest Graphs<br />
| [http://www.eclipse.org/gef/zest/ Zest]<br />
| Zest currently provides an API for generating node-link diagrams (graphs), however, it doesn't contain any way for end users to construct their own views. Adding a DSL similar to GraphViz (DOT) would allow users to construct and render graphs on the fly. This could be accomplished by providing a language model in EMF or XText Grammar and through code generation (via JET or XPand, an equivalent Zest program could be generated).<br />
| Ian Bull<br />
| [mailto:irbull@eclipsesource.com Ian Bull]<br />
| None<br />
| [mailto:steeg@netcologne.de Fabian Steeg], University of Cologne, Germany<br />
|-<br />
| Debugging aid for p2 installation issues<br />
| [https://bugs.eclipse.org/bugs/show_bug.cgi?id=267275 Enhancement Request]<br />
| Debugging cases where features cannot be installed into Eclipse due to inability to reconcile requirements of existing features and the new features being installed is quite challenging. It would be useful to create a tool for capturing the details of the environment and what was being installed to aid in reporting problems. Once it is possible to generate these dumps, a graphical explorer tool that would allow the developers to trace the dependencies and see the problems would make it significantly easier to debug these problems.<br />
| <br />
| [mailto:pascal_rapicault@ca.ibm.com Pascal Rapicault]<br />
| <br />
| [mailto:mrjpiggott@gmail.com Matthew Piggott], University of Ottawa, Canada<br />
|-<br />
| Power-user p2 views<br />
| [[Equinox p2 User Interface]]<br />
| The current Eclipse p2 Update UI is targeted to both Eclipse SDK users and end-users of Eclipse-based products. Since the UI must support users with less knowledge than the typical Eclipse SDK user, the end result is a wizard-style (modal), task-based approach. Many power users, in particular Linux users, prefer a modeless, &quot;dashboard&quot; style of interaction. The current p2 &quot;Admin UI&quot; is targeted toward p2 developers who need to see every detail of the underlying p2 model objects. There is a need for something in between these two extremes. Users have mentioned Linux package management front ends such as [http://www.nongnu.org/synaptic/ Synaptic Package Manager] as appropriate UIs for this audience. If appropriate, this UI could replace the p2 admin UI, but it's not clear if that should be the goal.<br />
| Susan McCourt<br />
| [mailto:susan_franklin@us.ibm.com Susan McCourt]<br />
| <br />
| <br />
|-<br />
| CVS Search<br />
| [http://www.eclipse.org/eclipse/platform-cvs/ Platform CVS]<br />
| The aim of this project is to provide a facility that will allow for searching commit comments. The facility should be able to scan selected CVS project, find commits that match specific query and present them using the Compare Editor.<br />
| Christopher Daniel<br />
| [mailto:krzysztof_daniel@pl.ibm.com Christopher Daniel], [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Additional Tab in the Search Dialog will be created. More details soon.<br />
| [mailto:oka@itu.edu.tr Ali Ok], Istanbul Technical University, Turkey, &lt;br&gt;[mailto:nm.ricardo@gmail.com Ricardo N. Miranda], University of Campinas – UNICAMP, Brazil<br />
|-<br />
| Configurable &quot;link with editor&quot; using logical hierarchy model<br />
| [http://www.eclipse.org/webtools/jee/ WTP Java EE Tools]<br />
| Bugzilla: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=137086 137086]<br />
Initial bugzilla proposal. <br />
---<br />
&lt;p&gt;<br />
Customer explained how it would be nice to have a <br />
&quot;blue-arrows&quot; Toggle button feature parallel to the current <br />
&quot;Yellow-arrows&quot; Toggle button feature.Just like &quot;Yellow-Arrows&quot; <br />
button has the tooltip -- &quot;link open editors with Navigator <br />
contents&quot; , the &quot;blue-arrows&quot; feature can have the tool-tip <br />
&quot;Link open editors with current logical hierarchy view item&quot; <br />
&lt;/p&gt;<br />
&lt;p&gt;<br />
That feature will provide the following functionality : <br />
If the user clicks on an open editor , the focus in the project <br />
explorer will go back to the logical item in the hierarchy view <br />
under the Deployment descriptor (in its Sub-tree) rather than <br />
going to the file on the file-system in the &quot;ejbmodule&quot; - <br />
subtree (for eg. clicking EmpLocalhome.java in editor view <br />
should go to the &quot;EmpLocalHome&quot; logical entity being shown in <br />
the Deployment descriptor sub-tree. The Current &quot;yellow-arrows&quot; <br />
feature rather makes the focus go into the &quot;ejb module&quot; folder <br />
and focuses on the EmpLocalHome.java file itself. ) <br />
&lt;/p&gt; <br />
&lt;p&gt;<br />
If the above &quot;blue-arrows&quot; feature is made availalbe the <br />
developer never has to leave the Deployment descriptor subtree <br />
during the entire EJB project development work flow. Currently ,<br />
the &quot;yellow-arrows&quot; feature makes the focus go back into the <br />
&quot;ejbmodule&quot; folder containing the corresponding .java . In <br />
situations where the EJB project might contain 100's of EJB's <br />
inside them, &quot;ejbmodule&quot; might contain 1000's of files <br />
including the Deploy Code etc. The user then needs to scroll all<br />
the way up to the Deployment Descriptor sub-tree to go <br />
double-click and open any other logical view item ,say another <br />
Entity bean component (eg. LocalHome or home interface etc.) <br />
The customer complained that he ends up clicking on the <br />
&quot;collapse-all&quot; feature in this case there by losing the whole <br />
work-flow and then has to go back to the logical hierarchy view <br />
under the Deployment descriptor sub-tree to find a particular <br />
ejb component for editing.<br />
&lt;/p&gt;<br />
---<br />
<br />
This proposal opens the question for an extensible link with editor feature. There might be more then one model (eg resource model, Java EE model, WS model, Persistence Model) and the same editor could be linked to all the models. A solution is to make the whole link with editor very extensible with different models contributing to this extension. The models will have a priority and a shortcut could be defined to link with the next (by prio) model.<br />
<br />
Even thought the feature request is in Java EE tools the solution will probably involve an &quot;extensible part&quot; in the platform ui and an &quot;extension part&quot; in Java EE tools.<br />
<br />
| Kiril Mitov<br />
| [mailto:k.mitov@sap.com Kiril Mitov]<br />
| <br />
| &lt;br&gt;<br />
|-<br />
| Policy Derivation tool for STP Policy Editor + WS-Policy Awareness<br />
| [http://www.eclipse.org/stp/ Eclipse SOA Tools]<br />
| The main aim of this project is to provide integration of a policy derivation tool for WTP Policy Editor.Policy derivation tool is a component which basically reads a WS Compliant XML type message(ie:-SOAP) and derives single/multiple policies corresponding to the msg(It will be usefull in web services scenarios such as for clients to build a compatible policy reading the soap messages coming from the Service side if the web service itself don't wish to publish it's policies.. ).With the Integration of such a tool we could feed the derived policy instances to the editor itself and users can therefore edit the derived policy/policies to their liking (ie:- add, edit delete policy assertions) as policy editor supports rich functionality for such work. Among other objectives of the project are providing out the capability for correctly displaying standardized WS specs such that policy editor will be aware of different specs such as WS-SEC,WS-RM,MTOM,Addreesing,etc on the policy instances ,users are working on/ hoping to work on ,AND making Policy Editor compatible for other WS policy constructs that are currently not supported.. <br />
| Oisin Hurley<br />
| someone from STP<br />
| None<br />
| [mailto:mastershield2007@gmail.com U.S.Wickramasinghe] from The University of Moratuwa – Moratuwa, SriLanka<br />
|-<br />
-<br />
| ECF and Yahoo<br />
| [http://www.eclipse.org/ecf/ ECF]<br />
| Implement a EPL'd version of the Yahoo messaging protocol and than code an ECF provider implementation for that. The baseline goal of this project is to just implement messanging for Yahoo... things like file transfer can come later or if there's time.<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| [mailto:rjvranga@gmail.com Rajeev Sampath] from University of Moratuwa, Sri Lanka <br />
|-<br />
| AIM Provider<br />
| [http://www.eclipse.org/ecf ECF]<br />
| ECF allows messaging protocols to be plugged in as providers. AIM isn't currently supported. The student can choose to implement the AIM (OSCAR) protocol themselves, or wrap an existing Java library like JOscar.<br />
| Chris Aniszczyk, Remy Suen<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:remy.suen@gmail.com Remy Suen]<br />
|<br />
| [mailto:oka@itu.edu.tr Ali Ok], Istanbul Technical University, Turkey<br />
[mailto:liucong07@gmail.com Liu Cong], Beijing University of Aeronautics &amp; Astronautics, China<br />
|-<br />
| QQ Provider<br />
| [http://www.eclipse.org/ecf ECF]<br />
| ECF allows messaging protocols to be plugged in as providers. QQ isn't currently supported. The student can choose to implement the QQ protocol themselves, or wrap an existing Java library.<br />
| Chris Aniszczyk, Remy Suen<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:remy.suen@gmail.com Remy Suen]<br />
|<br />
|<br />
|-<br />
| VNC over ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Virtual Network Console is a popular screen sharing technology. It would be useful to have an implementation of VNC protocol for ECF. See [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01452.html mailing list entry by Marek Zawirski] for a more detailed description of idea.<br />
| Scott Lewis<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe<br />
| <br />
|<br />
|-<br />
| Google Calendar access using ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| [http://calendar.google.com Google Calendar] is a popular and open calendaring system. It would be useful to have an integrated ECF-based calendar for Eclipse. See [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01452.html mailing list entry by Marek Zawirski] for a more detailed description of idea.<br />
| Scott Lewis<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe, [mailto:codesurgeon@gmail.com Mustafa K. Isik]<br />
| <br />
| [mailto:st.shadow.by@gmail.com St.Shadow] from BSUIR., Belarus &lt;br&gt; [mailto:vipunreddy.n@gmail.com Arun Reddy] from BITS Pilani-Goa Campus, India<br />
|-<br />
| SIP VoIP implementation for ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| SIP is a popular signaling protocol, widely used for setting up VoIP calls with 2 or more participiants. This project aims to create working SIP/VoIP implementation, that will provide [http://wiki.eclipse.org/index.php/VOIP ECF Call API]. Implementation should allow VoIP calls using SIP from Eclipse and will make Eclipse a more functional softphone with an another protocol supported (already working implementations are jingle and Skype).<br />
| <br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe?<br />
| <br />
| <br />
|-<br />
| Further ECF and Mylyn integration<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Improvement of distributed development process is common goal of Mylyn and ECF projects. There have been [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01195.html some efforts] of integrating these projects. However, there are still some fields where integration could be further extended. This especially covers contacting easily with other developers when doing issue-oriented development with Mylyn. Goal of this project is to extend integration between Mylyn and ECF to allow easy task-oriented communication or task exchange.<br />
| <br />
| Remy Suen, Scott Lewis, Chris Aniszczyk, Markus Kuppe?<br />
| <br />
|<br />
|-<br />
| REST abstraction for ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Many service providers using a [http://en.wikipedia.org/wiki/Representational_State_Transfer REST] based API to offer developers access to their services, i.e. [http://apiwiki.twitter.com/ Twitter], [http://wiki.developers.facebook.com/index.php/Main_Page Facebook] and so on. The result of this is that some third parties provide Java based libraries which covers this API's. The ECF team played a little bit with the Twitter API and use therefore a library called [http://yusuke.homeip.net/twitter4j/en/index.html Twitter4J]. The disadvantage of this technique is a dependency to the third partie library. This means a ECF container based on such a library is dependend on the diversity of this.&lt;br&gt;<br />
To decouple these dependencies an own ECF based REST abstraction would be the best. Based on this many new ECF containers can be created easily without using any other libraries.<br />
| Scott Lewis, Holger Staudacher<br />
| Scott Lewis<br />
| <br />
| [mailto:holger.staudacher@gmail.com Holger Staudacher] from the [http://www.hs-furtwangen.de/ Hochschule Furtwangen University] – Furtwangen, Germany ; [mailto:srey.gandhi@gmail.com Sreyansh Gandhi] from Bannari Amman Institute, India<br />
|-<br />
| Sharing Snippets<br />
| [http://www.eclipse.org/ecf ECF]<br />
| A plugin using ECF to make snippet codes available on a snippet view/template view and in an organized way, snippets codes that comes from some &quot;place&quot;(CVS/SVN, Web Service, REST, HTTP, and others), and a way to share snippets from the eclipse editor, using ECF behind the scenes and maybe probably Equinox, OSGi Services.... For example, imagine that several snippets codes that there are on the SWT project available on a palette into the eclipse, or even several projects making important snippets code available into Eclipse, in ECF case for example code to create a container and etc. Maybe in this case the student can find some synergy with Eclipse Search feature with this &quot;Sharing Snippets&quot;.<br />
| Marcelo Mayworm<br />
| Marcelo Mayworm, Scott Lewis?<br />
| <br />
| [mailto:mrazec@gmail.com Mario Ponciano a.k.a Razec] - From Unianhanguera, Brazil.<br />
|-<br />
| Video Chat<br />
| [http://www.eclipse.org/ecf ECF]<br />
| The goal of this project is to provide a video chat over ECF, embedded on Eclipse in synergy with DocShare for real-time shared editing, using ECF provider mechanism to deliver screen capture video probably in SWF format (focus on the compact format and low bandwidth delivery) for a remote viewer.<br />
| Marcelo Mayworm<br />
| James Sugrue, Marcelo Mayworm, Scott Lewis?<br />
| <br />
|<br />
|-<br />
|-<br />
| Google Services<br />
| [http://www.eclipse.org/ecf ECF]<br />
| The goal of this project is create a specific Google provider. This can extend XMPP for chat, but should also provide functionality for the new Google Voice [http://news.cnet.com/8301-17939_109-10194446-2.html?part=rss&amp;subj=news&amp;tag=2547-1_3-0-20], including the transcription option.<br />
| James Sugrue <br />
| James Sugrue, Marcelo Mayworm, Scott Lewis?<br />
| <br />
|[mailto:nuwansam@gmail.com N.J. Samarasekera] from University of Moratuwa – Moratuwa, Sri Lanka<br />
|-<br />
|-<br />
| Integration of BPELUnit in Eclipse BPEL Designer <br />
| [http://www.eclipse.org/bpel BPEL Designer]<br />
| BPEL is an emerging standard for Web service compositions. Although BPEL processes are typically modeled by using graphical tools, the language is so powerful that testing is as necessary as for traditional programming languages. Apache ODE [http://ode.apache.org] is an open source BPEL engine, Eclipse offers a graphical BPEL editor [http://eclipse.org/bpel], and BPELUnit [http://www.bpelunit.net] is an open source testing framework, which provides means for mocking services and for calculating test coverage. However, they haven't been integrated yet.<br />
The goal of this project is, in conjunction with Project Apache ODE Integration in BPELUnit [http://wiki.apache.org/general/SummerOfCode2009], to provide a convenient, tightly integrated “unit testing environment” for BPEL processes in Eclipse / Apache ODE. For this particular piece, the UI portion of BPELUnit must be integrated into the Eclipse BPEL Designer to enable automatic unit testing directly from the modeling environment. To support the tester/developer better, a method for visualizing test coverage shall be developed and evaluated. For instance, it could be beneficial to mark executed activities in the graphical editor to display test coverage results.<br />
If the student is interested, it is possible to evaluate methods for automatic generation of Unit Test Data and to integrate them into BPELUnit.<br />
| Simon Moser <br />
| Simon Moser, Daniel Luebke (BPELUnit), Tammo van Lessen (Apache ODE)<br />
| <br />
| [mailto:chamibuddhika@gmail.com Chamith Buddhika] from University of Moratuwa, Sri Lanka<br />
|-<br />
|-<br />
| Distributed testing FW based on RFC 119 OSGi<br />
| [http://www.eclipse.org/ecf ECF]<br />
| The recent addition of remoting and discovery capabilities to OSGI R4.2 (RFC 119) enables us to easily set up a distributed system. Combined with the well known JUnit, a testing framework for distributed application can be build on top. This test fw can then be consumed by ECF directly (eat your own dogfood) to prove its usefulness. <br />
| Markus Alexander Kuppe<br />
| Scott Lewis?, Jan S. Rellermeyer?<br />
| None<br />
| [mailto:gsoc-djunit-app-2009@lemmster.de Markus Alexander Kuppe] from University of Hamburg, Germany<br />
|-<br />
| DSL and Model-Driven Generator for EclipseLink<br />
| [http://www.eclipse.org/eclipselink/ EclipseLink], [http://www.xtext.org Xtext], [http://wiki.eclipse.org/Xpand Xpand]<br />
| The goal of this project is to define a (textual) DSL for EclipseLink and create an Xpand-based code generator that generates best-practice EclipseLink code. The project will be mentored by two mentors (from Xtext/Xpand and EclipseLink) to ensure best-practice use of the technologies.<br />
| [mailto:peter.friese@itemis.com Peter Friese]<br />
| Peter Friese (Xtext, itemis), Douglas Clarke (EclipseLink, Oracle)<br />
| None<br />
| (Student name here)<br />
|-<br />
| Forms-based editors for Ecore models<br />
| [http://www.eclipse.org/modeling EMF]<br />
| Given any Ecore model, you can create a basic editor for this model. This editor, in conjunction with the properties panel, is quite functional, but not something you could integrate in your application without spending some time polishing it. would be great to have EMF generate a Forms-based Editor for a given Ecore model. See http://ekkes-corner.blogspot.com/2009/03/using-rcp-views-to-view-uml-diagrams.html for an example. Of course, it would even be cooler if we could dynamically build up UIs like that, but that's maybe a second step (or a second GSoC project).<br />
| [mailto:peter.friese@itemis.com Peter Friese]<br />
| [mailto:marcelop@ca.ibm.com Marcelo Paternostro] (EMF), [mailto:ed.merks@gmail.com Ed Merks] (EMF)<br />
| None<br />
| (Student name here)<br />
|-<br />
| Semantic Highlighting Editor for PHP Developers <br />
| [http://www.eclipse.org/pdt PDT]<br />
| Following the improvements done by the Web tools project ([https://bugs.eclipse.org/233505 233505]) on semantic highlighting, the PHP Source Editor can now set semantic rules for better coloring techniques that will improve its performance and functionality. For example, currently, all variables are highlighted in the same color. Although members / static / constants variables should be colored in separate colors just like the Java editor does.<br />
<br />
Each semantic rule should have a preference page which describes its rule color and functionality.<br />
| Roy Ganor<br />
| [mailto:roy@zend.com Roy Ganor]<br />
| None<br />
| [mailto:zhaozhongwei@eclipseworld.org Zhongwei Zhao] from the [http://210.46.97.15/ Heilongjiang University(china)]<br />
|-<br />
| A thin-client, web-based visual editor for Ecore models<br />
| [http://www.eclipse.org/modeling EMF]<br />
| The main idea is to expose a thin-client, web-based, visual editor for manipulating graph-like, Ecore-based models, as opposed to the SWT-based editor that lives inside of Eclipse. This is desirable, because a browser-based editor can go many places that Eclipse and SWT cannot go, like being embedded in a web page. There are many possible applications that could then be built using this technology, that would not otherwise be possible, for example a wiki for collaborating on models. I'd therefore like to propose a project that would be divided into two parts. <br />
<br />
The first part would be infrastructure-related, and would entail the following tasks:<br />
* Develop a concrete syntax layer that would be implemented using Open Web technologies, and could thus be purely browser-based.<br />
* Expose models based on Ecore so that they are remotely accessible via web services.<br />
* Bind the (client-side, browser-based) concrete syntax layer and the (server-side, Eclipse-based) abstract syntax layers together.<br />
<br />
The second part of the project might be to ensure that some existing formalisms based on EMF work well in the new editor. UML Class Diagrams seem like a good first target, and I believe it should be possible to reuse the work from the UML2 project directly here. I would also like to see a Finite State Machine/Statechart editor running in the browser. For an idea of what this might look like, please see the (very rough) prototype [http://jacobbeard.net/research/AToM3/sandbox/jbeard4/environment/trunk/main.xhtml#DChartsV3 here]. (Firefox 3+ only, at the moment).<br />
| [mailto:jbeard4@cs.mcgill.ca Jacob Beard]<br />
| [mailto:ed.merks@gmail.com Ed Merks] (EMF)<br />
| None<br />
| [mailto:jbeard4@cs.mcgill.ca Jacob Beard] from the [http://msdl.cs.mcgill.ca McGill University Modeling, Simulation, and Design Lab]<br />
|-<br />
| Towards a Web-based IDE with RAP<br />
| [http://www.eclipse.org/rap/ RAP]<br />
| RAP offers almost single-source support for building RCPs that can be deployed as destkop or web-based applications. However there are some areas that would need enhancement to be able create a fully-web based IDE type application. One area is the support for text editing and another is comparison (eclipse.text and eclipse.compare). Getting properly working read-only editors would be a great start, and is not trivial since those core bundles may make heavy use of the GC. The prize is full read-write and is not trivial. Another area is to support multi-users workspaces or something similar where many web based users access the tool, which would be needed too. Some work exists at Mozilla with bespin that could be either source of inspiration or integration too. Several students project could be proposed in each of those areas and beyond to help grow RAP support towards a fully web-based IDE capability.<br />
| Philippe Ombredanne<br />
| [http://wiki.eclipse.org/User:Pombredanne.nexb.com Philippe Ombredanne] We need some RAP committers to mentor, co-mentor.<br />
| None<br />
|<br />
|-<br />
| A Online Judge Plugin to ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Online judges are getting a lot of acceptance and response worldwide these days. Primarily, An Online judge is something which'll accept a piece of code (sent Online), compile and execute it and run it against a set of test cases to verify the correctness of the program. Not only this, but an Online Judge also calculates other details such as Memory taken, Time of execution, Size of the Source code and so on. These judges are mostly used for conducting programming matches among a group of passionate people. But it can still be tweaked to do a lot of other stuffs. An online Judge can be used in a classrooms and make programming more exciting. It can be also use to teach basic programming concepts and carefully modified for it. In addition to this, the online judge is implmented in a group chat environment (On jabber servers). This would enhance the interaction and further increase the excitement.<br />
This project will add an Online Judge feature. Any one in the world can host an online competition/ programming session/ share codes online etc.<br />
| [mailto:da.comp.guy@gmail.com Souvik Roy] from [http://www.sastra.edu Sastra University, India]<br />
| <br />
|<br />
| [mailto:da.comp.guy@gmail.com Souvik Roy] from [http://www.sastra.edu Sastra University, India]<br />
|-<br />
| Tab Property view for VE <br />
| [http://www.eclipse.org/vep VE]<br />
| VE is a WYSIWYG UI editor. It provides basic visual edition features. Some features need to be improved to be more user-friendly. The propose of this project is to change the default properties by using the Tab property to separate some most used properties in Tab property view by category. <br />
| Yves YANG<br />
| [http://wiki.eclipse.org/User:yves.yang.soyatec.com Yves YANG].<br />
| None<br />
|<br />
|-<br />
| Integration of [http://wiki.eclipse.org/E4/DeclarativeUI/XWT e4 XWT] to VE <br />
| [http://wiki.eclipse.org/E4/DeclarativeUI/XWT e4 XWT], [http://www.eclipse.org/vep VE]<br />
| VE is a WYSIWYG UI editor. It provides a visual edition of UI written in Java. The new UI programming paradigm in Declarative UI becomes more and more popular, particularly in Web development. [http://wiki.eclipse.org/e4 e4] schedules to provide a declarative UI. [http://wiki.eclipse.org/E4/DeclarativeUI/XWT XWT] is a candidate of this solution, which is already accessible in e4 distribution.<br />
The purpose of this project is to provide the visual edition of XWT on top of [http://www.eclipse.org/vep VE]. <br />
| Yves YANG<br />
| [http://wiki.eclipse.org/User:yves.yang.soyatec.com Yves YANG].<br />
| None<br />
|<br />
|-<br />
| JavaScript support in [http://wiki.eclipse.org/E4/DeclarativeUI/XWT e4 XWT] <br />
| [http://wiki.eclipse.org/E4/DeclarativeUI/XWT e4 XWT]<br />
| [http://wiki.eclipse.org/E4/DeclarativeUI/XWT XWT] is a XML-based declarative UI designed for eclipse. It is a candidate of this solution in [http://wiki.eclipse.org/e4 e4], which is already accessible in e4 distribution. <br />
The purpose of this project is to provide a JavaScript programming support in [http://wiki.eclipse.org/E4/DeclarativeUI/XWT e4 XWT]. <br />
| Yves YANG<br />
| [http://wiki.eclipse.org/User:yves.yang.soyatec.com Yves YANG].<br />
| None<br />
|<br />
|-<br />
| Binary serialization of [http://wiki.eclipse.org/E4/DeclarativeUI/XWT e4 XWT] <br />
| [http://wiki.eclipse.org/E4/DeclarativeUI/XWT e4 XWT]<br />
| [http://wiki.eclipse.org/E4/DeclarativeUI/XWT XWT] is a XML-based declarative UI designed for eclipse. It is a candidate of this solution in [http://wiki.eclipse.org/e4 e4], which is already accessible in e4 distribution. <br />
The purpose of this project is to provide a binary serialization mechanism to minimize the footprint and to increase the performance loading. <br />
| Yves YANG<br />
| [http://wiki.eclipse.org/User:yves.yang.soyatec.com Yves YANG].<br />
| None<br />
|<br />
|-<br />
| PMF interactive editor <br />
| [http://www.eclipse.org/proposals/pmf/ PMF]<br />
| [http://www.eclipse.org/proposals/pmf/ PMF] is a Modeling solution for UI. It provides an infrastructure to drive the business model to transform or generate UI presentation on top of the specific UI framework such as [http://wiki.eclipse.org/E4/DeclarativeUI/XWT e4 XWT].<br />
The purpose of this project is to develop a tree-based advanced editor to simplify the UI modeling. It should be an extension EMF editor. <br />
| Yves YANG<br />
| [http://wiki.eclipse.org/User:yves.yang.soyatec.com Yves YANG].<br />
| None<br />
|<br />
|-<br />
| Graphical user interface and other refactoring features for [https://bugs.eclipse.org/bugs/show_bug.cgi?id=200152 Convert Constants to Enum] refactoring plugin.<br />
| [https://bugs.eclipse.org/bugs/show_bug.cgi?id=200152 Convert Constants to Enum]<br />
| Java 1.5 introduces several new features that offer significant improvements over older Java technology, e.g., the new enum construct, which provides language support for enumerated types. Prior to Java 1.5, programmers needed to employ various patterns (e.g., static final int ...) to compensate for the absence of enumerated types in Java. Unfortunately, these compensation patterns lack several highly-desirable properties of the enum construct, most notably, type safety. The ''Convert Constants to Enum'' refactoring for Eclipse is a research prototype plugin that provides an automated approach for transforming legacy Java code to use the new enumeration construct. The semantics-preserving tool increases type safety, produces code that is easier to comprehend, removes unnecessary complexity, and eliminates brittleness problems due to separate compilation. <br />
The current status of the plugin can be found at bug [https://bugs.eclipse.org/bugs/show_bug.cgi?id=200152 200152]. There are several facets currently lacking from the plugin which are obstacles to wide distribution, namely, a graphical user interface, test suite, conformance with other refactoring plugins in Eclipse, e.g., undo functionality, refactoring history, refactoring preview pane.<br />
| Raffi Khatchadourian<br />
| [http://wiki.eclipse.org/User:Khatchad.cse.ohio-state.edu Raffi Khatchadourian].<br />
| <br />
| [mailto:binadpatel@gmail.com Bina Patel] from Ohio State University<br />
|-}<br />
<br />
<br />
<br />
Old ideas can be found at [[Google Summer of Code 2007 Ideas|Google Summer of Code 2007 ideas]] and [[Google Summer of Code 2008 Ideas|Google Summer of Code 2008 ideas]].</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=Google_Summer_of_Code_2009_Ideas&diff=146512Google Summer of Code 2009 Ideas2009-03-26T20:24:24Z<p>Pombredanne.nexb.com: </p>
<hr />
<div>== Rules ==<br />
* Be creative<br />
* Be specific: what do you want to be implemented<br />
* If you are willing to mentors those ideas, add your name and email to the idea.<br />
* It is ok to have a project idea without parent project<br />
* If you're an interested student, add your name and email next to the idea. It is ok to have several students interested by one idea.<br />
<br />
== Ideas ==<br />
<br />
{| border=&quot;1&quot; cellpadding=&quot;2&quot; width=&quot;100%&quot;<br />
!width=&quot;20%&quot;|Title<br />
!width=&quot;5%&quot; align=&quot;center&quot;|Project<br />
!width=&quot;40%&quot;|Abstract - links to details/bugs/etc<br />
!width=&quot;10%&quot;|Reporter<br />
!width=&quot;10%&quot;|Possible mentor(s)<br />
!width=&quot;15%&quot;|Comments<br />
!width=&quot;10%&quot;|Potential student(s)<br />
|-<br />
| Your project title here e.g. Cure world hunger<br />
| Your project link here e.g. [http://www.eclipse.org/soc SoC]<br />
| Your project description here. Be as precise and specific as possible. Link to bugs...<br />
| Your name here<br />
| Your Prospective mentors here (If you're an eclipse committer + the reporter, you should leave your name here too!<br />
| Your additional comments<br />
| &lt;br&gt;<br />
|-<br />
| PDE Menage A Trois<br />
| [http://www.eclipse.org/pde PDE]<br />
| The goal of this project is to update PDE to use EMF and Databinding under the covers. In PDE, we have a lot of models and editors backed by custom code that has shown its age and is difficult to maintain. This is an opportunity to modernize PDE and make it more extensible.<br />
| &lt;interested student here&gt;<br />
| Chris Aniszczyk, Benjamin Cabé<br />
| None<br />
| &lt;br&gt;<br />
|-<br />
| Write Eclipse plug-ins in PHP<br />
| [[e4/Languages]]<br />
| Leverage one of existing PHP/Java bridges for adding a PHP support into [[e4]]<br />
| Michael Spector<br />
| [http://wiki.eclipse.org/User:Mspector Michael Spector]<br />
| None<br />
| [mailto:wcandillon@gmail.com William Candillon].[mailto:zachhabersang@gmail.com Zach Habersang] from Texas A&amp;M Univ., USA<br />
|-<br />
| Write Eclipse plug-ins in Python or Jython<br />
| [[e4/Languages]]<br />
| Leverage one of existing Python/Java bridges or Jython (which now supports Python 2.5x) to add Python support into [[e4]]. Ideally this would include a guide to do it step by step in the current version of Eclipse, glue code and plugins to support Python bundles, a sample application and possibly some wizards and add-ons to PDE to make the experience smooth.<br />
| Philippe Ombredanne<br />
| [http://wiki.eclipse.org/User:Pombredanne.nexb.com Philippe Ombredanne]<br />
| None<br />
| <br />
|-<br />
| Rewrite PHP grammar in [http://www.antlr.org ANTLR]<br />
| [[PDT]]<br />
| Reasons: &lt;ul&gt;&lt;li&gt;ANTLR is more robust than JavaCUP&lt;/li&gt;&lt;li&gt;It has great [http://www.antlr.org/works/index.html editing/debugging tools]&lt;/li&gt;&lt;li&gt;It's supported by a community&lt;/li&gt;&lt;/ul&gt;<br />
| Michael Spector<br />
| [http://wiki.eclipse.org/User:Mspector Michael Spector]<br />
| None<br />
| [mailto:zachhabersang@gmail.com Zach Habersang] from Texas A&amp;M Univ., USA [mailto:dustin.xu@gmail.com Renjie Xu] from University of San Francisco., USA<br />
|-<br />
| Ant buildfile refactorings<br />
| [http://www.eclipse.org/eclipse/ant/ Platform Ant]<br />
| Ant buildfiles can become large and complex and would benefit from refactoring. Currently there is no support beyond renaming within a buildfile to allow the developer to efficiently refactor Ant buildfiles. The goals would be to implement an infrastructure to support refactorings in Ant buildfiles, participate in other components refactorings and provide a starter set of Ant buildfile refactorings. See [https://bugs.eclipse.org/bugs/show_bug.cgi?id=89938 bug 89938] for some initial buildfile refactoring ideas.<br />
| Darin Swanson<br />
| [mailto:Darin_Swanson@us.ibm.com Darin Swanson]<br />
| None<br />
| [mailto:allenchue@gmail.com Yin Qiu] from Nanjing Univ., China &lt;br/&gt;[mailto:st.shadow.by@gmail.com St.Shadow] from BSUIR., Belarus<br />
|-<br />
| XSLT Refactorings<br />
| [http://www.eclipse.org/webtools/incubator/ Webtools XSL Tools]<br />
| XSL Tools provides editing and debugging support. Currently there is no refactoring support for XSLT 1.0 or XSLT 2.0 stylesheets. Refactorings could include Extract Template, Extract Call Template, etc. Refactorings should participate with the platform refactoring framework.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| None<br />
| &lt;br&gt;<br />
|-<br />
| External XSLT Transformations<br />
| [http://www.eclipse.org/webtools/incubator/ Webtools XSL Tools]<br />
| Implement a configuration option and launching ability for non java XSLT processors. Particularly add support so that xsltproc could be used as a processor. {{bug|245743}}<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| None<br />
| &lt;br&gt;<br />
|-<br />
| XQuery/XPath Parser<br />
| [http://www.eclipse.org/webtools/incubator/ Webtools XQuery]<br />
| Currently the XQuery Development Tools is using an Antlr xpath parser from the XQPretty project. However this does not currently integrate well with the editor, and a javacc implementation that expands the current XML javacc parser would be ideal. This would leverage and hook into the existing parsing framework for the Structured Source Editor and provide identification of Regions and Partitions for the editor. A bonus would be to have validation of the XQuery syntax as well. See {{bug|226245}} for more information in regards to the XPath 2.0 support. <br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| None<br />
| [mailto:jin.phd@gmail.com Jin Mingjian], Chinese Academy of Sciences, China<br />
|-<br />
| VEX (Visual Editor for XML) Multipage Editor support<br />
| [http://www.eclipse.org/webtools/incubator/ Webtools VEX]<br />
| VEX supports the visual editing in a word processor like feel of a variety of XML formats. With the use of CSS stylesheets for the XML, it can render a WYSIWYG presentation. VEX currently does not have a working Multipage Editor..meaning that switching from the Design view to a source view, the XML is not shown in the source view and not synchronized. The model is EMF based, and the XML editor from WTP is DOM based, this project would leverage the EMF2SSEDOM framework for providing the synchronization between the two. The project is also open to other alternatives, and will allow the candidate wide latitude in experimentation of ways to implement the synchronization.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| None<br />
| [mailto:cbingiel@gmail.com Chelsea Bingiel], University of Chicago<br />
|-<br />
| RelaxNG Validator<br />
| [http://www.eclipse.org/webtools/incubator/ Webtools Incubator]<br />
| RelaxNG is an alternative schema language to the more widely known XML Schemas and DTDs. This project would implement RelaxNG valadition using the WTP validation framework. This should allow for both the as you type validation, as well as batch validation.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| None<br />
| &lt;br&gt;<br />
|-<br />
| RelaxNG Editor<br />
| [http://www.eclipse.org/webtools/incubator/ Webtools Incubator]<br />
| Implement a full featured editor for the RelaxNG compact syntax, with optional editing of the RelaxNG XML syntax as well. Should offer syntax highlighting, content assistance, validation against the relaxng specification, file wizards, preference pages, etc. Ideally built off and leverages the Structured Source Editor from WTP.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| None<br />
| &lt;br&gt;<br />
|-<br />
| VEX - Docbook 5 support<br />
| [http://www.eclipse.org/webtools/incubator/ Webtools VEX]<br />
| Implement a set of CSS stylesheets and appropriate outline views and enhancements for DocBook 5 features. This may require enhancements to the VEX model to support XML Namespaces, and displaying of images. DocBook 4.5 and Simplified Docbook 1.0 are currently supported, and can be used as a basis to provide Docbook 5 support.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| None<br />
| [mailto:cbingiel@gmail.com Chelsea Bingiel], University of Chicago<br />
|-<br />
| XSLT 2.0 content assistance<br />
| [http://www.eclipse.org/webtools/incubator/ Webtools XSL Tools]<br />
| XSL Tools provides good support for the XSLT 1.0 specification in the way of content assistance. It however does not provide support for some more advance features in XSLT 2.0 like custom functions, and content assistance for these features. Custom functions can be written in xslt 2.0, and then used within the stylesheet within XPath expressions. This allows for the generation of reuseable libraries like FXSL, to be created entirely in XSLT 2.0.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| None<br />
| [mailto:wellington.bengtson@gmail.com Wellington Bengtson], Institut National des Sciences Appliquées de Rouen<br />
|-<br />
| API Tooling for the Extension Registry<br />
| [http://www.eclipse.org/pde PDE]<br />
| The goal of this project is to add support to API Tools to work with the extension registry. For example, there are things in extensions that can be considered API. For example, the id of a view can be referenced by anyone. This should be considered API and changing it has the potential of breaking downstream clients. <br />
| &lt;interested student here&gt;<br />
| Chris Aniszczyk, Darin Wright<br />
| None<br />
| &lt;br&gt;<br />
|-<br />
| ECF connections for JDBC and DTP<br />
| [http://www.eclipse.org/datatools]<br />
| We'd like to find a way to bridge the gap between DTP and ECF to find a way to use a shared connection framework in E4. The idea would be to have an ECF connection for JDBC (would require jdbc url, jar list, uid/pwd, and any other properties) that could then be used to get the raw JDBC connection to be used in DTP...<br />
| &lt;interested student here&gt;<br />
| Brian Fitzpatrick, Scott Lewis<br />
| Brian Fitzpatrick (brianf@sybase.com)<br />
| &lt;br&gt;<br />
|-<br />
| JWT View Editor<br />
| [http://www.eclipse.org/jwt JWT]<br />
| With JWT processes can be modeled in different views: a business view which is more abstract (e.g. in BPMN) or a technical view which includes much more execution details (e.g. using UML activity diagrams with extensions). In order to configure these views, we developed a [https://bugs.eclipse.org/bugs/show_bug.cgi?id=249437 view editor]. But this view editor is currently only usable for the core metamodel. In the meanwhile we developed an [http://wiki.eclipse.org/JWT_Metamodel_Extension aspect-oriented mechanism] for vendors to extend the metamodel with their specific details. These aspects need to be considered in the views, but are currently neglected. This project shall extend the existing JWT view editor and adapt the views to the aspects.<br />
| Florian Lautenbacher<br />
| [mailto:lautenbacher@ds-lab.org Florian Lautenbacher]<br />
| -<br />
| [mailto:melanie@hesselbart.de Melanie Hesselbart], University of Augsburg, Germany<br />
|-<br />
| XPath 2.0 W3C Test Suite<br />
| [http://www.eclipse.org/webtools/incubator XSL Tools]<br />
| XSL Tools received a code contribution from the author of the PsychoPath XPath 2.0 java processor. This was developed before the finalized spec so is based on a draft version of the specification. The W3C has created a test suite that implementors of XPath 2.0 can use to verify their implementations. This project would help implement the test suite, identify, and provide patches for the XPath 2.0 processor so that it passes the tests. This is currently tracked in {{bug|262765}}.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| -<br />
| [mailto:jin.phd@gmail.com Jin Mingjian], Chinese Academy of Sciences, China<br />
|-<br />
| Objective-C first class IDE<br />
| <br />
| Extend CDT to provide a great IDE for Objectivce-C language, see [http://alblue.blogspot.com/2009/02/objectiveclipse.html blog entry] and {{bug|68083}}<br />
| Mariot Chauvin<br />
| Alex Blewitt or Doug Schaefer<br />
| -<br />
| [mailto:rsisnett@gmail.com Ricardo Sisnett], Instituto Tecnológico de Monterrey, Mexico<br />
| &lt;br&gt;<br />
|-<br />
| 3D visualization of model differences<br />
| [http://www.eclipse.org/modeling/emft/?project=compare EMF Compare]<br />
| Thanks to GEF3D and EMF Compare, it's now possible to display diagrams, <br />
compare the semantic model, and show the differences through a 3D <br />
representation. This project is about integrating those tools and <br />
experimenting with such visualization (one can easily imagine a &quot;Time <br />
Machine&quot;-like view for his diagrams.<br />
| Cédric Brun<br />
| [mailto:cedric.brun@obeo.fr Cédric Brun]<br />
| <br />
| &lt;br&gt;<br />
|-<br />
| Huge Model Comparison<br />
| [http://www.eclipse.org/modeling/emft/?project=compare EMF Compare]<br />
| EMF Compare uses an heuristic-based algorithm to compare two models, while <br />
doing so its keeping processing data in memory (more important the models are, <br />
more memory is used). This project is about leveraging CDO and writing another <br />
implementation of match algorithm to be able to compare any size of model, <br />
even ones with millions of elements.<br />
| Cédric Brun<br />
| [mailto:cedric.brun@obeo.fr Cédric Brun]<br />
| <br />
| &lt;br&gt;<br />
|-<br />
| Improve graphical comparison<br />
| [http://www.eclipse.org/modeling/emft/?project=compare EMF Compare]<br />
| A first implementation of graphical comparison has been done, see https://bugs.eclipse.org/bugs/show_bug.cgi?id=241385.<br />
Several enhancements could be made, such as supporting diagrams with images. <br />
| Mariot Chauvin<br />
| [mailto:cedric.brun@obeo.fr Cédric Brun]<br />
| <br />
| &lt;br&gt;<br />
|-<br />
| ProtocolBuffer EMF Serialization<br />
| [http://www.eclipse.org/modeling/emf/ EMF]<br />
| ProtocolBuffer is binary serialization API which is smaller and faster than XML.<br />
It would be interesting to be able to serialize EMF models with it.See http://code.google.com/intl/fr/apis/protocolbuffers/<br />
| Mariot Chauvin<br />
| To be defined<br />
| <br />
| [mailto:dalvac@gmail.com Diego Alvarez Araujo Correia] - From Instituto Tecnológico de Aeronáutica - ITA, Brazil.<br />
|-<br />
| Acceleo and ATL Combine<br />
| [http://www.eclipse.org/modeling/m2t/?project=acceleo Acceleo]<br />
| Study possibility to call model to model transformations from model to text transformations and inversely without high coupling between the two.<br />
| Mariot Chauvin<br />
| To be defined<br />
| <br />
| &lt;br&gt;<br />
|-<br />
| Index search for Java EE metadata<br />
| [http://www.eclipse.org/webtools/jee/ WTP Java EE Tools]<br />
| Bugzilla: [https://bugs.eclipse.org/233505 233505]<br />
<br />
;Pain point<br />
<br />
Working on huge projects is a common task for many Java EE developers. Sooner or later the developer would fall in a situation where he or she needs to find an exact Java EE artifact by just remembering a portion of the artifact's name or description, but not the its exact location. In such situation the developer should try different methods of searching, including file search, full-text search, etc. It would be much more convenient if the IDE provides a Java EE metadata search. <br />
<br />
;Solution<br />
<br />
We are all familiar with the ''Open Type'' and ''Open Resource'' index searches in the workbench and how useful they are when we try to quickly locate our files and Java classes in the huge projects we are working with. The Java EE perspective should naturally evolve these features to Java EE metadata index search, where developers can search for certain metadata in their Java EE projects. <br />
<br />
This new feature should introduce new dialog box that looks similar to the ''Open Type'' and ''Open Resource'' dialogs. There should be a hotkey combination available that enables users to quickly call the dialog. Typing a portion of the Java EE metadata name or description should filter the available Java EE artifacts and assist the user choice. <br />
<br />
Examples for Java EE metadata are:<br />
* EJB beans<br />
* Web servlets<br />
* EJB references<br />
* Security roles<br />
<br />
There is a new Eclipse project proposed - [http://www.eclipse.org/proposals/emf-index/ EMF Index] - that could help with the realization of this idea. <br />
| Kaloyan Raev<br />
| [mailto:kaloyan.raev@sap.com Kaloyan Raev]<br />
| None<br />
| [mailto:dimpata@gmail.com Georgi Dimitrov] from the University of Sofia, Bulgaria<br />
<br />
[mailto:sajith.vim@gmail.com Sajith Vimukthi]<br />
|-<br />
| Embed OpenEJB in J2EE Preview server adapter<br />
| [http://www.eclipse.org/webtools/server/ WTP Server Tools]<br />
| Currently the J2EE Preview adapter, that ships with WTP, utilizes the embedded Jetty server and makes possible for users to develop and run Web application without the need to install additional J2EE runtime and servers. <br />
<br />
It would be useful if an EJB container is embedded in the J2EE Preview adapter, too. This will make possible EJB development &quot;out of the box&quot; the same way as web development. <br />
<br />
There is a suitable embeddable EJB container - [http://openejb.apache.org/ OpenEJB]. There is a guide how to [http://openejb.apache.org/tomcat.html embed OpenEJB in Tomcat]. So, it should be possible to embed it in a similar way in the Jetty web container. <br />
<br />
In the end the J2EE Preview server adapter should be able to deploy and run WEB, EJB and EAR modules.<br />
<br />
| Kaloyan Raev<br />
| [mailto:kaloyan.raev@sap.com Kaloyan Raev]<br />
| None<br />
| [mailto:marcelo.dias@students.ic.unicamp.br Marcelo de Oliveira Dias] from the University of Campinas – UNICAMP, Brazil<br />
|-<br />
| Improve support for PostgreSQL in DTP Enablement<br />
| [http://www.eclipse.org/datatools/ Eclipse Datatools]<br />
| <br />
PostgreSQL support is minimal in DTP. Only connection profile is implemented, other needed functions are derived from Generic SQL support.<br />
<br />
Stundents job would be to implement PostgreSQL specific loaders and models and based on that the student should start implementing DDL generator.<br />
<br />
Brian Fitzpatrick has documented how to do some parts in his [http://fitzdtp.blogspot.com/ blog] that can be used<br />
<br />
| Ivar Meikas<br />
| [mailto:ivar@codehoop.com Ivar Meikas]<br />
| PostgreSQL is not the only database thats support could be improved, if the student knows some other database well and he wants to see in DTP he can implement that also.<br />
| &lt;br&gt;<br />
|-<br />
| DSL For Generating Zest Graphs<br />
| [http://www.eclipse.org/gef/zest/ Zest]<br />
| Zest currently provides an API for generating node-link diagrams (graphs), however, it doesn't contain any way for end users to construct their own views. Adding a DSL similar to GraphViz (DOT) would allow users to construct and render graphs on the fly. This could be accomplished by providing a language model in EMF or XText Grammar and through code generation (via JET or XPand, an equivalent Zest program could be generated).<br />
| Ian Bull<br />
| [mailto:irbull@eclipsesource.com Ian Bull]<br />
| None<br />
| [mailto:steeg@netcologne.de Fabian Steeg], University of Cologne, Germany<br />
|-<br />
| Debugging aid for p2 installation issues<br />
| [https://bugs.eclipse.org/bugs/show_bug.cgi?id=267275 Enhancement Request]<br />
| Debugging cases where features cannot be installed into Eclipse due to inability to reconcile requirements of existing features and the new features being installed is quite challenging. It would be useful to create a tool for capturing the details of the environment and what was being installed to aid in reporting problems. Once it is possible to generate these dumps, a graphical explorer tool that would allow the developers to trace the dependencies and see the problems would make it significantly easier to debug these problems.<br />
| <br />
| [mailto:pascal_rapicault@ca.ibm.com Pascal Rapicault]<br />
| <br />
| [mailto:mrjpiggott@gmail.com Matthew Piggott], University of Ottawa, Canada<br />
|-<br />
| Power-user p2 views<br />
| [[Equinox p2 User Interface]]<br />
| The current Eclipse p2 Update UI is targeted to both Eclipse SDK users and end-users of Eclipse-based products. Since the UI must support users with less knowledge than the typical Eclipse SDK user, the end result is a wizard-style (modal), task-based approach. Many power users, in particular Linux users, prefer a modeless, &quot;dashboard&quot; style of interaction. The current p2 &quot;Admin UI&quot; is targeted toward p2 developers who need to see every detail of the underlying p2 model objects. There is a need for something in between these two extremes. Users have mentioned Linux package management front ends such as [http://www.nongnu.org/synaptic/ Synaptic Package Manager] as appropriate UIs for this audience. If appropriate, this UI could replace the p2 admin UI, but it's not clear if that should be the goal.<br />
| Susan McCourt<br />
| [mailto:susan_franklin@us.ibm.com Susan McCourt]<br />
| <br />
| <br />
|-<br />
| CVS Search<br />
| [http://www.eclipse.org/eclipse/platform-cvs/ Platform CVS]<br />
| The aim of this project is to provide a facility that will allow for searching commit comments. The facility should be able to scan selected CVS project, find commits that match specific query and present them using the Compare Editor.<br />
| Christopher Daniel<br />
| [mailto:krzysztof_daniel@pl.ibm.com Christopher Daniel], [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Additional Tab in the Search Dialog will be created. More details soon.<br />
| [mailto:oka@itu.edu.tr Ali Ok], Istanbul Technical University, Turkey, &lt;br&gt;[mailto:nm.ricardo@gmail.com Ricardo N. Miranda], University of Campinas – UNICAMP, Brazil<br />
|-<br />
| Configurable &quot;link with editor&quot; using logical hierarchy model<br />
| [http://www.eclipse.org/webtools/jee/ WTP Java EE Tools]<br />
| Bugzilla: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=137086 137086]<br />
Initial bugzilla proposal. <br />
---<br />
&lt;p&gt;<br />
Customer explained how it would be nice to have a <br />
&quot;blue-arrows&quot; Toggle button feature parallel to the current <br />
&quot;Yellow-arrows&quot; Toggle button feature.Just like &quot;Yellow-Arrows&quot; <br />
button has the tooltip -- &quot;link open editors with Navigator <br />
contents&quot; , the &quot;blue-arrows&quot; feature can have the tool-tip <br />
&quot;Link open editors with current logical hierarchy view item&quot; <br />
&lt;/p&gt;<br />
&lt;p&gt;<br />
That feature will provide the following functionality : <br />
If the user clicks on an open editor , the focus in the project <br />
explorer will go back to the logical item in the hierarchy view <br />
under the Deployment descriptor (in its Sub-tree) rather than <br />
going to the file on the file-system in the &quot;ejbmodule&quot; - <br />
subtree (for eg. clicking EmpLocalhome.java in editor view <br />
should go to the &quot;EmpLocalHome&quot; logical entity being shown in <br />
the Deployment descriptor sub-tree. The Current &quot;yellow-arrows&quot; <br />
feature rather makes the focus go into the &quot;ejb module&quot; folder <br />
and focuses on the EmpLocalHome.java file itself. ) <br />
&lt;/p&gt; <br />
&lt;p&gt;<br />
If the above &quot;blue-arrows&quot; feature is made availalbe the <br />
developer never has to leave the Deployment descriptor subtree <br />
during the entire EJB project development work flow. Currently ,<br />
the &quot;yellow-arrows&quot; feature makes the focus go back into the <br />
&quot;ejbmodule&quot; folder containing the corresponding .java . In <br />
situations where the EJB project might contain 100's of EJB's <br />
inside them, &quot;ejbmodule&quot; might contain 1000's of files <br />
including the Deploy Code etc. The user then needs to scroll all<br />
the way up to the Deployment Descriptor sub-tree to go <br />
double-click and open any other logical view item ,say another <br />
Entity bean component (eg. LocalHome or home interface etc.) <br />
The customer complained that he ends up clicking on the <br />
&quot;collapse-all&quot; feature in this case there by losing the whole <br />
work-flow and then has to go back to the logical hierarchy view <br />
under the Deployment descriptor sub-tree to find a particular <br />
ejb component for editing.<br />
&lt;/p&gt;<br />
---<br />
<br />
This proposal opens the question for an extensible link with editor feature. There might be more then one model (eg resource model, Java EE model, WS model, Persistence Model) and the same editor could be linked to all the models. A solution is to make the whole link with editor very extensible with different models contributing to this extension. The models will have a priority and a shortcut could be defined to link with the next (by prio) model.<br />
<br />
Even thought the feature request is in Java EE tools the solution will probably involve an &quot;extensible part&quot; in the platform ui and an &quot;extension part&quot; in Java EE tools.<br />
<br />
| Kiril Mitov<br />
| [mailto:k.mitov@sap.com Kiril Mitov]<br />
| <br />
| &lt;br&gt;<br />
|-<br />
| Policy Derivation tool for STP Policy Editor + WS-Policy Awareness<br />
| [http://www.eclipse.org/stp/ Eclipse SOA Tools]<br />
| The main aim of this project is to provide integration of a policy derivation tool for WTP Policy Editor.Policy derivation tool is a component which basically reads a WS Compliant XML type message(ie:-SOAP) and derives single/multiple policies corresponding to the msg(It will be usefull in web services scenarios such as for clients to build a compatible policy reading the soap messages coming from the Service side if the web service itself don't wish to publish it's policies.. ).With the Integration of such a tool we could feed the derived policy instances to the editor itself and users can therefore edit the derived policy/policies to their liking (ie:- add, edit delete policy assertions) as policy editor supports rich functionality for such work. Among other objectives of the project are providing out the capability for correctly displaying standardized WS specs such that policy editor will be aware of different specs such as WS-SEC,WS-RM,MTOM,Addreesing,etc on the policy instances ,users are working on/ hoping to work on ,AND making Policy Editor compatible for other WS policy constructs that are currently not supported.. <br />
| Oisin Hurley<br />
| someone from STP<br />
| None<br />
| [mailto:mastershield2007@gmail.com U.S.Wickramasinghe] from The University of Moratuwa – Moratuwa, SriLanka<br />
|-<br />
-<br />
| ECF and Yahoo<br />
| [http://www.eclipse.org/ecf/ ECF]<br />
| Implement a EPL'd version of the Yahoo messaging protocol and than code an ECF provider implementation for that. The baseline goal of this project is to just implement messanging for Yahoo... things like file transfer can come later or if there's time.<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| [mailto:rjvranga@gmail.com Rajeev Sampath] from University of Moratuwa, Sri Lanka <br />
|-<br />
| AIM Provider<br />
| [http://www.eclipse.org/ecf ECF]<br />
| ECF allows messaging protocols to be plugged in as providers. AIM isn't currently supported. The student can choose to implement the AIM (OSCAR) protocol themselves, or wrap an existing Java library like JOscar.<br />
| Chris Aniszczyk, Remy Suen<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:remy.suen@gmail.com Remy Suen]<br />
|<br />
| [mailto:oka@itu.edu.tr Ali Ok], Istanbul Technical University, Turkey<br />
[mailto:liucong07@gmail.com Liu Cong], Beijing University of Aeronautics &amp; Astronautics, China<br />
|-<br />
| QQ Provider<br />
| [http://www.eclipse.org/ecf ECF]<br />
| ECF allows messaging protocols to be plugged in as providers. QQ isn't currently supported. The student can choose to implement the QQ protocol themselves, or wrap an existing Java library.<br />
| Chris Aniszczyk, Remy Suen<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:remy.suen@gmail.com Remy Suen]<br />
|<br />
|<br />
|-<br />
| VNC over ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Virtual Network Console is a popular screen sharing technology. It would be useful to have an implementation of VNC protocol for ECF. See [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01452.html mailing list entry by Marek Zawirski] for a more detailed description of idea.<br />
| Scott Lewis<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe<br />
| <br />
|<br />
|-<br />
| Google Calendar access using ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| [http://calendar.google.com Google Calendar] is a popular and open calendaring system. It would be useful to have an integrated ECF-based calendar for Eclipse. See [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01452.html mailing list entry by Marek Zawirski] for a more detailed description of idea.<br />
| Scott Lewis<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe, [mailto:codesurgeon@gmail.com Mustafa K. Isik]<br />
| <br />
| [mailto:st.shadow.by@gmail.com St.Shadow] from BSUIR., Belarus &lt;br&gt; [mailto:vipunreddy.n@gmail.com Arun Reddy] from BITS Pilani-Goa Campus, India<br />
|-<br />
| SIP VoIP implementation for ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| SIP is a popular signaling protocol, widely used for setting up VoIP calls with 2 or more participiants. This project aims to create working SIP/VoIP implementation, that will provide [http://wiki.eclipse.org/index.php/VOIP ECF Call API]. Implementation should allow VoIP calls using SIP from Eclipse and will make Eclipse a more functional softphone with an another protocol supported (already working implementations are jingle and Skype).<br />
| <br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe?<br />
| <br />
| <br />
|-<br />
| Further ECF and Mylyn integration<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Improvement of distributed development process is common goal of Mylyn and ECF projects. There have been [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01195.html some efforts] of integrating these projects. However, there are still some fields where integration could be further extended. This especially covers contacting easily with other developers when doing issue-oriented development with Mylyn. Goal of this project is to extend integration between Mylyn and ECF to allow easy task-oriented communication or task exchange.<br />
| <br />
| Remy Suen, Scott Lewis, Chris Aniszczyk, Markus Kuppe?<br />
| <br />
|<br />
|-<br />
| REST abstraction for ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Many service providers using a [http://en.wikipedia.org/wiki/Representational_State_Transfer REST] based API to offer developers access to their services, i.e. [http://apiwiki.twitter.com/ Twitter], [http://wiki.developers.facebook.com/index.php/Main_Page Facebook] and so on. The result of this is that some third parties provide Java based libraries which covers this API's. The ECF team played a little bit with the Twitter API and use therefore a library called [http://yusuke.homeip.net/twitter4j/en/index.html Twitter4J]. The disadvantage of this technique is a dependency to the third partie library. This means a ECF container based on such a library is dependend on the diversity of this.&lt;br&gt;<br />
To decouple these dependencies an own ECF based REST abstraction would be the best. Based on this many new ECF containers can be created easily without using any other libraries.<br />
| Scott Lewis, Holger Staudacher<br />
| Scott Lewis<br />
| <br />
| [mailto:holger.staudacher@gmail.com Holger Staudacher] from the [http://www.hs-furtwangen.de/ Hochschule Furtwangen University] – Furtwangen, Germany ; [mailto:srey.gandhi@gmail.com Sreyansh Gandhi] from Bannari Amman Institute, India<br />
|-<br />
| Sharing Snippets<br />
| [http://www.eclipse.org/ecf ECF]<br />
| A plugin using ECF to make snippet codes available on a snippet view/template view and in an organized way, snippets codes that comes from some &quot;place&quot;(CVS/SVN, Web Service, REST, HTTP, and others), and a way to share snippets from the eclipse editor, using ECF behind the scenes and maybe probably Equinox, OSGi Services.... For example, imagine that several snippets codes that there are on the SWT project available on a palette into the eclipse, or even several projects making important snippets code available into Eclipse, in ECF case for example code to create a container and etc. Maybe in this case the student can find some synergy with Eclipse Search feature with this &quot;Sharing Snippets&quot;.<br />
| Marcelo Mayworm<br />
| Marcelo Mayworm, Scott Lewis?<br />
| <br />
| [mailto:mrazec@gmail.com Mario Ponciano a.k.a Razec] - From Unianhanguera, Brazil.<br />
|-<br />
| Video Chat<br />
| [http://www.eclipse.org/ecf ECF]<br />
| The goal of this project is to provide a video chat over ECF, embedded on Eclipse in synergy with DocShare for real-time shared editing, using ECF provider mechanism to deliver screen capture video probably in SWF format (focus on the compact format and low bandwidth delivery) for a remote viewer.<br />
| Marcelo Mayworm<br />
| James Sugrue, Marcelo Mayworm, Scott Lewis?<br />
| <br />
|<br />
|-<br />
|-<br />
| Google Services<br />
| [http://www.eclipse.org/ecf ECF]<br />
| The goal of this project is create a specific Google provider. This can extend XMPP for chat, but should also provide functionality for the new Google Voice [http://news.cnet.com/8301-17939_109-10194446-2.html?part=rss&amp;subj=news&amp;tag=2547-1_3-0-20], including the transcription option.<br />
| James Sugrue <br />
| James Sugrue, Marcelo Mayworm, Scott Lewis?<br />
| <br />
|[mailto:nuwansam@gmail.com N.J. Samarasekera] from University of Moratuwa – Moratuwa, Sri Lanka<br />
|-<br />
|-<br />
| Integration of BPELUnit in Eclipse BPEL Designer <br />
| [http://www.eclipse.org/bpel BPEL Designer]<br />
| BPEL is an emerging standard for Web service compositions. Although BPEL processes are typically modeled by using graphical tools, the language is so powerful that testing is as necessary as for traditional programming languages. Apache ODE [http://ode.apache.org] is an open source BPEL engine, Eclipse offers a graphical BPEL editor [http://eclipse.org/bpel], and BPELUnit [http://www.bpelunit.net] is an open source testing framework, which provides means for mocking services and for calculating test coverage. However, they haven't been integrated yet.<br />
The goal of this project is, in conjunction with Project Apache ODE Integration in BPELUnit [http://wiki.apache.org/general/SummerOfCode2009], to provide a convenient, tightly integrated “unit testing environment” for BPEL processes in Eclipse / Apache ODE. For this particular piece, the UI portion of BPELUnit must be integrated into the Eclipse BPEL Designer to enable automatic unit testing directly from the modeling environment. To support the tester/developer better, a method for visualizing test coverage shall be developed and evaluated. For instance, it could be beneficial to mark executed activities in the graphical editor to display test coverage results.<br />
If the student is interested, it is possible to evaluate methods for automatic generation of Unit Test Data and to integrate them into BPELUnit.<br />
| Simon Moser <br />
| Simon Moser, Daniel Luebke (BPELUnit), Tammo van Lessen (Apache ODE)<br />
| <br />
| [mailto:chamibuddhika@gmail.com Chamith Buddhika] from University of Moratuwa, Sri Lanka<br />
|-<br />
|-<br />
| Distributed testing FW based on RFC 119 OSGi<br />
| [http://www.eclipse.org/ecf ECF]<br />
| The recent addition of remoting and discovery capabilities to OSGI R4.2 (RFC 119) enables us to easily set up a distributed system. Combined with the well known JUnit, a testing framework for distributed application can be build on top. This test fw can then be consumed by ECF directly (eat your own dogfood) to prove its usefulness. <br />
| Markus Alexander Kuppe<br />
| Scott Lewis?, Jan S. Rellermeyer?<br />
| None<br />
| [mailto:gsoc-djunit-app-2009@lemmster.de Markus Alexander Kuppe] from University of Hamburg, Germany<br />
|-<br />
| DSL and Model-Driven Generator for EclipseLink<br />
| [http://www.eclipse.org/eclipselink/ EclipseLink], [http://www.xtext.org Xtext], [http://wiki.eclipse.org/Xpand Xpand]<br />
| The goal of this project is to define a (textual) DSL for EclipseLink and create an Xpand-based code generator that generates best-practice EclipseLink code. The project will be mentored by two mentors (from Xtext/Xpand and EclipseLink) to ensure best-practice use of the technologies.<br />
| [mailto:peter.friese@itemis.com Peter Friese]<br />
| Peter Friese (Xtext, itemis), Douglas Clarke (EclipseLink, Oracle)<br />
| None<br />
| (Student name here)<br />
|-<br />
| Forms-based editors for Ecore models<br />
| [http://www.eclipse.org/modeling EMF]<br />
| Given any Ecore model, you can create a basic editor for this model. This editor, in conjunction with the properties panel, is quite functional, but not something you could integrate in your application without spending some time polishing it. would be great to have EMF generate a Forms-based Editor for a given Ecore model. See http://ekkes-corner.blogspot.com/2009/03/using-rcp-views-to-view-uml-diagrams.html for an example. Of course, it would even be cooler if we could dynamically build up UIs like that, but that's maybe a second step (or a second GSoC project).<br />
| [mailto:peter.friese@itemis.com Peter Friese]<br />
| [mailto:marcelop@ca.ibm.com Marcelo Paternostro] (EMF), [mailto:ed.merks@gmail.com Ed Merks] (EMF)<br />
| None<br />
| (Student name here)<br />
|-<br />
| Semantic Highlighting Editor for PHP Developers <br />
| [http://www.eclipse.org/pdt PDT]<br />
| Following the improvements done by the Web tools project ([https://bugs.eclipse.org/233505 233505]) on semantic highlighting, the PHP Source Editor can now set semantic rules for better coloring techniques that will improve its performance and functionality. For example, currently, all variables are highlighted in the same color. Although members / static / constants variables should be colored in separate colors just like the Java editor does.<br />
<br />
Each semantic rule should have a preference page which describes its rule color and functionality.<br />
| Roy Ganor<br />
| [mailto:roy@zend.com Roy Ganor]<br />
| None<br />
| [mailto:zhaozhongwei@eclipseworld.org Zhongwei Zhao] from the [http://210.46.97.15/ Heilongjiang University(china)]<br />
|-<br />
| A thin-client, web-based visual editor for Ecore models<br />
| [http://www.eclipse.org/modeling EMF]<br />
| The main idea is to expose a thin-client, web-based, visual editor for manipulating graph-like, Ecore-based models, as opposed to the SWT-based editor that lives inside of Eclipse. This is desirable, because a browser-based editor can go many places that Eclipse and SWT cannot go, like being embedded in a web page. There are many possible applications that could then be built using this technology, that would not otherwise be possible, for example a wiki for collaborating on models. I'd therefore like to propose a project that would be divided into two parts. <br />
<br />
The first part would be infrastructure-related, and would entail the following tasks:<br />
* Develop a concrete syntax layer that would be implemented using Open Web technologies, and could thus be purely browser-based.<br />
* Expose models based on Ecore so that they are remotely accessible via web services.<br />
* Bind the (client-side, browser-based) concrete syntax layer and the (server-side, Eclipse-based) abstract syntax layers together.<br />
<br />
The second part of the project might be to ensure that some existing formalisms based on EMF work well in the new editor. UML Class Diagrams seem like a good first target, and I believe it should be possible to reuse the work from the UML2 project directly here. I would also like to see a Finite State Machine/Statechart editor running in the browser. For an idea of what this might look like, please see the (very rough) prototype [http://jacobbeard.net/research/AToM3/sandbox/jbeard4/environment/trunk/main.xhtml#DChartsV3 here]. (Firefox 3+ only, at the moment).<br />
| [mailto:jbeard4@cs.mcgill.ca Jacob Beard]<br />
| [mailto:ed.merks@gmail.com Ed Merks] (EMF)<br />
| None<br />
| [mailto:jbeard4@cs.mcgill.ca Jacob Beard] from the [http://msdl.cs.mcgill.ca McGill University Modeling, Simulation, and Design Lab]<br />
|-<br />
| Towards a Web-based IDE with RAP<br />
| [http://www.eclipse.org/rap/ RAP]<br />
| RAP offers almost single-source support for building RCPs that can be deployed as destkop or web-based applications. However there are some areas that would need enhancement to be able create a fully-web based IDE type application. One area is the support for text editing and another is comparison (eclipse.text and eclipse.compare). Getting properly working read-only editors would be a great start, and is not trivial since those core bundles may make heavy use of the GC. The prize is full read-write and is not trivial. Another area is to support multi-users workspaces or something similar where many web based users access the tool, which would be needed too. Some work exists at Mozilla with bespin that could be either source of inspiration or integration too. Several students project could be proposed in each of those areas and beyond to help grow RAP support towards a fully web-based IDE capability.<br />
| Philippe Ombredanne<br />
| [http://wiki.eclipse.org/User:Pombredanne.nexb.com Philippe Ombredanne] We need some RAP committers to mentor, co-mentor.<br />
| None<br />
|<br />
|-<br />
| A Online Judge Plugin to ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Online judges are getting a lot of acceptance and response worldwide these days. Primarily, An Online judge is something which'll accept a piece of code (sent Online), compile and execute it and run it against a set of test cases to verify the correctness of the program. Not only this, but an Online Judge also calculates other details such as Memory taken, Time of execution, Size of the Source code and so on. These judges are mostly used for conducting programming matches among a group of passionate people. But it can still be tweaked to do a lot of other stuffs. An online Judge can be used in a classrooms and make programming more exciting. It can be also use to teach basic programming concepts and carefully modified for it. In addition to this, the online judge is implmented in a group chat environment (On jabber servers). This would enhance the interaction and further increase the excitement.<br />
This project will add an Online Judge feature. Any one in the world can host an online competition/ programming session/ share codes online etc.<br />
| [mailto:da.comp.guy@gmail.com Souvik Roy] from [http://www.sastra.edu Sastra University, India]<br />
| <br />
|<br />
| [mailto:da.comp.guy@gmail.com Souvik Roy] from [http://www.sastra.edu Sastra University, India]<br />
|-<br />
| Tab Property view for VE <br />
| [http://www.eclipse.org/vep VE]<br />
| VE is a WYSIWYG UI editor. It provides basic visual edition features. Some features need to be improved to be more user-friendly. The propose of this project is to change the default properties by using the Tab property to separate some most used properties in Tab property view by category. <br />
| Yves YANG<br />
| [http://wiki.eclipse.org/User:yves.yang.soyatec.com Yves YANG].<br />
| None<br />
|<br />
|-<br />
| Integration of [http://wiki.eclipse.org/E4/DeclarativeUI/XWT e4 XWT] to VE <br />
| [http://wiki.eclipse.org/E4/DeclarativeUI/XWT e4 XWT], [http://www.eclipse.org/vep VE]<br />
| VE is a WYSIWYG UI editor. It provides a visual edition of UI written in Java. The new UI programming paradigm in Declarative UI becomes more and more popular, particularly in Web development. [http://wiki.eclipse.org/e4 e4] schedules to provide a declarative UI. [http://wiki.eclipse.org/E4/DeclarativeUI/XWT XWT] is a candidate of this solution, which is already accessible in e4 distribution.<br />
The purpose of this project is to provide the visual edition of XWT on top of [http://www.eclipse.org/vep VE]. <br />
| Yves YANG<br />
| [http://wiki.eclipse.org/User:yves.yang.soyatec.com Yves YANG].<br />
| None<br />
|<br />
|-<br />
| JavaScript support in [http://wiki.eclipse.org/E4/DeclarativeUI/XWT e4 XWT] <br />
| [http://wiki.eclipse.org/E4/DeclarativeUI/XWT e4 XWT]<br />
| [http://wiki.eclipse.org/E4/DeclarativeUI/XWT XWT] is a XML-based declarative UI designed for eclipse. It is a candidate of this solution in [http://wiki.eclipse.org/e4 e4], which is already accessible in e4 distribution. <br />
The purpose of this project is to provide a JavaScript programming support in [http://wiki.eclipse.org/E4/DeclarativeUI/XWT e4 XWT]. <br />
| Yves YANG<br />
| [http://wiki.eclipse.org/User:yves.yang.soyatec.com Yves YANG].<br />
| None<br />
|<br />
|-<br />
| Binary serialization of [http://wiki.eclipse.org/E4/DeclarativeUI/XWT e4 XWT] <br />
| [http://wiki.eclipse.org/E4/DeclarativeUI/XWT e4 XWT]<br />
| [http://wiki.eclipse.org/E4/DeclarativeUI/XWT XWT] is a XML-based declarative UI designed for eclipse. It is a candidate of this solution in [http://wiki.eclipse.org/e4 e4], which is already accessible in e4 distribution. <br />
The purpose of this project is to provide a binary serialization mechanism to minimize the footprint and to increase the performance loading. <br />
| Yves YANG<br />
| [http://wiki.eclipse.org/User:yves.yang.soyatec.com Yves YANG].<br />
| None<br />
|<br />
|-<br />
| PMF interactive editor <br />
| [http://www.eclipse.org/proposals/pmf/ PMF]<br />
| [http://www.eclipse.org/proposals/pmf/ PMF] is a Modeling solution for UI. It provides an infrastructure to drive the business model to transform or generate UI presentation on top of the specific UI framework such as [http://wiki.eclipse.org/E4/DeclarativeUI/XWT e4 XWT].<br />
The purpose of this project is to develop a tree-based advanced editor to simplify the UI modeling. It should be an extension EMF editor. <br />
| Yves YANG<br />
| [http://wiki.eclipse.org/User:yves.yang.soyatec.com Yves YANG].<br />
| None<br />
|<br />
|-<br />
| Graphical user interface and other refactoring features for [https://bugs.eclipse.org/bugs/show_bug.cgi?id=200152 Convert Constants to Enum] refactoring plugin.<br />
| [https://bugs.eclipse.org/bugs/show_bug.cgi?id=200152 Convert Constants to Enum]<br />
| Java 1.5 introduces several new features that offer significant improvements over older Java technology, e.g., the new enum construct, which provides language support for enumerated types. Prior to Java 1.5, programmers needed to employ various patterns (e.g., static final int ...) to compensate for the absence of enumerated types in Java. Unfortunately, these compensation patterns lack several highly-desirable properties of the enum construct, most notably, type safety. The ''Convert Constants to Enum'' refactoring for Eclipse is a research prototype plugin that provides an automated approach for transforming legacy Java code to use the new enumeration construct. The semantics-preserving tool increases type safety, produces code that is easier to comprehend, removes unnecessary complexity, and eliminates brittleness problems due to separate compilation. <br />
The current status of the plugin can be found at bug [https://bugs.eclipse.org/bugs/show_bug.cgi?id=200152 200152]. There are several facets currently lacking from the plugin which are obstacles to wide distribution, namely, a graphical user interface, test suite, conformance with other refactoring plugins in Eclipse, e.g., undo functionality, refactoring history, refactoring preview pane.<br />
| Raffi Khatchadourian<br />
| [http://wiki.eclipse.org/User:Khatchad.cse.ohio-state.edu Raffi Khatchadourian].<br />
| <br />
| [mailto:binadpatel@gmail.com Bina Patel] from Ohio State University<br />
|-}<br />
<br />
<br />
<br />
Old ideas can be found at [[Google Summer of Code 2007 Ideas|Google Summer of Code 2007 ideas]] and [[Google Summer of Code 2008 Ideas|Google Summer of Code 2008 ideas]].</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=User:Pombredanne.nexb.com&diff=146511User:Pombredanne.nexb.com2009-03-26T20:19:11Z<p>Pombredanne.nexb.com: </p>
<hr />
<div>I am the co-admin for the Soc project at Eclipse, and committer and helper on a few project at eclipse and outside.</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=Google_Summer_of_Code_2009_Ideas&diff=146486Google Summer of Code 2009 Ideas2009-03-26T16:56:30Z<p>Pombredanne.nexb.com: </p>
<hr />
<div>== Rules ==<br />
* Be creative<br />
* Be specific: what do you want to be implemented<br />
* If you are willing to mentors those ideas, add your name and email to the idea.<br />
* It is ok to have a project idea without parent project<br />
* If you're an interested student, add your name and email next to the idea. It is ok to have several students interested by one idea.<br />
<br />
== Ideas ==<br />
<br />
{| border=&quot;1&quot; cellpadding=&quot;2&quot; width=&quot;100%&quot;<br />
!width=&quot;20%&quot;|Title<br />
!width=&quot;5%&quot; align=&quot;center&quot;|Project<br />
!width=&quot;40%&quot;|Abstract - links to details/bugs/etc<br />
!width=&quot;10%&quot;|Reporter<br />
!width=&quot;10%&quot;|Possible mentor(s)<br />
!width=&quot;15%&quot;|Comments<br />
!width=&quot;10%&quot;|Potential student(s)<br />
|-<br />
| Your project title here e.g. Cure world hunger<br />
| Your project link here e.g. [http://www.eclipse.org/soc SoC]<br />
| Your project description here. Be as precise and specific as possible. Link to bugs...<br />
| Your name here<br />
| Your Prospective mentors here (If you're an eclipse committer + the reporter, you should leave your name here too!<br />
| Your additional comments<br />
| &lt;br&gt;<br />
|-<br />
| PDE Menage A Trois<br />
| [http://www.eclipse.org/pde PDE]<br />
| The goal of this project is to update PDE to use EMF and Databinding under the covers. In PDE, we have a lot of models and editors backed by custom code that has shown its age and is difficult to maintain. This is an opportunity to modernize PDE and make it more extensible.<br />
| &lt;interested student here&gt;<br />
| Chris Aniszczyk, Benjamin Cabé<br />
| None<br />
| &lt;br&gt;<br />
|-<br />
| Write Eclipse plug-ins in PHP<br />
| [[e4/Languages]]<br />
| Leverage one of existing PHP/Java bridges for adding a PHP support into [[e4]]<br />
| Michael Spector<br />
| [http://wiki.eclipse.org/User:Mspector Michael Spector]<br />
| None<br />
| [mailto:wcandillon@gmail.com William Candillon].[mailto:zachhabersang@gmail.com Zach Habersang] from Texas A&amp;M Univ., USA<br />
|-<br />
| Write Eclipse plug-ins in Python or Jython<br />
| [[e4/Languages]]<br />
| Leverage one of existing Python/Java bridges or Jython (which now supports Python 2.5x) to add Python support into [[e4]]. Ideally this would include a guide to do it step by step in the current version of Eclipse, glue code and plugins to support Python bundles, a sample application and possibly some wizards and add-ons to PDE to make the experience smooth.<br />
| Philippe Ombredanne<br />
| [http://wiki.eclipse.org/User:Pombredanne.nexb.com Philippe Ombredanne]<br />
| None<br />
| <br />
|-<br />
| Rewrite PHP grammar in [http://www.antlr.org ANTLR]<br />
| [[PDT]]<br />
| Reasons: &lt;ul&gt;&lt;li&gt;ANTLR is more robust than JavaCUP&lt;/li&gt;&lt;li&gt;It has great [http://www.antlr.org/works/index.html editing/debugging tools]&lt;/li&gt;&lt;li&gt;It's supported by a community&lt;/li&gt;&lt;/ul&gt;<br />
| Michael Spector<br />
| [http://wiki.eclipse.org/User:Mspector Michael Spector]<br />
| None<br />
| [mailto:zachhabersang@gmail.com Zach Habersang] from Texas A&amp;M Univ., USA [mailto:dustin.xu@gmail.com Renjie Xu] from University of San Francisco., USA<br />
|-<br />
| Ant buildfile refactorings<br />
| [http://www.eclipse.org/eclipse/ant/ Platform Ant]<br />
| Ant buildfiles can become large and complex and would benefit from refactoring. Currently there is no support beyond renaming within a buildfile to allow the developer to efficiently refactor Ant buildfiles. The goals would be to implement an infrastructure to support refactorings in Ant buildfiles, participate in other components refactorings and provide a starter set of Ant buildfile refactorings. See [https://bugs.eclipse.org/bugs/show_bug.cgi?id=89938 bug 89938] for some initial buildfile refactoring ideas.<br />
| Darin Swanson<br />
| [mailto:Darin_Swanson@us.ibm.com Darin Swanson]<br />
| None<br />
| [mailto:allenchue@gmail.com Yin Qiu] from Nanjing Univ., China &lt;br/&gt;[mailto:st.shadow.by@gmail.com St.Shadow] from BSUIR., Belarus<br />
|-<br />
| XSLT Refactorings<br />
| [http://www.eclipse.org/webtools/incubator/ Webtools XSL Tools]<br />
| XSL Tools provides editing and debugging support. Currently there is no refactoring support for XSLT 1.0 or XSLT 2.0 stylesheets. Refactorings could include Extract Template, Extract Call Template, etc. Refactorings should participate with the platform refactoring framework.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| None<br />
| &lt;br&gt;<br />
|-<br />
| External XSLT Transformations<br />
| [http://www.eclipse.org/webtools/incubator/ Webtools XSL Tools]<br />
| Implement a configuration option and launching ability for non java XSLT processors. Particularly add support so that xsltproc could be used as a processor. {{bug|245743}}<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| None<br />
| &lt;br&gt;<br />
|-<br />
| XQuery/XPath Parser<br />
| [http://www.eclipse.org/webtools/incubator/ Webtools XQuery]<br />
| Currently the XQuery Development Tools is using an Antlr xpath parser from the XQPretty project. However this does not currently integrate well with the editor, and a javacc implementation that expands the current XML javacc parser would be ideal. This would leverage and hook into the existing parsing framework for the Structured Source Editor and provide identification of Regions and Partitions for the editor. A bonus would be to have validation of the XQuery syntax as well. See {{bug|226245}} for more information in regards to the XPath 2.0 support. <br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| None<br />
| [mailto:jin.phd@gmail.com Jin Mingjian], Chinese Academy of Sciences, China<br />
|-<br />
| VEX (Visual Editor for XML) Multipage Editor support<br />
| [http://www.eclipse.org/webtools/incubator/ Webtools VEX]<br />
| VEX supports the visual editing in a word processor like feel of a variety of XML formats. With the use of CSS stylesheets for the XML, it can render a WYSIWYG presentation. VEX currently does not have a working Multipage Editor..meaning that switching from the Design view to a source view, the XML is not shown in the source view and not synchronized. The model is EMF based, and the XML editor from WTP is DOM based, this project would leverage the EMF2SSEDOM framework for providing the synchronization between the two. The project is also open to other alternatives, and will allow the candidate wide latitude in experimentation of ways to implement the synchronization.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| None<br />
| [mailto:cbingiel@gmail.com Chelsea Bingiel], University of Chicago<br />
|-<br />
| RelaxNG Validator<br />
| [http://www.eclipse.org/webtools/incubator/ Webtools Incubator]<br />
| RelaxNG is an alternative schema language to the more widely known XML Schemas and DTDs. This project would implement RelaxNG valadition using the WTP validation framework. This should allow for both the as you type validation, as well as batch validation.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| None<br />
| &lt;br&gt;<br />
|-<br />
| RelaxNG Editor<br />
| [http://www.eclipse.org/webtools/incubator/ Webtools Incubator]<br />
| Implement a full featured editor for the RelaxNG compact syntax, with optional editing of the RelaxNG XML syntax as well. Should offer syntax highlighting, content assistance, validation against the relaxng specification, file wizards, preference pages, etc. Ideally built off and leverages the Structured Source Editor from WTP.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| None<br />
| &lt;br&gt;<br />
|-<br />
| VEX - Docbook 5 support<br />
| [http://www.eclipse.org/webtools/incubator/ Webtools VEX]<br />
| Implement a set of CSS stylesheets and appropriate outline views and enhancements for DocBook 5 features. This may require enhancements to the VEX model to support XML Namespaces, and displaying of images. DocBook 4.5 and Simplified Docbook 1.0 are currently supported, and can be used as a basis to provide Docbook 5 support.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| None<br />
| [mailto:cbingiel@gmail.com Chelsea Bingiel], University of Chicago<br />
|-<br />
| XSLT 2.0 content assistance<br />
| [http://www.eclipse.org/webtools/incubator/ Webtools XSL Tools]<br />
| XSL Tools provides good support for the XSLT 1.0 specification in the way of content assistance. It however does not provide support for some more advance features in XSLT 2.0 like custom functions, and content assistance for these features. Custom functions can be written in xslt 2.0, and then used within the stylesheet within XPath expressions. This allows for the generation of reuseable libraries like FXSL, to be created entirely in XSLT 2.0.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| None<br />
| [mailto:wellington.bengtson@gmail.com Wellington Bengtson], Institut National des Sciences Appliquées de Rouen<br />
|-<br />
| API Tooling for the Extension Registry<br />
| [http://www.eclipse.org/pde PDE]<br />
| The goal of this project is to add support to API Tools to work with the extension registry. For example, there are things in extensions that can be considered API. For example, the id of a view can be referenced by anyone. This should be considered API and changing it has the potential of breaking downstream clients. <br />
| &lt;interested student here&gt;<br />
| Chris Aniszczyk, Darin Wright<br />
| None<br />
| &lt;br&gt;<br />
|-<br />
| ECF connections for JDBC and DTP<br />
| [http://www.eclipse.org/datatools]<br />
| We'd like to find a way to bridge the gap between DTP and ECF to find a way to use a shared connection framework in E4. The idea would be to have an ECF connection for JDBC (would require jdbc url, jar list, uid/pwd, and any other properties) that could then be used to get the raw JDBC connection to be used in DTP...<br />
| &lt;interested student here&gt;<br />
| Brian Fitzpatrick, Scott Lewis<br />
| Brian Fitzpatrick (brianf@sybase.com)<br />
| &lt;br&gt;<br />
|-<br />
| JWT View Editor<br />
| [http://www.eclipse.org/jwt JWT]<br />
| With JWT processes can be modeled in different views: a business view which is more abstract (e.g. in BPMN) or a technical view which includes much more execution details (e.g. using UML activity diagrams with extensions). In order to configure these views, we developed a [https://bugs.eclipse.org/bugs/show_bug.cgi?id=249437 view editor]. But this view editor is currently only usable for the core metamodel. In the meanwhile we developed an [http://wiki.eclipse.org/JWT_Metamodel_Extension aspect-oriented mechanism] for vendors to extend the metamodel with their specific details. These aspects need to be considered in the views, but are currently neglected. This project shall extend the existing JWT view editor and adapt the views to the aspects.<br />
| Florian Lautenbacher<br />
| [mailto:lautenbacher@ds-lab.org Florian Lautenbacher]<br />
| -<br />
| [mailto:melanie@hesselbart.de Melanie Hesselbart], University of Augsburg, Germany<br />
|-<br />
| XPath 2.0 W3C Test Suite<br />
| [http://www.eclipse.org/webtools/incubator XSL Tools]<br />
| XSL Tools received a code contribution from the author of the PsychoPath XPath 2.0 java processor. This was developed before the finalized spec so is based on a draft version of the specification. The W3C has created a test suite that implementors of XPath 2.0 can use to verify their implementations. This project would help implement the test suite, identify, and provide patches for the XPath 2.0 processor so that it passes the tests. This is currently tracked in {{bug|262765}}.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| -<br />
| [mailto:jin.phd@gmail.com Jin Mingjian], Chinese Academy of Sciences, China<br />
|-<br />
| Objective-C first class IDE<br />
| <br />
| Extend CDT to provide a great IDE for Objectivce-C language, see [http://alblue.blogspot.com/2009/02/objectiveclipse.html blog entry] and {{bug|68083}}<br />
| Mariot Chauvin<br />
| Alex Blewitt or Doug Schaefer<br />
| -<br />
| [mailto:rsisnett@gmail.com Ricardo Sisnett], Instituto Tecnológico de Monterrey, Mexico<br />
| &lt;br&gt;<br />
|-<br />
| 3D visualization of model differences<br />
| [http://www.eclipse.org/modeling/emft/?project=compare EMF Compare]<br />
| Thanks to GEF3D and EMF Compare, it's now possible to display diagrams, <br />
compare the semantic model, and show the differences through a 3D <br />
representation. This project is about integrating those tools and <br />
experimenting with such visualization (one can easily imagine a &quot;Time <br />
Machine&quot;-like view for his diagrams.<br />
| Cédric Brun<br />
| [mailto:cedric.brun@obeo.fr Cédric Brun]<br />
| <br />
| &lt;br&gt;<br />
|-<br />
| Huge Model Comparison<br />
| [http://www.eclipse.org/modeling/emft/?project=compare EMF Compare]<br />
| EMF Compare uses an heuristic-based algorithm to compare two models, while <br />
doing so its keeping processing data in memory (more important the models are, <br />
more memory is used). This project is about leveraging CDO and writing another <br />
implementation of match algorithm to be able to compare any size of model, <br />
even ones with millions of elements.<br />
| Cédric Brun<br />
| [mailto:cedric.brun@obeo.fr Cédric Brun]<br />
| <br />
| &lt;br&gt;<br />
|-<br />
| Improve graphical comparison<br />
| [http://www.eclipse.org/modeling/emft/?project=compare EMF Compare]<br />
| A first implementation of graphical comparison has been done, see https://bugs.eclipse.org/bugs/show_bug.cgi?id=241385.<br />
Several enhancements could be made, such as supporting diagrams with images. <br />
| Mariot Chauvin<br />
| [mailto:cedric.brun@obeo.fr Cédric Brun]<br />
| <br />
| &lt;br&gt;<br />
|-<br />
| ProtocolBuffer EMF Serialization<br />
| [http://www.eclipse.org/modeling/emf/ EMF]<br />
| ProtocolBuffer is binary serialization API which is smaller and faster than XML.<br />
It would be interesting to be able to serialize EMF models with it.See http://code.google.com/intl/fr/apis/protocolbuffers/<br />
| Mariot Chauvin<br />
| To be defined<br />
| <br />
| [mailto:dalvac@gmail.com Diego Alvarez Araujo Correia] - From Instituto Tecnológico de Aeronáutica - ITA, Brazil.<br />
|-<br />
| Acceleo and ATL Combine<br />
| [http://www.eclipse.org/modeling/m2t/?project=acceleo Acceleo]<br />
| Study possibility to call model to model transformations from model to text transformations and inversely without high coupling between the two.<br />
| Mariot Chauvin<br />
| To be defined<br />
| <br />
| &lt;br&gt;<br />
|-<br />
| Index search for Java EE metadata<br />
| [http://www.eclipse.org/webtools/jee/ WTP Java EE Tools]<br />
| Bugzilla: [https://bugs.eclipse.org/233505 233505]<br />
<br />
;Pain point<br />
<br />
Working on huge projects is a common task for many Java EE developers. Sooner or later the developer would fall in a situation where he or she needs to find an exact Java EE artifact by just remembering a portion of the artifact's name or description, but not the its exact location. In such situation the developer should try different methods of searching, including file search, full-text search, etc. It would be much more convenient if the IDE provides a Java EE metadata search. <br />
<br />
;Solution<br />
<br />
We are all familiar with the ''Open Type'' and ''Open Resource'' index searches in the workbench and how useful they are when we try to quickly locate our files and Java classes in the huge projects we are working with. The Java EE perspective should naturally evolve these features to Java EE metadata index search, where developers can search for certain metadata in their Java EE projects. <br />
<br />
This new feature should introduce new dialog box that looks similar to the ''Open Type'' and ''Open Resource'' dialogs. There should be a hotkey combination available that enables users to quickly call the dialog. Typing a portion of the Java EE metadata name or description should filter the available Java EE artifacts and assist the user choice. <br />
<br />
Examples for Java EE metadata are:<br />
* EJB beans<br />
* Web servlets<br />
* EJB references<br />
* Security roles<br />
<br />
There is a new Eclipse project proposed - [http://www.eclipse.org/proposals/emf-index/ EMF Index] - that could help with the realization of this idea. <br />
| Kaloyan Raev<br />
| [mailto:kaloyan.raev@sap.com Kaloyan Raev]<br />
| None<br />
| [mailto:dimpata@gmail.com Georgi Dimitrov] from the University of Sofia, Bulgaria<br />
<br />
[mailto:sajith.vim@gmail.com Sajith Vimukthi]<br />
|-<br />
| Embed OpenEJB in J2EE Preview server adapter<br />
| [http://www.eclipse.org/webtools/server/ WTP Server Tools]<br />
| Currently the J2EE Preview adapter, that ships with WTP, utilizes the embedded Jetty server and makes possible for users to develop and run Web application without the need to install additional J2EE runtime and servers. <br />
<br />
It would be useful if an EJB container is embedded in the J2EE Preview adapter, too. This will make possible EJB development &quot;out of the box&quot; the same way as web development. <br />
<br />
There is a suitable embeddable EJB container - [http://openejb.apache.org/ OpenEJB]. There is a guide how to [http://openejb.apache.org/tomcat.html embed OpenEJB in Tomcat]. So, it should be possible to embed it in a similar way in the Jetty web container. <br />
<br />
In the end the J2EE Preview server adapter should be able to deploy and run WEB, EJB and EAR modules.<br />
<br />
| Kaloyan Raev<br />
| [mailto:kaloyan.raev@sap.com Kaloyan Raev]<br />
| None<br />
| [mailto:marcelo.dias@students.ic.unicamp.br Marcelo de Oliveira Dias] from the University of Campinas – UNICAMP, Brazil<br />
|-<br />
| Improve support for PostgreSQL in DTP Enablement<br />
| [http://www.eclipse.org/datatools/ Eclipse Datatools]<br />
| <br />
PostgreSQL support is minimal in DTP. Only connection profile is implemented, other needed functions are derived from Generic SQL support.<br />
<br />
Stundents job would be to implement PostgreSQL specific loaders and models and based on that the student should start implementing DDL generator.<br />
<br />
Brian Fitzpatrick has documented how to do some parts in his [http://fitzdtp.blogspot.com/ blog] that can be used<br />
<br />
| Ivar Meikas<br />
| [mailto:ivar@codehoop.com Ivar Meikas]<br />
| PostgreSQL is not the only database thats support could be improved, if the student knows some other database well and he wants to see in DTP he can implement that also.<br />
| &lt;br&gt;<br />
|-<br />
| DSL For Generating Zest Graphs<br />
| [http://www.eclipse.org/gef/zest/ Zest]<br />
| Zest currently provides an API for generating node-link diagrams (graphs), however, it doesn't contain any way for end users to construct their own views. Adding a DSL similar to GraphViz (DOT) would allow users to construct and render graphs on the fly. This could be accomplished by providing a language model in EMF or XText Grammar and through code generation (via JET or XPand, an equivalent Zest program could be generated).<br />
| Ian Bull<br />
| [mailto:irbull@eclipsesource.com Ian Bull]<br />
| None<br />
| [mailto:steeg@netcologne.de Fabian Steeg], University of Cologne, Germany<br />
|-<br />
| Debugging aid for p2 installation issues<br />
| [https://bugs.eclipse.org/bugs/show_bug.cgi?id=267275 Enhancement Request]<br />
| Debugging cases where features cannot be installed into Eclipse due to inability to reconcile requirements of existing features and the new features being installed is quite challenging. It would be useful to create a tool for capturing the details of the environment and what was being installed to aid in reporting problems. Once it is possible to generate these dumps, a graphical explorer tool that would allow the developers to trace the dependencies and see the problems would make it significantly easier to debug these problems.<br />
| <br />
| [mailto:pascal_rapicault@ca.ibm.com Pascal Rapicault]<br />
| <br />
| [mailto:mrjpiggott@gmail.com Matthew Piggott], University of Ottawa, Canada<br />
|-<br />
| Power-user p2 views<br />
| [[Equinox p2 User Interface]]<br />
| The current Eclipse p2 Update UI is targeted to both Eclipse SDK users and end-users of Eclipse-based products. Since the UI must support users with less knowledge than the typical Eclipse SDK user, the end result is a wizard-style (modal), task-based approach. Many power users, in particular Linux users, prefer a modeless, &quot;dashboard&quot; style of interaction. The current p2 &quot;Admin UI&quot; is targeted toward p2 developers who need to see every detail of the underlying p2 model objects. There is a need for something in between these two extremes. Users have mentioned Linux package management front ends such as [http://www.nongnu.org/synaptic/ Synaptic Package Manager] as appropriate UIs for this audience. If appropriate, this UI could replace the p2 admin UI, but it's not clear if that should be the goal.<br />
| Susan McCourt<br />
| [mailto:susan_franklin@us.ibm.com Susan McCourt]<br />
| <br />
| <br />
|-<br />
| CVS Search<br />
| [http://www.eclipse.org/eclipse/platform-cvs/ Platform CVS]<br />
| The aim of this project is to provide a facility that will allow for searching commit comments. The facility should be able to scan selected CVS project, find commits that match specific query and present them using the Compare Editor.<br />
| Christopher Daniel<br />
| [mailto:krzysztof_daniel@pl.ibm.com Christopher Daniel], [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Additional Tab in the Search Dialog will be created. More details soon.<br />
| [mailto:oka@itu.edu.tr Ali Ok], Istanbul Technical University, Turkey, &lt;br&gt;[mailto:nm.ricardo@gmail.com Ricardo N. Miranda], University of Campinas – UNICAMP, Brazil<br />
|-<br />
| Configurable &quot;link with editor&quot; using logical hierarchy model<br />
| [http://www.eclipse.org/webtools/jee/ WTP Java EE Tools]<br />
| Bugzilla: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=137086 137086]<br />
Initial bugzilla proposal. <br />
---<br />
&lt;p&gt;<br />
Customer explained how it would be nice to have a <br />
&quot;blue-arrows&quot; Toggle button feature parallel to the current <br />
&quot;Yellow-arrows&quot; Toggle button feature.Just like &quot;Yellow-Arrows&quot; <br />
button has the tooltip -- &quot;link open editors with Navigator <br />
contents&quot; , the &quot;blue-arrows&quot; feature can have the tool-tip <br />
&quot;Link open editors with current logical hierarchy view item&quot; <br />
&lt;/p&gt;<br />
&lt;p&gt;<br />
That feature will provide the following functionality : <br />
If the user clicks on an open editor , the focus in the project <br />
explorer will go back to the logical item in the hierarchy view <br />
under the Deployment descriptor (in its Sub-tree) rather than <br />
going to the file on the file-system in the &quot;ejbmodule&quot; - <br />
subtree (for eg. clicking EmpLocalhome.java in editor view <br />
should go to the &quot;EmpLocalHome&quot; logical entity being shown in <br />
the Deployment descriptor sub-tree. The Current &quot;yellow-arrows&quot; <br />
feature rather makes the focus go into the &quot;ejb module&quot; folder <br />
and focuses on the EmpLocalHome.java file itself. ) <br />
&lt;/p&gt; <br />
&lt;p&gt;<br />
If the above &quot;blue-arrows&quot; feature is made availalbe the <br />
developer never has to leave the Deployment descriptor subtree <br />
during the entire EJB project development work flow. Currently ,<br />
the &quot;yellow-arrows&quot; feature makes the focus go back into the <br />
&quot;ejbmodule&quot; folder containing the corresponding .java . In <br />
situations where the EJB project might contain 100's of EJB's <br />
inside them, &quot;ejbmodule&quot; might contain 1000's of files <br />
including the Deploy Code etc. The user then needs to scroll all<br />
the way up to the Deployment Descriptor sub-tree to go <br />
double-click and open any other logical view item ,say another <br />
Entity bean component (eg. LocalHome or home interface etc.) <br />
The customer complained that he ends up clicking on the <br />
&quot;collapse-all&quot; feature in this case there by losing the whole <br />
work-flow and then has to go back to the logical hierarchy view <br />
under the Deployment descriptor sub-tree to find a particular <br />
ejb component for editing.<br />
&lt;/p&gt;<br />
---<br />
<br />
This proposal opens the question for an extensible link with editor feature. There might be more then one model (eg resource model, Java EE model, WS model, Persistence Model) and the same editor could be linked to all the models. A solution is to make the whole link with editor very extensible with different models contributing to this extension. The models will have a priority and a shortcut could be defined to link with the next (by prio) model.<br />
<br />
Even thought the feature request is in Java EE tools the solution will probably involve an &quot;extensible part&quot; in the platform ui and an &quot;extension part&quot; in Java EE tools.<br />
<br />
| Kiril Mitov<br />
| [mailto:k.mitov@sap.com Kiril Mitov]<br />
| <br />
| &lt;br&gt;<br />
|-<br />
| Policy Derivation tool for STP Policy Editor + WS-Policy Awareness<br />
| [http://www.eclipse.org/stp/ Eclipse SOA Tools]<br />
| The main aim of this project is to provide integration of a policy derivation tool for WTP Policy Editor.Policy derivation tool is a component which basically reads a WS Compliant XML type message(ie:-SOAP) and derives single/multiple policies corresponding to the msg(It will be usefull in web services scenarios such as for clients to build a compatible policy reading the soap messages coming from the Service side if the web service itself don't wish to publish it's policies.. ).With the Integration of such a tool we could feed the derived policy instances to the editor itself and users can therefore edit the derived policy/policies to their liking (ie:- add, edit delete policy assertions) as policy editor supports rich functionality for such work. Among other objectives of the project are providing out the capability for correctly displaying standardized WS specs such that policy editor will be aware of different specs such as WS-SEC,WS-RM,MTOM,Addreesing,etc on the policy instances ,users are working on/ hoping to work on ,AND making Policy Editor compatible for other WS policy constructs that are currently not supported.. <br />
| Oisin Hurley<br />
| someone from STP<br />
| None<br />
| [mailto:mastershield2007@gmail.com U.S.Wickramasinghe] from The University of Moratuwa – Moratuwa, SriLanka<br />
|-<br />
-<br />
| ECF and Yahoo<br />
| [http://www.eclipse.org/ecf/ ECF]<br />
| Implement a EPL'd version of the Yahoo messaging protocol and than code an ECF provider implementation for that. The baseline goal of this project is to just implement messanging for Yahoo... things like file transfer can come later or if there's time.<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| [mailto:rjvranga@gmail.com Rajeev Sampath] from University of Moratuwa, Sri Lanka <br />
|-<br />
| AIM Provider<br />
| [http://www.eclipse.org/ecf ECF]<br />
| ECF allows messaging protocols to be plugged in as providers. AIM isn't currently supported. The student can choose to implement the AIM (OSCAR) protocol themselves, or wrap an existing Java library like JOscar.<br />
| Chris Aniszczyk, Remy Suen<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:remy.suen@gmail.com Remy Suen]<br />
|<br />
| [mailto:oka@itu.edu.tr Ali Ok], Istanbul Technical University, Turkey<br />
[mailto:liucong07@gmail.com Liu Cong], Beijing University of Aeronautics &amp; Astronautics, China<br />
|-<br />
| QQ Provider<br />
| [http://www.eclipse.org/ecf ECF]<br />
| ECF allows messaging protocols to be plugged in as providers. QQ isn't currently supported. The student can choose to implement the QQ protocol themselves, or wrap an existing Java library.<br />
| Chris Aniszczyk, Remy Suen<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:remy.suen@gmail.com Remy Suen]<br />
|<br />
|<br />
|-<br />
| VNC over ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Virtual Network Console is a popular screen sharing technology. It would be useful to have an implementation of VNC protocol for ECF. See [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01452.html mailing list entry by Marek Zawirski] for a more detailed description of idea.<br />
| Scott Lewis<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe<br />
| <br />
|<br />
|-<br />
| Google Calendar access using ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| [http://calendar.google.com Google Calendar] is a popular and open calendaring system. It would be useful to have an integrated ECF-based calendar for Eclipse. See [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01452.html mailing list entry by Marek Zawirski] for a more detailed description of idea.<br />
| Scott Lewis<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe, [mailto:codesurgeon@gmail.com Mustafa K. Isik]<br />
| <br />
| [mailto:st.shadow.by@gmail.com St.Shadow] from BSUIR., Belarus &lt;br&gt; [mailto:vipunreddy.n@gmail.com Arun Reddy] from BITS Pilani-Goa Campus, India<br />
|-<br />
| SIP VoIP implementation for ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| SIP is a popular signaling protocol, widely used for setting up VoIP calls with 2 or more participiants. This project aims to create working SIP/VoIP implementation, that will provide [http://wiki.eclipse.org/index.php/VOIP ECF Call API]. Implementation should allow VoIP calls using SIP from Eclipse and will make Eclipse a more functional softphone with an another protocol supported (already working implementations are jingle and Skype).<br />
| <br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe?<br />
| <br />
| <br />
|-<br />
| Further ECF and Mylyn integration<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Improvement of distributed development process is common goal of Mylyn and ECF projects. There have been [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01195.html some efforts] of integrating these projects. However, there are still some fields where integration could be further extended. This especially covers contacting easily with other developers when doing issue-oriented development with Mylyn. Goal of this project is to extend integration between Mylyn and ECF to allow easy task-oriented communication or task exchange.<br />
| <br />
| Remy Suen, Scott Lewis, Chris Aniszczyk, Markus Kuppe?<br />
| <br />
|<br />
|-<br />
| REST abstraction for ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Many service providers using a [http://en.wikipedia.org/wiki/Representational_State_Transfer REST] based API to offer developers access to their services, i.e. [http://apiwiki.twitter.com/ Twitter], [http://wiki.developers.facebook.com/index.php/Main_Page Facebook] and so on. The result of this is that some third parties provide Java based libraries which covers this API's. The ECF team played a little bit with the Twitter API and use therefore a library called [http://yusuke.homeip.net/twitter4j/en/index.html Twitter4J]. The disadvantage of this technique is a dependency to the third partie library. This means a ECF container based on such a library is dependend on the diversity of this.&lt;br&gt;<br />
To decouple these dependencies an own ECF based REST abstraction would be the best. Based on this many new ECF containers can be created easily without using any other libraries.<br />
| Scott Lewis, Holger Staudacher<br />
| Scott Lewis<br />
| <br />
| [mailto:holger.staudacher@gmail.com Holger Staudacher] from the [http://www.hs-furtwangen.de/ Hochschule Furtwangen University] – Furtwangen, Germany ; [mailto:srey.gandhi@gmail.com Sreyansh Gandhi] from Bannari Amman Institute, India<br />
|-<br />
| Sharing Snippets<br />
| [http://www.eclipse.org/ecf ECF]<br />
| A plugin using ECF to make snippet codes available on a snippet view/template view and in an organized way, snippets codes that comes from some &quot;place&quot;(CVS/SVN, Web Service, REST, HTTP, and others), and a way to share snippets from the eclipse editor, using ECF behind the scenes and maybe probably Equinox, OSGi Services.... For example, imagine that several snippets codes that there are on the SWT project available on a palette into the eclipse, or even several projects making important snippets code available into Eclipse, in ECF case for example code to create a container and etc. Maybe in this case the student can find some synergy with Eclipse Search feature with this &quot;Sharing Snippets&quot;.<br />
| Marcelo Mayworm<br />
| Marcelo Mayworm, Scott Lewis?<br />
| <br />
| [mailto:mrazec@gmail.com Mario Ponciano a.k.a Razec] - From Unianhanguera, Brazil.<br />
|-<br />
| Video Chat<br />
| [http://www.eclipse.org/ecf ECF]<br />
| The goal of this project is to provide a video chat over ECF, embedded on Eclipse in synergy with DocShare for real-time shared editing, using ECF provider mechanism to deliver screen capture video probably in SWF format (focus on the compact format and low bandwidth delivery) for a remote viewer.<br />
| Marcelo Mayworm<br />
| James Sugrue, Marcelo Mayworm, Scott Lewis?<br />
| <br />
|<br />
|-<br />
|-<br />
| Google Services<br />
| [http://www.eclipse.org/ecf ECF]<br />
| The goal of this project is create a specific Google provider. This can extend XMPP for chat, but should also provide functionality for the new Google Voice [http://news.cnet.com/8301-17939_109-10194446-2.html?part=rss&amp;subj=news&amp;tag=2547-1_3-0-20], including the transcription option.<br />
| James Sugrue <br />
| James Sugrue, Marcelo Mayworm, Scott Lewis?<br />
| <br />
|[mailto:nuwansam@gmail.com N.J. Samarasekera] from University of Moratuwa – Moratuwa, Sri Lanka<br />
|-<br />
|-<br />
| Integration of BPELUnit in Eclipse BPEL Designer <br />
| [http://www.eclipse.org/bpel BPEL Designer]<br />
| BPEL is an emerging standard for Web service compositions. Although BPEL processes are typically modeled by using graphical tools, the language is so powerful that testing is as necessary as for traditional programming languages. Apache ODE [http://ode.apache.org] is an open source BPEL engine, Eclipse offers a graphical BPEL editor [http://eclipse.org/bpel], and BPELUnit [http://www.bpelunit.net] is an open source testing framework, which provides means for mocking services and for calculating test coverage. However, they haven't been integrated yet.<br />
The goal of this project is, in conjunction with Project Apache ODE Integration in BPELUnit [http://wiki.apache.org/general/SummerOfCode2009], to provide a convenient, tightly integrated “unit testing environment” for BPEL processes in Eclipse / Apache ODE. For this particular piece, the UI portion of BPELUnit must be integrated into the Eclipse BPEL Designer to enable automatic unit testing directly from the modeling environment. To support the tester/developer better, a method for visualizing test coverage shall be developed and evaluated. For instance, it could be beneficial to mark executed activities in the graphical editor to display test coverage results.<br />
If the student is interested, it is possible to evaluate methods for automatic generation of Unit Test Data and to integrate them into BPELUnit.<br />
| Simon Moser <br />
| Simon Moser, Daniel Luebke (BPELUnit), Tammo van Lessen (Apache ODE)<br />
| <br />
| [mailto:chamibuddhika@gmail.com Chamith Buddhika] from University of Moratuwa, Sri Lanka<br />
|-<br />
|-<br />
| Distributed testing FW based on RFC 119 OSGi<br />
| [http://www.eclipse.org/ecf ECF]<br />
| The recent addition of remoting and discovery capabilities to OSGI R4.2 (RFC 119) enables us to easily set up a distributed system. Combined with the well known JUnit, a testing framework for distributed application can be build on top. This test fw can then be consumed by ECF directly (eat your own dogfood) to prove its usefulness. <br />
| Markus Alexander Kuppe<br />
| Scott Lewis?, Jan S. Rellermeyer?<br />
| None<br />
| [mailto:gsoc-djunit-app-2009@lemmster.de Markus Alexander Kuppe] from University of Hamburg, Germany<br />
|-<br />
| DSL and Model-Driven Generator for EclipseLink<br />
| [http://www.eclipse.org/eclipselink/ EclipseLink], [http://www.xtext.org Xtext], [http://wiki.eclipse.org/Xpand Xpand]<br />
| The goal of this project is to define a (textual) DSL for EclipseLink and create an Xpand-based code generator that generates best-practice EclipseLink code. The project will be mentored by two mentors (from Xtext/Xpand and EclipseLink) to ensure best-practice use of the technologies.<br />
| [mailto:peter.friese@itemis.com Peter Friese]<br />
| Peter Friese (Xtext, itemis), Douglas Clarke (EclipseLink, Oracle)<br />
| None<br />
| (Student name here)<br />
|-<br />
| Forms-based editors for Ecore models<br />
| [http://www.eclipse.org/modeling EMF]<br />
| Given any Ecore model, you can create a basic editor for this model. This editor, in conjunction with the properties panel, is quite functional, but not something you could integrate in your application without spending some time polishing it. would be great to have EMF generate a Forms-based Editor for a given Ecore model. See http://ekkes-corner.blogspot.com/2009/03/using-rcp-views-to-view-uml-diagrams.html for an example. Of course, it would even be cooler if we could dynamically build up UIs like that, but that's maybe a second step (or a second GSoC project).<br />
| [mailto:peter.friese@itemis.com Peter Friese]<br />
| [mailto:marcelop@ca.ibm.com Marcelo Paternostro] (EMF), [mailto:ed.merks@gmail.com Ed Merks] (EMF)<br />
| None<br />
| (Student name here)<br />
|-<br />
| Semantic Highlighting Editor for PHP Developers <br />
| [http://www.eclipse.org/pdt PDT]<br />
| Following the improvements done by the Web tools project ([https://bugs.eclipse.org/233505 233505]) on semantic highlighting, the PHP Source Editor can now set semantic rules for better coloring techniques that will improve its performance and functionality. For example, currently, all variables are highlighted in the same color. Although members / static / constants variables should be colored in separate colors just like the Java editor does.<br />
<br />
Each semantic rule should have a preference page which describes its rule color and functionality.<br />
| Roy Ganor<br />
| [mailto:roy@zend.com Roy Ganor]<br />
| None<br />
| [mailto:zhaozhongwei@eclipseworld.org Zhongwei Zhao] from the [http://210.46.97.15/ Heilongjiang University(china)]<br />
|-<br />
| A thin-client, web-based visual editor for Ecore models<br />
| [http://www.eclipse.org/modeling EMF]<br />
| The main idea is to expose a thin-client, web-based, visual editor for manipulating graph-like, Ecore-based models, as opposed to the SWT-based editor that lives inside of Eclipse. This is desirable, because a browser-based editor can go many places that Eclipse and SWT cannot go, like being embedded in a web page. There are many possible applications that could then be built using this technology, that would not otherwise be possible, for example a wiki for collaborating on models. I'd therefore like to propose a project that would be divided into two parts. <br />
<br />
The first part would be infrastructure-related, and would entail the following tasks:<br />
* Develop a concrete syntax layer that would be implemented using Open Web technologies, and could thus be purely browser-based.<br />
* Expose models based on Ecore so that they are remotely accessible via web services.<br />
* Bind the (client-side, browser-based) concrete syntax layer and the (server-side, Eclipse-based) abstract syntax layers together.<br />
<br />
The second part of the project might be to ensure that some existing formalisms based on EMF work well in the new editor. UML Class Diagrams seem like a good first target, and I believe it should be possible to reuse the work from the UML2 project directly here. I would also like to see a Finite State Machine/Statechart editor running in the browser. For an idea of what this might look like, please see the (very rough) prototype [http://jacobbeard.net/research/AToM3/sandbox/jbeard4/environment/trunk/main.xhtml#DChartsV3 here]. (Firefox 3+ only, at the moment).<br />
| [mailto:jbeard4@cs.mcgill.ca Jacob Beard]<br />
| [mailto:ed.merks@gmail.com Ed Merks] (EMF)<br />
| None<br />
| [mailto:jbeard4@cs.mcgill.ca Jacob Beard] from the [http://msdl.cs.mcgill.ca McGill University Modeling, Simulation, and Design Lab]<br />
|-<br />
| Towards a Web-based IDE with RAP<br />
| [RAP]<br />
| RAP offers almost single-source support for building RCPs that can be used both as destkop and web-based applications. However there are some areas that would need enhancement to be able create a fully-web based IDE type application. One area is the support for text editing and comparison (eclipse.text and eclipse.compare). Getting properly working read-only editors would be a great start, and is not trivial since those core bundles make heavy use of the GC. Another area is to support multi-users workspaces or something similar where many web based users access the tool, which would be needed too. Some work exists at Mozilla with bespin that could be either source of inspiration or integration too. Several project could be built to help grw RAP support towards a fully web-based IDE.<br />
| Philippe Ombredanne<br />
| [http://wiki.eclipse.org/User:Pombredanne.nexb.com Philippe Ombredanne] We need some RAP committers to mentor, co-mentor.<br />
| None<br />
|-<br />
| A Online Judge Plugin to ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Online judges are getting a lot of acceptance and response worldwide these days. Primarily, An Online judge is something which'll accept a piece of code (sent Online), compile and execute it and run it against a set of test cases to verify the correctness of the program. Not only this, but an Online Judge also calculates other details such as Memory taken, Time of execution, Size of the Source code and so on. These judges are mostly used for conducting programming matches among a group of passionate people. But it can still be tweaked to do a lot of other stuffs. An online Judge can be used in a classrooms and make programming more exciting. It can be also use to teach basic programming concepts and carefully modified for it. In addition to this, the online judge is implmented in a group chat environment (On jabber servers). This would enhance the interaction and further increase the excitement.<br />
This project will add an Online Judge feature. Any one in the world can host an online competition/ programming session/ share codes online etc.<br />
| [mailto:da.comp.guy@gmail.com Souvik Roy] from [http://www.sastra.edu Sastra University, India]<br />
| <br />
|<br />
| [mailto:da.comp.guy@gmail.com Souvik Roy] from [http://www.sastra.edu Sastra University, India]<br />
|-}<br />
<br />
Old ideas can be found at [[Google Summer of Code 2007 Ideas|Google Summer of Code 2007 ideas]] and [[Google Summer of Code 2008 Ideas|Google Summer of Code 2008 ideas]].</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=User:Pombredanne.nexb.com&diff=146485User:Pombredanne.nexb.com2009-03-26T16:49:07Z<p>Pombredanne.nexb.com: New page: I am the co-admin for the Soc project at Eclipse, and committer and helper on a few project at eclipse adn outside.</p>
<hr />
<div>I am the co-admin for the Soc project at Eclipse, and committer and helper on a few project at eclipse adn outside.</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=EclipseDay_At_Googleplex/Session_Abstacts&diff=106975EclipseDay At Googleplex/Session Abstacts2008-06-25T20:07:29Z<p>Pombredanne.nexb.com: /* Building Great RIA with ATF */ Added presentation material</p>
<hr />
<div>=====Building Great RIA with ATF=====<br />
'''Philippe Ombredanne, [http://nexb.com nexB] and [http://easyeclipse.org EasyEclipse]''&lt;br&gt;<br />
(download presentation in OO and PDF formats: [[Image:Eclipse-google-day2008-atf.zip]]) &lt;br&gt;<br />
The Eclipse Ajax Tooling Framework (ATF) provide the tools developers need to build JavaScript intensive and Ajax applications. <br />
ATF provides advanced tools such as JavaScript in-browser debugging, live DOM inspection, XMLHTTPRequest monitoring and Ajax libraries support. Of course ATF also provides comprehensive JavaScript editing and integration with Eclipse Web Tools.&lt;br&gt;<br />
&lt;br&gt;<br />
This presentation will show how you can use the ATF Javascript editor and debugger to build RIA with different Ajax runtimes, such as Dojo and Rico:<br />
* Support for coding a JavaScript intensive application<br />
* Integrate new Ajax libraries,<br />
* Use the in-browser JavaScript debugger and introspection capabilities to fine tune your code; additional take-aways include:<br />
** An overview of extensions and integration opportunities for tools builders (Firefox browser widget component, debugger extension for DSL, etc.)<br />
** A review of the project features roadmap including WYSIWYG editing capabilities and support for in-browser debugging with IE or Webkit<br />
&lt;br&gt;<br />
<br />
=====What's New in CDT Ganymede=====<br />
'''Sergey Prigogin, Google'''&lt;br&gt;<br />
<br />
CDT Ganymede (a.k.a. 5.0) will be released by the end of June. This tech talk will introduce new features in CDT 5.0 and the most important bugs fixed in this release.<br />
&lt;br&gt;&lt;br&gt;<br />
<br />
=====Wiring Hacker Synapses: Collaborative Coding and Team Tooling in Eclipse=====<br />
'''Scott Lewis, Composent'''&lt;br&gt;<br />
'''[http://codesurgeonblog.com Mustafa K. Isik]'''&lt;br&gt;<br />
ECF is a communication framework and an increasing set of integrated tools. ECF provides APIs useful for the development of <br />
Equinox-based servers, RCP applications, and Eclipse-based development tools. The provider architecture supports the use of existing communications services, such as Google Talk and UI integration with web-based services, and other Eclipse-based tools. For example, for the upcoming Ganymede release, ECF is working on real-time shared editing of source code to support distributed team use cases like code reviews and collaborative debugging.<br />
&lt;br&gt;&lt;br&gt;<br />
<br />
=====Introduction to Equinox and OSGi=====<br />
'''Alex Alves, BEA Systems/Oracle'''&lt;br&gt;<br />
<br />
Equinox is the core runtime platform for Eclipse. It is also an implementation of the OSGi specification. This session will introduce the key concepts of OSGi and show how you can build server applications using Equinox components, including Spring-DM for assembly and configuration.<br />
<br />
''About Alexandre Alves''&lt;br&gt;<br />
Alex Alves is a computer scientist at BEA Systems/Oracle. Alex has worked with technologies such as real-time, CORBA, JEE, Web Services and OSGi for the past decade. He is currently the Architect for WebLogic Event Server, a light-weight application-server specific for event processing.<br />
&lt;br&gt;&lt;br&gt;<br />
<br />
=====Tools Make the Difference: GWT in Eclipse=====<br />
'''Bruce Johnson, Google'''&lt;br&gt;<br />
<br />
Building high-performance Ajax easily with Google Web Toolkit (GWT) in Eclipse has always been possible, but soon it will be downright easy. Bruce will present GWT's upcoming Eclipse plugin that helps novices get started and lets experts fly.<br />
&lt;br&gt;&lt;br&gt;<br />
<br />
=====Android's Eclipse Toolset=====<br />
'''Xavier Ducrohet, Google'''&lt;br&gt;<br />
<br />
An important and often overlooked part of creating a development platform is to provide a good tool suite. Android comes with high-quality tools integrated with Eclipse. Xavier will present these tools and discuss some of the things that were discovered while creating them.<br />
&lt;br&gt;&lt;br&gt;<br />
<br />
=====How Mylyn Changes the Way I Develop=====<br />
'''Bjorn Freeman-Benson, Eclipse Foundation'''&lt;br&gt;<br />
<br />
Mylyn is an Eclipse project that gives tasks first-class status in the developer workspace. In this presentation Bjorn will show how task focused programming simplifies his (developer) life. Mylyn makes it easier for him to maintain focus while switching between tasks and to collaborate on tasks with geographically and time-zone disparate developers. Fair warning though: once you've started using Mylyn, you never want to return to the old ways.<br />
<br />
''About Bjorn Freeman-Benson:''&lt;br&gt;<br />
Bjorn is the Director for Committer Community at the Eclipse Foundation, a position that is tailor-made for someone with his keen interest and experience in building high-quality software with geographically distributed teams. He has dabbled in applications and user interfaces, but returns, like the swallows to San Juan Capistrano, to his three foci: hardware, software and process (embedded devices, programming languages and software engineering). Bjorn has worked for OTI, Amazon.com, Rational and Gemstone, along with a career as a university professor. He has an M.Sc. and a Ph.D. in Computer Science from the University of Washington, and is happy to talk at length about his passion for orienteering and/or his love of flying.<br />
&lt;br&gt;&lt;br&gt;<br />
<br />
=====Plug-in Development Tips and Tricks=====<br />
'''[http://mea-bloga.blogspot.com Chris Aniszczyk], Code9'''&lt;br&gt;<br />
<br />
Plug-ins are everywhere in Eclipse so come learn about how to develop them! Depending on the audience, for the first half of the talk, I will discuss what a plug-in is and what tooling is provided around developing plug-ins. For the second half, I will discuss tips and tricks that can save you time in developing plug-ins and will also talk about some lesser known, but extremely useful, parts of PDE.<br />
&lt;br&gt;&lt;br&gt;<br />
<br />
''About Chris Aniszczyk:''&lt;br&gt;<br />
Chris Aniszczyk is the technical lead for the Plug-in Development Environment ([http://www.eclipse.org/pde PDE]) project at Eclipse. Chris also commits on various other Eclipse projects, has the honor to represent the committers on the Eclipse Board of Directors and sits on the Eclipse Architecture Council. Chris's passions are [http://mea-bloga.blogspot.com blogging], software advocacy, tooling and anything Eclipse. He's always available to discuss open-source or Eclipse over a frosty beverage.<br />
&lt;br&gt;&lt;br&gt;<br />
<br />
=====Eclipse @ eBay (talk for all attendees, no voting required)=====<br />
'''Michael Galpin, eBay'''&lt;br&gt;<br />
<br />
Eclipse is great for Java development. Eclipse is great for web development. Eclipse is great for Java web development. The list goes on, but as your business becomes bigger, more specialized and more demanding, chances are that you won't find exactly what you need on that list. So what do you turn to? Eclipse. See how eBay uses the Eclipse you know and love, but also builds on top of it to handle its unique challenges. <br />
<br />
''About Michael Galpin:''&lt;br&gt;<br />
Michael Galpin is an architect at eBay. He has worked on various projects in the past including eBay Neighborhoods, the next generation of My eBay, as well as eBay's own web development framework, V4. He also is a frequent writer for IBM developerWorks, TheServerSide.com, and the Java Developer's Journal. He has been programming professionally for 10+ years and holds a degree in mathematics from the California Institute of Technology.<br />
&lt;br&gt;&lt;br&gt;</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=File:Eclipse-google-day2008-atf.zip&diff=106960File:Eclipse-google-day2008-atf.zip2008-06-25T19:25:55Z<p>Pombredanne.nexb.com: Presentation in PDF and OO format</p>
<hr />
<div>Presentation in PDF and OO format</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=EGit/Proposal&diff=90194EGit/Proposal2008-04-01T20:08:40Z<p>Pombredanne.nexb.com: /* Introduction */</p>
<hr />
<div>= THIS IS A DRAFT, WORK IN PROGRESS PROPOSAL, NOT AN ACTUAL OFFICIAL ECLIPSE PROJECT PROPOSAL YET =<br />
<br />
<br />
The EGIT project is a proposed open source project under the Eclipse Technology Project.<br />
<br />
According to the [http://www.eclipse.org/projects/dev_process/ Eclipse Development Process], this proposal is intended to declare the intent and scope of the EGit project as well as to gather input from the Eclipse community. You are invited to comment on and/or join the project. Please send all feedback to the http://www.eclipse.org/newsportal/thread.php?group=eclipse.technology.egit newsgroup.<br />
<br />
= Background =<br />
(TODO: Shawn: we need to put some intro to present the domain and benefits of DVCS)<br />
Traditional source code version control systems .....<br />
<br />
= Introduction =<br />
EGIT is an Eclipse Team provider for Git (a.k.a. &quot;Stupid Content Tracker&quot;, http://git.or.cz).<br />
<br />
Git is the version control system originally developed for the Linux kernel by Linus Torvalds. One of the Git strength is its ability to support distributed version tracking as well as more centralized schemes, in contrast with traditional SCM that offer only a centralized model (such as CVS and Subversion) . Git is also very fast.<br />
Git usage has evolved beyond the Linux kernel team and is now used by many other projects -- both for open source and commercial development -- as a fast and distributed general purposeSource Code Management (SCM) tool. <br />
<br />
Git is a distributed SCM, which means every developer has a full copy of all history of every revision of the code making queries against the history very fast and versatile. The storage model also means most operations are ten to a hundred times faster than with traditional centralized SCM such as CVS or Subversion. The integrity of the code is guaranteed through the use of secure hashes on the content and history, plus optional GPG/PGP key signing of tags.<br />
<br />
= Project Description =<br />
<br />
The Git team provider will provide the ability to do all everyday task in a Git work flow from inside Eclipse, integrated with the Eclipse Team framework, and providing new features specific to Git and distributed version control management.<br />
<br />
== Goal ==<br />
The goal of the EGit project is to:<br />
* implement an Eclipse Team provider for the Git SCM,<br />
* work towards the definitions of new Team extensions and GUI paradigms to better support distributed SCM in general.<br />
<br />
== Scope ==<br />
<br />
The project will implement Eclipse tooling for the JGit Java implementation of Git. <br />
Specific attention will be focused on performance. Performance is a big deal with Git. It affects what can be done by being so much faster. Things that couldn't be done because of time constraints are now possible. These things like very fast checkouts, branching, branch switching, merging, tagging, software archeology and synchronization. Merge speed is probably the most important feature.<br />
The EGit plugin meta data shall be fully compatible with the meta data created by the native Git version so both can be used on the same checkout out repository.<br />
<br />
Beyond the Git support implementation, the project will work towards defining new essential extensions to the Eclipse core platform Team framework to account for the specific issues and features provided by distributed version control systems.<br />
It is also our intent to reach out to other project that implement support for distributed SCM in Eclipse to collaborate and exchange in that domain.<br />
<br />
Finally, the implications of adopting a distributed SCM approach can bring significant benefits especially for large open source projects such as Eclipse and can help lower the barrier to entry for new contributors and source code experimentation easier.<br />
The project will try to be a fervent advocate of distributed SCM benefits to the Eclipse community.<br />
<br />
== Features ==<br />
* Initial project setup: Support to create new Git repositories.<br />
<br />
* Importing existing code: Existing local Git repositories as well as remote repository can be imported. Remote repositories are imported by &quot;cloning&quot; them resulting in a local copy.<br />
<br />
* Replicating repositories: It shall be possible to distribute local version to other repositories through &quot;push&quot; operations as well as patches distributed by electronic mail. Receiving content shall be possible by fetching content via the git supported protocols (raw, ssh and http based) and via e-mailed patches directly from mailboxes, files or clipboard. &quot;Bundles&quot; shall also be supported.<br />
<br />
* Quickdiff against any version shall be supported.<br />
<br />
* Comparing any versions shall be supported.<br />
<br />
* Producing git-format patches to the clipboard shall be supported.<br />
<br />
* Selective commit (using the Quickdiff markers) shall be supported<br />
<br />
* Merge shall be supported<br />
<br />
* Cherry picking shall be supported<br />
<br />
* Re-base of branches shall be supported. This includes splitting, reordering and squashing (alternate term not to be confused with the normal meaning of &quot;merge&quot; in SCM terminology).<br />
<br />
* Branch switching, committing, amending commits and reset shall be supported.<br />
<br />
* Partial checkouts (currently not a native Git feature) shall be possible.<br />
<br />
* Some form of synchronization with CVS or other SCM. At least export to CVS, like git cvsexportcommit. Ideally Git commits shall be exportable to a CVS repository with the same structure. CVS import is a much harder problem where no perfect solution exists.<br />
<br />
=== Perspective and Views ===<br />
* A Git perspective will be provided for browsing repositories before importing Git projects, pre-configured with available Team views and new EGit views.<br />
* History viewer: An history viewer with graphical presentation of history and access for compare editors will be developed as well as other views that may be useful for distributed SCM.<br />
* Repository browser : An explorer for examining Git repositories not connected to an eclipse project. Importing projects shall be possible from here.<br />
* Global directory: An explorer to find manage Git repositories ( at the minimum minimum all known local clones and their &quot;remotes&quot;)<br />
<br />
=== Extension points ===<br />
Quickdiff must be enhanced to allow selective committing.<br />
New extensions points will be designed as needed to expose new core extensibility common to many distributed SCM.<br />
<br />
=== Extensions to existing Eclipse Team functionality ===<br />
Team provider<br />
Resource decorators<br />
Quickdiff provider<br />
<br />
<br />
= Project Organization=<br />
We propose this project should be undertaken as an incubator project with the Technology project.<br />
<br />
== Mentors ==<br />
The following members of the Eclipse Architecture Council have kindly agreed to mentor this project:<br />
<br />
* Chris Aniszczyk<br />
* Andrew Overholt<br />
<br />
== Initial Committers ==<br />
* Robin Rosenberg (project lead )<br />
* Shawn Pearce (project lead) <br />
* Philippe Ombredanne<br />
(TODO: Robin: what about others?)<br />
<br />
== Initial Code Contribution ==<br />
The initial code contribution is based on the existing EGit code base licensed under the EPL. <br />
Additionally if the project can secure approval from the Eclipse board, the JGit component will be part of the initial contribution and dual licensed under the EPL and EDL.<br />
<br />
(TODO: Robin+ Shawn+Phil: update all copyright headers in the code and prepare review before CQ submission)<br />
<br />
(TODO: Philippe Contact the EMO based on Wayne and Chris feedback: we could possibly get JGit @ Eclipse too under a dual EPL+BSD license, if we can get board approval. <br />
There is a precedent with http://eclipse.org/eclipselink which is under such a dual license using both the EPL and the EDL: <br />
see [http://dev.eclipse.org/svnroot/technology/org.eclipse.persistence/trunk/license.html]<br />
see [http://www.eclipse.org/org/documents/edl-v10.php] )<br />
<br />
<br />
=== Licensing and Intellectual property ===<br />
A point of note is that EGit depends on the JGit, a pure Java Git implementation of Git.<br />
JGit was originally licensed under a combination of GPL and LGPL and is now made available under a BSD style license. The developers of JGit are also the original developers of EGit.<br />
Git itself is licensed under the GPL V2, but JGit is a clean implementation of the core Git data structures and as such has received the approval of the core Git maintainers to be licensed under any open source license the authors wish. <br />
Therefore the JGit authors have elected to license JGit under a BSD style license which is compatible with the Eclipse Public License and most other open source licenses.<br />
As part of the original code contribution review, JGit will be also submitted for approval per the Eclipse development process.<br />
<br />
(TODO: Robin+ Shawn+Phil: collate email confirmations on Git core data structure implementation and licensing including those from Linus)<br />
<br />
(TODO: Robin+ Shawn: we need to collate email approval from all the committers for both EGIT and JGit in a document for submission with the initial CQ)<br />
<br />
== Interested Parties ==<br />
(TODO: all list interested individual and companies, please add yourself ....)<br />
<br />
* Ismael Juma<br />
* Neil Bartlett<br />
* Chris Aniszczyk<br />
<br />
== User community ==<br />
EGIt and JGit already have an established community and we expect that this community of users and contributors will join this new project at Eclipse. Of note is that the general support of Git on Windows is limited. By being platform neutral, EGit has the opportunity to provide advanced Git support also on this platform and serve the needs of a larger community.<br />
<br />
== Tentative Development plan ==<br />
<br />
Some functionality already exists, but there is no real plan at the moment for lack of committed resources. The project's rough priorities are:<br />
<br />
Already done:<br />
<br />
* Connect to/create repositories for exiting projects<br />
* Create branches<br />
* Commit<br />
* Quickdiff against current revision<br />
* Resources decorators for tracked and modified resources as well as repository state<br />
* Basic compare of revisions<br />
<br />
Underway:<br />
* Cloning and updating from remote repositories<br />
<br />
Future:<br />
* Bisecting<br />
* Partial commits (i.e. committing partial changes)<br />
* Comprehensive handling of different character encodings in filenames and comments.<br />
* CRLF handling (unless we consider it unneeded)<br />
* Bugfixes for existing code<br />
* Formatting code for patch submission through e-mail<br />
* Apply patch<br />
* Rename/Copy tracking in compare revisions<br />
* Blame (annotate)<br />
* Merge<br />
* Rebase<br />
* External repository browser<br />
* Repacking (this a really a core Git feature and the one that can be really hard or impossible to perform in Java).<br />
* Rename tracking is an on-demand feature in git. Git does not record such information, it discovers it from content. The tight data structures in git makes implementing this in real time possible, but could still be a challenge.<br />
<br />
The project will deliver regular milestones ...<br />
<br />
(TODO: Robin: add rough sketch of milestones plan....)<br />
<br />
<br />
= Relation to other Eclipse projects and other open source projects =<br />
(TODO: Robin:review and add a few words for possible other projects we intersect with including other DVCS Eclipse plugins projects)<br />
<br />
* [http://git.or.cz Git] - The fast distributed SCM <br />
* JGit - a pure Java implementation of Git licensed under a BSD style license.<br />
<br />
* Eclipse Linux project: there is naturatl affinity between Git and Linux, since it is the SCM of choice for the Linux kernel<br />
<br />
* Eclipse platform team support and existing providers:<br />
** CVS team provider<br />
** SVN team provider<br />
<br />
* Eclipse PDE build: to provide a Git adapter for PDE build fetching from Git repositories<br />
<br />
* Mylyn - a Task based IDE that provides privileged integration with Eclipse-supported team providers . A possible integration with EGit could be considered.<br />
<br />
* Buckminster</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=EGit/Proposal&diff=90119EGit/Proposal2008-04-01T16:32:46Z<p>Pombredanne.nexb.com: </p>
<hr />
<div>= THIS IS A DRAFT, WORK IN PROGRESS PROPOSAL, NOT AN ACTUAL OFFICIAL ECLIPSE PROJECT PROPOSAL YET =<br />
<br />
<br />
The EGIT project is a proposed open source project under the Eclipse Technology Project.<br />
<br />
According to the [http://www.eclipse.org/projects/dev_process/ Eclipse Development Process], this proposal is intended to declare the intent and scope of the EGit project as well as to gather input from the Eclipse community. You are invited to comment on and/or join the project. Please send all feedback to the http://www.eclipse.org/newsportal/thread.php?group=eclipse.technology.egit newsgroup.<br />
<br />
= Background =<br />
(TODO: Shawn: we need to put some intro to present the domain and benefits of DVCS)<br />
Traditional source code version control systems .....<br />
<br />
= Introduction =<br />
EGIT is an Eclipse Team provider for Git (a.k.a. &quot;Stupid Content Tracker&quot;, http://git.or.cz).<br />
<br />
Git is the version control system originally developed for the Linux kernel by Linus Torvalds. One of the Git strength is its ability to support distributed version tracking as well as more centralized schemes, in contrast with traditional SCM that offer only a centralized model (such as CVS and Subversion) . Git is also very fast.<br />
Git usage has evolved beyond the Linux kernel team and is now used by many other projects -- both for open source and commercial development -- as a general purpose fast and distributed Source Code Management (SCM) tool. <br />
<br />
Git is a distributed SCM, which means every developer has a full copy of all history of every revision of the code making queries against the history very fast and versatile. The storage model also means most operations are ten to a hundred times faster than with traditional centralized SCM such as CVS or Subversion. The integrity of the code is guaranteed through the use of secure hashes on the content and history, plus optional GPG/PGP key signing of tags.<br />
<br />
= Project Description =<br />
<br />
The Git team provider will provide the ability to do all everyday task in a Git work flow from inside Eclipse, integrated with the Eclipse Team framework, and providing new features specific to Git and distributed version control management.<br />
<br />
== Goal ==<br />
The goal of the EGit project is to:<br />
* implement an Eclipse Team provider for the Git SCM,<br />
* work towards the definitions of new Team extensions and GUI paradigms to better support distributed SCM in general.<br />
<br />
== Scope ==<br />
<br />
The project will implement Eclipse tooling for the JGit Java implementation of Git. <br />
Specific attention will be focused on performance. Performance is a big deal with Git. It affects what can be done by being so much faster. Things that couldn't be done because of time constraints are now possible. These things like very fast checkouts, branching, branch switching, merging, tagging, software archeology and synchronization. Merge speed is probably the most important feature.<br />
The EGit plugin meta data shall be fully compatible with the meta data created by the native Git version so both can be used on the same checkout out repository.<br />
<br />
Beyond the Git support implementation, the project will work towards defining new essential extensions to the Eclipse core platform Team framework to account for the specific issues and features provided by distributed version control systems.<br />
It is also our intent to reach out to other project that implement support for distributed SCM in Eclipse to collaborate and exchange in that domain.<br />
<br />
Finally, the implications of adopting a distributed SCM approach can bring significant benefits especially for large open source projects such as Eclipse and can help lower the barrier to entry for new contributors and source code experimentation easier.<br />
The project will try to be a fervent advocate of distributed SCM benefits to the Eclipse community.<br />
<br />
== Features ==<br />
* Initial project setup: Support to create new Git repositories.<br />
<br />
* Importing existing code: Existing local Git repositories as well as remote repository can be imported. Remote repositories are imported by &quot;cloning&quot; them resulting in a local copy.<br />
<br />
* Replicating repositories: It shall be possible to distribute local version to other repositories through &quot;push&quot; operations as well as patches distributed by electronic mail. Receiving content shall be possible by fetching content via the git supported protocols (raw, ssh and http based) and via e-mailed patches directly from mailboxes, files or clipboard. &quot;Bundles&quot; shall also be supported.<br />
<br />
* Quickdiff against any version shall be supported.<br />
<br />
* Comparing any versions shall be supported.<br />
<br />
* Producing git-format patches to the clipboard shall be supported.<br />
<br />
* Selective commit (using the Quickdiff markers) shall be supported<br />
<br />
* Merge shall be supported<br />
<br />
* Cherry picking shall be supported<br />
<br />
* Re-base of branches shall be supported. This includes splitting, reordering and squashing (alternate term not to be confused with the normal meaning of &quot;merge&quot; in SCM terminology).<br />
<br />
* Branch switching, committing, amending commits and reset shall be supported.<br />
<br />
* Partial checkouts (currently not a native Git feature) shall be possible.<br />
<br />
* Some form of synchronization with CVS or other SCM. At least export to CVS, like git cvsexportcommit. Ideally Git commits shall be exportable to a CVS repository with the same structure. CVS import is a much harder problem where no perfect solution exists.<br />
<br />
=== Perspective and Views ===<br />
* A Git perspective will be provided for browsing repositories before importing Git projects, pre-configured with available Team views and new EGit views.<br />
* History viewer: An history viewer with graphical presentation of history and access for compare editors will be developed as well as other views that may be useful for distributed SCM.<br />
* Repository browser : An explorer for examining Git repositories not connected to an eclipse project. Importing projects shall be possible from here.<br />
* Global directory: An explorer to find manage Git repositories ( at the minimum minimum all known local clones and their &quot;remotes&quot;)<br />
<br />
=== Extension points ===<br />
Quickdiff must be enhanced to allow selective committing.<br />
New extensions points will be designed as needed to expose new core extensibility common to many distributed SCM.<br />
<br />
=== Extensions to existing Eclipse Team functionality ===<br />
Team provider<br />
Resource decorators<br />
Quickdiff provider<br />
<br />
<br />
= Project Organization=<br />
We propose this project should be undertaken as an incubator project with the Technology project.<br />
<br />
== Mentors ==<br />
The following members of the Eclipse Architecture Council have kindly agreed to mentor this project:<br />
<br />
* Chris Aniszczyk<br />
* Andrew Overholt<br />
<br />
== Initial Committers ==<br />
* Robin Rosenberg (project lead )<br />
* Shawn Pearce (project lead) <br />
* Philippe Ombredanne<br />
(TODO: Robin: what about others?)<br />
<br />
== Initial Code Contribution ==<br />
The initial code contribution is based on the existing EGit code base licensed under the EPL. <br />
Additionally if the project can secure approval from the Eclipse board, the JGit component will be part of the initial contribution and dual licensed under the EPL and EDL.<br />
<br />
(TODO: Robin+ Shawn+Phil: update all copyright headers in the code and prepare review before CQ submission)<br />
<br />
(TODO: Philippe Contact the EMO based on Wayne and Chris feedback: we could possibly get JGit @ Eclipse too under a dual EPL+BSD license, if we can get board approval. <br />
There is a precedent with http://eclipse.org/eclipselink which is under such a dual license using both the EPL and the EDL: <br />
see [http://dev.eclipse.org/svnroot/technology/org.eclipse.persistence/trunk/license.html]<br />
see [http://www.eclipse.org/org/documents/edl-v10.php] )<br />
<br />
<br />
=== Licensing and Intellectual property ===<br />
A point of note is that EGit depends on the JGit, a pure Java Git implementation of Git.<br />
JGit was originally licensed under a combination of GPL and LGPL and is now made available under a BSD style license. The developers of JGit are also the original developers of EGit.<br />
Git itself is licensed under the GPL V2, but JGit is a clean implementation of the core Git data structures and as such has received the approval of the core Git maintainers to be licensed under any open source license the authors wish. <br />
Therefore the JGit authors have elected to license JGit under a BSD style license which is compatible with the Eclipse Public License and most other open source licenses.<br />
As part of the original code contribution review, JGit will be also submitted for approval per the Eclipse development process.<br />
<br />
(TODO: Robin+ Shawn+Phil: collate email confirmations on Git core data structure implementation and licensing including those from Linus)<br />
<br />
(TODO: Robin+ Shawn: we need to collate email approval from all the committers for both EGIT and JGit in a document for submission with the initial CQ)<br />
<br />
== Interested Parties ==<br />
(TODO: all list interested individual and companies, please add yourself ....)<br />
<br />
* Ismael Juma<br />
* Neil Bartlett<br />
* Chris Aniszczyk<br />
<br />
== User community ==<br />
EGIt and JGit already have an established community and we expect that this community of users and contributors will join this new project at Eclipse. Of note is that the general support of Git on Windows is limited. By being platform neutral, EGit has the opportunity to provide advanced Git support also on this platform and serve the needs of a larger community.<br />
<br />
== Tentative Development plan ==<br />
<br />
Some functionality already exists, but there is no real plan at the moment for lack of committed resources. The project's rough priorities are:<br />
<br />
Already done:<br />
<br />
* Connect to/create repositories for exiting projects<br />
* Create branches<br />
* Commit<br />
* Quickdiff against current revision<br />
* Resources decorators for tracked and modified resources as well as repository state<br />
* Basic compare of revisions<br />
<br />
Underway:<br />
* Cloning and updating from remote repositories<br />
<br />
Future:<br />
* Bisecting<br />
* Partial commits (i.e. committing partial changes)<br />
* Comprehensive handling of different character encodings in filenames and comments.<br />
* CRLF handling (unless we consider it unneeded)<br />
* Bugfixes for existing code<br />
* Formatting code for patch submission through e-mail<br />
* Apply patch<br />
* Rename/Copy tracking in compare revisions<br />
* Blame (annotate)<br />
* Merge<br />
* Rebase<br />
* External repository browser<br />
* Repacking (this a really a core Git feature and the one that can be really hard or impossible to perform in Java).<br />
* Rename tracking is an on-demand feature in git. Git does not record such information, it discovers it from content. The tight data structures in git makes implementing this in real time possible, but could still be a challenge.<br />
<br />
The project will deliver regular milestones ...<br />
<br />
(TODO: Robin: add rough sketch of milestones plan....)<br />
<br />
<br />
= Relation to other Eclipse projects and other open source projects =<br />
(TODO: Robin:review and add a few words for possible other projects we intersect with including other DVCS Eclipse plugins projects)<br />
<br />
* [http://git.or.cz Git] - The fast distributed SCM <br />
* JGit - a pure Java implementation of Git licensed under a BSD style license.<br />
<br />
* Eclipse Linux project: there is naturatl affinity between Git and Linux, since it is the SCM of choice for the Linux kernel<br />
<br />
* Eclipse platform team support and existing providers:<br />
** CVS team provider<br />
** SVN team provider<br />
<br />
* Eclipse PDE build: to provide a Git adapter for PDE build fetching from Git repositories<br />
<br />
* Mylyn - a Task based IDE that provides privileged integration with Eclipse-supported team providers . A possible integration with EGit could be considered.<br />
<br />
* Buckminster</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=EGit/Proposal&diff=90118EGit/Proposal2008-04-01T16:18:30Z<p>Pombredanne.nexb.com: /* Initial Code Contribution */</p>
<hr />
<div>= THIS IS A DRAFT, WORK IN PROGRESS PROPOSAL, NOT AN ACTUAL OFFICIAL ECLIPSE PROJECT PROPOSAL YET =<br />
<br />
<br />
The EGIT project is a proposed open source project under the Eclipse Technology Project.<br />
<br />
According to the [http://www.eclipse.org/projects/dev_process/ Eclipse Development Process], this proposal is intended to declare the intent and scope of the EGit project as well as to gather input from the Eclipse community. You are invited to comment on and/or join the project. Please send all feedback to the http://www.eclipse.org/newsportal/thread.php?group=eclipse.technology.egit newsgroup.<br />
<br />
= Background =<br />
(TODO: Shawn: we need to put some intro to present the domain and benefits of DVCS)<br />
Traditional source code version control systems .....<br />
<br />
= Introduction =<br />
EGIT is an Eclipse Team provider for Git (a.k.a. &quot;Stupid Content Tracker&quot;, http://git.or.cz).<br />
<br />
Git is the version control system originally developed for the Linux kernel by Linus Torvalds. One of the Git strength is its ability to support distributed version tracking as well as more centralized schemes, in contrast with traditional SCM that offer only a centralized model (such as CVS and Subversion) . Git is also very fast.<br />
Git usage has evolved beyond the Linux kernel team and is now used by many other projects -- both for open source and commercial development -- as a general purpose fast and distributed Source Code Management (SCM) tool. <br />
<br />
Git is a distributed SCM, which means every developer has a full copy of all history of every revision of the code making queries against the history very fast and versatile. The storage model also means most operations are ten to a hundred times faster than with traditional centralized SCM such as CVS or Subversion. The integrity of the code is guaranteed through the use of secure hashes on the content and history, plus optional GPG/PGP key signing of tags.<br />
<br />
= Project Description =<br />
<br />
The Git team provider will provide the ability to do all everyday task in a Git work flow from inside Eclipse, integrated with the Eclipse Team framework, and providing new features specific to Git and distributed version control management.<br />
<br />
== Goal ==<br />
The goal of the EGit project is to:<br />
* implement an Eclipse Team provider for the Git SCM,<br />
* work towards the definitions of new Team extensions and GUI paradigms to better support distributed SCM in general.<br />
<br />
== Scope ==<br />
<br />
The project will implement Eclipse tooling for the JGit Java implementation of Git. <br />
Specific attention will be focused on performance. Performance is a big deal with Git. It affects what can be done by being so much faster. Things that couldn't be done because of time constraints are now possible. These things like very fast checkouts, branching, branch switching, merging, tagging, software archeology and synchronization. Merge speed is probably the most important feature.<br />
The EGit plugin meta data shall be fully compatible with the meta data created by the native Git version so both can be used on the same checkout out repository.<br />
<br />
Beyond the Git support implementation, the project will work towards defining new essential extensions to the Eclipse core platform Team framework to account for the specific issues and features provided by distributed version control systems.<br />
It is also our intent to reach out to other project that implement support for distributed SCM in Eclipse to collaborate and exchange in that domain.<br />
<br />
Finally, the implications of adopting a distributed SCM approach can bring significant benefits especially for large open source projects such as Eclipse and can help lower the barrier to entry for new contributors and source code experimentation easier.<br />
The project will try to be a fervent advocate of distributed SCM benefits to the Eclipse community.<br />
<br />
== Features ==<br />
* Initial project setup: Support to create new Git repositories.<br />
<br />
* Importing existing code: Existing local Git repositories as well as remote repository can be imported. Remote repositories are imported by &quot;cloning&quot; them resulting in a local copy.<br />
<br />
* Replicating repositories: It shall be possible to distribute local version to other repositories through &quot;push&quot; operations as well as patches distributed by electronic mail. Receiving content shall be possible by fetching content via the git supported protocols (raw, ssh and http based) and via e-mailed patches directly from mailboxes, files or clipboard. &quot;Bundles&quot; shall also be supported.<br />
<br />
* Quickdiff against any version shall be supported.<br />
<br />
* Comparing any versions shall be supported.<br />
<br />
* Producing git-format patches to the clipboard shall be supported.<br />
<br />
* Selective commit (using the Quickdiff markers) shall be supported<br />
<br />
* Merge shall be supported<br />
<br />
* Cherry picking shall be supported<br />
<br />
* Re-base of branches shall be supported. This includes splitting, reordering and squashing (alternate term not to be confused with the normal meaning of &quot;merge&quot; in SCM terminology).<br />
<br />
* Branch switching, committing, amending commits and reset shall be supported.<br />
<br />
* Partial checkouts (currently not a native Git feature) shall be possible.<br />
<br />
* Some form of synchronization with CVS or other SCM. At least export to CVS, like git cvsexportcommit. Ideally Git commits shall be exportable to a CVS repository with the same structure. CVS import is a much harder problem where no perfect solution exists.<br />
<br />
=== Perspective and Views ===<br />
* A Git perspective will be provided for browsing repositories before importing Git projects, pre-configured with available Team views and new EGit views.<br />
* History viewer: An history viewer with graphical presentation of history and access for compare editors will be developed as well as other views that may be useful for distributed SCM.<br />
* Repository browser : An explorer for examining Git repositories not connected to an eclipse project. Importing projects shall be possible from here.<br />
* Global directory: An explorer to find manage Git repositories ( at the minimum minimum all known local clones and their &quot;remotes&quot;)<br />
<br />
=== Extension points ===<br />
Quickdiff must be enhanced to allow selective committing.<br />
New extensions points will be designed as needed to expose new core extensibility common to many distributed SCM.<br />
<br />
=== Extensions to existing Eclipse Team functionality ===<br />
Team provider<br />
Resource decorators<br />
Quickdiff provider<br />
<br />
<br />
= Project Organization=<br />
We propose this project should be undertaken as an incubator project with the Technology project.<br />
<br />
== Mentors ==<br />
The following members of the Eclipse Architecture Council have kindly agreed to mentor this project:<br />
<br />
* Chris Aniszczyk<br />
* Andrew Overholt<br />
<br />
== Initial Committers ==<br />
* Robin Rosenberg (project lead )<br />
* Shawn Pearce (project lead) <br />
* Philippe Ombredanne<br />
(TODO: Robin: what about others?)<br />
<br />
== Initial Code Contribution ==<br />
The initial code contribution is based on the existing EGit code base licensed under the EPL. <br />
Additionally if the project can secure approval from the Eclipse board, the JGit component will be part of the initial contribution and dual licensed under the EPL and EDL.<br />
<br />
(TODO: Robin+ Shawn+Phil: update all copyright headers in the code and prepare review before CQ submission)<br />
<br />
(TODO: Philippe Contact the EMO based on Wayne and Chris feedback: we could possibly get JGit @ Eclipse too under a dual EPL+BSD license, if we can get board approval. <br />
There is a precedent with http://eclipse.org/eclipselink which is under such a dual license using both the EPL and the EDL: <br />
see [http://dev.eclipse.org/svnroot/technology/org.eclipse.persistence/trunk/license.html]<br />
see [http://www.eclipse.org/org/documents/edl-v10.php] )<br />
<br />
<br />
=== Licensing and Intellectual property ===<br />
A point of note is that EGit depends on the JGit, a pure Java Git implementation of Git.<br />
JGit was originally licensed under a combination of GPL and LGPL and is now made available under a BSD style license. The developers of JGit are also the original developers of EGit.<br />
Git itself is licensed under the GPL V2, but JGit is a clean implementation of the core Git data structures and as such has received the approval of the core Git maintainers to be licensed under any open source license the authors wish. <br />
Therefore the JGit authors have elected to license JGit under a BSD style license which is compatible with the Eclipse Public License and most other open source licenses.<br />
As part of the original code contribution review, JGit will be also submitted for approval per the Eclipse development process.<br />
<br />
(TODO: Robin+ Shawn+Phil: collate email confirmations on Git core data structure implementation and licensing including those from Linus)<br />
<br />
(TODO: Robin+ Shawn: we need to collate email approval from all the committers for both EGIT and JGit in a document for submission with the initial CQ)<br />
<br />
== Interested Parties ==<br />
(TODO: all list interested individual and companies, please add yourself ....)<br />
<br />
* Ismael Juma<br />
* Neil Bartlett<br />
* Chris Aniszczyk<br />
<br />
== User community ==<br />
EGIt and JGit already have an established community and we expect that this community of users and contributors will join this new project at Eclipse. Of note is that the general support of Git on Windows is limited. By being platform neutral, EGit has the opportunity to provide advanced Git support also on this platform and serve the needs of a larger community.<br />
<br />
== Tentative Development plan ==<br />
<br />
Some functionality already exists, but there is no real plan at the moment for lack of committed resources. The project's rough priorities are:<br />
<br />
Already done:<br />
<br />
* Connect to/create repositories for exiting projects<br />
* Create branches<br />
* Commit<br />
* Quickdiff against current revision<br />
* Resources decorators for tracked and modified resources as well as repository state<br />
* Basic compare of revisions<br />
<br />
Underway:<br />
* Cloning and updating from remote repositories<br />
<br />
Future:<br />
* Bisecting<br />
* Partial commits (i.e. committing partial changes)<br />
* Comprehensive handling of different character encodings in filenames and comments.<br />
* CRLF handling (unless we consider it unneeded)<br />
* Bugfixes for existing code<br />
* Formatting code for patch submission through e-mail<br />
* Apply patch<br />
* Rename/Copy tracking in compare revisions<br />
* Blame (annotate)<br />
* Merge<br />
* Rebase<br />
* External repository browser<br />
* Repacking (this a really a core Git feature and the one that can be really hard or impossible to perform in Java).<br />
* Rename tracking is an on-demand feature in git. Git does not record such information, it discovers it from content. The tight data structures in git makes implementing this in real time possible, but could still be a challenge.<br />
<br />
The project will deliver regular milestones ...<br />
<br />
(TODO: Robin: add rough sketch of milestones plan....)<br />
<br />
<br />
= Relation to other Eclipse projects and other open source projects =<br />
(TODO: Robin:review and add a few words for possible other projects we intersect with including other DVCS Eclipse plugins projects)<br />
<br />
* [http://git.or.cz Git] - The fast distributed SCM <br />
* JGit - a pure Java implementation of Git licensed under a BSD style license.<br />
<br />
* Eclipse platform team support and existing providers:<br />
** CVS team provider<br />
** SVN team provider<br />
<br />
* Eclipse PDE build: to provide a Git adapter for PDE build fetching from Git repositories<br />
<br />
* Mylyn - a Task based IDE that provides privileged integration with Eclipse-supported team providers . A possible integration with EGit could be considered.<br />
<br />
* Buckminster</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=EGit/Proposal&diff=90117EGit/Proposal2008-04-01T16:16:30Z<p>Pombredanne.nexb.com: </p>
<hr />
<div>= THIS IS A DRAFT, WORK IN PROGRESS PROPOSAL, NOT AN ACTUAL OFFICIAL ECLIPSE PROJECT PROPOSAL YET =<br />
<br />
<br />
The EGIT project is a proposed open source project under the Eclipse Technology Project.<br />
<br />
According to the [http://www.eclipse.org/projects/dev_process/ Eclipse Development Process], this proposal is intended to declare the intent and scope of the EGit project as well as to gather input from the Eclipse community. You are invited to comment on and/or join the project. Please send all feedback to the http://www.eclipse.org/newsportal/thread.php?group=eclipse.technology.egit newsgroup.<br />
<br />
= Background =<br />
(TODO: Shawn: we need to put some intro to present the domain and benefits of DVCS)<br />
Traditional source code version control systems .....<br />
<br />
= Introduction =<br />
EGIT is an Eclipse Team provider for Git (a.k.a. &quot;Stupid Content Tracker&quot;, http://git.or.cz).<br />
<br />
Git is the version control system originally developed for the Linux kernel by Linus Torvalds. One of the Git strength is its ability to support distributed version tracking as well as more centralized schemes, in contrast with traditional SCM that offer only a centralized model (such as CVS and Subversion) . Git is also very fast.<br />
Git usage has evolved beyond the Linux kernel team and is now used by many other projects -- both for open source and commercial development -- as a general purpose fast and distributed Source Code Management (SCM) tool. <br />
<br />
Git is a distributed SCM, which means every developer has a full copy of all history of every revision of the code making queries against the history very fast and versatile. The storage model also means most operations are ten to a hundred times faster than with traditional centralized SCM such as CVS or Subversion. The integrity of the code is guaranteed through the use of secure hashes on the content and history, plus optional GPG/PGP key signing of tags.<br />
<br />
= Project Description =<br />
<br />
The Git team provider will provide the ability to do all everyday task in a Git work flow from inside Eclipse, integrated with the Eclipse Team framework, and providing new features specific to Git and distributed version control management.<br />
<br />
== Goal ==<br />
The goal of the EGit project is to:<br />
* implement an Eclipse Team provider for the Git SCM,<br />
* work towards the definitions of new Team extensions and GUI paradigms to better support distributed SCM in general.<br />
<br />
== Scope ==<br />
<br />
The project will implement Eclipse tooling for the JGit Java implementation of Git. <br />
Specific attention will be focused on performance. Performance is a big deal with Git. It affects what can be done by being so much faster. Things that couldn't be done because of time constraints are now possible. These things like very fast checkouts, branching, branch switching, merging, tagging, software archeology and synchronization. Merge speed is probably the most important feature.<br />
The EGit plugin meta data shall be fully compatible with the meta data created by the native Git version so both can be used on the same checkout out repository.<br />
<br />
Beyond the Git support implementation, the project will work towards defining new essential extensions to the Eclipse core platform Team framework to account for the specific issues and features provided by distributed version control systems.<br />
It is also our intent to reach out to other project that implement support for distributed SCM in Eclipse to collaborate and exchange in that domain.<br />
<br />
Finally, the implications of adopting a distributed SCM approach can bring significant benefits especially for large open source projects such as Eclipse and can help lower the barrier to entry for new contributors and source code experimentation easier.<br />
The project will try to be a fervent advocate of distributed SCM benefits to the Eclipse community.<br />
<br />
== Features ==<br />
* Initial project setup: Support to create new Git repositories.<br />
<br />
* Importing existing code: Existing local Git repositories as well as remote repository can be imported. Remote repositories are imported by &quot;cloning&quot; them resulting in a local copy.<br />
<br />
* Replicating repositories: It shall be possible to distribute local version to other repositories through &quot;push&quot; operations as well as patches distributed by electronic mail. Receiving content shall be possible by fetching content via the git supported protocols (raw, ssh and http based) and via e-mailed patches directly from mailboxes, files or clipboard. &quot;Bundles&quot; shall also be supported.<br />
<br />
* Quickdiff against any version shall be supported.<br />
<br />
* Comparing any versions shall be supported.<br />
<br />
* Producing git-format patches to the clipboard shall be supported.<br />
<br />
* Selective commit (using the Quickdiff markers) shall be supported<br />
<br />
* Merge shall be supported<br />
<br />
* Cherry picking shall be supported<br />
<br />
* Re-base of branches shall be supported. This includes splitting, reordering and squashing (alternate term not to be confused with the normal meaning of &quot;merge&quot; in SCM terminology).<br />
<br />
* Branch switching, committing, amending commits and reset shall be supported.<br />
<br />
* Partial checkouts (currently not a native Git feature) shall be possible.<br />
<br />
* Some form of synchronization with CVS or other SCM. At least export to CVS, like git cvsexportcommit. Ideally Git commits shall be exportable to a CVS repository with the same structure. CVS import is a much harder problem where no perfect solution exists.<br />
<br />
=== Perspective and Views ===<br />
* A Git perspective will be provided for browsing repositories before importing Git projects, pre-configured with available Team views and new EGit views.<br />
* History viewer: An history viewer with graphical presentation of history and access for compare editors will be developed as well as other views that may be useful for distributed SCM.<br />
* Repository browser : An explorer for examining Git repositories not connected to an eclipse project. Importing projects shall be possible from here.<br />
* Global directory: An explorer to find manage Git repositories ( at the minimum minimum all known local clones and their &quot;remotes&quot;)<br />
<br />
=== Extension points ===<br />
Quickdiff must be enhanced to allow selective committing.<br />
New extensions points will be designed as needed to expose new core extensibility common to many distributed SCM.<br />
<br />
=== Extensions to existing Eclipse Team functionality ===<br />
Team provider<br />
Resource decorators<br />
Quickdiff provider<br />
<br />
<br />
= Project Organization=<br />
We propose this project should be undertaken as an incubator project with the Technology project.<br />
<br />
== Mentors ==<br />
The following members of the Eclipse Architecture Council have kindly agreed to mentor this project:<br />
<br />
* Chris Aniszczyk<br />
* Andrew Overholt<br />
<br />
== Initial Committers ==<br />
* Robin Rosenberg (project lead )<br />
* Shawn Pearce (project lead) <br />
* Philippe Ombredanne<br />
(TODO: Robin: what about others?)<br />
<br />
== Initial Code Contribution ==<br />
The initial code contribution is based on the existing EGit code base licensed under the EPL. <br />
Additionally if the project can secure approval from the Eclipse board, the JGit component will be part of the initial contribution and dual licensed under the EPL and EDL.<br />
(TODO: Robin+ Shawn: update all copyright headers in the code and repapre review before CQ submission)<br />
<br />
<br />
=== Licensing and Intellectual property ===<br />
A point of note is that EGit depends on the JGit, a pure Java Git implementation of Git.<br />
JGit was originally licensed under a combination of GPL and LGPL and is now made available under a BSD style license. The developers of JGit are also the original developers of EGit.<br />
Git itself is licensed under the GPL V2, but JGit is a clean implementation of the core Git data structures and as such has received the approval of the core Git maintainers to be licensed under any open source license the authors wish. <br />
Therefore the JGit authors have elected to license JGit under a BSD style license which is compatible with the Eclipse Public License and most other open source licenses.<br />
As part of the original code contribution review, JGit will be also submitted for approval per the Eclipse development process.<br />
<br />
(TODO: Robin+ Shawn+Phil: collate email confirmations on Git core data structure implementation and licensing including those from Linus)<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGit and JGit for anyone that contributed to the code base that will be contributed)<br />
(TODO: Robin+ Shawn: we need to collate email approval from all the committers for both EGIT and JGit in a document for submission with the initial CQ)<br />
(TODO: Philippe Contact the EMO based on Wayne and Chris feedback: we could possibly get JGit @ Eclipse too under a dual EPL+BSD license, if we can get board approval. <br />
There is a precedent with http://eclipse.org/eclipselink which is under such a dual license using both the EPL and the EDL: <br />
see [http://dev.eclipse.org/svnroot/technology/org.eclipse.persistence/trunk/license.html]<br />
see [http://www.eclipse.org/org/documents/edl-v10.php] )<br />
<br />
== Interested Parties ==<br />
(TODO: all list interested individual and companies, please add yourself ....)<br />
<br />
* Ismael Juma<br />
* Neil Bartlett<br />
* Chris Aniszczyk<br />
<br />
== User community ==<br />
EGIt and JGit already have an established community and we expect that this community of users and contributors will join this new project at Eclipse. Of note is that the general support of Git on Windows is limited. By being platform neutral, EGit has the opportunity to provide advanced Git support also on this platform and serve the needs of a larger community.<br />
<br />
== Tentative Development plan ==<br />
<br />
Some functionality already exists, but there is no real plan at the moment for lack of committed resources. The project's rough priorities are:<br />
<br />
Already done:<br />
<br />
* Connect to/create repositories for exiting projects<br />
* Create branches<br />
* Commit<br />
* Quickdiff against current revision<br />
* Resources decorators for tracked and modified resources as well as repository state<br />
* Basic compare of revisions<br />
<br />
Underway:<br />
* Cloning and updating from remote repositories<br />
<br />
Future:<br />
* Bisecting<br />
* Partial commits (i.e. committing partial changes)<br />
* Comprehensive handling of different character encodings in filenames and comments.<br />
* CRLF handling (unless we consider it unneeded)<br />
* Bugfixes for existing code<br />
* Formatting code for patch submission through e-mail<br />
* Apply patch<br />
* Rename/Copy tracking in compare revisions<br />
* Blame (annotate)<br />
* Merge<br />
* Rebase<br />
* External repository browser<br />
* Repacking (this a really a core Git feature and the one that can be really hard or impossible to perform in Java).<br />
* Rename tracking is an on-demand feature in git. Git does not record such information, it discovers it from content. The tight data structures in git makes implementing this in real time possible, but could still be a challenge.<br />
<br />
The project will deliver regular milestones ...<br />
<br />
(TODO: Robin: add rough sketch of milestones plan....)<br />
<br />
<br />
= Relation to other Eclipse projects and other open source projects =<br />
(TODO: Robin:review and add a few words for possible other projects we intersect with including other DVCS Eclipse plugins projects)<br />
<br />
* [http://git.or.cz Git] - The fast distributed SCM <br />
* JGit - a pure Java implementation of Git licensed under a BSD style license.<br />
<br />
* Eclipse platform team support and existing providers:<br />
** CVS team provider<br />
** SVN team provider<br />
<br />
* Eclipse PDE build: to provide a Git adapter for PDE build fetching from Git repositories<br />
<br />
* Mylyn - a Task based IDE that provides privileged integration with Eclipse-supported team providers . A possible integration with EGit could be considered.<br />
<br />
* Buckminster</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=EGit/Proposal&diff=89893EGit/Proposal2008-03-31T18:18:59Z<p>Pombredanne.nexb.com: </p>
<hr />
<div>= THIS IS A DRAFT, WORK IN PROGRESS PROPOSAL, NOT AN ACTUAL OFFICIAL ECLIPSE PROJECT PROPOSAL YET =<br />
<br />
<br />
The EGIT project is a proposed open source project under the Eclipse Technology Project.<br />
<br />
According to the [http://www.eclipse.org/projects/dev_process/ Eclipse Development Process], this proposal is intended to declare the intent and scope of the EGit project as well as to gather input from the Eclipse community. You are invited to comment on and/or join the project. Please send all feedback to the http://www.eclipse.org/newsportal/thread.php?group=eclipse.technology.egit newsgroup.<br />
<br />
= Background =<br />
(TODO: Shawn ? Here we need to put some quick intro on the value of a DVCS, and present a bit the field.<br />
I am sure Shawn has some good slides on that, he had made a presentation @ the GSOC mentor summit that we could extract some bits from.<br />
Traditional source code version control systems .....<br />
)<br />
<br />
= Introduction =<br />
The EGIT plugin is an Eclipse Team provider for Git (a.k.a. &quot;Stupid Content Tracker&quot;, http://git.or.cz).<br />
<br />
Git is the version control system originally developed for the Linux kernel by Linus Torvalds. One of the Git strength is its ability to support distributed version tracking as well as more centralized schemes, in contrast with traditional SCM that offer only a centralized model (such as CVS and Subversion) . Git is also very fast.<br />
Git usage has evolved beyond the Linux kernel team and is now used by many other projects -- both for open source and commercial development -- as a general purpose fast and distributed Source Code Management (SCM) tool. <br />
<br />
Git is a distributed SCM, which means every developer has a full copy of all history of every revision of the code making queries against the history very fast and versatile. The storage model also means most operations are ten to a hundred times faster than with traditional centralized SCM such as CVS or Subversion. The integrity of the code is guaranteed through the use of secure hashes on the content and history, plus optional GPG(PGP) key signing of tags.<br />
<br />
= Project Description =<br />
<br />
The Git team provider will provide the ability to do all everyday task in a Git work flow from inside Eclipse, integrated with the Eclipse Team framework, and providing new features specific to Git and distributed version control management.<br />
<br />
== Goal ==<br />
The goal of the EGit project is to:<br />
* implement an Eclipse Team provider for the Git SCM,<br />
* work towards the definitions of new Team extensions and GUI paradigms to better support distributed SCM in general.<br />
<br />
== Scope ==<br />
<br />
The project will implement Eclipse tooling for the JGit Java implementation of Git. <br />
Specific attention will be focused on performance. Performance is a big deal with Git. It affects what can be done by being so much faster. Things that couldn't be done because of time constraints are now possible. These things like very fast checkouts, branching, branch switching, merging, tagging, software archeology and synchronization. Merge speed is probably the most important feature.<br />
The EGit plugin meta data shall be fully compatible with the meta data created by the native Git version so both can be used on the same checkout out repository.<br />
<br />
Beyond the Git support implementation, the project will work towards defining new essential extensions to the Eclipse core platform Team framework to account for the specific issues and features provided by distributed version control systems.<br />
It is also our intent to reach out to other project that implement support for distributed SCM in Eclipse to collaborate and exchange in that domain.<br />
<br />
Finally, the implications of adopting a distributed SCM approach can bring significant benefits especially for large open source projects such as Eclipse and can help lower the barrier to entry for new contributors and source code experimentation easier.<br />
The project will try to be a fervent advocate of distributed SCM benefits to the Eclipse community.<br />
<br />
== Features ==<br />
* Initial project setup: Support to create new Git repositories.<br />
<br />
* Importing existing code: Existing local Git repositories as well as remote repository can be imported. Remote repositories are imported by &quot;cloning&quot; them resulting in a local copy.<br />
<br />
* Replicating repositories: It shall be possible to distribute local version to other repositories through &quot;push&quot; operations as well as patches distributed by electronic mail. Receiving content shall be possible by fetching content via the git supported protocols (raw, ssh and http based) and via e-mailed patches directly from mailboxes, files or clipboard. &quot;Bundles&quot; shall also be supported.<br />
<br />
* Quickdiff against any version shall be supported.<br />
<br />
* Comparing any versions shall be supported.<br />
<br />
* Producing git-format patches to the clipboard shall be supported.<br />
<br />
* Selective commit (using the Quickdiff markers) shall be supported<br />
<br />
* Merge shall be supported<br />
<br />
* Cherry picking shall be supported<br />
<br />
* Re-base of branches shall be supported. This includes splitting, reordering and squashing (alternate term not to be confused with the normal meaning of &quot;merge&quot; in SCM terminology).<br />
<br />
* Branch switching, committing, amending commits and reset shall be supported.<br />
<br />
* Partial checkouts (currently not a native Git feature) shall be possible.<br />
<br />
* Some form of synchronization with CVS or other SCM. At least export to CVS, like git cvsexportcommit. Ideally Git commits shall be exportable to a CVS repository with the same structure. CVS import is a much harder problem where no perfect solution exists.<br />
<br />
=== Perspective and Views ===<br />
* A Git perspective will be provided for browsing repositories before importing Git projects, pre-configured with available Team views and new EGit views.<br />
* History viewer: An history viewer with graphical presentation of history and access for compare editors will be developed as well as other views that may be useful for distributed SCM.<br />
* Repository browser : An explorer for examining Git repositories not connected to an eclipse project. Importing projects shall be possible from here.<br />
* Global directory: An explorer to find manage Git repositories ( at the minimum minimum all known local clones and their &quot;remotes&quot;)<br />
<br />
=== Extension points ===<br />
Quickdiff must be enhanced to allow selective committing.<br />
New extensions points will be designed as needed to expose new core extensibility common to many distributed SCM.<br />
<br />
=== Extensions to existing Eclipse Team functionality ===<br />
Team provider<br />
Resource decorators<br />
Quickdiff provider<br />
<br />
<br />
= Project Organization=<br />
We propose this project should be undertaken as an incubator project with the Technology project.<br />
<br />
== Mentors ==<br />
The following members of the Eclipse Architecture Council have kindly agreed to mentor this project:<br />
<br />
* Chris Aniszczyk<br />
* Andrew Overholt<br />
<br />
== Initial Committers ==<br />
* Robin Rosenberg (project lead)?<br />
* Shawn Pearce (project lead) ?<br />
* Philippe Ombredanne<br />
(TODO: Robin: what about others?)<br />
<br />
== Initial Code Contribution ==<br />
The initial code contribution is based on the existing EGit code base licensed under the EPL. (this has already been approved by current comitters).<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGIT and JGit for anyone that contributed to the code base that will be contributed)<br />
(TODO: Robin+ Shawn: update all copyright headers in the code)<br />
<br />
=== Licensing and Intellectual property ===<br />
A point of note is that EGit depends on the JGit, a pure Java Git implementation of Git.<br />
JGit was originally licensed under a combination of GPL and LGPL and is now made available under a (BSD/Apache/MIT TBD) license. The developers of JGit are also the original developers of EGit.<br />
(TODO: Robin+ Shawn: pick license of JGit, and add header to JGit)<br />
<br />
Now Git itself is licensed under the GPL V2, but JGit is a clean implementation of the core Git data structures and as such has received the approval of the core Git maintainers (including LT, (TODO: Robin+ Shawn+Phil: get email confirmation from Linus + current lead maintainer on that topic)<br />
) to be licensed under any open source license the authors wish. Therefore the JGit authors have elected to license JGit under the (Apache/BSD/MIT TBD) license which is compatible with the Eclipse Public License.<br />
As part of the original code contribution review, JGit will be also submitted for approval per the Eclipse development process.<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGit and JGit for anyone that contributed to the code base that will be contributed)<br />
<br />
== Interested Parties ==<br />
TBD<br />
(TODO: all list interested individual and companies ....)<br />
<br />
* Ismael Juma<br />
* Neil Bartlett<br />
* Chris Aniszczyk<br />
<br />
== User community ==<br />
EGIt and JGit already have an established community and we expect that this community of users and contributors will join this new project at Eclipse. Of note is that the general support of Git on Windows is limited. By being platform neutral, EGit has the opportunity to provide advanced Git support also on this platform and serve the needs of a larger community.<br />
<br />
== Tentative Development plan ==<br />
<br />
Some functionality already exists, but there is no real plan at the moment for lack of committed resources. The project's rough priorities are:<br />
<br />
Already done:<br />
<br />
* Connect to/create repositories for exiting projects<br />
* Create branches<br />
* Commit<br />
* Quickdiff against current revision<br />
* Resources decorators for tracked and modified resources as well as repository state<br />
* Basic compare of revisions<br />
<br />
Underway:<br />
* Cloning and updating from remote repositories<br />
<br />
Future:<br />
* Bisecting<br />
* Partial commits (i.e. committing partial changes)<br />
* Comprehensive handling of different character encodings in filenames and comments.<br />
* CRLF handling (unless we consider it unneeded)<br />
* Bugfixes for existing code<br />
* Formatting code for patch submission through e-mail<br />
* Apply patch<br />
* Rename/Copy tracking in compare revisions<br />
* Blame (annotate)<br />
* Merge<br />
* Rebase<br />
* External repository browser<br />
* Repacking (this a really a core Git feature and the one that can be really hard or impossible to perform in Java).<br />
* Rename tracking is an on-demand feature in git. Git does not record such information, it discovers it from content. The tight data structures in git makes implementing this in real time possible, but could still be a challenge.<br />
<br />
The project will deliver regular milestones ...<br />
(TODO: Robin: a rough sketch milestones plan....)<br />
<br />
<br />
= Relation to other Eclipse projects and other open source projects =<br />
(TODO: Robin:review and add a few words for possible project we intersect with)<br />
<br />
* [http://git.or.cz Git] - The fast distributed SCM <br />
* JGit - a pure Java implementation of Git licensed under (BSD/Apache/MIT TBD ?) license.<br />
<br />
* Eclipse platform team support<br />
** CVS team provider<br />
** SVN team provider<br />
<br />
* Mylyn - a Task based IDE that provides privileged integration with Eclipse-supported team providers . A possible integration with EGit could be considered.<br />
<br />
* Buckminster</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=EGit/Proposal&diff=89892EGit/Proposal2008-03-31T18:17:58Z<p>Pombredanne.nexb.com: </p>
<hr />
<div>= THIS IS A DRAFT, WORK IN PROGRESS PROPOSAL, NOT AN ACTUAL OFFICIAL ECLIPSE PROJECT PROPOSAL YET =<br />
<br />
<br />
The EGIT project is a proposed open source project under the Eclipse Technology Project.<br />
<br />
According to the [http://www.eclipse.org/projects/dev_process/ Eclipse Development Process], this proposal is intended to declare the intent and scope of the EGit project as well as to gather input from the Eclipse community. You are invited to comment on and/or join the project. Please send all feedback to the http://www.eclipse.org/newsportal/thread.php?group=eclipse.technology.egit newsgroup.<br />
<br />
= Background =<br />
(TODO: Shawn ? Here we need to put some quick intro on the value of a DVCS, and present a bit the field.<br />
I am sure Shawn has some good slides on that, he had made a presentation @ the GSOC mentor summit that we could extract some bits from.<br />
Traditional source code version control systems .....<br />
)<br />
<br />
= Introduction =<br />
The EGIT plugin is an Eclipse Team provider for Git (a.k.a. &quot;Stupid Content Tracker&quot;, http://git.or.cz).<br />
<br />
Git is the version control system originally developed for the Linux kernel by Linus Torvalds. One of the Git strength is its ability to support distributed version tracking as well as more centralized schemes, in contrast with traditional SCM that offer only a centralized model (such as CVS and Subversion) . Git is also very fast.<br />
Git usage has evolved beyond the Linux kernel team and is now used by many other projects -- both for open source and commercial development -- as a general purpose fast and distributed Source Code Management (SCM) tool. <br />
<br />
Git is a distributed SCM, which means every developer has a full copy of all history of every revision of the code making queries against the history very fast and versatile. The storage model also means most operations are ten to a hundred times faster than with traditional centralized SCM such as CVS or Subversion. The integrity of the code is guaranteed through the use of secure hashes on the content and history, plus optional GPG(PGP) key signing of tags.<br />
<br />
= Project Goal =<br />
The goal of the EGit project is to:<br />
* implement an Eclipse Team provider for the Git SCM,<br />
* work towards the definitions of new Team extensions and GUI paradigms to better support distributed SCM in general.<br />
<br />
= Project Scope =<br />
<br />
The project will implement Eclipse tooling for the JGit Java implementation of Git. <br />
Specific attention will be focused on performance. Performance is a big deal with Git. It affects what can be done by being so much faster. Things that couldn't be done because of time constraints are now possible. These things like very fast checkouts, branching, branch switching, merging, tagging, software archeology and synchronization. Merge speed is probably the most important feature.<br />
The EGit plugin meta data shall be fully compatible with the meta data created by the native Git version so both can be used on the same checkout out repository.<br />
<br />
Beyond the Git support implementation, the project will work towards defining new essential extensions to the Eclipse core platform Team framework to account for the specific issues and features provided by distributed version control systems.<br />
It is also our intent to reach out to other project that implement support for distributed SCM in Eclipse to collaborate and exchange in that domain.<br />
<br />
Finally, the implications of adopting a distributed SCM approach can bring significant benefits especially for large open source projects such as Eclipse and can help lower the barrier to entry for new contributors and source code experimentation easier.<br />
The project will try to be a fervent advocate of distributed SCM benefits to the Eclipse community.<br />
<br />
= Project description =<br />
<br />
The Git team provider will provide the ability to do all everyday task in a Git work flow from inside Eclipse, integrated with the Eclipse Team framework, and providing new features specific to Git and distributed version control management.<br />
<br />
== Features ==<br />
* Initial project setup: Support to create new Git repositories.<br />
<br />
* Importing existing code: Existing local Git repositories as well as remote repository can be imported. Remote repositories are imported by &quot;cloning&quot; them resulting in a local copy.<br />
<br />
* Replicating repositories: It shall be possible to distribute local version to other repositories through &quot;push&quot; operations as well as patches distributed by electronic mail. Receiving content shall be possible by fetching content via the git supported protocols (raw, ssh and http based) and via e-mailed patches directly from mailboxes, files or clipboard. &quot;Bundles&quot; shall also be supported.<br />
<br />
* Quickdiff against any version shall be supported.<br />
<br />
* Comparing any versions shall be supported.<br />
<br />
* Producing git-format patches to the clipboard shall be supported.<br />
<br />
* Selective commit (using the Quickdiff markers) shall be supported<br />
<br />
* Merge shall be supported<br />
<br />
* Cherry picking shall be supported<br />
<br />
* Re-base of branches shall be supported. This includes splitting, reordering and squashing (alternate term not to be confused with the normal meaning of &quot;merge&quot; in SCM terminology).<br />
<br />
* Branch switching, committing, amending commits and reset shall be supported.<br />
<br />
* Partial checkouts (currently not a native Git feature) shall be possible.<br />
<br />
* Some form of synchronization with CVS or other SCM. At least export to CVS, like git cvsexportcommit. Ideally Git commits shall be exportable to a CVS repository with the same structure. CVS import is a much harder problem where no perfect solution exists.<br />
<br />
=== Perspective and Views ===<br />
* A Git perspective will be provided for browsing repositories before importing Git projects, pre-configured with available Team views and new EGit views.<br />
* History viewer: An history viewer with graphical presentation of history and access for compare editors will be developed as well as other views that may be useful for distributed SCM.<br />
* Repository browser : An explorer for examining Git repositories not connected to an eclipse project. Importing projects shall be possible from here.<br />
* Global directory: An explorer to find manage Git repositories ( at the minimum minimum all known local clones and their &quot;remotes&quot;)<br />
<br />
=== Extension points ===<br />
Quickdiff must be enhanced to allow selective committing.<br />
New extensions points will be designed as needed to expose new core extensibility common to many distributed SCM.<br />
<br />
=== Extensions to existing Eclipse Team functionality ===<br />
Team provider<br />
Resource decorators<br />
Quickdiff provider<br />
<br />
<br />
= Project Organization=<br />
We propose this project should be undertaken as an incubator project with the Technology project.<br />
<br />
== Mentors ==<br />
The following members of the Eclipse Architecture Council have kindly agreed to mentor this project:<br />
<br />
* Chris Aniszczyk<br />
* Andrew Overholt<br />
<br />
== Initial Committers ==<br />
* Robin Rosenberg (project lead)?<br />
* Shawn Pearce (project lead) ?<br />
* Philippe Ombredanne<br />
(TODO: Robin: what about others?)<br />
<br />
== Initial Code Contribution ==<br />
The initial code contribution is based on the existing EGit code base licensed under the EPL. (this has already been approved by current comitters).<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGIT and JGit for anyone that contributed to the code base that will be contributed)<br />
(TODO: Robin+ Shawn: update all copyright headers in the code)<br />
<br />
=== Licensing and Intellectual property ===<br />
A point of note is that EGit depends on the JGit, a pure Java Git implementation of Git.<br />
JGit was originally licensed under a combination of GPL and LGPL and is now made available under a (BSD/Apache/MIT TBD) license. The developers of JGit are also the original developers of EGit.<br />
(TODO: Robin+ Shawn: pick license of JGit, and add header to JGit)<br />
<br />
Now Git itself is licensed under the GPL V2, but JGit is a clean implementation of the core Git data structures and as such has received the approval of the core Git maintainers (including LT, (TODO: Robin+ Shawn+Phil: get email confirmation from Linus + current lead maintainer on that topic)<br />
) to be licensed under any open source license the authors wish. Therefore the JGit authors have elected to license JGit under the (Apache/BSD/MIT TBD) license which is compatible with the Eclipse Public License.<br />
As part of the original code contribution review, JGit will be also submitted for approval per the Eclipse development process.<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGit and JGit for anyone that contributed to the code base that will be contributed)<br />
<br />
== Interested Parties ==<br />
TBD<br />
(TODO: all list interested individual and companies ....)<br />
<br />
* Ismael Juma<br />
* Neil Bartlett<br />
* Chris Aniszczyk<br />
<br />
== User community ==<br />
EGIt and JGit already have an established community and we expect that this community of users and contributors will join this new project at Eclipse. Of note is that the general support of Git on Windows is limited. By being platform neutral, EGit has the opportunity to provide advanced Git support also on this platform and serve the needs of a larger community.<br />
<br />
== Tentative Development plan ==<br />
<br />
Some functionality already exists, but there is no real plan at the moment for lack of committed resources. The project's rough priorities are:<br />
<br />
Already done:<br />
<br />
* Connect to/create repositories for exiting projects<br />
* Create branches<br />
* Commit<br />
* Quickdiff against current revision<br />
* Resources decorators for tracked and modified resources as well as repository state<br />
* Basic compare of revisions<br />
<br />
Underway:<br />
* Cloning and updating from remote repositories<br />
<br />
Future:<br />
* Bisecting<br />
* Partial commits (i.e. committing partial changes)<br />
* Comprehensive handling of different character encodings in filenames and comments.<br />
* CRLF handling (unless we consider it unneeded)<br />
* Bugfixes for existing code<br />
* Formatting code for patch submission through e-mail<br />
* Apply patch<br />
* Rename/Copy tracking in compare revisions<br />
* Blame (annotate)<br />
* Merge<br />
* Rebase<br />
* External repository browser<br />
* Repacking (this a really a core Git feature and the one that can be really hard or impossible to perform in Java).<br />
* Rename tracking is an on-demand feature in git. Git does not record such information, it discovers it from content. The tight data structures in git makes implementing this in real time possible, but could still be a challenge.<br />
<br />
The project will deliver regular milestones ...<br />
(TODO: Robin: a rough sketch milestones plan....)<br />
<br />
<br />
= Relation to other Eclipse projects and other open source projects =<br />
(TODO: Robin:review and add a few words for possible project we intersect with)<br />
<br />
* [http://git.or.cz Git] - The fast distributed SCM <br />
* JGit - a pure Java implementation of Git licensed under (BSD/Apache/MIT TBD ?) license.<br />
<br />
* Eclipse platform team support<br />
** CVS team provider<br />
** SVN team provider<br />
<br />
* Mylyn - a Task based IDE that provides privileged integration with Eclipse-supported team providers . A possible integration with EGit could be considered.<br />
<br />
* Buckminster</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=EGit/Proposal&diff=89891EGit/Proposal2008-03-31T18:16:52Z<p>Pombredanne.nexb.com: </p>
<hr />
<div>= THIS IS A DRAFT, WORK IN PROGRESS PROPOSAL, NOT AN ACTUAL OFFICIAL ECLIPSE PROJECT PROPOSAL YET =<br />
<br />
<br />
The EGIT project is a proposed open source project under the Eclipse Technology Project.<br />
<br />
According to the [http://www.eclipse.org/projects/dev_process/ Eclipse Development Process], this proposal is intended to declare the intent and scope of the EGit project as well as to gather input from the Eclipse community. You are invited to comment on and/or join the project. Please send all feedback to the http://www.eclipse.org/newsportal/thread.php?group=eclipse.technology.egit newsgroup.<br />
<br />
= Background =<br />
(TODO: Shawn ? Here we need to put some quick intro on the value of a DVCS, and present a bit the field.<br />
I am sure Shawn has some good slides on that, he had made a presentation @ the GSOC mentor summit that we could extract some bits from.<br />
Traditional source code version control systems .....<br />
)<br />
<br />
= Introduction =<br />
The EGIT plugin is an Eclipse Team provider for Git (a.k.a. &quot;Stupid Content Tracker&quot;, http://git.or.cz).<br />
<br />
Git is the version control system originally developed for the Linux kernel by Linus Torvalds. One of the Git strength is its ability to support distributed version tracking as well as more centralized schemes, in contrast with traditional SCM that offer only a centralized model (such as CVS and Subversion) . Git is also very fast.<br />
Git usage has evolved beyond the Linux kernel team and is now used by many other projects -- both for open source and commercial development -- as a general purpose fast and distributed Source Code Management (SCM) tool. <br />
<br />
Git is a distributed SCM, which means every developer has a full copy of all history of every revision of the code making queries against the history very fast and versatile. The storage model also means most operations are ten to a hundred times faster than with traditional centralized SCM such as CVS or Subversion. The integrity of the code is guaranteed through the use of secure hashes on the content and history, plus optional GPG(PGP) key signing of tags.<br />
<br />
= Project Goal =<br />
The goal of the EGit project is to:<br />
* implement an Eclipse Team provider for the Git SCM,<br />
* work towards the definitions of new Team extensions and GUI paradigms to better support distributed SCM in general.<br />
<br />
= Project Scope =<br />
<br />
The project will implement Eclipse tooling for the JGit Java implementation of Git. <br />
Specific attention will be focused on performance. Performance is a big deal with Git. It affects what can be done by being so much faster. Things that couldn't be done because of time constraints are now possible. These things like very fast checkouts, branching, branch switching, merging, tagging, software archeology and synchronization. Merge speed is probably the most important feature.<br />
The EGit plugin meta data shall be fully compatible with the meta data created by the native Git version so both can be used on the same checkout out repository.<br />
<br />
Beyond the Git support implementation, the project will work towards defining new essential extensions to the Eclipse core platform Team framework to account for the specific issues and features provided by distributed version control systems.<br />
It is also our intent to reach out to other project that implement support for distributed SCM in Eclipse to collaborate and exchange in that domain.<br />
<br />
Finally, the implications of adopting a distributed SCM approach can bring significant benefits especially for large open source projects such as Eclipse and can help lower the barrier to entry for new contributors and source code experimentation easier.<br />
The project will try to be a fervent advocate of distributed SCM benefits to the Eclipse community.<br />
<br />
= Project description =<br />
<br />
The Git team provider will provide the ability to do all everyday task in a Git work flow from inside Eclipse, integrated with the Eclipse Team framework, and providing new features specific to Git and distributed version control management.<br />
<br />
= Features =<br />
* Initial project setup: Support to create new Git repositories.<br />
<br />
* Importing existing code: Existing local Git repositories as well as remote repository can be imported. Remote repositories are imported by &quot;cloning&quot; them resulting in a local copy.<br />
<br />
* Replicating repositories: It shall be possible to distribute local version to other repositories through &quot;push&quot; operations as well as patches distributed by electronic mail. Receiving content shall be possible by fetching content via the git supported protocols (raw, ssh and http based) and via e-mailed patches directly from mailboxes, files or clipboard. &quot;Bundles&quot; shall also be supported.<br />
<br />
* Quickdiff against any version shall be supported.<br />
<br />
* Comparing any versions shall be supported.<br />
<br />
* Producing git-format patches to the clipboard shall be supported.<br />
<br />
* Selective commit (using the Quickdiff markers) shall be supported<br />
<br />
* Merge shall be supported<br />
<br />
* Cherry picking shall be supported<br />
<br />
* Re-base of branches shall be supported. This includes splitting, reordering and squashing (alternate term not to be confused with the normal meaning of &quot;merge&quot; in SCM terminology).<br />
<br />
* Branch switching, committing, amending commits and reset shall be supported.<br />
<br />
* Partial checkouts (currently not a native Git feature) shall be possible.<br />
<br />
* Some form of synchronization with CVS or other SCM. At least export to CVS, like git cvsexportcommit. Ideally Git commits shall be exportable to a CVS repository with the same structure. CVS import is a much harder problem where no perfect solution exists.<br />
<br />
== Perspective and Views ==<br />
* A Git perspective will be provided for browsing repositories before importing Git projects, pre-configured with available Team views and new EGit views.<br />
* History viewer: An history viewer with graphical presentation of history and access for compare editors will be developed as well as other views that may be useful for distributed SCM.<br />
* Repository browser : An explorer for examining Git repositories not connected to an eclipse project. Importing projects shall be possible from here.<br />
* Global directory: An explorer to find manage Git repositories ( at the minimum minimum all known local clones and their &quot;remotes&quot;)<br />
<br />
== Extension points ==<br />
Quickdiff must be enhanced to allow selective committing.<br />
New extensions points will be designed as needed to expose new core extensibility common to many distributed SCM.<br />
<br />
== Extensions to existing Eclipse Team functionality ==<br />
Team provider<br />
Resource decorators<br />
Quickdiff provider<br />
<br />
<br />
= Organization=<br />
We propose this project should be undertaken as an incubator project with the Technology project.<br />
<br />
== Mentors ==<br />
The following members of the Eclipse Architecture Council have kindly agreed to mentor this project:<br />
<br />
* Chris Aniszczyk<br />
* Andrew Overholt<br />
<br />
== Initial Committers ==<br />
* Robin Rosenberg (project lead)?<br />
* Shawn Pearce (project lead) ?<br />
* Philippe Ombredanne<br />
(TODO: Robin: what about others?)<br />
<br />
== Initial Code Contribution ==<br />
The initial code contribution is based on the existing EGit code base licensed under the EPL. (this has already been approved by current comitters).<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGIT and JGit for anyone that contributed to the code base that will be contributed)<br />
(TODO: Robin+ Shawn: update all copyright headers in the code)<br />
<br />
=== Licensing and Intellectual property ===<br />
A point of note is that EGit depends on the JGit, a pure Java Git implementation of Git.<br />
JGit was originally licensed under a combination of GPL and LGPL and is now made available under a (BSD/Apache/MIT TBD) license. The developers of JGit are also the original developers of EGit.<br />
(TODO: Robin+ Shawn: pick license of JGit, and add header to JGit)<br />
<br />
Now Git itself is licensed under the GPL V2, but JGit is a clean implementation of the core Git data structures and as such has received the approval of the core Git maintainers (including LT, (TODO: Robin+ Shawn+Phil: get email confirmation from Linus + current lead maintainer on that topic)<br />
) to be licensed under any open source license the authors wish. Therefore the JGit authors have elected to license JGit under the (Apache/BSD/MIT TBD) license which is compatible with the Eclipse Public License.<br />
As part of the original code contribution review, JGit will be also submitted for approval per the Eclipse development process.<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGit and JGit for anyone that contributed to the code base that will be contributed)<br />
<br />
== Interested Parties ==<br />
TBD<br />
(TODO: all list interested individual and companies ....)<br />
<br />
* Ismael Juma<br />
* Neil Bartlett<br />
* Chris Aniszczyk<br />
<br />
== User community ==<br />
EGIt and JGit already have an established community and we expect that this community of users and contributors will join this new project at Eclipse. Of note is that the general support of Git on Windows is limited. By being platform neutral, EGit has the opportunity to provide advanced Git support also on this platform and serve the needs of a larger community.<br />
<br />
== Tentative Development plan ==<br />
<br />
Some functionality already exists, but there is no real plan at the moment for lack of committed resources. The project's rough priorities are:<br />
<br />
Already done:<br />
<br />
* Connect to/create repositories for exiting projects<br />
* Create branches<br />
* Commit<br />
* Quickdiff against current revision<br />
* Resources decorators for tracked and modified resources as well as repository state<br />
* Basic compare of revisions<br />
<br />
Underway:<br />
* Cloning and updating from remote repositories<br />
<br />
Future:<br />
* Bisecting<br />
* Partial commits (i.e. committing partial changes)<br />
* Comprehensive handling of different character encodings in filenames and comments.<br />
* CRLF handling (unless we consider it unneeded)<br />
* Bugfixes for existing code<br />
* Formatting code for patch submission through e-mail<br />
* Apply patch<br />
* Rename/Copy tracking in compare revisions<br />
* Blame (annotate)<br />
* Merge<br />
* Rebase<br />
* External repository browser<br />
* Repacking (this a really a core Git feature and the one that can be really hard or impossible to perform in Java).<br />
* Rename tracking is an on-demand feature in git. Git does not record such information, it discovers it from content. The tight data structures in git makes implementing this in real time possible, but could still be a challenge.<br />
<br />
The project will deliver regular milestones ...<br />
(TODO: Robin: a rough sketch milestones plan....)<br />
<br />
<br />
= Relation to other Eclipse projects and other open source projects =<br />
(TODO: Robin:review and add a few words for possible project we intersect with)<br />
<br />
* [http://git.or.cz Git] - The fast distributed SCM <br />
* JGit - a pure Java implementation of Git licensed under (BSD/Apache/MIT TBD ?) license.<br />
<br />
* Eclipse platform team support<br />
** CVS team provider<br />
** SVN team provider<br />
<br />
* Mylyn - a Task based IDE that provides privileged integration with Eclipse-supported team providers . A possible integration with EGit could be considered.<br />
<br />
* Buckminster</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=EGit/Proposal&diff=89889EGit/Proposal2008-03-31T18:16:20Z<p>Pombredanne.nexb.com: /* Relation to other Eclipse projects and to other open source projects */</p>
<hr />
<div>= THIS IS A DRAFT, WORK IN PROGRESS PROPOSAL, NOT AN ACTUAL OFFICIAL ECLIPSE PROJECT PROPOSAL YET =<br />
<br />
<br />
The EGIT project is a proposed open source project under the Eclipse Technology Project.<br />
<br />
According to the [http://www.eclipse.org/projects/dev_process/ Eclipse Development Process], this proposal is intended to declare the intent and scope of the EGit project as well as to gather input from the Eclipse community. You are invited to comment on and/or join the project. Please send all feedback to the http://www.eclipse.org/newsportal/thread.php?group=eclipse.technology.egit newsgroup.<br />
<br />
= Background =<br />
(TODO: Shawn ? Here we need to put some quick intro on the value of a DVCS, and present a bit the field.<br />
I am sure Shawn has some good slides on that, he had made a presentation @ the GSOC mentor summit that we could extract some bits from.<br />
Traditional source code version control systems .....<br />
)<br />
<br />
= Introduction =<br />
The EGIT plugin is an Eclipse Team provider for Git (a.k.a. &quot;Stupid Content Tracker&quot;, http://git.or.cz).<br />
<br />
Git is the version control system originally developed for the Linux kernel by Linus Torvalds. One of the Git strength is its ability to support distributed version tracking as well as more centralized schemes, in contrast with traditional SCM that offer only a centralized model (such as CVS and Subversion) . Git is also very fast.<br />
Git usage has evolved beyond the Linux kernel team and is now used by many other projects -- both for open source and commercial development -- as a general purpose fast and distributed Source Code Management (SCM) tool. <br />
<br />
Git is a distributed SCM, which means every developer has a full copy of all history of every revision of the code making queries against the history very fast and versatile. The storage model also means most operations are ten to a hundred times faster than with traditional centralized SCM such as CVS or Subversion. The integrity of the code is guaranteed through the use of secure hashes on the content and history, plus optional GPG(PGP) key signing of tags.<br />
<br />
= Project Goal =<br />
The goal of the EGit project is to:<br />
* implement an Eclipse Team provider for the Git SCM,<br />
* work towards the definitions of new Team extensions and GUI paradigms to better support distributed SCM in general.<br />
<br />
= Project Scope =<br />
<br />
The project will implement Eclipse tooling for the JGit Java implementation of Git. <br />
Specific attention will be focused on performance. Performance is a big deal with Git. It affects what can be done by being so much faster. Things that couldn't be done because of time constraints are now possible. These things like very fast checkouts, branching, branch switching, merging, tagging, software archeology and synchronization. Merge speed is probably the most important feature.<br />
The EGit plugin meta data shall be fully compatible with the meta data created by the native Git version so both can be used on the same checkout out repository.<br />
<br />
Beyond the Git support implementation, the project will work towards defining new essential extensions to the Eclipse core platform Team framework to account for the specific issues and features provided by distributed version control systems.<br />
It is also our intent to reach out to other project that implement support for distributed SCM in Eclipse to collaborate and exchange in that domain.<br />
<br />
Finally, the implications of adopting a distributed SCM approach can bring significant benefits especially for large open source projects such as Eclipse and can help lower the barrier to entry for new contributors and source code experimentation easier.<br />
The project will try to be a fervent advocate of distributed SCM benefits to the Eclipse community.<br />
<br />
= Project description =<br />
<br />
The Git team provider will provide the ability to do all everyday task in a Git work flow from inside Eclipse, integrated with the Eclipse Team framework, and providing new features specific to Git and distributed version control management.<br />
<br />
= Features =<br />
* Initial project setup: Support to create new Git repositories.<br />
<br />
* Importing existing code: Existing local Git repositories as well as remote repository can be imported. Remote repositories are imported by &quot;cloning&quot; them resulting in a local copy.<br />
<br />
* Replicating repositories: It shall be possible to distribute local version to other repositories through &quot;push&quot; operations as well as patches distributed by electronic mail. Receiving content shall be possible by fetching content via the git supported protocols (raw, ssh and http based) and via e-mailed patches directly from mailboxes, files or clipboard. &quot;Bundles&quot; shall also be supported.<br />
<br />
* Quickdiff against any version shall be supported.<br />
<br />
* Comparing any versions shall be supported.<br />
<br />
* Producing git-format patches to the clipboard shall be supported.<br />
<br />
* Selective commit (using the Quickdiff markers) shall be supported<br />
<br />
* Merge shall be supported<br />
<br />
* Cherry picking shall be supported<br />
<br />
* Re-base of branches shall be supported. This includes splitting, reordering and squashing (alternate term not to be confused with the normal meaning of &quot;merge&quot; in SCM terminology).<br />
<br />
* Branch switching, committing, amending commits and reset shall be supported.<br />
<br />
* Partial checkouts (currently not a native Git feature) shall be possible.<br />
<br />
* Some form of synchronization with CVS or other SCM. At least export to CVS, like git cvsexportcommit. Ideally Git commits shall be exportable to a CVS repository with the same structure. CVS import is a much harder problem where no perfect solution exists.<br />
<br />
== Perspective and Views ==<br />
* A Git perspective will be provided for browsing repositories before importing Git projects, pre-configured with available Team views and new EGit views.<br />
* History viewer: An history viewer with graphical presentation of history and access for compare editors will be developed as well as other views that may be useful for distributed SCM.<br />
* Repository browser : An explorer for examining Git repositories not connected to an eclipse project. Importing projects shall be possible from here.<br />
* Global directory: An explorer to find manage Git repositories ( at the minimum minimum all known local clones and their &quot;remotes&quot;)<br />
<br />
== Extension points ==<br />
Quickdiff must be enhanced to allow selective committing.<br />
New extensions points will be designed as needed to expose new core extensibility common to many distributed SCM.<br />
<br />
== Extensions to existing Eclipse Team functionality ==<br />
Team provider<br />
Resource decorators<br />
Quickdiff provider<br />
<br />
<br />
= Organization=<br />
We propose this project should be undertaken as an incubator project with the Technology project.<br />
<br />
== Mentors ==<br />
The following members of the Eclipse Architecture Council have kindly agreed to mentor this project:<br />
<br />
* Chris Aniszczyk<br />
* Andrew Overholt<br />
<br />
== Initial Committers ==<br />
* Robin Rosenberg (project lead)?<br />
* Shawn Pearce (project lead) ?<br />
* Philippe Ombredanne<br />
(TODO: Robin: what about others?)<br />
<br />
== Initial Code Contribution ==<br />
The initial code contribution is based on the existing EGit code base licensed under the EPL. (this has already been approved by current comitters).<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGIT and JGit for anyone that contributed to the code base that will be contributed)<br />
(TODO: Robin+ Shawn: update all copyright headers in the code)<br />
<br />
=== Licensing and Intellectual property ===<br />
A point of note is that EGit depends on the JGit, a pure Java Git implementation of Git.<br />
JGit was originally licensed under a combination of GPL and LGPL and is now made available under a (BSD/Apache/MIT TBD) license. The developers of JGit are also the original developers of EGit.<br />
(TODO: Robin+ Shawn: pick license of JGit, and add header to JGit)<br />
<br />
Now Git itself is licensed under the GPL V2, but JGit is a clean implementation of the core Git data structures and as such has received the approval of the core Git maintainers (including LT, (TODO: Robin+ Shawn+Phil: get email confirmation from Linus + current lead maintainer on that topic)<br />
) to be licensed under any open source license the authors wish. Therefore the JGit authors have elected to license JGit under the (Apache/BSD/MIT TBD) license which is compatible with the Eclipse Public License.<br />
As part of the original code contribution review, JGit will be also submitted for approval per the Eclipse development process.<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGit and JGit for anyone that contributed to the code base that will be contributed)<br />
<br />
== Interested Parties ==<br />
TBD<br />
(TODO: all list interested individual and companies ....)<br />
<br />
* Ismael Juma<br />
* Neil Bartlett<br />
* Chris Aniszczyk<br />
<br />
== User community ==<br />
EGIt and JGit already have an established community and we expect that this community of users and contributors will join this new project at Eclipse. Of note is that the general support of Git on Windows is limited. By being platform neutral, EGit has the opportunity to provide advanced Git support also on this platform and serve the needs of a larger community.<br />
<br />
= Relation to other Eclipse projects and other open source projects =<br />
(TODO: Robin:review and add a few words for possible project we intersect with)<br />
<br />
* [http://git.or.cz Git] - The fast distributed SCM <br />
* JGit - a pure Java implementation of Git licensed under (BSD/Apache/MIT TBD ?) license.<br />
<br />
* Eclipse platform team support<br />
** CVS team provider<br />
** SVN team provider<br />
<br />
* Mylyn - a Task based IDE that provides privileged integration with Eclipse-supported team providers . A possible integration with EGit could be considered.<br />
<br />
* Buckminster<br />
<br />
== Tentative Development plan ==<br />
<br />
Some functionality already exists, but there is no real plan at the moment for lack of committed resources. The project's rough priorities are:<br />
<br />
Already done:<br />
<br />
* Connect to/create repositories for exiting projects<br />
* Create branches<br />
* Commit<br />
* Quickdiff against current revision<br />
* Resources decorators for tracked and modified resources as well as repository state<br />
* Basic compare of revisions<br />
<br />
Underway:<br />
* Cloning and updating from remote repositories<br />
<br />
Future:<br />
* Bisecting<br />
* Partial commits (i.e. committing partial changes)<br />
* Comprehensive handling of different character encodings in filenames and comments.<br />
* CRLF handling (unless we consider it unneeded)<br />
* Bugfixes for existing code<br />
* Formatting code for patch submission through e-mail<br />
* Apply patch<br />
* Rename/Copy tracking in compare revisions<br />
* Blame (annotate)<br />
* Merge<br />
* Rebase<br />
* External repository browser<br />
* Repacking (this a really a core Git feature and the one that can be really hard or impossible to perform in Java).<br />
* Rename tracking is an on-demand feature in git. Git does not record such information, it discovers it from content. The tight data structures in git makes implementing this in real time possible, but could still be a challenge.<br />
<br />
The project will deliver regular milestones ...<br />
(TODO: Robin: a rough sketch milestones plan....)</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=EGit/Proposal&diff=89887EGit/Proposal2008-03-31T18:13:21Z<p>Pombredanne.nexb.com: /* Introduction */</p>
<hr />
<div>= THIS IS A DRAFT, WORK IN PROGRESS PROPOSAL, NOT AN ACTUAL OFFICIAL ECLIPSE PROJECT PROPOSAL YET =<br />
<br />
<br />
The EGIT project is a proposed open source project under the Eclipse Technology Project.<br />
<br />
According to the [http://www.eclipse.org/projects/dev_process/ Eclipse Development Process], this proposal is intended to declare the intent and scope of the EGit project as well as to gather input from the Eclipse community. You are invited to comment on and/or join the project. Please send all feedback to the http://www.eclipse.org/newsportal/thread.php?group=eclipse.technology.egit newsgroup.<br />
<br />
= Background =<br />
(TODO: Shawn ? Here we need to put some quick intro on the value of a DVCS, and present a bit the field.<br />
I am sure Shawn has some good slides on that, he had made a presentation @ the GSOC mentor summit that we could extract some bits from.<br />
Traditional source code version control systems .....<br />
)<br />
<br />
= Introduction =<br />
The EGIT plugin is an Eclipse Team provider for Git (a.k.a. &quot;Stupid Content Tracker&quot;, http://git.or.cz).<br />
<br />
Git is the version control system originally developed for the Linux kernel by Linus Torvalds. One of the Git strength is its ability to support distributed version tracking as well as more centralized schemes, in contrast with traditional SCM that offer only a centralized model (such as CVS and Subversion) . Git is also very fast.<br />
Git usage has evolved beyond the Linux kernel team and is now used by many other projects -- both for open source and commercial development -- as a general purpose fast and distributed Source Code Management (SCM) tool. <br />
<br />
Git is a distributed SCM, which means every developer has a full copy of all history of every revision of the code making queries against the history very fast and versatile. The storage model also means most operations are ten to a hundred times faster than with traditional centralized SCM such as CVS or Subversion. The integrity of the code is guaranteed through the use of secure hashes on the content and history, plus optional GPG(PGP) key signing of tags.<br />
<br />
= Project Goal =<br />
The goal of the EGit project is to:<br />
* implement an Eclipse Team provider for the Git SCM,<br />
* work towards the definitions of new Team extensions and GUI paradigms to better support distributed SCM in general.<br />
<br />
= Project Scope =<br />
<br />
The project will implement Eclipse tooling for the JGit Java implementation of Git. <br />
Specific attention will be focused on performance. Performance is a big deal with Git. It affects what can be done by being so much faster. Things that couldn't be done because of time constraints are now possible. These things like very fast checkouts, branching, branch switching, merging, tagging, software archeology and synchronization. Merge speed is probably the most important feature.<br />
The EGit plugin meta data shall be fully compatible with the meta data created by the native Git version so both can be used on the same checkout out repository.<br />
<br />
Beyond the Git support implementation, the project will work towards defining new essential extensions to the Eclipse core platform Team framework to account for the specific issues and features provided by distributed version control systems.<br />
It is also our intent to reach out to other project that implement support for distributed SCM in Eclipse to collaborate and exchange in that domain.<br />
<br />
Finally, the implications of adopting a distributed SCM approach can bring significant benefits especially for large open source projects such as Eclipse and can help lower the barrier to entry for new contributors and source code experimentation easier.<br />
The project will try to be a fervent advocate of distributed SCM benefits to the Eclipse community.<br />
<br />
= Project description =<br />
<br />
The Git team provider will provide the ability to do all everyday task in a Git work flow from inside Eclipse, integrated with the Eclipse Team framework, and providing new features specific to Git and distributed version control management.<br />
<br />
= Features =<br />
* Initial project setup: Support to create new Git repositories.<br />
<br />
* Importing existing code: Existing local Git repositories as well as remote repository can be imported. Remote repositories are imported by &quot;cloning&quot; them resulting in a local copy.<br />
<br />
* Replicating repositories: It shall be possible to distribute local version to other repositories through &quot;push&quot; operations as well as patches distributed by electronic mail. Receiving content shall be possible by fetching content via the git supported protocols (raw, ssh and http based) and via e-mailed patches directly from mailboxes, files or clipboard. &quot;Bundles&quot; shall also be supported.<br />
<br />
* Quickdiff against any version shall be supported.<br />
<br />
* Comparing any versions shall be supported.<br />
<br />
* Producing git-format patches to the clipboard shall be supported.<br />
<br />
* Selective commit (using the Quickdiff markers) shall be supported<br />
<br />
* Merge shall be supported<br />
<br />
* Cherry picking shall be supported<br />
<br />
* Re-base of branches shall be supported. This includes splitting, reordering and squashing (alternate term not to be confused with the normal meaning of &quot;merge&quot; in SCM terminology).<br />
<br />
* Branch switching, committing, amending commits and reset shall be supported.<br />
<br />
* Partial checkouts (currently not a native Git feature) shall be possible.<br />
<br />
* Some form of synchronization with CVS or other SCM. At least export to CVS, like git cvsexportcommit. Ideally Git commits shall be exportable to a CVS repository with the same structure. CVS import is a much harder problem where no perfect solution exists.<br />
<br />
== Perspective and Views ==<br />
* A Git perspective will be provided for browsing repositories before importing Git projects, pre-configured with available Team views and new EGit views.<br />
* History viewer: An history viewer with graphical presentation of history and access for compare editors will be developed as well as other views that may be useful for distributed SCM.<br />
* Repository browser : An explorer for examining Git repositories not connected to an eclipse project. Importing projects shall be possible from here.<br />
* Global directory: An explorer to find manage Git repositories ( at the minimum minimum all known local clones and their &quot;remotes&quot;)<br />
<br />
== Extension points ==<br />
Quickdiff must be enhanced to allow selective committing.<br />
New extensions points will be designed as needed to expose new core extensibility common to many distributed SCM.<br />
<br />
== Extensions to existing Eclipse Team functionality ==<br />
Team provider<br />
Resource decorators<br />
Quickdiff provider<br />
<br />
<br />
= Organization=<br />
We propose this project should be undertaken as an incubator project with the Technology project.<br />
<br />
== Mentors ==<br />
The following members of the Eclipse Architecture Council have kindly agreed to mentor this project:<br />
<br />
* Chris Aniszczyk<br />
* Andrew Overholt<br />
<br />
== Initial Committers ==<br />
* Robin Rosenberg (project lead)?<br />
* Shawn Pearce (project lead) ?<br />
* Philippe Ombredanne<br />
(TODO: Robin: what about others?)<br />
<br />
== Initial Code Contribution ==<br />
The initial code contribution is based on the existing EGit code base licensed under the EPL. (this has already been approved by current comitters).<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGIT and JGit for anyone that contributed to the code base that will be contributed)<br />
(TODO: Robin+ Shawn: update all copyright headers in the code)<br />
<br />
=== Licensing and Intellectual property ===<br />
A point of note is that EGit depends on the JGit, a pure Java Git implementation of Git.<br />
JGit was originally licensed under a combination of GPL and LGPL and is now made available under a (BSD/Apache/MIT TBD) license. The developers of JGit are also the original developers of EGit.<br />
(TODO: Robin+ Shawn: pick license of JGit, and add header to JGit)<br />
<br />
Now Git itself is licensed under the GPL V2, but JGit is a clean implementation of the core Git data structures and as such has received the approval of the core Git maintainers (including LT, (TODO: Robin+ Shawn+Phil: get email confirmation from Linus + current lead maintainer on that topic)<br />
) to be licensed under any open source license the authors wish. Therefore the JGit authors have elected to license JGit under the (Apache/BSD/MIT TBD) license which is compatible with the Eclipse Public License.<br />
As part of the original code contribution review, JGit will be also submitted for approval per the Eclipse development process.<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGit and JGit for anyone that contributed to the code base that will be contributed)<br />
<br />
== Interested Parties ==<br />
TBD<br />
(TODO: all list interested individual and companies ....)<br />
<br />
* Ismael Juma<br />
* Neil Bartlett<br />
* Chris Aniszczyk<br />
<br />
== User community ==<br />
EGIt and JGit already have an established community and we expect that this community of users and contributors will join this new project at Eclipse. Of note is that the general support of Git on Windows is limited. By being platform neutral, EGit has the opportunity to provide advanced Git support also on this platform and serve the needs of a larger community.<br />
<br />
= Relation to other Eclipse projects and to other open source projects =<br />
(TODO: Robin:review and add a few words for possible project we intersect with)<br />
<br />
* [http://git.or.cz Git] - The fast distributed SCM <br />
* JGit - a pure Java implementation of Git licensed under (BSD/Apache/MIT TBD ?) license.<br />
<br />
* Eclipse platform team support<br />
** CVS team provider<br />
** SVN team provider<br />
<br />
* Mylyn - a Task based IDE that provides privileged integration with Eclipse-supported team providers . A possible integration with EGit could be considered.<br />
<br />
* Buckminster<br />
<br />
== Tentative Development plan ==<br />
<br />
Some functionality already exists, but there is no real plan at the moment for lack of committed resources. The project's rough priorities are:<br />
<br />
Already done:<br />
<br />
* Connect to/create repositories for exiting projects<br />
* Create branches<br />
* Commit<br />
* Quickdiff against current revision<br />
* Resources decorators for tracked and modified resources as well as repository state<br />
* Basic compare of revisions<br />
<br />
Underway:<br />
* Cloning and updating from remote repositories<br />
<br />
Future:<br />
* Bisecting<br />
* Partial commits (i.e. committing partial changes)<br />
* Comprehensive handling of different character encodings in filenames and comments.<br />
* CRLF handling (unless we consider it unneeded)<br />
* Bugfixes for existing code<br />
* Formatting code for patch submission through e-mail<br />
* Apply patch<br />
* Rename/Copy tracking in compare revisions<br />
* Blame (annotate)<br />
* Merge<br />
* Rebase<br />
* External repository browser<br />
* Repacking (this a really a core Git feature and the one that can be really hard or impossible to perform in Java).<br />
* Rename tracking is an on-demand feature in git. Git does not record such information, it discovers it from content. The tight data structures in git makes implementing this in real time possible, but could still be a challenge.<br />
<br />
The project will deliver regular milestones ...<br />
(TODO: Robin: a rough sketch milestones plan....)</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=EGit/Proposal&diff=89886EGit/Proposal2008-03-31T18:12:05Z<p>Pombredanne.nexb.com: /* Introduction */</p>
<hr />
<div>= THIS IS A DRAFT, WORK IN PROGRESS PROPOSAL, NOT AN ACTUAL OFFICIAL ECLIPSE PROJECT PROPOSAL YET =<br />
<br />
<br />
The EGIT project is a proposed open source project under the Eclipse Technology Project.<br />
<br />
According to the [http://www.eclipse.org/projects/dev_process/ Eclipse Development Process], this proposal is intended to declare the intent and scope of the EGit project as well as to gather input from the Eclipse community. You are invited to comment on and/or join the project. Please send all feedback to the http://www.eclipse.org/newsportal/thread.php?group=eclipse.technology.egit newsgroup.<br />
<br />
= Background =<br />
(TODO: Shawn ? Here we need to put some quick intro on the value of a DVCS, and present a bit the field.<br />
I am sure Shawn has some good slides on that, he had made a presentation @ the GSOC mentor summit that we could extract some bits from.<br />
Traditional source code version control systems .....<br />
)<br />
<br />
= Introduction =<br />
The EGIT plugin is an Eclipse Team provider for Git (a.k.a. &quot;Stupid Content Tracker&quot;, http://git.or.cz).<br />
<br />
Git is the version control system originally developed for the Linux kernel by Linus Torvalds, and is now a general Source Code Management (SCM) tool. One of the Git strength is its ability to support distributed version tracking as well as more centralized schemes, in contrast with traditional SCM that offer only a centralized model (such as CVS and Subversion) . Git is also very fast.<br />
Beyond the Linux kernel team, Git is now used by many other projects, both for open source and commercial development. <br />
<br />
Git is a distributed SCM, which means every developer has a full copy of all history of every revision of the code making queries against the history very fast and versatile. The storage model also means most operations are ten to a hundred times faster than with traditional centralized SCM such as CVS or Subversion. The integrity of the code is guaranteed through the use of secure hashes on the content and history, plus optional GPG(PGP) key signing of tags.<br />
<br />
= Project Goal =<br />
The goal of the EGit project is to:<br />
* implement an Eclipse Team provider for the Git SCM,<br />
* work towards the definitions of new Team extensions and GUI paradigms to better support distributed SCM in general.<br />
<br />
= Project Scope =<br />
<br />
The project will implement Eclipse tooling for the JGit Java implementation of Git. <br />
Specific attention will be focused on performance. Performance is a big deal with Git. It affects what can be done by being so much faster. Things that couldn't be done because of time constraints are now possible. These things like very fast checkouts, branching, branch switching, merging, tagging, software archeology and synchronization. Merge speed is probably the most important feature.<br />
The EGit plugin meta data shall be fully compatible with the meta data created by the native Git version so both can be used on the same checkout out repository.<br />
<br />
Beyond the Git support implementation, the project will work towards defining new essential extensions to the Eclipse core platform Team framework to account for the specific issues and features provided by distributed version control systems.<br />
It is also our intent to reach out to other project that implement support for distributed SCM in Eclipse to collaborate and exchange in that domain.<br />
<br />
Finally, the implications of adopting a distributed SCM approach can bring significant benefits especially for large open source projects such as Eclipse and can help lower the barrier to entry for new contributors and source code experimentation easier.<br />
The project will try to be a fervent advocate of distributed SCM benefits to the Eclipse community.<br />
<br />
= Project description =<br />
<br />
The Git team provider will provide the ability to do all everyday task in a Git work flow from inside Eclipse, integrated with the Eclipse Team framework, and providing new features specific to Git and distributed version control management.<br />
<br />
= Features =<br />
* Initial project setup: Support to create new Git repositories.<br />
<br />
* Importing existing code: Existing local Git repositories as well as remote repository can be imported. Remote repositories are imported by &quot;cloning&quot; them resulting in a local copy.<br />
<br />
* Replicating repositories: It shall be possible to distribute local version to other repositories through &quot;push&quot; operations as well as patches distributed by electronic mail. Receiving content shall be possible by fetching content via the git supported protocols (raw, ssh and http based) and via e-mailed patches directly from mailboxes, files or clipboard. &quot;Bundles&quot; shall also be supported.<br />
<br />
* Quickdiff against any version shall be supported.<br />
<br />
* Comparing any versions shall be supported.<br />
<br />
* Producing git-format patches to the clipboard shall be supported.<br />
<br />
* Selective commit (using the Quickdiff markers) shall be supported<br />
<br />
* Merge shall be supported<br />
<br />
* Cherry picking shall be supported<br />
<br />
* Re-base of branches shall be supported. This includes splitting, reordering and squashing (alternate term not to be confused with the normal meaning of &quot;merge&quot; in SCM terminology).<br />
<br />
* Branch switching, committing, amending commits and reset shall be supported.<br />
<br />
* Partial checkouts (currently not a native Git feature) shall be possible.<br />
<br />
* Some form of synchronization with CVS or other SCM. At least export to CVS, like git cvsexportcommit. Ideally Git commits shall be exportable to a CVS repository with the same structure. CVS import is a much harder problem where no perfect solution exists.<br />
<br />
== Perspective and Views ==<br />
* A Git perspective will be provided for browsing repositories before importing Git projects, pre-configured with available Team views and new EGit views.<br />
* History viewer: An history viewer with graphical presentation of history and access for compare editors will be developed as well as other views that may be useful for distributed SCM.<br />
* Repository browser : An explorer for examining Git repositories not connected to an eclipse project. Importing projects shall be possible from here.<br />
* Global directory: An explorer to find manage Git repositories ( at the minimum minimum all known local clones and their &quot;remotes&quot;)<br />
<br />
== Extension points ==<br />
Quickdiff must be enhanced to allow selective committing.<br />
New extensions points will be designed as needed to expose new core extensibility common to many distributed SCM.<br />
<br />
== Extensions to existing Eclipse Team functionality ==<br />
Team provider<br />
Resource decorators<br />
Quickdiff provider<br />
<br />
<br />
= Organization=<br />
We propose this project should be undertaken as an incubator project with the Technology project.<br />
<br />
== Mentors ==<br />
The following members of the Eclipse Architecture Council have kindly agreed to mentor this project:<br />
<br />
* Chris Aniszczyk<br />
* Andrew Overholt<br />
<br />
== Initial Committers ==<br />
* Robin Rosenberg (project lead)?<br />
* Shawn Pearce (project lead) ?<br />
* Philippe Ombredanne<br />
(TODO: Robin: what about others?)<br />
<br />
== Initial Code Contribution ==<br />
The initial code contribution is based on the existing EGit code base licensed under the EPL. (this has already been approved by current comitters).<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGIT and JGit for anyone that contributed to the code base that will be contributed)<br />
(TODO: Robin+ Shawn: update all copyright headers in the code)<br />
<br />
=== Licensing and Intellectual property ===<br />
A point of note is that EGit depends on the JGit, a pure Java Git implementation of Git.<br />
JGit was originally licensed under a combination of GPL and LGPL and is now made available under a (BSD/Apache/MIT TBD) license. The developers of JGit are also the original developers of EGit.<br />
(TODO: Robin+ Shawn: pick license of JGit, and add header to JGit)<br />
<br />
Now Git itself is licensed under the GPL V2, but JGit is a clean implementation of the core Git data structures and as such has received the approval of the core Git maintainers (including LT, (TODO: Robin+ Shawn+Phil: get email confirmation from Linus + current lead maintainer on that topic)<br />
) to be licensed under any open source license the authors wish. Therefore the JGit authors have elected to license JGit under the (Apache/BSD/MIT TBD) license which is compatible with the Eclipse Public License.<br />
As part of the original code contribution review, JGit will be also submitted for approval per the Eclipse development process.<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGit and JGit for anyone that contributed to the code base that will be contributed)<br />
<br />
== Interested Parties ==<br />
TBD<br />
(TODO: all list interested individual and companies ....)<br />
<br />
* Ismael Juma<br />
* Neil Bartlett<br />
* Chris Aniszczyk<br />
<br />
== User community ==<br />
EGIt and JGit already have an established community and we expect that this community of users and contributors will join this new project at Eclipse. Of note is that the general support of Git on Windows is limited. By being platform neutral, EGit has the opportunity to provide advanced Git support also on this platform and serve the needs of a larger community.<br />
<br />
= Relation to other Eclipse projects and to other open source projects =<br />
(TODO: Robin:review and add a few words for possible project we intersect with)<br />
<br />
* [http://git.or.cz Git] - The fast distributed SCM <br />
* JGit - a pure Java implementation of Git licensed under (BSD/Apache/MIT TBD ?) license.<br />
<br />
* Eclipse platform team support<br />
** CVS team provider<br />
** SVN team provider<br />
<br />
* Mylyn - a Task based IDE that provides privileged integration with Eclipse-supported team providers . A possible integration with EGit could be considered.<br />
<br />
* Buckminster<br />
<br />
== Tentative Development plan ==<br />
<br />
Some functionality already exists, but there is no real plan at the moment for lack of committed resources. The project's rough priorities are:<br />
<br />
Already done:<br />
<br />
* Connect to/create repositories for exiting projects<br />
* Create branches<br />
* Commit<br />
* Quickdiff against current revision<br />
* Resources decorators for tracked and modified resources as well as repository state<br />
* Basic compare of revisions<br />
<br />
Underway:<br />
* Cloning and updating from remote repositories<br />
<br />
Future:<br />
* Bisecting<br />
* Partial commits (i.e. committing partial changes)<br />
* Comprehensive handling of different character encodings in filenames and comments.<br />
* CRLF handling (unless we consider it unneeded)<br />
* Bugfixes for existing code<br />
* Formatting code for patch submission through e-mail<br />
* Apply patch<br />
* Rename/Copy tracking in compare revisions<br />
* Blame (annotate)<br />
* Merge<br />
* Rebase<br />
* External repository browser<br />
* Repacking (this a really a core Git feature and the one that can be really hard or impossible to perform in Java).<br />
* Rename tracking is an on-demand feature in git. Git does not record such information, it discovers it from content. The tight data structures in git makes implementing this in real time possible, but could still be a challenge.<br />
<br />
The project will deliver regular milestones ...<br />
(TODO: Robin: a rough sketch milestones plan....)</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=EGit/Proposal&diff=89876EGit/Proposal2008-03-31T17:59:33Z<p>Pombredanne.nexb.com: /* Mentors */</p>
<hr />
<div>= THIS IS A DRAFT, WORK IN PROGRESS PROPOSAL, NOT AN ACTUAL OFFICIAL ECLIPSE PROJECT PROPOSAL YET =<br />
<br />
<br />
The EGIT project is a proposed open source project under the Eclipse Technology Project.<br />
<br />
According to the [http://www.eclipse.org/projects/dev_process/ Eclipse Development Process], this proposal is intended to declare the intent and scope of the EGit project as well as to gather input from the Eclipse community. You are invited to comment on and/or join the project. Please send all feedback to the http://www.eclipse.org/newsportal/thread.php?group=eclipse.technology.egit newsgroup.<br />
<br />
= Background =<br />
(TODO: Shawn ? Here we need to put some quick intro on the value of a DVCS, and present a bit the field.<br />
I am sure Shawn has some good slides on that, he had made a presentation @ the GSOC mentor summit that we could extract some bits from.<br />
Traditional source code version control systems .....<br />
)<br />
<br />
= Introduction =<br />
The EGIT plugin is an Eclipse Team provider for Git (a.k.a. &quot;Stupid Content Tracker&quot;, http://git.or.cz).<br />
<br />
Git is the version control system originally developed for the Linux kernel by Linus Torvalds, and is now a general Source Code Management (SCM) tool. One of the Git strength is its ability to support distributed version tracking as well as more centralized schemes, in contrast with tradition SCM that offer only a centralized model (such as CVS and Subversion) and to be very fast.<br />
Beyond the Linux kernel team, Git is now used by many other projects, both for open source and commercial development. <br />
<br />
Git is a distributed SCM, which means every developer has a full copy of all history of every revision of the code making queries against the history very fast and versatile. The storage model also means most operations are ten to a hundred times faster than with traditional centralized SCM such as CVS or Subversion. The integrity of the code is guaranteed through the use of secure hashes on the content and history, plus optional GPG(PGP) key signing of tags.<br />
<br />
= Project Goal =<br />
The goal of the EGit project is to:<br />
* implement an Eclipse Team provider for the Git SCM,<br />
* work towards the definitions of new Team extensions and GUI paradigms to better support distributed SCM in general.<br />
<br />
= Project Scope =<br />
<br />
The project will implement Eclipse tooling for the JGit Java implementation of Git. <br />
Specific attention will be focused on performance. Performance is a big deal with Git. It affects what can be done by being so much faster. Things that couldn't be done because of time constraints are now possible. These things like very fast checkouts, branching, branch switching, merging, tagging, software archeology and synchronization. Merge speed is probably the most important feature.<br />
The EGit plugin meta data shall be fully compatible with the meta data created by the native Git version so both can be used on the same checkout out repository.<br />
<br />
Beyond the Git support implementation, the project will work towards defining new essential extensions to the Eclipse core platform Team framework to account for the specific issues and features provided by distributed version control systems.<br />
It is also our intent to reach out to other project that implement support for distributed SCM in Eclipse to collaborate and exchange in that domain.<br />
<br />
Finally, the implications of adopting a distributed SCM approach can bring significant benefits especially for large open source projects such as Eclipse and can help lower the barrier to entry for new contributors and source code experimentation easier.<br />
The project will try to be a fervent advocate of distributed SCM benefits to the Eclipse community.<br />
<br />
= Project description =<br />
<br />
The Git team provider will provide the ability to do all everyday task in a Git work flow from inside Eclipse, integrated with the Eclipse Team framework, and providing new features specific to Git and distributed version control management.<br />
<br />
= Features =<br />
* Initial project setup: Support to create new Git repositories.<br />
<br />
* Importing existing code: Existing local Git repositories as well as remote repository can be imported. Remote repositories are imported by &quot;cloning&quot; them resulting in a local copy.<br />
<br />
* Replicating repositories: It shall be possible to distribute local version to other repositories through &quot;push&quot; operations as well as patches distributed by electronic mail. Receiving content shall be possible by fetching content via the git supported protocols (raw, ssh and http based) and via e-mailed patches directly from mailboxes, files or clipboard. &quot;Bundles&quot; shall also be supported.<br />
<br />
* Quickdiff against any version shall be supported.<br />
<br />
* Comparing any versions shall be supported.<br />
<br />
* Producing git-format patches to the clipboard shall be supported.<br />
<br />
* Selective commit (using the Quickdiff markers) shall be supported<br />
<br />
* Merge shall be supported<br />
<br />
* Cherry picking shall be supported<br />
<br />
* Re-base of branches shall be supported. This includes splitting, reordering and squashing (alternate term not to be confused with the normal meaning of &quot;merge&quot; in SCM terminology).<br />
<br />
* Branch switching, committing, amending commits and reset shall be supported.<br />
<br />
* Partial checkouts (currently not a native Git feature) shall be possible.<br />
<br />
* Some form of synchronization with CVS or other SCM. At least export to CVS, like git cvsexportcommit. Ideally Git commits shall be exportable to a CVS repository with the same structure. CVS import is a much harder problem where no perfect solution exists.<br />
<br />
== Perspective and Views ==<br />
* A Git perspective will be provided for browsing repositories before importing Git projects, pre-configured with available Team views and new EGit views.<br />
* History viewer: An history viewer with graphical presentation of history and access for compare editors will be developed as well as other views that may be useful for distributed SCM.<br />
* Repository browser : An explorer for examining Git repositories not connected to an eclipse project. Importing projects shall be possible from here.<br />
* Global directory: An explorer to find manage Git repositories ( at the minimum minimum all known local clones and their &quot;remotes&quot;)<br />
<br />
== Extension points ==<br />
Quickdiff must be enhanced to allow selective committing.<br />
New extensions points will be designed as needed to expose new core extensibility common to many distributed SCM.<br />
<br />
== Extensions to existing Eclipse Team functionality ==<br />
Team provider<br />
Resource decorators<br />
Quickdiff provider<br />
<br />
<br />
= Organization=<br />
We propose this project should be undertaken as an incubator project with the Technology project.<br />
<br />
== Mentors ==<br />
The following members of the Eclipse Architecture Council have kindly agreed to mentor this project:<br />
<br />
* Chris Aniszczyk<br />
* Andrew Overholt<br />
<br />
== Initial Committers ==<br />
* Robin Rosenberg (project lead)?<br />
* Shawn Pearce (project lead) ?<br />
* Philippe Ombredanne<br />
(TODO: Robin: what about others?)<br />
<br />
== Initial Code Contribution ==<br />
The initial code contribution is based on the existing EGit code base licensed under the EPL. (this has already been approved by current comitters).<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGIT and JGit for anyone that contributed to the code base that will be contributed)<br />
(TODO: Robin+ Shawn: update all copyright headers in the code)<br />
<br />
=== Licensing and Intellectual property ===<br />
A point of note is that EGit depends on the JGit, a pure Java Git implementation of Git.<br />
JGit was originally licensed under a combination of GPL and LGPL and is now made available under a (BSD/Apache/MIT TBD) license. The developers of JGit are also the original developers of EGit.<br />
(TODO: Robin+ Shawn: pick license of JGit, and add header to JGit)<br />
<br />
Now Git itself is licensed under the GPL V2, but JGit is a clean implementation of the core Git data structures and as such has received the approval of the core Git maintainers (including LT, (TODO: Robin+ Shawn+Phil: get email confirmation from Linus + current lead maintainer on that topic)<br />
) to be licensed under any open source license the authors wish. Therefore the JGit authors have elected to license JGit under the (Apache/BSD/MIT TBD) license which is compatible with the Eclipse Public License.<br />
As part of the original code contribution review, JGit will be also submitted for approval per the Eclipse development process.<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGit and JGit for anyone that contributed to the code base that will be contributed)<br />
<br />
== Interested Parties ==<br />
TBD<br />
(TODO: all list interested individual and companies ....)<br />
<br />
* Ismael Juma<br />
* Neil Bartlett<br />
* Chris Aniszczyk<br />
<br />
== User community ==<br />
EGIt and JGit already have an established community and we expect that this community of users and contributors will join this new project at Eclipse. Of note is that the general support of Git on Windows is limited. By being platform neutral, EGit has the opportunity to provide advanced Git support also on this platform and serve the needs of a larger community.<br />
<br />
= Relation to other Eclipse projects and to other open source projects =<br />
(TODO: Robin:review and add a few words for possible project we intersect with)<br />
<br />
* [http://git.or.cz Git] - The fast distributed SCM <br />
* JGit - a pure Java implementation of Git licensed under (BSD/Apache/MIT TBD ?) license.<br />
<br />
* Eclipse platform team support<br />
** CVS team provider<br />
** SVN team provider<br />
<br />
* Mylyn - a Task based IDE that provides privileged integration with Eclipse-supported team providers . A possible integration with EGit could be considered.<br />
<br />
* Buckminster<br />
<br />
== Tentative Development plan ==<br />
<br />
Some functionality already exists, but there is no real plan at the moment for lack of committed resources. The project's rough priorities are:<br />
<br />
Already done:<br />
<br />
* Connect to/create repositories for exiting projects<br />
* Create branches<br />
* Commit<br />
* Quickdiff against current revision<br />
* Resources decorators for tracked and modified resources as well as repository state<br />
* Basic compare of revisions<br />
<br />
Underway:<br />
* Cloning and updating from remote repositories<br />
<br />
Future:<br />
* Bisecting<br />
* Partial commits (i.e. committing partial changes)<br />
* Comprehensive handling of different character encodings in filenames and comments.<br />
* CRLF handling (unless we consider it unneeded)<br />
* Bugfixes for existing code<br />
* Formatting code for patch submission through e-mail<br />
* Apply patch<br />
* Rename/Copy tracking in compare revisions<br />
* Blame (annotate)<br />
* Merge<br />
* Rebase<br />
* External repository browser<br />
* Repacking (this a really a core Git feature and the one that can be really hard or impossible to perform in Java).<br />
* Rename tracking is an on-demand feature in git. Git does not record such information, it discovers it from content. The tight data structures in git makes implementing this in real time possible, but could still be a challenge.<br />
<br />
The project will deliver regular milestones ...<br />
(TODO: Robin: a rough sketch milestones plan....)</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=EGit/Proposal&diff=89666EGit/Proposal2008-03-30T02:44:21Z<p>Pombredanne.nexb.com: /* Relation to other Eclipse projects and to other open source projects */</p>
<hr />
<div>= THIS IS A DRAFT, WORK IN PROGRESS PROPOSAL, NOT AN ACTUAL OFFICIAL ECLIPSE PROJECT PROPOSAL YET =<br />
<br />
<br />
The EGIT project is a proposed open source project under the Eclipse Technology Project.<br />
<br />
According to the [http://www.eclipse.org/projects/dev_process/ Eclipse Development Process], this proposal is intended to declare the intent and scope of the EGit project as well as to gather input from the Eclipse community. You are invited to comment on and/or join the project. Please send all feedback to the http://www.eclipse.org/newsportal/thread.php?group=eclipse.technology.egit newsgroup.<br />
<br />
= Background =<br />
(TODO: Shawn ? Here we need to put some quick intro on the value of a DVCS, and present a bit the field.<br />
I am sure Shawn has some good slides on that, he had made a presentation @ the GSOC mentor summit that we could extract some bits from.<br />
Traditional source code version control systems .....<br />
)<br />
<br />
= Introduction =<br />
The EGIT plugin is an Eclipse Team provider for Git (a.k.a. &quot;Stupid Content Tracker&quot;, http://git.or.cz).<br />
<br />
Git is the version control system originally developed for the Linux kernel by Linus Torvalds, and is now a general Source Code Management (SCM) tool. One of the Git strength is its ability to support distributed version tracking as well as more centralized schemes, in contrast with tradition SCM that offer only a centralized model (such as CVS and Subversion) and to be very fast.<br />
Beyond the Linux kernel team, Git is now used by many other projects, both for open source and commercial development. <br />
<br />
Git is a distributed SCM, which means every developer has a full copy of all history of every revision of the code making queries against the history very fast and versatile. The storage model also means most operations are ten to a hundred times faster than with traditional centralized SCM such as CVS or Subversion. The integrity of the code is guaranteed through the use of secure hashes on the content and history, plus optional GPG(PGP) key signing of tags.<br />
<br />
= Project Goal =<br />
The goal of the EGit project is to:<br />
* implement an Eclipse Team provider for the Git SCM,<br />
* work towards the definitions of new Team extensions and GUI paradigms to better support distributed SCM in general.<br />
<br />
= Project Scope =<br />
<br />
The project will implement Eclipse tooling for the JGit Java implementation of Git. <br />
Specific attention will be focused on performance. Performance is a big deal with Git. It affects what can be done by being so much faster. Things that couldn't be done because of time constraints are now possible. These things like very fast checkouts, branching, branch switching, merging, tagging, software archeology and synchronization. Merge speed is probably the most important feature.<br />
The EGit plugin meta data shall be fully compatible with the meta data created by the native Git version so both can be used on the same checkout out repository.<br />
<br />
Beyond the Git support implementation, the project will work towards defining new essential extensions to the Eclipse core platform Team framework to account for the specific issues and features provided by distributed version control systems.<br />
It is also our intent to reach out to other project that implement support for distributed SCM in Eclipse to collaborate and exchange in that domain.<br />
<br />
Finally, the implications of adopting a distributed SCM approach can bring significant benefits especially for large open source projects such as Eclipse and can help lower the barrier to entry for new contributors and source code experimentation easier.<br />
The project will try to be a fervent advocate of distributed SCM benefits to the Eclipse community.<br />
<br />
= Project description =<br />
<br />
The Git team provider will provide the ability to do all everyday task in a Git work flow from inside Eclipse, integrated with the Eclipse Team framework, and providing new features specific to Git and distributed version control management.<br />
<br />
= Features =<br />
* Initial project setup: Support to create new Git repositories.<br />
<br />
* Importing existing code: Existing local Git repositories as well as remote repository can be imported. Remote repositories are imported by &quot;cloning&quot; them resulting in a local copy.<br />
<br />
* Replicating repositories: It shall be possible to distribute local version to other repositories through &quot;push&quot; operations as well as patches distributed by electronic mail. Receiving content shall be possible by fetching content via the git supported protocols (raw, ssh and http based) and via e-mailed patches directly from mailboxes, files or clipboard. &quot;Bundles&quot; shall also be supported.<br />
<br />
* Quickdiff against any version shall be supported.<br />
<br />
* Comparing any versions shall be supported.<br />
<br />
* Producing git-format patches to the clipboard shall be supported.<br />
<br />
* Selective commit (using the Quickdiff markers) shall be supported<br />
<br />
* Merge shall be supported<br />
<br />
* Cherry picking shall be supported<br />
<br />
* Re-base of branches shall be supported. This includes splitting, reordering and squashing (alternate term not to be confused with the normal meaning of &quot;merge&quot; in SCM terminology).<br />
<br />
* Branch switching, committing, amending commits and reset shall be supported.<br />
<br />
* Partial checkouts (currently not a native Git feature) shall be possible.<br />
<br />
* Some form of synchronization with CVS or other SCM. At least export to CVS, like git cvsexportcommit. Ideally Git commits shall be exportable to a CVS repository with the same structure. CVS import is a much harder problem where no perfect solution exists.<br />
<br />
== Perspective and Views ==<br />
* A Git perspective will be provided for browsing repositories before importing Git projects, pre-configured with available Team views and new EGit views.<br />
* History viewer: An history viewer with graphical presentation of history and access for compare editors will be developed as well as other views that may be useful for distributed SCM.<br />
* Repository browser : An explorer for examining Git repositories not connected to an eclipse project. Importing projects shall be possible from here.<br />
* Global directory: An explorer to find manage Git repositories ( at the minimum minimum all known local clones and their &quot;remotes&quot;)<br />
<br />
== Extension points ==<br />
Quickdiff must be enhanced to allow selective committing.<br />
New extensions points will be designed as needed to expose new core extensibility common to many distributed SCM.<br />
<br />
== Extensions to existing Eclipse Team functionality ==<br />
Team provider<br />
Resource decorators<br />
Quickdiff provider<br />
<br />
<br />
= Organization=<br />
We propose this project should be undertaken as an incubator project with the Technology project.<br />
<br />
== Mentors ==<br />
TBD<br />
(TODO: Phil approach potential mentors from the architecture council)<br />
== Initial Committers ==<br />
* Robin Rosenberg (project lead)?<br />
* Shawn Pearce (project lead) ?<br />
* Philippe Ombredanne<br />
(TODO: Robin: what about others?)<br />
<br />
== Initial Code Contribution ==<br />
The initial code contribution is based on the existing EGit code base licensed under the EPL. (this has already been approved by current comitters).<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGIT and JGit for anyone that contributed to the code base that will be contributed)<br />
(TODO: Robin+ Shawn: update all copyright headers in the code)<br />
<br />
=== Licensing and Intellectual property ===<br />
A point of note is that EGit depends on the JGit, a pure Java Git implementation of Git.<br />
JGit was originally licensed under a combination of GPL and LGPL and is now made available under a (BSD/Apache/MIT TBD) license. The developers of JGit are also the original developers of EGit.<br />
(TODO: Robin+ Shawn: pick license of JGit, and add header to JGit)<br />
<br />
Now Git itself is licensed under the GPL V2, but JGit is a clean implementation of the core Git data structures and as such has received the approval of the core Git maintainers (including LT, (TODO: Robin+ Shawn+Phil: get email confirmation from Linus + current lead maintainer on that topic)<br />
) to be licensed under any open source license the authors wish. Therefore the JGit authors have elected to license JGit under the (Apache/BSD/MIT TBD) license which is compatible with the Eclipse Public License.<br />
As part of the original code contribution review, JGit will be also submitted for approval per the Eclipse development process.<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGit and JGit for anyone that contributed to the code base that will be contributed)<br />
<br />
== Interested Parties ==<br />
TBD<br />
(TODO: all list interested individual and companies ....)<br />
<br />
== User community ==<br />
EGIt and JGit already have an established community and we expect that this community of users and contributors will join this new project at Eclipse. Of note is that the general support of Git on Windows is limited. By being platform neutral, EGit has the opportunity to provide advanced Git support also on this platform and serve the needs of a larger community.<br />
<br />
= Relation to other Eclipse projects and to other open source projects =<br />
(TODO: Robin:review and add a few words for possible project we intersect with)<br />
<br />
* [http://git.or.cz Git] - The fast distributed SCM <br />
* JGit - a pure Java implementation of Git licensed under (BSD/Apache/MIT TBD ?) license.<br />
<br />
* Eclipse platform team support<br />
** CVS team provider<br />
** SVN team provider<br />
<br />
* Mylyn - a Task based IDE that provides privileged integration with Eclipse-supported team providers . A possible integration with EGit could be considered.<br />
<br />
* Buckminster<br />
<br />
== Tentative Development plan ==<br />
<br />
Some functionality already exists, but there is no real plan at the moment for lack of committed resources. The project's rough priorities are:<br />
<br />
Already done:<br />
<br />
* Connect to/create repositories for exiting projects<br />
* Create branches<br />
* Commit<br />
* Quickdiff against current revision<br />
* Resources decorators for tracked and modified resources as well as repository state<br />
* Basic compare of revisions<br />
<br />
Underway:<br />
* Cloning and updating from remote repositories<br />
<br />
Future:<br />
* Bisecting<br />
* Partial commits (i.e. committing partial changes)<br />
* Comprehensive handling of different character encodings in filenames and comments.<br />
* CRLF handling (unless we consider it unneeded)<br />
* Bugfixes for existing code<br />
* Formatting code for patch submission through e-mail<br />
* Apply patch<br />
* Rename/Copy tracking in compare revisions<br />
* Blame (annotate)<br />
* Merge<br />
* Rebase<br />
* External repository browser<br />
* Repacking (this a really a core Git feature and the one that can be really hard or impossible to perform in Java).<br />
* Rename tracking is an on-demand feature in git. Git does not record such information, it discovers it from content. The tight data structures in git makes implementing this in real time possible, but could still be a challenge.<br />
<br />
The project will deliver regular milestones ...<br />
(TODO: Robin: a rough sketch milestones plan....)</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=EGit/Proposal&diff=89665EGit/Proposal2008-03-30T02:44:03Z<p>Pombredanne.nexb.com: /* Relation to other Eclipse projects and to other open source projects */</p>
<hr />
<div>= THIS IS A DRAFT, WORK IN PROGRESS PROPOSAL, NOT AN ACTUAL OFFICIAL ECLIPSE PROJECT PROPOSAL YET =<br />
<br />
<br />
The EGIT project is a proposed open source project under the Eclipse Technology Project.<br />
<br />
According to the [http://www.eclipse.org/projects/dev_process/ Eclipse Development Process], this proposal is intended to declare the intent and scope of the EGit project as well as to gather input from the Eclipse community. You are invited to comment on and/or join the project. Please send all feedback to the http://www.eclipse.org/newsportal/thread.php?group=eclipse.technology.egit newsgroup.<br />
<br />
= Background =<br />
(TODO: Shawn ? Here we need to put some quick intro on the value of a DVCS, and present a bit the field.<br />
I am sure Shawn has some good slides on that, he had made a presentation @ the GSOC mentor summit that we could extract some bits from.<br />
Traditional source code version control systems .....<br />
)<br />
<br />
= Introduction =<br />
The EGIT plugin is an Eclipse Team provider for Git (a.k.a. &quot;Stupid Content Tracker&quot;, http://git.or.cz).<br />
<br />
Git is the version control system originally developed for the Linux kernel by Linus Torvalds, and is now a general Source Code Management (SCM) tool. One of the Git strength is its ability to support distributed version tracking as well as more centralized schemes, in contrast with tradition SCM that offer only a centralized model (such as CVS and Subversion) and to be very fast.<br />
Beyond the Linux kernel team, Git is now used by many other projects, both for open source and commercial development. <br />
<br />
Git is a distributed SCM, which means every developer has a full copy of all history of every revision of the code making queries against the history very fast and versatile. The storage model also means most operations are ten to a hundred times faster than with traditional centralized SCM such as CVS or Subversion. The integrity of the code is guaranteed through the use of secure hashes on the content and history, plus optional GPG(PGP) key signing of tags.<br />
<br />
= Project Goal =<br />
The goal of the EGit project is to:<br />
* implement an Eclipse Team provider for the Git SCM,<br />
* work towards the definitions of new Team extensions and GUI paradigms to better support distributed SCM in general.<br />
<br />
= Project Scope =<br />
<br />
The project will implement Eclipse tooling for the JGit Java implementation of Git. <br />
Specific attention will be focused on performance. Performance is a big deal with Git. It affects what can be done by being so much faster. Things that couldn't be done because of time constraints are now possible. These things like very fast checkouts, branching, branch switching, merging, tagging, software archeology and synchronization. Merge speed is probably the most important feature.<br />
The EGit plugin meta data shall be fully compatible with the meta data created by the native Git version so both can be used on the same checkout out repository.<br />
<br />
Beyond the Git support implementation, the project will work towards defining new essential extensions to the Eclipse core platform Team framework to account for the specific issues and features provided by distributed version control systems.<br />
It is also our intent to reach out to other project that implement support for distributed SCM in Eclipse to collaborate and exchange in that domain.<br />
<br />
Finally, the implications of adopting a distributed SCM approach can bring significant benefits especially for large open source projects such as Eclipse and can help lower the barrier to entry for new contributors and source code experimentation easier.<br />
The project will try to be a fervent advocate of distributed SCM benefits to the Eclipse community.<br />
<br />
= Project description =<br />
<br />
The Git team provider will provide the ability to do all everyday task in a Git work flow from inside Eclipse, integrated with the Eclipse Team framework, and providing new features specific to Git and distributed version control management.<br />
<br />
= Features =<br />
* Initial project setup: Support to create new Git repositories.<br />
<br />
* Importing existing code: Existing local Git repositories as well as remote repository can be imported. Remote repositories are imported by &quot;cloning&quot; them resulting in a local copy.<br />
<br />
* Replicating repositories: It shall be possible to distribute local version to other repositories through &quot;push&quot; operations as well as patches distributed by electronic mail. Receiving content shall be possible by fetching content via the git supported protocols (raw, ssh and http based) and via e-mailed patches directly from mailboxes, files or clipboard. &quot;Bundles&quot; shall also be supported.<br />
<br />
* Quickdiff against any version shall be supported.<br />
<br />
* Comparing any versions shall be supported.<br />
<br />
* Producing git-format patches to the clipboard shall be supported.<br />
<br />
* Selective commit (using the Quickdiff markers) shall be supported<br />
<br />
* Merge shall be supported<br />
<br />
* Cherry picking shall be supported<br />
<br />
* Re-base of branches shall be supported. This includes splitting, reordering and squashing (alternate term not to be confused with the normal meaning of &quot;merge&quot; in SCM terminology).<br />
<br />
* Branch switching, committing, amending commits and reset shall be supported.<br />
<br />
* Partial checkouts (currently not a native Git feature) shall be possible.<br />
<br />
* Some form of synchronization with CVS or other SCM. At least export to CVS, like git cvsexportcommit. Ideally Git commits shall be exportable to a CVS repository with the same structure. CVS import is a much harder problem where no perfect solution exists.<br />
<br />
== Perspective and Views ==<br />
* A Git perspective will be provided for browsing repositories before importing Git projects, pre-configured with available Team views and new EGit views.<br />
* History viewer: An history viewer with graphical presentation of history and access for compare editors will be developed as well as other views that may be useful for distributed SCM.<br />
* Repository browser : An explorer for examining Git repositories not connected to an eclipse project. Importing projects shall be possible from here.<br />
* Global directory: An explorer to find manage Git repositories ( at the minimum minimum all known local clones and their &quot;remotes&quot;)<br />
<br />
== Extension points ==<br />
Quickdiff must be enhanced to allow selective committing.<br />
New extensions points will be designed as needed to expose new core extensibility common to many distributed SCM.<br />
<br />
== Extensions to existing Eclipse Team functionality ==<br />
Team provider<br />
Resource decorators<br />
Quickdiff provider<br />
<br />
<br />
= Organization=<br />
We propose this project should be undertaken as an incubator project with the Technology project.<br />
<br />
== Mentors ==<br />
TBD<br />
(TODO: Phil approach potential mentors from the architecture council)<br />
== Initial Committers ==<br />
* Robin Rosenberg (project lead)?<br />
* Shawn Pearce (project lead) ?<br />
* Philippe Ombredanne<br />
(TODO: Robin: what about others?)<br />
<br />
== Initial Code Contribution ==<br />
The initial code contribution is based on the existing EGit code base licensed under the EPL. (this has already been approved by current comitters).<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGIT and JGit for anyone that contributed to the code base that will be contributed)<br />
(TODO: Robin+ Shawn: update all copyright headers in the code)<br />
<br />
=== Licensing and Intellectual property ===<br />
A point of note is that EGit depends on the JGit, a pure Java Git implementation of Git.<br />
JGit was originally licensed under a combination of GPL and LGPL and is now made available under a (BSD/Apache/MIT TBD) license. The developers of JGit are also the original developers of EGit.<br />
(TODO: Robin+ Shawn: pick license of JGit, and add header to JGit)<br />
<br />
Now Git itself is licensed under the GPL V2, but JGit is a clean implementation of the core Git data structures and as such has received the approval of the core Git maintainers (including LT, (TODO: Robin+ Shawn+Phil: get email confirmation from Linus + current lead maintainer on that topic)<br />
) to be licensed under any open source license the authors wish. Therefore the JGit authors have elected to license JGit under the (Apache/BSD/MIT TBD) license which is compatible with the Eclipse Public License.<br />
As part of the original code contribution review, JGit will be also submitted for approval per the Eclipse development process.<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGit and JGit for anyone that contributed to the code base that will be contributed)<br />
<br />
== Interested Parties ==<br />
TBD<br />
(TODO: all list interested individual and companies ....)<br />
<br />
== User community ==<br />
EGIt and JGit already have an established community and we expect that this community of users and contributors will join this new project at Eclipse. Of note is that the general support of Git on Windows is limited. By being platform neutral, EGit has the opportunity to provide advanced Git support also on this platform and serve the needs of a larger community.<br />
<br />
= Relation to other Eclipse projects and to other open source projects =<br />
(TODO: Robin:review and add a few words for possible project we intersect with)<br />
<br />
* Git - The fast distributed SCM [http://git.or.cz Git]<br />
* JGit - a pure Java implementation of Git licensed under (BSD/Apache/MIT TBD ?) license.<br />
<br />
* Eclipse platform team support<br />
** CVS team provider<br />
** SVN team provider<br />
<br />
* Mylyn - a Task based IDE that provides privileged integration with Eclipse-supported team providers . A possible integration with EGit could be considered.<br />
<br />
* Buckminster<br />
<br />
== Tentative Development plan ==<br />
<br />
Some functionality already exists, but there is no real plan at the moment for lack of committed resources. The project's rough priorities are:<br />
<br />
Already done:<br />
<br />
* Connect to/create repositories for exiting projects<br />
* Create branches<br />
* Commit<br />
* Quickdiff against current revision<br />
* Resources decorators for tracked and modified resources as well as repository state<br />
* Basic compare of revisions<br />
<br />
Underway:<br />
* Cloning and updating from remote repositories<br />
<br />
Future:<br />
* Bisecting<br />
* Partial commits (i.e. committing partial changes)<br />
* Comprehensive handling of different character encodings in filenames and comments.<br />
* CRLF handling (unless we consider it unneeded)<br />
* Bugfixes for existing code<br />
* Formatting code for patch submission through e-mail<br />
* Apply patch<br />
* Rename/Copy tracking in compare revisions<br />
* Blame (annotate)<br />
* Merge<br />
* Rebase<br />
* External repository browser<br />
* Repacking (this a really a core Git feature and the one that can be really hard or impossible to perform in Java).<br />
* Rename tracking is an on-demand feature in git. Git does not record such information, it discovers it from content. The tight data structures in git makes implementing this in real time possible, but could still be a challenge.<br />
<br />
The project will deliver regular milestones ...<br />
(TODO: Robin: a rough sketch milestones plan....)</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=EGit/Proposal&diff=89664EGit/Proposal2008-03-30T02:42:53Z<p>Pombredanne.nexb.com: /* Project Scope */</p>
<hr />
<div>= THIS IS A DRAFT, WORK IN PROGRESS PROPOSAL, NOT AN ACTUAL OFFICIAL ECLIPSE PROJECT PROPOSAL YET =<br />
<br />
<br />
The EGIT project is a proposed open source project under the Eclipse Technology Project.<br />
<br />
According to the [http://www.eclipse.org/projects/dev_process/ Eclipse Development Process], this proposal is intended to declare the intent and scope of the EGit project as well as to gather input from the Eclipse community. You are invited to comment on and/or join the project. Please send all feedback to the http://www.eclipse.org/newsportal/thread.php?group=eclipse.technology.egit newsgroup.<br />
<br />
= Background =<br />
(TODO: Shawn ? Here we need to put some quick intro on the value of a DVCS, and present a bit the field.<br />
I am sure Shawn has some good slides on that, he had made a presentation @ the GSOC mentor summit that we could extract some bits from.<br />
Traditional source code version control systems .....<br />
)<br />
<br />
= Introduction =<br />
The EGIT plugin is an Eclipse Team provider for Git (a.k.a. &quot;Stupid Content Tracker&quot;, http://git.or.cz).<br />
<br />
Git is the version control system originally developed for the Linux kernel by Linus Torvalds, and is now a general Source Code Management (SCM) tool. One of the Git strength is its ability to support distributed version tracking as well as more centralized schemes, in contrast with tradition SCM that offer only a centralized model (such as CVS and Subversion) and to be very fast.<br />
Beyond the Linux kernel team, Git is now used by many other projects, both for open source and commercial development. <br />
<br />
Git is a distributed SCM, which means every developer has a full copy of all history of every revision of the code making queries against the history very fast and versatile. The storage model also means most operations are ten to a hundred times faster than with traditional centralized SCM such as CVS or Subversion. The integrity of the code is guaranteed through the use of secure hashes on the content and history, plus optional GPG(PGP) key signing of tags.<br />
<br />
= Project Goal =<br />
The goal of the EGit project is to:<br />
* implement an Eclipse Team provider for the Git SCM,<br />
* work towards the definitions of new Team extensions and GUI paradigms to better support distributed SCM in general.<br />
<br />
= Project Scope =<br />
<br />
The project will implement Eclipse tooling for the JGit Java implementation of Git. <br />
Specific attention will be focused on performance. Performance is a big deal with Git. It affects what can be done by being so much faster. Things that couldn't be done because of time constraints are now possible. These things like very fast checkouts, branching, branch switching, merging, tagging, software archeology and synchronization. Merge speed is probably the most important feature.<br />
The EGit plugin meta data shall be fully compatible with the meta data created by the native Git version so both can be used on the same checkout out repository.<br />
<br />
Beyond the Git support implementation, the project will work towards defining new essential extensions to the Eclipse core platform Team framework to account for the specific issues and features provided by distributed version control systems.<br />
It is also our intent to reach out to other project that implement support for distributed SCM in Eclipse to collaborate and exchange in that domain.<br />
<br />
Finally, the implications of adopting a distributed SCM approach can bring significant benefits especially for large open source projects such as Eclipse and can help lower the barrier to entry for new contributors and source code experimentation easier.<br />
The project will try to be a fervent advocate of distributed SCM benefits to the Eclipse community.<br />
<br />
= Project description =<br />
<br />
The Git team provider will provide the ability to do all everyday task in a Git work flow from inside Eclipse, integrated with the Eclipse Team framework, and providing new features specific to Git and distributed version control management.<br />
<br />
= Features =<br />
* Initial project setup: Support to create new Git repositories.<br />
<br />
* Importing existing code: Existing local Git repositories as well as remote repository can be imported. Remote repositories are imported by &quot;cloning&quot; them resulting in a local copy.<br />
<br />
* Replicating repositories: It shall be possible to distribute local version to other repositories through &quot;push&quot; operations as well as patches distributed by electronic mail. Receiving content shall be possible by fetching content via the git supported protocols (raw, ssh and http based) and via e-mailed patches directly from mailboxes, files or clipboard. &quot;Bundles&quot; shall also be supported.<br />
<br />
* Quickdiff against any version shall be supported.<br />
<br />
* Comparing any versions shall be supported.<br />
<br />
* Producing git-format patches to the clipboard shall be supported.<br />
<br />
* Selective commit (using the Quickdiff markers) shall be supported<br />
<br />
* Merge shall be supported<br />
<br />
* Cherry picking shall be supported<br />
<br />
* Re-base of branches shall be supported. This includes splitting, reordering and squashing (alternate term not to be confused with the normal meaning of &quot;merge&quot; in SCM terminology).<br />
<br />
* Branch switching, committing, amending commits and reset shall be supported.<br />
<br />
* Partial checkouts (currently not a native Git feature) shall be possible.<br />
<br />
* Some form of synchronization with CVS or other SCM. At least export to CVS, like git cvsexportcommit. Ideally Git commits shall be exportable to a CVS repository with the same structure. CVS import is a much harder problem where no perfect solution exists.<br />
<br />
== Perspective and Views ==<br />
* A Git perspective will be provided for browsing repositories before importing Git projects, pre-configured with available Team views and new EGit views.<br />
* History viewer: An history viewer with graphical presentation of history and access for compare editors will be developed as well as other views that may be useful for distributed SCM.<br />
* Repository browser : An explorer for examining Git repositories not connected to an eclipse project. Importing projects shall be possible from here.<br />
* Global directory: An explorer to find manage Git repositories ( at the minimum minimum all known local clones and their &quot;remotes&quot;)<br />
<br />
== Extension points ==<br />
Quickdiff must be enhanced to allow selective committing.<br />
New extensions points will be designed as needed to expose new core extensibility common to many distributed SCM.<br />
<br />
== Extensions to existing Eclipse Team functionality ==<br />
Team provider<br />
Resource decorators<br />
Quickdiff provider<br />
<br />
<br />
= Organization=<br />
We propose this project should be undertaken as an incubator project with the Technology project.<br />
<br />
== Mentors ==<br />
TBD<br />
(TODO: Phil approach potential mentors from the architecture council)<br />
== Initial Committers ==<br />
* Robin Rosenberg (project lead)?<br />
* Shawn Pearce (project lead) ?<br />
* Philippe Ombredanne<br />
(TODO: Robin: what about others?)<br />
<br />
== Initial Code Contribution ==<br />
The initial code contribution is based on the existing EGit code base licensed under the EPL. (this has already been approved by current comitters).<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGIT and JGit for anyone that contributed to the code base that will be contributed)<br />
(TODO: Robin+ Shawn: update all copyright headers in the code)<br />
<br />
=== Licensing and Intellectual property ===<br />
A point of note is that EGit depends on the JGit, a pure Java Git implementation of Git.<br />
JGit was originally licensed under a combination of GPL and LGPL and is now made available under a (BSD/Apache/MIT TBD) license. The developers of JGit are also the original developers of EGit.<br />
(TODO: Robin+ Shawn: pick license of JGit, and add header to JGit)<br />
<br />
Now Git itself is licensed under the GPL V2, but JGit is a clean implementation of the core Git data structures and as such has received the approval of the core Git maintainers (including LT, (TODO: Robin+ Shawn+Phil: get email confirmation from Linus + current lead maintainer on that topic)<br />
) to be licensed under any open source license the authors wish. Therefore the JGit authors have elected to license JGit under the (Apache/BSD/MIT TBD) license which is compatible with the Eclipse Public License.<br />
As part of the original code contribution review, JGit will be also submitted for approval per the Eclipse development process.<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGit and JGit for anyone that contributed to the code base that will be contributed)<br />
<br />
== Interested Parties ==<br />
TBD<br />
(TODO: all list interested individual and companies ....)<br />
<br />
== User community ==<br />
EGIt and JGit already have an established community and we expect that this community of users and contributors will join this new project at Eclipse. Of note is that the general support of Git on Windows is limited. By being platform neutral, EGit has the opportunity to provide advanced Git support also on this platform and serve the needs of a larger community.<br />
<br />
= Relation to other Eclipse projects and to other open source projects =<br />
(TODO: Robin:review and add a few words for possible project we intersect with)<br />
<br />
* Git - The SCM we want to provide an interface through. [http://git.or.cz]<br />
* JGit - a pure Java implementation of Git licensed under (BSD/Apache/MIT TBD ?) license.<br />
<br />
* Eclipse platform team support<br />
** CVS team provider<br />
** SVN team provider<br />
<br />
* Mylyn - a Task based IDE that provides privileged integration with Eclipse-supported team providers . A possible integration with EGit could be considered.<br />
<br />
* Buckminster<br />
<br />
== Tentative Development plan ==<br />
<br />
Some functionality already exists, but there is no real plan at the moment for lack of committed resources. The project's rough priorities are:<br />
<br />
Already done:<br />
<br />
* Connect to/create repositories for exiting projects<br />
* Create branches<br />
* Commit<br />
* Quickdiff against current revision<br />
* Resources decorators for tracked and modified resources as well as repository state<br />
* Basic compare of revisions<br />
<br />
Underway:<br />
* Cloning and updating from remote repositories<br />
<br />
Future:<br />
* Bisecting<br />
* Partial commits (i.e. committing partial changes)<br />
* Comprehensive handling of different character encodings in filenames and comments.<br />
* CRLF handling (unless we consider it unneeded)<br />
* Bugfixes for existing code<br />
* Formatting code for patch submission through e-mail<br />
* Apply patch<br />
* Rename/Copy tracking in compare revisions<br />
* Blame (annotate)<br />
* Merge<br />
* Rebase<br />
* External repository browser<br />
* Repacking (this a really a core Git feature and the one that can be really hard or impossible to perform in Java).<br />
* Rename tracking is an on-demand feature in git. Git does not record such information, it discovers it from content. The tight data structures in git makes implementing this in real time possible, but could still be a challenge.<br />
<br />
The project will deliver regular milestones ...<br />
(TODO: Robin: a rough sketch milestones plan....)</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=EGit/Proposal&diff=89663EGit/Proposal2008-03-30T02:42:39Z<p>Pombredanne.nexb.com: /* Project Goal */</p>
<hr />
<div>= THIS IS A DRAFT, WORK IN PROGRESS PROPOSAL, NOT AN ACTUAL OFFICIAL ECLIPSE PROJECT PROPOSAL YET =<br />
<br />
<br />
The EGIT project is a proposed open source project under the Eclipse Technology Project.<br />
<br />
According to the [http://www.eclipse.org/projects/dev_process/ Eclipse Development Process], this proposal is intended to declare the intent and scope of the EGit project as well as to gather input from the Eclipse community. You are invited to comment on and/or join the project. Please send all feedback to the http://www.eclipse.org/newsportal/thread.php?group=eclipse.technology.egit newsgroup.<br />
<br />
= Background =<br />
(TODO: Shawn ? Here we need to put some quick intro on the value of a DVCS, and present a bit the field.<br />
I am sure Shawn has some good slides on that, he had made a presentation @ the GSOC mentor summit that we could extract some bits from.<br />
Traditional source code version control systems .....<br />
)<br />
<br />
= Introduction =<br />
The EGIT plugin is an Eclipse Team provider for Git (a.k.a. &quot;Stupid Content Tracker&quot;, http://git.or.cz).<br />
<br />
Git is the version control system originally developed for the Linux kernel by Linus Torvalds, and is now a general Source Code Management (SCM) tool. One of the Git strength is its ability to support distributed version tracking as well as more centralized schemes, in contrast with tradition SCM that offer only a centralized model (such as CVS and Subversion) and to be very fast.<br />
Beyond the Linux kernel team, Git is now used by many other projects, both for open source and commercial development. <br />
<br />
Git is a distributed SCM, which means every developer has a full copy of all history of every revision of the code making queries against the history very fast and versatile. The storage model also means most operations are ten to a hundred times faster than with traditional centralized SCM such as CVS or Subversion. The integrity of the code is guaranteed through the use of secure hashes on the content and history, plus optional GPG(PGP) key signing of tags.<br />
<br />
= Project Goal =<br />
The goal of the EGit project is to:<br />
* implement an Eclipse Team provider for the Git SCM,<br />
* work towards the definitions of new Team extensions and GUI paradigms to better support distributed SCM in general.<br />
<br />
= Project Scope =<br />
<br />
The project will implement Eclispe tooling for the JGit Java implementation of Git. <br />
Specific attention will be focused on performance. Performance is a big deal with Git. It affects what can be done by being so much faster. Things that couldn't be done because of time constraints are now possible. These things like very fast checkouts, branching, branch switching, merging, tagging, software archeology and synchronization. Merge speed is probably the most important feature.<br />
The EGit plugin meta data shall be fully compatible with the meta data created by the native Git version so both can be used on the same checkout out repository.<br />
<br />
Beyond the Git support implementation, the project will work towards defining new essential extensions to the Eclipse core platform Team framework to account for the specific issues and features provided by distributed version control systems.<br />
It is also our intent to reach out to other project that implement support for distributed SCM in Eclipse to collaborate and exchange in that domain.<br />
<br />
Finally, the implications of adopting a distributed SCM approach can bring significant benefits especially for large open source projects such as Eclipse and can help lower the barrier to entry for new contributors and source code experimentation easier.<br />
The project will try to be a fervent advocate of distributed SCM benefits to the Eclipse community.<br />
<br />
= Project description =<br />
<br />
The Git team provider will provide the ability to do all everyday task in a Git work flow from inside Eclipse, integrated with the Eclipse Team framework, and providing new features specific to Git and distributed version control management.<br />
<br />
= Features =<br />
* Initial project setup: Support to create new Git repositories.<br />
<br />
* Importing existing code: Existing local Git repositories as well as remote repository can be imported. Remote repositories are imported by &quot;cloning&quot; them resulting in a local copy.<br />
<br />
* Replicating repositories: It shall be possible to distribute local version to other repositories through &quot;push&quot; operations as well as patches distributed by electronic mail. Receiving content shall be possible by fetching content via the git supported protocols (raw, ssh and http based) and via e-mailed patches directly from mailboxes, files or clipboard. &quot;Bundles&quot; shall also be supported.<br />
<br />
* Quickdiff against any version shall be supported.<br />
<br />
* Comparing any versions shall be supported.<br />
<br />
* Producing git-format patches to the clipboard shall be supported.<br />
<br />
* Selective commit (using the Quickdiff markers) shall be supported<br />
<br />
* Merge shall be supported<br />
<br />
* Cherry picking shall be supported<br />
<br />
* Re-base of branches shall be supported. This includes splitting, reordering and squashing (alternate term not to be confused with the normal meaning of &quot;merge&quot; in SCM terminology).<br />
<br />
* Branch switching, committing, amending commits and reset shall be supported.<br />
<br />
* Partial checkouts (currently not a native Git feature) shall be possible.<br />
<br />
* Some form of synchronization with CVS or other SCM. At least export to CVS, like git cvsexportcommit. Ideally Git commits shall be exportable to a CVS repository with the same structure. CVS import is a much harder problem where no perfect solution exists.<br />
<br />
== Perspective and Views ==<br />
* A Git perspective will be provided for browsing repositories before importing Git projects, pre-configured with available Team views and new EGit views.<br />
* History viewer: An history viewer with graphical presentation of history and access for compare editors will be developed as well as other views that may be useful for distributed SCM.<br />
* Repository browser : An explorer for examining Git repositories not connected to an eclipse project. Importing projects shall be possible from here.<br />
* Global directory: An explorer to find manage Git repositories ( at the minimum minimum all known local clones and their &quot;remotes&quot;)<br />
<br />
== Extension points ==<br />
Quickdiff must be enhanced to allow selective committing.<br />
New extensions points will be designed as needed to expose new core extensibility common to many distributed SCM.<br />
<br />
== Extensions to existing Eclipse Team functionality ==<br />
Team provider<br />
Resource decorators<br />
Quickdiff provider<br />
<br />
<br />
= Organization=<br />
We propose this project should be undertaken as an incubator project with the Technology project.<br />
<br />
== Mentors ==<br />
TBD<br />
(TODO: Phil approach potential mentors from the architecture council)<br />
== Initial Committers ==<br />
* Robin Rosenberg (project lead)?<br />
* Shawn Pearce (project lead) ?<br />
* Philippe Ombredanne<br />
(TODO: Robin: what about others?)<br />
<br />
== Initial Code Contribution ==<br />
The initial code contribution is based on the existing EGit code base licensed under the EPL. (this has already been approved by current comitters).<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGIT and JGit for anyone that contributed to the code base that will be contributed)<br />
(TODO: Robin+ Shawn: update all copyright headers in the code)<br />
<br />
=== Licensing and Intellectual property ===<br />
A point of note is that EGit depends on the JGit, a pure Java Git implementation of Git.<br />
JGit was originally licensed under a combination of GPL and LGPL and is now made available under a (BSD/Apache/MIT TBD) license. The developers of JGit are also the original developers of EGit.<br />
(TODO: Robin+ Shawn: pick license of JGit, and add header to JGit)<br />
<br />
Now Git itself is licensed under the GPL V2, but JGit is a clean implementation of the core Git data structures and as such has received the approval of the core Git maintainers (including LT, (TODO: Robin+ Shawn+Phil: get email confirmation from Linus + current lead maintainer on that topic)<br />
) to be licensed under any open source license the authors wish. Therefore the JGit authors have elected to license JGit under the (Apache/BSD/MIT TBD) license which is compatible with the Eclipse Public License.<br />
As part of the original code contribution review, JGit will be also submitted for approval per the Eclipse development process.<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGit and JGit for anyone that contributed to the code base that will be contributed)<br />
<br />
== Interested Parties ==<br />
TBD<br />
(TODO: all list interested individual and companies ....)<br />
<br />
== User community ==<br />
EGIt and JGit already have an established community and we expect that this community of users and contributors will join this new project at Eclipse. Of note is that the general support of Git on Windows is limited. By being platform neutral, EGit has the opportunity to provide advanced Git support also on this platform and serve the needs of a larger community.<br />
<br />
= Relation to other Eclipse projects and to other open source projects =<br />
(TODO: Robin:review and add a few words for possible project we intersect with)<br />
<br />
* Git - The SCM we want to provide an interface through. [http://git.or.cz]<br />
* JGit - a pure Java implementation of Git licensed under (BSD/Apache/MIT TBD ?) license.<br />
<br />
* Eclipse platform team support<br />
** CVS team provider<br />
** SVN team provider<br />
<br />
* Mylyn - a Task based IDE that provides privileged integration with Eclipse-supported team providers . A possible integration with EGit could be considered.<br />
<br />
* Buckminster<br />
<br />
== Tentative Development plan ==<br />
<br />
Some functionality already exists, but there is no real plan at the moment for lack of committed resources. The project's rough priorities are:<br />
<br />
Already done:<br />
<br />
* Connect to/create repositories for exiting projects<br />
* Create branches<br />
* Commit<br />
* Quickdiff against current revision<br />
* Resources decorators for tracked and modified resources as well as repository state<br />
* Basic compare of revisions<br />
<br />
Underway:<br />
* Cloning and updating from remote repositories<br />
<br />
Future:<br />
* Bisecting<br />
* Partial commits (i.e. committing partial changes)<br />
* Comprehensive handling of different character encodings in filenames and comments.<br />
* CRLF handling (unless we consider it unneeded)<br />
* Bugfixes for existing code<br />
* Formatting code for patch submission through e-mail<br />
* Apply patch<br />
* Rename/Copy tracking in compare revisions<br />
* Blame (annotate)<br />
* Merge<br />
* Rebase<br />
* External repository browser<br />
* Repacking (this a really a core Git feature and the one that can be really hard or impossible to perform in Java).<br />
* Rename tracking is an on-demand feature in git. Git does not record such information, it discovers it from content. The tight data structures in git makes implementing this in real time possible, but could still be a challenge.<br />
<br />
The project will deliver regular milestones ...<br />
(TODO: Robin: a rough sketch milestones plan....)</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=EGit/Proposal&diff=89662EGit/Proposal2008-03-30T02:42:15Z<p>Pombredanne.nexb.com: /* Introduction */</p>
<hr />
<div>= THIS IS A DRAFT, WORK IN PROGRESS PROPOSAL, NOT AN ACTUAL OFFICIAL ECLIPSE PROJECT PROPOSAL YET =<br />
<br />
<br />
The EGIT project is a proposed open source project under the Eclipse Technology Project.<br />
<br />
According to the [http://www.eclipse.org/projects/dev_process/ Eclipse Development Process], this proposal is intended to declare the intent and scope of the EGit project as well as to gather input from the Eclipse community. You are invited to comment on and/or join the project. Please send all feedback to the http://www.eclipse.org/newsportal/thread.php?group=eclipse.technology.egit newsgroup.<br />
<br />
= Background =<br />
(TODO: Shawn ? Here we need to put some quick intro on the value of a DVCS, and present a bit the field.<br />
I am sure Shawn has some good slides on that, he had made a presentation @ the GSOC mentor summit that we could extract some bits from.<br />
Traditional source code version control systems .....<br />
)<br />
<br />
= Introduction =<br />
The EGIT plugin is an Eclipse Team provider for Git (a.k.a. &quot;Stupid Content Tracker&quot;, http://git.or.cz).<br />
<br />
Git is the version control system originally developed for the Linux kernel by Linus Torvalds, and is now a general Source Code Management (SCM) tool. One of the Git strength is its ability to support distributed version tracking as well as more centralized schemes, in contrast with tradition SCM that offer only a centralized model (such as CVS and Subversion) and to be very fast.<br />
Beyond the Linux kernel team, Git is now used by many other projects, both for open source and commercial development. <br />
<br />
Git is a distributed SCM, which means every developer has a full copy of all history of every revision of the code making queries against the history very fast and versatile. The storage model also means most operations are ten to a hundred times faster than with traditional centralized SCM such as CVS or Subversion. The integrity of the code is guaranteed through the use of secure hashes on the content and history, plus optional GPG(PGP) key signing of tags.<br />
<br />
= Project Goal =<br />
The goal of the EGit project is to:<br />
* implement an Eclipse Team provider for the Git SCM,<br />
* work towards the definitions of new Team extensions and GUI paradigm to better support distributed SCM in general.<br />
<br />
= Project Scope =<br />
<br />
The project will implement Eclispe tooling for the JGit Java implementation of Git. <br />
Specific attention will be focused on performance. Performance is a big deal with Git. It affects what can be done by being so much faster. Things that couldn't be done because of time constraints are now possible. These things like very fast checkouts, branching, branch switching, merging, tagging, software archeology and synchronization. Merge speed is probably the most important feature.<br />
The EGit plugin meta data shall be fully compatible with the meta data created by the native Git version so both can be used on the same checkout out repository.<br />
<br />
Beyond the Git support implementation, the project will work towards defining new essential extensions to the Eclipse core platform Team framework to account for the specific issues and features provided by distributed version control systems.<br />
It is also our intent to reach out to other project that implement support for distributed SCM in Eclipse to collaborate and exchange in that domain.<br />
<br />
Finally, the implications of adopting a distributed SCM approach can bring significant benefits especially for large open source projects such as Eclipse and can help lower the barrier to entry for new contributors and source code experimentation easier.<br />
The project will try to be a fervent advocate of distributed SCM benefits to the Eclipse community.<br />
<br />
= Project description =<br />
<br />
The Git team provider will provide the ability to do all everyday task in a Git work flow from inside Eclipse, integrated with the Eclipse Team framework, and providing new features specific to Git and distributed version control management.<br />
<br />
= Features =<br />
* Initial project setup: Support to create new Git repositories.<br />
<br />
* Importing existing code: Existing local Git repositories as well as remote repository can be imported. Remote repositories are imported by &quot;cloning&quot; them resulting in a local copy.<br />
<br />
* Replicating repositories: It shall be possible to distribute local version to other repositories through &quot;push&quot; operations as well as patches distributed by electronic mail. Receiving content shall be possible by fetching content via the git supported protocols (raw, ssh and http based) and via e-mailed patches directly from mailboxes, files or clipboard. &quot;Bundles&quot; shall also be supported.<br />
<br />
* Quickdiff against any version shall be supported.<br />
<br />
* Comparing any versions shall be supported.<br />
<br />
* Producing git-format patches to the clipboard shall be supported.<br />
<br />
* Selective commit (using the Quickdiff markers) shall be supported<br />
<br />
* Merge shall be supported<br />
<br />
* Cherry picking shall be supported<br />
<br />
* Re-base of branches shall be supported. This includes splitting, reordering and squashing (alternate term not to be confused with the normal meaning of &quot;merge&quot; in SCM terminology).<br />
<br />
* Branch switching, committing, amending commits and reset shall be supported.<br />
<br />
* Partial checkouts (currently not a native Git feature) shall be possible.<br />
<br />
* Some form of synchronization with CVS or other SCM. At least export to CVS, like git cvsexportcommit. Ideally Git commits shall be exportable to a CVS repository with the same structure. CVS import is a much harder problem where no perfect solution exists.<br />
<br />
== Perspective and Views ==<br />
* A Git perspective will be provided for browsing repositories before importing Git projects, pre-configured with available Team views and new EGit views.<br />
* History viewer: An history viewer with graphical presentation of history and access for compare editors will be developed as well as other views that may be useful for distributed SCM.<br />
* Repository browser : An explorer for examining Git repositories not connected to an eclipse project. Importing projects shall be possible from here.<br />
* Global directory: An explorer to find manage Git repositories ( at the minimum minimum all known local clones and their &quot;remotes&quot;)<br />
<br />
== Extension points ==<br />
Quickdiff must be enhanced to allow selective committing.<br />
New extensions points will be designed as needed to expose new core extensibility common to many distributed SCM.<br />
<br />
== Extensions to existing Eclipse Team functionality ==<br />
Team provider<br />
Resource decorators<br />
Quickdiff provider<br />
<br />
<br />
= Organization=<br />
We propose this project should be undertaken as an incubator project with the Technology project.<br />
<br />
== Mentors ==<br />
TBD<br />
(TODO: Phil approach potential mentors from the architecture council)<br />
== Initial Committers ==<br />
* Robin Rosenberg (project lead)?<br />
* Shawn Pearce (project lead) ?<br />
* Philippe Ombredanne<br />
(TODO: Robin: what about others?)<br />
<br />
== Initial Code Contribution ==<br />
The initial code contribution is based on the existing EGit code base licensed under the EPL. (this has already been approved by current comitters).<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGIT and JGit for anyone that contributed to the code base that will be contributed)<br />
(TODO: Robin+ Shawn: update all copyright headers in the code)<br />
<br />
=== Licensing and Intellectual property ===<br />
A point of note is that EGit depends on the JGit, a pure Java Git implementation of Git.<br />
JGit was originally licensed under a combination of GPL and LGPL and is now made available under a (BSD/Apache/MIT TBD) license. The developers of JGit are also the original developers of EGit.<br />
(TODO: Robin+ Shawn: pick license of JGit, and add header to JGit)<br />
<br />
Now Git itself is licensed under the GPL V2, but JGit is a clean implementation of the core Git data structures and as such has received the approval of the core Git maintainers (including LT, (TODO: Robin+ Shawn+Phil: get email confirmation from Linus + current lead maintainer on that topic)<br />
) to be licensed under any open source license the authors wish. Therefore the JGit authors have elected to license JGit under the (Apache/BSD/MIT TBD) license which is compatible with the Eclipse Public License.<br />
As part of the original code contribution review, JGit will be also submitted for approval per the Eclipse development process.<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGit and JGit for anyone that contributed to the code base that will be contributed)<br />
<br />
== Interested Parties ==<br />
TBD<br />
(TODO: all list interested individual and companies ....)<br />
<br />
== User community ==<br />
EGIt and JGit already have an established community and we expect that this community of users and contributors will join this new project at Eclipse. Of note is that the general support of Git on Windows is limited. By being platform neutral, EGit has the opportunity to provide advanced Git support also on this platform and serve the needs of a larger community.<br />
<br />
= Relation to other Eclipse projects and to other open source projects =<br />
(TODO: Robin:review and add a few words for possible project we intersect with)<br />
<br />
* Git - The SCM we want to provide an interface through. [http://git.or.cz]<br />
* JGit - a pure Java implementation of Git licensed under (BSD/Apache/MIT TBD ?) license.<br />
<br />
* Eclipse platform team support<br />
** CVS team provider<br />
** SVN team provider<br />
<br />
* Mylyn - a Task based IDE that provides privileged integration with Eclipse-supported team providers . A possible integration with EGit could be considered.<br />
<br />
* Buckminster<br />
<br />
== Tentative Development plan ==<br />
<br />
Some functionality already exists, but there is no real plan at the moment for lack of committed resources. The project's rough priorities are:<br />
<br />
Already done:<br />
<br />
* Connect to/create repositories for exiting projects<br />
* Create branches<br />
* Commit<br />
* Quickdiff against current revision<br />
* Resources decorators for tracked and modified resources as well as repository state<br />
* Basic compare of revisions<br />
<br />
Underway:<br />
* Cloning and updating from remote repositories<br />
<br />
Future:<br />
* Bisecting<br />
* Partial commits (i.e. committing partial changes)<br />
* Comprehensive handling of different character encodings in filenames and comments.<br />
* CRLF handling (unless we consider it unneeded)<br />
* Bugfixes for existing code<br />
* Formatting code for patch submission through e-mail<br />
* Apply patch<br />
* Rename/Copy tracking in compare revisions<br />
* Blame (annotate)<br />
* Merge<br />
* Rebase<br />
* External repository browser<br />
* Repacking (this a really a core Git feature and the one that can be really hard or impossible to perform in Java).<br />
* Rename tracking is an on-demand feature in git. Git does not record such information, it discovers it from content. The tight data structures in git makes implementing this in real time possible, but could still be a challenge.<br />
<br />
The project will deliver regular milestones ...<br />
(TODO: Robin: a rough sketch milestones plan....)</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=EGit/Proposal&diff=89661EGit/Proposal2008-03-30T02:41:34Z<p>Pombredanne.nexb.com: /* Introduction */</p>
<hr />
<div>= THIS IS A DRAFT, WORK IN PROGRESS PROPOSAL, NOT AN ACTUAL OFFICIAL ECLIPSE PROJECT PROPOSAL YET =<br />
<br />
<br />
The EGIT project is a proposed open source project under the Eclipse Technology Project.<br />
<br />
According to the [http://www.eclipse.org/projects/dev_process/ Eclipse Development Process], this proposal is intended to declare the intent and scope of the EGit project as well as to gather input from the Eclipse community. You are invited to comment on and/or join the project. Please send all feedback to the http://www.eclipse.org/newsportal/thread.php?group=eclipse.technology.egit newsgroup.<br />
<br />
= Background =<br />
(TODO: Shawn ? Here we need to put some quick intro on the value of a DVCS, and present a bit the field.<br />
I am sure Shawn has some good slides on that, he had made a presentation @ the GSOC mentor summit that we could extract some bits from.<br />
Traditional source code version control systems .....<br />
)<br />
<br />
= Introduction =<br />
The EGIT plugin is an Eclipse Team provider for Git (a.k.a. &quot;Stupid Content Tracker&quot;, http://git.or.cz).<br />
<br />
Git is the version control system originally developed for the Linux kernel by Linus Torvalds, and is now a general Source Code Management (SCM) tool. One of the Git strength is its ability to support distributed version tracking as well as more centralized schemes, in contrast with tradition SCM that offer only a centralized model (such as CVS and Subversion) and to be very fast.<br />
Beyond the Linux kernel team, Git is now used by many other projects, both for open source and commercial development. <br />
<br />
Git is a fast distributed SCM, which means every developer has a full copy of all history of every revision of the code making queries against the history very fast and versatile. The storage model also means most operations are ten to a hundred times faster than with traditional centralized SCM such as CVS or Subversion. The integrity of the code is guaranteed through the use of secure hashes on the content and history, plus optional GPG(PGP) key signing of tags.<br />
<br />
= Project Goal =<br />
The goal of the EGit project is to:<br />
* implement an Eclipse Team provider for the Git SCM,<br />
* work towards the definitions of new Team extensions and GUI paradigm to better support distributed SCM in general.<br />
<br />
= Project Scope =<br />
<br />
The project will implement Eclispe tooling for the JGit Java implementation of Git. <br />
Specific attention will be focused on performance. Performance is a big deal with Git. It affects what can be done by being so much faster. Things that couldn't be done because of time constraints are now possible. These things like very fast checkouts, branching, branch switching, merging, tagging, software archeology and synchronization. Merge speed is probably the most important feature.<br />
The EGit plugin meta data shall be fully compatible with the meta data created by the native Git version so both can be used on the same checkout out repository.<br />
<br />
Beyond the Git support implementation, the project will work towards defining new essential extensions to the Eclipse core platform Team framework to account for the specific issues and features provided by distributed version control systems.<br />
It is also our intent to reach out to other project that implement support for distributed SCM in Eclipse to collaborate and exchange in that domain.<br />
<br />
Finally, the implications of adopting a distributed SCM approach can bring significant benefits especially for large open source projects such as Eclipse and can help lower the barrier to entry for new contributors and source code experimentation easier.<br />
The project will try to be a fervent advocate of distributed SCM benefits to the Eclipse community.<br />
<br />
= Project description =<br />
<br />
The Git team provider will provide the ability to do all everyday task in a Git work flow from inside Eclipse, integrated with the Eclipse Team framework, and providing new features specific to Git and distributed version control management.<br />
<br />
= Features =<br />
* Initial project setup: Support to create new Git repositories.<br />
<br />
* Importing existing code: Existing local Git repositories as well as remote repository can be imported. Remote repositories are imported by &quot;cloning&quot; them resulting in a local copy.<br />
<br />
* Replicating repositories: It shall be possible to distribute local version to other repositories through &quot;push&quot; operations as well as patches distributed by electronic mail. Receiving content shall be possible by fetching content via the git supported protocols (raw, ssh and http based) and via e-mailed patches directly from mailboxes, files or clipboard. &quot;Bundles&quot; shall also be supported.<br />
<br />
* Quickdiff against any version shall be supported.<br />
<br />
* Comparing any versions shall be supported.<br />
<br />
* Producing git-format patches to the clipboard shall be supported.<br />
<br />
* Selective commit (using the Quickdiff markers) shall be supported<br />
<br />
* Merge shall be supported<br />
<br />
* Cherry picking shall be supported<br />
<br />
* Re-base of branches shall be supported. This includes splitting, reordering and squashing (alternate term not to be confused with the normal meaning of &quot;merge&quot; in SCM terminology).<br />
<br />
* Branch switching, committing, amending commits and reset shall be supported.<br />
<br />
* Partial checkouts (currently not a native Git feature) shall be possible.<br />
<br />
* Some form of synchronization with CVS or other SCM. At least export to CVS, like git cvsexportcommit. Ideally Git commits shall be exportable to a CVS repository with the same structure. CVS import is a much harder problem where no perfect solution exists.<br />
<br />
== Perspective and Views ==<br />
* A Git perspective will be provided for browsing repositories before importing Git projects, pre-configured with available Team views and new EGit views.<br />
* History viewer: An history viewer with graphical presentation of history and access for compare editors will be developed as well as other views that may be useful for distributed SCM.<br />
* Repository browser : An explorer for examining Git repositories not connected to an eclipse project. Importing projects shall be possible from here.<br />
* Global directory: An explorer to find manage Git repositories ( at the minimum minimum all known local clones and their &quot;remotes&quot;)<br />
<br />
== Extension points ==<br />
Quickdiff must be enhanced to allow selective committing.<br />
New extensions points will be designed as needed to expose new core extensibility common to many distributed SCM.<br />
<br />
== Extensions to existing Eclipse Team functionality ==<br />
Team provider<br />
Resource decorators<br />
Quickdiff provider<br />
<br />
<br />
= Organization=<br />
We propose this project should be undertaken as an incubator project with the Technology project.<br />
<br />
== Mentors ==<br />
TBD<br />
(TODO: Phil approach potential mentors from the architecture council)<br />
== Initial Committers ==<br />
* Robin Rosenberg (project lead)?<br />
* Shawn Pearce (project lead) ?<br />
* Philippe Ombredanne<br />
(TODO: Robin: what about others?)<br />
<br />
== Initial Code Contribution ==<br />
The initial code contribution is based on the existing EGit code base licensed under the EPL. (this has already been approved by current comitters).<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGIT and JGit for anyone that contributed to the code base that will be contributed)<br />
(TODO: Robin+ Shawn: update all copyright headers in the code)<br />
<br />
=== Licensing and Intellectual property ===<br />
A point of note is that EGit depends on the JGit, a pure Java Git implementation of Git.<br />
JGit was originally licensed under a combination of GPL and LGPL and is now made available under a (BSD/Apache/MIT TBD) license. The developers of JGit are also the original developers of EGit.<br />
(TODO: Robin+ Shawn: pick license of JGit, and add header to JGit)<br />
<br />
Now Git itself is licensed under the GPL V2, but JGit is a clean implementation of the core Git data structures and as such has received the approval of the core Git maintainers (including LT, (TODO: Robin+ Shawn+Phil: get email confirmation from Linus + current lead maintainer on that topic)<br />
) to be licensed under any open source license the authors wish. Therefore the JGit authors have elected to license JGit under the (Apache/BSD/MIT TBD) license which is compatible with the Eclipse Public License.<br />
As part of the original code contribution review, JGit will be also submitted for approval per the Eclipse development process.<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGit and JGit for anyone that contributed to the code base that will be contributed)<br />
<br />
== Interested Parties ==<br />
TBD<br />
(TODO: all list interested individual and companies ....)<br />
<br />
== User community ==<br />
EGIt and JGit already have an established community and we expect that this community of users and contributors will join this new project at Eclipse. Of note is that the general support of Git on Windows is limited. By being platform neutral, EGit has the opportunity to provide advanced Git support also on this platform and serve the needs of a larger community.<br />
<br />
= Relation to other Eclipse projects and to other open source projects =<br />
(TODO: Robin:review and add a few words for possible project we intersect with)<br />
<br />
* Git - The SCM we want to provide an interface through. [http://git.or.cz]<br />
* JGit - a pure Java implementation of Git licensed under (BSD/Apache/MIT TBD ?) license.<br />
<br />
* Eclipse platform team support<br />
** CVS team provider<br />
** SVN team provider<br />
<br />
* Mylyn - a Task based IDE that provides privileged integration with Eclipse-supported team providers . A possible integration with EGit could be considered.<br />
<br />
* Buckminster<br />
<br />
== Tentative Development plan ==<br />
<br />
Some functionality already exists, but there is no real plan at the moment for lack of committed resources. The project's rough priorities are:<br />
<br />
Already done:<br />
<br />
* Connect to/create repositories for exiting projects<br />
* Create branches<br />
* Commit<br />
* Quickdiff against current revision<br />
* Resources decorators for tracked and modified resources as well as repository state<br />
* Basic compare of revisions<br />
<br />
Underway:<br />
* Cloning and updating from remote repositories<br />
<br />
Future:<br />
* Bisecting<br />
* Partial commits (i.e. committing partial changes)<br />
* Comprehensive handling of different character encodings in filenames and comments.<br />
* CRLF handling (unless we consider it unneeded)<br />
* Bugfixes for existing code<br />
* Formatting code for patch submission through e-mail<br />
* Apply patch<br />
* Rename/Copy tracking in compare revisions<br />
* Blame (annotate)<br />
* Merge<br />
* Rebase<br />
* External repository browser<br />
* Repacking (this a really a core Git feature and the one that can be really hard or impossible to perform in Java).<br />
* Rename tracking is an on-demand feature in git. Git does not record such information, it discovers it from content. The tight data structures in git makes implementing this in real time possible, but could still be a challenge.<br />
<br />
The project will deliver regular milestones ...<br />
(TODO: Robin: a rough sketch milestones plan....)</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=EGit/Proposal&diff=89660EGit/Proposal2008-03-30T02:40:54Z<p>Pombredanne.nexb.com: /* Background */</p>
<hr />
<div>= THIS IS A DRAFT, WORK IN PROGRESS PROPOSAL, NOT AN ACTUAL OFFICIAL ECLIPSE PROJECT PROPOSAL YET =<br />
<br />
<br />
The EGIT project is a proposed open source project under the Eclipse Technology Project.<br />
<br />
According to the [http://www.eclipse.org/projects/dev_process/ Eclipse Development Process], this proposal is intended to declare the intent and scope of the EGit project as well as to gather input from the Eclipse community. You are invited to comment on and/or join the project. Please send all feedback to the http://www.eclipse.org/newsportal/thread.php?group=eclipse.technology.egit newsgroup.<br />
<br />
= Background =<br />
(TODO: Shawn ? Here we need to put some quick intro on the value of a DVCS, and present a bit the field.<br />
I am sure Shawn has some good slides on that, he had made a presentation @ the GSOC mentor summit that we could extract some bits from.<br />
Traditional source code version control systems .....<br />
)<br />
<br />
= Introduction =<br />
The EGIT plugin is an Eclipse Team provider for Git (a.k.a. &quot;Stupid Content Tracker&quot;, http://git.or.cz).<br />
<br />
Git is the version control system originally developed for the Linux kernel by Linus Torvalds, and is now a general Source Code Management (SCM) tool. One of the Git strength is its ability to support distributed version tracking as well as more centralized schemes, in contrast with tradition SCM that offer only a centralized model (such as CVS and Subversion).<br />
Beyond the Linux kernel team, Git is now used by many other projects, both for open source and commercial development. <br />
<br />
Git is a fast distributed SCM, which means every developer has a full copy of all history of every revision of the code making queries against the history very fast and versatile. The storage model also means most operations are ten to a hundred times faster than with traditional centralized SCM such as CVS or Subversion. The integrity of the code is guaranteed through the use of secure hashes on the content and history, plus optional GPG(PGP) key signing of tags.<br />
<br />
= Project Goal =<br />
The goal of the EGit project is to:<br />
* implement an Eclipse Team provider for the Git SCM,<br />
* work towards the definitions of new Team extensions and GUI paradigm to better support distributed SCM in general.<br />
<br />
= Project Scope =<br />
<br />
The project will implement Eclispe tooling for the JGit Java implementation of Git. <br />
Specific attention will be focused on performance. Performance is a big deal with Git. It affects what can be done by being so much faster. Things that couldn't be done because of time constraints are now possible. These things like very fast checkouts, branching, branch switching, merging, tagging, software archeology and synchronization. Merge speed is probably the most important feature.<br />
The EGit plugin meta data shall be fully compatible with the meta data created by the native Git version so both can be used on the same checkout out repository.<br />
<br />
Beyond the Git support implementation, the project will work towards defining new essential extensions to the Eclipse core platform Team framework to account for the specific issues and features provided by distributed version control systems.<br />
It is also our intent to reach out to other project that implement support for distributed SCM in Eclipse to collaborate and exchange in that domain.<br />
<br />
Finally, the implications of adopting a distributed SCM approach can bring significant benefits especially for large open source projects such as Eclipse and can help lower the barrier to entry for new contributors and source code experimentation easier.<br />
The project will try to be a fervent advocate of distributed SCM benefits to the Eclipse community.<br />
<br />
= Project description =<br />
<br />
The Git team provider will provide the ability to do all everyday task in a Git work flow from inside Eclipse, integrated with the Eclipse Team framework, and providing new features specific to Git and distributed version control management.<br />
<br />
= Features =<br />
* Initial project setup: Support to create new Git repositories.<br />
<br />
* Importing existing code: Existing local Git repositories as well as remote repository can be imported. Remote repositories are imported by &quot;cloning&quot; them resulting in a local copy.<br />
<br />
* Replicating repositories: It shall be possible to distribute local version to other repositories through &quot;push&quot; operations as well as patches distributed by electronic mail. Receiving content shall be possible by fetching content via the git supported protocols (raw, ssh and http based) and via e-mailed patches directly from mailboxes, files or clipboard. &quot;Bundles&quot; shall also be supported.<br />
<br />
* Quickdiff against any version shall be supported.<br />
<br />
* Comparing any versions shall be supported.<br />
<br />
* Producing git-format patches to the clipboard shall be supported.<br />
<br />
* Selective commit (using the Quickdiff markers) shall be supported<br />
<br />
* Merge shall be supported<br />
<br />
* Cherry picking shall be supported<br />
<br />
* Re-base of branches shall be supported. This includes splitting, reordering and squashing (alternate term not to be confused with the normal meaning of &quot;merge&quot; in SCM terminology).<br />
<br />
* Branch switching, committing, amending commits and reset shall be supported.<br />
<br />
* Partial checkouts (currently not a native Git feature) shall be possible.<br />
<br />
* Some form of synchronization with CVS or other SCM. At least export to CVS, like git cvsexportcommit. Ideally Git commits shall be exportable to a CVS repository with the same structure. CVS import is a much harder problem where no perfect solution exists.<br />
<br />
== Perspective and Views ==<br />
* A Git perspective will be provided for browsing repositories before importing Git projects, pre-configured with available Team views and new EGit views.<br />
* History viewer: An history viewer with graphical presentation of history and access for compare editors will be developed as well as other views that may be useful for distributed SCM.<br />
* Repository browser : An explorer for examining Git repositories not connected to an eclipse project. Importing projects shall be possible from here.<br />
* Global directory: An explorer to find manage Git repositories ( at the minimum minimum all known local clones and their &quot;remotes&quot;)<br />
<br />
== Extension points ==<br />
Quickdiff must be enhanced to allow selective committing.<br />
New extensions points will be designed as needed to expose new core extensibility common to many distributed SCM.<br />
<br />
== Extensions to existing Eclipse Team functionality ==<br />
Team provider<br />
Resource decorators<br />
Quickdiff provider<br />
<br />
<br />
= Organization=<br />
We propose this project should be undertaken as an incubator project with the Technology project.<br />
<br />
== Mentors ==<br />
TBD<br />
(TODO: Phil approach potential mentors from the architecture council)<br />
== Initial Committers ==<br />
* Robin Rosenberg (project lead)?<br />
* Shawn Pearce (project lead) ?<br />
* Philippe Ombredanne<br />
(TODO: Robin: what about others?)<br />
<br />
== Initial Code Contribution ==<br />
The initial code contribution is based on the existing EGit code base licensed under the EPL. (this has already been approved by current comitters).<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGIT and JGit for anyone that contributed to the code base that will be contributed)<br />
(TODO: Robin+ Shawn: update all copyright headers in the code)<br />
<br />
=== Licensing and Intellectual property ===<br />
A point of note is that EGit depends on the JGit, a pure Java Git implementation of Git.<br />
JGit was originally licensed under a combination of GPL and LGPL and is now made available under a (BSD/Apache/MIT TBD) license. The developers of JGit are also the original developers of EGit.<br />
(TODO: Robin+ Shawn: pick license of JGit, and add header to JGit)<br />
<br />
Now Git itself is licensed under the GPL V2, but JGit is a clean implementation of the core Git data structures and as such has received the approval of the core Git maintainers (including LT, (TODO: Robin+ Shawn+Phil: get email confirmation from Linus + current lead maintainer on that topic)<br />
) to be licensed under any open source license the authors wish. Therefore the JGit authors have elected to license JGit under the (Apache/BSD/MIT TBD) license which is compatible with the Eclipse Public License.<br />
As part of the original code contribution review, JGit will be also submitted for approval per the Eclipse development process.<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGit and JGit for anyone that contributed to the code base that will be contributed)<br />
<br />
== Interested Parties ==<br />
TBD<br />
(TODO: all list interested individual and companies ....)<br />
<br />
== User community ==<br />
EGIt and JGit already have an established community and we expect that this community of users and contributors will join this new project at Eclipse. Of note is that the general support of Git on Windows is limited. By being platform neutral, EGit has the opportunity to provide advanced Git support also on this platform and serve the needs of a larger community.<br />
<br />
= Relation to other Eclipse projects and to other open source projects =<br />
(TODO: Robin:review and add a few words for possible project we intersect with)<br />
<br />
* Git - The SCM we want to provide an interface through. [http://git.or.cz]<br />
* JGit - a pure Java implementation of Git licensed under (BSD/Apache/MIT TBD ?) license.<br />
<br />
* Eclipse platform team support<br />
** CVS team provider<br />
** SVN team provider<br />
<br />
* Mylyn - a Task based IDE that provides privileged integration with Eclipse-supported team providers . A possible integration with EGit could be considered.<br />
<br />
* Buckminster<br />
<br />
== Tentative Development plan ==<br />
<br />
Some functionality already exists, but there is no real plan at the moment for lack of committed resources. The project's rough priorities are:<br />
<br />
Already done:<br />
<br />
* Connect to/create repositories for exiting projects<br />
* Create branches<br />
* Commit<br />
* Quickdiff against current revision<br />
* Resources decorators for tracked and modified resources as well as repository state<br />
* Basic compare of revisions<br />
<br />
Underway:<br />
* Cloning and updating from remote repositories<br />
<br />
Future:<br />
* Bisecting<br />
* Partial commits (i.e. committing partial changes)<br />
* Comprehensive handling of different character encodings in filenames and comments.<br />
* CRLF handling (unless we consider it unneeded)<br />
* Bugfixes for existing code<br />
* Formatting code for patch submission through e-mail<br />
* Apply patch<br />
* Rename/Copy tracking in compare revisions<br />
* Blame (annotate)<br />
* Merge<br />
* Rebase<br />
* External repository browser<br />
* Repacking (this a really a core Git feature and the one that can be really hard or impossible to perform in Java).<br />
* Rename tracking is an on-demand feature in git. Git does not record such information, it discovers it from content. The tight data structures in git makes implementing this in real time possible, but could still be a challenge.<br />
<br />
The project will deliver regular milestones ...<br />
(TODO: Robin: a rough sketch milestones plan....)</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=EGit/Proposal&diff=89659EGit/Proposal2008-03-30T02:05:46Z<p>Pombredanne.nexb.com: </p>
<hr />
<div>= THIS IS A DRAFT, WORK IN PROGRESS PROPOSAL, NOT AN ACTUAL OFFICIAL ECLIPSE PROJECT PROPOSAL YET =<br />
<br />
<br />
The EGIT project is a proposed open source project under the Eclipse Technology Project.<br />
<br />
According to the [http://www.eclipse.org/projects/dev_process/ Eclipse Development Process], this proposal is intended to declare the intent and scope of the EGit project as well as to gather input from the Eclipse community. You are invited to comment on and/or join the project. Please send all feedback to the http://www.eclipse.org/newsportal/thread.php?group=eclipse.technology.egit newsgroup.<br />
<br />
= Background =<br />
(TODO: Shawn ? Here we need to put some quick intro on the value of a DVCS, and present a bit the field.<br />
I am sure Shawn has some good slides on tat, he had made a presnetation @ the GSOC mentor summit that we could extract some bits from.<br />
Traditional source code version control systems .....<br />
)<br />
<br />
= Introduction =<br />
The EGIT plugin is an Eclipse Team provider for Git (a.k.a. &quot;Stupid Content Tracker&quot;, http://git.or.cz).<br />
<br />
Git is the version control system originally developed for the Linux kernel by Linus Torvalds, and is now a general Source Code Management (SCM) tool. One of the Git strength is its ability to support distributed version tracking as well as more centralized schemes, in contrast with tradition SCM that offer only a centralized model (such as CVS and Subversion).<br />
Beyond the Linux kernel team, Git is now used by many other projects, both for open source and commercial development. <br />
<br />
Git is a fast distributed SCM, which means every developer has a full copy of all history of every revision of the code making queries against the history very fast and versatile. The storage model also means most operations are ten to a hundred times faster than with traditional centralized SCM such as CVS or Subversion. The integrity of the code is guaranteed through the use of secure hashes on the content and history, plus optional GPG(PGP) key signing of tags.<br />
<br />
= Project Goal =<br />
The goal of the EGit project is to:<br />
* implement an Eclipse Team provider for the Git SCM,<br />
* work towards the definitions of new Team extensions and GUI paradigm to better support distributed SCM in general.<br />
<br />
= Project Scope =<br />
<br />
The project will implement Eclispe tooling for the JGit Java implementation of Git. <br />
Specific attention will be focused on performance. Performance is a big deal with Git. It affects what can be done by being so much faster. Things that couldn't be done because of time constraints are now possible. These things like very fast checkouts, branching, branch switching, merging, tagging, software archeology and synchronization. Merge speed is probably the most important feature.<br />
The EGit plugin meta data shall be fully compatible with the meta data created by the native Git version so both can be used on the same checkout out repository.<br />
<br />
Beyond the Git support implementation, the project will work towards defining new essential extensions to the Eclipse core platform Team framework to account for the specific issues and features provided by distributed version control systems.<br />
It is also our intent to reach out to other project that implement support for distributed SCM in Eclipse to collaborate and exchange in that domain.<br />
<br />
Finally, the implications of adopting a distributed SCM approach can bring significant benefits especially for large open source projects such as Eclipse and can help lower the barrier to entry for new contributors and source code experimentation easier.<br />
The project will try to be a fervent advocate of distributed SCM benefits to the Eclipse community.<br />
<br />
= Project description =<br />
<br />
The Git team provider will provide the ability to do all everyday task in a Git work flow from inside Eclipse, integrated with the Eclipse Team framework, and providing new features specific to Git and distributed version control management.<br />
<br />
= Features =<br />
* Initial project setup: Support to create new Git repositories.<br />
<br />
* Importing existing code: Existing local Git repositories as well as remote repository can be imported. Remote repositories are imported by &quot;cloning&quot; them resulting in a local copy.<br />
<br />
* Replicating repositories: It shall be possible to distribute local version to other repositories through &quot;push&quot; operations as well as patches distributed by electronic mail. Receiving content shall be possible by fetching content via the git supported protocols (raw, ssh and http based) and via e-mailed patches directly from mailboxes, files or clipboard. &quot;Bundles&quot; shall also be supported.<br />
<br />
* Quickdiff against any version shall be supported.<br />
<br />
* Comparing any versions shall be supported.<br />
<br />
* Producing git-format patches to the clipboard shall be supported.<br />
<br />
* Selective commit (using the Quickdiff markers) shall be supported<br />
<br />
* Merge shall be supported<br />
<br />
* Cherry picking shall be supported<br />
<br />
* Re-base of branches shall be supported. This includes splitting, reordering and squashing (alternate term not to be confused with the normal meaning of &quot;merge&quot; in SCM terminology).<br />
<br />
* Branch switching, committing, amending commits and reset shall be supported.<br />
<br />
* Partial checkouts (currently not a native Git feature) shall be possible.<br />
<br />
* Some form of synchronization with CVS or other SCM. At least export to CVS, like git cvsexportcommit. Ideally Git commits shall be exportable to a CVS repository with the same structure. CVS import is a much harder problem where no perfect solution exists.<br />
<br />
== Perspective and Views ==<br />
* A Git perspective will be provided for browsing repositories before importing Git projects, pre-configured with available Team views and new EGit views.<br />
* History viewer: An history viewer with graphical presentation of history and access for compare editors will be developed as well as other views that may be useful for distributed SCM.<br />
* Repository browser : An explorer for examining Git repositories not connected to an eclipse project. Importing projects shall be possible from here.<br />
* Global directory: An explorer to find manage Git repositories ( at the minimum minimum all known local clones and their &quot;remotes&quot;)<br />
<br />
== Extension points ==<br />
Quickdiff must be enhanced to allow selective committing.<br />
New extensions points will be designed as needed to expose new core extensibility common to many distributed SCM.<br />
<br />
== Extensions to existing Eclipse Team functionality ==<br />
Team provider<br />
Resource decorators<br />
Quickdiff provider<br />
<br />
<br />
= Organization=<br />
We propose this project should be undertaken as an incubator project with the Technology project.<br />
<br />
== Mentors ==<br />
TBD<br />
(TODO: Phil approach potential mentors from the architecture council)<br />
== Initial Committers ==<br />
* Robin Rosenberg (project lead)?<br />
* Shawn Pearce (project lead) ?<br />
* Philippe Ombredanne<br />
(TODO: Robin: what about others?)<br />
<br />
== Initial Code Contribution ==<br />
The initial code contribution is based on the existing EGit code base licensed under the EPL. (this has already been approved by current comitters).<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGIT and JGit for anyone that contributed to the code base that will be contributed)<br />
(TODO: Robin+ Shawn: update all copyright headers in the code)<br />
<br />
=== Licensing and Intellectual property ===<br />
A point of note is that EGit depends on the JGit, a pure Java Git implementation of Git.<br />
JGit was originally licensed under a combination of GPL and LGPL and is now made available under a (BSD/Apache/MIT TBD) license. The developers of JGit are also the original developers of EGit.<br />
(TODO: Robin+ Shawn: pick license of JGit, and add header to JGit)<br />
<br />
Now Git itself is licensed under the GPL V2, but JGit is a clean implementation of the core Git data structures and as such has received the approval of the core Git maintainers (including LT, (TODO: Robin+ Shawn+Phil: get email confirmation from Linus + current lead maintainer on that topic)<br />
) to be licensed under any open source license the authors wish. Therefore the JGit authors have elected to license JGit under the (Apache/BSD/MIT TBD) license which is compatible with the Eclipse Public License.<br />
As part of the original code contribution review, JGit will be also submitted for approval per the Eclipse development process.<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGit and JGit for anyone that contributed to the code base that will be contributed)<br />
<br />
== Interested Parties ==<br />
TBD<br />
(TODO: all list interested individual and companies ....)<br />
<br />
== User community ==<br />
EGIt and JGit already have an established community and we expect that this community of users and contributors will join this new project at Eclipse. Of note is that the general support of Git on Windows is limited. By being platform neutral, EGit has the opportunity to provide advanced Git support also on this platform and serve the needs of a larger community.<br />
<br />
= Relation to other Eclipse projects and to other open source projects =<br />
(TODO: Robin:review and add a few words for possible project we intersect with)<br />
<br />
* Git - The SCM we want to provide an interface through. [http://git.or.cz]<br />
* JGit - a pure Java implementation of Git licensed under (BSD/Apache/MIT TBD ?) license.<br />
<br />
* Eclipse platform team support<br />
** CVS team provider<br />
** SVN team provider<br />
<br />
* Mylyn - a Task based IDE that provides privileged integration with Eclipse-supported team providers . A possible integration with EGit could be considered.<br />
<br />
* Buckminster<br />
<br />
== Tentative Development plan ==<br />
<br />
Some functionality already exists, but there is no real plan at the moment for lack of committed resources. The project's rough priorities are:<br />
<br />
Already done:<br />
<br />
* Connect to/create repositories for exiting projects<br />
* Create branches<br />
* Commit<br />
* Quickdiff against current revision<br />
* Resources decorators for tracked and modified resources as well as repository state<br />
* Basic compare of revisions<br />
<br />
Underway:<br />
* Cloning and updating from remote repositories<br />
<br />
Future:<br />
* Bisecting<br />
* Partial commits (i.e. committing partial changes)<br />
* Comprehensive handling of different character encodings in filenames and comments.<br />
* CRLF handling (unless we consider it unneeded)<br />
* Bugfixes for existing code<br />
* Formatting code for patch submission through e-mail<br />
* Apply patch<br />
* Rename/Copy tracking in compare revisions<br />
* Blame (annotate)<br />
* Merge<br />
* Rebase<br />
* External repository browser<br />
* Repacking (this a really a core Git feature and the one that can be really hard or impossible to perform in Java).<br />
* Rename tracking is an on-demand feature in git. Git does not record such information, it discovers it from content. The tight data structures in git makes implementing this in real time possible, but could still be a challenge.<br />
<br />
The project will deliver regular milestones ...<br />
(TODO: Robin: a rough sketch milestones plan....)</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=EGit/Proposal&diff=89658EGit/Proposal2008-03-30T02:01:16Z<p>Pombredanne.nexb.com: </p>
<hr />
<div>= THIS IS A DRAFT, WORK IN PROGRESS PROPOSAL, NOT AN ACTUAL OFFICIAL ECLIPSE PROJECT PROPOSAL YET =<br />
<br />
<br />
The EGIT project is a proposed open source project under the Eclipse Technology Project.<br />
<br />
According to the [http://www.eclipse.org/projects/dev_process/ Eclipse Development Process], this proposal is intended to declare the intent and scope of the EGIT project as well as to gather input from the Eclipse community. You are invited to comment on and/or join the project. Please send all feedback to the http://www.eclipse.org/newsportal/thread.php?group=eclipse.technology.egit newsgroup.<br />
<br />
= Background =<br />
(TODO: Shawn ? Here we need to put some quick intro on the value of a DVCS, and present a bit the field.<br />
I am sure Shawn has some good slides on tat, he had made a presnetation @ the GSOC mentor summit that we could extract some bits from.<br />
<br />
Traditional source code version control systems .....<br />
)<br />
= Introduction =<br />
The EGIT plugin is an Eclipse Team provider for Git (a.k.a. &quot;Stupid Content Tracker&quot;, http://git.or.cz).<br />
<br />
Git is the version control system originally developed for the Linux kernel by Linus Torvalds, and is now a general Source Code Management (SCM) tool. One of the Git strength is its ability to support distributed version tracking as well as more centralized schemes, in contrast with tradition SCM that offer only a centralized model (such as CVS and Subversion).<br />
Beyond the Linux kernel team, Git is now used by many other projects, both for open source and commercial development. <br />
<br />
Git is a fast distributed SCM, which means every developer has a full copy of all history of every revision of the code making queries against the history very fast and versatile. The storage model also means most operations are ten to a hundred times faster than with traditional centralized SCMs such as CVS or Subversion. The integrity of the code is guaranteed through the use of secure hashes on the content and history, plus optional GPG(PGP) key signing of tags.<br />
<br />
= Project Goal =<br />
The goal of the Egit project is to:<br />
* implement an Eclipse Team provider for the Git SCM,<br />
* work towards the definitions of new Team extensions and GUI paradigm to better support distributed SCMs in general.<br />
<br />
= Project Scope =<br />
<br />
The project will implement Eclispe tooling for the JGit Java implementation of Git. <br />
Specific attention will be focused on performance. Performance is a big deal with Git. It affects what can be done by being so much faster. Things that couldn't be done because of time constraints are now possible. These things like very fast checkouts, branching, branch switching, merging, tagging, software archeology and synchronization. Merge speed is probably the most important feature.<br />
The EGit plugin meta data shall be fully compatible with the meta data created by the native Git version so both can be used on the same checkout out repository.<br />
<br />
Beyond the Git support implementation, the project will work towards defining new essential extensions to the Eclipse core platform Team framework to account for the specific issues and features provided by distributed version control systems.<br />
It is also our intent to reach out to other project that implement support for distributed SCM in Eclipse to collaborate and exchange in that domain.<br />
<br />
Finally, the implications of adopting a distributed SCM approach can bring significant benefits especially for large open source projects such as Eclipse and can help lower the barrier to entry for new contributors and source code experimentation easier.<br />
The project will try to be a fervent advocate of distributed SCM benefits to the Eclipse community.<br />
<br />
= Project description =<br />
<br />
The Git team provider will provide the ability to do all everyday task in a Git work flow from inside Eclipse, integrated with the Eclipse Team framework, and providing new features specific to Git and distributed version control management.<br />
<br />
= Features =<br />
* Initial project setup: Support to create new Git repositories.<br />
<br />
* Importing existing code: Existing local Git repositories as well as remote repository can be imported. Remote repositories are imported by `cloning' them resulting in a local copy.<br />
<br />
* Replicating repositories: It shall be possible to distribute local version to other repositories through &quot;push&quot; operations as well as patches distributed by electronic mail. Receiving content shall be possible by fetching content via the git supported protocols (raw, ssh and http based) and via e-mailed patches directly from mailboxes, files or clipboard. &quot;Bundles&quot; shall also be supported.<br />
<br />
* Quickdiff against any version shall be supported.<br />
<br />
* Comparing any versions shall be supported.<br />
<br />
* Producing git-format patches to the clipboard shall be supported.<br />
<br />
* Selective commit (using the Quickdiff markers) shall be supported<br />
<br />
* Merge shall be supported<br />
<br />
* Cherry picking shall be supported<br />
<br />
* Re-base of branches shall be supported. This includes splitting, reordering and squashing (alternate term not to be confused with the normal meaning of &quot;merge&quot; in SCM terminology).<br />
<br />
* Branch switching, committing, amending commits and reset shall be supported.<br />
<br />
* Partial checkouts (currently not a native Git feature) shall be possible.<br />
<br />
* Some form of synchronization with CVS or other SCM. At least export to CVS, like git cvsexportcommit. Ideally Git commits shall be exportable to a CVS repository with the same structure. CVS import is a much harder problem where no perfect solution exists.<br />
<br />
== Perspective and Views ==<br />
* A Git perspective will be provided for browsing repositories before importing Git projects, pre-configured with available Team views and new EGit views.<br />
* History viewer: An history viewer with graphical presentation of history and access for compare editors will be developed as well as other views that may be useful for distributed SCM.<br />
* Repository browser : An explorer for examining Git repositories not connected to an eclipse project. Importing projects shall be possible from here.<br />
* Global directory: An explorer to find manage Git repositories ( at the minimum minimum all known local clones and their &quot;remotes&quot;)<br />
<br />
== Extension points ==<br />
Quickdiff must be enhanced to allow selective committing.<br />
New extensions points will be designed as needed to expose new core extensibility common to many distributed SCM.<br />
<br />
== Extensions to existing Eclipse Team functionality ==<br />
Team provider<br />
Resource decorators<br />
Quickdiff provider<br />
<br />
<br />
= Organization=<br />
We propose this project should be undertaken as an incubator project with the Technology project.<br />
<br />
== Mentors ==<br />
TBD<br />
(TODO: Phil approach potential mentors from the architecture council)<br />
== Initial Committers ==<br />
* Robin Rosenberg (project lead)?<br />
* Shawn Pearce (project lead) ?<br />
* Philippe Ombredanne<br />
(TODO: Robin: what about others?)<br />
<br />
== Initial Code Contribution ==<br />
The initial code contribution is based on the existing EGit code base licensed under the EPL. (this has already been approved by current comitters).<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGIT and JGit for anyone that contributed to the code base that will be contributed)<br />
(TODO: Robin+ Shawn: update all copyright headers in the code)<br />
<br />
=== Licensing and Intellectual property ===<br />
A point of note is that EGit depends on the JGit, a pure Java Git implementation of Git.<br />
JGit was originally licensed under a combination of GPL and LGPL and is now made available under a (BSD/Apache/MIT TBD) license. The developers of JGit are also the original developers of EGit.<br />
(TODO: Robin+ Shawn: pick license of JGit, and add header to JGit)<br />
<br />
Now Git itself is licensed under the GPL V2, but JGit is a clean implementation of the core Git data structures and as such has received the approval of the core Git maintainers (including LT, (TODO: Robin+ Shawn+Phil: get email confirmation from Linus + current lead maintainer on that topic)<br />
) to be licensed under any open source license the authors wish. Therefore the JGit authors have elected to license JGit undet the (Apache/BSd/MIT TBD) license which is compatible with the Eclipse Public License.<br />
As part of the original code contribution review, JGit will be also submitted for approval per the Eclipse development process.<br />
(TODO: Robin+ Shawn: get complete email approval from all the committers for both EGIT and JGit for anyone that contributed to the code base that will be contributed)<br />
<br />
== Interested Parties ==<br />
TBD<br />
(TODO: all list interested individual and companies ....)<br />
<br />
== User community ==<br />
EGIt and JGit already have an established community and we expect that this community of users and contributors will join this new project at Eclipse. Of note is that the general support of Git on Windows is limited. By being platform neutral, EGit has the opportunity to provide advanced Git support also on this platform and serve the needs of a larger community.<br />
<br />
= Relation to other Eclipse projects and to other open source projects =<br />
(TODO: Robin:review and add a few words for possible project we intersect with)<br />
<br />
* Git - The SCM we want to provide an interface through. http://git.or.cz<br />
* JGit - a pure Java implementation of Git licensed under (BSD/Apache/MIT TBD ?) license.<br />
<br />
* Eclipse platform team support<br />
** CVS team provider<br />
** SVN team provider<br />
<br />
* Mylyn - a Task based IDE that provides privileged integration with Eclipse-supported team providers . A possible integration with EGit could be considered.<br />
<br />
* Buckminster<br />
<br />
== Tentative Development plan ==<br />
<br />
Some functionality already exists, but there is no real plan at the moment for lack of committed resources. The project's rough priorities are:<br />
<br />
Already done:<br />
<br />
* Connect to/create repositories for exiting projects<br />
* Create branches<br />
* Commit<br />
* Quickdiff against current revision<br />
* Resources decorators for tracked and modified resources as well as repository state<br />
* Basic compare of revisions<br />
<br />
Underway:<br />
* Cloning and updating from remote repositories<br />
<br />
Future:<br />
* Bisecting<br />
* Partial commits (i.e. committing partial changes)<br />
* Comprehensive handling of different character encodings in filenames and comments.<br />
* CRLF handling (unless we consider it unneeded)<br />
* Bugfixes for existing code<br />
* Formatting code for patch submission through e-mail<br />
* Apply patch<br />
* Rename/Copy tracking in compare revisions<br />
* Blame (annotate)<br />
* Merge<br />
* Rebase<br />
* External repository browser<br />
* Repacking (this a really a core Git feature and the one that can be really hard or impossible to perform in Java).<br />
* Rename tracking is an on-demand feature in git. Git does not record such information, it discovers it from content. The tight data structures in git makes implementing this in real time possible, but could still be a challenge.<br />
<br />
The project will deliver regular milestones ...<br />
(TODO: Robin: a rough sketch milestones plan....)</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=EGit/Proposal&diff=89657EGit/Proposal2008-03-30T01:51:56Z<p>Pombredanne.nexb.com: </p>
<hr />
<div>= THIS IS A DRAFT, WORK IN PROGRESS PROPOSAL, NOT AN ACTUAL OFFICIAL ECLIPSE PROJECT PROPOSAL YET =<br />
<br />
<br />
The EGIT project is a proposed open source project under the Eclipse Technology Project.<br />
<br />
According to the [http://www.eclipse.org/projects/dev_process/ Eclipse Development Process], this proposal is intended to declare the intent and scope of the EGIT project as well as to gather input from the Eclipse community. You are invited to comment on and/or join the project. Please send all feedback to the http://www.eclipse.org/newsportal/thread.php?group=eclipse.technology.egit newsgroup.<br />
<br />
= Background =<br />
Here we need to put some quick intro on the value of a DVCS, and present a bit the field.<br />
I am sure Shawn has some good slides on tat, he had made a presnetation @ the GSOC mentor summit that we could extract some bits from.<br />
<br />
Traditional source code version control systems .....<br />
<br />
= Introduction =<br />
The EGIT plugin is an Eclipse Team provider for Git (a.k.a. &quot;Stupid Content Tracker&quot;, http://git.or.cz).<br />
<br />
Git is the version control system originally developed for the Linux kernel by Linus Torvalds, and is now a general Source Code Management (SCM) tool. One of the Git strength is its ability to support distributed version tracking as well as more centralized schemes, in contrast with tradition SCM that offer only a centralized model (such as CVS and Subversion).<br />
Beyond the Linux kernel team, Git is now used by many other projects, both for open source and commercial development. <br />
<br />
Git is a fast distributed SCM, which means every developer has a full copy of all history of every revision of the code making queries against the history very fast and versatile. The storage model also means most operations are ten to a hundred times faster than with traditional centralized SCMs such as CVS or Subversion. The integrity of the code is guaranteed through the use of secure hashes on the content and history, plus optional GPG(PGP) key signing of tags.<br />
<br />
= Project Goal =<br />
The goal of the Egit project is to:<br />
* implement an Eclipse Team provider for the Git SCM,<br />
* work towards the definitions of new Team extensions and GUI paradigm to better support distributed SCMs in general.<br />
<br />
= Project Scope =<br />
<br />
The project will implement Eclispe tooling for the JGit Java implementation of Git. <br />
Specific attention will be focused on performance. Performance is a big deal with Git. It affects what can be done by being so much faster. Things that couldn't be done because of time constraints are now possible. These things like very fast checkouts, branching, branch switching, merging, tagging, software archeology and synchronization. Merge speed is probably the most important feature.<br />
The EGit plugin meta data shall be fully compatible with the meta data created by the native Git version so both can be used on the same checkout out repository.<br />
<br />
Beyond the Git support implementation, the project will work towards defining new essential extensions to the Eclipse core platform Team framework to account for the specific issues and features provided by distributed version control systems.<br />
It is also our intent to reach out to other project that implement support for distributed SCM in Eclipse to collaborate and exchange in that domain.<br />
<br />
Finally, the implications of adopting a distributed SCM approach can bring significant benefits especially for large open source projects such as Eclipse and can help lower the barrier to entry for new contributors and source code experimentation easier.<br />
The project will try to be a fervent advocate of distributed SCM benefits to the Eclipse community.<br />
<br />
= Project description =<br />
<br />
The Git team provider will provide the ability to do all everyday task in a Git work flow from inside Eclipse, integrated with the Eclipse Team framework, and providing new features specific to Git and distributed version control management.<br />
<br />
= Features =<br />
* Initial project setup: Support to create new Git repositories.<br />
<br />
* Importing existing code: Existing local Git repositories as well as remote repository can be imported. Remote repositories are imported by `cloning' them resulting in a local copy.<br />
<br />
* Replicating repositories: It shall be possible to distribute local version to other repositories through &quot;push&quot; operations as well as patches distributed by electronic mail. Receiving content shall be possible by fetching content via the git supported protocols (raw, ssh and http based) and via e-mailed patches directly from mailboxes, files or clipboard. &quot;Bundles&quot; shall also be supported.<br />
<br />
* Quickdiff against any version shall be supported.<br />
<br />
* Comparing any versions shall be supported.<br />
<br />
* Producing git-format patches to the clipboard shall be supported.<br />
<br />
* Selective commit (using the Quickdiff markers) shall be supported<br />
<br />
* Merge shall be supported<br />
<br />
* Cherry picking shall be supported<br />
<br />
* Re-base of branches shall be supported. This includes splitting, reordering and squashing (alternate term not to be confused with the normal meaning of &quot;merge&quot; in SCM terminology).<br />
<br />
* Branch switching, committing, amending commits and reset shall be supported.<br />
<br />
* Partial checkouts (currently not a native Git feature) shall be possible.<br />
<br />
* Some form of synchronization with CVS or other SCM. At least export to CVS, like git cvsexportcommit. Ideally Git commits shall be exportable to a CVS repository with the same structure. CVS import is a much harder problem where no perfect solution exists.<br />
<br />
== Perspective and Views ==<br />
* A Git perspective will be provided for browsing repositories before importing Git projects, pre-configured with available Team views and new EGit views.<br />
* History viewer: An history viewer with graphical presentation of history and access for compare editors will be developed as well as other views that may be useful for distributed SCM.<br />
* Repository browser : An explorer for examining Git repositories not connected to an eclipse project. Importing projects shall be possible from here.<br />
* Global directory: An explorer to find manage Git repositories ( at the minimum minimum all known local clones and their &quot;remotes&quot;)<br />
<br />
== Extension points ==<br />
Quickdiff must be enhanced to allow selective committing.<br />
New extensions points will be designed as needed to expose new core extensibility common to many distributed SCM.<br />
<br />
== Extensions to existing Eclipse Team functionality ==<br />
Team provider<br />
Resource decorators<br />
Quickdiff provider<br />
<br />
<br />
= Organization=<br />
<br />
== Mentors ==<br />
TBD<br />
<br />
== Initial Committers ==<br />
* Robin Rosenberg (project lead)?<br />
* Shawn Pearce (project lead) ?<br />
* Philippe Ombredanne<br />
<br />
<br />
== Initial Code Contribution ==<br />
The initial code contribution is based on the existing EGit code base licensed under the EPL. (this has already been approved by current comitters).<br />
<br />
=== Licensing and Intellectual property ===<br />
A point of note is that EGit depends on the JGit, a pure Java Git implementation of Git.<br />
JGit was originally licensed under a combination of GPL and LGPL and is now made available under a (BSD/Apache/MIT TBD) license. The developers of JGit are also the original developers of EGit.<br />
Now Git itself is licensed under the GPL V2, but JGit is a clean implementation of the core Git data structures and as such has received the approval of the core Git maintainers (including LT, TBD) to be licensed under any open source license the authors wish. Therefore the JGit authors have elected to license JGit undet the (Apache/BSd/MIT TBD) license which is compatible with the Eclipse Public License.<br />
As part of the original code contribution review, JGit will be also submitted for approval per the Eclipse development process.<br />
<br />
== Tentative Development plan ==<br />
<br />
Some functionality already exists, but there is no real plan at the moment for lack of committed resources. The project's rough priorities are:<br />
<br />
Already done:<br />
<br />
* Connect to/create repositories for exiting projects<br />
* Create branches<br />
* Commit<br />
* Quickdiff against current revision<br />
* Resources decorators for tracked and modified resources as well as repository state<br />
* Basic compare of revisions<br />
<br />
Underway:<br />
* Cloning and updating from remote repositories<br />
<br />
Future:<br />
* Bisecting<br />
* Partial commits (i.e. committing partial changes)<br />
* Comprehensive handling of different character encodings in filenames and comments.<br />
* CRLF handling (unless we consider it unneeded)<br />
* Bugfixes for existing code<br />
* Formatting code for patch submission through e-mail<br />
* Apply patch<br />
* Rename/Copy tracking in compare revisions<br />
* Blame (annotate)<br />
* Merge<br />
* Rebase<br />
* External repository browser<br />
* Repacking (this a really a core Git feature and the one that can be really hard or impossible to perform in Java).<br />
* Rename tracking is an on-demand feature in git. Git does not record such information, it discovers it from content. The tight data structures in git makes implementing this in real time possible, but could still be a challenge.<br />
<br />
The project will deliver regular milestones ...<br />
TBD a rough sketch milestones plan....<br />
<br />
== Interested Parties ==<br />
TBD<br />
<br />
== User community ==<br />
EGIt and JGit already have an established community and we expect that this community of users and contributors will join this new project at Eclipse. Of note is that the general support of Git on Windows is limited. By being platform neutral, EGit has the opportunity to provide advanced Git support also on this platform and serve the needs of a larger community.<br />
<br />
= Relation to other Eclipse projects and to other open source projects =<br />
<br />
* Git - The SCM we want to provide an interface through. http://git.or.cz<br />
* JGit - a pure Java implementation of Git licensed under (BSD/Apache/MIT TBD ?) license.<br />
<br />
* Eclipse platform team support<br />
** CVS team provider<br />
** SVN team provider<br />
<br />
* Mylyn - a Task based IDE that provides privileged integration with Eclipse-supported team providers . A possible integration with EGit could be considered.<br />
<br />
* Buckminster</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=EGit/Proposal&diff=89656EGit/Proposal2008-03-30T01:46:15Z<p>Pombredanne.nexb.com: </p>
<hr />
<div>= THIS IS A DRAFT, WORK IN PROGRESS PROPOSAL, NOT AN ACTUAL OFFICIAL ECLIPSE PROJECT PROPOSAL YET =<br />
<br />
<br />
The EGIT project is a proposed open source project under the Eclipse Technology Project.<br />
<br />
According to the [http://www.eclipse.org/projects/dev_process/ Eclipse Development Process], this proposal is intended to declare the intent and scope of the EGIT project as well as to gather input from the Eclipse community. You are invited to comment on and/or join the project. Please send all feedback to the http://www.eclipse.org/newsportal/thread.php?group=eclipse.technology.egit newsgroup.<br />
<br />
= Background =<br />
Here we need to put some quick intro on the value of a DVCS, and present a bit the field.<br />
I am sure Shawn has some good slides on tat, he had made a presnetation @ the GSOC mentor summit that we could extract some bits from.<br />
<br />
Traditional source code version control systems .....<br />
<br />
= Introduction =<br />
The EGIT plugin is an Eclipse Team provider for Git (a.k.a. &quot;Stupid Content Tracker&quot;, http://git.or.cz).<br />
<br />
Git is the version control system originally developed for the Linux kernel by Linus Torvalds, and is now a general Source Code Management (SCM) tool. One of the Git strength is its ability to support distributed version tracking as well as more centralized schemes, in contrast with tradition SCM that offer only a centralized model (such as CVS and Subversion).<br />
Beyond the Linux kernel team, Git is now used by many other projects, both for open source and commercial development. <br />
<br />
Git is a fast distributed SCM, which means every developer has a full copy of all history of every revision of the code making queries against the history very fast and versatile. The storage model also means most operations are ten to a hundred times faster than with traditional centralized SCMs such as CVS or Subversion. The integrity of the code is guaranteed through the use of secure hashes on the content and history, plus optional GPG(PGP) key signing of tags.<br />
<br />
= Project Goal =<br />
The goal of the Egit project is to:<br />
* implement an Eclipse Team provider for the Git SCM,<br />
* work towards the definitions of new Team extensions and GUI paradigm to better support distributed SCMs in general.<br />
<br />
= Project Scope =<br />
<br />
The project will implement Eclispe tooling for the JGit Java implementation of Git. <br />
Specific attention will be focused on performance. Performance is a big deal with Git. It affects what can be done by being so much faster. Things that couldn't be done because of time constraints are now possible. These things like very fast checkouts, branching, branch switching, merging, tagging, software archeology and synchronization. Merge speed is probably the most important feature.<br />
The EGit plugin meta data shall be fully compatible with the meta data created by the native Git version so both can be used on the same checkout out repository.<br />
<br />
Beyond the Git support implementation, the project will work towards defining new essential extensions to the Eclipse core platform Team framework to account for the specific issues and features provided by distributed version control systems.<br />
It is also our intent to reach out to other project that implement support for distributed SCM in Eclipse to collaborate and exchange in that domain.<br />
<br />
Finally, the implications of adopting a distributed SCM approach can bring significant benefits especially for large open source projects such as Eclipse and can help lower the barrier to entry for new contributors and source code experimentation easier.<br />
The project will try to be a fervent advocate of distributed SCM benefits to the Eclipse community.<br />
<br />
= Project description =<br />
<br />
The Git team provider will provide the ability to do all everyday task in a Git work flow from inside Eclipse, integrated with the Eclipse Team framework, and providing new features specific to Git and distributed version control management.<br />
<br />
= Features =<br />
* Initial project setup: Support to create new Git repositories.<br />
<br />
* Importing existing code: Existing local Git repositories as well as remote repository can be imported. Remote repositories are imported by `cloning' them resulting in a local copy.<br />
<br />
* Replicating repositories: It shall be possible to distribute local version to other repositories through &quot;push&quot; operations as well as patches distributed by electronic mail. Receiving content shall be possible by fetching content via the git supported protocols (raw, ssh and http based) and via e-mailed patches directly from mailboxes, files or clipboard. &quot;Bundles&quot; shall also be supported.<br />
<br />
* Quickdiff against any version shall be supported.<br />
<br />
* Comparing any versions shall be supported.<br />
<br />
* Producing git-format patches to the clipboard shall be supported.<br />
<br />
* Selective commit (using the Quickdiff markers) shall be supported<br />
<br />
* Merge shall be supported<br />
<br />
* Cherry picking shall be supported<br />
<br />
* Re-base of branches shall be supported. This includes splitting, reordering and squashing (alternate term not to be confused with the normal meaning of &quot;merge&quot; in SCM terminology).<br />
<br />
* Branch switching, committing, amending commits and reset shall be supported.<br />
<br />
* Partial checkouts (currently not a native Git feature) shall be possible.<br />
<br />
* Some form of synchronization with CVS or other SCM. At least export to CVS, like git cvsexportcommit.<br />
<br />
== Perspective and Views ==<br />
* A Git perspective will be provided for browsing repositories before importing Git projects, pre-configured with available Team views and new EGit views.<br />
* History viewer: An history viewer with graphical presentation of history and access for compare editors will be developed as well as other views that may be useful for distributed SCM.<br />
* Repository browser : An explorer for examining Git repositories not connected to an eclipse project. Importing projects shall be possible from here.<br />
* Global directory: An explorer to find manage Git repositories ( at the minimum minimum all known local clones and their &quot;remotes&quot;)<br />
<br />
== Extension points ==<br />
Quickdiff must be enhanced to allow selective committing.<br />
New extensions points will be designed as needed to expose new core extensibility common to many distributed SCM.<br />
<br />
== Extensions to existing Eclipse Team functionality ==<br />
Team provider<br />
Resource decorators<br />
Quickdiff provider<br />
<br />
== CVS export ==<br />
Git commits shall be exportable to a CVS repository with the same structure. <br />
CVS import is a much harder problem where no perfect solution exists.<br />
<br />
= Organization=<br />
<br />
== Mentors ==<br />
TBD<br />
<br />
== Initial Committers ==<br />
* Robin Rosenberg (project lead)?<br />
* Shawn Pearce (project lead) ?<br />
* Philippe Ombredanne<br />
<br />
<br />
== Initial Code Contribution ==<br />
The initial code contribution is based on the existing EGit code base licensed under the EPL. (this has already been approved by current comitters).<br />
<br />
=== Licensing and Intellectual property ===<br />
A point of note is that EGit depends on the JGit, a pure Java Git implementation of Git.<br />
JGit was originally licensed under a combination of GPL and LGPL and is now made available under a (BSD/Apache/MIT TBD) license.<br />
Git itself is licensed under the GPL V2. <br />
JGit is a clean implementation of the core Git data structures and as such has received the approval of the core Git maintainers (including LT, TBD) to be licensed under any open source license the authors wish.<br />
<br />
<br />
== Tentative Development plan ==<br />
<br />
Some functionality already exists, but there is no real plan at the moment for lack of committed resources. The project's rough priorities are:<br />
<br />
Already done:<br />
<br />
* Connect to/create repositories for exiting projects<br />
* Create branches<br />
* Commit<br />
* Quickdiff against current revision<br />
* Resources decorators for tracked and modified resources as well as repository state<br />
* Basic compare of revisions<br />
<br />
Underway:<br />
* Cloning and updating from remote repositories<br />
<br />
Future:<br />
* Bisecting<br />
* Partial commits (i.e. committing partial changes)<br />
* Comprehensive handling of different character encodings in filenames and comments.<br />
* CRLF handling (unless we consider it unneeded)<br />
* Bugfixes for existing code<br />
* Formatting code for patch submission through e-mail<br />
* Apply patch<br />
* Rename/Copy tracking in compare revisions<br />
* Blame (annotate)<br />
* Merge<br />
* Rebase<br />
* External repository browser<br />
* Repacking (this a really a core Git feature and the one that can be really hard or impossible to perform in Java).<br />
* Rename tracking is an on-demand feature in git. Git does not record such information, it discovers it from content. The tight data structures in git makes implementing this in real time possible, but could still be a challenge.<br />
<br />
<br />
<br />
== Interested Parties ==<br />
TBD<br />
<br />
== User community ==<br />
EGIt and JGit already have an established community and we expect that this community of users and contributors will join this new project at Eclipse. Of note is that the general support of Git on Windows is limited. By being platform neutral, EGit has the opportunity to provide advanced Git support also on this platform and serve the needs of a larger community.<br />
<br />
= Relation to other Eclipse projects and to other open source projects =<br />
<br />
* Git - The SCM we want to provide an interface through. http://git.or.cz<br />
* JGit - a pure Java implementation of Git licensed under (BSD/Apache/MIT TBD ?) license.<br />
<br />
* Eclipse platform team support<br />
** CVS team provider<br />
** SVN team provider<br />
<br />
* Mylyn - a Task based IDE that provides privileged integration with Eclipse-supported team providers . A possible integration with EGit could be considered.<br />
<br />
* Buckminster</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=EGit/Proposal&diff=89655EGit/Proposal2008-03-30T01:45:29Z<p>Pombredanne.nexb.com: </p>
<hr />
<div>= THIS IS A DRAFT, WORK IN PROGRESS PROPOSAL, NOT AN ACTUAL OFFICIAL ECLIPSE PROJECT PROPOSAL YET =<br />
<br />
<br />
The EGIT project is a proposed open source project under the Eclipse Technology Project.<br />
<br />
According to the [http://www.eclipse.org/projects/dev_process/ Eclipse Development Process], this proposal is intended to declare the intent and scope of the EGIT project as well as to gather input from the Eclipse community. You are invited to comment on and/or join the project. Please send all feedback to the http://www.eclipse.org/newsportal/thread.php?group=eclipse.technology.egit newsgroup.<br />
<br />
= Background =<br />
Here we need to put some quick intro on the value of a DVCS, and present a bit the field.<br />
I am sure Shawn has some good slides on tat, he had made a presnetation @ the GSOC mentor summit that we could extract some bits from.<br />
<br />
Traditional source code version control systems .....<br />
<br />
= Introduction =<br />
The EGIT plugin is an Eclipse Team provider for Git (a.k.a. &quot;Stupid Content Tracker&quot;, http://git.or.cz).<br />
<br />
Git is the version control system originally developed for the Linux kernel by Linus Torvalds, and is now a general Source Code Management (SCM) tool. One of the Git strength is its ability to support distributed version tracking as well as more centralized schemes, in contrast with tradition SCM that offer only a centralized model (such as CVS and Subversion).<br />
Beyond the Linux kernel team, Git is now used by many other projects, both for open source and commercial development. <br />
<br />
Git is a fast distributed SCM, which means every developer has a full copy of all history of every revision of the code making queries against the history very fast and versatile. The storage model also means most operations are ten to a hundred times faster than with traditional centralized SCMs such as CVS or Subversion. The integrity of the code is guaranteed through the use of secure hashes on the content and history, plus optional GPG(PGP) key signing of tags.<br />
<br />
= Project Goal =<br />
The goal of the Egit project is to:<br />
* implement an Eclipse Team provider for the Git SCM,<br />
* work towards the definitions of new Team extensions and GUI paradigm to better support distributed SCMs in general.<br />
<br />
= Project Scope =<br />
<br />
The project will implement Eclispe tooling for the JGit Java implementation of Git. <br />
Specific attention will be focused on performance. Performance is a big deal with Git. It affects what can be done by being so much faster. Things that couldn't be done because of time constraints are now possible. These things like very fast checkouts, branching, branch switching, merging, tagging, software archeology and synchronization. Merge speed is probably the most important feature.<br />
The EGit plugin meta data shall be fully compatible with the meta data created by the native Git version so both can be used on the same checkout out repository.<br />
<br />
Beyond the Git support implementation, the project will work towards defining new essential extensions to the Eclipse core platform Team framework to account for the specific issues and features provided by distributed version control systems.<br />
It is also our intent to reach out to other project that implement support for distributed SCM in Eclipse to collaborate and exchange in that domain.<br />
<br />
Finally, the implications of adopting a distributed SCM approach can bring significant benefits especially for large open source projects such as Eclipse and can help lower the barrier to entry for new contributors and source code experimentation easier.<br />
The project will try to be a fervent advocate of distributed SCM benefits to the Eclipse community.<br />
<br />
= Project description =<br />
<br />
The Git team provider will provide the ability to do all everyday task in a Git work flow from inside Eclipse, integrated with the Eclipse Team framework, and providing new features specific to Git and distributed version control management.<br />
<br />
== Features ==<br />
* Initial project setup: Support to create new Git repositories.<br />
<br />
* Importing existing code: Existing local Git repositories as well as remote repository can be imported. Remote repositories are imported by `cloning' them resulting in a local copy.<br />
<br />
* Replicating repositories: It shall be possible to distribute local version to other repositories through &quot;push&quot; operations as well as patches distributed by electronic mail. Receiving content shall be possible by fetching content via the git supported protocols (raw, ssh and http based) and via e-mailed patches directly from mailboxes, files or clipboard. &quot;Bundles&quot; shall also be supported.<br />
<br />
* Quickdiff against any version shall be supported.<br />
<br />
* Comparing any versions shall be supported.<br />
<br />
* Producing git-format patches to the clipboard shall be supported.<br />
<br />
* Selective commit (using the Quickdiff markers) shall be supported<br />
<br />
* Merge shall be supported<br />
<br />
* Cherry picking shall be supported<br />
<br />
* Re-base of branches shall be supported. This includes splitting, reordering and squashing (alternate term not to be confused with the normal meaning of &quot;merge&quot; in SCM terminology).<br />
<br />
* Branch switching, committing, amending commits and reset shall be supported.<br />
<br />
* Partial checkouts (currently not a native Git feature) shall be possible.<br />
<br />
* Some form of synchronization with CVS or other SCM. At least export to CVS, like git cvsexportcommit.<br />
<br />
=== Perspective and Views===<br />
* A Git perspective will be provided for browsing repositories before importing Git projects, pre-configured with available Team views and new EGit views.<br />
* History viewer: An history viewer with graphical presentation of history and access for compare editors will be developed as well as other views that may be useful for distributed SCM.<br />
* Repository browser : An explorer for examining Git repositories not connected to an eclipse project. Importing projects shall be possible from here.<br />
* Global directory: An explorer to find manage Git repositories ( at the minimum minimum all known local clones and their &quot;remotes&quot;)<br />
<br />
=== Extension points ===<br />
Quickdiff must be enhanced to allow selective committing.<br />
New extensions points will be designed as needed to expose new core extensibility common to many distributed SCM.<br />
<br />
=== Extensions to existing Eclipse Team functionality ===<br />
Team provider<br />
Resource decorators<br />
Quickdiff provider<br />
<br />
==== CVS export ==<br />
Git commits shall be exportable to a CVS repository with the same structure. <br />
CVS import is a much harder problem where no perfect solution exists.<br />
<br />
= Organization=<br />
<br />
== Mentors ==<br />
TBD<br />
<br />
== Initial Committers ==<br />
* Robin Rosenberg (project lead)?<br />
* Shawn Pearce (project lead) ?<br />
* Philippe Ombredanne<br />
<br />
<br />
== Initial Code Contribution ==<br />
The initial code contribution is based on the existing EGit code base licensed under the EPL. (this has already been approved by current comitters).<br />
<br />
=== Licensing and Intellectual property ===<br />
A point of note is that EGit depends on the JGit, a pure Java Git implementation of Git.<br />
JGit was originally licensed under a combination of GPL and LGPL and is now made available under a (BSD/Apache/MIT TBD) license.<br />
Git itself is licensed under the GPL V2. <br />
JGit is a clean implementation of the core Git data structures and as such has received the approval of the core Git maintainers (including LT, TBD) to be licensed under any open source license the authors wish.<br />
<br />
<br />
== Tentative Development plan ==<br />
<br />
Some functionality already exists, but there is no real plan at the moment for lack of committed resources. The project's rough priorities are:<br />
<br />
Already done:<br />
<br />
* Connect to/create repositories for exiting projects<br />
* Create branches<br />
* Commit<br />
* Quickdiff against current revision<br />
* Resources decorators for tracked and modified resources as well as repository state<br />
* Basic compare of revisions<br />
<br />
Underway:<br />
* Cloning and updating from remote repositories<br />
<br />
Future:<br />
* Bisecting<br />
* Partial commits (i.e. committing partial changes)<br />
* Comprehensive handling of different character encodings in filenames and comments.<br />
* CRLF handling (unless we consider it unneeded)<br />
* Bugfixes for existing code<br />
* Formatting code for patch submission through e-mail<br />
* Apply patch<br />
* Rename/Copy tracking in compare revisions<br />
* Blame (annotate)<br />
* Merge<br />
* Rebase<br />
* External repository browser<br />
* Repacking (this a really a core Git feature and the one that can be really hard or impossible to perform in Java).<br />
* Rename tracking is an on-demand feature in git. Git does not record such information, it discovers it from content. The tight data structures in git makes implementing this in real time possible, but could still be a challenge.<br />
<br />
<br />
<br />
== Interested Parties ==<br />
TBD<br />
<br />
== User community ==<br />
EGIt and JGit already have an established community and we expect that this community of users and contributors will join this new project at Eclipse. Of note is that the general support of Git on Windows is limited. By being platform neutral, EGit has the opportunity to provide advanced Git support also on this platform and serve the needs of a larger community.<br />
<br />
= Relation to other Eclipse projects and to other open source projects =<br />
<br />
* Git - The SCM we want to provide an interface through. http://git.or.cz<br />
* JGit - a pure Java implementation of Git licensed under (BSD/Apache/MIT TBD ?) license.<br />
<br />
* Eclipse platform team support<br />
** CVS team provider<br />
** SVN team provider<br />
<br />
* Mylyn - a Task based IDE that provides privileged integration with Eclipse-supported team providers . A possible integration with EGit could be considered.<br />
<br />
* Buckminster</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=EGit/Proposal&diff=89641EGit/Proposal2008-03-30T00:42:24Z<p>Pombredanne.nexb.com: </p>
<hr />
<div>= THIS IS A DRAFT, WORK IN PROGRESS PROPOSAL, NOT AN ACTUAL OFFICIAL ECLIPSE PROJECT PROPOSAL YET =<br />
<br />
= Introduction =<br />
<br />
The EGIT project is a proposed open source project under the Eclipse Technology Project.<br />
<br />
According to the [http://www.eclipse.org/projects/dev_process/ Eclipse Development Process], this proposal is intended to declare the intent and scope of the EGIT project as well as to gather input from the Eclipse community. You are invited to comment on and/or join the project. Please send all feedback to the http://www.eclipse.org/newsportal/thread.php?group=eclipse.technology.egit newsgroup.<br />
<br />
= Background =<br />
Here we need to put some quick intro on the value of a DVCS, and present a bit the field.<br />
I am sure Shawn has some good slides on tat, he had made a presnetation @ the GSOC mentor summit that we could extract some bits from.<br />
<br />
Traditional source code version control systems .....<br />
<br />
<br />
The EGIT plugin is a Team provider for Git (a.k.a. &quot;Stupid Content Tracker&quot;, http://git.or.cz).<br />
<br />
Git is the version control system originally developed for the Linux kernel by Linus Torvalds, and is now a general Software Configuration Management (SCM) and Distributed Version Control System (DVCS) used by many other projects, both for open source and commercial development. Git is a fast distributed SCM, which means every developer has a full copy of all history of every revision of the code making queries against the history very fast and versatile. The storage model also means most operations are ten to a hundred times faster than with traditional centralized SCMs such as CVS or Subversion. The integrity of the code is protected through the use of secure hashes of content and history, plus optional GPG(PGP)-signing of tags.<br />
<br />
<br />
= Project Goal =<br />
<br />
The goal is to implement a Team provider for the Git SCM for eclipse.<br />
<br />
= Project Scope =<br />
<br />
The project will implement a significant amount of functionality of Git in Java for use with primarily Eclipse, although the intention is that core functionality shall be usable outside the Eclipse platform. The limit to what can be implemented in Java is to be discovered. Core functionality is already implemented so we think that most if not all can be implemented in Java without significant performance loss.<br />
<br />
Performance is a big deal with git. It affects what can be done by being so much faster. Things that couldn't be done because of time constraints are now possible. These things like very fast checkouts, branching, branch switching, merging, tagging, software archeology and synchronization. Merge speed is probably the most important feature.<br />
<br />
The Git plugin shall be fully compatible with the native version so both can be used on the same checkout out repository.<br />
<br />
= Project description =<br />
<br />
The Git team provider will provide the ability to do all everyday task in a Git work flow from inside Eclipse.<br />
<br />
== Features ==<br />
* Initial project setup: The plugin will allow user to create new Git repositories.<br />
<br />
* Importing existing code: Existing local Git repositories as well as remote repository can be imported. Remote repositories are imported by `cloning' them resulting in a local copy.<br />
<br />
* Replicating repositories: It shall be possible to distribute local version to other repositories through &quot;push&quot; operations as well as patches distributed by electronic mail. Receiving content shall be possible by fetching content via the git protocol (raw, ssh and http based) and via e-mailed patches directly from mailboxes, file or clipboard. &quot;Bundles&quot; shall also be supported.<br />
<br />
* Quickdiff against any version shall be supported.<br />
<br />
* Comparing any versions shall be supported.<br />
<br />
* Producing git-format patches to the clipboard shall be supported.<br />
<br />
* Selective commit (using the Quickdiff markers) shall be supported<br />
<br />
* Merge shall be supported<br />
<br />
* Cherry picking shall be supported<br />
<br />
* Re-base of branches shall be supported. This includes splitting, reordering and squashing (alternate term not to be confused with the normal meaning of &quot;merge&quot; in SCM terminology).<br />
<br />
* Branch switching, committing, amending commits and reset shall be supported.<br />
<br />
* Partial checkouts (currently not a native Git feature) shall be possible.<br />
<br />
* Some form of synchronization with CVS. At least export to CVS, like git cvsexportcommit.<br />
<br />
== Perspectives ==<br />
A Git perspective will be provided for browsing repositories before importing Git projects.<br />
<br />
== Extension points ==<br />
Quickdiff must be enhanced to allow selective committing.<br />
<br />
== Views ==<br />
A history viewer with graphical presentation of history and access for compare editors.<br />
<br />
== Repository browser ==<br />
An explorer for examining Git repositories not connected to an eclipse project. Importing projects shall be possible from here.<br />
<br />
== Extensions to existing Eclipse Team functionality ==<br />
Team provider<br />
Resource decorators<br />
Quickdiff provider<br />
<br />
== CVS export ==<br />
Git commits shall be exportable to a CVS repository with the same structure. <br />
CVS import is a much harder problem where no perfect solution exists.<br />
<br />
= Initial Code contributions =<br />
The existing code base shall be re-licensed under the EPL (this has already been approved by current comitters).<br />
<br />
= Relation to other projects, dependencies =<br />
* Git - The SCM we want to provide an interface through. http://git.or.cz<br />
<br />
* Mylyn - Task based IDE. Git is very much about simplifying the delivery of well defined solutions to specific problems in an orderly fashion so it seems both projects have similar objectives. I have no idea about what git integration with Mylyn would look like for lack of Mylyn knowledge.<br />
<br />
add blurb on jGit <br />
<br />
SVN team provider<br />
<br />
Eclipse platform team support<br />
CVS support<br />
<br />
<br />
= Development plan =<br />
<br />
==Project Organization==<br />
=== Lead ===<br />
Shawn Pearce<br />
<br />
=== Initial Committers ===<br />
* Robin Rosenberg<br />
* Shawn Pearce<br />
* Philippe Ombredanne<br />
<br />
=== Milestones planning ===<br />
Some functionality already exists, but there is no real plan at the moment for lack of committed resources. A rough idea of prioritization is<br />
<br />
Already done:<br />
<br />
* Connect to/create repositories for exiting projects<br />
* Create branches<br />
* Commit<br />
* Quickdiff against current revision<br />
* Resources decorators for tracked and modified resources as well as repository state<br />
* Basic compare of revisions<br />
<br />
Underway:<br />
* Cloning and updating from remote repositories<br />
<br />
Future:<br />
* Bisecting<br />
* Partial commits (i.e. committing partial changes)<br />
* Comprehensive handling of different character encodings in filenames and comments.<br />
* CRLF handling (unless we consider it unneeded)<br />
* Bugfixes for existing code<br />
* Formatting code for patch submission through e-mail<br />
* Apply patch<br />
* Rename/Copy tracking in compare revisions<br />
* Blame (annotate)<br />
* Merge<br />
* Rebase<br />
* External repository browser<br />
* Repacking (this a really a core Git feature and the one that can be really hard or impossible to perform in Java).<br />
* Rename tracking is an on-demand feature in git. Git does not record such information, it discovers it from content. The tight data structures in git makes implementing this in real time possible, but could still be a challenge.</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=EGit/Proposal&diff=89640EGit/Proposal2008-03-30T00:29:30Z<p>Pombredanne.nexb.com: </p>
<hr />
<div>= THIS IS A DRAFT, WORK IN PROGRESS PROPOSAL, NOT AN ACTUAL OFFICIAL ECLIPSE PROJECT PROPOSAL YET =<br />
<br />
= Introduction =<br />
<br />
The EGIT project is a proposed open source project under the Eclipse Technology Project.<br />
<br />
According to the [http://www.eclipse.org/projects/dev_process/ Eclipse Development Process], this proposal is intended to declare the intent and scope of the EGIT project as well as to gather input from the Eclipse community. You are invited to comment on and/or join the project. Please send all feedback to the http://www.eclipse.org/newsportal/thread.php?group=eclipse.technology.egit newsgroup.<br />
<br />
= Background =<br />
The EGIT plugin is a Team provider for Git (a.k.a. &quot;Stupid Content Tracker&quot;, http://git.or.cz).<br />
<br />
Git is the version control system originally developed for the Linux kernel by Linus Torvalds, and is now a general Software Configuration Management (SCM) and Distributed Version Control System (DVCS) used by many other projects, both for open source and commercial development. Git is a fast distributed SCM, which means every developer has a full copy of all history of every revision of the code making queries against the history very fast and versatile. The storage model also means most operations are ten to a hundred times faster than with traditional centralized SCMs such as CVS or Subversion. The integrity of the code is protected through the use of secure hashes of content and history, plus optional GPG(PGP)-signing of tags.<br />
<br />
<br />
= Project Goal =<br />
<br />
The goal is to implement a Team provider for the Git SCM for eclipse.<br />
<br />
= Project Scope =<br />
<br />
The project will implement a significant amount of functionality of Git in Java for use with primarily Eclipse, although the intention is that core functionality shall be usable outside the Eclipse platform. The limit to what can be implemented in Java is to be discovered. Core functionality is already implemented so we think that most if not all can be implemented in Java without significant performance loss.<br />
<br />
Performance is a big deal with git. It affects what can be done by being so much faster. Things that couldn't be done because of time constraints are now possible. These things like very fast checkouts, branching, branch switching, merging, tagging, software archeology and synchronization. Merge speed is probably the most important feature.<br />
<br />
The Git plugin shall be fully compatible with the native version so both can be used on the same checkout out repository.<br />
<br />
= Project description =<br />
<br />
The Git team provider will provide the ability to do all everyday task in a Git work flow from inside Eclipse.<br />
<br />
== Features ==<br />
* Initial project setup: The plugin will allow user to create new Git repositories.<br />
<br />
* Importing existing code: Existing local Git repositories as well as remote repository can be imported. Remote repositories are imported by `cloning' them resulting in a local copy.<br />
<br />
* Replicating repositories: It shall be possible to distribute local version to other repositories through &quot;push&quot; operations as well as patches distributed by electronic mail. Receiving content shall be possible by fetching content via the git protocol (raw, ssh and http based) and via e-mailed patches directly from mailboxes, file or clipboard. &quot;Bundles&quot; shall also be supported.<br />
<br />
* Quickdiff against any version shall be supported.<br />
<br />
* Comparing any versions shall be supported.<br />
<br />
* Producing git-format patches to the clipboard shall be supported.<br />
<br />
* Selective commit (using the Quickdiff markers) shall be supported<br />
<br />
* Merge shall be supported<br />
<br />
* Cherry picking shall be supported<br />
<br />
* Re-base of branches shall be supported. This includes splitting, reordering and squashing (alternate term not to be confused with the normal meaning of &quot;merge&quot; in SCM terminology).<br />
<br />
* Branch switching, committing, amending commits and reset shall be supported.<br />
<br />
* Partial checkouts (currently not a native Git feature) shall be possible.<br />
<br />
* Some form of synchronization with CVS. At least export to CVS, like git cvsexportcommit.<br />
<br />
== Perspectives ==<br />
A Git perspective will be provided for browsing repositories before importing Git projects.<br />
<br />
== Extension points ==<br />
Quickdiff must be enhanced to allow selective committing.<br />
<br />
== Views ==<br />
A history viewer with graphical presentation of history and access for compare editors.<br />
<br />
== Repository browser ==<br />
An explorer for examining Git repositories not connected to an eclipse project. Importing projects shall be possible from here.<br />
<br />
== Extensions to existing Eclipse Team functionality ==<br />
Team provider<br />
Resource decorators<br />
Quickdiff provider<br />
<br />
== CVS export ==<br />
Git commits shall be exportable to a CVS repository with the same structure. <br />
CVS import is a much harder problem where no perfect solution exists.<br />
<br />
= Initial Code contributions =<br />
The existing code base shall be re-licensed under the EPL (this has already been approved by current comitters).<br />
<br />
= Relation to other projects, dependencies =<br />
* Git - The SCM we want to provide an interface through. http://git.or.cz<br />
<br />
* Mylyn - Task based IDE. Git is very much about simplifying the delivery of well defined solutions to specific problems in an orderly fashion so it seems both projects have similar objectives. I have no idea about what git integration with Mylyn would look like for lack of Mylyn knowledge.<br />
<br />
add blurb on jGit <br />
<br />
SVN team provider<br />
<br />
Eclipse platform team support<br />
CVS support<br />
<br />
<br />
= Development plan =<br />
<br />
==Project Organization==<br />
=== Lead ===<br />
Shawn Pearce<br />
<br />
=== Initial Committers ===<br />
* Robin Rosenberg<br />
* Shawn Pearce<br />
* Philippe Ombredanne<br />
<br />
=== Milestones planning ===<br />
Some functionality already exists, but there is no real plan at the moment for lack of committed resources. A rough idea of prioritization is<br />
<br />
Already done:<br />
<br />
* Connect to/create repositories for exiting projects<br />
* Create branches<br />
* Commit<br />
* Quickdiff against current revision<br />
* Resources decorators for tracked and modified resources as well as repository state<br />
* Basic compare of revisions<br />
<br />
Underway:<br />
* Cloning and updating from remote repositories<br />
<br />
Future:<br />
* Bisecting<br />
* Partial commits (i.e. committing partial changes)<br />
* Comprehensive handling of different character encodings in filenames and comments.<br />
* CRLF handling (unless we consider it unneeded)<br />
* Bugfixes for existing code<br />
* Formatting code for patch submission through e-mail<br />
* Apply patch<br />
* Rename/Copy tracking in compare revisions<br />
* Blame (annotate)<br />
* Merge<br />
* Rebase<br />
* External repository browser<br />
* Repacking (this a really a core Git feature and the one that can be really hard or impossible to perform in Java).<br />
* Rename tracking is an on-demand feature in git. Git does not record such information, it discovers it from content. The tight data structures in git makes implementing this in real time possible, but could still be a challenge.</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=EGit/Proposal&diff=89639EGit/Proposal2008-03-30T00:29:00Z<p>Pombredanne.nexb.com: </p>
<hr />
<div>= THIS IS A DRAFT, WORK IN PROGRESS PROPOSAL, NOT AN ACTUAL PROJECT PRPOSAL YET =<br />
<br />
= Introduction =<br />
<br />
The EGIT project is a proposed open source project under the Eclipse Technology Project.<br />
<br />
According to the [http://www.eclipse.org/projects/dev_process/ Eclipse Development Process], this proposal is intended to declare the intent and scope of the EGIT project as well as to gather input from the Eclipse community. You are invited to comment on and/or join the project. Please send all feedback to the http://www.eclipse.org/newsportal/thread.php?group=eclipse.technology.egit newsgroup.<br />
<br />
= Background =<br />
The EGIT plugin is a Team provider for Git (a.k.a. &quot;Stupid Content Tracker&quot;, http://git.or.cz).<br />
<br />
Git is the version control system originally developed for the Linux kernel by Linus Torvalds, and is now a general Software Configuration Management (SCM) and Distributed Version Control System (DVCS) used by many other projects, both for open source and commercial development. Git is a fast distributed SCM, which means every developer has a full copy of all history of every revision of the code making queries against the history very fast and versatile. The storage model also means most operations are ten to a hundred times faster than with traditional centralized SCMs such as CVS or Subversion. The integrity of the code is protected through the use of secure hashes of content and history, plus optional GPG(PGP)-signing of tags.<br />
<br />
<br />
= Project Goal =<br />
<br />
The goal is to implement a Team provider for the Git SCM for eclipse.<br />
<br />
= Project Scope =<br />
<br />
The project will implement a significant amount of functionality of Git in Java for use with primarily Eclipse, although the intention is that core functionality shall be usable outside the Eclipse platform. The limit to what can be implemented in Java is to be discovered. Core functionality is already implemented so we think that most if not all can be implemented in Java without significant performance loss.<br />
<br />
Performance is a big deal with git. It affects what can be done by being so much faster. Things that couldn't be done because of time constraints are now possible. These things like very fast checkouts, branching, branch switching, merging, tagging, software archeology and synchronization. Merge speed is probably the most important feature.<br />
<br />
The Git plugin shall be fully compatible with the native version so both can be used on the same checkout out repository.<br />
<br />
= Project description =<br />
<br />
The Git team provider will provide the ability to do all everyday task in a Git work flow from inside Eclipse.<br />
<br />
== Features ==<br />
* Initial project setup: The plugin will allow user to create new Git repositories.<br />
<br />
* Importing existing code: Existing local Git repositories as well as remote repository can be imported. Remote repositories are imported by `cloning' them resulting in a local copy.<br />
<br />
* Replicating repositories: It shall be possible to distribute local version to other repositories through &quot;push&quot; operations as well as patches distributed by electronic mail. Receiving content shall be possible by fetching content via the git protocol (raw, ssh and http based) and via e-mailed patches directly from mailboxes, file or clipboard. &quot;Bundles&quot; shall also be supported.<br />
<br />
* Quickdiff against any version shall be supported.<br />
<br />
* Comparing any versions shall be supported.<br />
<br />
* Producing git-format patches to the clipboard shall be supported.<br />
<br />
* Selective commit (using the Quickdiff markers) shall be supported<br />
<br />
* Merge shall be supported<br />
<br />
* Cherry picking shall be supported<br />
<br />
* Re-base of branches shall be supported. This includes splitting, reordering and squashing (alternate term not to be confused with the normal meaning of &quot;merge&quot; in SCM terminology).<br />
<br />
* Branch switching, committing, amending commits and reset shall be supported.<br />
<br />
* Partial checkouts (currently not a native Git feature) shall be possible.<br />
<br />
* Some form of synchronization with CVS. At least export to CVS, like git cvsexportcommit.<br />
<br />
== Perspectives ==<br />
A Git perspective will be provided for browsing repositories before importing Git projects.<br />
<br />
== Extension points ==<br />
Quickdiff must be enhanced to allow selective committing.<br />
<br />
== Views ==<br />
A history viewer with graphical presentation of history and access for compare editors.<br />
<br />
== Repository browser ==<br />
An explorer for examining Git repositories not connected to an eclipse project. Importing projects shall be possible from here.<br />
<br />
== Extensions to existing Eclipse Team functionality ==<br />
Team provider<br />
Resource decorators<br />
Quickdiff provider<br />
<br />
== CVS export ==<br />
Git commits shall be exportable to a CVS repository with the same structure. <br />
CVS import is a much harder problem where no perfect solution exists.<br />
<br />
= Initial Code contributions =<br />
The existing code base shall be re-licensed under the EPL (this has already been approved by current comitters).<br />
<br />
= Relation to other projects, dependencies =<br />
* Git - The SCM we want to provide an interface through. http://git.or.cz<br />
<br />
* Mylyn - Task based IDE. Git is very much about simplifying the delivery of well defined solutions to specific problems in an orderly fashion so it seems both projects have similar objectives. I have no idea about what git integration with Mylyn would look like for lack of Mylyn knowledge.<br />
<br />
add blurb on jGit <br />
<br />
SVN team provider<br />
<br />
Eclipse platform team support<br />
CVS support<br />
<br />
<br />
= Development plan =<br />
<br />
==Project Organization==<br />
=== Lead ===<br />
Shawn Pearce<br />
<br />
=== Initial Committers ===<br />
* Robin Rosenberg<br />
* Shawn Pearce<br />
* Philippe Ombredanne<br />
<br />
=== Milestones planning ===<br />
Some functionality already exists, but there is no real plan at the moment for lack of committed resources. A rough idea of prioritization is<br />
<br />
Already done:<br />
<br />
* Connect to/create repositories for exiting projects<br />
* Create branches<br />
* Commit<br />
* Quickdiff against current revision<br />
* Resources decorators for tracked and modified resources as well as repository state<br />
* Basic compare of revisions<br />
<br />
Underway:<br />
* Cloning and updating from remote repositories<br />
<br />
Future:<br />
* Bisecting<br />
* Partial commits (i.e. committing partial changes)<br />
* Comprehensive handling of different character encodings in filenames and comments.<br />
* CRLF handling (unless we consider it unneeded)<br />
* Bugfixes for existing code<br />
* Formatting code for patch submission through e-mail<br />
* Apply patch<br />
* Rename/Copy tracking in compare revisions<br />
* Blame (annotate)<br />
* Merge<br />
* Rebase<br />
* External repository browser<br />
* Repacking (this a really a core Git feature and the one that can be really hard or impossible to perform in Java).<br />
* Rename tracking is an on-demand feature in git. Git does not record such information, it discovers it from content. The tight data structures in git makes implementing this in real time possible, but could still be a challenge.</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=EGit/Proposal&diff=89638EGit/Proposal2008-03-30T00:24:21Z<p>Pombredanne.nexb.com: </p>
<hr />
<div>= THIS IS A DRAFT, WORK IN PROGRESS PROPOSAL, NOT AN ACTUAL PROJECT PRPOSAL YET =<br />
<br />
= Introduction =<br />
<br />
The EGIT project is a proposed open source project under the Eclipse Technology Project.<br />
<br />
According to the [http://www.eclipse.org/projects/dev_process/ Eclipse Development Process], this proposal is intended to declare the intent and scope of the EGIT project as well as to gather input from the Eclipse community. You are invited to comment on and/or join the project. Please send all feedback to the http://www.eclipse.org/newsportal/thread.php?group=eclipse.technology.egit newsgroup.<br />
<br />
=Background =<br />
The EGIT plugin is a Team provider for Git (a.k.a. &quot;Stupid Content Tracker&quot;, http://git.or.cz).<br />
<br />
Git is the version control system originally developed for the Linux kernel by Linus Torvalds, and is now a general Software Configuration Management (SCM) and Distributed Version Control System (DVCS) used by many other projects, both for open source and commercial development. Git is a fast distributed SCM, which means every developer has a full copy of all history of every revision of the code making queries against the history very fast and versatile. The storage model also means most operations are ten to a hundred times faster than with traditional centralized SCMs such as CVS or Subversion. The integrity of the code is protected through the use of secure hashes of content and history, plus optional GPG(PGP)-signing of tags.<br />
<br />
<br />
== Project Goal ==<br />
<br />
The goal is to implement a Team provider for the Git SCM for eclipse.<br />
<br />
== Project Scope ==<br />
<br />
The project will implement a significant amount of functionality of Git in Java for use with primarily Eclipse, although the intention is that core functionality shall be usable outside the Eclipse platform. The limit to what can be implemented in Java is to be discovered. Core functionality is already implemented so we think that most if not all can be implemented in Java without significant performance loss.<br />
<br />
Performance is a big deal with git. It affects what can be done by being so much faster. Things that couldn't be done because of time constraints are now possible. These things like very fast checkouts, branching, branch switching, merging, tagging, software archeology and synchronization. Merge speed is probably the most important feature.<br />
<br />
The Git plugin shall be fully compatible with the native version so both can be used on the same checkout out repository.<br />
<br />
== Project description ==<br />
<br />
The Git team provider will provide the ability to do all everyday task in a Git work flow from inside Eclipse.<br />
<br />
* Initial project setup: The plugin will allow user to create new Git repositories.<br />
<br />
* Importing existing code: Existing local Git repositories as well as remote repository can be imported. Remote repositories are imported by `cloning' them resulting in a local copy.<br />
<br />
* Replicating repositories: It shall be possible to distribute local version to other repositories through &quot;push&quot; operations as well as patches distributed by electronic mail. Receiving content shall be possible by fetching content via the git protocol (raw, ssh and http based) and via e-mailed patches directly from mailboxes, file or clipboard. &quot;Bundles&quot; shall also be supported.<br />
<br />
* Quickdiff against any version shall be supported.<br />
<br />
* Comparing any versions shall be supported.<br />
<br />
* Producing git-format patches to the clipboard shall be supported.<br />
<br />
* Selective commit (using the Quickdiff markers) shall be supported<br />
<br />
* Merge shall be supported<br />
<br />
* Cherry picking shall be supported<br />
<br />
* Re-base of branches shall be supported. This includes splitting, reordering and squashing (alternate term not to be confused with the normal meaning of &quot;merge&quot; in SCM terminology).<br />
<br />
* Branch switching, committing, amending commits and reset shall be supported.<br />
<br />
* Partial checkouts (currently not a native Git feature) shall be possible.<br />
<br />
* Some form of synchronization with CVS. At least export to CVS, like git cvsexportcommit.<br />
<br />
=== Perspectives ===<br />
A Git perspective will be provided for browsing repositories before importing Git projects.<br />
<br />
=== Extension points ===<br />
Quickdiff must be enhanced to allow selective committing.<br />
<br />
=== Views ===<br />
A history viewer with graphical presentation of history and access for compare editors.<br />
<br />
=== Repository browser ===<br />
An explorer for examining Git repositories not connected to an eclipse project. Importing projects shall be possible from here.<br />
<br />
=== Extensions to existing functionality ===<br />
Team provider<br />
Resource decorators<br />
Quickdiff provider<br />
<br />
=== CVS export ===<br />
Git commits shall be exportable to a CVS repository with the same structure. <br />
CVS import is a much harder problem where no perfect solution exists.<br />
<br />
== Code contributions ==<br />
The existing code base shall be re-licensed under the EPL (this has already been approved by current comitters).<br />
<br />
== Development plan ==<br />
<br />
=== Project Lead ===<br />
Shawn Pearce<br />
<br />
=== Potential Committers ===<br />
* Robin Rosenberg<br />
* Shawn Pearce<br />
* Philippe Ombredanne<br />
<br />
=== Milestones ===<br />
Some functionality already exists, but there is no real plan at the moment for lack of committed resources. A rough idea of prioritization is<br />
<br />
Already done:<br />
<br />
* Connect to/create repositories for exiting projects<br />
* Create branches<br />
* Commit<br />
* Quickdiff against current revision<br />
* Resources decorators for tracked and modified resources as well as repository state<br />
* Basic compare of revisions<br />
<br />
Underway:<br />
* Cloning and updating from remote repositories<br />
<br />
Future:<br />
* Bisecting<br />
* Partial commits (i.e. committing partial changes)<br />
* Comprehensive handling of different character encodings in filenames and comments.<br />
* CRLF handling (unless we consider it unneeded)<br />
* Bugfixes for existing code<br />
* Formatting code for patch submission through e-mail<br />
* Apply patch<br />
* Rename/Copy tracking in compare revisions<br />
* Blame (annotate)<br />
* Merge<br />
* Rebase<br />
* External repository browser<br />
* Repacking (this a really a core Git feature and the one that can be really hard or impossible to perform in Java).<br />
* Rename tracking is an on-demand feature in git. Git does not record such information, it discovers it from content. The tight data structures in git makes implementing this in real time possible, but could still be a challenge.<br />
<br />
== References ==<br />
<br />
* Git - The SCM we want to provide an interface through. http://git.or.cz<br />
<br />
* Mylyn - Task based IDE. Git is very much about simplifying the delivery of well defined solutions to specific problems in an orderly fashion so it seems both projects have similar objectives. I have no idea about what git integration with Mylyn would look like for lack of Mylyn knowledge.</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=EGit/Proposal&diff=89637EGit/Proposal2008-03-30T00:23:17Z<p>Pombredanne.nexb.com: /* Introduction */</p>
<hr />
<div>== Introduction ==<br />
<br />
The EGIT project is a proposed open source project under the Eclipse Technology Project.<br />
<br />
According to the [http://www.eclipse.org/projects/dev_process/ Eclipse Development Process], this proposal is intended to declare the intent and scope of the EGIT project as well as to gather input from the Eclipse community. You are invited to comment on and/or join the project. Please send all feedback to the http://www.eclipse.org/newsportal/thread.php?group=eclipse.technology.egit newsgroup.<br />
<br />
== Project Goal ==<br />
<br />
The goal is to implement a Team provider for the Git SCM for eclipse.<br />
<br />
== Project Scope ==<br />
<br />
The project will implement a significant amount of functionality of Git in Java for use with primarily Eclipse, although the intention is that core functionality shall be usable outside the Eclipse platform. The limit to what can be implemented in Java is to be discovered. Core functionality is already implemented so we think that most if not all can be implemented in Java without significant performance loss.<br />
<br />
Performance is a big deal with git. It affects what can be done by being so much faster. Things that couldn't be done because of time constraints are now possible. These things like very fast checkouts, branching, branch switching, merging, tagging, software archeology and synchronization. Merge speed is probably the most important feature.<br />
<br />
The Git plugin shall be fully compatible with the native version so both can be used on the same checkout out repository.<br />
<br />
== Project description ==<br />
<br />
The Git team provider will provide the ability to do all everyday task in a Git work flow from inside Eclipse.<br />
<br />
* Initial project setup: The plugin will allow user to create new Git repositories.<br />
<br />
* Importing existing code: Existing local Git repositories as well as remote repository can be imported. Remote repositories are imported by `cloning' them resulting in a local copy.<br />
<br />
* Replicating repositories: It shall be possible to distribute local version to other repositories through &quot;push&quot; operations as well as patches distributed by electronic mail. Receiving content shall be possible by fetching content via the git protocol (raw, ssh and http based) and via e-mailed patches directly from mailboxes, file or clipboard. &quot;Bundles&quot; shall also be supported.<br />
<br />
* Quickdiff against any version shall be supported.<br />
<br />
* Comparing any versions shall be supported.<br />
<br />
* Producing git-format patches to the clipboard shall be supported.<br />
<br />
* Selective commit (using the Quickdiff markers) shall be supported<br />
<br />
* Merge shall be supported<br />
<br />
* Cherry picking shall be supported<br />
<br />
* Re-base of branches shall be supported. This includes splitting, reordering and squashing (alternate term not to be confused with the normal meaning of &quot;merge&quot; in SCM terminology).<br />
<br />
* Branch switching, committing, amending commits and reset shall be supported.<br />
<br />
* Partial checkouts (currently not a native Git feature) shall be possible.<br />
<br />
* Some form of synchronization with CVS. At least export to CVS, like git cvsexportcommit.<br />
<br />
=== Perspectives ===<br />
A Git perspective will be provided for browsing repositories before importing Git projects.<br />
<br />
=== Extension points ===<br />
Quickdiff must be enhanced to allow selective committing.<br />
<br />
=== Views ===<br />
A history viewer with graphical presentation of history and access for compare editors.<br />
<br />
=== Repository browser ===<br />
An explorer for examining Git repositories not connected to an eclipse project. Importing projects shall be possible from here.<br />
<br />
=== Extensions to existing functionality ===<br />
Team provider<br />
Resource decorators<br />
Quickdiff provider<br />
<br />
=== CVS export ===<br />
Git commits shall be exportable to a CVS repository with the same structure. <br />
CVS import is a much harder problem where no perfect solution exists.<br />
<br />
== Code contributions ==<br />
The existing code base shall be re-licensed under the EPL (this has already been approved by current comitters).<br />
<br />
== Development plan ==<br />
<br />
=== Project Lead ===<br />
Shawn Pearce<br />
<br />
=== Potential Committers ===<br />
* Robin Rosenberg<br />
* Shawn Pearce<br />
* Philippe Ombredanne<br />
<br />
=== Milestones ===<br />
Some functionality already exists, but there is no real plan at the moment for lack of committed resources. A rough idea of prioritization is<br />
<br />
Already done:<br />
<br />
* Connect to/create repositories for exiting projects<br />
* Create branches<br />
* Commit<br />
* Quickdiff against current revision<br />
* Resources decorators for tracked and modified resources as well as repository state<br />
* Basic compare of revisions<br />
<br />
Underway:<br />
* Cloning and updating from remote repositories<br />
<br />
Future:<br />
* Bisecting<br />
* Partial commits (i.e. committing partial changes)<br />
* Comprehensive handling of different character encodings in filenames and comments.<br />
* CRLF handling (unless we consider it unneeded)<br />
* Bugfixes for existing code<br />
* Formatting code for patch submission through e-mail<br />
* Apply patch<br />
* Rename/Copy tracking in compare revisions<br />
* Blame (annotate)<br />
* Merge<br />
* Rebase<br />
* External repository browser<br />
* Repacking (this a really a core Git feature and the one that can be really hard or impossible to perform in Java).<br />
* Rename tracking is an on-demand feature in git. Git does not record such information, it discovers it from content. The tight data structures in git makes implementing this in real time possible, but could still be a challenge.<br />
<br />
== References ==<br />
<br />
* Git - The SCM we want to provide an interface through. http://git.or.cz<br />
<br />
* Mylyn - Task based IDE. Git is very much about simplifying the delivery of well defined solutions to specific problems in an orderly fashion so it seems both projects have similar objectives. I have no idea about what git integration with Mylyn would look like for lack of Mylyn knowledge.</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=EGit/Proposal&diff=89636EGit/Proposal2008-03-30T00:13:24Z<p>Pombredanne.nexb.com: Initial work in progress for the Egit project proposal</p>
<hr />
<div>== Introduction ==<br />
<br />
<br />
The EGIT plugin is a Team provider for Git (a.k.a. &quot;Stupid Content Tracker&quot;, http://git.or.cz).<br />
<br />
Git is the version control system originally developed for the Linux kernel by Linus Torvalds, and is now a general Software Configuration Management (SCM) and Distributed Version Control System (DVCS) used by many other projects, both for open source and commercial development. Git is a fast distributed SCM, which means every developer has a full copy of all history of every revision of the code making queries against the history very fast and versatile. The storage model also means most operations are ten to a hundred times faster than with traditional centralized SCMs such as CVS or Subversion. The integrity of the code is protected through the use of secure hashes of content and history, plus optional GPG(PGP)-signing of tags.<br />
<br />
== Project Goal ==<br />
<br />
The goal is to implement a Team provider for the Git SCM for eclipse.<br />
<br />
== Project Scope ==<br />
<br />
The project will implement a significant amount of functionality of Git in Java for use with primarily Eclipse, although the intention is that core functionality shall be usable outside the Eclipse platform. The limit to what can be implemented in Java is to be discovered. Core functionality is already implemented so we think that most if not all can be implemented in Java without significant performance loss.<br />
<br />
Performance is a big deal with git. It affects what can be done by being so much faster. Things that couldn't be done because of time constraints are now possible. These things like very fast checkouts, branching, branch switching, merging, tagging, software archeology and synchronization. Merge speed is probably the most important feature.<br />
<br />
The Git plugin shall be fully compatible with the native version so both can be used on the same checkout out repository.<br />
<br />
== Project description ==<br />
<br />
The Git team provider will provide the ability to do all everyday task in a Git work flow from inside Eclipse.<br />
<br />
* Initial project setup: The plugin will allow user to create new Git repositories.<br />
<br />
* Importing existing code: Existing local Git repositories as well as remote repository can be imported. Remote repositories are imported by `cloning' them resulting in a local copy.<br />
<br />
* Replicating repositories: It shall be possible to distribute local version to other repositories through &quot;push&quot; operations as well as patches distributed by electronic mail. Receiving content shall be possible by fetching content via the git protocol (raw, ssh and http based) and via e-mailed patches directly from mailboxes, file or clipboard. &quot;Bundles&quot; shall also be supported.<br />
<br />
* Quickdiff against any version shall be supported.<br />
<br />
* Comparing any versions shall be supported.<br />
<br />
* Producing git-format patches to the clipboard shall be supported.<br />
<br />
* Selective commit (using the Quickdiff markers) shall be supported<br />
<br />
* Merge shall be supported<br />
<br />
* Cherry picking shall be supported<br />
<br />
* Re-base of branches shall be supported. This includes splitting, reordering and squashing (alternate term not to be confused with the normal meaning of &quot;merge&quot; in SCM terminology).<br />
<br />
* Branch switching, committing, amending commits and reset shall be supported.<br />
<br />
* Partial checkouts (currently not a native Git feature) shall be possible.<br />
<br />
* Some form of synchronization with CVS. At least export to CVS, like git cvsexportcommit.<br />
<br />
=== Perspectives ===<br />
A Git perspective will be provided for browsing repositories before importing Git projects.<br />
<br />
=== Extension points ===<br />
Quickdiff must be enhanced to allow selective committing.<br />
<br />
=== Views ===<br />
A history viewer with graphical presentation of history and access for compare editors.<br />
<br />
=== Repository browser ===<br />
An explorer for examining Git repositories not connected to an eclipse project. Importing projects shall be possible from here.<br />
<br />
=== Extensions to existing functionality ===<br />
Team provider<br />
Resource decorators<br />
Quickdiff provider<br />
<br />
=== CVS export ===<br />
Git commits shall be exportable to a CVS repository with the same structure. <br />
CVS import is a much harder problem where no perfect solution exists.<br />
<br />
== Code contributions ==<br />
The existing code base shall be re-licensed under the EPL (this has already been approved by current comitters).<br />
<br />
== Development plan ==<br />
<br />
=== Project Lead ===<br />
Shawn Pearce<br />
<br />
=== Potential Committers ===<br />
* Robin Rosenberg<br />
* Shawn Pearce<br />
* Philippe Ombredanne<br />
<br />
=== Milestones ===<br />
Some functionality already exists, but there is no real plan at the moment for lack of committed resources. A rough idea of prioritization is<br />
<br />
Already done:<br />
<br />
* Connect to/create repositories for exiting projects<br />
* Create branches<br />
* Commit<br />
* Quickdiff against current revision<br />
* Resources decorators for tracked and modified resources as well as repository state<br />
* Basic compare of revisions<br />
<br />
Underway:<br />
* Cloning and updating from remote repositories<br />
<br />
Future:<br />
* Bisecting<br />
* Partial commits (i.e. committing partial changes)<br />
* Comprehensive handling of different character encodings in filenames and comments.<br />
* CRLF handling (unless we consider it unneeded)<br />
* Bugfixes for existing code<br />
* Formatting code for patch submission through e-mail<br />
* Apply patch<br />
* Rename/Copy tracking in compare revisions<br />
* Blame (annotate)<br />
* Merge<br />
* Rebase<br />
* External repository browser<br />
* Repacking (this a really a core Git feature and the one that can be really hard or impossible to perform in Java).<br />
* Rename tracking is an on-demand feature in git. Git does not record such information, it discovers it from content. The tight data structures in git makes implementing this in real time possible, but could still be a challenge.<br />
<br />
== References ==<br />
<br />
* Git - The SCM we want to provide an interface through. http://git.or.cz<br />
<br />
* Mylyn - Task based IDE. Git is very much about simplifying the delivery of well defined solutions to specific problems in an orderly fashion so it seems both projects have similar objectives. I have no idea about what git integration with Mylyn would look like for lack of Mylyn knowledge.</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=Google_Summer_of_Code_2008_Ideas&diff=89591Google Summer of Code 2008 Ideas2008-03-29T03:37:09Z<p>Pombredanne.nexb.com: Adding some ATF ideas</p>
<hr />
<div>== Rules ==<br />
* Be creative<br />
* Be specific: what do you want to be implemented<br />
* If you are willing to mentors those ideas, add your name and email to the idea.<br />
* Ii is ok to have a project idea without parent project<br />
* If you're an interested student, add your name and email next to the idea. It is ok to have several students interested by one idea.<br />
<br />
== Ideas ==<br />
<br />
{| border=&quot;1&quot; cellpadding=&quot;2&quot; width=&quot;100%&quot;<br />
!width=&quot;20%&quot;|Title<br />
!width=&quot;5%&quot; align=&quot;center&quot;|Project<br />
!width=&quot;40%&quot;|Abstract - links to details/bugs/etc<br />
!width=&quot;10%&quot;|Reporter<br />
!width=&quot;10%&quot;|Possible mentor(s)<br />
!width=&quot;15%&quot;|Comments<br />
!width=&quot;10%&quot;|Potential students(s)<br />
|-<br />
| Support for user-defined refactorings in JDT<br />
| [http://www.eclipse.org/jdt JDT]<br />
| The idea is to produce a pattern language, rules engine, and user interface to allow the Java developer to perform queries n and make safe modifications of their code code. It's a superset of the current refactoring because ideally current refactorings could be expressed this new system, forming a nice set of initial examples. he users could then adapt those rules to their own purposes or come up with completely new ones. See {{bug|144642}} for more informations.<br />
| Ed Burnette<br />
| Martin Aeschlimann(?)<br />
| <br />
|<br />
|-<br />
| Continuous JUnit integration<br />
| [http://www.eclipse.org/jdt JDT]<br />
| Running a specific set of JUnit sets in the background while editing Java source code would help to detect defects early. The concept is to provide unobstrusive early detection and reporting of changes to source code that negatively affect its agreed upon functionality. Detecting failing tests would mark the changed source code with annotations to see which changes affected the green bar. There are already some (forgotten) bugs: {{bug|12167}} and {{bug|51292}}.<br />
| Benjamin Muskalla<br />
| [mailto:ContinuousJUnitGSoC08@lemmster.de Markus Kuppe] <br />
| [http://groups.csail.mit.edu/pag/continuoustesting/ PAG]<br />
| Sam Ryan, Victoria University Wellington New Zealand. Andrew Murray, Queen's University<br />
|-<br />
| toString generation<br />
| [http://www.eclipse.org/jdt JDT]<br />
| Like the setter/getter, equals and hashcode generator, it would be nice to have a little helper to generate toString methods. See bug {{bug|26070}} and take a look at [http://code.google.com/p/generate-tostring/wiki/Features this plugin] for some ideas. <br />
| Benjamin Muskalla<br />
| [mailto:toStringGSoC08@lemmster.de Markus Kuppe]<br />
| [http://eclipse-jutils.sourceforge.net/ JUtils]<br />
| Michelangelo De Simone, University of Salerno - Italy. Michael Diamond, Dartmouth College. Sam Ryan, Victoria University Wellington New Zealand. Andrew Murray, Queen's University<br />
|-<br />
| JDT and Google Code Search service <br />
| [http://www.eclipse.org/jdt JDT]<br />
| JDT and Google Code Search service integration: a)During debug under JDT source code are often unavailable. Google Code Search Source Provider should provide source code for corresponding class. b)Integrate common JDT search possibilities (for example &quot;Search\References&quot;) with Google Code Search Service (Search not under local projects but in Web too).<br />
| Andrey Vakunov<br />
| <br />
|<br />
| Michelangelo De Simone, University of Salerno - Italy. Andrey Vakunov, Grodno State University<br />
|-<br />
| JDT Debugger Extensibility<br />
| [http://www.eclipse.org/eclipse/debug/jdt/ JDT Debug]<br />
| The JDT debugger provides debugging services and works with any JDPA-compliant JVM. The debugger has greatly matured over the years. Debugging facilities in general have not advanced much, however. Many in the research community would like to extend the capabilities of the JDT debugger without losing (or re-writing) existing functionality. Doing so often requires customizing how the JDT debugger makes use of the Java Debug Interface (JDI). This project would open up the JDI portion of the debugger in such a way that extensibility can be accomplished in a safe manner.<br />
| Jeffrey Czyz<br />
| <br />
| <br />
| Jeffrey Czyz, University at Buffalo<br />
|-<br />
| Implement a search mechanism for BPMN diagrams<br />
| [[STP/BPMN_Component|BPMN]]<br />
| Research indexing of domain specific models persisted in an XML format. Apply this research to indexing and searching BPMN diagrams.<br />
| Antoine Toulme<br />
| [mailto:antoine@lunar-ocean.com Antoine Toulme], [mailto:hmalphettes@intalio.com Hugues Malphettes]<br />
|<br />
|<br />
|-<br />
| Improve the usability of the BPMN editor<br />
| [[STP/BPMN_Component|BPMN]]<br />
| Gather feedback from users of the modeler. Select enhancements to support and develop them.<br />
| Antoine Toulme<br />
| [mailto:antoine@lunar-ocean.com Antoine Toulme], [mailto:hmalphettes@intalio.com Hugues Malphettes]<br />
|<br />
|<br />
|-<br />
| BPMN/BPEL to SCA model transformations for STP<br />
| [http://www.eclipse.org/stp/ STP]<br />
| This project will leverage and extend the existing STP Intermediate Model (STP-IM) in order to provide better support for transformations between process editors (BPMN and BPEL) and architecture editors (SCA in particular, potentially EID as well). The contribution would be of great importance to SOA developers and would therefore be an important incentive for the community adoption of the Eclipse STP. <br />
| Juan Cadavid<br />
| [mailto:adrian.mos@inria.fr Adrian Mos]<br />
|<br />
| Juan Cadavid, Universidad EAFIT, Medellín Colombia.<br />
|-<br />
| DITA or DocBook Help Content Producer<br />
| [http://www.eclipse.org/eclipse/platform-ua/main.html User Assistance]<br />
| Eclipse User Assistance allows for help content to be dynamically produced. Traditionally, all Eclipse content came in the form of hand-written HTML files. This is so 90's, we should have [http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/extension-points/org_eclipse_help_contentProducer.html help content producers] to produce help content from DITA or DocBook files.<br />
| Chris Aniszczyk, Chris Goldthorpe(?)<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:cgold@us.ibm.com Chris Goldthorpe], [mailto:d_a_carver@yahoo.com David Carver]<br />
| <br />
| Zhiyang Jiang,Chinese Academy of Sciences<br />
|-<br />
| GraphicsZilla<br />
| [http://www.eclipse.org/phoenix Phoenix]<br />
| Eclipse uses Bugzilla in many interesting ways. It uses it in the normal fashion for bug tracking. It also uses a modified version for IP tracking (IPZilla). This proposal is to create a GraphicsZilla to help streamline icon and graphics creation in Eclipse. This would allow not only programmers to contribute their talents to Eclipse. This would also make the process of where icons come from more transparent. See this [http://mea-bloga.blogspot.com/2007/01/graphicszilla-running-man.html blog post] and [https://bugs.eclipse.org/bugs/show_bug.cgi?id=170720 bug] for more info. Note, this would also provide a viewable repository of all the graphics used in Eclipse... which is currently lacking now.<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
|<br />
|-<br />
| Bundles in a Browser<br />
| [http://www.eclipse.org/equinox Equinox]<br />
| Eclipse runs pretty much everywhere these days... in cell phones... devices... desktops... servers... how about a web browser? This proposal is being left open-ended for a purpose. I'd like to see a student figure out how to get Eclipse plug-ins (bundles) installed into a browser like Firefox and then somehow expose working with them via some API... maybe XPCOM or Javascript. That's all ;p<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| PDE fetch script factory for SVN<br />
| [http://www.eclipse.org/pde/ pde]<br />
| So far Eclipse only support CVS in a map file build. Though there exists an SVN impl, it's not EPL<br />
| Markus Kuppe<br />
| If nobody from PDE: [mailto:fetchGSoC08@lemmster.de Markus Kuppe]<br />
| [http://wiki.eclipse.org/index.php/PDEBuild#Building_from_a_subversion_repository SVN impl]<br />
|<br />
|-<br />
| PDE Ménage à trois: Scala and Java<br />
| [http://www.eclipse.org/pde PDE]<br />
| There are some crazy people out there developing Eclipse plug-ins using languages other than Java (how dare they ;p!). Scala is one of these popular languages and there already has been [http://neilbartlett.name/blog/2007/06/13/eclipse-pde-does-scala/ some Eclipse integration] to make this happen. However, PDE suffers from limitations that strictly binds itself to Java... the goal of this project would be to analyze these PDE limitations... and come up with patches or prototyped code to let PDE play better with Scala and other languages.<br />
| Chris Aniszczyk, Neil Bartlett (?)<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Moises Osorio, Instituto Tecnologico de Culiacan, Culiacan Mexico. [mailto:wcoder.mx@gmail.com wcoder.mx@gmail.com]<br />
|-<br />
| Declarative Services (DS) Tooling<br />
| [http://www.eclipse.org/pde PDE]<br />
| Equinox finally has a stable implementation of the Declarative Services specification from OSGi. It's time to tool this beast. Any takers?<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Bartosz Michalik, Poznan University of Technology - Poland. Rafael Oliveira Nóbrega, Universidade Federal de Pernambuco - Brazil<br />
|-<br />
| PDE and JavaScript<br />
| [http://www.eclipse.org/pde PDE]<br />
| PDE allows you to create plug-ins using Java these days. This request is simply for a student to explore the realm of creating plug-ins using JavaScript or other languages. To start simple, I'd start with adding a new schema attribute of type &quot;javascript&quot; to allow plug-in authors to at least plug different languages in. From there, we can explore ideas on &quot;how would you define a view&quot; in such a way that you could take javascript or java code?<br />
| Chris Aniszczyk<br />
| Chris Aniszczyk<br />
| <br />
|<br />
|-<br />
| PDE and Equinox Transforms<br />
| [http://www.eclipse.org/pde PDE]<br />
| Equinox has a new component called transforms that allows you to transform various aspects of a plug-in during runtime. For example, a common use case is to write a transform that modifies some plugin.xml entries to not display certain menu items. This project aims to provide tooling for the transforms component so plugin authors can easily author transforms.<br />
| Chris Aniszczyk<br />
| Chris Aniszczyk<br />
| <br />
| Bartosz Michalik, Poznan University of Technology - Poland<br />
|-<br />
| XpandDoc documentation generator<br />
| [http://www.eclipse.org/modeling/m2t/?project=xpand#xpand M2T/Xpand]<br />
| Xpand is a template language which allows users to comment their templates with a JavaDoc-like syntax. So far, there is no tooling that can use this documentation. The goals of the project are to (1) create an engine that can parse Xpand template comments, (2) create a commandline tool that can generate a JavaDoc-like HTML output for all template comments in a project, and (3) enhance the Xpand text editor to show template comments in a tooltip when hovering over the respective template invocation.<br />
| Peter Friese<br />
| [mailto:peter.friese@itemis.de Peter Friese]<br />
| <br />
|<br />
|-<br />
| Refactorings for Xpand / Xtend / Check<br />
| [http://www.eclipse.org/modeling/m2t/?project=xpand#xpand M2T/Xpand]<br />
| Xpand, Xtend and Check are languages for writing code generators. As your code generator grows, you'll feel the desire to restructure your code generator templates. Currently, no refactoring support is available for Xpand / Xtend / Check. We're looking for a brave student willing to fill this void.<br />
| Peter Friese<br />
| [mailto:peter.friese@itemis.de Peter Friese]<br />
| <br />
|<br />
|-<br />
| Improving the TCP/IP Monitor Plugin <br />
| [http://www.eclipse.org/webtools/server/ WTP_Server_Tools]<br />
| The TCP/IP Monitor plugin available with the Eclipse WTP could use some improvement in several areas. A few suggestions are XML prettyfying, switchable layouts, persistable message logs, tabs for concurrent listeners, proxy mode, HTTP proxy support, simulation of slow connections, documentation and overall UI and usability improvement. IMHO, such additions, alongwith other requirements expressed by developers for this plugin, would make it more popular among the Eclipse Web developer community. <br />
| Suran Jayathilaka<br />
| <br />
| <br />
| Suran Jayathilaka, University Of Colombo School Of Computing - Sri lanka<br />
|-<br />
| Generic unit testing support<br />
| [http://www.eclipse.org/dltk DLTK]?<br />
| JUnit is well integrated at the moment used to test java code. As there are many other projects which need to implement other testing tools, we should be a generalized form of the Junit framework as provide some extension points to build the implementations of other XUnit frameworks on top of it. See {{bug|180884}} for more informations.<br />
| Benjamin Muskalla<br />
| <br />
| <br />
| <br />
|-<br />
| Web-CAT Eclipse plugin<br />
| [http://web-cat.cs.vt.edu/ Web-CAT]<br />
| Web-CAT is a plug-in-based web application that supports electronic submission and automated grading of programming assignments that is presently used by over 30 universities and colleges in the United States and elsewhere. The Web-CAT Grader supports traditional models of automated program grading, and also supports grading of assignments where students do their own testing. Web-CAT is already supported by an Eclipse plugin that allows students to view graders' comments on their assignments directly within the IDE. The aim of this project is to provide support for the graders as well, i.e., to allow professors, teaching assistants, and students to mark up code with comments, assign grades (both freeform and from rubrics), and so on. This will not only make grading easier, but will also help turn Eclipse into a student-friendly code review tool, which we hope will encourage wider use of code reviews in teaching.<br />
| Jason Montojo<br />
| [mailto:jmontojo@ca.ibm.com Jason Montojo], [mailto:gvwilson@cs.utoronto.ca Greg Wilson]<br />
| <br />
| Qi Yang, University of Toronto - Canada<br />
|-<br />
| Feature Diagram plugin<br />
| [https://stanley.cdf.toronto.edu/drproject/consulting-2008-01/featdiag Feature Diagram Prototype]<br />
| &quot;Feature diagrams&quot; are a graphical notation for describing the relationships between class elements that first appeared in Michael Feathers' book &quot;[http://www.amazon.com/Working-Effectively-Legacy-Robert-Martin/dp/0131177052 Working Effectively with Legacy Code]&quot;. A prototype plugin for Eclipse that automatically produces feature diagrams, and allows users to modify their layout, now exists. The aim of this project is to connect that plugin to Eclipse's Java refactorings to allow drag-and-drop manipulation of the visual representations of fields and methods.<br />
| Greg Wilson<br />
| [mailto:gvwilson@cs.utoronto.ca Greg Wilson]<br />
| <br />
|<br />
|-<br />
| XQuery Syntax Editor<br />
| [http://www.eclipse.org/webtools/incubator XSL Tooling / Web Tools Incubator]<br />
| Provide basic support for XQuery syntax editing. Including coloring, validation, content assistance, possibly provide extensions for allowing the selection of which xquery editors can be used for validation. Preference pages for controling XQuery specificat options for generating output. Possible future ability to include debugging support.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| <br />
| Buddhika Laknath, University of Moratuwa - Sri Lanka<br />
|-<br />
| Eclipse single instance<br />
| [http://www.eclipse.org/platform platform]<br />
| More and more applications are eclipse RCP based applications. This is great but each application launch a JVM and load in memory quite often the same plug-ins. Like xul runner for mozilla, it would be interesting to have an &quot;Eclipse runner&quot;. Issues to work on are how to manage several platforms (3.1, 3.2, 3.3, etc..) and share plug-ins (in memory). update : the problem seems to be adressed with p2 provided in eclipse 3.4 M6<br />
| Mariot Chauvin<br />
| Someone from platform project<br />
| <br />
|<br />
|-<br />
| BIRT JPA or JDO Connector<br />
| [http://www.eclipse.org/birt birt]<br />
| A data connector for BIRT Reports that allows BIRT to easily access data via JPA or JDO.<br />
| Markus Kuppe<br />
| The BIRT Project Team <br />
| In [http://wiki.eclipse.org/Google_Summer_of_Code_2007_Ideas GSoC '07] the BIRT team was willing to mentor<br />
|<br />
|-<br />
| BIRT Reports and Connectors for Ad Revenue<br />
| [http://www.eclipse.org/birt birt]<br />
| This one is very business focused -- provide connectors and reports that allow Google customers and users to build their own reports on their Google Ad Revenue etc.<br />
| Kevin Peters<br />
| The BIRT Project Team <br />
| In [http://wiki.eclipse.org/Google_Summer_of_Code_2007_Ideas GSoC '07] the BIRT team was willing to mentor<br />
| [mailto:kevjay@gmail.com Kevin Peters], University of Kansas<br />
|-<br />
| Barcode Support<br />
| [http://www.eclipse.org/birt birt]<br />
| See https://bugs.eclipse.org/bugs/show_bug.cgi?id=149928 for additional details.<br />
| Kevin Peters<br />
| The BIRT Project Team <br />
| <br />
| [mailto:kevjay@gmail.com Kevin Peters], University of Kansas<br />
|-<br />
| JET Transforms/Wizards for creating project meta <br />
| [[Modeling Project Releng|Modeling Releng]]? [[Nexus_Project|Nexus]]?<br />
| Starting a new project requires a lot of duplicative code &amp; metadata: .doc plugins/features, .examples plugins/features, .test examples/features, .sdk feature, .releng project. Being able to generate this from JET templates via a wizard would make it much easier to get a project up and running -- and then get a PDE build that much easier, too.<br />
| [[User:Nickb|Nick Boldt]] <br />
| [[User:Nickb|Nick Boldt]]<br />
| <br />
| Michael Robb, Mount Royal College<br />
|-<br />
| Rich text editing and wiki integration<br />
| [http://eclipse.org/mylyn Mylyn]<br />
| Provide wiki integration. This involves providing mechanisms for rich editing and viewing of task repository comments in wiki format, potentially adding wiki editing. see also [[Mylyn/Contribution_Ideas|More ideas for Mylyn projects]]<br />
| Steffen Pingel<br />
| Steffen Pingel<br />
| There are at least two projects already providing wiki editing in Eclipse, albeit without Mylyn integration: [http://www.matheclipse.org/en/Eclipse_Wikipedia_Editor Wikipedia Editor], [http://eclipsewiki.sourceforge.net/ Wiki Editor]. &lt;/[[User:nickb]]&gt;<br />
| Jingwen 'Owen' Ou, The University of British Columbia<br />
|-<br />
| Java based Abstract Syntax Tree (AST) generator for Ada Programs<br />
| [http://eclipse.org/hibachi Hibachi]<br />
| An Abstract Syntax Tree is the base framework for many powerful tools of a language IDE. For Hibachi, the Ada Development Toolkit project (like JDT or CDT), the presence of an AST would allow many more powerful IDE features, and improve those already in place (like refactoring, code folding, reformating).<br />
| Tom Grosman<br />
| Tom Grosman, Adam Haselhuhn<br />
| For a good idea about ASTs in Eclipse, see [http://www.eclipse.org/articles/article.php?file=Article-JavaCodeManipulation_AST/index.html JDT AST]<br />
|<br />
|-<br />
| Feature implementation for Ada Development Toolkit<br />
| [http://eclipse.org/hibachi Hibachi]<br />
| Implementation of new or extension of existing Hibachi funtionality. Depending on student interest and background, features may include but are not limited to code folding, Ada body generation, object tooltips display, dependency graphs and trees, code fixing, etc.<br />
| Tom Grosman<br />
| Tom Grosman, Adam Haselhuhn<br />
|<br />
|<br />
|-<br />
| XML+CSS = IFigure<br />
| [http://www.eclipse.org/gef/ GEF/Draw2d]<br />
| Adding possibility to generate draw2d figures from XML and CSS descriptors (for example HTML subset and CSS). <br />
| Andrey Vakunov<br />
| [mailto:anthonyh_at_ca.ibm.com Anthony Hunter]<br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| Equinox Console and script language integration<br />
| [http://www.eclipse.org/equinox/ Equinox]<br />
| Integrate any script language (Groovy or JRuby or Bash :-) ) in OSGi console. Add possibilities to write in OSGi console &quot;s grep &lt;my-service-name&gt;&quot;<br />
| Andrey Vakunov<br />
| <br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| Buddy list for task assignments and CCs<br />
| [http://www.eclipse.org/mylyn/ Mylyn]<br />
| Enhance Mylyn's Rich Client Bugzilla to have an address book for CC's<br />
| Jingwen 'Owen' Ou<br />
| <br />
| Normally people work on projects with similar teammates and it would be nice to use previous queries to propose CCs. Details in [https://bugs.eclipse.org/bugs/show_bug.cgi?id=152415 bug 152415]<br />
|<br />
|-<br />
| Enhanced Eclipse search<br />
| [http://www.eclipse.org/platform platform]<br />
| Eclipse search plugin: provide an enhanced Eclipse search: better, faster, more relevant. Think Lucene or opengrok inside Eclipse.<br />
| Philippe Ombredanne<br />
| [mailto:philippe.ombredanne_at_eclipse.org Philippe Ombredanne]<br />
| <br />
| Jeffrey Czyz, University at Buffalo. Çağatay Çallı, Middle East Technical University - Turkey. Suran Jayathilaka, University Of Colombo School Of Computing - Sri lanka<br />
|-<br />
| Eclipse-Moodle integration<br />
| <br />
| The idea of this project is to provide an Eclipse plugin for the Moodle CMS e-learning system. This tool will enable students participating in online courses to import and export resources (projects or other materials) directly from an Eclipse workspace. Integration with Mylyn (for managing tasks assigned in such courses) could be an additional feature. <br />
| Aleksandra Woźniak<br />
| <br />
| <br />
| Aleksandra Woźniak, Poznan University of Technology &amp; Adam Mickiewicz University - Poznan, Poland<br />
|-<br />
| Use case editor<br />
| [http://www.eclipse.org/proposals/ormf/ ORMF]?<br />
| Use case editor: for writing use cases in a textual form, managing sets of use cases and (maybe) generating UML diagrams as well as html and pdf files from them. <br />
| Aleksandra Woźniak<br />
| <br />
| <br />
| Aleksandra Woźniak, Poznan University of Technology &amp; Adam Mickiewicz University - Poznan, Poland<br />
|-<br />
| Augment p2 dependencies<br />
| [http://wiki.eclipse.org/Equinox_p2 p2]<br />
| In its first release, p2 limited its expression of dependencies to something equivalent to what most other package management system proposed (A package can say that it requires or conflicts with others). However several provisioning scenarios could benefit from more powerful inter-package dependencies (e.g, when mylyn and SVN are installed, install the connector). The goal of this project is to advance p2 by providing more powerful inter-package dependencies (and their mapping to the PB solver). Directions are: * more complex implications, * mapping filters into the solver, * expressing generic capabilities / dependencies (e.g. putting requirements on memory size, hard drive size, etc), * representing affinities between packages (see the OSGi notion of uses clauses) , * finding a way to automatically pick the most applicable line-up / recommendations<br />
| <br />
| [mailto:pascal_rapicault_at_ca.ibm.com Pascal Rapicault], Daniel Le Berre<br />
| <br />
|<br />
|-<br />
|Transformation from CIM to PIM<br />
| <br />
|This project aims to create a module for additional Omondo, allowing transformations from computation independent model (CIM) represented by activity diagram,to a platform independent model (PIM) represented by class diagram and use cases, based in model driven architecture (MDA) and UML. The project ([https://eclipsecon.greenmeetingsystems.com/submissions/view/609 paper]) was submitted to eclipsecon 2008.<br />
| Ernesto Suarez Lopez<br />
| <br />
| <br />
|<br />
|-<br />
|Custom menu positioning for Eclipse Monkey scripts<br />
|[http://www.eclipse.org/dash/ Dash]<br />
|Eclipse Monkey scripts must currently reside under the Scripts menu, which doesn't integrate them well with existing functionality. When customizing a perspective, make it possible to add Monkey scripts to any menu (on the menu bar) that the user decides, both using specifiers in the script and through the UI.<br />
| [[User:Nitind|Nitin Dahyabhai]]<br />
| <br />
| <br />
|<br />
|-<br />
| Customizable display of objects in CDT debugger<br />
| [[CDT]]<br />
| Variables view of CDT debugger currently displays object variables as trees with each data member represented by a separate node. Some types, like std::string, have a complex internal structure, but a simple meaning. Having to open multiple levels of node hierarchy to see the contents of a string is very annoying. In most cases user does not care about all details of the string object and just wants to see the contents of the string. This problem can be solved by supporting user-defined auto expansion rules defining display formats for commonly used types. See {{bug|155331}} for more information.<br />
| Sergey Prigogin<br />
| [mailto:eclipse.sprigogin@gmail.com Sergey Prigogin]<br />
| <br />
|<br />
|-<br />
| CDT Windows Debugger<br />
| [[CDT]]<br />
| The CDT provides a front end to many debuggers in order to unify the debug UI around the Debug Platform augmented by a number of C/C++ specific debug views. We currently support the GNU debugger on Windows in parallel with build support for the GCC tool chain. We'd also like to support integration with the Windows SDK. We have Visual C++ build support. This project would be to add in Windows Debugger support.<br />
| Doug Schaefer<br />
| [mailto:doug.schaefer_at_windriver.com Doug Schaefer]<br />
| <br />
|<br />
|-<br />
| ECF and Yahoo<br />
| [http://www.eclipse.org/ecf/ ECF]<br />
| Implement a EPL'd version of the Yahoo messaging protocol and than code an ECF provider implementation for that. The baseline goal of this project is to just implement messanging for Yahoo... things like file transfer can come later or if there's time.<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Michael Berry, University of Kent, Canterbury, UK.<br />
|-<br />
| AIM Provider<br />
| [http://www.eclipse.org/ecf ECF]<br />
| ECF allows messaging protocols to be plugged in as providers. AIM isn't currently supported. The student can choose to implement the AIM (OSCAR) protocol themselves, or wrap an existing Java library like JOscar.<br />
| Chris Aniszczyk, Remy Suen<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:remy.suen@gmail.com Remy Suen]<br />
| <br />
| Michael Berry, University of Kent, Canterbury, UK. Çağatay Çallı, Middle East Technical University - Turkey. Tharindu Mathew, University of Moratuwa Sri Lanka<br />
|-<br />
| IM for Eclipse<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Developers work in project teams, and team members need to communicate. An IM program integrated into Eclipse itself will be useful for this, that's optimized to transfer large amounts of code which usual IM programs limit and also allows developers to be grouped accordingly.<br />
| Tharindu Mathew<br />
| <br />
| I think it's worth to take a look at the [http://www.eclipse.org/ecf ECF] project. Most of the features are already available there.<br />
| Michael Berry, University of Kent, Canterbury, UK. Michelangelo De Simone, University of Salerno - Italy. Michael Diamond, Dartmouth College. Sam Ryan, Victoria University Wellington New Zealand<br />
|-<br />
| Remote Service Deployment Tool<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Take the R-OSGi Deployment Tool idea ([http://www.iks.inf.ethz.ch/publications/files/etx07.pdf paper]) and the prototype and port it to a new platform (PDE projects, ECF remote services, p2 for deployment) so that it can be easily used within Eclipse to deploy a distributed OSGi application. <br />
| Jan S. Rellermeyer<br />
| [mailto:rellermeyer_at_inf.ethz.ch Jan S. Rellermeyer]<br />
| <br />
|<br />
|-<br />
| VNC over ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Virtual Network Console is a popular screen sharing technology. It would be useful to have an implementation of VNC protocol for ECF. See [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01452.html mailing list entry by Marek Zawirski] for a more detailed description of idea.<br />
| Scott Lewis<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe<br />
| <br />
|<br />
|-<br />
| Google Calendar access using ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| [http://calendar.google.com Google Calendar] is a popular and open calendaring system. It would be useful to have an integrated ECF-based calendar for Eclipse. See [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01452.html mailing list entry by Marek Zawirski] for a more detailed description of idea.<br />
| Scott Lewis<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe<br />
| <br />
|<br />
|-<br />
| SIP VoIP implementation for ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| SIP is a popular signaling protocol, widely used for setting up VoIP calls with 2 or more participiants. This project aims to create working SIP/VoIP implementation, that will implement existing [http://wiki.eclipse.org/index.php/VOIP ECF Call API]. Implementation should allow VoIP calls using SIP from Eclipse and will make Eclipse more functional softphone with another protocol implemented (already working implementations are jingle and Skype).<br />
| Marek Zawirski<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe?<br />
| <br />
| Marek Zawirski, Poznan University of Technology - Poland<br />
|-<br />
| Further ECF and Mylyn integration<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Improvement of distributed development process is common goal of Mylyn and ECF projects. There have been [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01195.html some efforts] of integrating these projects. However, there are still some fields where integration could be further extended. This especially covers contacting easily with other developers when doing issue-oriented development with Mylyn. Goal of this project is to extend integration between Mylyn and ECF to allow easy task-oriented communication or task exchange.<br />
| Marek Zawirski<br />
| Remy Suen, Scott Lewis, Chris Aniszczyk, Markus Kuppe?<br />
| <br />
|<br />
|-<br />
| Patch file editor with an outline view<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Juggling patches is the practice of every day work for all Eclipse developers. The goal of the project is to create a patch file editor with an outline view. The outline view would allow not only browsing the patch, but also navigating to included files, applying only selected hunks and so on.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Details and initial code in {{bug|190418}}.<br />
|<br />
|-<br />
| &quot;Compare With&quot; dialog<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| The goal of the project is to add a dialog allowing the user to select resources to compare. At this momement the user need to select 2 or 3 files with ctrl-clicking. This is not always as easy and reliable as it seems. The dialog would allow browsing the workspace or file system to locate the resource for comparison. Drag'n'dropping would be also very useful.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| See bug {{bug|224562}} for details.<br />
|<br />
|-<br />
| Patches comparison<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Juggling patches is the practice of every day work for all Eclipse developers. There are certain use cases when the user would like to compare two patches against each other. The problem is that straight comparison (two patches alone) is not enough, what we need here is comparing diffs in context.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Details in {{bug|198149}} and {{bug|213043}}.<br />
|<br />
|-<br />
| diff from any comparison<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Generating a patch from any comparison is a very common request. It comes in many flavours: users would like to save a patch while comparing two files, two version in local history, current version and a one with a tag and so on. One thing they have in common is the ability to create a patch from actual comparison. It would be definietly a nice feature to have.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Some of the bugs {{bug|71374}}, {{bug|103681}}, {{bug|151980}}...<br />
|<br />
|-<br />
| JavaScript debugger for IE<br />
| [http://eclipse.org/atf ATF]<br />
| ATF provides a Mozilla based debugger and an IE debugger would be welcomed. Some of the code from the [http://eclipse.org/actf ACTF] could be used as a base (an IE COM bridge)<br />
| Philippe Ombredanne<br />
| [mailto:pombredanne@gmail.com Philippe Ombredanne]<br />
| <br />
|<br />
|-<br />
| New Ajax tools and enhancements<br />
| [http://eclipse.org/atf ATF]<br />
| ATF needs your help to implement new features . See [http://www.eclipse.org/projects/slides/Continuation%20Review%20for%20the%20Eclipse%20ATF%20Project.pdf this documents for some ideas]<br />
| Philippe Ombredanne<br />
| [mailto:pombredanne@gmail.com Philippe Ombredanne]<br />
| <br />
|<br />
|-<br />
| Novel Rich Client<br />
| [http://www.eclipsemozilla.org EclipseMozilla.org] [http://eclipse.org/atf ATF]<br />
| Use the EclipseMozilla browser component and find new ways to program rich client applications. Especially, combining Eclipse technology with HTML and Flash is of interest. You should mesh Eclipse technology with web technologies to create a new unique way for rich client programming. This is a very innovative task. For more info contact me.<br />
| Thomas Derflinger<br />
| [mailto:tderflinger@gmail.com Thomas Derflinger]<br />
|<br />
| <br />
|-<br />
| Split File Editor<br />
| [http://www.eclipse.org/eclipse/platform-text/ Platform Text]<br />
| Implement a split file editor functionality: bug [https://bugs.eclipse.org/bugs/show_bug.cgi?id=8009 8009], the most voted-for bug ever in the entire Eclipse universe with &gt;180 votes<br />
| Nikolay Botev<br />
| <br />
| <br />
| Nikolay Botev, San Jose State University - San Jose, California, USA.<br />
|-<br />
| Office-2007-ribbon-inspired UI<br />
| [http://www.eclipse.org/eclipse/platform-ui/ Platform UI]<br />
| Toolbars and Menus are so 20th century (extremely outdated) and un-user-friendly. Eclipse's menus are particularly overcrowded and hard to manage. This project would be a bold endeavour - a wild experiment in UI innovation. The idea is to replace the menu and toolbars with an Office 2007-ribbon-inspired structure. Here is a tentative design of the new UI. The structure consists of top-level tabs that correspond to Eclipse IDE perspectives. Under the current tab are groups of buttons with labels on the bottom (like Office 2007). The groups correspond to the current top-level menus. Labels display the full menu on click (unlike Office 2007). The buttons in each group represent a list of relevant actions determined based on some intelligent mix of most-frequently- and most-recently-used statistics. The structure has enough room for 3 rows of buttons in small format with small (16x16) icon and optional label to the right (like Office 2007). The most relevant buttons are displayed in large format when possible, filling all three rows, with a large icon and label below. The structure automatically expands and shrinks based on window size to take advantage of all available space on modern high-resolution/wide-screen displays (like Office 2007).<br />
| Nikolay Botev<br />
| <br />
| <br />
| Nikolay Botev, San Jose State University - San Jose, California, USA.<br />
|-<br />
| Equinox and SAT4J<br />
| [http://www.eclipse.org/equinox/ Equinox]<br />
| Do you like difficult problems of solving resolver problems at runtime? If so... this project is for you. The new provisioning work at Eclipse (p2) is using a new SAT Solver (SAT4J) to do complex resolver computations. This project will explore using SAT4J as the replacement for the current Equinox runtime resolver.<br />
| Chris Aniszczyk<br />
| [mailto:hargrave@us.ibm.com BJ Hargrave], [mailto:tjwatson@us.ibm.com Thomas Watson], [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| I think this should be more general. It should be about using constraint solver to replace the equinox resolver. Another open-source implementation of a solver is [http://choco-solver.net/index.php?title=Main_Page Choco]<br />
|<br />
|-<br />
| Support for StyledText<br />
| [http://www.eclipse.org/rap RAP]<br />
| One of the most asked features of RAP is the StyledText widget. Not only to show funny colored texts in your application but it's one of the most complex widgets to implement. But having at least some basic API working enabled RAP to port other parts of RCP to the web based on the new StyledText widget. More information about StyledText can be found [http://help.eclipse.org/stable/nftopic/org.eclipse.platform.doc.isv/reference/api/org/eclipse/swt/custom/StyledText.html here]. <br />
| Benjamin Muskalla<br />
| Frank Appel, Rüdiger Herrmann<br />
|<br />
| <br />
|-<br />
| Theme Editor<br />
| [http://www.eclipse.org/rap RAP]<br />
| Theming allows RAP application developers to give their applications a custom style. Currently, a theme must be defined as a .properties file. As the theming capabilities improve, these files are getting more and more complex. A theme editor should provide an easy-to-use user interface for defining themes. It could be shipped as part of the RAP tooling. For more information on the RAP theming, see the [http://help.eclipse.org/help33/index.jsp?topic=/org.eclipse.rap.help/help/html/advanced/theming.html online help].<br />
| Ralf Sternberg<br />
| [mailto:rsternberg@innoopract.com Ralf Sternberg]<br />
| <br />
| Mathias Schaeffner, Coventry University, UK<br />
|-<br />
| RAP product file<br />
| [http://www.eclipse.org/rap/ RAP]<br />
| <br />
| Balazs Brinkus<br />
| <br />
| <br />
| Balazs Brinkus, University of Szeged, Hungary<br />
|}<br />
<br />
More ideas can be found at [http://eclipse-wiki.info/GoogleSummerOfCode2007 Eclipse-Wiki], [[Mylyn Contribution Ideas|Mylyn Contribution Ideas page]], and [[Google Summer of Code 2007 Ideas|Google Summer of Code 2007 ideas]].<br />
<br />
== Unmatched Students ==<br />
Yifei Ma, Virginia Tech, Equinox<br />
<br />
Jingwen 'Owen' Ou, The University of British Columbia, Mylyn: dynamic traces and buddy list</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=Google_Summer_of_Code_2008_Ideas&diff=89590Google Summer of Code 2008 Ideas2008-03-29T03:30:19Z<p>Pombredanne.nexb.com: </p>
<hr />
<div>== Rules ==<br />
* Be creative<br />
* Be specific: what do you want to be implemented<br />
* If you are willing to mentors those ideas, add your name and email to the idea.<br />
* Ii is ok to have a project idea without parent project<br />
* If you're an interested student, add your name and email next to the idea. It is ok to have several students interested by one idea.<br />
<br />
== Ideas ==<br />
<br />
{| border=&quot;1&quot; cellpadding=&quot;2&quot; width=&quot;100%&quot;<br />
!width=&quot;20%&quot;|Title<br />
!width=&quot;5%&quot; align=&quot;center&quot;|Project<br />
!width=&quot;40%&quot;|Abstract - links to details/bugs/etc<br />
!width=&quot;10%&quot;|Reporter<br />
!width=&quot;10%&quot;|Possible mentor(s)<br />
!width=&quot;15%&quot;|Comments<br />
!width=&quot;10%&quot;|Potential students(s)<br />
|-<br />
| Support for user-defined refactorings in JDT<br />
| [http://www.eclipse.org/jdt JDT]<br />
| The idea is to produce a pattern language, rules engine, and user interface to allow the Java developer to perform queries n and make safe modifications of their code code. It's a superset of the current refactoring because ideally current refactorings could be expressed this new system, forming a nice set of initial examples. he users could then adapt those rules to their own purposes or come up with completely new ones. See {{bug|144642}} for more informations.<br />
| Ed Burnette<br />
| Martin Aeschlimann(?)<br />
| <br />
|<br />
|-<br />
| Continuous JUnit integration<br />
| [http://www.eclipse.org/jdt JDT]<br />
| Running a specific set of JUnit sets in the background while editing Java source code would help to detect defects early. The concept is to provide unobstrusive early detection and reporting of changes to source code that negatively affect its agreed upon functionality. Detecting failing tests would mark the changed source code with annotations to see which changes affected the green bar. There are already some (forgotten) bugs: {{bug|12167}} and {{bug|51292}}.<br />
| Benjamin Muskalla<br />
| [mailto:ContinuousJUnitGSoC08@lemmster.de Markus Kuppe] <br />
| [http://groups.csail.mit.edu/pag/continuoustesting/ PAG]<br />
| Sam Ryan, Victoria University Wellington New Zealand. Andrew Murray, Queen's University<br />
|-<br />
| toString generation<br />
| [http://www.eclipse.org/jdt JDT]<br />
| Like the setter/getter, equals and hashcode generator, it would be nice to have a little helper to generate toString methods. See bug {{bug|26070}} and take a look at [http://code.google.com/p/generate-tostring/wiki/Features this plugin] for some ideas. <br />
| Benjamin Muskalla<br />
| [mailto:toStringGSoC08@lemmster.de Markus Kuppe]<br />
| [http://eclipse-jutils.sourceforge.net/ JUtils]<br />
| Michelangelo De Simone, University of Salerno - Italy. Michael Diamond, Dartmouth College. Sam Ryan, Victoria University Wellington New Zealand. Andrew Murray, Queen's University<br />
|-<br />
| JDT and Google Code Search service <br />
| [http://www.eclipse.org/jdt JDT]<br />
| JDT and Google Code Search service integration: a)During debug under JDT source code are often unavailable. Google Code Search Source Provider should provide source code for corresponding class. b)Integrate common JDT search possibilities (for example &quot;Search\References&quot;) with Google Code Search Service (Search not under local projects but in Web too).<br />
| Andrey Vakunov<br />
| <br />
|<br />
| Michelangelo De Simone, University of Salerno - Italy. Andrey Vakunov, Grodno State University<br />
|-<br />
| JDT Debugger Extensibility<br />
| [http://www.eclipse.org/eclipse/debug/jdt/ JDT Debug]<br />
| The JDT debugger provides debugging services and works with any JDPA-compliant JVM. The debugger has greatly matured over the years. Debugging facilities in general have not advanced much, however. Many in the research community would like to extend the capabilities of the JDT debugger without losing (or re-writing) existing functionality. Doing so often requires customizing how the JDT debugger makes use of the Java Debug Interface (JDI). This project would open up the JDI portion of the debugger in such a way that extensibility can be accomplished in a safe manner.<br />
| Jeffrey Czyz<br />
| <br />
| <br />
| Jeffrey Czyz, University at Buffalo<br />
|-<br />
| Implement a search mechanism for BPMN diagrams<br />
| [[STP/BPMN_Component|BPMN]]<br />
| Research indexing of domain specific models persisted in an XML format. Apply this research to indexing and searching BPMN diagrams.<br />
| Antoine Toulme<br />
| [mailto:antoine@lunar-ocean.com Antoine Toulme], [mailto:hmalphettes@intalio.com Hugues Malphettes]<br />
|<br />
|<br />
|-<br />
| Improve the usability of the BPMN editor<br />
| [[STP/BPMN_Component|BPMN]]<br />
| Gather feedback from users of the modeler. Select enhancements to support and develop them.<br />
| Antoine Toulme<br />
| [mailto:antoine@lunar-ocean.com Antoine Toulme], [mailto:hmalphettes@intalio.com Hugues Malphettes]<br />
|<br />
|<br />
|-<br />
| BPMN/BPEL to SCA model transformations for STP<br />
| [http://www.eclipse.org/stp/ STP]<br />
| This project will leverage and extend the existing STP Intermediate Model (STP-IM) in order to provide better support for transformations between process editors (BPMN and BPEL) and architecture editors (SCA in particular, potentially EID as well). The contribution would be of great importance to SOA developers and would therefore be an important incentive for the community adoption of the Eclipse STP. <br />
| Juan Cadavid<br />
| [mailto:adrian.mos@inria.fr Adrian Mos]<br />
|<br />
| Juan Cadavid, Universidad EAFIT, Medellín Colombia.<br />
|-<br />
| DITA or DocBook Help Content Producer<br />
| [http://www.eclipse.org/eclipse/platform-ua/main.html User Assistance]<br />
| Eclipse User Assistance allows for help content to be dynamically produced. Traditionally, all Eclipse content came in the form of hand-written HTML files. This is so 90's, we should have [http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/extension-points/org_eclipse_help_contentProducer.html help content producers] to produce help content from DITA or DocBook files.<br />
| Chris Aniszczyk, Chris Goldthorpe(?)<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:cgold@us.ibm.com Chris Goldthorpe], [mailto:d_a_carver@yahoo.com David Carver]<br />
| <br />
| Zhiyang Jiang,Chinese Academy of Sciences<br />
|-<br />
| GraphicsZilla<br />
| [http://www.eclipse.org/phoenix Phoenix]<br />
| Eclipse uses Bugzilla in many interesting ways. It uses it in the normal fashion for bug tracking. It also uses a modified version for IP tracking (IPZilla). This proposal is to create a GraphicsZilla to help streamline icon and graphics creation in Eclipse. This would allow not only programmers to contribute their talents to Eclipse. This would also make the process of where icons come from more transparent. See this [http://mea-bloga.blogspot.com/2007/01/graphicszilla-running-man.html blog post] and [https://bugs.eclipse.org/bugs/show_bug.cgi?id=170720 bug] for more info. Note, this would also provide a viewable repository of all the graphics used in Eclipse... which is currently lacking now.<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
|<br />
|-<br />
| Bundles in a Browser<br />
| [http://www.eclipse.org/equinox Equinox]<br />
| Eclipse runs pretty much everywhere these days... in cell phones... devices... desktops... servers... how about a web browser? This proposal is being left open-ended for a purpose. I'd like to see a student figure out how to get Eclipse plug-ins (bundles) installed into a browser like Firefox and then somehow expose working with them via some API... maybe XPCOM or Javascript. That's all ;p<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| PDE fetch script factory for SVN<br />
| [http://www.eclipse.org/pde/ pde]<br />
| So far Eclipse only support CVS in a map file build. Though there exists an SVN impl, it's not EPL<br />
| Markus Kuppe<br />
| If nobody from PDE: [mailto:fetchGSoC08@lemmster.de Markus Kuppe]<br />
| [http://wiki.eclipse.org/index.php/PDEBuild#Building_from_a_subversion_repository SVN impl]<br />
|<br />
|-<br />
| PDE Ménage à trois: Scala and Java<br />
| [http://www.eclipse.org/pde PDE]<br />
| There are some crazy people out there developing Eclipse plug-ins using languages other than Java (how dare they ;p!). Scala is one of these popular languages and there already has been [http://neilbartlett.name/blog/2007/06/13/eclipse-pde-does-scala/ some Eclipse integration] to make this happen. However, PDE suffers from limitations that strictly binds itself to Java... the goal of this project would be to analyze these PDE limitations... and come up with patches or prototyped code to let PDE play better with Scala and other languages.<br />
| Chris Aniszczyk, Neil Bartlett (?)<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Moises Osorio, Instituto Tecnologico de Culiacan, Culiacan Mexico. [mailto:wcoder.mx@gmail.com wcoder.mx@gmail.com]<br />
|-<br />
| Declarative Services (DS) Tooling<br />
| [http://www.eclipse.org/pde PDE]<br />
| Equinox finally has a stable implementation of the Declarative Services specification from OSGi. It's time to tool this beast. Any takers?<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Bartosz Michalik, Poznan University of Technology - Poland. Rafael Oliveira Nóbrega, Universidade Federal de Pernambuco - Brazil<br />
|-<br />
| PDE and JavaScript<br />
| [http://www.eclipse.org/pde PDE]<br />
| PDE allows you to create plug-ins using Java these days. This request is simply for a student to explore the realm of creating plug-ins using JavaScript or other languages. To start simple, I'd start with adding a new schema attribute of type &quot;javascript&quot; to allow plug-in authors to at least plug different languages in. From there, we can explore ideas on &quot;how would you define a view&quot; in such a way that you could take javascript or java code?<br />
| Chris Aniszczyk<br />
| Chris Aniszczyk<br />
| <br />
|<br />
|-<br />
| PDE and Equinox Transforms<br />
| [http://www.eclipse.org/pde PDE]<br />
| Equinox has a new component called transforms that allows you to transform various aspects of a plug-in during runtime. For example, a common use case is to write a transform that modifies some plugin.xml entries to not display certain menu items. This project aims to provide tooling for the transforms component so plugin authors can easily author transforms.<br />
| Chris Aniszczyk<br />
| Chris Aniszczyk<br />
| <br />
| Bartosz Michalik, Poznan University of Technology - Poland<br />
|-<br />
| XpandDoc documentation generator<br />
| [http://www.eclipse.org/modeling/m2t/?project=xpand#xpand M2T/Xpand]<br />
| Xpand is a template language which allows users to comment their templates with a JavaDoc-like syntax. So far, there is no tooling that can use this documentation. The goals of the project are to (1) create an engine that can parse Xpand template comments, (2) create a commandline tool that can generate a JavaDoc-like HTML output for all template comments in a project, and (3) enhance the Xpand text editor to show template comments in a tooltip when hovering over the respective template invocation.<br />
| Peter Friese<br />
| [mailto:peter.friese@itemis.de Peter Friese]<br />
| <br />
|<br />
|-<br />
| Refactorings for Xpand / Xtend / Check<br />
| [http://www.eclipse.org/modeling/m2t/?project=xpand#xpand M2T/Xpand]<br />
| Xpand, Xtend and Check are languages for writing code generators. As your code generator grows, you'll feel the desire to restructure your code generator templates. Currently, no refactoring support is available for Xpand / Xtend / Check. We're looking for a brave student willing to fill this void.<br />
| Peter Friese<br />
| [mailto:peter.friese@itemis.de Peter Friese]<br />
| <br />
|<br />
|-<br />
| Improving the TCP/IP Monitor Plugin <br />
| [http://www.eclipse.org/webtools/server/ WTP_Server_Tools]<br />
| The TCP/IP Monitor plugin available with the Eclipse WTP could use some improvement in several areas. A few suggestions are XML prettyfying, switchable layouts, persistable message logs, tabs for concurrent listeners, proxy mode, HTTP proxy support, simulation of slow connections, documentation and overall UI and usability improvement. IMHO, such additions, alongwith other requirements expressed by developers for this plugin, would make it more popular among the Eclipse Web developer community. <br />
| Suran Jayathilaka<br />
| <br />
| <br />
| Suran Jayathilaka, University Of Colombo School Of Computing - Sri lanka<br />
|-<br />
| Generic unit testing support<br />
| [http://www.eclipse.org/dltk DLTK]?<br />
| JUnit is well integrated at the moment used to test java code. As there are many other projects which need to implement other testing tools, we should be a generalized form of the Junit framework as provide some extension points to build the implementations of other XUnit frameworks on top of it. See {{bug|180884}} for more informations.<br />
| Benjamin Muskalla<br />
| <br />
| <br />
| <br />
|-<br />
| Web-CAT Eclipse plugin<br />
| [http://web-cat.cs.vt.edu/ Web-CAT]<br />
| Web-CAT is a plug-in-based web application that supports electronic submission and automated grading of programming assignments that is presently used by over 30 universities and colleges in the United States and elsewhere. The Web-CAT Grader supports traditional models of automated program grading, and also supports grading of assignments where students do their own testing. Web-CAT is already supported by an Eclipse plugin that allows students to view graders' comments on their assignments directly within the IDE. The aim of this project is to provide support for the graders as well, i.e., to allow professors, teaching assistants, and students to mark up code with comments, assign grades (both freeform and from rubrics), and so on. This will not only make grading easier, but will also help turn Eclipse into a student-friendly code review tool, which we hope will encourage wider use of code reviews in teaching.<br />
| Jason Montojo<br />
| [mailto:jmontojo@ca.ibm.com Jason Montojo], [mailto:gvwilson@cs.utoronto.ca Greg Wilson]<br />
| <br />
| Qi Yang, University of Toronto - Canada<br />
|-<br />
| Feature Diagram plugin<br />
| [https://stanley.cdf.toronto.edu/drproject/consulting-2008-01/featdiag Feature Diagram Prototype]<br />
| &quot;Feature diagrams&quot; are a graphical notation for describing the relationships between class elements that first appeared in Michael Feathers' book &quot;[http://www.amazon.com/Working-Effectively-Legacy-Robert-Martin/dp/0131177052 Working Effectively with Legacy Code]&quot;. A prototype plugin for Eclipse that automatically produces feature diagrams, and allows users to modify their layout, now exists. The aim of this project is to connect that plugin to Eclipse's Java refactorings to allow drag-and-drop manipulation of the visual representations of fields and methods.<br />
| Greg Wilson<br />
| [mailto:gvwilson@cs.utoronto.ca Greg Wilson]<br />
| <br />
|<br />
|-<br />
| XQuery Syntax Editor<br />
| [http://www.eclipse.org/webtools/incubator XSL Tooling / Web Tools Incubator]<br />
| Provide basic support for XQuery syntax editing. Including coloring, validation, content assistance, possibly provide extensions for allowing the selection of which xquery editors can be used for validation. Preference pages for controling XQuery specificat options for generating output. Possible future ability to include debugging support.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| <br />
| Buddhika Laknath, University of Moratuwa - Sri Lanka<br />
|-<br />
| Eclipse single instance<br />
| [http://www.eclipse.org/platform platform]<br />
| More and more applications are eclipse RCP based applications. This is great but each application launch a JVM and load in memory quite often the same plug-ins. Like xul runner for mozilla, it would be interesting to have an &quot;Eclipse runner&quot;. Issues to work on are how to manage several platforms (3.1, 3.2, 3.3, etc..) and share plug-ins (in memory). update : the problem seems to be adressed with p2 provided in eclipse 3.4 M6<br />
| Mariot Chauvin<br />
| Someone from platform project<br />
| <br />
|<br />
|-<br />
| BIRT JPA or JDO Connector<br />
| [http://www.eclipse.org/birt birt]<br />
| A data connector for BIRT Reports that allows BIRT to easily access data via JPA or JDO.<br />
| Markus Kuppe<br />
| The BIRT Project Team <br />
| In [http://wiki.eclipse.org/Google_Summer_of_Code_2007_Ideas GSoC '07] the BIRT team was willing to mentor<br />
|<br />
|-<br />
| BIRT Reports and Connectors for Ad Revenue<br />
| [http://www.eclipse.org/birt birt]<br />
| This one is very business focused -- provide connectors and reports that allow Google customers and users to build their own reports on their Google Ad Revenue etc.<br />
| Kevin Peters<br />
| The BIRT Project Team <br />
| In [http://wiki.eclipse.org/Google_Summer_of_Code_2007_Ideas GSoC '07] the BIRT team was willing to mentor<br />
| [mailto:kevjay@gmail.com Kevin Peters], University of Kansas<br />
|-<br />
| Barcode Support<br />
| [http://www.eclipse.org/birt birt]<br />
| See https://bugs.eclipse.org/bugs/show_bug.cgi?id=149928 for additional details.<br />
| Kevin Peters<br />
| The BIRT Project Team <br />
| <br />
| [mailto:kevjay@gmail.com Kevin Peters], University of Kansas<br />
|-<br />
| JET Transforms/Wizards for creating project meta <br />
| [[Modeling Project Releng|Modeling Releng]]? [[Nexus_Project|Nexus]]?<br />
| Starting a new project requires a lot of duplicative code &amp; metadata: .doc plugins/features, .examples plugins/features, .test examples/features, .sdk feature, .releng project. Being able to generate this from JET templates via a wizard would make it much easier to get a project up and running -- and then get a PDE build that much easier, too.<br />
| [[User:Nickb|Nick Boldt]] <br />
| [[User:Nickb|Nick Boldt]]<br />
| <br />
| Michael Robb, Mount Royal College<br />
|-<br />
| Rich text editing and wiki integration<br />
| [http://eclipse.org/mylyn Mylyn]<br />
| Provide wiki integration. This involves providing mechanisms for rich editing and viewing of task repository comments in wiki format, potentially adding wiki editing. see also [[Mylyn/Contribution_Ideas|More ideas for Mylyn projects]]<br />
| Steffen Pingel<br />
| Steffen Pingel<br />
| There are at least two projects already providing wiki editing in Eclipse, albeit without Mylyn integration: [http://www.matheclipse.org/en/Eclipse_Wikipedia_Editor Wikipedia Editor], [http://eclipsewiki.sourceforge.net/ Wiki Editor]. &lt;/[[User:nickb]]&gt;<br />
| Jingwen 'Owen' Ou, The University of British Columbia<br />
|-<br />
| Java based Abstract Syntax Tree (AST) generator for Ada Programs<br />
| [http://eclipse.org/hibachi Hibachi]<br />
| An Abstract Syntax Tree is the base framework for many powerful tools of a language IDE. For Hibachi, the Ada Development Toolkit project (like JDT or CDT), the presence of an AST would allow many more powerful IDE features, and improve those already in place (like refactoring, code folding, reformating).<br />
| Tom Grosman<br />
| Tom Grosman, Adam Haselhuhn<br />
| For a good idea about ASTs in Eclipse, see [http://www.eclipse.org/articles/article.php?file=Article-JavaCodeManipulation_AST/index.html JDT AST]<br />
|<br />
|-<br />
| Feature implementation for Ada Development Toolkit<br />
| [http://eclipse.org/hibachi Hibachi]<br />
| Implementation of new or extension of existing Hibachi funtionality. Depending on student interest and background, features may include but are not limited to code folding, Ada body generation, object tooltips display, dependency graphs and trees, code fixing, etc.<br />
| Tom Grosman<br />
| Tom Grosman, Adam Haselhuhn<br />
|<br />
|<br />
|-<br />
| XML+CSS = IFigure<br />
| [http://www.eclipse.org/gef/ GEF/Draw2d]<br />
| Adding possibility to generate draw2d figures from XML and CSS descriptors (for example HTML subset and CSS). <br />
| Andrey Vakunov<br />
| [mailto:anthonyh_at_ca.ibm.com Anthony Hunter]<br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| Equinox Console and script language integration<br />
| [http://www.eclipse.org/equinox/ Equinox]<br />
| Integrate any script language (Groovy or JRuby or Bash :-) ) in OSGi console. Add possibilities to write in OSGi console &quot;s grep &lt;my-service-name&gt;&quot;<br />
| Andrey Vakunov<br />
| <br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| Buddy list for task assignments and CCs<br />
| [http://www.eclipse.org/mylyn/ Mylyn]<br />
| Enhance Mylyn's Rich Client Bugzilla to have an address book for CC's<br />
| Jingwen 'Owen' Ou<br />
| <br />
| Normally people work on projects with similar teammates and it would be nice to use previous queries to propose CCs. Details in [https://bugs.eclipse.org/bugs/show_bug.cgi?id=152415 bug 152415]<br />
|<br />
|-<br />
| Enhanced Eclipse search<br />
| [http://www.eclipse.org/platform platform]<br />
| Eclipse search plugin: provide an enhanced Eclipse search: better, faster, more relevant. Think Lucene or opengrok inside Eclipse.<br />
| Philippe Ombredanne<br />
| [mailto:philippe.ombredanne_at_eclipse.org Philippe Ombredanne]<br />
| <br />
| Jeffrey Czyz, University at Buffalo. Çağatay Çallı, Middle East Technical University - Turkey. Suran Jayathilaka, University Of Colombo School Of Computing - Sri lanka<br />
|-<br />
| Eclipse-Moodle integration<br />
| <br />
| The idea of this project is to provide an Eclipse plugin for the Moodle CMS e-learning system. This tool will enable students participating in online courses to import and export resources (projects or other materials) directly from an Eclipse workspace. Integration with Mylyn (for managing tasks assigned in such courses) could be an additional feature. <br />
| Aleksandra Woźniak<br />
| <br />
| <br />
| Aleksandra Woźniak, Poznan University of Technology &amp; Adam Mickiewicz University - Poznan, Poland<br />
|-<br />
| Use case editor<br />
| [http://www.eclipse.org/proposals/ormf/ ORMF]?<br />
| Use case editor: for writing use cases in a textual form, managing sets of use cases and (maybe) generating UML diagrams as well as html and pdf files from them. <br />
| Aleksandra Woźniak<br />
| <br />
| <br />
| Aleksandra Woźniak, Poznan University of Technology &amp; Adam Mickiewicz University - Poznan, Poland<br />
|-<br />
| Augment p2 dependencies<br />
| [http://wiki.eclipse.org/Equinox_p2 p2]<br />
| In its first release, p2 limited its expression of dependencies to something equivalent to what most other package management system proposed (A package can say that it requires or conflicts with others). However several provisioning scenarios could benefit from more powerful inter-package dependencies (e.g, when mylyn and SVN are installed, install the connector). The goal of this project is to advance p2 by providing more powerful inter-package dependencies (and their mapping to the PB solver). Directions are: * more complex implications, * mapping filters into the solver, * expressing generic capabilities / dependencies (e.g. putting requirements on memory size, hard drive size, etc), * representing affinities between packages (see the OSGi notion of uses clauses) , * finding a way to automatically pick the most applicable line-up / recommendations<br />
| <br />
| [mailto:pascal_rapicault_at_ca.ibm.com Pascal Rapicault], Daniel Le Berre<br />
| <br />
|<br />
|-<br />
|Transformation from CIM to PIM<br />
| <br />
|This project aims to create a module for additional Omondo, allowing transformations from computation independent model (CIM) represented by activity diagram,to a platform independent model (PIM) represented by class diagram and use cases, based in model driven architecture (MDA) and UML. The project ([https://eclipsecon.greenmeetingsystems.com/submissions/view/609 paper]) was submitted to eclipsecon 2008.<br />
| Ernesto Suarez Lopez<br />
| <br />
| <br />
|<br />
|-<br />
|Custom menu positioning for Eclipse Monkey scripts<br />
|[http://www.eclipse.org/dash/ Dash]<br />
|Eclipse Monkey scripts must currently reside under the Scripts menu, which doesn't integrate them well with existing functionality. When customizing a perspective, make it possible to add Monkey scripts to any menu (on the menu bar) that the user decides, both using specifiers in the script and through the UI.<br />
| [[User:Nitind|Nitin Dahyabhai]]<br />
| <br />
| <br />
|<br />
|-<br />
| Customizable display of objects in CDT debugger<br />
| [[CDT]]<br />
| Variables view of CDT debugger currently displays object variables as trees with each data member represented by a separate node. Some types, like std::string, have a complex internal structure, but a simple meaning. Having to open multiple levels of node hierarchy to see the contents of a string is very annoying. In most cases user does not care about all details of the string object and just wants to see the contents of the string. This problem can be solved by supporting user-defined auto expansion rules defining display formats for commonly used types. See {{bug|155331}} for more information.<br />
| Sergey Prigogin<br />
| [mailto:eclipse.sprigogin@gmail.com Sergey Prigogin]<br />
| <br />
|<br />
|-<br />
| CDT Windows Debugger<br />
| [[CDT]]<br />
| The CDT provides a front end to many debuggers in order to unify the debug UI around the Debug Platform augmented by a number of C/C++ specific debug views. We currently support the GNU debugger on Windows in parallel with build support for the GCC tool chain. We'd also like to support integration with the Windows SDK. We have Visual C++ build support. This project would be to add in Windows Debugger support.<br />
| Doug Schaefer<br />
| [mailto:doug.schaefer_at_windriver.com Doug Schaefer]<br />
| <br />
|<br />
|-<br />
| ECF and Yahoo<br />
| [http://www.eclipse.org/ecf/ ECF]<br />
| Implement a EPL'd version of the Yahoo messaging protocol and than code an ECF provider implementation for that. The baseline goal of this project is to just implement messanging for Yahoo... things like file transfer can come later or if there's time.<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Michael Berry, University of Kent, Canterbury, UK.<br />
|-<br />
| AIM Provider<br />
| [http://www.eclipse.org/ecf ECF]<br />
| ECF allows messaging protocols to be plugged in as providers. AIM isn't currently supported. The student can choose to implement the AIM (OSCAR) protocol themselves, or wrap an existing Java library like JOscar.<br />
| Chris Aniszczyk, Remy Suen<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:remy.suen@gmail.com Remy Suen]<br />
| <br />
| Michael Berry, University of Kent, Canterbury, UK. Çağatay Çallı, Middle East Technical University - Turkey. Tharindu Mathew, University of Moratuwa Sri Lanka<br />
|-<br />
| IM for Eclipse<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Developers work in project teams, and team members need to communicate. An IM program integrated into Eclipse itself will be useful for this, that's optimized to transfer large amounts of code which usual IM programs limit and also allows developers to be grouped accordingly.<br />
| Tharindu Mathew<br />
| <br />
| I think it's worth to take a look at the [http://www.eclipse.org/ecf ECF] project. Most of the features are already available there.<br />
| Michael Berry, University of Kent, Canterbury, UK. Michelangelo De Simone, University of Salerno - Italy. Michael Diamond, Dartmouth College. Sam Ryan, Victoria University Wellington New Zealand<br />
|-<br />
| Remote Service Deployment Tool<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Take the R-OSGi Deployment Tool idea ([http://www.iks.inf.ethz.ch/publications/files/etx07.pdf paper]) and the prototype and port it to a new platform (PDE projects, ECF remote services, p2 for deployment) so that it can be easily used within Eclipse to deploy a distributed OSGi application. <br />
| Jan S. Rellermeyer<br />
| [mailto:rellermeyer_at_inf.ethz.ch Jan S. Rellermeyer]<br />
| <br />
|<br />
|-<br />
| VNC over ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Virtual Network Console is a popular screen sharing technology. It would be useful to have an implementation of VNC protocol for ECF. See [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01452.html mailing list entry by Marek Zawirski] for a more detailed description of idea.<br />
| Scott Lewis<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe<br />
| <br />
|<br />
|-<br />
| Google Calendar access using ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| [http://calendar.google.com Google Calendar] is a popular and open calendaring system. It would be useful to have an integrated ECF-based calendar for Eclipse. See [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01452.html mailing list entry by Marek Zawirski] for a more detailed description of idea.<br />
| Scott Lewis<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe<br />
| <br />
|<br />
|-<br />
| SIP VoIP implementation for ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| SIP is a popular signaling protocol, widely used for setting up VoIP calls with 2 or more participiants. This project aims to create working SIP/VoIP implementation, that will implement existing [http://wiki.eclipse.org/index.php/VOIP ECF Call API]. Implementation should allow VoIP calls using SIP from Eclipse and will make Eclipse more functional softphone with another protocol implemented (already working implementations are jingle and Skype).<br />
| Marek Zawirski<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe?<br />
| <br />
| Marek Zawirski, Poznan University of Technology - Poland<br />
|-<br />
| Further ECF and Mylyn integration<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Improvement of distributed development process is common goal of Mylyn and ECF projects. There have been [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01195.html some efforts] of integrating these projects. However, there are still some fields where integration could be further extended. This especially covers contacting easily with other developers when doing issue-oriented development with Mylyn. Goal of this project is to extend integration between Mylyn and ECF to allow easy task-oriented communication or task exchange.<br />
| Marek Zawirski<br />
| Remy Suen, Scott Lewis, Chris Aniszczyk, Markus Kuppe?<br />
| <br />
|<br />
|-<br />
| Patch file editor with an outline view<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Juggling patches is the practice of every day work for all Eclipse developers. The goal of the project is to create a patch file editor with an outline view. The outline view would allow not only browsing the patch, but also navigating to included files, applying only selected hunks and so on.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Details and initial code in {{bug|190418}}.<br />
|<br />
|-<br />
| &quot;Compare With&quot; dialog<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| The goal of the project is to add a dialog allowing the user to select resources to compare. At this momement the user need to select 2 or 3 files with ctrl-clicking. This is not always as easy and reliable as it seems. The dialog would allow browsing the workspace or file system to locate the resource for comparison. Drag'n'dropping would be also very useful.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| See bug {{bug|224562}} for details.<br />
|<br />
|-<br />
| Patches comparison<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Juggling patches is the practice of every day work for all Eclipse developers. There are certain use cases when the user would like to compare two patches against each other. The problem is that straight comparison (two patches alone) is not enough, what we need here is comparing diffs in context.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Details in {{bug|198149}} and {{bug|213043}}.<br />
|<br />
|-<br />
| diff from any comparison<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Generating a patch from any comparison is a very common request. It comes in many flavours: users would like to save a patch while comparing two files, two version in local history, current version and a one with a tag and so on. One thing they have in common is the ability to create a patch from actual comparison. It would be definietly a nice feature to have.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Some of the bugs {{bug|71374}}, {{bug|103681}}, {{bug|151980}}...<br />
|<br />
|-<br />
| Novel Rich Client<br />
| [http://www.eclipsemozilla.org EclipseMozilla.org]<br />
| Use the EclipseMozilla browser component and find new ways to program rich client applications. Especially, combining Eclipse technology with HTML and Flash is of interest. You should mesh Eclipse technology with web technologies to create a new unique way for rich client programming. This is a very innovative task. For more info contact me.<br />
| Thomas Derflinger<br />
| [mailto:tderflinger@gmail.com Thomas Derflinger]<br />
|<br />
| <br />
|-<br />
| Split File Editor<br />
| [http://www.eclipse.org/eclipse/platform-text/ Platform Text]<br />
| Implement a split file editor functionality: bug [https://bugs.eclipse.org/bugs/show_bug.cgi?id=8009 8009], the most voted-for bug ever in the entire Eclipse universe with &gt;180 votes<br />
| Nikolay Botev<br />
| <br />
| <br />
| Nikolay Botev, San Jose State University - San Jose, California, USA.<br />
|-<br />
| Office-2007-ribbon-inspired UI<br />
| [http://www.eclipse.org/eclipse/platform-ui/ Platform UI]<br />
| Toolbars and Menus are so 20th century (extremely outdated) and un-user-friendly. Eclipse's menus are particularly overcrowded and hard to manage. This project would be a bold endeavour - a wild experiment in UI innovation. The idea is to replace the menu and toolbars with an Office 2007-ribbon-inspired structure. Here is a tentative design of the new UI. The structure consists of top-level tabs that correspond to Eclipse IDE perspectives. Under the current tab are groups of buttons with labels on the bottom (like Office 2007). The groups correspond to the current top-level menus. Labels display the full menu on click (unlike Office 2007). The buttons in each group represent a list of relevant actions determined based on some intelligent mix of most-frequently- and most-recently-used statistics. The structure has enough room for 3 rows of buttons in small format with small (16x16) icon and optional label to the right (like Office 2007). The most relevant buttons are displayed in large format when possible, filling all three rows, with a large icon and label below. The structure automatically expands and shrinks based on window size to take advantage of all available space on modern high-resolution/wide-screen displays (like Office 2007).<br />
| Nikolay Botev<br />
| <br />
| <br />
| Nikolay Botev, San Jose State University - San Jose, California, USA.<br />
|-<br />
| Equinox and SAT4J<br />
| [http://www.eclipse.org/equinox/ Equinox]<br />
| Do you like difficult problems of solving resolver problems at runtime? If so... this project is for you. The new provisioning work at Eclipse (p2) is using a new SAT Solver (SAT4J) to do complex resolver computations. This project will explore using SAT4J as the replacement for the current Equinox runtime resolver.<br />
| Chris Aniszczyk<br />
| [mailto:hargrave@us.ibm.com BJ Hargrave], [mailto:tjwatson@us.ibm.com Thomas Watson], [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| I think this should be more general. It should be about using constraint solver to replace the equinox resolver. Another open-source implementation of a solver is [http://choco-solver.net/index.php?title=Main_Page Choco]<br />
|<br />
|-<br />
| Support for StyledText<br />
| [http://www.eclipse.org/rap RAP]<br />
| One of the most asked features of RAP is the StyledText widget. Not only to show funny colored texts in your application but it's one of the most complex widgets to implement. But having at least some basic API working enabled RAP to port other parts of RCP to the web based on the new StyledText widget. More information about StyledText can be found [http://help.eclipse.org/stable/nftopic/org.eclipse.platform.doc.isv/reference/api/org/eclipse/swt/custom/StyledText.html here]. <br />
| Benjamin Muskalla<br />
| Frank Appel, Rüdiger Herrmann<br />
|<br />
| <br />
|-<br />
| Theme Editor<br />
| [http://www.eclipse.org/rap RAP]<br />
| Theming allows RAP application developers to give their applications a custom style. Currently, a theme must be defined as a .properties file. As the theming capabilities improve, these files are getting more and more complex. A theme editor should provide an easy-to-use user interface for defining themes. It could be shipped as part of the RAP tooling. For more information on the RAP theming, see the [http://help.eclipse.org/help33/index.jsp?topic=/org.eclipse.rap.help/help/html/advanced/theming.html online help].<br />
| Ralf Sternberg<br />
| [mailto:rsternberg@innoopract.com Ralf Sternberg]<br />
| <br />
| Mathias Schaeffner, Coventry University, UK<br />
|-<br />
| RAP product file<br />
| [http://www.eclipse.org/rap/ RAP]<br />
| <br />
| Balazs Brinkus<br />
| <br />
| <br />
| Balazs Brinkus, University of Szeged, Hungary<br />
|}<br />
<br />
More ideas can be found at [http://eclipse-wiki.info/GoogleSummerOfCode2007 Eclipse-Wiki], [[Mylyn Contribution Ideas|Mylyn Contribution Ideas page]], and [[Google Summer of Code 2007 Ideas|Google Summer of Code 2007 ideas]].<br />
<br />
== Unmatched Students ==<br />
Yifei Ma, Virginia Tech, Equinox<br />
<br />
Jingwen 'Owen' Ou, The University of British Columbia, Mylyn: dynamic traces and buddy list</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=Google_Summer_of_Code_2008_Ideas&diff=89589Google Summer of Code 2008 Ideas2008-03-29T03:28:41Z<p>Pombredanne.nexb.com: </p>
<hr />
<div>== Rules ==<br />
* Be creative<br />
* Be specific: what do you want to be implemented<br />
* If you are willing to mentors those ideas, add your name and email to the idea.<br />
* Ii is ok to have a project idea without parent project<br />
* If you're an interested student, add your name and email next to the idea. It is ok to have several students interested by one idea.<br />
<br />
== Ideas ==<br />
<br />
{| border=&quot;1&quot; cellpadding=&quot;2&quot; width=&quot;100%&quot;<br />
!width=&quot;20%&quot;|Title<br />
!width=&quot;5%&quot; align=&quot;center&quot;|Project<br />
!width=&quot;40%&quot;|Abstract - links to details/bugs/etc<br />
!width=&quot;10%&quot;|Reporter<br />
!width=&quot;10%&quot;|Possible mentor(s)<br />
!width=&quot;15%&quot;|Comments<br />
!width=&quot;10%&quot;|Potential students(s)<br />
|-<br />
| Support for user-defined refactorings in JDT<br />
| [http://www.eclipse.org/jdt JDT]<br />
| The idea is to produce a pattern language, rules engine, and user interface to allow the Java developer to perform queries n and make safe modifications of their code code. It's a superset of the current refactoring because ideally current refactorings could be expressed this new system, forming a nice set of initial examples. he users could then adapt those rules to their own purposes or come up with completely new ones. See {{bug|144642}} for more informations.<br />
| Ed Burnette<br />
| Martin Aeschlimann(?)<br />
| <br />
|<br />
|-<br />
| Continuous JUnit integration<br />
| [http://www.eclipse.org/jdt JDT]<br />
| Running a specific set of JUnit sets in the background while editing Java source code would help to detect defects early. The concept is to provide unobstrusive early detection and reporting of changes to source code that negatively affect its agreed upon functionality. Detecting failing tests would mark the changed source code with annotations to see which changes affected the green bar. There are already some (forgotten) bugs: {{bug|12167}} and {{bug|51292}}.<br />
| Benjamin Muskalla<br />
| [mailto:ContinuousJUnitGSoC08@lemmster.de Markus Kuppe] <br />
| [http://groups.csail.mit.edu/pag/continuoustesting/ PAG]<br />
| Sam Ryan, Victoria University Wellington New Zealand. Andrew Murray, Queen's University<br />
|-<br />
| toString generation<br />
| [http://www.eclipse.org/jdt JDT]<br />
| Like the setter/getter, equals and hashcode generator, it would be nice to have a little helper to generate toString methods. See bug {{bug|26070}} and take a look at [http://code.google.com/p/generate-tostring/wiki/Features this plugin] for some ideas. <br />
| Benjamin Muskalla<br />
| [mailto:toStringGSoC08@lemmster.de Markus Kuppe]<br />
| [http://eclipse-jutils.sourceforge.net/ JUtils]<br />
| Michelangelo De Simone, University of Salerno - Italy. Michael Diamond, Dartmouth College. Sam Ryan, Victoria University Wellington New Zealand. Andrew Murray, Queen's University<br />
|-<br />
| JDT and Google Code Search service <br />
| [http://www.eclipse.org/jdt JDT]<br />
| JDT and Google Code Search service integration: a)During debug under JDT source code are often unavailable. Google Code Search Source Provider should provide source code for corresponding class. b)Integrate common JDT search possibilities (for example &quot;Search\References&quot;) with Google Code Search Service (Search not under local projects but in Web too).<br />
| Andrey Vakunov<br />
| <br />
|<br />
| Michelangelo De Simone, University of Salerno - Italy. Andrey Vakunov, Grodno State University<br />
|-<br />
| JDT Debugger Extensibility<br />
| [http://www.eclipse.org/eclipse/debug/jdt/ JDT Debug]<br />
| The JDT debugger provides debugging services and works with any JDPA-compliant JVM. The debugger has greatly matured over the years. Debugging facilities in general have not advanced much, however. Many in the research community would like to extend the capabilities of the JDT debugger without losing (or re-writing) existing functionality. Doing so often requires customizing how the JDT debugger makes use of the Java Debug Interface (JDI). This project would open up the JDI portion of the debugger in such a way that extensibility can be accomplished in a safe manner.<br />
| Jeffrey Czyz<br />
| <br />
| <br />
| Jeffrey Czyz, University at Buffalo<br />
|-<br />
| Implement a search mechanism for BPMN diagrams<br />
| [[STP/BPMN_Component|BPMN]]<br />
| Research indexing of domain specific models persisted in an XML format. Apply this research to indexing and searching BPMN diagrams.<br />
| Antoine Toulme<br />
| [mailto:antoine@lunar-ocean.com Antoine Toulme], [mailto:hmalphettes@intalio.com Hugues Malphettes]<br />
|<br />
|<br />
|-<br />
| Improve the usability of the BPMN editor<br />
| [[STP/BPMN_Component|BPMN]]<br />
| Gather feedback from users of the modeler. Select enhancements to support and develop them.<br />
| Antoine Toulme<br />
| [mailto:antoine@lunar-ocean.com Antoine Toulme], [mailto:hmalphettes@intalio.com Hugues Malphettes]<br />
|<br />
|<br />
|-<br />
| BPMN/BPEL to SCA model transformations for STP<br />
| [http://www.eclipse.org/stp/ STP]<br />
| This project will leverage and extend the existing STP Intermediate Model (STP-IM) in order to provide better support for transformations between process editors (BPMN and BPEL) and architecture editors (SCA in particular, potentially EID as well). The contribution would be of great importance to SOA developers and would therefore be an important incentive for the community adoption of the Eclipse STP. <br />
| Juan Cadavid<br />
| [mailto:adrian.mos@inria.fr Adrian Mos]<br />
|<br />
| Juan Cadavid, Universidad EAFIT, Medellín Colombia.<br />
|-<br />
| DITA or DocBook Help Content Producer<br />
| [http://www.eclipse.org/eclipse/platform-ua/main.html User Assistance]<br />
| Eclipse User Assistance allows for help content to be dynamically produced. Traditionally, all Eclipse content came in the form of hand-written HTML files. This is so 90's, we should have [http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/extension-points/org_eclipse_help_contentProducer.html help content producers] to produce help content from DITA or DocBook files.<br />
| Chris Aniszczyk, Chris Goldthorpe(?)<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:cgold@us.ibm.com Chris Goldthorpe], [mailto:d_a_carver@yahoo.com David Carver]<br />
| <br />
| Zhiyang Jiang,Chinese Academy of Sciences<br />
|-<br />
| GraphicsZilla<br />
| [http://www.eclipse.org/phoenix Phoenix]<br />
| Eclipse uses Bugzilla in many interesting ways. It uses it in the normal fashion for bug tracking. It also uses a modified version for IP tracking (IPZilla). This proposal is to create a GraphicsZilla to help streamline icon and graphics creation in Eclipse. This would allow not only programmers to contribute their talents to Eclipse. This would also make the process of where icons come from more transparent. See this [http://mea-bloga.blogspot.com/2007/01/graphicszilla-running-man.html blog post] and [https://bugs.eclipse.org/bugs/show_bug.cgi?id=170720 bug] for more info. Note, this would also provide a viewable repository of all the graphics used in Eclipse... which is currently lacking now.<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
|<br />
|-<br />
| Bundles in a Browser<br />
| [http://www.eclipse.org/equinox Equinox]<br />
| Eclipse runs pretty much everywhere these days... in cell phones... devices... desktops... servers... how about a web browser? This proposal is being left open-ended for a purpose. I'd like to see a student figure out how to get Eclipse plug-ins (bundles) installed into a browser like Firefox and then somehow expose working with them via some API... maybe XPCOM or Javascript. That's all ;p<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| PDE fetch script factory for SVN<br />
| [http://www.eclipse.org/pde/ pde]<br />
| So far Eclipse only support CVS in a map file build. Though there exists an SVN impl, it's not EPL<br />
| Markus Kuppe<br />
| If nobody from PDE: [mailto:fetchGSoC08@lemmster.de Markus Kuppe]<br />
| [http://wiki.eclipse.org/index.php/PDEBuild#Building_from_a_subversion_repository SVN impl]<br />
|<br />
|-<br />
| PDE Ménage à trois: Scala and Java<br />
| [http://www.eclipse.org/pde PDE]<br />
| There are some crazy people out there developing Eclipse plug-ins using languages other than Java (how dare they ;p!). Scala is one of these popular languages and there already has been [http://neilbartlett.name/blog/2007/06/13/eclipse-pde-does-scala/ some Eclipse integration] to make this happen. However, PDE suffers from limitations that strictly binds itself to Java... the goal of this project would be to analyze these PDE limitations... and come up with patches or prototyped code to let PDE play better with Scala and other languages.<br />
| Chris Aniszczyk, Neil Bartlett (?)<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Moises Osorio, Instituto Tecnologico de Culiacan, Culiacan Mexico. [mailto:wcoder.mx@gmail.com wcoder.mx@gmail.com]<br />
|-<br />
| Declarative Services (DS) Tooling<br />
| [http://www.eclipse.org/pde PDE]<br />
| Equinox finally has a stable implementation of the Declarative Services specification from OSGi. It's time to tool this beast. Any takers?<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Bartosz Michalik, Poznan University of Technology - Poland. Rafael Oliveira Nóbrega, Universidade Federal de Pernambuco - Brazil<br />
|-<br />
| PDE and JavaScript<br />
| [http://www.eclipse.org/pde PDE]<br />
| PDE allows you to create plug-ins using Java these days. This request is simply for a student to explore the realm of creating plug-ins using JavaScript or other languages. To start simple, I'd start with adding a new schema attribute of type &quot;javascript&quot; to allow plug-in authors to at least plug different languages in. From there, we can explore ideas on &quot;how would you define a view&quot; in such a way that you could take javascript or java code?<br />
| Chris Aniszczyk<br />
| Chris Aniszczyk<br />
| <br />
|<br />
|-<br />
| PDE and Equinox Transforms<br />
| [http://www.eclipse.org/pde PDE]<br />
| Equinox has a new component called transforms that allows you to transform various aspects of a plug-in during runtime. For example, a common use case is to write a transform that modifies some plugin.xml entries to not display certain menu items. This project aims to provide tooling for the transforms component so plugin authors can easily author transforms.<br />
| Chris Aniszczyk<br />
| Chris Aniszczyk<br />
| <br />
| Bartosz Michalik, Poznan University of Technology - Poland<br />
|-<br />
| XpandDoc documentation generator<br />
| [http://www.eclipse.org/modeling/m2t/?project=xpand#xpand M2T/Xpand]<br />
| Xpand is a template language which allows users to comment their templates with a JavaDoc-like syntax. So far, there is no tooling that can use this documentation. The goals of the project are to (1) create an engine that can parse Xpand template comments, (2) create a commandline tool that can generate a JavaDoc-like HTML output for all template comments in a project, and (3) enhance the Xpand text editor to show template comments in a tooltip when hovering over the respective template invocation.<br />
| Peter Friese<br />
| [mailto:peter.friese@itemis.de Peter Friese]<br />
| <br />
|<br />
|-<br />
| Refactorings for Xpand / Xtend / Check<br />
| [http://www.eclipse.org/modeling/m2t/?project=xpand#xpand M2T/Xpand]<br />
| Xpand, Xtend and Check are languages for writing code generators. As your code generator grows, you'll feel the desire to restructure your code generator templates. Currently, no refactoring support is available for Xpand / Xtend / Check. We're looking for a brave student willing to fill this void.<br />
| Peter Friese<br />
| [mailto:peter.friese@itemis.de Peter Friese]<br />
| <br />
|<br />
|-<br />
| Improving the TCP/IP Monitor Plugin <br />
| [http://www.eclipse.org/webtools/server/ WTP_Server_Tools]<br />
| The TCP/IP Monitor plugin available with the Eclipse WTP could use some improvement in several areas. A few suggestions are XML prettyfying, switchable layouts, persistable message logs, tabs for concurrent listeners, proxy mode, HTTP proxy support, simulation of slow connections, documentation and overall UI and usability improvement. IMHO, such additions, alongwith other requirements expressed by developers for this plugin, would make it more popular among the Eclipse Web developer community. <br />
| Suran Jayathilaka<br />
| <br />
| <br />
| Suran Jayathilaka, University Of Colombo School Of Computing - Sri lanka<br />
|-<br />
| Generic unit testing support<br />
| [http://www.eclipse.org/dltk DLTK]?<br />
| JUnit is well integrated at the moment used to test java code. As there are many other projects which need to implement other testing tools, we should be a generalized form of the Junit framework as provide some extension points to build the implementations of other XUnit frameworks on top of it. See {{bug|180884}} for more informations.<br />
| Benjamin Muskalla<br />
| <br />
| <br />
| <br />
|-<br />
| Web-CAT Eclipse plugin<br />
| [http://web-cat.cs.vt.edu/ Web-CAT]<br />
| Web-CAT is a plug-in-based web application that supports electronic submission and automated grading of programming assignments that is presently used by over 30 universities and colleges in the United States and elsewhere. The Web-CAT Grader supports traditional models of automated program grading, and also supports grading of assignments where students do their own testing. Web-CAT is already supported by an Eclipse plugin that allows students to view graders' comments on their assignments directly within the IDE. The aim of this project is to provide support for the graders as well, i.e., to allow professors, teaching assistants, and students to mark up code with comments, assign grades (both freeform and from rubrics), and so on. This will not only make grading easier, but will also help turn Eclipse into a student-friendly code review tool, which we hope will encourage wider use of code reviews in teaching.<br />
| Jason Montojo<br />
| [mailto:jmontojo@ca.ibm.com Jason Montojo], [mailto:gvwilson@cs.utoronto.ca Greg Wilson]<br />
| <br />
| Qi Yang, University of Toronto - Canada<br />
|-<br />
| Feature Diagram plugin<br />
| [https://stanley.cdf.toronto.edu/drproject/consulting-2008-01/featdiag Feature Diagram Prototype]<br />
| &quot;Feature diagrams&quot; are a graphical notation for describing the relationships between class elements that first appeared in Michael Feathers' book &quot;[http://www.amazon.com/Working-Effectively-Legacy-Robert-Martin/dp/0131177052 Working Effectively with Legacy Code]&quot;. A prototype plugin for Eclipse that automatically produces feature diagrams, and allows users to modify their layout, now exists. The aim of this project is to connect that plugin to Eclipse's Java refactorings to allow drag-and-drop manipulation of the visual representations of fields and methods.<br />
| Greg Wilson<br />
| [mailto:gvwilson@cs.utoronto.ca Greg Wilson]<br />
| <br />
|<br />
|-<br />
| XQuery Syntax Editor<br />
| [http://www.eclipse.org/webtools/incubator XSL Tooling / Web Tools Incubator]<br />
| Provide basic support for XQuery syntax editing. Including coloring, validation, content assistance, possibly provide extensions for allowing the selection of which xquery editors can be used for validation. Preference pages for controling XQuery specificat options for generating output. Possible future ability to include debugging support.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| <br />
| Buddhika Laknath, University of Moratuwa - Sri Lanka<br />
|-<br />
| Eclipse single instance<br />
| [http://www.eclipse.org/platform platform]<br />
| More and more applications are eclipse RCP based applications. This is great but each application launch a JVM and load in memory quite often the same plug-ins. Like xul runner for mozilla, it would be interesting to have an &quot;Eclipse runner&quot;. Issues to work on are how to manage several platforms (3.1, 3.2, 3.3, etc..) and share plug-ins (in memory). update : the problem seems to be adressed with p2 provided in eclipse 3.4 M6<br />
| Mariot Chauvin<br />
| Someone from platform project<br />
| <br />
|<br />
|-<br />
| BIRT JPA or JDO Connector<br />
| [http://www.eclipse.org/birt birt]<br />
| A data connector for BIRT Reports that allows BIRT to easily access data via JPA or JDO.<br />
| Markus Kuppe<br />
| The BIRT Project Team <br />
| In [http://wiki.eclipse.org/Google_Summer_of_Code_2007_Ideas GSoC '07] the BIRT team was willing to mentor<br />
|<br />
|-<br />
| BIRT Reports and Connectors for Ad Revenue<br />
| [http://www.eclipse.org/birt birt]<br />
| This one is very business focused -- provide connectors and reports that allow Google customers and users to build their own reports on their Google Ad Revenue etc.<br />
| Kevin Peters<br />
| The BIRT Project Team <br />
| In [http://wiki.eclipse.org/Google_Summer_of_Code_2007_Ideas GSoC '07] the BIRT team was willing to mentor<br />
| [mailto:kevjay@gmail.com Kevin Peters], University of Kansas<br />
|-<br />
| Barcode Support<br />
| [http://www.eclipse.org/birt birt]<br />
| See https://bugs.eclipse.org/bugs/show_bug.cgi?id=149928 for additional details.<br />
| Kevin Peters<br />
| The BIRT Project Team <br />
| <br />
| [mailto:kevjay@gmail.com Kevin Peters], University of Kansas<br />
|-<br />
| JET Transforms/Wizards for creating project meta <br />
| [[Modeling Project Releng|Modeling Releng]]? [[Nexus_Project|Nexus]]?<br />
| Starting a new project requires a lot of duplicative code &amp; metadata: .doc plugins/features, .examples plugins/features, .test examples/features, .sdk feature, .releng project. Being able to generate this from JET templates via a wizard would make it much easier to get a project up and running -- and then get a PDE build that much easier, too.<br />
| [[User:Nickb|Nick Boldt]] <br />
| [[User:Nickb|Nick Boldt]]<br />
| <br />
| Michael Robb, Mount Royal College<br />
|-<br />
| Rich text editing and wiki integration<br />
| [http://eclipse.org/mylyn Mylyn]<br />
| Provide wiki integration. This involves providing mechanisms for rich editing and viewing of task repository comments in wiki format, potentially adding wiki editing. see also [[Mylyn/Contribution_Ideas|More ideas for Mylyn projects]]<br />
| Steffen Pingel<br />
| Steffen Pingel<br />
| There are at least two projects already providing wiki editing in Eclipse, albeit without Mylyn integration: [http://www.matheclipse.org/en/Eclipse_Wikipedia_Editor Wikipedia Editor], [http://eclipsewiki.sourceforge.net/ Wiki Editor]. &lt;/[[User:nickb]]&gt;<br />
| Jingwen 'Owen' Ou, The University of British Columbia<br />
|-<br />
| Java based Abstract Syntax Tree (AST) generator for Ada Programs<br />
| [http://eclipse.org/hibachi Hibachi]<br />
| An Abstract Syntax Tree is the base framework for many powerful tools of a language IDE. For Hibachi, the Ada Development Toolkit project (like JDT or CDT), the presence of an AST would allow many more powerful IDE features, and improve those already in place (like refactoring, code folding, reformating).<br />
| Tom Grosman<br />
| Tom Grosman, Adam Haselhuhn<br />
| For a good idea about ASTs in Eclipse, see [http://www.eclipse.org/articles/article.php?file=Article-JavaCodeManipulation_AST/index.html JDT AST]<br />
|<br />
|-<br />
| Feature implementation for Ada Development Toolkit<br />
| [http://eclipse.org/hibachi Hibachi]<br />
| Implementation of new or extension of existing Hibachi funtionality. Depending on student interest and background, features may include but are not limited to code folding, Ada body generation, object tooltips display, dependency graphs and trees, code fixing, etc.<br />
| Tom Grosman<br />
| Tom Grosman, Adam Haselhuhn<br />
|<br />
|<br />
|-<br />
| XML+CSS = IFigure<br />
| [http://www.eclipse.org/gef/ GEF/Draw2d]<br />
| Adding possibility to generate draw2d figures from XML and CSS descriptors (for example HTML subset and CSS). <br />
| Andrey Vakunov<br />
| [mailto:anthonyh_at_ca.ibm.com Anthony Hunter]<br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| Equinox Console and script language integration<br />
| [http://www.eclipse.org/equinox/ Equinox]<br />
| Integrate any script language (Groovy or JRuby or Bash :-) ) in OSGi console. Add possibilities to write in OSGi console &quot;s grep &lt;my-service-name&gt;&quot;<br />
| Andrey Vakunov<br />
| <br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| Buddy list for task assignments and CCs<br />
| [http://www.eclipse.org/mylyn/ Mylyn]<br />
| Enhance Mylyn's Rich Client Bugzilla to have an address book for CC's<br />
| Jingwen 'Owen' Ou<br />
| <br />
| Normally people work on projects with similar teammates and it would be nice to use previous queries to propose CCs. Details in [https://bugs.eclipse.org/bugs/show_bug.cgi?id=152415 bug 152415]<br />
|<br />
|-<br />
| Enhanced Eclipse search<br />
| [http://www.eclipse.org/platform platform]<br />
| Eclipse search plugin: provide an enhanced Eclipse search: better, faster, more relevant. Think Lucene or opengrok inside Eclipse.<br />
| Philippe Ombredanne<br />
| [mailto:philippe.ombredanne_at_eclipse.org Philippe Ombredanne]<br />
| <br />
| Jeffrey Czyz, University at Buffalo. Çağatay Çallı, Middle East Technical University - Turkey. Suran Jayathilaka, University Of Colombo School Of Computing - Sri lanka<br />
|-<br />
| Eclipse-Moodle integration<br />
| <br />
| The idea of this project is to provide an Eclipse plugin for the Moodle CMS e-learning system. This tool will enable students participating in online courses to import and export resources (projects or other materials) directly from an Eclipse workspace. Integration with Mylyn (for managing tasks assigned in such courses) could be an additional feature. <br />
| Aleksandra Woźniak<br />
| <br />
| <br />
| Aleksandra Woźniak, Poznan University of Technology &amp; Adam Mickiewicz University - Poznan, Poland<br />
|-<br />
| Use case editor<br />
| [http://www.eclipse.org/proposals/ormf/ ORMF]?<br />
| Use case editor: for writing use cases in a textual form, managing sets of use cases and (maybe) generating UML diagrams as well as html and pdf files from them. <br />
| Aleksandra Woźniak<br />
| <br />
| <br />
| Aleksandra Woźniak, Poznan University of Technology &amp; Adam Mickiewicz University - Poznan, Poland<br />
|-<br />
| Augment p2 dependencies<br />
| [http://wiki.eclipse.org/Equinox_p2 p2]<br />
| In its first release, p2 limited its expression of dependencies to something equivalent to what most other package management system proposed (A package can say that it requires or conflicts with others). However several provisioning scenarios could benefit from more powerful inter-package dependencies (e.g, when mylyn and SVN are installed, install the connector). The goal of this project is to advance p2 by providing more powerful inter-package dependencies (and their mapping to the PB solver). Directions are: * more complex implications, * mapping filters into the solver, * expressing generic capabilities / dependencies (e.g. putting requirements on memory size, hard drive size, etc), * representing affinities between packages (see the OSGi notion of uses clauses) , * finding a way to automatically pick the most applicable line-up / recommendations<br />
| <br />
| [mailto:pascal_rapicault_at_ca.ibm.com Pascal Rapicault], Daniel Le Berre<br />
| <br />
|<br />
|-<br />
|Transformation from CIM to PIM<br />
| <br />
|This project aims to create a module for additional Omondo, allowing transformations from computation independent model (CIM) represented by activity diagram,to a platform independent model (PIM) represented by class diagram and use cases, based in model driven architecture (MDA) and UML. The project ([https://eclipsecon.greenmeetingsystems.com/submissions/view/609 paper]) was submitted to eclipsecon 2008.<br />
| Ernesto Suarez Lopez<br />
| <br />
| <br />
|<br />
|-<br />
|Custom menu positioning for Eclipse Monkey scripts<br />
|[http://www.eclipse.org/dash/ Dash]<br />
|Eclipse Monkey scripts must currently reside under the Scripts menu, which doesn't integrate them well with existing functionality. When customizing a perspective, make it possible to add Monkey scripts to any menu (on the menu bar) that the user decides, both using specifiers in the script and through the UI.<br />
| [[User:Nitind|Nitin Dahyabhai]]<br />
| <br />
| <br />
|<br />
|-<br />
| Customizable display of objects in CDT debugger<br />
| [[CDT]]<br />
| Variables view of CDT debugger currently displays object variables as trees with each data member represented by a separate node. Some types, like std::string, have a complex internal structure, but a simple meaning. Having to open multiple levels of node hierarchy to see the contents of a string is very annoying. In most cases user does not care about all details of the string object and just wants to see the contents of the string. This problem can be solved by supporting user-defined auto expansion rules defining display formats for commonly used types. See {{bug|155331}} for more information.<br />
| Sergey Prigogin<br />
| [mailto:eclipse.sprigogin@gmail.com Sergey Prigogin]<br />
| <br />
|<br />
|-<br />
| CDT Windows Debugger<br />
| [[CDT]]<br />
| The CDT provides a front end to many debuggers in order to unify the debug UI around the Debug Platform augmented by a number of C/C++ specific debug views. We currently support the GNU debugger on Windows in parallel with build support for the GCC tool chain. We'd also like to support integration with the Windows SDK. We have Visual C++ build support. This project would be to add in Windows Debugger support.<br />
| Doug Schaefer<br />
| [mailto:doug.schaefer_at_windriver.com Doug Schaefer]<br />
| <br />
|<br />
|-<br />
| AIM Provider<br />
| [http://www.eclipse.org/ecf ECF]<br />
| ECF allows messaging protocols to be plugged in as providers. AIM isn't currently supported. The student can choose to implement the AIM (OSCAR) protocol themselves, or wrap an existing Java library like JOscar.<br />
| Chris Aniszczyk, Remy Suen<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:remy.suen@gmail.com Remy Suen]<br />
| <br />
| Michael Berry, University of Kent, Canterbury, UK. Çağatay Çallı, Middle East Technical University - Turkey. Tharindu Mathew, University of Moratuwa Sri Lanka<br />
|-<br />
| IM for Eclipse<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Developers work in project teams, and team members need to communicate. An IM program integrated into Eclipse itself will be useful for this, that's optimized to transfer large amounts of code which usual IM programs limit and also allows developers to be grouped accordingly.<br />
| Tharindu Mathew<br />
| <br />
| I think it's worth to take a look at the [http://www.eclipse.org/ecf ECF] project. Most of the features are already available there.<br />
| Michael Berry, University of Kent, Canterbury, UK. Michelangelo De Simone, University of Salerno - Italy. Michael Diamond, Dartmouth College. Sam Ryan, Victoria University Wellington New Zealand<br />
|-<br />
| Remote Service Deployment Tool<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Take the R-OSGi Deployment Tool idea ([http://www.iks.inf.ethz.ch/publications/files/etx07.pdf paper]) and the prototype and port it to a new platform (PDE projects, ECF remote services, p2 for deployment) so that it can be easily used within Eclipse to deploy a distributed OSGi application. <br />
| Jan S. Rellermeyer<br />
| [mailto:rellermeyer_at_inf.ethz.ch Jan S. Rellermeyer]<br />
| <br />
|<br />
|-<br />
| VNC over ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Virtual Network Console is a popular screen sharing technology. It would be useful to have an implementation of VNC protocol for ECF. See [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01452.html mailing list entry by Marek Zawirski] for a more detailed description of idea.<br />
| Scott Lewis<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe<br />
| <br />
|<br />
|-<br />
| Google Calendar access using ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| [http://calendar.google.com Google Calendar] is a popular and open calendaring system. It would be useful to have an integrated ECF-based calendar for Eclipse. See [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01452.html mailing list entry by Marek Zawirski] for a more detailed description of idea.<br />
| Scott Lewis<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe<br />
| <br />
|<br />
|-<br />
| SIP VoIP implementation for ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| SIP is a popular signaling protocol, widely used for setting up VoIP calls with 2 or more participiants. This project aims to create working SIP/VoIP implementation, that will implement existing [http://wiki.eclipse.org/index.php/VOIP ECF Call API]. Implementation should allow VoIP calls using SIP from Eclipse and will make Eclipse more functional softphone with another protocol implemented (already working implementations are jingle and Skype).<br />
| Marek Zawirski<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe?<br />
| <br />
| Marek Zawirski, Poznan University of Technology - Poland<br />
|-<br />
| Further ECF and Mylyn integration<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Improvement of distributed development process is common goal of Mylyn and ECF projects. There have been [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01195.html some efforts] of integrating these projects. However, there are still some fields where integration could be further extended. This especially covers contacting easily with other developers when doing issue-oriented development with Mylyn. Goal of this project is to extend integration between Mylyn and ECF to allow easy task-oriented communication or task exchange.<br />
| Marek Zawirski<br />
| Remy Suen, Scott Lewis, Chris Aniszczyk, Markus Kuppe?<br />
| <br />
|<br />
|-<br />
| Patch file editor with an outline view<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Juggling patches is the practice of every day work for all Eclipse developers. The goal of the project is to create a patch file editor with an outline view. The outline view would allow not only browsing the patch, but also navigating to included files, applying only selected hunks and so on.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Details and initial code in {{bug|190418}}.<br />
|<br />
|-<br />
| &quot;Compare With&quot; dialog<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| The goal of the project is to add a dialog allowing the user to select resources to compare. At this momement the user need to select 2 or 3 files with ctrl-clicking. This is not always as easy and reliable as it seems. The dialog would allow browsing the workspace or file system to locate the resource for comparison. Drag'n'dropping would be also very useful.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| See bug {{bug|224562}} for details.<br />
|<br />
|-<br />
| Patches comparison<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Juggling patches is the practice of every day work for all Eclipse developers. There are certain use cases when the user would like to compare two patches against each other. The problem is that straight comparison (two patches alone) is not enough, what we need here is comparing diffs in context.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Details in {{bug|198149}} and {{bug|213043}}.<br />
|<br />
|-<br />
| diff from any comparison<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Generating a patch from any comparison is a very common request. It comes in many flavours: users would like to save a patch while comparing two files, two version in local history, current version and a one with a tag and so on. One thing they have in common is the ability to create a patch from actual comparison. It would be definietly a nice feature to have.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Some of the bugs {{bug|71374}}, {{bug|103681}}, {{bug|151980}}...<br />
|<br />
|-<br />
| Novel Rich Client<br />
| [http://www.eclipsemozilla.org EclipseMozilla.org]<br />
| Use the EclipseMozilla browser component and find new ways to program rich client applications. Especially, combining Eclipse technology with HTML and Flash is of interest. You should mesh Eclipse technology with web technologies to create a new unique way for rich client programming. This is a very innovative task. For more info contact me.<br />
| Thomas Derflinger<br />
| [mailto:tderflinger@gmail.com Thomas Derflinger]<br />
|<br />
| <br />
|-<br />
| Split File Editor<br />
| [http://www.eclipse.org/eclipse/platform-text/ Platform Text]<br />
| Implement a split file editor functionality: bug [https://bugs.eclipse.org/bugs/show_bug.cgi?id=8009 8009], the most voted-for bug ever in the entire Eclipse universe with &gt;180 votes<br />
| Nikolay Botev<br />
| <br />
| <br />
| Nikolay Botev, San Jose State University - San Jose, California, USA.<br />
|-<br />
| Office-2007-ribbon-inspired UI<br />
| [http://www.eclipse.org/eclipse/platform-ui/ Platform UI]<br />
| Toolbars and Menus are so 20th century (extremely outdated) and un-user-friendly. Eclipse's menus are particularly overcrowded and hard to manage. This project would be a bold endeavour - a wild experiment in UI innovation. The idea is to replace the menu and toolbars with an Office 2007-ribbon-inspired structure. Here is a tentative design of the new UI. The structure consists of top-level tabs that correspond to Eclipse IDE perspectives. Under the current tab are groups of buttons with labels on the bottom (like Office 2007). The groups correspond to the current top-level menus. Labels display the full menu on click (unlike Office 2007). The buttons in each group represent a list of relevant actions determined based on some intelligent mix of most-frequently- and most-recently-used statistics. The structure has enough room for 3 rows of buttons in small format with small (16x16) icon and optional label to the right (like Office 2007). The most relevant buttons are displayed in large format when possible, filling all three rows, with a large icon and label below. The structure automatically expands and shrinks based on window size to take advantage of all available space on modern high-resolution/wide-screen displays (like Office 2007).<br />
| Nikolay Botev<br />
| <br />
| <br />
| Nikolay Botev, San Jose State University - San Jose, California, USA.<br />
|-<br />
| Equinox and SAT4J<br />
| [http://www.eclipse.org/equinox/ Equinox]<br />
| Do you like difficult problems of solving resolver problems at runtime? If so... this project is for you. The new provisioning work at Eclipse (p2) is using a new SAT Solver (SAT4J) to do complex resolver computations. This project will explore using SAT4J as the replacement for the current Equinox runtime resolver.<br />
| Chris Aniszczyk<br />
| [mailto:hargrave@us.ibm.com BJ Hargrave], [mailto:tjwatson@us.ibm.com Thomas Watson], [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| I think this should be more general. It should be about using constraint solver to replace the equinox resolver. Another open-source implementation of a solver is [http://choco-solver.net/index.php?title=Main_Page Choco]<br />
|<br />
|-<br />
| ECF and Yahoo<br />
| [http://www.eclipse.org/ecf/ ECF]<br />
| Implement a EPL'd version of the Yahoo messaging protocol and than code an ECF provider implementation for that. The baseline goal of this project is to just implement messanging for Yahoo... things like file transfer can come later or if there's time.<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Michael Berry, University of Kent, Canterbury, UK.<br />
|-<br />
| Support for StyledText<br />
| [http://www.eclipse.org/rap RAP]<br />
| One of the most asked features of RAP is the StyledText widget. Not only to show funny colored texts in your application but it's one of the most complex widgets to implement. But having at least some basic API working enabled RAP to port other parts of RCP to the web based on the new StyledText widget. More information about StyledText can be found [http://help.eclipse.org/stable/nftopic/org.eclipse.platform.doc.isv/reference/api/org/eclipse/swt/custom/StyledText.html here]. <br />
| Benjamin Muskalla<br />
| Frank Appel, Rüdiger Herrmann<br />
|<br />
| <br />
|-<br />
| Theme Editor<br />
| [http://www.eclipse.org/rap RAP]<br />
| Theming allows RAP application developers to give their applications a custom style. Currently, a theme must be defined as a .properties file. As the theming capabilities improve, these files are getting more and more complex. A theme editor should provide an easy-to-use user interface for defining themes. It could be shipped as part of the RAP tooling. For more information on the RAP theming, see the [http://help.eclipse.org/help33/index.jsp?topic=/org.eclipse.rap.help/help/html/advanced/theming.html online help].<br />
| Ralf Sternberg<br />
| [mailto:rsternberg@innoopract.com Ralf Sternberg]<br />
| <br />
| Mathias Schaeffner, Coventry University, UK<br />
|-<br />
| RAP product file<br />
| [http://www.eclipse.org/rap/ RAP]<br />
| <br />
| Balazs Brinkus<br />
| <br />
| <br />
| Balazs Brinkus, University of Szeged, Hungary<br />
|}<br />
<br />
More ideas can be found at [http://eclipse-wiki.info/GoogleSummerOfCode2007 Eclipse-Wiki], [[Mylyn Contribution Ideas|Mylyn Contribution Ideas page]], and [[Google Summer of Code 2007 Ideas|Google Summer of Code 2007 ideas]].<br />
<br />
== Unmatched Students ==<br />
Yifei Ma, Virginia Tech, Equinox<br />
<br />
Jingwen 'Owen' Ou, The University of British Columbia, Mylyn: dynamic traces and buddy list</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=Google_Summer_of_Code_2008_Ideas&diff=89588Google Summer of Code 2008 Ideas2008-03-29T03:27:30Z<p>Pombredanne.nexb.com: </p>
<hr />
<div>== Rules ==<br />
* Be creative<br />
* Be specific: what do you want to be implemented<br />
* If you are willing to mentors those ideas, add your name and email to the idea.<br />
* Ii is ok to have a project idea without parent project<br />
* If you're an interested student, add your name and email next to the idea. It is ok to have several students interested by one idea.<br />
<br />
== Ideas ==<br />
<br />
{| border=&quot;1&quot; cellpadding=&quot;2&quot; width=&quot;100%&quot;<br />
!width=&quot;20%&quot;|Title<br />
!width=&quot;5%&quot; align=&quot;center&quot;|Project<br />
!width=&quot;40%&quot;|Abstract - links to details/bugs/etc<br />
!width=&quot;10%&quot;|Reporter<br />
!width=&quot;10%&quot;|Possible mentor(s)<br />
!width=&quot;15%&quot;|Comments<br />
!width=&quot;10%&quot;|Potential students(s)<br />
|-<br />
| Support for user-defined refactorings in JDT<br />
| [http://www.eclipse.org/jdt JDT]<br />
| The idea is to produce a pattern language, rules engine, and user interface to allow the Java developer to perform queries n and make safe modifications of their code code. It's a superset of the current refactoring because ideally current refactorings could be expressed this new system, forming a nice set of initial examples. he users could then adapt those rules to their own purposes or come up with completely new ones. See {{bug|144642}} for more informations.<br />
| Ed Burnette<br />
| Martin Aeschlimann(?)<br />
| <br />
|<br />
|-<br />
| Continuous JUnit integration<br />
| [http://www.eclipse.org/jdt JDT]<br />
| Running a specific set of JUnit sets in the background while editing Java source code would help to detect defects early. The concept is to provide unobstrusive early detection and reporting of changes to source code that negatively affect its agreed upon functionality. Detecting failing tests would mark the changed source code with annotations to see which changes affected the green bar. There are already some (forgotten) bugs: {{bug|12167}} and {{bug|51292}}.<br />
| Benjamin Muskalla<br />
| [mailto:ContinuousJUnitGSoC08@lemmster.de Markus Kuppe] <br />
| [http://groups.csail.mit.edu/pag/continuoustesting/ PAG]<br />
| Sam Ryan, Victoria University Wellington New Zealand. Andrew Murray, Queen's University<br />
|-<br />
| toString generation<br />
| [http://www.eclipse.org/jdt JDT]<br />
| Like the setter/getter, equals and hashcode generator, it would be nice to have a little helper to generate toString methods. See bug {{bug|26070}} and take a look at [http://code.google.com/p/generate-tostring/wiki/Features this plugin] for some ideas. <br />
| Benjamin Muskalla<br />
| [mailto:toStringGSoC08@lemmster.de Markus Kuppe]<br />
| [http://eclipse-jutils.sourceforge.net/ JUtils]<br />
| Michelangelo De Simone, University of Salerno - Italy. Michael Diamond, Dartmouth College. Sam Ryan, Victoria University Wellington New Zealand. Andrew Murray, Queen's University<br />
|-<br />
| JDT and Google Code Search service <br />
| [http://www.eclipse.org/jdt JDT]<br />
| JDT and Google Code Search service integration: a)During debug under JDT source code are often unavailable. Google Code Search Source Provider should provide source code for corresponding class. b)Integrate common JDT search possibilities (for example &quot;Search\References&quot;) with Google Code Search Service (Search not under local projects but in Web too).<br />
| Andrey Vakunov<br />
| <br />
|<br />
| Michelangelo De Simone, University of Salerno - Italy. Andrey Vakunov, Grodno State University<br />
|-<br />
| JDT Debugger Extensibility<br />
| [http://www.eclipse.org/eclipse/debug/jdt/ JDT Debug]<br />
| The JDT debugger provides debugging services and works with any JDPA-compliant JVM. The debugger has greatly matured over the years. Debugging facilities in general have not advanced much, however. Many in the research community would like to extend the capabilities of the JDT debugger without losing (or re-writing) existing functionality. Doing so often requires customizing how the JDT debugger makes use of the Java Debug Interface (JDI). This project would open up the JDI portion of the debugger in such a way that extensibility can be accomplished in a safe manner.<br />
| Jeffrey Czyz<br />
| <br />
| <br />
| Jeffrey Czyz, University at Buffalo<br />
|-<br />
| Implement a search mechanism for BPMN diagrams<br />
| [[STP/BPMN_Component|BPMN]]<br />
| Research indexing of domain specific models persisted in an XML format. Apply this research to indexing and searching BPMN diagrams.<br />
| Antoine Toulme<br />
| [mailto:antoine@lunar-ocean.com Antoine Toulme], [mailto:hmalphettes@intalio.com Hugues Malphettes]<br />
|<br />
|<br />
|-<br />
| Improve the usability of the BPMN editor<br />
| [[STP/BPMN_Component|BPMN]]<br />
| Gather feedback from users of the modeler. Select enhancements to support and develop them.<br />
| Antoine Toulme<br />
| [mailto:antoine@lunar-ocean.com Antoine Toulme], [mailto:hmalphettes@intalio.com Hugues Malphettes]<br />
|<br />
|<br />
|-<br />
| DITA or DocBook Help Content Producer<br />
| [http://www.eclipse.org/eclipse/platform-ua/main.html User Assistance]<br />
| Eclipse User Assistance allows for help content to be dynamically produced. Traditionally, all Eclipse content came in the form of hand-written HTML files. This is so 90's, we should have [http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/extension-points/org_eclipse_help_contentProducer.html help content producers] to produce help content from DITA or DocBook files.<br />
| Chris Aniszczyk, Chris Goldthorpe(?)<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:cgold@us.ibm.com Chris Goldthorpe], [mailto:d_a_carver@yahoo.com David Carver]<br />
| <br />
| Zhiyang Jiang,Chinese Academy of Sciences<br />
|-<br />
| GraphicsZilla<br />
| [http://www.eclipse.org/phoenix Phoenix]<br />
| Eclipse uses Bugzilla in many interesting ways. It uses it in the normal fashion for bug tracking. It also uses a modified version for IP tracking (IPZilla). This proposal is to create a GraphicsZilla to help streamline icon and graphics creation in Eclipse. This would allow not only programmers to contribute their talents to Eclipse. This would also make the process of where icons come from more transparent. See this [http://mea-bloga.blogspot.com/2007/01/graphicszilla-running-man.html blog post] and [https://bugs.eclipse.org/bugs/show_bug.cgi?id=170720 bug] for more info. Note, this would also provide a viewable repository of all the graphics used in Eclipse... which is currently lacking now.<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
|<br />
|-<br />
| Bundles in a Browser<br />
| [http://www.eclipse.org/equinox Equinox]<br />
| Eclipse runs pretty much everywhere these days... in cell phones... devices... desktops... servers... how about a web browser? This proposal is being left open-ended for a purpose. I'd like to see a student figure out how to get Eclipse plug-ins (bundles) installed into a browser like Firefox and then somehow expose working with them via some API... maybe XPCOM or Javascript. That's all ;p<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| PDE fetch script factory for SVN<br />
| [http://www.eclipse.org/pde/ pde]<br />
| So far Eclipse only support CVS in a map file build. Though there exists an SVN impl, it's not EPL<br />
| Markus Kuppe<br />
| If nobody from PDE: [mailto:fetchGSoC08@lemmster.de Markus Kuppe]<br />
| [http://wiki.eclipse.org/index.php/PDEBuild#Building_from_a_subversion_repository SVN impl]<br />
|<br />
|-<br />
| PDE Ménage à trois: Scala and Java<br />
| [http://www.eclipse.org/pde PDE]<br />
| There are some crazy people out there developing Eclipse plug-ins using languages other than Java (how dare they ;p!). Scala is one of these popular languages and there already has been [http://neilbartlett.name/blog/2007/06/13/eclipse-pde-does-scala/ some Eclipse integration] to make this happen. However, PDE suffers from limitations that strictly binds itself to Java... the goal of this project would be to analyze these PDE limitations... and come up with patches or prototyped code to let PDE play better with Scala and other languages.<br />
| Chris Aniszczyk, Neil Bartlett (?)<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Moises Osorio, Instituto Tecnologico de Culiacan, Culiacan Mexico. [mailto:wcoder.mx@gmail.com wcoder.mx@gmail.com]<br />
|-<br />
| Declarative Services (DS) Tooling<br />
| [http://www.eclipse.org/pde PDE]<br />
| Equinox finally has a stable implementation of the Declarative Services specification from OSGi. It's time to tool this beast. Any takers?<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Bartosz Michalik, Poznan University of Technology - Poland. Rafael Oliveira Nóbrega, Universidade Federal de Pernambuco - Brazil<br />
|-<br />
| PDE and JavaScript<br />
| [http://www.eclipse.org/pde PDE]<br />
| PDE allows you to create plug-ins using Java these days. This request is simply for a student to explore the realm of creating plug-ins using JavaScript or other languages. To start simple, I'd start with adding a new schema attribute of type &quot;javascript&quot; to allow plug-in authors to at least plug different languages in. From there, we can explore ideas on &quot;how would you define a view&quot; in such a way that you could take javascript or java code?<br />
| Chris Aniszczyk<br />
| Chris Aniszczyk<br />
| <br />
|<br />
|-<br />
| PDE and Equinox Transforms<br />
| [http://www.eclipse.org/pde PDE]<br />
| Equinox has a new component called transforms that allows you to transform various aspects of a plug-in during runtime. For example, a common use case is to write a transform that modifies some plugin.xml entries to not display certain menu items. This project aims to provide tooling for the transforms component so plugin authors can easily author transforms.<br />
| Chris Aniszczyk<br />
| Chris Aniszczyk<br />
| <br />
| Bartosz Michalik, Poznan University of Technology - Poland<br />
|-<br />
| XpandDoc documentation generator<br />
| [http://www.eclipse.org/modeling/m2t/?project=xpand#xpand M2T/Xpand]<br />
| Xpand is a template language which allows users to comment their templates with a JavaDoc-like syntax. So far, there is no tooling that can use this documentation. The goals of the project are to (1) create an engine that can parse Xpand template comments, (2) create a commandline tool that can generate a JavaDoc-like HTML output for all template comments in a project, and (3) enhance the Xpand text editor to show template comments in a tooltip when hovering over the respective template invocation.<br />
| Peter Friese<br />
| [mailto:peter.friese@itemis.de Peter Friese]<br />
| <br />
|<br />
|-<br />
| Refactorings for Xpand / Xtend / Check<br />
| [http://www.eclipse.org/modeling/m2t/?project=xpand#xpand M2T/Xpand]<br />
| Xpand, Xtend and Check are languages for writing code generators. As your code generator grows, you'll feel the desire to restructure your code generator templates. Currently, no refactoring support is available for Xpand / Xtend / Check. We're looking for a brave student willing to fill this void.<br />
| Peter Friese<br />
| [mailto:peter.friese@itemis.de Peter Friese]<br />
| <br />
|<br />
|-<br />
| Improving the TCP/IP Monitor Plugin <br />
| [http://www.eclipse.org/webtools/server/ WTP_Server_Tools]<br />
| The TCP/IP Monitor plugin available with the Eclipse WTP could use some improvement in several areas. A few suggestions are XML prettyfying, switchable layouts, persistable message logs, tabs for concurrent listeners, proxy mode, HTTP proxy support, simulation of slow connections, documentation and overall UI and usability improvement. IMHO, such additions, alongwith other requirements expressed by developers for this plugin, would make it more popular among the Eclipse Web developer community. <br />
| Suran Jayathilaka<br />
| <br />
| <br />
| Suran Jayathilaka, University Of Colombo School Of Computing - Sri lanka<br />
|-<br />
| Generic unit testing support<br />
| [http://www.eclipse.org/dltk DLTK]?<br />
| JUnit is well integrated at the moment used to test java code. As there are many other projects which need to implement other testing tools, we should be a generalized form of the Junit framework as provide some extension points to build the implementations of other XUnit frameworks on top of it. See {{bug|180884}} for more informations.<br />
| Benjamin Muskalla<br />
| <br />
| <br />
| <br />
|-<br />
| Web-CAT Eclipse plugin<br />
| [http://web-cat.cs.vt.edu/ Web-CAT]<br />
| Web-CAT is a plug-in-based web application that supports electronic submission and automated grading of programming assignments that is presently used by over 30 universities and colleges in the United States and elsewhere. The Web-CAT Grader supports traditional models of automated program grading, and also supports grading of assignments where students do their own testing. Web-CAT is already supported by an Eclipse plugin that allows students to view graders' comments on their assignments directly within the IDE. The aim of this project is to provide support for the graders as well, i.e., to allow professors, teaching assistants, and students to mark up code with comments, assign grades (both freeform and from rubrics), and so on. This will not only make grading easier, but will also help turn Eclipse into a student-friendly code review tool, which we hope will encourage wider use of code reviews in teaching.<br />
| Jason Montojo<br />
| [mailto:jmontojo@ca.ibm.com Jason Montojo], [mailto:gvwilson@cs.utoronto.ca Greg Wilson]<br />
| <br />
| Qi Yang, University of Toronto - Canada<br />
|-<br />
| Feature Diagram plugin<br />
| [https://stanley.cdf.toronto.edu/drproject/consulting-2008-01/featdiag Feature Diagram Prototype]<br />
| &quot;Feature diagrams&quot; are a graphical notation for describing the relationships between class elements that first appeared in Michael Feathers' book &quot;[http://www.amazon.com/Working-Effectively-Legacy-Robert-Martin/dp/0131177052 Working Effectively with Legacy Code]&quot;. A prototype plugin for Eclipse that automatically produces feature diagrams, and allows users to modify their layout, now exists. The aim of this project is to connect that plugin to Eclipse's Java refactorings to allow drag-and-drop manipulation of the visual representations of fields and methods.<br />
| Greg Wilson<br />
| [mailto:gvwilson@cs.utoronto.ca Greg Wilson]<br />
| <br />
|<br />
|-<br />
| XQuery Syntax Editor<br />
| [http://www.eclipse.org/webtools/incubator XSL Tooling / Web Tools Incubator]<br />
| Provide basic support for XQuery syntax editing. Including coloring, validation, content assistance, possibly provide extensions for allowing the selection of which xquery editors can be used for validation. Preference pages for controling XQuery specificat options for generating output. Possible future ability to include debugging support.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| <br />
| Buddhika Laknath, University of Moratuwa - Sri Lanka<br />
|-<br />
| Eclipse single instance<br />
| [http://www.eclipse.org/platform platform]<br />
| More and more applications are eclipse RCP based applications. This is great but each application launch a JVM and load in memory quite often the same plug-ins. Like xul runner for mozilla, it would be interesting to have an &quot;Eclipse runner&quot;. Issues to work on are how to manage several platforms (3.1, 3.2, 3.3, etc..) and share plug-ins (in memory). update : the problem seems to be adressed with p2 provided in eclipse 3.4 M6<br />
| Mariot Chauvin<br />
| Someone from platform project<br />
| <br />
|<br />
|-<br />
| BIRT JPA or JDO Connector<br />
| [http://www.eclipse.org/birt birt]<br />
| A data connector for BIRT Reports that allows BIRT to easily access data via JPA or JDO.<br />
| Markus Kuppe<br />
| The BIRT Project Team <br />
| In [http://wiki.eclipse.org/Google_Summer_of_Code_2007_Ideas GSoC '07] the BIRT team was willing to mentor<br />
|<br />
|-<br />
| BIRT Reports and Connectors for Ad Revenue<br />
| [http://www.eclipse.org/birt birt]<br />
| This one is very business focused -- provide connectors and reports that allow Google customers and users to build their own reports on their Google Ad Revenue etc.<br />
| Kevin Peters<br />
| The BIRT Project Team <br />
| In [http://wiki.eclipse.org/Google_Summer_of_Code_2007_Ideas GSoC '07] the BIRT team was willing to mentor<br />
| [mailto:kevjay@gmail.com Kevin Peters], University of Kansas<br />
|-<br />
| Barcode Support<br />
| [http://www.eclipse.org/birt birt]<br />
| See https://bugs.eclipse.org/bugs/show_bug.cgi?id=149928 for additional details.<br />
| Kevin Peters<br />
| The BIRT Project Team <br />
| <br />
| [mailto:kevjay@gmail.com Kevin Peters], University of Kansas<br />
|-<br />
| JET Transforms/Wizards for creating project meta <br />
| [[Modeling Project Releng|Modeling Releng]]? [[Nexus_Project|Nexus]]?<br />
| Starting a new project requires a lot of duplicative code &amp; metadata: .doc plugins/features, .examples plugins/features, .test examples/features, .sdk feature, .releng project. Being able to generate this from JET templates via a wizard would make it much easier to get a project up and running -- and then get a PDE build that much easier, too.<br />
| [[User:Nickb|Nick Boldt]] <br />
| [[User:Nickb|Nick Boldt]]<br />
| <br />
| Michael Robb, Mount Royal College<br />
|-<br />
| Rich text editing and wiki integration<br />
| [http://eclipse.org/mylyn Mylyn]<br />
| Provide wiki integration. This involves providing mechanisms for rich editing and viewing of task repository comments in wiki format, potentially adding wiki editing. see also [[Mylyn/Contribution_Ideas|More ideas for Mylyn projects]]<br />
| Steffen Pingel<br />
| Steffen Pingel<br />
| There are at least two projects already providing wiki editing in Eclipse, albeit without Mylyn integration: [http://www.matheclipse.org/en/Eclipse_Wikipedia_Editor Wikipedia Editor], [http://eclipsewiki.sourceforge.net/ Wiki Editor]. &lt;/[[User:nickb]]&gt;<br />
| Jingwen 'Owen' Ou, The University of British Columbia<br />
|-<br />
| Java based Abstract Syntax Tree (AST) generator for Ada Programs<br />
| [http://eclipse.org/hibachi Hibachi]<br />
| An Abstract Syntax Tree is the base framework for many powerful tools of a language IDE. For Hibachi, the Ada Development Toolkit project (like JDT or CDT), the presence of an AST would allow many more powerful IDE features, and improve those already in place (like refactoring, code folding, reformating).<br />
| Tom Grosman<br />
| Tom Grosman, Adam Haselhuhn<br />
| For a good idea about ASTs in Eclipse, see [http://www.eclipse.org/articles/article.php?file=Article-JavaCodeManipulation_AST/index.html JDT AST]<br />
|<br />
|-<br />
| Feature implementation for Ada Development Toolkit<br />
| [http://eclipse.org/hibachi Hibachi]<br />
| Implementation of new or extension of existing Hibachi funtionality. Depending on student interest and background, features may include but are not limited to code folding, Ada body generation, object tooltips display, dependency graphs and trees, code fixing, etc.<br />
| Tom Grosman<br />
| Tom Grosman, Adam Haselhuhn<br />
|<br />
|<br />
|-<br />
| XML+CSS = IFigure<br />
| [http://www.eclipse.org/gef/ GEF/Draw2d]<br />
| Adding possibility to generate draw2d figures from XML and CSS descriptors (for example HTML subset and CSS). <br />
| Andrey Vakunov<br />
| [mailto:anthonyh_at_ca.ibm.com Anthony Hunter]<br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| Equinox Console and script language integration<br />
| [http://www.eclipse.org/equinox/ Equinox]<br />
| Integrate any script language (Groovy or JRuby or Bash :-) ) in OSGi console. Add possibilities to write in OSGi console &quot;s grep &lt;my-service-name&gt;&quot;<br />
| Andrey Vakunov<br />
| <br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| Buddy list for task assignments and CCs<br />
| [http://www.eclipse.org/mylyn/ Mylyn]<br />
| Enhance Mylyn's Rich Client Bugzilla to have an address book for CC's<br />
| Jingwen 'Owen' Ou<br />
| <br />
| Normally people work on projects with similar teammates and it would be nice to use previous queries to propose CCs. Details in [https://bugs.eclipse.org/bugs/show_bug.cgi?id=152415 bug 152415]<br />
|<br />
|-<br />
| Enhanced Eclipse search<br />
| [http://www.eclipse.org/platform platform]<br />
| Eclipse search plugin: provide an enhanced Eclipse search: better, faster, more relevant. Think Lucene or opengrok inside Eclipse.<br />
| Philippe Ombredanne<br />
| [mailto:philippe.ombredanne_at_eclipse.org Philippe Ombredanne]<br />
| <br />
| Jeffrey Czyz, University at Buffalo. Çağatay Çallı, Middle East Technical University - Turkey. Suran Jayathilaka, University Of Colombo School Of Computing - Sri lanka<br />
|-<br />
| Eclipse-Moodle integration<br />
| <br />
| The idea of this project is to provide an Eclipse plugin for the Moodle CMS e-learning system. This tool will enable students participating in online courses to import and export resources (projects or other materials) directly from an Eclipse workspace. Integration with Mylyn (for managing tasks assigned in such courses) could be an additional feature. <br />
| Aleksandra Woźniak<br />
| <br />
| <br />
| Aleksandra Woźniak, Poznan University of Technology &amp; Adam Mickiewicz University - Poznan, Poland<br />
|-<br />
| Use case editor<br />
| [http://www.eclipse.org/proposals/ormf/ ORMF]?<br />
| Use case editor: for writing use cases in a textual form, managing sets of use cases and (maybe) generating UML diagrams as well as html and pdf files from them. <br />
| Aleksandra Woźniak<br />
| <br />
| <br />
| Aleksandra Woźniak, Poznan University of Technology &amp; Adam Mickiewicz University - Poznan, Poland<br />
|-<br />
| Augment p2 dependencies<br />
| [http://wiki.eclipse.org/Equinox_p2 p2]<br />
| In its first release, p2 limited its expression of dependencies to something equivalent to what most other package management system proposed (A package can say that it requires or conflicts with others). However several provisioning scenarios could benefit from more powerful inter-package dependencies (e.g, when mylyn and SVN are installed, install the connector). The goal of this project is to advance p2 by providing more powerful inter-package dependencies (and their mapping to the PB solver). Directions are: * more complex implications, * mapping filters into the solver, * expressing generic capabilities / dependencies (e.g. putting requirements on memory size, hard drive size, etc), * representing affinities between packages (see the OSGi notion of uses clauses) , * finding a way to automatically pick the most applicable line-up / recommendations<br />
| <br />
| [mailto:pascal_rapicault_at_ca.ibm.com Pascal Rapicault], Daniel Le Berre<br />
| <br />
|<br />
|-<br />
|Transformation from CIM to PIM<br />
| <br />
|This project aims to create a module for additional Omondo, allowing transformations from computation independent model (CIM) represented by activity diagram,to a platform independent model (PIM) represented by class diagram and use cases, based in model driven architecture (MDA) and UML. The project ([https://eclipsecon.greenmeetingsystems.com/submissions/view/609 paper]) was submitted to eclipsecon 2008.<br />
| Ernesto Suarez Lopez<br />
| <br />
| <br />
|<br />
|-<br />
|Custom menu positioning for Eclipse Monkey scripts<br />
|[http://www.eclipse.org/dash/ Dash]<br />
|Eclipse Monkey scripts must currently reside under the Scripts menu, which doesn't integrate them well with existing functionality. When customizing a perspective, make it possible to add Monkey scripts to any menu (on the menu bar) that the user decides, both using specifiers in the script and through the UI.<br />
| [[User:Nitind|Nitin Dahyabhai]]<br />
| <br />
| <br />
|<br />
|-<br />
| Customizable display of objects in CDT debugger<br />
| [[CDT]]<br />
| Variables view of CDT debugger currently displays object variables as trees with each data member represented by a separate node. Some types, like std::string, have a complex internal structure, but a simple meaning. Having to open multiple levels of node hierarchy to see the contents of a string is very annoying. In most cases user does not care about all details of the string object and just wants to see the contents of the string. This problem can be solved by supporting user-defined auto expansion rules defining display formats for commonly used types. See {{bug|155331}} for more information.<br />
| Sergey Prigogin<br />
| [mailto:eclipse.sprigogin@gmail.com Sergey Prigogin]<br />
| <br />
|<br />
|-<br />
| CDT Windows Debugger<br />
| [[CDT]]<br />
| The CDT provides a front end to many debuggers in order to unify the debug UI around the Debug Platform augmented by a number of C/C++ specific debug views. We currently support the GNU debugger on Windows in parallel with build support for the GCC tool chain. We'd also like to support integration with the Windows SDK. We have Visual C++ build support. This project would be to add in Windows Debugger support.<br />
| Doug Schaefer<br />
| [mailto:doug.schaefer_at_windriver.com Doug Schaefer]<br />
| <br />
|<br />
|-<br />
| AIM Provider<br />
| [http://www.eclipse.org/ecf ECF]<br />
| ECF allows messaging protocols to be plugged in as providers. AIM isn't currently supported. The student can choose to implement the AIM (OSCAR) protocol themselves, or wrap an existing Java library like JOscar.<br />
| Chris Aniszczyk, Remy Suen<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:remy.suen@gmail.com Remy Suen]<br />
| <br />
| Michael Berry, University of Kent, Canterbury, UK. Çağatay Çallı, Middle East Technical University - Turkey. Tharindu Mathew, University of Moratuwa Sri Lanka<br />
|-<br />
| IM for Eclipse<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Developers work in project teams, and team members need to communicate. An IM program integrated into Eclipse itself will be useful for this, that's optimized to transfer large amounts of code which usual IM programs limit and also allows developers to be grouped accordingly.<br />
| Tharindu Mathew<br />
| <br />
| I think it's worth to take a look at the [http://www.eclipse.org/ecf ECF] project. Most of the features are already available there.<br />
| Michael Berry, University of Kent, Canterbury, UK. Michelangelo De Simone, University of Salerno - Italy. Michael Diamond, Dartmouth College. Sam Ryan, Victoria University Wellington New Zealand<br />
|-<br />
| Remote Service Deployment Tool<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Take the R-OSGi Deployment Tool idea ([http://www.iks.inf.ethz.ch/publications/files/etx07.pdf paper]) and the prototype and port it to a new platform (PDE projects, ECF remote services, p2 for deployment) so that it can be easily used within Eclipse to deploy a distributed OSGi application. <br />
| Jan S. Rellermeyer<br />
| [mailto:rellermeyer_at_inf.ethz.ch Jan S. Rellermeyer]<br />
| <br />
|<br />
|-<br />
| VNC over ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Virtual Network Console is a popular screen sharing technology. It would be useful to have an implementation of VNC protocol for ECF. See [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01452.html mailing list entry by Marek Zawirski] for a more detailed description of idea.<br />
| Scott Lewis<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe<br />
| <br />
|<br />
|-<br />
| Google Calendar access using ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| [http://calendar.google.com Google Calendar] is a popular and open calendaring system. It would be useful to have an integrated ECF-based calendar for Eclipse. See [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01452.html mailing list entry by Marek Zawirski] for a more detailed description of idea.<br />
| Scott Lewis<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe<br />
| <br />
|<br />
|-<br />
| SIP VoIP implementation for ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| SIP is a popular signaling protocol, widely used for setting up VoIP calls with 2 or more participiants. This project aims to create working SIP/VoIP implementation, that will implement existing [http://wiki.eclipse.org/index.php/VOIP ECF Call API]. Implementation should allow VoIP calls using SIP from Eclipse and will make Eclipse more functional softphone with another protocol implemented (already working implementations are jingle and Skype).<br />
| Marek Zawirski<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe?<br />
| <br />
| Marek Zawirski, Poznan University of Technology - Poland<br />
|-<br />
| Further ECF and Mylyn integration<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Improvement of distributed development process is common goal of Mylyn and ECF projects. There have been [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01195.html some efforts] of integrating these projects. However, there are still some fields where integration could be further extended. This especially covers contacting easily with other developers when doing issue-oriented development with Mylyn. Goal of this project is to extend integration between Mylyn and ECF to allow easy task-oriented communication or task exchange.<br />
| Marek Zawirski<br />
| Remy Suen, Scott Lewis, Chris Aniszczyk, Markus Kuppe?<br />
| <br />
|<br />
|-<br />
| Patch file editor with an outline view<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Juggling patches is the practice of every day work for all Eclipse developers. The goal of the project is to create a patch file editor with an outline view. The outline view would allow not only browsing the patch, but also navigating to included files, applying only selected hunks and so on.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Details and initial code in {{bug|190418}}.<br />
|<br />
|-<br />
| &quot;Compare With&quot; dialog<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| The goal of the project is to add a dialog allowing the user to select resources to compare. At this momement the user need to select 2 or 3 files with ctrl-clicking. This is not always as easy and reliable as it seems. The dialog would allow browsing the workspace or file system to locate the resource for comparison. Drag'n'dropping would be also very useful.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| See bug {{bug|224562}} for details.<br />
|<br />
|-<br />
| Patches comparison<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Juggling patches is the practice of every day work for all Eclipse developers. There are certain use cases when the user would like to compare two patches against each other. The problem is that straight comparison (two patches alone) is not enough, what we need here is comparing diffs in context.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Details in {{bug|198149}} and {{bug|213043}}.<br />
|<br />
|-<br />
| diff from any comparison<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Generating a patch from any comparison is a very common request. It comes in many flavours: users would like to save a patch while comparing two files, two version in local history, current version and a one with a tag and so on. One thing they have in common is the ability to create a patch from actual comparison. It would be definietly a nice feature to have.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Some of the bugs {{bug|71374}}, {{bug|103681}}, {{bug|151980}}...<br />
|<br />
|-<br />
| Novel Rich Client<br />
| [http://www.eclipsemozilla.org EclipseMozilla.org]<br />
| Use the EclipseMozilla browser component and find new ways to program rich client applications. Especially, combining Eclipse technology with HTML and Flash is of interest. You should mesh Eclipse technology with web technologies to create a new unique way for rich client programming. This is a very innovative task. For more info contact me.<br />
| Thomas Derflinger<br />
| [mailto:tderflinger@gmail.com Thomas Derflinger]<br />
|<br />
| <br />
|-<br />
| Split File Editor<br />
| [http://www.eclipse.org/eclipse/platform-text/ Platform Text]<br />
| Implement a split file editor functionality: bug [https://bugs.eclipse.org/bugs/show_bug.cgi?id=8009 8009], the most voted-for bug ever in the entire Eclipse universe with &gt;180 votes<br />
| Nikolay Botev<br />
| <br />
| <br />
| Nikolay Botev, San Jose State University - San Jose, California, USA.<br />
|-<br />
| Office-2007-ribbon-inspired UI<br />
| [http://www.eclipse.org/eclipse/platform-ui/ Platform UI]<br />
| Toolbars and Menus are so 20th century (extremely outdated) and un-user-friendly. Eclipse's menus are particularly overcrowded and hard to manage. This project would be a bold endeavour - a wild experiment in UI innovation. The idea is to replace the menu and toolbars with an Office 2007-ribbon-inspired structure. Here is a tentative design of the new UI. The structure consists of top-level tabs that correspond to Eclipse IDE perspectives. Under the current tab are groups of buttons with labels on the bottom (like Office 2007). The groups correspond to the current top-level menus. Labels display the full menu on click (unlike Office 2007). The buttons in each group represent a list of relevant actions determined based on some intelligent mix of most-frequently- and most-recently-used statistics. The structure has enough room for 3 rows of buttons in small format with small (16x16) icon and optional label to the right (like Office 2007). The most relevant buttons are displayed in large format when possible, filling all three rows, with a large icon and label below. The structure automatically expands and shrinks based on window size to take advantage of all available space on modern high-resolution/wide-screen displays (like Office 2007).<br />
| Nikolay Botev<br />
| <br />
| <br />
| Nikolay Botev, San Jose State University - San Jose, California, USA.<br />
|-<br />
| Equinox and SAT4J<br />
| [http://www.eclipse.org/equinox/ Equinox]<br />
| Do you like difficult problems of solving resolver problems at runtime? If so... this project is for you. The new provisioning work at Eclipse (p2) is using a new SAT Solver (SAT4J) to do complex resolver computations. This project will explore using SAT4J as the replacement for the current Equinox runtime resolver.<br />
| Chris Aniszczyk<br />
| [mailto:hargrave@us.ibm.com BJ Hargrave], [mailto:tjwatson@us.ibm.com Thomas Watson], [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| I think this should be more general. It should be about using constraint solver to replace the equinox resolver. Another open-source implementation of a solver is [http://choco-solver.net/index.php?title=Main_Page Choco]<br />
|<br />
|-<br />
| ECF and Yahoo<br />
| [http://www.eclipse.org/ecf/ ECF]<br />
| Implement a EPL'd version of the Yahoo messaging protocol and than code an ECF provider implementation for that. The baseline goal of this project is to just implement messanging for Yahoo... things like file transfer can come later or if there's time.<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Michael Berry, University of Kent, Canterbury, UK.<br />
|-<br />
| BPMN/BPEL to SCA model transformations for STP<br />
| [http://www.eclipse.org/stp/ STP]<br />
| This project will leverage and extend the existing STP Intermediate Model (STP-IM) in order to provide better support for transformations between process editors (BPMN and BPEL) and architecture editors (SCA in particular, potentially EID as well). The contribution would be of great importance to SOA developers and would therefore be an important incentive for the community adoption of the Eclipse STP. <br />
| Juan Cadavid<br />
| [mailto:adrian.mos@inria.fr Adrian Mos]<br />
|<br />
| Juan Cadavid, Universidad EAFIT, Medellín Colombia.<br />
|-<br />
| Support for StyledText<br />
| [http://www.eclipse.org/rap RAP]<br />
| One of the most asked features of RAP is the StyledText widget. Not only to show funny colored texts in your application but it's one of the most complex widgets to implement. But having at least some basic API working enabled RAP to port other parts of RCP to the web based on the new StyledText widget. More information about StyledText can be found [http://help.eclipse.org/stable/nftopic/org.eclipse.platform.doc.isv/reference/api/org/eclipse/swt/custom/StyledText.html here]. <br />
| Benjamin Muskalla<br />
| Frank Appel, Rüdiger Herrmann<br />
|<br />
| <br />
|-<br />
| Theme Editor<br />
| [http://www.eclipse.org/rap RAP]<br />
| Theming allows RAP application developers to give their applications a custom style. Currently, a theme must be defined as a .properties file. As the theming capabilities improve, these files are getting more and more complex. A theme editor should provide an easy-to-use user interface for defining themes. It could be shipped as part of the RAP tooling. For more information on the RAP theming, see the [http://help.eclipse.org/help33/index.jsp?topic=/org.eclipse.rap.help/help/html/advanced/theming.html online help].<br />
| Ralf Sternberg<br />
| [mailto:rsternberg@innoopract.com Ralf Sternberg]<br />
| <br />
| Mathias Schaeffner, Coventry University, UK<br />
|-<br />
| RAP product file<br />
| [http://www.eclipse.org/rap/ RAP]<br />
| <br />
| Balazs Brinkus<br />
| <br />
| <br />
| Balazs Brinkus, University of Szeged, Hungary<br />
|}<br />
<br />
More ideas can be found at [http://eclipse-wiki.info/GoogleSummerOfCode2007 Eclipse-Wiki], [[Mylyn Contribution Ideas|Mylyn Contribution Ideas page]], and [[Google Summer of Code 2007 Ideas|Google Summer of Code 2007 ideas]].<br />
<br />
== Unmatched Students ==<br />
Yifei Ma, Virginia Tech, Equinox<br />
<br />
Jingwen 'Owen' Ou, The University of British Columbia, Mylyn: dynamic traces and buddy list</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=Google_Summer_of_Code_2008_Ideas&diff=89587Google Summer of Code 2008 Ideas2008-03-29T03:25:18Z<p>Pombredanne.nexb.com: </p>
<hr />
<div>== Rules ==<br />
* Be creative<br />
* Be specific: what do you want to be implemented<br />
* If you are willing to mentors those ideas, add your name and email to the idea.<br />
* Ii is ok to have a project idea without parent project<br />
* If you're an interested student, add your name and email next to the idea. It is ok to have several students interested by one idea.<br />
<br />
== Ideas ==<br />
<br />
{| border=&quot;1&quot; cellpadding=&quot;2&quot; width=&quot;100%&quot;<br />
!width=&quot;20%&quot;|Title<br />
!width=&quot;5%&quot; align=&quot;center&quot;|Project<br />
!width=&quot;40%&quot;|Abstract - links to details/bugs/etc<br />
!width=&quot;10%&quot;|Reporter<br />
!width=&quot;10%&quot;|Possible mentor(s)<br />
!width=&quot;15%&quot;|Comments<br />
!width=&quot;10%&quot;|Potential students(s)<br />
|-<br />
| Support for user-defined refactorings in JDT<br />
| [http://www.eclipse.org/jdt JDT]<br />
| The idea is to produce a pattern language, rules engine, and user interface to allow the Java developer to perform queries n and make safe modifications of their code code. It's a superset of the current refactoring because ideally current refactorings could be expressed this new system, forming a nice set of initial examples. he users could then adapt those rules to their own purposes or come up with completely new ones. See {{bug|144642}} for more informations.<br />
| Ed Burnette<br />
| Martin Aeschlimann(?)<br />
| <br />
|<br />
|-<br />
| Continuous JUnit integration<br />
| [http://www.eclipse.org/jdt JDT]<br />
| Running a specific set of JUnit sets in the background while editing Java source code would help to detect defects early. The concept is to provide unobstrusive early detection and reporting of changes to source code that negatively affect its agreed upon functionality. Detecting failing tests would mark the changed source code with annotations to see which changes affected the green bar. There are already some (forgotten) bugs: {{bug|12167}} and {{bug|51292}}.<br />
| Benjamin Muskalla<br />
| [mailto:ContinuousJUnitGSoC08@lemmster.de Markus Kuppe] <br />
| [http://groups.csail.mit.edu/pag/continuoustesting/ PAG]<br />
| Sam Ryan, Victoria University Wellington New Zealand. Andrew Murray, Queen's University<br />
|-<br />
| toString generation<br />
| [http://www.eclipse.org/jdt JDT]<br />
| Like the setter/getter, equals and hashcode generator, it would be nice to have a little helper to generate toString methods. See bug {{bug|26070}} and take a look at [http://code.google.com/p/generate-tostring/wiki/Features this plugin] for some ideas. <br />
| Benjamin Muskalla<br />
| [mailto:toStringGSoC08@lemmster.de Markus Kuppe]<br />
| [http://eclipse-jutils.sourceforge.net/ JUtils]<br />
| Michelangelo De Simone, University of Salerno - Italy. Michael Diamond, Dartmouth College. Sam Ryan, Victoria University Wellington New Zealand. Andrew Murray, Queen's University<br />
|-<br />
| JDT and Google Code Search service <br />
| [http://www.eclipse.org/jdt JDT]<br />
| JDT and Google Code Search service integration: a)During debug under JDT source code are often unavailable. Google Code Search Source Provider should provide source code for corresponding class. b)Integrate common JDT search possibilities (for example &quot;Search\References&quot;) with Google Code Search Service (Search not under local projects but in Web too).<br />
| Andrey Vakunov<br />
| <br />
|<br />
| Michelangelo De Simone, University of Salerno - Italy. Andrey Vakunov, Grodno State University<br />
|-<br />
| JDT Debugger Extensibility<br />
| [http://www.eclipse.org/eclipse/debug/jdt/ JDT Debug]<br />
| The JDT debugger provides debugging services and works with any JDPA-compliant JVM. The debugger has greatly matured over the years. Debugging facilities in general have not advanced much, however. Many in the research community would like to extend the capabilities of the JDT debugger without losing (or re-writing) existing functionality. Doing so often requires customizing how the JDT debugger makes use of the Java Debug Interface (JDI). This project would open up the JDI portion of the debugger in such a way that extensibility can be accomplished in a safe manner.<br />
| Jeffrey Czyz<br />
| <br />
| <br />
| Jeffrey Czyz, University at Buffalo<br />
|-<br />
| Implement a search mechanism for BPMN diagrams<br />
| [[STP/BPMN_Component|BPMN]]<br />
| Research indexing of domain specific models persisted in an XML format. Apply this research to indexing and searching BPMN diagrams.<br />
| Antoine Toulme<br />
| [mailto:antoine@lunar-ocean.com Antoine Toulme], [mailto:hmalphettes@intalio.com Hugues Malphettes]<br />
|<br />
|<br />
|-<br />
| Improve the usability of the BPMN editor<br />
| [[STP/BPMN_Component|BPMN]]<br />
| Gather feedback from users of the modeler. Select enhancements to support and develop them.<br />
| Antoine Toulme<br />
| [mailto:antoine@lunar-ocean.com Antoine Toulme], [mailto:hmalphettes@intalio.com Hugues Malphettes]<br />
|<br />
|<br />
|-<br />
| AIM Provider<br />
| [http://www.eclipse.org/ecf ECF]<br />
| ECF allows messaging protocols to be plugged in as providers. AIM isn't currently supported. The student can choose to implement the AIM (OSCAR) protocol themselves, or wrap an existing Java library like JOscar.<br />
| Chris Aniszczyk, Remy Suen<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:remy.suen@gmail.com Remy Suen]<br />
| <br />
| Michael Berry, University of Kent, Canterbury, UK. Çağatay Çallı, Middle East Technical University - Turkey. Tharindu Mathew, University of Moratuwa Sri Lanka<br />
|-<br />
| DITA or DocBook Help Content Producer<br />
| [http://www.eclipse.org/eclipse/platform-ua/main.html User Assistance]<br />
| Eclipse User Assistance allows for help content to be dynamically produced. Traditionally, all Eclipse content came in the form of hand-written HTML files. This is so 90's, we should have [http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/extension-points/org_eclipse_help_contentProducer.html help content producers] to produce help content from DITA or DocBook files.<br />
| Chris Aniszczyk, Chris Goldthorpe(?)<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:cgold@us.ibm.com Chris Goldthorpe], [mailto:d_a_carver@yahoo.com David Carver]<br />
| <br />
| Zhiyang Jiang,Chinese Academy of Sciences<br />
|-<br />
| GraphicsZilla<br />
| [http://www.eclipse.org/phoenix Phoenix]<br />
| Eclipse uses Bugzilla in many interesting ways. It uses it in the normal fashion for bug tracking. It also uses a modified version for IP tracking (IPZilla). This proposal is to create a GraphicsZilla to help streamline icon and graphics creation in Eclipse. This would allow not only programmers to contribute their talents to Eclipse. This would also make the process of where icons come from more transparent. See this [http://mea-bloga.blogspot.com/2007/01/graphicszilla-running-man.html blog post] and [https://bugs.eclipse.org/bugs/show_bug.cgi?id=170720 bug] for more info. Note, this would also provide a viewable repository of all the graphics used in Eclipse... which is currently lacking now.<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
|<br />
|-<br />
| Bundles in a Browser<br />
| [http://www.eclipse.org/equinox Equinox]<br />
| Eclipse runs pretty much everywhere these days... in cell phones... devices... desktops... servers... how about a web browser? This proposal is being left open-ended for a purpose. I'd like to see a student figure out how to get Eclipse plug-ins (bundles) installed into a browser like Firefox and then somehow expose working with them via some API... maybe XPCOM or Javascript. That's all ;p<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| PDE fetch script factory for SVN<br />
| [http://www.eclipse.org/pde/ pde]<br />
| So far Eclipse only support CVS in a map file build. Though there exists an SVN impl, it's not EPL<br />
| Markus Kuppe<br />
| If nobody from PDE: [mailto:fetchGSoC08@lemmster.de Markus Kuppe]<br />
| [http://wiki.eclipse.org/index.php/PDEBuild#Building_from_a_subversion_repository SVN impl]<br />
|<br />
|-<br />
| PDE Ménage à trois: Scala and Java<br />
| [http://www.eclipse.org/pde PDE]<br />
| There are some crazy people out there developing Eclipse plug-ins using languages other than Java (how dare they ;p!). Scala is one of these popular languages and there already has been [http://neilbartlett.name/blog/2007/06/13/eclipse-pde-does-scala/ some Eclipse integration] to make this happen. However, PDE suffers from limitations that strictly binds itself to Java... the goal of this project would be to analyze these PDE limitations... and come up with patches or prototyped code to let PDE play better with Scala and other languages.<br />
| Chris Aniszczyk, Neil Bartlett (?)<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Moises Osorio, Instituto Tecnologico de Culiacan, Culiacan Mexico. [mailto:wcoder.mx@gmail.com wcoder.mx@gmail.com]<br />
|-<br />
| Declarative Services (DS) Tooling<br />
| [http://www.eclipse.org/pde PDE]<br />
| Equinox finally has a stable implementation of the Declarative Services specification from OSGi. It's time to tool this beast. Any takers?<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Bartosz Michalik, Poznan University of Technology - Poland. Rafael Oliveira Nóbrega, Universidade Federal de Pernambuco - Brazil<br />
|-<br />
| PDE and JavaScript<br />
| [http://www.eclipse.org/pde PDE]<br />
| PDE allows you to create plug-ins using Java these days. This request is simply for a student to explore the realm of creating plug-ins using JavaScript or other languages. To start simple, I'd start with adding a new schema attribute of type &quot;javascript&quot; to allow plug-in authors to at least plug different languages in. From there, we can explore ideas on &quot;how would you define a view&quot; in such a way that you could take javascript or java code?<br />
| Chris Aniszczyk<br />
| Chris Aniszczyk<br />
| <br />
|<br />
|-<br />
| PDE and Equinox Transforms<br />
| [http://www.eclipse.org/pde PDE]<br />
| Equinox has a new component called transforms that allows you to transform various aspects of a plug-in during runtime. For example, a common use case is to write a transform that modifies some plugin.xml entries to not display certain menu items. This project aims to provide tooling for the transforms component so plugin authors can easily author transforms.<br />
| Chris Aniszczyk<br />
| Chris Aniszczyk<br />
| <br />
| Bartosz Michalik, Poznan University of Technology - Poland<br />
|-<br />
| IM for Eclipse<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Developers work in project teams, and team members need to communicate. An IM program integrated into Eclipse itself will be useful for this, that's optimized to transfer large amounts of code which usual IM programs limit and also allows developers to be grouped accordingly.<br />
| Tharindu Mathew<br />
| <br />
| I think it's worth to take a look at the [http://www.eclipse.org/ecf ECF] project. Most of the features are already available there.<br />
| Michael Berry, University of Kent, Canterbury, UK. Michelangelo De Simone, University of Salerno - Italy. Michael Diamond, Dartmouth College. Sam Ryan, Victoria University Wellington New Zealand<br />
|-<br />
| XpandDoc documentation generator<br />
| [http://www.eclipse.org/modeling/m2t/?project=xpand#xpand M2T/Xpand]<br />
| Xpand is a template language which allows users to comment their templates with a JavaDoc-like syntax. So far, there is no tooling that can use this documentation. The goals of the project are to (1) create an engine that can parse Xpand template comments, (2) create a commandline tool that can generate a JavaDoc-like HTML output for all template comments in a project, and (3) enhance the Xpand text editor to show template comments in a tooltip when hovering over the respective template invocation.<br />
| Peter Friese<br />
| [mailto:peter.friese@itemis.de Peter Friese]<br />
| <br />
|<br />
|-<br />
| Refactorings for Xpand / Xtend / Check<br />
| [http://www.eclipse.org/modeling/m2t/?project=xpand#xpand M2T/Xpand]<br />
| Xpand, Xtend and Check are languages for writing code generators. As your code generator grows, you'll feel the desire to restructure your code generator templates. Currently, no refactoring support is available for Xpand / Xtend / Check. We're looking for a brave student willing to fill this void.<br />
| Peter Friese<br />
| [mailto:peter.friese@itemis.de Peter Friese]<br />
| <br />
|<br />
|-<br />
| Improving the TCP/IP Monitor Plugin <br />
| [http://www.eclipse.org/webtools/server/ WTP_Server_Tools]<br />
| The TCP/IP Monitor plugin available with the Eclipse WTP could use some improvement in several areas. A few suggestions are XML prettyfying, switchable layouts, persistable message logs, tabs for concurrent listeners, proxy mode, HTTP proxy support, simulation of slow connections, documentation and overall UI and usability improvement. IMHO, such additions, alongwith other requirements expressed by developers for this plugin, would make it more popular among the Eclipse Web developer community. <br />
| Suran Jayathilaka<br />
| <br />
| <br />
| Suran Jayathilaka, University Of Colombo School Of Computing - Sri lanka<br />
|-<br />
| Generic unit testing support<br />
| [http://www.eclipse.org/dltk DLTK]?<br />
| JUnit is well integrated at the moment used to test java code. As there are many other projects which need to implement other testing tools, we should be a generalized form of the Junit framework as provide some extension points to build the implementations of other XUnit frameworks on top of it. See {{bug|180884}} for more informations.<br />
| Benjamin Muskalla<br />
| <br />
| <br />
| <br />
|-<br />
| Web-CAT Eclipse plugin<br />
| [http://web-cat.cs.vt.edu/ Web-CAT]<br />
| Web-CAT is a plug-in-based web application that supports electronic submission and automated grading of programming assignments that is presently used by over 30 universities and colleges in the United States and elsewhere. The Web-CAT Grader supports traditional models of automated program grading, and also supports grading of assignments where students do their own testing. Web-CAT is already supported by an Eclipse plugin that allows students to view graders' comments on their assignments directly within the IDE. The aim of this project is to provide support for the graders as well, i.e., to allow professors, teaching assistants, and students to mark up code with comments, assign grades (both freeform and from rubrics), and so on. This will not only make grading easier, but will also help turn Eclipse into a student-friendly code review tool, which we hope will encourage wider use of code reviews in teaching.<br />
| Jason Montojo<br />
| [mailto:jmontojo@ca.ibm.com Jason Montojo], [mailto:gvwilson@cs.utoronto.ca Greg Wilson]<br />
| <br />
| Qi Yang, University of Toronto - Canada<br />
|-<br />
| Feature Diagram plugin<br />
| [https://stanley.cdf.toronto.edu/drproject/consulting-2008-01/featdiag Feature Diagram Prototype]<br />
| &quot;Feature diagrams&quot; are a graphical notation for describing the relationships between class elements that first appeared in Michael Feathers' book &quot;[http://www.amazon.com/Working-Effectively-Legacy-Robert-Martin/dp/0131177052 Working Effectively with Legacy Code]&quot;. A prototype plugin for Eclipse that automatically produces feature diagrams, and allows users to modify their layout, now exists. The aim of this project is to connect that plugin to Eclipse's Java refactorings to allow drag-and-drop manipulation of the visual representations of fields and methods.<br />
| Greg Wilson<br />
| [mailto:gvwilson@cs.utoronto.ca Greg Wilson]<br />
| <br />
|<br />
|-<br />
| XQuery Syntax Editor<br />
| [http://www.eclipse.org/webtools/incubator XSL Tooling / Web Tools Incubator]<br />
| Provide basic support for XQuery syntax editing. Including coloring, validation, content assistance, possibly provide extensions for allowing the selection of which xquery editors can be used for validation. Preference pages for controling XQuery specificat options for generating output. Possible future ability to include debugging support.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| <br />
| Buddhika Laknath, University of Moratuwa - Sri Lanka<br />
|-<br />
| Eclipse single instance<br />
| [http://www.eclipse.org/platform platform]<br />
| More and more applications are eclipse RCP based applications. This is great but each application launch a JVM and load in memory quite often the same plug-ins. Like xul runner for mozilla, it would be interesting to have an &quot;Eclipse runner&quot;. Issues to work on are how to manage several platforms (3.1, 3.2, 3.3, etc..) and share plug-ins (in memory). update : the problem seems to be adressed with p2 provided in eclipse 3.4 M6<br />
| Mariot Chauvin<br />
| Someone from platform project<br />
| <br />
|<br />
|-<br />
| BIRT JPA or JDO Connector<br />
| [http://www.eclipse.org/birt birt]<br />
| A data connector for BIRT Reports that allows BIRT to easily access data via JPA or JDO.<br />
| Markus Kuppe<br />
| The BIRT Project Team <br />
| In [http://wiki.eclipse.org/Google_Summer_of_Code_2007_Ideas GSoC '07] the BIRT team was willing to mentor<br />
|<br />
|-<br />
| BIRT Reports and Connectors for Ad Revenue<br />
| [http://www.eclipse.org/birt birt]<br />
| This one is very business focused -- provide connectors and reports that allow Google customers and users to build their own reports on their Google Ad Revenue etc.<br />
| Kevin Peters<br />
| The BIRT Project Team <br />
| In [http://wiki.eclipse.org/Google_Summer_of_Code_2007_Ideas GSoC '07] the BIRT team was willing to mentor<br />
| [mailto:kevjay@gmail.com Kevin Peters], University of Kansas<br />
|-<br />
| Barcode Support<br />
| [http://www.eclipse.org/birt birt]<br />
| See https://bugs.eclipse.org/bugs/show_bug.cgi?id=149928 for additional details.<br />
| Kevin Peters<br />
| The BIRT Project Team <br />
| <br />
| [mailto:kevjay@gmail.com Kevin Peters], University of Kansas<br />
|-<br />
| JET Transforms/Wizards for creating project meta <br />
| [[Modeling Project Releng|Modeling Releng]]? [[Nexus_Project|Nexus]]?<br />
| Starting a new project requires a lot of duplicative code &amp; metadata: .doc plugins/features, .examples plugins/features, .test examples/features, .sdk feature, .releng project. Being able to generate this from JET templates via a wizard would make it much easier to get a project up and running -- and then get a PDE build that much easier, too.<br />
| [[User:Nickb|Nick Boldt]] <br />
| [[User:Nickb|Nick Boldt]]<br />
| <br />
| Michael Robb, Mount Royal College<br />
|-<br />
| Rich text editing and wiki integration<br />
| [http://eclipse.org/mylyn Mylyn]<br />
| Provide wiki integration. This involves providing mechanisms for rich editing and viewing of task repository comments in wiki format, potentially adding wiki editing. see also [[Mylyn/Contribution_Ideas|More ideas for Mylyn projects]]<br />
| Steffen Pingel<br />
| Steffen Pingel<br />
| There are at least two projects already providing wiki editing in Eclipse, albeit without Mylyn integration: [http://www.matheclipse.org/en/Eclipse_Wikipedia_Editor Wikipedia Editor], [http://eclipsewiki.sourceforge.net/ Wiki Editor]. &lt;/[[User:nickb]]&gt;<br />
| Jingwen 'Owen' Ou, The University of British Columbia<br />
|-<br />
| Java based Abstract Syntax Tree (AST) generator for Ada Programs<br />
| [http://eclipse.org/hibachi Hibachi]<br />
| An Abstract Syntax Tree is the base framework for many powerful tools of a language IDE. For Hibachi, the Ada Development Toolkit project (like JDT or CDT), the presence of an AST would allow many more powerful IDE features, and improve those already in place (like refactoring, code folding, reformating).<br />
| Tom Grosman<br />
| Tom Grosman, Adam Haselhuhn<br />
| For a good idea about ASTs in Eclipse, see [http://www.eclipse.org/articles/article.php?file=Article-JavaCodeManipulation_AST/index.html JDT AST]<br />
|<br />
|-<br />
| Feature implementation for Ada Development Toolkit<br />
| [http://eclipse.org/hibachi Hibachi]<br />
| Implementation of new or extension of existing Hibachi funtionality. Depending on student interest and background, features may include but are not limited to code folding, Ada body generation, object tooltips display, dependency graphs and trees, code fixing, etc.<br />
| Tom Grosman<br />
| Tom Grosman, Adam Haselhuhn<br />
|<br />
|<br />
|-<br />
| XML+CSS = IFigure<br />
| [http://www.eclipse.org/gef/ GEF/Draw2d]<br />
| Adding possibility to generate draw2d figures from XML and CSS descriptors (for example HTML subset and CSS). <br />
| Andrey Vakunov<br />
| [mailto:anthonyh_at_ca.ibm.com Anthony Hunter]<br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| Equinox Console and script language integration<br />
| [http://www.eclipse.org/equinox/ Equinox]<br />
| Integrate any script language (Groovy or JRuby or Bash :-) ) in OSGi console. Add possibilities to write in OSGi console &quot;s grep &lt;my-service-name&gt;&quot;<br />
| Andrey Vakunov<br />
| <br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| Buddy list for task assignments and CCs<br />
| [http://www.eclipse.org/mylyn/ Mylyn]<br />
| Enhance Mylyn's Rich Client Bugzilla to have an address book for CC's<br />
| Jingwen 'Owen' Ou<br />
| <br />
| Normally people work on projects with similar teammates and it would be nice to use previous queries to propose CCs. Details in [https://bugs.eclipse.org/bugs/show_bug.cgi?id=152415 bug 152415]<br />
|<br />
|-<br />
| Remote Service Deployment Tool<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Take the R-OSGi Deployment Tool idea ([http://www.iks.inf.ethz.ch/publications/files/etx07.pdf paper]) and the prototype and port it to a new platform (PDE projects, ECF remote services, p2 for deployment) so that it can be easily used within Eclipse to deploy a distributed OSGi application. <br />
| Jan S. Rellermeyer<br />
| [mailto:rellermeyer_at_inf.ethz.ch Jan S. Rellermeyer]<br />
| <br />
|<br />
|-<br />
| Enhanced Eclipse search<br />
| [http://www.eclipse.org/platform platform]<br />
| Eclipse search plugin: provide an enhanced Eclipse search: better, faster, more relevant. Think Lucene or opengrok inside Eclipse.<br />
| Philippe Ombredanne<br />
| [mailto:philippe.ombredanne_at_eclipse.org Philippe Ombredanne]<br />
| <br />
| Jeffrey Czyz, University at Buffalo. Çağatay Çallı, Middle East Technical University - Turkey. Suran Jayathilaka, University Of Colombo School Of Computing - Sri lanka<br />
|-<br />
| Eclipse-Moodle integration<br />
| <br />
| The idea of this project is to provide an Eclipse plugin for the Moodle CMS e-learning system. This tool will enable students participating in online courses to import and export resources (projects or other materials) directly from an Eclipse workspace. Integration with Mylyn (for managing tasks assigned in such courses) could be an additional feature. <br />
| Aleksandra Woźniak<br />
| <br />
| <br />
| Aleksandra Woźniak, Poznan University of Technology &amp; Adam Mickiewicz University - Poznan, Poland<br />
|-<br />
| Use case editor<br />
| [http://www.eclipse.org/proposals/ormf/ ORMF]?<br />
| Use case editor: for writing use cases in a textual form, managing sets of use cases and (maybe) generating UML diagrams as well as html and pdf files from them. <br />
| Aleksandra Woźniak<br />
| <br />
| <br />
| Aleksandra Woźniak, Poznan University of Technology &amp; Adam Mickiewicz University - Poznan, Poland<br />
|-<br />
| Augment p2 dependencies<br />
| [http://wiki.eclipse.org/Equinox_p2 p2]<br />
| In its first release, p2 limited its expression of dependencies to something equivalent to what most other package management system proposed (A package can say that it requires or conflicts with others). However several provisioning scenarios could benefit from more powerful inter-package dependencies (e.g, when mylyn and SVN are installed, install the connector). The goal of this project is to advance p2 by providing more powerful inter-package dependencies (and their mapping to the PB solver). Directions are: * more complex implications, * mapping filters into the solver, * expressing generic capabilities / dependencies (e.g. putting requirements on memory size, hard drive size, etc), * representing affinities between packages (see the OSGi notion of uses clauses) , * finding a way to automatically pick the most applicable line-up / recommendations<br />
| <br />
| [mailto:pascal_rapicault_at_ca.ibm.com Pascal Rapicault], Daniel Le Berre<br />
| <br />
|<br />
|-<br />
|Transformation from CIM to PIM<br />
| <br />
|This project aims to create a module for additional Omondo, allowing transformations from computation independent model (CIM) represented by activity diagram,to a platform independent model (PIM) represented by class diagram and use cases, based in model driven architecture (MDA) and UML. The project ([https://eclipsecon.greenmeetingsystems.com/submissions/view/609 paper]) was submitted to eclipsecon 2008.<br />
| Ernesto Suarez Lopez<br />
| <br />
| <br />
|<br />
|-<br />
|Custom menu positioning for Eclipse Monkey scripts<br />
|[http://www.eclipse.org/dash/ Dash]<br />
|Eclipse Monkey scripts must currently reside under the Scripts menu, which doesn't integrate them well with existing functionality. When customizing a perspective, make it possible to add Monkey scripts to any menu (on the menu bar) that the user decides, both using specifiers in the script and through the UI.<br />
| [[User:Nitind|Nitin Dahyabhai]]<br />
| <br />
| <br />
|<br />
|-<br />
| CDT Windows Debugger<br />
| [[CDT]]<br />
| The CDT provides a front end to many debuggers in order to unify the debug UI around the Debug Platform augmented by a number of C/C++ specific debug views. We currently support the GNU debugger on Windows in parallel with build support for the GCC tool chain. We'd also like to support integration with the Windows SDK. We have Visual C++ build support. This project would be to add in Windows Debugger support.<br />
| Doug Schaefer<br />
| [mailto:doug.schaefer_at_windriver.com Doug Schaefer]<br />
| <br />
|<br />
|-<br />
| VNC over ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Virtual Network Console is a popular screen sharing technology. It would be useful to have an implementation of VNC protocol for ECF. See [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01452.html mailing list entry by Marek Zawirski] for a more detailed description of idea.<br />
| Scott Lewis<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe<br />
| <br />
|<br />
|-<br />
| Google Calendar access using ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| [http://calendar.google.com Google Calendar] is a popular and open calendaring system. It would be useful to have an integrated ECF-based calendar for Eclipse. See [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01452.html mailing list entry by Marek Zawirski] for a more detailed description of idea.<br />
| Scott Lewis<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe<br />
| <br />
|<br />
|-<br />
| SIP VoIP implementation for ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| SIP is a popular signaling protocol, widely used for setting up VoIP calls with 2 or more participiants. This project aims to create working SIP/VoIP implementation, that will implement existing [http://wiki.eclipse.org/index.php/VOIP ECF Call API]. Implementation should allow VoIP calls using SIP from Eclipse and will make Eclipse more functional softphone with another protocol implemented (already working implementations are jingle and Skype).<br />
| Marek Zawirski<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe?<br />
| <br />
| Marek Zawirski, Poznan University of Technology - Poland<br />
|-<br />
| Further ECF and Mylyn integration<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Improvement of distributed development process is common goal of Mylyn and ECF projects. There have been [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01195.html some efforts] of integrating these projects. However, there are still some fields where integration could be further extended. This especially covers contacting easily with other developers when doing issue-oriented development with Mylyn. Goal of this project is to extend integration between Mylyn and ECF to allow easy task-oriented communication or task exchange.<br />
| Marek Zawirski<br />
| Remy Suen, Scott Lewis, Chris Aniszczyk, Markus Kuppe?<br />
| <br />
|<br />
|-<br />
| Customizable display of objects in CDT debugger<br />
| [[CDT]]<br />
| Variables view of CDT debugger currently displays object variables as trees with each data member represented by a separate node. Some types, like std::string, have a complex internal structure, but a simple meaning. Having to open multiple levels of node hierarchy to see the contents of a string is very annoying. In most cases user does not care about all details of the string object and just wants to see the contents of the string. This problem can be solved by supporting user-defined auto expansion rules defining display formats for commonly used types. See {{bug|155331}} for more information.<br />
| Sergey Prigogin<br />
| [mailto:eclipse.sprigogin@gmail.com Sergey Prigogin]<br />
| <br />
|<br />
|-<br />
| Patch file editor with an outline view<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Juggling patches is the practice of every day work for all Eclipse developers. The goal of the project is to create a patch file editor with an outline view. The outline view would allow not only browsing the patch, but also navigating to included files, applying only selected hunks and so on.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Details and initial code in {{bug|190418}}.<br />
|<br />
|-<br />
| &quot;Compare With&quot; dialog<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| The goal of the project is to add a dialog allowing the user to select resources to compare. At this momement the user need to select 2 or 3 files with ctrl-clicking. This is not always as easy and reliable as it seems. The dialog would allow browsing the workspace or file system to locate the resource for comparison. Drag'n'dropping would be also very useful.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| See bug {{bug|224562}} for details.<br />
|<br />
|-<br />
| Patches comparison<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Juggling patches is the practice of every day work for all Eclipse developers. There are certain use cases when the user would like to compare two patches against each other. The problem is that straight comparison (two patches alone) is not enough, what we need here is comparing diffs in context.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Details in {{bug|198149}} and {{bug|213043}}.<br />
|<br />
|-<br />
| diff from any comparison<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Generating a patch from any comparison is a very common request. It comes in many flavours: users would like to save a patch while comparing two files, two version in local history, current version and a one with a tag and so on. One thing they have in common is the ability to create a patch from actual comparison. It would be definietly a nice feature to have.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Some of the bugs {{bug|71374}}, {{bug|103681}}, {{bug|151980}}...<br />
|<br />
|-<br />
| Novel Rich Client<br />
| [http://www.eclipsemozilla.org EclipseMozilla.org]<br />
| Use the EclipseMozilla browser component and find new ways to program rich client applications. Especially, combining Eclipse technology with HTML and Flash is of interest. You should mesh Eclipse technology with web technologies to create a new unique way for rich client programming. This is a very innovative task. For more info contact me.<br />
| Thomas Derflinger<br />
| [mailto:tderflinger@gmail.com Thomas Derflinger]<br />
|<br />
| <br />
|-<br />
| Split File Editor<br />
| [http://www.eclipse.org/eclipse/platform-text/ Platform Text]<br />
| Implement a split file editor functionality: bug [https://bugs.eclipse.org/bugs/show_bug.cgi?id=8009 8009], the most voted-for bug ever in the entire Eclipse universe with &gt;180 votes<br />
| Nikolay Botev<br />
| <br />
| <br />
| Nikolay Botev, San Jose State University - San Jose, California, USA.<br />
|-<br />
| Office-2007-ribbon-inspired UI<br />
| [http://www.eclipse.org/eclipse/platform-ui/ Platform UI]<br />
| Toolbars and Menus are so 20th century (extremely outdated) and un-user-friendly. Eclipse's menus are particularly overcrowded and hard to manage. This project would be a bold endeavour - a wild experiment in UI innovation. The idea is to replace the menu and toolbars with an Office 2007-ribbon-inspired structure. Here is a tentative design of the new UI. The structure consists of top-level tabs that correspond to Eclipse IDE perspectives. Under the current tab are groups of buttons with labels on the bottom (like Office 2007). The groups correspond to the current top-level menus. Labels display the full menu on click (unlike Office 2007). The buttons in each group represent a list of relevant actions determined based on some intelligent mix of most-frequently- and most-recently-used statistics. The structure has enough room for 3 rows of buttons in small format with small (16x16) icon and optional label to the right (like Office 2007). The most relevant buttons are displayed in large format when possible, filling all three rows, with a large icon and label below. The structure automatically expands and shrinks based on window size to take advantage of all available space on modern high-resolution/wide-screen displays (like Office 2007).<br />
| Nikolay Botev<br />
| <br />
| <br />
| Nikolay Botev, San Jose State University - San Jose, California, USA.<br />
|-<br />
| Equinox and SAT4J<br />
| [http://www.eclipse.org/equinox/ Equinox]<br />
| Do you like difficult problems of solving resolver problems at runtime? If so... this project is for you. The new provisioning work at Eclipse (p2) is using a new SAT Solver (SAT4J) to do complex resolver computations. This project will explore using SAT4J as the replacement for the current Equinox runtime resolver.<br />
| Chris Aniszczyk<br />
| [mailto:hargrave@us.ibm.com BJ Hargrave], [mailto:tjwatson@us.ibm.com Thomas Watson], [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| I think this should be more general. It should be about using constraint solver to replace the equinox resolver. Another open-source implementation of a solver is [http://choco-solver.net/index.php?title=Main_Page Choco]<br />
|<br />
|-<br />
| ECF and Yahoo<br />
| [http://www.eclipse.org/ecf/ ECF]<br />
| Implement a EPL'd version of the Yahoo messaging protocol and than code an ECF provider implementation for that. The baseline goal of this project is to just implement messanging for Yahoo... things like file transfer can come later or if there's time.<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Michael Berry, University of Kent, Canterbury, UK.<br />
|-<br />
| BPMN/BPEL to SCA model transformations for STP<br />
| [http://www.eclipse.org/stp/ STP]<br />
| This project will leverage and extend the existing STP Intermediate Model (STP-IM) in order to provide better support for transformations between process editors (BPMN and BPEL) and architecture editors (SCA in particular, potentially EID as well). The contribution would be of great importance to SOA developers and would therefore be an important incentive for the community adoption of the Eclipse STP. <br />
| Juan Cadavid<br />
| [mailto:adrian.mos@inria.fr Adrian Mos]<br />
|<br />
| Juan Cadavid, Universidad EAFIT, Medellín Colombia.<br />
|-<br />
| Support for StyledText<br />
| [http://www.eclipse.org/rap RAP]<br />
| One of the most asked features of RAP is the StyledText widget. Not only to show funny colored texts in your application but it's one of the most complex widgets to implement. But having at least some basic API working enabled RAP to port other parts of RCP to the web based on the new StyledText widget. More information about StyledText can be found [http://help.eclipse.org/stable/nftopic/org.eclipse.platform.doc.isv/reference/api/org/eclipse/swt/custom/StyledText.html here]. <br />
| Benjamin Muskalla<br />
| Frank Appel, Rüdiger Herrmann<br />
|<br />
| <br />
|-<br />
| Theme Editor<br />
| [http://www.eclipse.org/rap RAP]<br />
| Theming allows RAP application developers to give their applications a custom style. Currently, a theme must be defined as a .properties file. As the theming capabilities improve, these files are getting more and more complex. A theme editor should provide an easy-to-use user interface for defining themes. It could be shipped as part of the RAP tooling. For more information on the RAP theming, see the [http://help.eclipse.org/help33/index.jsp?topic=/org.eclipse.rap.help/help/html/advanced/theming.html online help].<br />
| Ralf Sternberg<br />
| [mailto:rsternberg@innoopract.com Ralf Sternberg]<br />
| <br />
| Mathias Schaeffner, Coventry University, UK<br />
|-<br />
| RAP product file<br />
| [http://www.eclipse.org/rap/ RAP]<br />
| <br />
| Balazs Brinkus<br />
| <br />
| <br />
| Balazs Brinkus, University of Szeged, Hungary<br />
|}<br />
<br />
More ideas can be found at [http://eclipse-wiki.info/GoogleSummerOfCode2007 Eclipse-Wiki], [[Mylyn Contribution Ideas|Mylyn Contribution Ideas page]], and [[Google Summer of Code 2007 Ideas|Google Summer of Code 2007 ideas]].<br />
<br />
== Unmatched Students ==<br />
Yifei Ma, Virginia Tech, Equinox<br />
<br />
Jingwen 'Owen' Ou, The University of British Columbia, Mylyn: dynamic traces and buddy list</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=Google_Summer_of_Code_2008_Ideas&diff=89586Google Summer of Code 2008 Ideas2008-03-29T03:24:18Z<p>Pombredanne.nexb.com: </p>
<hr />
<div>== Rules ==<br />
* Be creative<br />
* Be specific: what do you want to be implemented<br />
* If you are willing to mentors those ideas, add your name and email to the idea.<br />
* Ii is ok to have a project idea without parent project<br />
* If you're an interested student, add your name and email next to the idea. It is ok to have several students interested by one idea.<br />
<br />
== Ideas ==<br />
<br />
{| border=&quot;1&quot; cellpadding=&quot;2&quot; width=&quot;100%&quot;<br />
!width=&quot;20%&quot;|Title<br />
!width=&quot;5%&quot; align=&quot;center&quot;|Project<br />
!width=&quot;40%&quot;|Abstract - links to details/bugs/etc<br />
!width=&quot;10%&quot;|Reporter<br />
!width=&quot;10%&quot;|Possible mentor(s)<br />
!width=&quot;15%&quot;|Comments<br />
!width=&quot;10%&quot;|Potential students(s)<br />
|-<br />
| Support for user-defined refactorings in JDT<br />
| [http://www.eclipse.org/jdt JDT]<br />
| The idea is to produce a pattern language, rules engine, and user interface to allow the Java developer to perform queries n and make safe modifications of their code code. It's a superset of the current refactoring because ideally current refactorings could be expressed this new system, forming a nice set of initial examples. he users could then adapt those rules to their own purposes or come up with completely new ones. See {{bug|144642}} for more informations.<br />
| Ed Burnette<br />
| Martin Aeschlimann(?)<br />
| <br />
|<br />
|-<br />
| Continuous JUnit integration<br />
| [http://www.eclipse.org/jdt JDT]<br />
| Running a specific set of JUnit sets in the background while editing Java source code would help to detect defects early. The concept is to provide unobstrusive early detection and reporting of changes to source code that negatively affect its agreed upon functionality. Detecting failing tests would mark the changed source code with annotations to see which changes affected the green bar. There are already some (forgotten) bugs: {{bug|12167}} and {{bug|51292}}.<br />
| Benjamin Muskalla<br />
| [mailto:ContinuousJUnitGSoC08@lemmster.de Markus Kuppe] <br />
| [http://groups.csail.mit.edu/pag/continuoustesting/ PAG]<br />
| Sam Ryan, Victoria University Wellington New Zealand. Andrew Murray, Queen's University<br />
|-<br />
| toString generation<br />
| [http://www.eclipse.org/jdt JDT]<br />
| Like the setter/getter, equals and hashcode generator, it would be nice to have a little helper to generate toString methods. See bug {{bug|26070}} and take a look at [http://code.google.com/p/generate-tostring/wiki/Features this plugin] for some ideas. <br />
| Benjamin Muskalla<br />
| [mailto:toStringGSoC08@lemmster.de Markus Kuppe]<br />
| [http://eclipse-jutils.sourceforge.net/ JUtils]<br />
| Michelangelo De Simone, University of Salerno - Italy. Michael Diamond, Dartmouth College. Sam Ryan, Victoria University Wellington New Zealand. Andrew Murray, Queen's University<br />
|-<br />
| JDT and Google Code Search service <br />
| [http://www.eclipse.org/jdt JDT]<br />
| JDT and Google Code Search service integration: a)During debug under JDT source code are often unavailable. Google Code Search Source Provider should provide source code for corresponding class. b)Integrate common JDT search possibilities (for example &quot;Search\References&quot;) with Google Code Search Service (Search not under local projects but in Web too).<br />
| Andrey Vakunov<br />
| <br />
|<br />
| Michelangelo De Simone, University of Salerno - Italy. Andrey Vakunov, Grodno State University<br />
|-<br />
| Implement a search mechanism for BPMN diagrams<br />
| [[STP/BPMN_Component|BPMN]]<br />
| Research indexing of domain specific models persisted in an XML format. Apply this research to indexing and searching BPMN diagrams.<br />
| Antoine Toulme<br />
| [mailto:antoine@lunar-ocean.com Antoine Toulme], [mailto:hmalphettes@intalio.com Hugues Malphettes]<br />
|<br />
|<br />
|-<br />
| Improve the usability of the BPMN editor<br />
| [[STP/BPMN_Component|BPMN]]<br />
| Gather feedback from users of the modeler. Select enhancements to support and develop them.<br />
| Antoine Toulme<br />
| [mailto:antoine@lunar-ocean.com Antoine Toulme], [mailto:hmalphettes@intalio.com Hugues Malphettes]<br />
|<br />
|<br />
|-<br />
| AIM Provider<br />
| [http://www.eclipse.org/ecf ECF]<br />
| ECF allows messaging protocols to be plugged in as providers. AIM isn't currently supported. The student can choose to implement the AIM (OSCAR) protocol themselves, or wrap an existing Java library like JOscar.<br />
| Chris Aniszczyk, Remy Suen<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:remy.suen@gmail.com Remy Suen]<br />
| <br />
| Michael Berry, University of Kent, Canterbury, UK. Çağatay Çallı, Middle East Technical University - Turkey. Tharindu Mathew, University of Moratuwa Sri Lanka<br />
|-<br />
| DITA or DocBook Help Content Producer<br />
| [http://www.eclipse.org/eclipse/platform-ua/main.html User Assistance]<br />
| Eclipse User Assistance allows for help content to be dynamically produced. Traditionally, all Eclipse content came in the form of hand-written HTML files. This is so 90's, we should have [http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/extension-points/org_eclipse_help_contentProducer.html help content producers] to produce help content from DITA or DocBook files.<br />
| Chris Aniszczyk, Chris Goldthorpe(?)<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:cgold@us.ibm.com Chris Goldthorpe], [mailto:d_a_carver@yahoo.com David Carver]<br />
| <br />
| Zhiyang Jiang,Chinese Academy of Sciences<br />
|-<br />
| GraphicsZilla<br />
| [http://www.eclipse.org/phoenix Phoenix]<br />
| Eclipse uses Bugzilla in many interesting ways. It uses it in the normal fashion for bug tracking. It also uses a modified version for IP tracking (IPZilla). This proposal is to create a GraphicsZilla to help streamline icon and graphics creation in Eclipse. This would allow not only programmers to contribute their talents to Eclipse. This would also make the process of where icons come from more transparent. See this [http://mea-bloga.blogspot.com/2007/01/graphicszilla-running-man.html blog post] and [https://bugs.eclipse.org/bugs/show_bug.cgi?id=170720 bug] for more info. Note, this would also provide a viewable repository of all the graphics used in Eclipse... which is currently lacking now.<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
|<br />
|-<br />
| Bundles in a Browser<br />
| [http://www.eclipse.org/equinox Equinox]<br />
| Eclipse runs pretty much everywhere these days... in cell phones... devices... desktops... servers... how about a web browser? This proposal is being left open-ended for a purpose. I'd like to see a student figure out how to get Eclipse plug-ins (bundles) installed into a browser like Firefox and then somehow expose working with them via some API... maybe XPCOM or Javascript. That's all ;p<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| PDE fetch script factory for SVN<br />
| [http://www.eclipse.org/pde/ pde]<br />
| So far Eclipse only support CVS in a map file build. Though there exists an SVN impl, it's not EPL<br />
| Markus Kuppe<br />
| If nobody from PDE: [mailto:fetchGSoC08@lemmster.de Markus Kuppe]<br />
| [http://wiki.eclipse.org/index.php/PDEBuild#Building_from_a_subversion_repository SVN impl]<br />
|<br />
|-<br />
| PDE Ménage à trois: Scala and Java<br />
| [http://www.eclipse.org/pde PDE]<br />
| There are some crazy people out there developing Eclipse plug-ins using languages other than Java (how dare they ;p!). Scala is one of these popular languages and there already has been [http://neilbartlett.name/blog/2007/06/13/eclipse-pde-does-scala/ some Eclipse integration] to make this happen. However, PDE suffers from limitations that strictly binds itself to Java... the goal of this project would be to analyze these PDE limitations... and come up with patches or prototyped code to let PDE play better with Scala and other languages.<br />
| Chris Aniszczyk, Neil Bartlett (?)<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Moises Osorio, Instituto Tecnologico de Culiacan, Culiacan Mexico. [mailto:wcoder.mx@gmail.com wcoder.mx@gmail.com]<br />
|-<br />
| Declarative Services (DS) Tooling<br />
| [http://www.eclipse.org/pde PDE]<br />
| Equinox finally has a stable implementation of the Declarative Services specification from OSGi. It's time to tool this beast. Any takers?<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Bartosz Michalik, Poznan University of Technology - Poland. Rafael Oliveira Nóbrega, Universidade Federal de Pernambuco - Brazil<br />
|-<br />
| PDE and JavaScript<br />
| [http://www.eclipse.org/pde PDE]<br />
| PDE allows you to create plug-ins using Java these days. This request is simply for a student to explore the realm of creating plug-ins using JavaScript or other languages. To start simple, I'd start with adding a new schema attribute of type &quot;javascript&quot; to allow plug-in authors to at least plug different languages in. From there, we can explore ideas on &quot;how would you define a view&quot; in such a way that you could take javascript or java code?<br />
| Chris Aniszczyk<br />
| Chris Aniszczyk<br />
| <br />
|<br />
|-<br />
| PDE and Equinox Transforms<br />
| [http://www.eclipse.org/pde PDE]<br />
| Equinox has a new component called transforms that allows you to transform various aspects of a plug-in during runtime. For example, a common use case is to write a transform that modifies some plugin.xml entries to not display certain menu items. This project aims to provide tooling for the transforms component so plugin authors can easily author transforms.<br />
| Chris Aniszczyk<br />
| Chris Aniszczyk<br />
| <br />
| Bartosz Michalik, Poznan University of Technology - Poland<br />
|-<br />
| IM for Eclipse<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Developers work in project teams, and team members need to communicate. An IM program integrated into Eclipse itself will be useful for this, that's optimized to transfer large amounts of code which usual IM programs limit and also allows developers to be grouped accordingly.<br />
| Tharindu Mathew<br />
| <br />
| I think it's worth to take a look at the [http://www.eclipse.org/ecf ECF] project. Most of the features are already available there.<br />
| Michael Berry, University of Kent, Canterbury, UK. Michelangelo De Simone, University of Salerno - Italy. Michael Diamond, Dartmouth College. Sam Ryan, Victoria University Wellington New Zealand<br />
|-<br />
| XpandDoc documentation generator<br />
| [http://www.eclipse.org/modeling/m2t/?project=xpand#xpand M2T/Xpand]<br />
| Xpand is a template language which allows users to comment their templates with a JavaDoc-like syntax. So far, there is no tooling that can use this documentation. The goals of the project are to (1) create an engine that can parse Xpand template comments, (2) create a commandline tool that can generate a JavaDoc-like HTML output for all template comments in a project, and (3) enhance the Xpand text editor to show template comments in a tooltip when hovering over the respective template invocation.<br />
| Peter Friese<br />
| [mailto:peter.friese@itemis.de Peter Friese]<br />
| <br />
|<br />
|-<br />
| Refactorings for Xpand / Xtend / Check<br />
| [http://www.eclipse.org/modeling/m2t/?project=xpand#xpand M2T/Xpand]<br />
| Xpand, Xtend and Check are languages for writing code generators. As your code generator grows, you'll feel the desire to restructure your code generator templates. Currently, no refactoring support is available for Xpand / Xtend / Check. We're looking for a brave student willing to fill this void.<br />
| Peter Friese<br />
| [mailto:peter.friese@itemis.de Peter Friese]<br />
| <br />
|<br />
|-<br />
| Improving the TCP/IP Monitor Plugin <br />
| [http://www.eclipse.org/webtools/server/ WTP_Server_Tools]<br />
| The TCP/IP Monitor plugin available with the Eclipse WTP could use some improvement in several areas. A few suggestions are XML prettyfying, switchable layouts, persistable message logs, tabs for concurrent listeners, proxy mode, HTTP proxy support, simulation of slow connections, documentation and overall UI and usability improvement. IMHO, such additions, alongwith other requirements expressed by developers for this plugin, would make it more popular among the Eclipse Web developer community. <br />
| Suran Jayathilaka<br />
| <br />
| <br />
| Suran Jayathilaka, University Of Colombo School Of Computing - Sri lanka<br />
|-<br />
| Generic unit testing support<br />
| [http://www.eclipse.org/dltk DLTK]?<br />
| JUnit is well integrated at the moment used to test java code. As there are many other projects which need to implement other testing tools, we should be a generalized form of the Junit framework as provide some extension points to build the implementations of other XUnit frameworks on top of it. See {{bug|180884}} for more informations.<br />
| Benjamin Muskalla<br />
| <br />
| <br />
| <br />
|-<br />
| Web-CAT Eclipse plugin<br />
| [http://web-cat.cs.vt.edu/ Web-CAT]<br />
| Web-CAT is a plug-in-based web application that supports electronic submission and automated grading of programming assignments that is presently used by over 30 universities and colleges in the United States and elsewhere. The Web-CAT Grader supports traditional models of automated program grading, and also supports grading of assignments where students do their own testing. Web-CAT is already supported by an Eclipse plugin that allows students to view graders' comments on their assignments directly within the IDE. The aim of this project is to provide support for the graders as well, i.e., to allow professors, teaching assistants, and students to mark up code with comments, assign grades (both freeform and from rubrics), and so on. This will not only make grading easier, but will also help turn Eclipse into a student-friendly code review tool, which we hope will encourage wider use of code reviews in teaching.<br />
| Jason Montojo<br />
| [mailto:jmontojo@ca.ibm.com Jason Montojo], [mailto:gvwilson@cs.utoronto.ca Greg Wilson]<br />
| <br />
| Qi Yang, University of Toronto - Canada<br />
|-<br />
| Feature Diagram plugin<br />
| [https://stanley.cdf.toronto.edu/drproject/consulting-2008-01/featdiag Feature Diagram Prototype]<br />
| &quot;Feature diagrams&quot; are a graphical notation for describing the relationships between class elements that first appeared in Michael Feathers' book &quot;[http://www.amazon.com/Working-Effectively-Legacy-Robert-Martin/dp/0131177052 Working Effectively with Legacy Code]&quot;. A prototype plugin for Eclipse that automatically produces feature diagrams, and allows users to modify their layout, now exists. The aim of this project is to connect that plugin to Eclipse's Java refactorings to allow drag-and-drop manipulation of the visual representations of fields and methods.<br />
| Greg Wilson<br />
| [mailto:gvwilson@cs.utoronto.ca Greg Wilson]<br />
| <br />
|<br />
|-<br />
| XQuery Syntax Editor<br />
| [http://www.eclipse.org/webtools/incubator XSL Tooling / Web Tools Incubator]<br />
| Provide basic support for XQuery syntax editing. Including coloring, validation, content assistance, possibly provide extensions for allowing the selection of which xquery editors can be used for validation. Preference pages for controling XQuery specificat options for generating output. Possible future ability to include debugging support.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| <br />
| Buddhika Laknath, University of Moratuwa - Sri Lanka<br />
|-<br />
| Eclipse single instance<br />
| [http://www.eclipse.org/platform platform]<br />
| More and more applications are eclipse RCP based applications. This is great but each application launch a JVM and load in memory quite often the same plug-ins. Like xul runner for mozilla, it would be interesting to have an &quot;Eclipse runner&quot;. Issues to work on are how to manage several platforms (3.1, 3.2, 3.3, etc..) and share plug-ins (in memory). update : the problem seems to be adressed with p2 provided in eclipse 3.4 M6<br />
| Mariot Chauvin<br />
| Someone from platform project<br />
| <br />
|<br />
|-<br />
| BIRT JPA or JDO Connector<br />
| [http://www.eclipse.org/birt birt]<br />
| A data connector for BIRT Reports that allows BIRT to easily access data via JPA or JDO.<br />
| Markus Kuppe<br />
| The BIRT Project Team <br />
| In [http://wiki.eclipse.org/Google_Summer_of_Code_2007_Ideas GSoC '07] the BIRT team was willing to mentor<br />
|<br />
|-<br />
| BIRT Reports and Connectors for Ad Revenue<br />
| [http://www.eclipse.org/birt birt]<br />
| This one is very business focused -- provide connectors and reports that allow Google customers and users to build their own reports on their Google Ad Revenue etc.<br />
| Kevin Peters<br />
| The BIRT Project Team <br />
| In [http://wiki.eclipse.org/Google_Summer_of_Code_2007_Ideas GSoC '07] the BIRT team was willing to mentor<br />
| [mailto:kevjay@gmail.com Kevin Peters], University of Kansas<br />
|-<br />
| Barcode Support<br />
| [http://www.eclipse.org/birt birt]<br />
| See https://bugs.eclipse.org/bugs/show_bug.cgi?id=149928 for additional details.<br />
| Kevin Peters<br />
| The BIRT Project Team <br />
| <br />
| [mailto:kevjay@gmail.com Kevin Peters], University of Kansas<br />
|-<br />
| JET Transforms/Wizards for creating project meta <br />
| [[Modeling Project Releng|Modeling Releng]]? [[Nexus_Project|Nexus]]?<br />
| Starting a new project requires a lot of duplicative code &amp; metadata: .doc plugins/features, .examples plugins/features, .test examples/features, .sdk feature, .releng project. Being able to generate this from JET templates via a wizard would make it much easier to get a project up and running -- and then get a PDE build that much easier, too.<br />
| [[User:Nickb|Nick Boldt]] <br />
| [[User:Nickb|Nick Boldt]]<br />
| <br />
| Michael Robb, Mount Royal College<br />
|-<br />
| Rich text editing and wiki integration<br />
| [http://eclipse.org/mylyn Mylyn]<br />
| Provide wiki integration. This involves providing mechanisms for rich editing and viewing of task repository comments in wiki format, potentially adding wiki editing. see also [[Mylyn/Contribution_Ideas|More ideas for Mylyn projects]]<br />
| Steffen Pingel<br />
| Steffen Pingel<br />
| There are at least two projects already providing wiki editing in Eclipse, albeit without Mylyn integration: [http://www.matheclipse.org/en/Eclipse_Wikipedia_Editor Wikipedia Editor], [http://eclipsewiki.sourceforge.net/ Wiki Editor]. &lt;/[[User:nickb]]&gt;<br />
| Jingwen 'Owen' Ou, The University of British Columbia<br />
|-<br />
| Java based Abstract Syntax Tree (AST) generator for Ada Programs<br />
| [http://eclipse.org/hibachi Hibachi]<br />
| An Abstract Syntax Tree is the base framework for many powerful tools of a language IDE. For Hibachi, the Ada Development Toolkit project (like JDT or CDT), the presence of an AST would allow many more powerful IDE features, and improve those already in place (like refactoring, code folding, reformating).<br />
| Tom Grosman<br />
| Tom Grosman, Adam Haselhuhn<br />
| For a good idea about ASTs in Eclipse, see [http://www.eclipse.org/articles/article.php?file=Article-JavaCodeManipulation_AST/index.html JDT AST]<br />
|<br />
|-<br />
| Feature implementation for Ada Development Toolkit<br />
| [http://eclipse.org/hibachi Hibachi]<br />
| Implementation of new or extension of existing Hibachi funtionality. Depending on student interest and background, features may include but are not limited to code folding, Ada body generation, object tooltips display, dependency graphs and trees, code fixing, etc.<br />
| Tom Grosman<br />
| Tom Grosman, Adam Haselhuhn<br />
|<br />
|<br />
|-<br />
| XML+CSS = IFigure<br />
| [http://www.eclipse.org/gef/ GEF/Draw2d]<br />
| Adding possibility to generate draw2d figures from XML and CSS descriptors (for example HTML subset and CSS). <br />
| Andrey Vakunov<br />
| [mailto:anthonyh_at_ca.ibm.com Anthony Hunter]<br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| Equinox Console and script language integration<br />
| [http://www.eclipse.org/equinox/ Equinox]<br />
| Integrate any script language (Groovy or JRuby or Bash :-) ) in OSGi console. Add possibilities to write in OSGi console &quot;s grep &lt;my-service-name&gt;&quot;<br />
| Andrey Vakunov<br />
| <br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| Buddy list for task assignments and CCs<br />
| [http://www.eclipse.org/mylyn/ Mylyn]<br />
| Enhance Mylyn's Rich Client Bugzilla to have an address book for CC's<br />
| Jingwen 'Owen' Ou<br />
| <br />
| Normally people work on projects with similar teammates and it would be nice to use previous queries to propose CCs. Details in [https://bugs.eclipse.org/bugs/show_bug.cgi?id=152415 bug 152415]<br />
|<br />
|-<br />
| Remote Service Deployment Tool<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Take the R-OSGi Deployment Tool idea ([http://www.iks.inf.ethz.ch/publications/files/etx07.pdf paper]) and the prototype and port it to a new platform (PDE projects, ECF remote services, p2 for deployment) so that it can be easily used within Eclipse to deploy a distributed OSGi application. <br />
| Jan S. Rellermeyer<br />
| [mailto:rellermeyer_at_inf.ethz.ch Jan S. Rellermeyer]<br />
| <br />
|<br />
|-<br />
| Enhanced Eclipse search<br />
| [http://www.eclipse.org/platform platform]<br />
| Eclipse search plugin: provide an enhanced Eclipse search: better, faster, more relevant. Think Lucene or opengrok inside Eclipse.<br />
| Philippe Ombredanne<br />
| [mailto:philippe.ombredanne_at_eclipse.org Philippe Ombredanne]<br />
| <br />
| Jeffrey Czyz, University at Buffalo. Çağatay Çallı, Middle East Technical University - Turkey. Suran Jayathilaka, University Of Colombo School Of Computing - Sri lanka<br />
|-<br />
| Eclipse-Moodle integration<br />
| <br />
| The idea of this project is to provide an Eclipse plugin for the Moodle CMS e-learning system. This tool will enable students participating in online courses to import and export resources (projects or other materials) directly from an Eclipse workspace. Integration with Mylyn (for managing tasks assigned in such courses) could be an additional feature. <br />
| Aleksandra Woźniak<br />
| <br />
| <br />
| Aleksandra Woźniak, Poznan University of Technology &amp; Adam Mickiewicz University - Poznan, Poland<br />
|-<br />
| Use case editor<br />
| [http://www.eclipse.org/proposals/ormf/ ORMF]?<br />
| Use case editor: for writing use cases in a textual form, managing sets of use cases and (maybe) generating UML diagrams as well as html and pdf files from them. <br />
| Aleksandra Woźniak<br />
| <br />
| <br />
| Aleksandra Woźniak, Poznan University of Technology &amp; Adam Mickiewicz University - Poznan, Poland<br />
|-<br />
| Augment p2 dependencies<br />
| [http://wiki.eclipse.org/Equinox_p2 p2]<br />
| In its first release, p2 limited its expression of dependencies to something equivalent to what most other package management system proposed (A package can say that it requires or conflicts with others). However several provisioning scenarios could benefit from more powerful inter-package dependencies (e.g, when mylyn and SVN are installed, install the connector). The goal of this project is to advance p2 by providing more powerful inter-package dependencies (and their mapping to the PB solver). Directions are: * more complex implications, * mapping filters into the solver, * expressing generic capabilities / dependencies (e.g. putting requirements on memory size, hard drive size, etc), * representing affinities between packages (see the OSGi notion of uses clauses) , * finding a way to automatically pick the most applicable line-up / recommendations<br />
| <br />
| [mailto:pascal_rapicault_at_ca.ibm.com Pascal Rapicault], Daniel Le Berre<br />
| <br />
|<br />
|-<br />
|Transformation from CIM to PIM<br />
| <br />
|This project aims to create a module for additional Omondo, allowing transformations from computation independent model (CIM) represented by activity diagram,to a platform independent model (PIM) represented by class diagram and use cases, based in model driven architecture (MDA) and UML. The project ([https://eclipsecon.greenmeetingsystems.com/submissions/view/609 paper]) was submitted to eclipsecon 2008.<br />
| Ernesto Suarez Lopez<br />
| <br />
| <br />
|<br />
|-<br />
|Custom menu positioning for Eclipse Monkey scripts<br />
|[http://www.eclipse.org/dash/ Dash]<br />
|Eclipse Monkey scripts must currently reside under the Scripts menu, which doesn't integrate them well with existing functionality. When customizing a perspective, make it possible to add Monkey scripts to any menu (on the menu bar) that the user decides, both using specifiers in the script and through the UI.<br />
| [[User:Nitind|Nitin Dahyabhai]]<br />
| <br />
| <br />
|<br />
|-<br />
| CDT Windows Debugger<br />
| [[CDT]]<br />
| The CDT provides a front end to many debuggers in order to unify the debug UI around the Debug Platform augmented by a number of C/C++ specific debug views. We currently support the GNU debugger on Windows in parallel with build support for the GCC tool chain. We'd also like to support integration with the Windows SDK. We have Visual C++ build support. This project would be to add in Windows Debugger support.<br />
| Doug Schaefer<br />
| [mailto:doug.schaefer_at_windriver.com Doug Schaefer]<br />
| <br />
|<br />
|-<br />
| JDT Debugger Extensibility<br />
| [http://www.eclipse.org/eclipse/debug/jdt/ JDT Debug]<br />
| The JDT debugger provides debugging services and works with any JDPA-compliant JVM. The debugger has greatly matured over the years. Debugging facilities in general have not advanced much, however. Many in the research community would like to extend the capabilities of the JDT debugger without losing (or re-writing) existing functionality. Doing so often requires customizing how the JDT debugger makes use of the Java Debug Interface (JDI). This project would open up the JDI portion of the debugger in such a way that extensibility can be accomplished in a safe manner.<br />
| Jeffrey Czyz<br />
| <br />
| <br />
| Jeffrey Czyz, University at Buffalo<br />
|-<br />
| VNC over ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Virtual Network Console is a popular screen sharing technology. It would be useful to have an implementation of VNC protocol for ECF. See [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01452.html mailing list entry by Marek Zawirski] for a more detailed description of idea.<br />
| Scott Lewis<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe<br />
| <br />
|<br />
|-<br />
| Google Calendar access using ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| [http://calendar.google.com Google Calendar] is a popular and open calendaring system. It would be useful to have an integrated ECF-based calendar for Eclipse. See [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01452.html mailing list entry by Marek Zawirski] for a more detailed description of idea.<br />
| Scott Lewis<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe<br />
| <br />
|<br />
|-<br />
| SIP VoIP implementation for ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| SIP is a popular signaling protocol, widely used for setting up VoIP calls with 2 or more participiants. This project aims to create working SIP/VoIP implementation, that will implement existing [http://wiki.eclipse.org/index.php/VOIP ECF Call API]. Implementation should allow VoIP calls using SIP from Eclipse and will make Eclipse more functional softphone with another protocol implemented (already working implementations are jingle and Skype).<br />
| Marek Zawirski<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe?<br />
| <br />
| Marek Zawirski, Poznan University of Technology - Poland<br />
|-<br />
| Further ECF and Mylyn integration<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Improvement of distributed development process is common goal of Mylyn and ECF projects. There have been [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01195.html some efforts] of integrating these projects. However, there are still some fields where integration could be further extended. This especially covers contacting easily with other developers when doing issue-oriented development with Mylyn. Goal of this project is to extend integration between Mylyn and ECF to allow easy task-oriented communication or task exchange.<br />
| Marek Zawirski<br />
| Remy Suen, Scott Lewis, Chris Aniszczyk, Markus Kuppe?<br />
| <br />
|<br />
|-<br />
| Customizable display of objects in CDT debugger<br />
| [[CDT]]<br />
| Variables view of CDT debugger currently displays object variables as trees with each data member represented by a separate node. Some types, like std::string, have a complex internal structure, but a simple meaning. Having to open multiple levels of node hierarchy to see the contents of a string is very annoying. In most cases user does not care about all details of the string object and just wants to see the contents of the string. This problem can be solved by supporting user-defined auto expansion rules defining display formats for commonly used types. See {{bug|155331}} for more information.<br />
| Sergey Prigogin<br />
| [mailto:eclipse.sprigogin@gmail.com Sergey Prigogin]<br />
| <br />
|<br />
|-<br />
| Patch file editor with an outline view<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Juggling patches is the practice of every day work for all Eclipse developers. The goal of the project is to create a patch file editor with an outline view. The outline view would allow not only browsing the patch, but also navigating to included files, applying only selected hunks and so on.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Details and initial code in {{bug|190418}}.<br />
|<br />
|-<br />
| &quot;Compare With&quot; dialog<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| The goal of the project is to add a dialog allowing the user to select resources to compare. At this momement the user need to select 2 or 3 files with ctrl-clicking. This is not always as easy and reliable as it seems. The dialog would allow browsing the workspace or file system to locate the resource for comparison. Drag'n'dropping would be also very useful.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| See bug {{bug|224562}} for details.<br />
|<br />
|-<br />
| Patches comparison<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Juggling patches is the practice of every day work for all Eclipse developers. There are certain use cases when the user would like to compare two patches against each other. The problem is that straight comparison (two patches alone) is not enough, what we need here is comparing diffs in context.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Details in {{bug|198149}} and {{bug|213043}}.<br />
|<br />
|-<br />
| diff from any comparison<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Generating a patch from any comparison is a very common request. It comes in many flavours: users would like to save a patch while comparing two files, two version in local history, current version and a one with a tag and so on. One thing they have in common is the ability to create a patch from actual comparison. It would be definietly a nice feature to have.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Some of the bugs {{bug|71374}}, {{bug|103681}}, {{bug|151980}}...<br />
|<br />
|-<br />
| Novel Rich Client<br />
| [http://www.eclipsemozilla.org EclipseMozilla.org]<br />
| Use the EclipseMozilla browser component and find new ways to program rich client applications. Especially, combining Eclipse technology with HTML and Flash is of interest. You should mesh Eclipse technology with web technologies to create a new unique way for rich client programming. This is a very innovative task. For more info contact me.<br />
| Thomas Derflinger<br />
| [mailto:tderflinger@gmail.com Thomas Derflinger]<br />
|<br />
| <br />
|-<br />
| Split File Editor<br />
| [http://www.eclipse.org/eclipse/platform-text/ Platform Text]<br />
| Implement a split file editor functionality: bug [https://bugs.eclipse.org/bugs/show_bug.cgi?id=8009 8009], the most voted-for bug ever in the entire Eclipse universe with &gt;180 votes<br />
| Nikolay Botev<br />
| <br />
| <br />
| Nikolay Botev, San Jose State University - San Jose, California, USA.<br />
|-<br />
| Office-2007-ribbon-inspired UI<br />
| [http://www.eclipse.org/eclipse/platform-ui/ Platform UI]<br />
| Toolbars and Menus are so 20th century (extremely outdated) and un-user-friendly. Eclipse's menus are particularly overcrowded and hard to manage. This project would be a bold endeavour - a wild experiment in UI innovation. The idea is to replace the menu and toolbars with an Office 2007-ribbon-inspired structure. Here is a tentative design of the new UI. The structure consists of top-level tabs that correspond to Eclipse IDE perspectives. Under the current tab are groups of buttons with labels on the bottom (like Office 2007). The groups correspond to the current top-level menus. Labels display the full menu on click (unlike Office 2007). The buttons in each group represent a list of relevant actions determined based on some intelligent mix of most-frequently- and most-recently-used statistics. The structure has enough room for 3 rows of buttons in small format with small (16x16) icon and optional label to the right (like Office 2007). The most relevant buttons are displayed in large format when possible, filling all three rows, with a large icon and label below. The structure automatically expands and shrinks based on window size to take advantage of all available space on modern high-resolution/wide-screen displays (like Office 2007).<br />
| Nikolay Botev<br />
| <br />
| <br />
| Nikolay Botev, San Jose State University - San Jose, California, USA.<br />
|-<br />
| Equinox and SAT4J<br />
| [http://www.eclipse.org/equinox/ Equinox]<br />
| Do you like difficult problems of solving resolver problems at runtime? If so... this project is for you. The new provisioning work at Eclipse (p2) is using a new SAT Solver (SAT4J) to do complex resolver computations. This project will explore using SAT4J as the replacement for the current Equinox runtime resolver.<br />
| Chris Aniszczyk<br />
| [mailto:hargrave@us.ibm.com BJ Hargrave], [mailto:tjwatson@us.ibm.com Thomas Watson], [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| I think this should be more general. It should be about using constraint solver to replace the equinox resolver. Another open-source implementation of a solver is [http://choco-solver.net/index.php?title=Main_Page Choco]<br />
|<br />
|-<br />
| ECF and Yahoo<br />
| [http://www.eclipse.org/ecf/ ECF]<br />
| Implement a EPL'd version of the Yahoo messaging protocol and than code an ECF provider implementation for that. The baseline goal of this project is to just implement messanging for Yahoo... things like file transfer can come later or if there's time.<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Michael Berry, University of Kent, Canterbury, UK.<br />
|-<br />
| BPMN/BPEL to SCA model transformations for STP<br />
| [http://www.eclipse.org/stp/ STP]<br />
| This project will leverage and extend the existing STP Intermediate Model (STP-IM) in order to provide better support for transformations between process editors (BPMN and BPEL) and architecture editors (SCA in particular, potentially EID as well). The contribution would be of great importance to SOA developers and would therefore be an important incentive for the community adoption of the Eclipse STP. <br />
| Juan Cadavid<br />
| [mailto:adrian.mos@inria.fr Adrian Mos]<br />
|<br />
| Juan Cadavid, Universidad EAFIT, Medellín Colombia.<br />
|-<br />
| Support for StyledText<br />
| [http://www.eclipse.org/rap RAP]<br />
| One of the most asked features of RAP is the StyledText widget. Not only to show funny colored texts in your application but it's one of the most complex widgets to implement. But having at least some basic API working enabled RAP to port other parts of RCP to the web based on the new StyledText widget. More information about StyledText can be found [http://help.eclipse.org/stable/nftopic/org.eclipse.platform.doc.isv/reference/api/org/eclipse/swt/custom/StyledText.html here]. <br />
| Benjamin Muskalla<br />
| Frank Appel, Rüdiger Herrmann<br />
|<br />
| <br />
|-<br />
| Theme Editor<br />
| [http://www.eclipse.org/rap RAP]<br />
| Theming allows RAP application developers to give their applications a custom style. Currently, a theme must be defined as a .properties file. As the theming capabilities improve, these files are getting more and more complex. A theme editor should provide an easy-to-use user interface for defining themes. It could be shipped as part of the RAP tooling. For more information on the RAP theming, see the [http://help.eclipse.org/help33/index.jsp?topic=/org.eclipse.rap.help/help/html/advanced/theming.html online help].<br />
| Ralf Sternberg<br />
| [mailto:rsternberg@innoopract.com Ralf Sternberg]<br />
| <br />
| Mathias Schaeffner, Coventry University, UK<br />
|-<br />
| RAP product file<br />
| [http://www.eclipse.org/rap/ RAP]<br />
| <br />
| Balazs Brinkus<br />
| <br />
| <br />
| Balazs Brinkus, University of Szeged, Hungary<br />
|}<br />
<br />
More ideas can be found at [http://eclipse-wiki.info/GoogleSummerOfCode2007 Eclipse-Wiki], [[Mylyn Contribution Ideas|Mylyn Contribution Ideas page]], and [[Google Summer of Code 2007 Ideas|Google Summer of Code 2007 ideas]].<br />
<br />
== Unmatched Students ==<br />
Yifei Ma, Virginia Tech, Equinox<br />
<br />
Jingwen 'Owen' Ou, The University of British Columbia, Mylyn: dynamic traces and buddy list</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=Google_Summer_of_Code_2008_Ideas&diff=89579Google Summer of Code 2008 Ideas2008-03-29T02:12:46Z<p>Pombredanne.nexb.com: Some sorting of the content</p>
<hr />
<div>== Rules ==<br />
* Be creative<br />
* Be specific: what do you want to be implemented<br />
* If you are willing to mentors those ideas, add your name and email to the idea.<br />
* Ii is ok to have a project idea without parent project<br />
* If you're an interested student, add your name and email next to the idea. It is ok to have several students interested by one idea.<br />
<br />
== Ideas ==<br />
<br />
{| border=&quot;1&quot; cellpadding=&quot;2&quot; width=&quot;100%&quot;<br />
!width=&quot;20%&quot;|Title<br />
!width=&quot;5%&quot; align=&quot;center&quot;|Project<br />
!width=&quot;40%&quot;|Abstract - links to details/bugs/etc<br />
!width=&quot;10%&quot;|Reporter<br />
!width=&quot;10%&quot;|Possible mentor(s)<br />
!width=&quot;15%&quot;|Comments<br />
!width=&quot;10%&quot;|Potential students(s)<br />
|-<br />
| Support for user-defined refactorings in JDT<br />
| [http://www.eclipse.org/jdt JDT]<br />
| The idea is to produce a pattern language, rules engine, and user interface to allow the Java developer to perform queries n and make safe modifications of their code code. It's a superset of the current refactoring because ideally current refactorings could be expressed this new system, forming a nice set of initial examples. he users could then adapt those rules to their own purposes or come up with completely new ones. See {{bug|144642}} for more informations.<br />
| Ed Burnette<br />
| Martin Aeschlimann(?)<br />
| <br />
|<br />
|-<br />
| Continuous JUnit integration<br />
| [http://www.eclipse.org/jdt JDT]<br />
| Running a specific set of JUnit sets in the background while editing Java source code would help to detect defects early. The concept is to provide unobstrusive early detection and reporting of changes to source code that negatively affect its agreed upon functionality. Detecting failing tests would mark the changed source code with annotations to see which changes affected the green bar. There are already some (forgotten) bugs: {{bug|12167}} and {{bug|51292}}.<br />
| Benjamin Muskalla<br />
| [mailto:ContinuousJUnitGSoC08@lemmster.de Markus Kuppe] <br />
| [http://groups.csail.mit.edu/pag/continuoustesting/ PAG]<br />
| Sam Ryan, Victoria University Wellington New Zealand. Andrew Murray, Queen's University<br />
|-<br />
| toString generation<br />
| [http://www.eclipse.org/jdt JDT]<br />
| Like the setter/getter, equals and hashcode generator, it would be nice to have a little helper to generate toString methods. See bug {{bug|26070}} and take a look at [http://code.google.com/p/generate-tostring/wiki/Features this plugin] for some ideas. <br />
| Benjamin Muskalla<br />
| [mailto:toStringGSoC08@lemmster.de Markus Kuppe]<br />
| [http://eclipse-jutils.sourceforge.net/ JUtils]<br />
| Michelangelo De Simone, University of Salerno - Italy. Michael Diamond, Dartmouth College. Sam Ryan, Victoria University Wellington New Zealand. Andrew Murray, Queen's University<br />
|-<br />
| JDT and Google Code Search service <br />
| [http://www.eclipse.org/jdt JDT]<br />
| JDT and Google Code Search service integration: a)During debug under JDT source code are often unavailable. Google Code Search Source Provider should provide source code for corresponding class. b)Integrate common JDT search possibilities (for example &quot;Search\References&quot;) with Google Code Search Service (Search not under local projects but in Web too).<br />
| Andrey Vakunov<br />
| <br />
|<br />
| Michelangelo De Simone, University of Salerno - Italy. Andrey Vakunov, Grodno State University<br />
|-<br />
| Implement a search mechanism for BPMN diagrams<br />
| [[STP/BPMN_Component|BPMN]]<br />
| Research indexing of domain specific models persisted in an XML format. Apply this research to indexing and searching BPMN diagrams.<br />
| Antoine Toulme<br />
| [mailto:antoine@lunar-ocean.com Antoine Toulme], [mailto:hmalphettes@intalio.com Hugues Malphettes]<br />
|<br />
|<br />
|-<br />
| Improve the usability of the BPMN editor<br />
| [[STP/BPMN_Component|BPMN]]<br />
| Gather feedback from users of the modeler. Select enhancements to support and develop them.<br />
| Antoine Toulme<br />
| [mailto:antoine@lunar-ocean.com Antoine Toulme], [mailto:hmalphettes@intalio.com Hugues Malphettes]<br />
|<br />
|<br />
|-<br />
| Support for StyledText<br />
| [http://www.eclipse.org/rap RAP]<br />
| One of the most asked features of RAP is the StyledText widget. Not only to show funny colored texts in your application but it's one of the most complex widgets to implement. But having at least some basic API working enabled RAP to port other parts of RCP to the web based on the new StyledText widget. More information about StyledText can be found [http://help.eclipse.org/stable/nftopic/org.eclipse.platform.doc.isv/reference/api/org/eclipse/swt/custom/StyledText.html here]. <br />
| Benjamin Muskalla<br />
| Frank Appel, Rüdiger Herrmann<br />
|<br />
| <br />
|-<br />
| Theme Editor<br />
| [http://www.eclipse.org/rap RAP]<br />
| Theming allows RAP application developers to give their applications a custom style. Currently, a theme must be defined as a .properties file. As the theming capabilities improve, these files are getting more and more complex. A theme editor should provide an easy-to-use user interface for defining themes. It could be shipped as part of the RAP tooling. For more information on the RAP theming, see the [http://help.eclipse.org/help33/index.jsp?topic=/org.eclipse.rap.help/help/html/advanced/theming.html online help].<br />
| Ralf Sternberg<br />
| [mailto:rsternberg@innoopract.com Ralf Sternberg]<br />
| <br />
| Mathias Schaeffner, Coventry University, UK<br />
|-<br />
| AIM Provider<br />
| [http://www.eclipse.org/ecf ECF]<br />
| ECF allows messaging protocols to be plugged in as providers. AIM isn't currently supported. The student can choose to implement the AIM (OSCAR) protocol themselves, or wrap an existing Java library like JOscar.<br />
| Chris Aniszczyk, Remy Suen<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:remy.suen@gmail.com Remy Suen]<br />
| <br />
| Michael Berry, University of Kent, Canterbury, UK. Çağatay Çallı, Middle East Technical University - Turkey. Tharindu Mathew, University of Moratuwa Sri Lanka<br />
|-<br />
| DITA or DocBook Help Content Producer<br />
| [http://www.eclipse.org/eclipse/platform-ua/main.html User Assistance]<br />
| Eclipse User Assistance allows for help content to be dynamically produced. Traditionally, all Eclipse content came in the form of hand-written HTML files. This is so 90's, we should have [http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/extension-points/org_eclipse_help_contentProducer.html help content producers] to produce help content from DITA or DocBook files.<br />
| Chris Aniszczyk, Chris Goldthorpe(?)<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:cgold@us.ibm.com Chris Goldthorpe], [mailto:d_a_carver@yahoo.com David Carver]<br />
| <br />
| Zhiyang Jiang,Chinese Academy of Sciences<br />
|-<br />
| GraphicsZilla<br />
| [http://www.eclipse.org/phoenix Phoenix]<br />
| Eclipse uses Bugzilla in many interesting ways. It uses it in the normal fashion for bug tracking. It also uses a modified version for IP tracking (IPZilla). This proposal is to create a GraphicsZilla to help streamline icon and graphics creation in Eclipse. This would allow not only programmers to contribute their talents to Eclipse. This would also make the process of where icons come from more transparent. See this [http://mea-bloga.blogspot.com/2007/01/graphicszilla-running-man.html blog post] and [https://bugs.eclipse.org/bugs/show_bug.cgi?id=170720 bug] for more info. Note, this would also provide a viewable repository of all the graphics used in Eclipse... which is currently lacking now.<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
|<br />
|-<br />
| Bundles in a Browser<br />
| [http://www.eclipse.org/equinox Equinox]<br />
| Eclipse runs pretty much everywhere these days... in cell phones... devices... desktops... servers... how about a web browser? This proposal is being left open-ended for a purpose. I'd like to see a student figure out how to get Eclipse plug-ins (bundles) installed into a browser like Firefox and then somehow expose working with them via some API... maybe XPCOM or Javascript. That's all ;p<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| PDE fetch script factory for SVN<br />
| [http://www.eclipse.org/pde/ pde]<br />
| So far Eclipse only support CVS in a map file build. Though there exists an SVN impl, it's not EPL<br />
| Markus Kuppe<br />
| If nobody from PDE: [mailto:fetchGSoC08@lemmster.de Markus Kuppe]<br />
| [http://wiki.eclipse.org/index.php/PDEBuild#Building_from_a_subversion_repository SVN impl]<br />
|<br />
|-<br />
| PDE Ménage à trois: Scala and Java<br />
| [http://www.eclipse.org/pde PDE]<br />
| There are some crazy people out there developing Eclipse plug-ins using languages other than Java (how dare they ;p!). Scala is one of these popular languages and there already has been [http://neilbartlett.name/blog/2007/06/13/eclipse-pde-does-scala/ some Eclipse integration] to make this happen. However, PDE suffers from limitations that strictly binds itself to Java... the goal of this project would be to analyze these PDE limitations... and come up with patches or prototyped code to let PDE play better with Scala and other languages.<br />
| Chris Aniszczyk, Neil Bartlett (?)<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Moises Osorio, Instituto Tecnologico de Culiacan, Culiacan Mexico. [mailto:wcoder.mx@gmail.com wcoder.mx@gmail.com]<br />
|-<br />
| Declarative Services (DS) Tooling<br />
| [http://www.eclipse.org/pde PDE]<br />
| Equinox finally has a stable implementation of the Declarative Services specification from OSGi. It's time to tool this beast. Any takers?<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Bartosz Michalik, Poznan University of Technology - Poland. Rafael Oliveira Nóbrega, Universidade Federal de Pernambuco - Brazil<br />
|-<br />
| PDE and JavaScript<br />
| [http://www.eclipse.org/pde PDE]<br />
| PDE allows you to create plug-ins using Java these days. This request is simply for a student to explore the realm of creating plug-ins using JavaScript or other languages. To start simple, I'd start with adding a new schema attribute of type &quot;javascript&quot; to allow plug-in authors to at least plug different languages in. From there, we can explore ideas on &quot;how would you define a view&quot; in such a way that you could take javascript or java code?<br />
| Chris Aniszczyk<br />
| Chris Aniszczyk<br />
| <br />
|<br />
|-<br />
| PDE and Equinox Transforms<br />
| [http://www.eclipse.org/pde PDE]<br />
| Equinox has a new component called transforms that allows you to transform various aspects of a plug-in during runtime. For example, a common use case is to write a transform that modifies some plugin.xml entries to not display certain menu items. This project aims to provide tooling for the transforms component so plugin authors can easily author transforms.<br />
| Chris Aniszczyk<br />
| Chris Aniszczyk<br />
| <br />
| Bartosz Michalik, Poznan University of Technology - Poland<br />
|-<br />
| IM for Eclipse<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Developers work in project teams, and team members need to communicate. An IM program integrated into Eclipse itself will be useful for this, that's optimized to transfer large amounts of code which usual IM programs limit and also allows developers to be grouped accordingly.<br />
| Tharindu Mathew<br />
| <br />
| I think it's worth to take a look at the [http://www.eclipse.org/ecf ECF] project. Most of the features are already available there.<br />
| Michael Berry, University of Kent, Canterbury, UK. Michelangelo De Simone, University of Salerno - Italy. Michael Diamond, Dartmouth College. Sam Ryan, Victoria University Wellington New Zealand<br />
|-<br />
| XpandDoc documentation generator<br />
| [http://www.eclipse.org/modeling/m2t/?project=xpand#xpand M2T/Xpand]<br />
| Xpand is a template language which allows users to comment their templates with a JavaDoc-like syntax. So far, there is no tooling that can use this documentation. The goals of the project are to (1) create an engine that can parse Xpand template comments, (2) create a commandline tool that can generate a JavaDoc-like HTML output for all template comments in a project, and (3) enhance the Xpand text editor to show template comments in a tooltip when hovering over the respective template invocation.<br />
| Peter Friese<br />
| [mailto:peter.friese@itemis.de Peter Friese]<br />
| <br />
|<br />
|-<br />
| Refactorings for Xpand / Xtend / Check<br />
| [http://www.eclipse.org/modeling/m2t/?project=xpand#xpand M2T/Xpand]<br />
| Xpand, Xtend and Check are languages for writing code generators. As your code generator grows, you'll feel the desire to restructure your code generator templates. Currently, no refactoring support is available for Xpand / Xtend / Check. We're looking for a brave student willing to fill this void.<br />
| Peter Friese<br />
| [mailto:peter.friese@itemis.de Peter Friese]<br />
| <br />
|<br />
|-<br />
| Improving the TCP/IP Monitor Plugin <br />
| [http://www.eclipse.org/webtools/server/ WTP_Server_Tools]<br />
| The TCP/IP Monitor plugin available with the Eclipse WTP could use some improvement in several areas. A few suggestions are XML prettyfying, switchable layouts, persistable message logs, tabs for concurrent listeners, proxy mode, HTTP proxy support, simulation of slow connections, documentation and overall UI and usability improvement. IMHO, such additions, alongwith other requirements expressed by developers for this plugin, would make it more popular among the Eclipse Web developer community. <br />
| Suran Jayathilaka<br />
| <br />
| <br />
| Suran Jayathilaka, University Of Colombo School Of Computing - Sri lanka<br />
|-<br />
| Generic unit testing support<br />
| [http://www.eclipse.org/dltk DLTK]?<br />
| JUnit is well integrated at the moment used to test java code. As there are many other projects which need to implement other testing tools, we should be a generalized form of the Junit framework as provide some extension points to build the implementations of other XUnit frameworks on top of it. See {{bug|180884}} for more informations.<br />
| Benjamin Muskalla<br />
| <br />
| <br />
| <br />
|-<br />
| Web-CAT Eclipse plugin<br />
| [http://web-cat.cs.vt.edu/ Web-CAT]<br />
| Web-CAT is a plug-in-based web application that supports electronic submission and automated grading of programming assignments that is presently used by over 30 universities and colleges in the United States and elsewhere. The Web-CAT Grader supports traditional models of automated program grading, and also supports grading of assignments where students do their own testing. Web-CAT is already supported by an Eclipse plugin that allows students to view graders' comments on their assignments directly within the IDE. The aim of this project is to provide support for the graders as well, i.e., to allow professors, teaching assistants, and students to mark up code with comments, assign grades (both freeform and from rubrics), and so on. This will not only make grading easier, but will also help turn Eclipse into a student-friendly code review tool, which we hope will encourage wider use of code reviews in teaching.<br />
| Jason Montojo<br />
| [mailto:jmontojo@ca.ibm.com Jason Montojo], [mailto:gvwilson@cs.utoronto.ca Greg Wilson]<br />
| <br />
| Qi Yang, University of Toronto - Canada<br />
|-<br />
| Feature Diagram plugin<br />
| [https://stanley.cdf.toronto.edu/drproject/consulting-2008-01/featdiag Feature Diagram Prototype]<br />
| &quot;Feature diagrams&quot; are a graphical notation for describing the relationships between class elements that first appeared in Michael Feathers' book &quot;[http://www.amazon.com/Working-Effectively-Legacy-Robert-Martin/dp/0131177052 Working Effectively with Legacy Code]&quot;. A prototype plugin for Eclipse that automatically produces feature diagrams, and allows users to modify their layout, now exists. The aim of this project is to connect that plugin to Eclipse's Java refactorings to allow drag-and-drop manipulation of the visual representations of fields and methods.<br />
| Greg Wilson<br />
| [mailto:gvwilson@cs.utoronto.ca Greg Wilson]<br />
| <br />
|<br />
|-<br />
| XQuery Syntax Editor<br />
| [http://www.eclipse.org/webtools/incubator XSL Tooling / Web Tools Incubator]<br />
| Provide basic support for XQuery syntax editing. Including coloring, validation, content assistance, possibly provide extensions for allowing the selection of which xquery editors can be used for validation. Preference pages for controling XQuery specificat options for generating output. Possible future ability to include debugging support.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| <br />
| Buddhika Laknath, University of Moratuwa - Sri Lanka<br />
|-<br />
| Eclipse single instance<br />
| [http://www.eclipse.org/platform platform]<br />
| More and more applications are eclipse RCP based applications. This is great but each application launch a JVM and load in memory quite often the same plug-ins. Like xul runner for mozilla, it would be interesting to have an &quot;Eclipse runner&quot;. Issues to work on are how to manage several platforms (3.1, 3.2, 3.3, etc..) and share plug-ins (in memory). update : the problem seems to be adressed with p2 provided in eclipse 3.4 M6<br />
| Mariot Chauvin<br />
| Someone from platform project<br />
| <br />
|<br />
|-<br />
| BIRT JPA or JDO Connector<br />
| [http://www.eclipse.org/birt birt]<br />
| A data connector for BIRT Reports that allows BIRT to easily access data via JPA or JDO.<br />
| Markus Kuppe<br />
| The BIRT Project Team <br />
| In [http://wiki.eclipse.org/Google_Summer_of_Code_2007_Ideas GSoC '07] the BIRT team was willing to mentor<br />
|<br />
|-<br />
| BIRT Reports and Connectors for Ad Revenue<br />
| [http://www.eclipse.org/birt birt]<br />
| This one is very business focused -- provide connectors and reports that allow Google customers and users to build their own reports on their Google Ad Revenue etc.<br />
| Kevin Peters<br />
| The BIRT Project Team <br />
| In [http://wiki.eclipse.org/Google_Summer_of_Code_2007_Ideas GSoC '07] the BIRT team was willing to mentor<br />
| [mailto:kevjay@gmail.com Kevin Peters], University of Kansas<br />
|-<br />
| Barcode Support<br />
| [http://www.eclipse.org/birt birt]<br />
| See https://bugs.eclipse.org/bugs/show_bug.cgi?id=149928 for additional details.<br />
| Kevin Peters<br />
| The BIRT Project Team <br />
| <br />
| [mailto:kevjay@gmail.com Kevin Peters], University of Kansas<br />
|-<br />
| JET Transforms/Wizards for creating project meta <br />
| [[Modeling Project Releng|Modeling Releng]]? [[Nexus_Project|Nexus]]?<br />
| Starting a new project requires a lot of duplicative code &amp; metadata: .doc plugins/features, .examples plugins/features, .test examples/features, .sdk feature, .releng project. Being able to generate this from JET templates via a wizard would make it much easier to get a project up and running -- and then get a PDE build that much easier, too.<br />
| [[User:Nickb|Nick Boldt]] <br />
| [[User:Nickb|Nick Boldt]]<br />
| <br />
| Michael Robb, Mount Royal College<br />
|-<br />
| Rich text editing and wiki integration<br />
| [http://eclipse.org/mylyn Mylyn]<br />
| Provide wiki integration. This involves providing mechanisms for rich editing and viewing of task repository comments in wiki format, potentially adding wiki editing. see also [[Mylyn/Contribution_Ideas|More ideas for Mylyn projects]]<br />
| Steffen Pingel<br />
| Steffen Pingel<br />
| There are at least two projects already providing wiki editing in Eclipse, albeit without Mylyn integration: [http://www.matheclipse.org/en/Eclipse_Wikipedia_Editor Wikipedia Editor], [http://eclipsewiki.sourceforge.net/ Wiki Editor]. &lt;/[[User:nickb]]&gt;<br />
| Jingwen 'Owen' Ou, The University of British Columbia<br />
|-<br />
| Java based Abstract Syntax Tree (AST) generator for Ada Programs<br />
| [http://eclipse.org/hibachi Hibachi]<br />
| An Abstract Syntax Tree is the base framework for many powerful tools of a language IDE. For Hibachi, the Ada Development Toolkit project (like JDT or CDT), the presence of an AST would allow many more powerful IDE features, and improve those already in place (like refactoring, code folding, reformating).<br />
| Tom Grosman<br />
| Tom Grosman, Adam Haselhuhn<br />
| For a good idea about ASTs in Eclipse, see [http://www.eclipse.org/articles/article.php?file=Article-JavaCodeManipulation_AST/index.html JDT AST]<br />
|<br />
|-<br />
| Feature implementation for Ada Development Toolkit<br />
| [http://eclipse.org/hibachi Hibachi]<br />
| Implementation of new or extension of existing Hibachi funtionality. Depending on student interest and background, features may include but are not limited to code folding, Ada body generation, object tooltips display, dependency graphs and trees, code fixing, etc.<br />
| Tom Grosman<br />
| Tom Grosman, Adam Haselhuhn<br />
|<br />
|<br />
|-<br />
| XML+CSS = IFigure<br />
| [http://www.eclipse.org/gef/ GEF/Draw2d]<br />
| Adding possibility to generate draw2d figures from XML and CSS descriptors (for example HTML subset and CSS). <br />
| Andrey Vakunov<br />
| [mailto:anthonyh_at_ca.ibm.com Anthony Hunter]<br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| Equinox Console and script language integration<br />
| [http://www.eclipse.org/equinox/ Equinox]<br />
| Integrate any script language (Groovy or JRuby or Bash :-) ) in OSGi console. Add possibilities to write in OSGi console &quot;s grep &lt;my-service-name&gt;&quot;<br />
| Andrey Vakunov<br />
| <br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| Buddy list for task assignments and CCs<br />
| [http://www.eclipse.org/mylyn/ Mylyn]<br />
| Enhance Mylyn's Rich Client Bugzilla to have an address book for CC's<br />
| Jingwen 'Owen' Ou<br />
| <br />
| Normally people work on projects with similar teammates and it would be nice to use previous queries to propose CCs. Details in [https://bugs.eclipse.org/bugs/show_bug.cgi?id=152415 bug 152415]<br />
|<br />
|-<br />
| Remote Service Deployment Tool<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Take the R-OSGi Deployment Tool idea ([http://www.iks.inf.ethz.ch/publications/files/etx07.pdf paper]) and the prototype and port it to a new platform (PDE projects, ECF remote services, p2 for deployment) so that it can be easily used within Eclipse to deploy a distributed OSGi application. <br />
| Jan S. Rellermeyer<br />
| [mailto:rellermeyer_at_inf.ethz.ch Jan S. Rellermeyer]<br />
| <br />
|<br />
|-<br />
| Enhanced Eclipse search<br />
| [http://www.eclipse.org/platform platform]<br />
| Eclipse search plugin: provide an enhanced Eclipse search: better, faster, more relevant. Think Lucene or opengrok inside Eclipse.<br />
| Philippe Ombredanne<br />
| [mailto:philippe.ombredanne_at_eclipse.org Philippe Ombredanne]<br />
| <br />
| Jeffrey Czyz, University at Buffalo. Çağatay Çallı, Middle East Technical University - Turkey. Suran Jayathilaka, University Of Colombo School Of Computing - Sri lanka<br />
|-<br />
| Eclipse-Moodle integration<br />
| <br />
| The idea of this project is to provide an Eclipse plugin for the Moodle CMS e-learning system. This tool will enable students participating in online courses to import and export resources (projects or other materials) directly from an Eclipse workspace. Integration with Mylyn (for managing tasks assigned in such courses) could be an additional feature. <br />
| Aleksandra Woźniak<br />
| <br />
| <br />
| Aleksandra Woźniak, Poznan University of Technology &amp; Adam Mickiewicz University - Poznan, Poland<br />
|-<br />
| Use case editor<br />
| [http://www.eclipse.org/proposals/ormf/ ORMF]?<br />
| Use case editor: for writing use cases in a textual form, managing sets of use cases and (maybe) generating UML diagrams as well as html and pdf files from them. <br />
| Aleksandra Woźniak<br />
| <br />
| <br />
| Aleksandra Woźniak, Poznan University of Technology &amp; Adam Mickiewicz University - Poznan, Poland<br />
|-<br />
| Augment p2 dependencies<br />
| [http://wiki.eclipse.org/Equinox_p2 p2]<br />
| In its first release, p2 limited its expression of dependencies to something equivalent to what most other package management system proposed (A package can say that it requires or conflicts with others). However several provisioning scenarios could benefit from more powerful inter-package dependencies (e.g, when mylyn and SVN are installed, install the connector). The goal of this project is to advance p2 by providing more powerful inter-package dependencies (and their mapping to the PB solver). Directions are: * more complex implications, * mapping filters into the solver, * expressing generic capabilities / dependencies (e.g. putting requirements on memory size, hard drive size, etc), * representing affinities between packages (see the OSGi notion of uses clauses) , * finding a way to automatically pick the most applicable line-up / recommendations<br />
| <br />
| [mailto:pascal_rapicault_at_ca.ibm.com Pascal Rapicault], Daniel Le Berre<br />
| <br />
|<br />
|-<br />
|Transformation from CIM to PIM<br />
| <br />
|This project aims to create a module for additional Omondo, allowing transformations from computation independent model (CIM) represented by activity diagram,to a platform independent model (PIM) represented by class diagram and use cases, based in model driven architecture (MDA) and UML. The project ([https://eclipsecon.greenmeetingsystems.com/submissions/view/609 paper]) was submitted to eclipsecon 2008.<br />
| Ernesto Suarez Lopez<br />
| <br />
| <br />
|<br />
|-<br />
|Custom menu positioning for Eclipse Monkey scripts<br />
|[http://www.eclipse.org/dash/ Dash]<br />
|Eclipse Monkey scripts must currently reside under the Scripts menu, which doesn't integrate them well with existing functionality. When customizing a perspective, make it possible to add Monkey scripts to any menu (on the menu bar) that the user decides, both using specifiers in the script and through the UI.<br />
| [[User:Nitind|Nitin Dahyabhai]]<br />
| <br />
| <br />
|<br />
|-<br />
| CDT Windows Debugger<br />
| [[CDT]]<br />
| The CDT provides a front end to many debuggers in order to unify the debug UI around the Debug Platform augmented by a number of C/C++ specific debug views. We currently support the GNU debugger on Windows in parallel with build support for the GCC tool chain. We'd also like to support integration with the Windows SDK. We have Visual C++ build support. This project would be to add in Windows Debugger support.<br />
| Doug Schaefer<br />
| [mailto:doug.schaefer_at_windriver.com Doug Schaefer]<br />
| <br />
|<br />
|-<br />
| JDT Debugger Extensibility<br />
| [http://www.eclipse.org/eclipse/debug/jdt/ JDT Debug]<br />
| The JDT debugger provides debugging services and works with any JDPA-compliant JVM. The debugger has greatly matured over the years. Debugging facilities in general have not advanced much, however. Many in the research community would like to extend the capabilities of the JDT debugger without losing (or re-writing) existing functionality. Doing so often requires customizing how the JDT debugger makes use of the Java Debug Interface (JDI). This project would open up the JDI portion of the debugger in such a way that extensibility can be accomplished in a safe manner.<br />
| Jeffrey Czyz<br />
| <br />
| <br />
| Jeffrey Czyz, University at Buffalo<br />
|-<br />
| VNC over ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Virtual Network Console is a popular screen sharing technology. It would be useful to have an implementation of VNC protocol for ECF. See [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01452.html mailing list entry by Marek Zawirski] for a more detailed description of idea.<br />
| Scott Lewis<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe<br />
| <br />
|<br />
|-<br />
| Google Calendar access using ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| [http://calendar.google.com Google Calendar] is a popular and open calendaring system. It would be useful to have an integrated ECF-based calendar for Eclipse. See [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01452.html mailing list entry by Marek Zawirski] for a more detailed description of idea.<br />
| Scott Lewis<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe<br />
| <br />
|<br />
|-<br />
| SIP VoIP implementation for ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| SIP is a popular signaling protocol, widely used for setting up VoIP calls with 2 or more participiants. This project aims to create working SIP/VoIP implementation, that will implement existing [http://wiki.eclipse.org/index.php/VOIP ECF Call API]. Implementation should allow VoIP calls using SIP from Eclipse and will make Eclipse more functional softphone with another protocol implemented (already working implementations are jingle and Skype).<br />
| Marek Zawirski<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe?<br />
| <br />
| Marek Zawirski, Poznan University of Technology - Poland<br />
|-<br />
| Further ECF and Mylyn integration<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Improvement of distributed development process is common goal of Mylyn and ECF projects. There have been [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01195.html some efforts] of integrating these projects. However, there are still some fields where integration could be further extended. This especially covers contacting easily with other developers when doing issue-oriented development with Mylyn. Goal of this project is to extend integration between Mylyn and ECF to allow easy task-oriented communication or task exchange.<br />
| Marek Zawirski<br />
| Remy Suen, Scott Lewis, Chris Aniszczyk, Markus Kuppe?<br />
| <br />
|<br />
|-<br />
| Customizable display of objects in CDT debugger<br />
| [[CDT]]<br />
| Variables view of CDT debugger currently displays object variables as trees with each data member represented by a separate node. Some types, like std::string, have a complex internal structure, but a simple meaning. Having to open multiple levels of node hierarchy to see the contents of a string is very annoying. In most cases user does not care about all details of the string object and just wants to see the contents of the string. This problem can be solved by supporting user-defined auto expansion rules defining display formats for commonly used types. See {{bug|155331}} for more information.<br />
| Sergey Prigogin<br />
| [mailto:eclipse.sprigogin@gmail.com Sergey Prigogin]<br />
| <br />
|<br />
|-<br />
| Patch file editor with an outline view<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Juggling patches is the practice of every day work for all Eclipse developers. The goal of the project is to create a patch file editor with an outline view. The outline view would allow not only browsing the patch, but also navigating to included files, applying only selected hunks and so on.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Details and initial code in {{bug|190418}}.<br />
|<br />
|-<br />
| &quot;Compare With&quot; dialog<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| The goal of the project is to add a dialog allowing the user to select resources to compare. At this momement the user need to select 2 or 3 files with ctrl-clicking. This is not always as easy and reliable as it seems. The dialog would allow browsing the workspace or file system to locate the resource for comparison. Drag'n'dropping would be also very useful.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| See bug {{bug|224562}} for details.<br />
|<br />
|-<br />
| Patches comparison<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Juggling patches is the practice of every day work for all Eclipse developers. There are certain use cases when the user would like to compare two patches against each other. The problem is that straight comparison (two patches alone) is not enough, what we need here is comparing diffs in context.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Details in {{bug|198149}} and {{bug|213043}}.<br />
|<br />
|-<br />
| diff from any comparison<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Generating a patch from any comparison is a very common request. It comes in many flavours: users would like to save a patch while comparing two files, two version in local history, current version and a one with a tag and so on. One thing they have in common is the ability to create a patch from actual comparison. It would be definietly a nice feature to have.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Some of the bugs {{bug|71374}}, {{bug|103681}}, {{bug|151980}}...<br />
|<br />
|-<br />
| Novel Rich Client<br />
| [http://www.eclipsemozilla.org EclipseMozilla.org]<br />
| Use the EclipseMozilla browser component and find new ways to program rich client applications. Especially, combining Eclipse technology with HTML and Flash is of interest. You should mesh Eclipse technology with web technologies to create a new unique way for rich client programming. This is a very innovative task. For more info contact me.<br />
| Thomas Derflinger<br />
| [mailto:tderflinger@gmail.com Thomas Derflinger]<br />
|<br />
| <br />
|-<br />
| Split File Editor<br />
| [http://www.eclipse.org/eclipse/platform-text/ Platform Text]<br />
| Implement a split file editor functionality: bug [https://bugs.eclipse.org/bugs/show_bug.cgi?id=8009 8009], the most voted-for bug ever in the entire Eclipse universe with &gt;180 votes<br />
| Nikolay Botev<br />
| <br />
| <br />
| Nikolay Botev, San Jose State University - San Jose, California, USA.<br />
|-<br />
| Office-2007-ribbon-inspired UI<br />
| [http://www.eclipse.org/eclipse/platform-ui/ Platform UI]<br />
| Toolbars and Menus are so 20th century (extremely outdated) and un-user-friendly. Eclipse's menus are particularly overcrowded and hard to manage. This project would be a bold endeavour - a wild experiment in UI innovation. The idea is to replace the menu and toolbars with an Office 2007-ribbon-inspired structure. Here is a tentative design of the new UI. The structure consists of top-level tabs that correspond to Eclipse IDE perspectives. Under the current tab are groups of buttons with labels on the bottom (like Office 2007). The groups correspond to the current top-level menus. Labels display the full menu on click (unlike Office 2007). The buttons in each group represent a list of relevant actions determined based on some intelligent mix of most-frequently- and most-recently-used statistics. The structure has enough room for 3 rows of buttons in small format with small (16x16) icon and optional label to the right (like Office 2007). The most relevant buttons are displayed in large format when possible, filling all three rows, with a large icon and label below. The structure automatically expands and shrinks based on window size to take advantage of all available space on modern high-resolution/wide-screen displays (like Office 2007).<br />
| Nikolay Botev<br />
| <br />
| <br />
| Nikolay Botev, San Jose State University - San Jose, California, USA.<br />
|-<br />
| Equinox and SAT4J<br />
| [http://www.eclipse.org/equinox/ Equinox]<br />
| Do you like difficult problems of solving resolver problems at runtime? If so... this project is for you. The new provisioning work at Eclipse (p2) is using a new SAT Solver (SAT4J) to do complex resolver computations. This project will explore using SAT4J as the replacement for the current Equinox runtime resolver.<br />
| Chris Aniszczyk<br />
| [mailto:hargrave@us.ibm.com BJ Hargrave], [mailto:tjwatson@us.ibm.com Thomas Watson], [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| I think this should be more general. It should be about using constraint solver to replace the equinox resolver. Another open-source implementation of a solver is [http://choco-solver.net/index.php?title=Main_Page Choco]<br />
|<br />
|-<br />
| ECF and Yahoo<br />
| [http://www.eclipse.org/ecf/ ECF]<br />
| Implement a EPL'd version of the Yahoo messaging protocol and than code an ECF provider implementation for that. The baseline goal of this project is to just implement messanging for Yahoo... things like file transfer can come later or if there's time.<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Michael Berry, University of Kent, Canterbury, UK.<br />
|-<br />
| BPMN/BPEL to SCA model transformations for STP<br />
| [http://www.eclipse.org/stp/ STP]<br />
| This project will leverage and extend the existing STP Intermediate Model (STP-IM) in order to provide better support for transformations between process editors (BPMN and BPEL) and architecture editors (SCA in particular, potentially EID as well). The contribution would be of great importance to SOA developers and would therefore be an important incentive for the community adoption of the Eclipse STP. <br />
| Juan Cadavid<br />
| [mailto:adrian.mos@inria.fr Adrian Mos]<br />
|<br />
| Juan Cadavid, Universidad EAFIT, Medellín Colombia.<br />
|-<br />
| RAP product file<br />
| [http://www.eclipse.org/rap/ RAP]<br />
| <br />
| Balazs Brinkus<br />
| <br />
| <br />
| Balazs Brinkus, University of Szeged, Hungary<br />
|}<br />
<br />
More ideas can be found at [http://eclipse-wiki.info/GoogleSummerOfCode2007 Eclipse-Wiki], [[Mylyn Contribution Ideas|Mylyn Contribution Ideas page]], and [[Google Summer of Code 2007 Ideas|Google Summer of Code 2007 ideas]].<br />
<br />
== Unmatched Students ==<br />
Yifei Ma, Virginia Tech, Equinox<br />
<br />
Jingwen 'Owen' Ou, The University of British Columbia, Mylyn: dynamic traces and buddy list</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=Google_Summer_of_Code_2008_Ideas&diff=89573Google Summer of Code 2008 Ideas2008-03-29T01:55:58Z<p>Pombredanne.nexb.com: Undo revision 89572 by Pombredanne.nexb.com (Talk)</p>
<hr />
<div>== Rules ==<br />
* Be creative<br />
* Be specific: what do you want to be implemented<br />
* If you are willing to mentors those ideas, add your name and email to the idea.<br />
* Ii is ok to have a project idea without parent project<br />
* If you're an interested student, add your name and email next to the idea. It is ok to have several students interested by one idea.<br />
<br />
== Ideas ==<br />
<br />
{| border=&quot;1&quot; cellpadding=&quot;2&quot; width=&quot;100%&quot;<br />
!width=&quot;20%&quot;|Title<br />
!width=&quot;5%&quot; align=&quot;center&quot;|Project<br />
!width=&quot;40%&quot;|Abstract - links to details/bugs/etc<br />
!width=&quot;10%&quot;|Reporter<br />
!width=&quot;10%&quot;|Possible mentor(s)<br />
!width=&quot;15%&quot;|Comments<br />
!width=&quot;10%&quot;|Potential students(s)<br />
|-<br />
| Support for user-defined refactorings in JDT<br />
| [http://www.eclipse.org/jdt JDT]<br />
| The idea is to produce a pattern language, rules engine, and user interface to allow the Java developer to perform queries n and make safe modifications of their code code. It's a superset of the current refactoring because ideally current refactorings could be expressed this new system, forming a nice set of initial examples. he users could then adapt those rules to their own purposes or come up with completely new ones. See {{bug|144642}} for more informations.<br />
| Ed Burnette<br />
| Martin Aeschlimann(?)<br />
| <br />
|<br />
|-<br />
| Implement a search mechanism for BPMN diagrams<br />
| [[STP/BPMN_Component|BPMN]]<br />
| Research indexing of domain specific models persisted in an XML format. Apply this research to indexing and searching BPMN diagrams.<br />
| Antoine Toulme<br />
| [mailto:antoine@lunar-ocean.com Antoine Toulme], [mailto:hmalphettes@intalio.com Hugues Malphettes]<br />
|<br />
|<br />
|-<br />
| Improve the usability of the BPMN editor<br />
| [[STP/BPMN_Component|BPMN]]<br />
| Gather feedback from users of the modeler. Select enhancements to support and develop them.<br />
| Antoine Toulme<br />
| [mailto:antoine@lunar-ocean.com Antoine Toulme], [mailto:hmalphettes@intalio.com Hugues Malphettes]<br />
|<br />
|<br />
|-<br />
| Support for StyledText<br />
| [http://www.eclipse.org/rap RAP]<br />
| One of the most asked features of RAP is the StyledText widget. Not only to show funny colored texts in your application but it's one of the most complex widgets to implement. But having at least some basic API working enabled RAP to port other parts of RCP to the web based on the new StyledText widget. More information about StyledText can be found [http://help.eclipse.org/stable/nftopic/org.eclipse.platform.doc.isv/reference/api/org/eclipse/swt/custom/StyledText.html here]. <br />
| Benjamin Muskalla<br />
| Frank Appel, Rüdiger Herrmann<br />
|<br />
| <br />
|-<br />
| Theme Editor<br />
| [http://www.eclipse.org/rap RAP]<br />
| Theming allows RAP application developers to give their applications a custom style. Currently, a theme must be defined as a .properties file. As the theming capabilities improve, these files are getting more and more complex. A theme editor should provide an easy-to-use user interface for defining themes. It could be shipped as part of the RAP tooling. For more information on the RAP theming, see the [http://help.eclipse.org/help33/index.jsp?topic=/org.eclipse.rap.help/help/html/advanced/theming.html online help].<br />
| Ralf Sternberg<br />
| [mailto:rsternberg@innoopract.com Ralf Sternberg]<br />
| <br />
| Mathias Schaeffner, Coventry University, UK<br />
|-<br />
| AIM Provider<br />
| [http://www.eclipse.org/ecf ECF]<br />
| ECF allows messaging protocols to be plugged in as providers. AIM isn't currently supported. The student can choose to implement the AIM (OSCAR) protocol themselves, or wrap an existing Java library like JOscar.<br />
| Chris Aniszczyk, Remy Suen<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:remy.suen@gmail.com Remy Suen]<br />
| <br />
| Michael Berry, University of Kent, Canterbury, UK. Çağatay Çallı, Middle East Technical University - Turkey. Tharindu Mathew, University of Moratuwa Sri Lanka<br />
|-<br />
| DITA or DocBook Help Content Producer<br />
| [http://www.eclipse.org/eclipse/platform-ua/main.html User Assistance]<br />
| Eclipse User Assistance allows for help content to be dynamically produced. Traditionally, all Eclipse content came in the form of hand-written HTML files. This is so 90's, we should have [http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/extension-points/org_eclipse_help_contentProducer.html help content producers] to produce help content from DITA or DocBook files.<br />
| Chris Aniszczyk, Chris Goldthorpe(?)<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:cgold@us.ibm.com Chris Goldthorpe], [mailto:d_a_carver@yahoo.com David Carver]<br />
| <br />
| Zhiyang Jiang,Chinese Academy of Sciences<br />
|-<br />
| GraphicsZilla<br />
| [http://www.eclipse.org/phoenix Phoenix]<br />
| Eclipse uses Bugzilla in many interesting ways. It uses it in the normal fashion for bug tracking. It also uses a modified version for IP tracking (IPZilla). This proposal is to create a GraphicsZilla to help streamline icon and graphics creation in Eclipse. This would allow not only programmers to contribute their talents to Eclipse. This would also make the process of where icons come from more transparent. See this [http://mea-bloga.blogspot.com/2007/01/graphicszilla-running-man.html blog post] and [https://bugs.eclipse.org/bugs/show_bug.cgi?id=170720 bug] for more info. Note, this would also provide a viewable repository of all the graphics used in Eclipse... which is currently lacking now.<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
|<br />
|-<br />
| Bundles in a Browser<br />
| [http://www.eclipse.org/equinox Equinox]<br />
| Eclipse runs pretty much everywhere these days... in cell phones... devices... desktops... servers... how about a web browser? This proposal is being left open-ended for a purpose. I'd like to see a student figure out how to get Eclipse plug-ins (bundles) installed into a browser like Firefox and then somehow expose working with them via some API... maybe XPCOM or Javascript. That's all ;p<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| PDE Ménage à trois: Scala and Java<br />
| [http://www.eclipse.org/pde PDE]<br />
| There are some crazy people out there developing Eclipse plug-ins using languages other than Java (how dare they ;p!). Scala is one of these popular languages and there already has been [http://neilbartlett.name/blog/2007/06/13/eclipse-pde-does-scala/ some Eclipse integration] to make this happen. However, PDE suffers from limitations that strictly binds itself to Java... the goal of this project would be to analyze these PDE limitations... and come up with patches or prototyped code to let PDE play better with Scala and other languages.<br />
| Chris Aniszczyk, Neil Bartlett (?)<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Moises Osorio, Instituto Tecnologico de Culiacan, Culiacan Mexico. [mailto:wcoder.mx@gmail.com wcoder.mx@gmail.com]<br />
|-<br />
| Declarative Services (DS) Tooling<br />
| [http://www.eclipse.org/pde PDE]<br />
| Equinox finally has a stable implementation of the Declarative Services specification from OSGi. It's time to tool this beast. Any takers?<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Bartosz Michalik, Poznan University of Technology - Poland. Rafael Oliveira Nóbrega, Universidade Federal de Pernambuco - Brazil<br />
|-<br />
| IM for Eclipse<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Developers work in project teams, and team members need to communicate. An IM program integrated into Eclipse itself will be useful for this, that's optimized to transfer large amounts of code which usual IM programs limit and also allows developers to be grouped accordingly.<br />
| Tharindu Mathew<br />
| <br />
| I think it's worth to take a look at the [http://www.eclipse.org/ecf ECF] project. Most of the features are already available there.<br />
| Michael Berry, University of Kent, Canterbury, UK. Michelangelo De Simone, University of Salerno - Italy. Michael Diamond, Dartmouth College. Sam Ryan, Victoria University Wellington New Zealand<br />
|-<br />
| XpandDoc documentation generator<br />
| [http://www.eclipse.org/modeling/m2t/?project=xpand#xpand M2T/Xpand]<br />
| Xpand is a template language which allows users to comment their templates with a JavaDoc-like syntax. So far, there is no tooling that can use this documentation. The goals of the project are to (1) create an engine that can parse Xpand template comments, (2) create a commandline tool that can generate a JavaDoc-like HTML output for all template comments in a project, and (3) enhance the Xpand text editor to show template comments in a tooltip when hovering over the respective template invocation.<br />
| Peter Friese<br />
| [mailto:peter.friese@itemis.de Peter Friese]<br />
| <br />
|<br />
|-<br />
| Refactorings for Xpand / Xtend / Check<br />
| [http://www.eclipse.org/modeling/m2t/?project=xpand#xpand M2T/Xpand]<br />
| Xpand, Xtend and Check are languages for writing code generators. As your code generator grows, you'll feel the desire to restructure your code generator templates. Currently, no refactoring support is available for Xpand / Xtend / Check. We're looking for a brave student willing to fill this void.<br />
| Peter Friese<br />
| [mailto:peter.friese@itemis.de Peter Friese]<br />
| <br />
|<br />
|-<br />
| Improving the TCP/IP Monitor Plugin <br />
| [http://www.eclipse.org/webtools/server/ WTP_Server_Tools]<br />
| The TCP/IP Monitor plugin available with the Eclipse WTP could use some improvement in several areas. A few suggestions are XML prettyfying, switchable layouts, persistable message logs, tabs for concurrent listeners, proxy mode, HTTP proxy support, simulation of slow connections, documentation and overall UI and usability improvement. IMHO, such additions, alongwith other requirements expressed by developers for this plugin, would make it more popular among the Eclipse Web developer community. <br />
| Suran Jayathilaka<br />
| <br />
| <br />
| Suran Jayathilaka, University Of Colombo School Of Computing - Sri lanka<br />
|-<br />
| Generic unit testing support<br />
| [http://www.eclipse.org/dltk DLTK]?<br />
| JUnit is well integrated at the moment used to test java code. As there are many other projects which need to implement other testing tools, we should be a generalized form of the Junit framework as provide some extension points to build the implementations of other XUnit frameworks on top of it. See {{bug|180884}} for more informations.<br />
| Benjamin Muskalla<br />
| <br />
| <br />
| <br />
|-<br />
| Continuous JUnit integration<br />
| [http://www.eclipse.org/jdt JDT]<br />
| Running a specific set of JUnit sets in the background while editing Java source code would help to detect defects early. The concept is to provide unobstrusive early detection and reporting of changes to source code that negatively affect its agreed upon functionality. Detecting failing tests would mark the changed source code with annotations to see which changes affected the green bar. There are already some (forgotten) bugs: {{bug|12167}} and {{bug|51292}}.<br />
| Benjamin Muskalla<br />
| [mailto:ContinuousJUnitGSoC08@lemmster.de Markus Kuppe] <br />
| [http://groups.csail.mit.edu/pag/continuoustesting/ PAG]<br />
| Sam Ryan, Victoria University Wellington New Zealand. Andrew Murray, Queen's University<br />
|-<br />
| toString generation<br />
| [http://www.eclipse.org/jdt JDT]<br />
| Like the setter/getter, equals and hashcode generator, it would be nice to have a little helper to generate toString methods. See bug {{bug|26070}} and take a look at [http://code.google.com/p/generate-tostring/wiki/Features this plugin] for some ideas. <br />
| Benjamin Muskalla<br />
| [mailto:toStringGSoC08@lemmster.de Markus Kuppe]<br />
| [http://eclipse-jutils.sourceforge.net/ JUtils]<br />
| Michelangelo De Simone, University of Salerno - Italy. Michael Diamond, Dartmouth College. Sam Ryan, Victoria University Wellington New Zealand. Andrew Murray, Queen's University<br />
|-<br />
| Web-CAT Eclipse plugin<br />
| [http://web-cat.cs.vt.edu/ Web-CAT]<br />
| Web-CAT is a plug-in-based web application that supports electronic submission and automated grading of programming assignments that is presently used by over 30 universities and colleges in the United States and elsewhere. The Web-CAT Grader supports traditional models of automated program grading, and also supports grading of assignments where students do their own testing. Web-CAT is already supported by an Eclipse plugin that allows students to view graders' comments on their assignments directly within the IDE. The aim of this project is to provide support for the graders as well, i.e., to allow professors, teaching assistants, and students to mark up code with comments, assign grades (both freeform and from rubrics), and so on. This will not only make grading easier, but will also help turn Eclipse into a student-friendly code review tool, which we hope will encourage wider use of code reviews in teaching.<br />
| Jason Montojo<br />
| [mailto:jmontojo@ca.ibm.com Jason Montojo], [mailto:gvwilson@cs.utoronto.ca Greg Wilson]<br />
| <br />
| Qi Yang, University of Toronto - Canada<br />
|-<br />
| Feature Diagram plugin<br />
| [https://stanley.cdf.toronto.edu/drproject/consulting-2008-01/featdiag Feature Diagram Prototype]<br />
| &quot;Feature diagrams&quot; are a graphical notation for describing the relationships between class elements that first appeared in Michael Feathers' book &quot;[http://www.amazon.com/Working-Effectively-Legacy-Robert-Martin/dp/0131177052 Working Effectively with Legacy Code]&quot;. A prototype plugin for Eclipse that automatically produces feature diagrams, and allows users to modify their layout, now exists. The aim of this project is to connect that plugin to Eclipse's Java refactorings to allow drag-and-drop manipulation of the visual representations of fields and methods.<br />
| Greg Wilson<br />
| [mailto:gvwilson@cs.utoronto.ca Greg Wilson]<br />
| <br />
|<br />
|-<br />
| XQuery Syntax Editor<br />
| [http://www.eclipse.org/webtools/incubator XSL Tooling / Web Tools Incubator]<br />
| Provide basic support for XQuery syntax editing. Including coloring, validation, content assistance, possibly provide extensions for allowing the selection of which xquery editors can be used for validation. Preference pages for controling XQuery specificat options for generating output. Possible future ability to include debugging support.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| <br />
| Buddhika Laknath, University of Moratuwa - Sri Lanka<br />
|-<br />
| Eclipse single instance<br />
| [http://www.eclipse.org/platform platform]<br />
| More and more applications are eclipse RCP based applications. This is great but each application launch a JVM and load in memory quite often the same plug-ins. Like xul runner for mozilla, it would be interesting to have an &quot;Eclipse runner&quot;. Issues to work on are how to manage several platforms (3.1, 3.2, 3.3, etc..) and share plug-ins (in memory). update : the problem seems to be adressed with p2 provided in eclipse 3.4 M6<br />
| Mariot Chauvin<br />
| Someone from platform project<br />
| <br />
|<br />
|-<br />
| BIRT JPA or JDO Connector<br />
| [http://www.eclipse.org/birt birt]<br />
| A data connector for BIRT Reports that allows BIRT to easily access data via JPA or JDO.<br />
| Markus Kuppe<br />
| The BIRT Project Team <br />
| In [http://wiki.eclipse.org/Google_Summer_of_Code_2007_Ideas GSoC '07] the BIRT team was willing to mentor<br />
|<br />
|-<br />
| BIRT Reports and Connectors for Ad Revenue<br />
| [http://www.eclipse.org/birt birt]<br />
| This one is very business focused -- provide connectors and reports that allow Google customers and users to build their own reports on their Google Ad Revenue etc.<br />
| Kevin Peters<br />
| The BIRT Project Team <br />
| In [http://wiki.eclipse.org/Google_Summer_of_Code_2007_Ideas GSoC '07] the BIRT team was willing to mentor<br />
| [mailto:kevjay@gmail.com Kevin Peters], University of Kansas<br />
|-<br />
| Barcode Support<br />
| [http://www.eclipse.org/birt birt]<br />
| See https://bugs.eclipse.org/bugs/show_bug.cgi?id=149928 for additional details.<br />
| Kevin Peters<br />
| The BIRT Project Team <br />
| <br />
| [mailto:kevjay@gmail.com Kevin Peters], University of Kansas<br />
|-<br />
| PDE fetch script factory for SVN<br />
| [http://www.eclipse.org/pde/ pde]<br />
| So far Eclipse only support CVS in a map file build. Though there exists an SVN impl, it's not EPL<br />
| Markus Kuppe<br />
| If nobody from PDE: [mailto:fetchGSoC08@lemmster.de Markus Kuppe]<br />
| [http://wiki.eclipse.org/index.php/PDEBuild#Building_from_a_subversion_repository SVN impl]<br />
|<br />
|-<br />
| JET Transforms/Wizards for creating project meta <br />
| [[Modeling Project Releng|Modeling Releng]]? [[Nexus_Project|Nexus]]?<br />
| Starting a new project requires a lot of duplicative code &amp; metadata: .doc plugins/features, .examples plugins/features, .test examples/features, .sdk feature, .releng project. Being able to generate this from JET templates via a wizard would make it much easier to get a project up and running -- and then get a PDE build that much easier, too.<br />
| [[User:Nickb|Nick Boldt]] <br />
| [[User:Nickb|Nick Boldt]]<br />
| <br />
| Michael Robb, Mount Royal College<br />
|-<br />
| Rich text editing and wiki integration<br />
| [http://eclipse.org/mylyn Mylyn]<br />
| Provide wiki integration. This involves providing mechanisms for rich editing and viewing of task repository comments in wiki format, potentially adding wiki editing. see also [[Mylyn/Contribution_Ideas|More ideas for Mylyn projects]]<br />
| Steffen Pingel<br />
| Steffen Pingel<br />
| There are at least two projects already providing wiki editing in Eclipse, albeit without Mylyn integration: [http://www.matheclipse.org/en/Eclipse_Wikipedia_Editor Wikipedia Editor], [http://eclipsewiki.sourceforge.net/ Wiki Editor]. &lt;/[[User:nickb]]&gt;<br />
| Jingwen 'Owen' Ou, The University of British Columbia<br />
|-<br />
| Java based Abstract Syntax Tree (AST) generator for Ada Programs<br />
| [http://eclipse.org/hibachi Hibachi]<br />
| An Abstract Syntax Tree is the base framework for many powerful tools of a language IDE. For Hibachi, the Ada Development Toolkit project (like JDT or CDT), the presence of an AST would allow many more powerful IDE features, and improve those already in place (like refactoring, code folding, reformating).<br />
| Tom Grosman<br />
| Tom Grosman, Adam Haselhuhn<br />
| For a good idea about ASTs in Eclipse, see [http://www.eclipse.org/articles/article.php?file=Article-JavaCodeManipulation_AST/index.html JDT AST]<br />
|<br />
|-<br />
| Feature implementation for Ada Development Toolkit<br />
| [http://eclipse.org/hibachi Hibachi]<br />
| Implementation of new or extension of existing Hibachi funtionality. Depending on student interest and background, features may include but are not limited to code folding, Ada body generation, object tooltips display, dependency graphs and trees, code fixing, etc.<br />
| Tom Grosman<br />
| Tom Grosman, Adam Haselhuhn<br />
|<br />
|<br />
|-<br />
| JDT and Google Code Search service <br />
| [http://www.eclipse.org/jdt JDT]<br />
| JDT and Google Code Search service integration: a)During debug under JDT source code are often unavailable. Google Code Search Source Provider should provide source code for corresponding class. b)Integrate common JDT search possibilities (for example &quot;Search\References&quot;) with Google Code Search Service (Search not under local projects but in Web too).<br />
| Andrey Vakunov<br />
| <br />
|<br />
| Michelangelo De Simone, University of Salerno - Italy. Andrey Vakunov, Grodno State University<br />
|-<br />
| XML+CSS = IFigure<br />
| [http://www.eclipse.org/gef/ GEF/Draw2d]<br />
| Adding possibility to generate draw2d figures from XML and CSS descriptors (for example HTML subset and CSS). <br />
| Andrey Vakunov<br />
| [mailto:anthonyh_at_ca.ibm.com Anthony Hunter]<br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| Equinox Console and script language integration<br />
| [http://www.eclipse.org/equinox/ Equinox]<br />
| Integrate any script language (Groovy or JRuby or Bash :-) ) in OSGi console. Add possibilities to write in OSGi console &quot;s grep &lt;my-service-name&gt;&quot;<br />
| Andrey Vakunov<br />
| <br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| Buddy list for task assignments and CCs<br />
| [http://www.eclipse.org/mylyn/ Mylyn]<br />
| Enhance Mylyn's Rich Client Bugzilla to have an address book for CC's<br />
| Jingwen 'Owen' Ou<br />
| <br />
| Normally people work on projects with similar teammates and it would be nice to use previous queries to propose CCs. Details in [https://bugs.eclipse.org/bugs/show_bug.cgi?id=152415 bug 152415]<br />
|<br />
|-<br />
| Remote Service Deployment Tool<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Take the R-OSGi Deployment Tool idea ([http://www.iks.inf.ethz.ch/publications/files/etx07.pdf paper]) and the prototype and port it to a new platform (PDE projects, ECF remote services, p2 for deployment) so that it can be easily used within Eclipse to deploy a distributed OSGi application. <br />
| Jan S. Rellermeyer<br />
| [mailto:rellermeyer_at_inf.ethz.ch Jan S. Rellermeyer]<br />
| <br />
|<br />
|-<br />
| Enhanced Eclipse search<br />
| [http://www.eclipse.org/platform platform]<br />
| Eclipse search plugin: provide an enhanced Eclipse search: better, faster, more relevant. Think Lucene or opengrok inside Eclipse.<br />
| Philippe Ombredanne<br />
| [mailto:philippe.ombredanne_at_eclipse.org Philippe Ombredanne]<br />
| <br />
| Jeffrey Czyz, University at Buffalo. Çağatay Çallı, Middle East Technical University - Turkey. Suran Jayathilaka, University Of Colombo School Of Computing - Sri lanka<br />
|-<br />
| Eclipse-Moodle integration<br />
| <br />
| The idea of this project is to provide an Eclipse plugin for the Moodle CMS e-learning system. This tool will enable students participating in online courses to import and export resources (projects or other materials) directly from an Eclipse workspace. Integration with Mylyn (for managing tasks assigned in such courses) could be an additional feature. <br />
| Aleksandra Woźniak<br />
| <br />
| <br />
| Aleksandra Woźniak, Poznan University of Technology &amp; Adam Mickiewicz University - Poznan, Poland<br />
|-<br />
| Use case editor<br />
| [http://www.eclipse.org/proposals/ormf/ ORMF]?<br />
| Use case editor: for writing use cases in a textual form, managing sets of use cases and (maybe) generating UML diagrams as well as html and pdf files from them. <br />
| Aleksandra Woźniak<br />
| <br />
| <br />
| Aleksandra Woźniak, Poznan University of Technology &amp; Adam Mickiewicz University - Poznan, Poland<br />
|-<br />
| Augment p2 dependencies<br />
| [http://wiki.eclipse.org/Equinox_p2 p2]<br />
| In its first release, p2 limited its expression of dependencies to something equivalent to what most other package management system proposed (A package can say that it requires or conflicts with others). However several provisioning scenarios could benefit from more powerful inter-package dependencies (e.g, when mylyn and SVN are installed, install the connector). The goal of this project is to advance p2 by providing more powerful inter-package dependencies (and their mapping to the PB solver). Directions are: * more complex implications, * mapping filters into the solver, * expressing generic capabilities / dependencies (e.g. putting requirements on memory size, hard drive size, etc), * representing affinities between packages (see the OSGi notion of uses clauses) , * finding a way to automatically pick the most applicable line-up / recommendations<br />
| <br />
| [mailto:pascal_rapicault_at_ca.ibm.com Pascal Rapicault], Daniel Le Berre<br />
| <br />
|<br />
|-<br />
|Transformation from CIM to PIM<br />
| <br />
|This project aims to create a module for additional Omondo, allowing transformations from computation independent model (CIM) represented by activity diagram,to a platform independent model (PIM) represented by class diagram and use cases, based in model driven architecture (MDA) and UML. The project ([https://eclipsecon.greenmeetingsystems.com/submissions/view/609 paper]) was submitted to eclipsecon 2008.<br />
| Ernesto Suarez Lopez<br />
| <br />
| <br />
|<br />
|-<br />
|Custom menu positioning for Eclipse Monkey scripts<br />
|[http://www.eclipse.org/dash/ Dash]<br />
|Eclipse Monkey scripts must currently reside under the Scripts menu, which doesn't integrate them well with existing functionality. When customizing a perspective, make it possible to add Monkey scripts to any menu (on the menu bar) that the user decides, both using specifiers in the script and through the UI.<br />
| [[User:Nitind|Nitin Dahyabhai]]<br />
| <br />
| <br />
|<br />
|-<br />
| CDT Windows Debugger<br />
| [[CDT]]<br />
| The CDT provides a front end to many debuggers in order to unify the debug UI around the Debug Platform augmented by a number of C/C++ specific debug views. We currently support the GNU debugger on Windows in parallel with build support for the GCC tool chain. We'd also like to support integration with the Windows SDK. We have Visual C++ build support. This project would be to add in Windows Debugger support.<br />
| Doug Schaefer<br />
| [mailto:doug.schaefer_at_windriver.com Doug Schaefer]<br />
| <br />
|<br />
|-<br />
| JDT Debugger Extensibility<br />
| [http://www.eclipse.org/eclipse/debug/jdt/ JDT Debug]<br />
| The JDT debugger provides debugging services and works with any JDPA-compliant JVM. The debugger has greatly matured over the years. Debugging facilities in general have not advanced much, however. Many in the research community would like to extend the capabilities of the JDT debugger without losing (or re-writing) existing functionality. Doing so often requires customizing how the JDT debugger makes use of the Java Debug Interface (JDI). This project would open up the JDI portion of the debugger in such a way that extensibility can be accomplished in a safe manner.<br />
| Jeffrey Czyz<br />
| <br />
| <br />
| Jeffrey Czyz, University at Buffalo<br />
|-<br />
| PDE and JavaScript<br />
| [http://www.eclipse.org/pde PDE]<br />
| PDE allows you to create plug-ins using Java these days. This request is simply for a student to explore the realm of creating plug-ins using JavaScript or other languages. To start simple, I'd start with adding a new schema attribute of type &quot;javascript&quot; to allow plug-in authors to at least plug different languages in. From there, we can explore ideas on &quot;how would you define a view&quot; in such a way that you could take javascript or java code?<br />
| Chris Aniszczyk<br />
| Chris Aniszczyk<br />
| <br />
|<br />
|-<br />
| PDE and Equinox Transforms<br />
| [http://www.eclipse.org/pde PDE]<br />
| Equinox has a new component called transforms that allows you to transform various aspects of a plug-in during runtime. For example, a common use case is to write a transform that modifies some plugin.xml entries to not display certain menu items. This project aims to provide tooling for the transforms component so plugin authors can easily author transforms.<br />
| Chris Aniszczyk<br />
| Chris Aniszczyk<br />
| <br />
| Bartosz Michalik, Poznan University of Technology - Poland<br />
|-<br />
| VNC over ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Virtual Network Console is a popular screen sharing technology. It would be useful to have an implementation of VNC protocol for ECF. See [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01452.html mailing list entry by Marek Zawirski] for a more detailed description of idea.<br />
| Scott Lewis<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe<br />
| <br />
|<br />
|-<br />
| Google Calendar access using ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| [http://calendar.google.com Google Calendar] is a popular and open calendaring system. It would be useful to have an integrated ECF-based calendar for Eclipse. See [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01452.html mailing list entry by Marek Zawirski] for a more detailed description of idea.<br />
| Scott Lewis<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe<br />
| <br />
|<br />
|-<br />
| SIP VoIP implementation for ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| SIP is a popular signaling protocol, widely used for setting up VoIP calls with 2 or more participiants. This project aims to create working SIP/VoIP implementation, that will implement existing [http://wiki.eclipse.org/index.php/VOIP ECF Call API]. Implementation should allow VoIP calls using SIP from Eclipse and will make Eclipse more functional softphone with another protocol implemented (already working implementations are jingle and Skype).<br />
| Marek Zawirski<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe?<br />
| <br />
| Marek Zawirski, Poznan University of Technology - Poland<br />
|-<br />
| Further ECF and Mylyn integration<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Improvement of distributed development process is common goal of Mylyn and ECF projects. There have been [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01195.html some efforts] of integrating these projects. However, there are still some fields where integration could be further extended. This especially covers contacting easily with other developers when doing issue-oriented development with Mylyn. Goal of this project is to extend integration between Mylyn and ECF to allow easy task-oriented communication or task exchange.<br />
| Marek Zawirski<br />
| Remy Suen, Scott Lewis, Chris Aniszczyk, Markus Kuppe?<br />
| <br />
|<br />
|-<br />
| Customizable display of objects in CDT debugger<br />
| [[CDT]]<br />
| Variables view of CDT debugger currently displays object variables as trees with each data member represented by a separate node. Some types, like std::string, have a complex internal structure, but a simple meaning. Having to open multiple levels of node hierarchy to see the contents of a string is very annoying. In most cases user does not care about all details of the string object and just wants to see the contents of the string. This problem can be solved by supporting user-defined auto expansion rules defining display formats for commonly used types. See {{bug|155331}} for more information.<br />
| Sergey Prigogin<br />
| [mailto:eclipse.sprigogin@gmail.com Sergey Prigogin]<br />
| <br />
|<br />
|-<br />
| Patch file editor with an outline view<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Juggling patches is the practice of every day work for all Eclipse developers. The goal of the project is to create a patch file editor with an outline view. The outline view would allow not only browsing the patch, but also navigating to included files, applying only selected hunks and so on.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Details and initial code in {{bug|190418}}.<br />
|<br />
|-<br />
| &quot;Compare With&quot; dialog<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| The goal of the project is to add a dialog allowing the user to select resources to compare. At this momement the user need to select 2 or 3 files with ctrl-clicking. This is not always as easy and reliable as it seems. The dialog would allow browsing the workspace or file system to locate the resource for comparison. Drag'n'dropping would be also very useful.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| See bug {{bug|224562}} for details.<br />
|<br />
|-<br />
| Patches comparison<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Juggling patches is the practice of every day work for all Eclipse developers. There are certain use cases when the user would like to compare two patches against each other. The problem is that straight comparison (two patches alone) is not enough, what we need here is comparing diffs in context.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Details in {{bug|198149}} and {{bug|213043}}.<br />
|<br />
|-<br />
| diff from any comparison<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Generating a patch from any comparison is a very common request. It comes in many flavours: users would like to save a patch while comparing two files, two version in local history, current version and a one with a tag and so on. One thing they have in common is the ability to create a patch from actual comparison. It would be definietly a nice feature to have.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Some of the bugs {{bug|71374}}, {{bug|103681}}, {{bug|151980}}...<br />
|<br />
|-<br />
| Novel Rich Client<br />
| [http://www.eclipsemozilla.org EclipseMozilla.org]<br />
| Use the EclipseMozilla browser component and find new ways to program rich client applications. Especially, combining Eclipse technology with HTML and Flash is of interest. You should mesh Eclipse technology with web technologies to create a new unique way for rich client programming. This is a very innovative task. For more info contact me.<br />
| Thomas Derflinger<br />
| [mailto:tderflinger@gmail.com Thomas Derflinger]<br />
|<br />
| <br />
|-<br />
| Split File Editor<br />
| [http://www.eclipse.org/eclipse/platform-text/ Platform Text]<br />
| Implement a split file editor functionality: bug [https://bugs.eclipse.org/bugs/show_bug.cgi?id=8009 8009], the most voted-for bug ever in the entire Eclipse universe with &gt;180 votes<br />
| Nikolay Botev<br />
| <br />
| <br />
| Nikolay Botev, San Jose State University - San Jose, California, USA.<br />
|-<br />
| Office-2007-ribbon-inspired UI<br />
| [http://www.eclipse.org/eclipse/platform-ui/ Platform UI]<br />
| Toolbars and Menus are so 20th century (extremely outdated) and un-user-friendly. Eclipse's menus are particularly overcrowded and hard to manage. This project would be a bold endeavour - a wild experiment in UI innovation. The idea is to replace the menu and toolbars with an Office 2007-ribbon-inspired structure. Here is a tentative design of the new UI. The structure consists of top-level tabs that correspond to Eclipse IDE perspectives. Under the current tab are groups of buttons with labels on the bottom (like Office 2007). The groups correspond to the current top-level menus. Labels display the full menu on click (unlike Office 2007). The buttons in each group represent a list of relevant actions determined based on some intelligent mix of most-frequently- and most-recently-used statistics. The structure has enough room for 3 rows of buttons in small format with small (16x16) icon and optional label to the right (like Office 2007). The most relevant buttons are displayed in large format when possible, filling all three rows, with a large icon and label below. The structure automatically expands and shrinks based on window size to take advantage of all available space on modern high-resolution/wide-screen displays (like Office 2007).<br />
| Nikolay Botev<br />
| <br />
| <br />
| Nikolay Botev, San Jose State University - San Jose, California, USA.<br />
|-<br />
| Equinox and SAT4J<br />
| [http://www.eclipse.org/equinox/ Equinox]<br />
| Do you like difficult problems of solving resolver problems at runtime? If so... this project is for you. The new provisioning work at Eclipse (p2) is using a new SAT Solver (SAT4J) to do complex resolver computations. This project will explore using SAT4J as the replacement for the current Equinox runtime resolver.<br />
| Chris Aniszczyk<br />
| [mailto:hargrave@us.ibm.com BJ Hargrave], [mailto:tjwatson@us.ibm.com Thomas Watson], [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| I think this should be more general. It should be about using constraint solver to replace the equinox resolver. Another open-source implementation of a solver is [http://choco-solver.net/index.php?title=Main_Page Choco]<br />
|<br />
|-<br />
| ECF and Yahoo<br />
| [http://www.eclipse.org/ecf/ ECF]<br />
| Implement a EPL'd version of the Yahoo messaging protocol and than code an ECF provider implementation for that. The baseline goal of this project is to just implement messanging for Yahoo... things like file transfer can come later or if there's time.<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Michael Berry, University of Kent, Canterbury, UK.<br />
|-<br />
| BPMN/BPEL to SCA model transformations for STP<br />
| [http://www.eclipse.org/stp/ STP]<br />
| This project will leverage and extend the existing STP Intermediate Model (STP-IM) in order to provide better support for transformations between process editors (BPMN and BPEL) and architecture editors (SCA in particular, potentially EID as well). The contribution would be of great importance to SOA developers and would therefore be an important incentive for the community adoption of the Eclipse STP. <br />
| Juan Cadavid<br />
| [mailto:adrian.mos@inria.fr Adrian Mos]<br />
|<br />
| Juan Cadavid, Universidad EAFIT, Medellín Colombia.<br />
|-<br />
| RAP product file<br />
| [http://www.eclipse.org/rap/ RAP]<br />
| <br />
| Balazs Brinkus<br />
| <br />
| <br />
| Balazs Brinkus, University of Szeged, Hungary<br />
|}<br />
<br />
More ideas can be found at [http://eclipse-wiki.info/GoogleSummerOfCode2007 Eclipse-Wiki], [[Mylyn Contribution Ideas|Mylyn Contribution Ideas page]], and [[Google Summer of Code 2007 Ideas|Google Summer of Code 2007 ideas]].<br />
<br />
== Unmatched Students ==<br />
Yifei Ma, Virginia Tech, Equinox<br />
<br />
Jingwen 'Owen' Ou, The University of British Columbia, Mylyn: dynamic traces and buddy list</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=Google_Summer_of_Code_2008_Ideas&diff=89572Google Summer of Code 2008 Ideas2008-03-29T01:54:14Z<p>Pombredanne.nexb.com: </p>
<hr />
<div>== Rules ==<br />
* Be creative<br />
* Be specific: what do you want to be implemented<br />
* If you are willing to mentors those ideas, add your name and email to the idea.<br />
* Ii is ok to have a project idea without parent project<br />
* If you're an interested student, add your name and email next to the idea. It is ok to have several students interested by one idea.<br />
<br />
== Ideas ==<br />
<br />
{| border=&quot;1&quot; cellpadding=&quot;2&quot; width=&quot;100%&quot;<br />
!width=&quot;20%&quot;|Title<br />
!width=&quot;5%&quot; align=&quot;center&quot;|Project<br />
!width=&quot;40%&quot;|Abstract - links to details/bugs/etc<br />
!width=&quot;10%&quot;|Reporter<br />
!width=&quot;10%&quot;|Possible mentor(s)<br />
!width=&quot;15%&quot;|Comments<br />
!width=&quot;10%&quot;|Interested students(s)<br />
|-<br />
| Support for user-defined refactorings in JDT<br />
| [http://www.eclipse.org/jdt JDT]<br />
| The idea is to produce a pattern language, rules engine, and user interface to allow the Java developer to perform queries n and make safe modifications of their code code. It's a superset of the current refactoring because ideally current refactorings could be expressed this new system, forming a nice set of initial examples. he users could then adapt those rules to their own purposes or come up with completely new ones. See {{bug|144642}} for more informations.<br />
| Ed Burnette<br />
| Martin Aeschlimann(?)<br />
| <br />
| <br />
|-<br />
| Implement a search mechanism for BPMN diagrams<br />
| [[STP/BPMN_Component|BPMN]]<br />
| Research indexing of domain specific models persisted in an XML format. Apply this research to indexing and searching BPMN diagrams.<br />
| Antoine Toulme<br />
| [mailto:antoine@lunar-ocean.com Antoine Toulme], [mailto:hmalphettes@intalio.com Hugues Malphettes]<br />
| <br />
| <br />
|-<br />
| Improve the usability of the BPMN editor<br />
| [[STP/BPMN_Component|BPMN]]<br />
| Gather feedback from users of the modeler. Select enhancements to support and develop them.<br />
| Antoine Toulme<br />
| [mailto:antoine@lunar-ocean.com Antoine Toulme], [mailto:hmalphettes@intalio.com Hugues Malphettes]<br />
| <br />
| <br />
|-<br />
| Support for StyledText<br />
| [http://www.eclipse.org/rap RAP]<br />
| One of the most asked features of RAP is the StyledText widget. Not only to show funny colored texts in your application but it's one of the most complex widgets to implement. But having at least some basic API working enabled RAP to port other parts of RCP to the web based on the new StyledText widget. More information about StyledText can be found [http://help.eclipse.org/stable/nftopic/org.eclipse.platform.doc.isv/reference/api/org/eclipse/swt/custom/StyledText.html here]. <br />
| Benjamin Muskalla<br />
| Frank Appel, Rüdiger Herrmann<br />
| <br />
| <br />
|-<br />
| Theme Editor<br />
| [http://www.eclipse.org/rap RAP]<br />
| Theming allows RAP application developers to give their applications a custom style. Currently, a theme must be defined as a .properties file. As the theming capabilities improve, these files are getting more and more complex. A theme editor should provide an easy-to-use user interface for defining themes. It could be shipped as part of the RAP tooling. For more information on the RAP theming, see the [http://help.eclipse.org/help33/index.jsp?topic=/org.eclipse.rap.help/help/html/advanced/theming.html online help].<br />
| Ralf Sternberg<br />
| [mailto:rsternberg@innoopract.com Ralf Sternberg]<br />
| <br />
| Mathias Schaeffner, Coventry University, UK<br />
|-<br />
| AIM Provider<br />
| [http://www.eclipse.org/ecf ECF]<br />
| ECF allows messaging protocols to be plugged in as providers. AIM isn't currently supported. The student can choose to implement the AIM (OSCAR) protocol themselves, or wrap an existing Java library like JOscar.<br />
| Chris Aniszczyk, Remy Suen<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:remy.suen@gmail.com Remy Suen]<br />
| <br />
| Michael Berry, University of Kent, Canterbury, UK. Çağatay Çallı, Middle East Technical University - Turkey. Tharindu Mathew, University of Moratuwa Sri Lanka<br />
|-<br />
| DITA or DocBook Help Content Producer<br />
| [http://www.eclipse.org/eclipse/platform-ua/main.html User Assistance]<br />
| Eclipse User Assistance allows for help content to be dynamically produced. Traditionally, all Eclipse content came in the form of hand-written HTML files. This is so 90's, we should have [http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/extension-points/org_eclipse_help_contentProducer.html help content producers] to produce help content from DITA or DocBook files.<br />
| Chris Aniszczyk, Chris Goldthorpe(?)<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:cgold@us.ibm.com Chris Goldthorpe], [mailto:d_a_carver@yahoo.com David Carver]<br />
| <br />
| Zhiyang Jiang,Chinese Academy of Sciences<br />
|-<br />
| GraphicsZilla<br />
| [http://www.eclipse.org/phoenix Phoenix]<br />
| Eclipse uses Bugzilla in many interesting ways. It uses it in the normal fashion for bug tracking. It also uses a modified version for IP tracking (IPZilla). This proposal is to create a GraphicsZilla to help streamline icon and graphics creation in Eclipse. This would allow not only programmers to contribute their talents to Eclipse. This would also make the process of where icons come from more transparent. See this [http://mea-bloga.blogspot.com/2007/01/graphicszilla-running-man.html blog post] and [https://bugs.eclipse.org/bugs/show_bug.cgi?id=170720 bug] for more info. Note, this would also provide a viewable repository of all the graphics used in Eclipse... which is currently lacking now.<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| <br />
|-<br />
| Bundles in a Browser<br />
| [http://www.eclipse.org/equinox Equinox]<br />
| Eclipse runs pretty much everywhere these days... in cell phones... devices... desktops... servers... how about a web browser? This proposal is being left open-ended for a purpose. I'd like to see a student figure out how to get Eclipse plug-ins (bundles) installed into a browser like Firefox and then somehow expose working with them via some API... maybe XPCOM or Javascript. That's all ;p<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| PDE Ménage à trois: Scala and Java<br />
| [http://www.eclipse.org/pde PDE]<br />
| There are some crazy people out there developing Eclipse plug-ins using languages other than Java (how dare they ;p!). Scala is one of these popular languages and there already has been [http://neilbartlett.name/blog/2007/06/13/eclipse-pde-does-scala/ some Eclipse integration] to make this happen. However, PDE suffers from limitations that strictly binds itself to Java... the goal of this project would be to analyze these PDE limitations... and come up with patches or prototyped code to let PDE play better with Scala and other languages.<br />
| Chris Aniszczyk, Neil Bartlett (?)<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Moises Osorio, Instituto Tecnologico de Culiacan, Culiacan Mexico. [mailto:wcoder.mx@gmail.com wcoder.mx@gmail.com]<br />
|-<br />
| Declarative Services (DS) Tooling<br />
| [http://www.eclipse.org/pde PDE]<br />
| Equinox finally has a stable implementation of the Declarative Services specification from OSGi. It's time to tool this beast. Any takers?<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Bartosz Michalik, Poznan University of Technology - Poland. Rafael Oliveira Nóbrega, Universidade Federal de Pernambuco - Brazil<br />
|-<br />
| IM for Eclipse<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Developers work in project teams, and team members need to communicate. An IM program integrated into Eclipse itself will be useful for this, that's optimized to transfer large amounts of code which usual IM programs limit and also allows developers to be grouped accordingly.<br />
| Tharindu Mathew<br />
| <br />
| I think it's worth to take a look at the [http://www.eclipse.org/ecf ECF] project. Most of the features are already available there.<br />
| Michael Berry, University of Kent, Canterbury, UK. Michelangelo De Simone, University of Salerno - Italy. Michael Diamond, Dartmouth College. Sam Ryan, Victoria University Wellington New Zealand<br />
|-<br />
| XpandDoc documentation generator<br />
| [http://www.eclipse.org/modeling/m2t/?project=xpand#xpand M2T/Xpand]<br />
| Xpand is a template language which allows users to comment their templates with a JavaDoc-like syntax. So far, there is no tooling that can use this documentation. The goals of the project are to (1) create an engine that can parse Xpand template comments, (2) create a commandline tool that can generate a JavaDoc-like HTML output for all template comments in a project, and (3) enhance the Xpand text editor to show template comments in a tooltip when hovering over the respective template invocation.<br />
| Peter Friese<br />
| [mailto:peter.friese@itemis.de Peter Friese]<br />
| <br />
| <br />
|-<br />
| Refactorings for Xpand / Xtend / Check<br />
| [http://www.eclipse.org/modeling/m2t/?project=xpand#xpand M2T/Xpand]<br />
| Xpand, Xtend and Check are languages for writing code generators. As your code generator grows, you'll feel the desire to restructure your code generator templates. Currently, no refactoring support is available for Xpand / Xtend / Check. We're looking for a brave student willing to fill this void.<br />
| Peter Friese<br />
| [mailto:peter.friese@itemis.de Peter Friese]<br />
| <br />
| <br />
|-<br />
| Improving the TCP/IP Monitor Plugin <br />
| [http://www.eclipse.org/webtools/server/ WTP_Server_Tools]<br />
| The TCP/IP Monitor plugin available with the Eclipse WTP could use some improvement in several areas. A few suggestions are XML prettyfying, switchable layouts, persistable message logs, tabs for concurrent listeners, proxy mode, HTTP proxy support, simulation of slow connections, documentation and overall UI and usability improvement. IMHO, such additions, alongwith other requirements expressed by developers for this plugin, would make it more popular among the Eclipse Web developer community. <br />
| Suran Jayathilaka<br />
| <br />
| <br />
| Suran Jayathilaka, University Of Colombo School Of Computing - Sri lanka<br />
|-<br />
| Generic unit testing support<br />
| [http://www.eclipse.org/dltk DLTK]?<br />
| JUnit is well integrated at the moment used to test java code. As there are many other projects which need to implement other testing tools, we should be a generalized form of the Junit framework as provide some extension points to build the implementations of other XUnit frameworks on top of it. See {{bug|180884}} for more informations.<br />
| Benjamin Muskalla<br />
| <br />
| <br />
| <br />
|-<br />
| Continuous JUnit integration<br />
| [http://www.eclipse.org/jdt JDT]<br />
| Running a specific set of JUnit sets in the background while editing Java source code would help to detect defects early. The concept is to provide unobstrusive early detection and reporting of changes to source code that negatively affect its agreed upon functionality. Detecting failing tests would mark the changed source code with annotations to see which changes affected the green bar. There are already some (forgotten) bugs: {{bug|12167}} and {{bug|51292}}.<br />
| Benjamin Muskalla<br />
| [mailto:ContinuousJUnitGSoC08@lemmster.de Markus Kuppe] <br />
| [http://groups.csail.mit.edu/pag/continuoustesting/ PAG]<br />
| Sam Ryan, Victoria University Wellington New Zealand. Andrew Murray, Queen's University<br />
|-<br />
| toString generation<br />
| [http://www.eclipse.org/jdt JDT]<br />
| Like the setter/getter, equals and hashcode generator, it would be nice to have a little helper to generate toString methods. See bug {{bug|26070}} and take a look at [http://code.google.com/p/generate-tostring/wiki/Features this plugin] for some ideas. <br />
| Benjamin Muskalla<br />
| [mailto:toStringGSoC08@lemmster.de Markus Kuppe]<br />
| [http://eclipse-jutils.sourceforge.net/ JUtils]<br />
| Michelangelo De Simone, University of Salerno - Italy. Michael Diamond, Dartmouth College. Sam Ryan, Victoria University Wellington New Zealand. Andrew Murray, Queen's University<br />
|-<br />
| Web-CAT Eclipse plugin<br />
| [http://web-cat.cs.vt.edu/ Web-CAT]<br />
easier, but will also help turn Eclipse into a student-friendly code review tool, which we hope will encourage wider use of code reviews in teaching.<br />
| Jason Montojo<br />
| [mailto:jmontojo@ca.ibm.com Jason Montojo], [mailto:gvwilson@cs.utoronto.ca Greg Wilson]<br />
| <br />
| Qi Yang, University of Toronto - Canada<br />
|-<br />
| Feature Diagram plugin<br />
| [https://stanley.cdf.toronto.edu/drproject/consulting-2008-01/featdiag Feature Diagram Prototype]<br />
| &quot;Feature diagrams&quot; are a graphical notation for describing the relationships between class elements that first appeared in Michael Feathers' book &quot;[http://www.amazon.com/Working-Effectively-Legacy-Robert-Martin/dp/0131177052 Working Effectively with Legacy Code]&quot;. A prototype plugin for Eclipse that automatically produces feature diagrams, and allows users to modify their layout, now exists. The aim of this project is to connect that plugin to Eclipse's Java refactorings to allow drag-and-drop manipulation of the visual representations of fields and methods.<br />
| Greg Wilson<br />
| [mailto:gvwilson@cs.utoronto.ca Greg Wilson]<br />
| <br />
| <br />
|-<br />
| XQuery Syntax Editor<br />
| [http://www.eclipse.org/webtools/incubator XSL Tooling / Web Tools Incubator]<br />
| Provide basic support for XQuery syntax editing. Including coloring, validation, content assistance, possibly provide extensions for allowing the selection of which xquery editors can be used for validation. Preference pages for controling XQuery specificat options for generating output. Possible future ability to include debugging support.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| <br />
| Buddhika Laknath, University of Moratuwa - Sri Lanka<br />
|-<br />
| Eclipse single instance<br />
| [http://www.eclipse.org/platform platform]<br />
| More and more applications are eclipse RCP based applications. This is great but each application launch a JVM and load in memory quite often the same plug-ins. Like xul runner for mozilla, it would be interesting to have an &quot;Eclipse runner&quot;. Issues to work on are how to manage several platforms (3.1, 3.2, 3.3, etc..) and share plug-ins (in memory). update : the problem seems to be adressed with p2 provided in eclipse 3.4 M6<br />
| Mariot Chauvin<br />
| Someone from platform project<br />
| <br />
| <br />
|-<br />
| BIRT JPA or JDO Connector<br />
| [http://www.eclipse.org/birt birt]<br />
| A data connector for BIRT Reports that allows BIRT to easily access data via JPA or JDO.<br />
| Markus Kuppe<br />
| The BIRT Project Team <br />
| In [http://wiki.eclipse.org/Google_Summer_of_Code_2007_Ideas GSoC '07] the BIRT team was willing to mentor<br />
| <br />
|-<br />
| BIRT Reports and Connectors for Ad Revenue<br />
| [http://www.eclipse.org/birt birt]<br />
| This one is very business focused -- provide connectors and reports that allow Google customers and users to build their own reports on their Google Ad Revenue etc.<br />
| Kevin Peters<br />
| The BIRT Project Team <br />
| In [http://wiki.eclipse.org/Google_Summer_of_Code_2007_Ideas GSoC '07] the BIRT team was willing to mentor<br />
| [mailto:kevjay@gmail.com Kevin Peters], University of Kansas<br />
|-<br />
| Barcode Support<br />
| [http://www.eclipse.org/birt birt]<br />
| See https://bugs.eclipse.org/bugs/show_bug.cgi?id=149928 for additional details.<br />
| Kevin Peters<br />
| The BIRT Project Team <br />
| <br />
| [mailto:kevjay@gmail.com Kevin Peters], University of Kansas<br />
|-<br />
| PDE fetch script factory for SVN<br />
| [http://www.eclipse.org/pde/ pde]<br />
| So far Eclipse only support CVS in a map file build. Though there exists an SVN impl, it's not EPL<br />
| Markus Kuppe<br />
| If nobody from PDE: [mailto:fetchGSoC08@lemmster.de Markus Kuppe]<br />
| [http://wiki.eclipse.org/index.php/PDEBuild#Building_from_a_subversion_repository SVN impl]<br />
| <br />
|-<br />
| JET Transforms/Wizards for creating project meta <br />
| [[Modeling Project Releng|Modeling Releng]]? [[Nexus_Project|Nexus]]?<br />
| Starting a new project requires a lot of duplicative code &amp; metadata: .doc plugins/features, .examples plugins/features, .test examples/features, .sdk feature, .releng project. Being able to generate this from JET templates via a wizard would make it much easier to get a project up and running -- and then get a PDE build that much easier, too.<br />
| [[User:Nickb|Nick Boldt]] <br />
| [[User:Nickb|Nick Boldt]]<br />
| <br />
| Michael Robb, Mount Royal College<br />
|-<br />
| Rich text editing and wiki integration<br />
| [http://eclipse.org/mylyn Mylyn]<br />
| Provide wiki integration. This involves providing mechanisms for rich editing and viewing of task repository comments in wiki format, potentially adding wiki editing. see also [[Mylyn/Contribution_Ideas|More ideas for Mylyn projects]]<br />
| Steffen Pingel<br />
| Steffen Pingel<br />
| There are at least two projects already providing wiki editing in Eclipse, albeit without Mylyn integration: [http://www.matheclipse.org/en/Eclipse_Wikipedia_Editor Wikipedia Editor], [http://eclipsewiki.sourceforge.net/ Wiki Editor]. &lt;/[[User:nickb]]&gt;<br />
| Jingwen 'Owen' Ou, The University of British Columbia<br />
|-<br />
| Java based Abstract Syntax Tree (AST) generator for Ada Programs<br />
| [http://eclipse.org/hibachi Hibachi]<br />
| An Abstract Syntax Tree is the base framework for many powerful tools of a language IDE. For Hibachi, the Ada Development Toolkit project (like JDT or CDT), the presence of an AST would allow many more powerful IDE features, and improve those already in place (like refactoring, code folding, reformating).<br />
| Tom Grosman<br />
| Tom Grosman, Adam Haselhuhn<br />
| For a good idea about ASTs in Eclipse, see [http://www.eclipse.org/articles/article.php?file=Article-JavaCodeManipulation_AST/index.html JDT AST]<br />
| <br />
|-<br />
| Feature implementation for Ada Development Toolkit<br />
| [http://eclipse.org/hibachi Hibachi]<br />
| Implementation of new or extension of existing Hibachi funtionality. Depending on student interest and background, features may include but are not limited to code folding, Ada body generation, object tooltips display, dependency graphs and trees, code fixing, etc.<br />
| Tom Grosman<br />
| Tom Grosman, Adam Haselhuhn<br />
| <br />
| <br />
|-<br />
| JDT and Google Code Search service <br />
| [http://www.eclipse.org/jdt JDT]<br />
| JDT and Google Code Search service integration: a)During debug under JDT source code are often unavailable. Google Code Search Source Provider should provide source code for corresponding class. b)Integrate common JDT search possibilities (for example &quot;Search\References&quot;) with Google Code Search Service (Search not under local projects but in Web too).<br />
| Andrey Vakunov<br />
| <br />
| <br />
| Michelangelo De Simone, University of Salerno - Italy. Andrey Vakunov, Grodno State University<br />
|-<br />
| XML+CSS = IFigure<br />
| [http://www.eclipse.org/gef/ GEF/Draw2d]<br />
| Adding possibility to generate draw2d figures from XML and CSS descriptors (for example HTML subset and CSS). <br />
| Andrey Vakunov<br />
| [mailto:anthonyh_at_ca.ibm.com Anthony Hunter]<br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| Equinox Console and script language integration<br />
| [http://www.eclipse.org/equinox/ Equinox]<br />
| Integrate any script language (Groovy or JRuby or Bash :-) ) in OSGi console. Add possibilities to write in OSGi console &quot;s grep &lt;my-service-name&gt;&quot;<br />
| Andrey Vakunov<br />
| <br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| Buddy list for task assignments and CCs<br />
| [http://www.eclipse.org/mylyn/ Mylyn]<br />
| Enhance Mylyn's Rich Client Bugzilla to have an address book for CC's<br />
| Jingwen 'Owen' Ou<br />
| <br />
| Normally people work on projects with similar teammates and it would be nice to use previous queries to propose CCs. Details in [https://bugs.eclipse.org/bugs/show_bug.cgi?id=152415 bug 152415]<br />
| <br />
|-<br />
| Remote Service Deployment Tool<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Take the R-OSGi Deployment Tool idea ([http://www.iks.inf.ethz.ch/publications/files/etx07.pdf paper]) and the prototype and port it to a new platform (PDE projects, ECF remote services, p2 for deployment) so that it can be easily used within Eclipse to deploy a distributed OSGi application. <br />
| Jan S. Rellermeyer<br />
| [mailto:rellermeyer_at_inf.ethz.ch Jan S. Rellermeyer]<br />
| <br />
| <br />
|-<br />
| Enhanced Eclipse search<br />
| [http://www.eclipse.org/platform platform]<br />
| Eclipse search plugin: provide an enhanced Eclipse search: better, faster, more relevant. Think Lucene or opengrok inside Eclipse.<br />
| Philippe Ombredanne<br />
| [mailto:philippe.ombredanne_at_eclipse.org Philippe Ombredanne]<br />
| <br />
| Jeffrey Czyz, University at Buffalo. Çağatay Çallı, Middle East Technical University - Turkey. Suran Jayathilaka, University Of Colombo School Of Computing - Sri lanka<br />
|-<br />
| Eclipse-Moodle integration<br />
| <br />
| The idea of this project is to provide an Eclipse plugin for the Moodle CMS e-learning system. This tool will enable students participating in online courses to import and export resources (projects or other materials) directly from an Eclipse workspace. Integration with Mylyn (for managing tasks assigned in such courses) could be an additional feature. <br />
| Aleksandra Woźniak<br />
| <br />
| <br />
| Aleksandra Woźniak, Poznan University of Technology &amp; Adam Mickiewicz University - Poznan, Poland<br />
|-<br />
| Use case editor<br />
| [http://www.eclipse.org/proposals/ormf/ ORMF]?<br />
| Use case editor: for writing use cases in a textual form, managing sets of use cases and (maybe) generating UML diagrams as well as html and pdf files from them. <br />
| Aleksandra Woźniak<br />
| <br />
| <br />
| Aleksandra Woźniak, Poznan University of Technology &amp; Adam Mickiewicz University - Poznan, Poland<br />
|-<br />
| Augment p2 dependencies<br />
| [http://wiki.eclipse.org/Equinox_p2 p2]<br />
finding a way to automatically pick the most applicable line-up / recommendations<br />
| <br />
| [mailto:pascal_rapicault_at_ca.ibm.com Pascal Rapicault], Daniel Le Berre<br />
| <br />
| <br />
|-<br />
|Transformation from CIM to PIM<br />
| <br />
|This project aims to create a module for additional Omondo, allowing transformations from computation independent model (CIM) represented by activity diagram,to a platform independent model (PIM) represented by class diagram and use cases, based in model driven architecture (MDA) and UML. The project ([https://eclipsecon.greenmeetingsystems.com/submissions/view/609 paper]) was submitted to eclipsecon 2008.<br />
| Ernesto Suarez Lopez<br />
| <br />
| <br />
| <br />
|-<br />
|Custom menu positioning for Eclipse Monkey scripts<br />
|[http://www.eclipse.org/dash/ Dash]<br />
|Eclipse Monkey scripts must currently reside under the Scripts menu, which doesn't integrate them well with existing functionality. When customizing a perspective, make it possible to add Monkey scripts to any menu (on the menu bar) that the user decides, both using specifiers in the script and through the UI.<br />
| [[User:Nitind|Nitin Dahyabhai]]<br />
| <br />
| <br />
| <br />
|-<br />
| CDT Windows Debugger<br />
| [[CDT]]<br />
| The CDT provides a front end to many debuggers in order to unify the debug UI around the Debug Platform augmented by a number of C/C++ specific debug views. We currently support the GNU debugger on Windows in parallel with build support for the GCC tool chain. We'd also like to support integration with the Windows SDK. We have Visual C++ build support. This project would be to add in Windows Debugger support.<br />
| Doug Schaefer<br />
| [mailto:doug.schaefer_at_windriver.com Doug Schaefer]<br />
| <br />
| <br />
|-<br />
| JDT Debugger Extensibility<br />
| [http://www.eclipse.org/eclipse/debug/jdt/ JDT Debug]<br />
| The JDT debugger provides debugging services and works with any JDPA-compliant JVM. The debugger has greatly matured over the years. Debugging facilities in general have not advanced much, however. Many in the research community would like to extend the capabilities of the JDT debugger without losing (or re-writing) existing functionality. Doing so often requires customizing how the JDT debugger makes use of the Java Debug Interface (JDI). This project would open up the JDI portion of the debugger in such a way that extensibility can be accomplished in a safe manner.<br />
| Jeffrey Czyz<br />
| <br />
| <br />
| Jeffrey Czyz, University at Buffalo<br />
|-<br />
| PDE and JavaScript<br />
| [http://www.eclipse.org/pde PDE]<br />
| PDE allows you to create plug-ins using Java these days. This request is simply for a student to explore the realm of creating plug-ins using JavaScript or other languages. To start simple, I'd start with adding a new schema attribute of type &quot;javascript&quot; to allow plug-in authors to at least plug different languages in. From there, we can explore ideas on &quot;how would you define a view&quot; in such a way that you could take javascript or java code?<br />
| Chris Aniszczyk<br />
| Chris Aniszczyk<br />
| <br />
| <br />
|-<br />
| PDE and Equinox Transforms<br />
| [http://www.eclipse.org/pde PDE]<br />
| Equinox has a new component called transforms that allows you to transform various aspects of a plug-in during runtime. For example, a common use case is to write a transform that modifies some plugin.xml entries to not display certain menu items. This project aims to provide tooling for the transforms component so plugin authors can easily author transforms.<br />
| Chris Aniszczyk<br />
| Chris Aniszczyk<br />
| <br />
| Bartosz Michalik, Poznan University of Technology - Poland<br />
|-<br />
| VNC over ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Virtual Network Console is a popular screen sharing technology. It would be useful to have an implementation of VNC protocol for ECF. See [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01452.html mailing list entry by Marek Zawirski] for a more detailed description of idea.<br />
| Scott Lewis<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe<br />
| <br />
| <br />
|-<br />
| Google Calendar access using ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| [http://calendar.google.com Google Calendar] is a popular and open calendaring system. It would be useful to have an integrated ECF-based calendar for Eclipse. See [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01452.html mailing list entry by Marek Zawirski] for a more detailed description of idea.<br />
| Scott Lewis<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe<br />
| <br />
| <br />
|-<br />
| SIP VoIP implementation for ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| SIP is a popular signaling protocol, widely used for setting up VoIP calls with 2 or more participiants. This project aims to create working SIP/VoIP implementation, that will implement existing [http://wiki.eclipse.org/index.php/VOIP ECF Call API]. Implementation should allow VoIP calls using SIP from Eclipse and will make Eclipse more functional softphone with another protocol implemented (already working implementations are jingle and Skype).<br />
| Marek Zawirski<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe?<br />
| <br />
| Marek Zawirski, Poznan University of Technology - Poland<br />
|-<br />
| Further ECF and Mylyn integration<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Improvement of distributed development process is common goal of Mylyn and ECF projects. There have been [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01195.html some efforts] of integrating these projects. However, there are still some fields where integration could be further extended. This especially covers contacting easily with other developers when doing issue-oriented development with Mylyn. Goal of this project is to extend integration between Mylyn and ECF to allow easy task-oriented communication or task exchange.<br />
| Marek Zawirski<br />
| Remy Suen, Scott Lewis, Chris Aniszczyk, Markus Kuppe?<br />
| <br />
| <br />
|-<br />
| Customizable display of objects in CDT debugger<br />
| [[CDT]]<br />
| Variables view of CDT debugger currently displays object variables as trees with each data member represented by a separate node. Some types, like std::string, have a complex internal structure, but a simple meaning. Having to open multiple levels of node hierarchy to see the contents of a string is very annoying. In most cases user does not care about all details of the string object and just wants to see the contents of the string. This problem can be solved by supporting user-defined auto expansion rules defining display formats for commonly used types. See {{bug|155331}} for more information.<br />
| Sergey Prigogin<br />
| [mailto:eclipse.sprigogin@gmail.com Sergey Prigogin]<br />
| <br />
| <br />
|-<br />
| Patch file editor with an outline view<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Juggling patches is the practice of every day work for all Eclipse developers. The goal of the project is to create a patch file editor with an outline view. The outline view would allow not only browsing the patch, but also navigating to included files, applying only selected hunks and so on.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Details and initial code in {{bug|190418}}.<br />
| <br />
|-<br />
| &quot;Compare With&quot; dialog<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| The goal of the project is to add a dialog allowing the user to select resources to compare. At this momement the user need to select 2 or 3 files with ctrl-clicking. This is not always as easy and reliable as it seems. The dialog would allow browsing the workspace or file system to locate the resource for comparison. Drag'n'dropping would be also very useful.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| See bug {{bug|224562}} for details.<br />
| <br />
|-<br />
| Patches comparison<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Juggling patches is the practice of every day work for all Eclipse developers. There are certain use cases when the user would like to compare two patches against each other. The problem is that straight comparison (two patches alone) is not enough, what we need here is comparing diffs in context.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Details in {{bug|198149}} and {{bug|213043}}.<br />
| <br />
|-<br />
| diff from any comparison<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Generating a patch from any comparison is a very common request. It comes in many flavours: users would like to save a patch while comparing two files, two version in local history, current version and a one with a tag and so on. One thing they have in common is the ability to create a patch from actual comparison. It would be definietly a nice feature to have.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Some of the bugs {{bug|71374}}, {{bug|103681}}, {{bug|151980}}...<br />
| <br />
|-<br />
| Novel Rich Client<br />
| [http://www.eclipsemozilla.org EclipseMozilla.org]<br />
| Use the EclipseMozilla browser component and find new ways to program rich client applications. Especially, combining Eclipse technology with HTML and Flash is of interest. You should mesh Eclipse technology with web technologies to create a new unique way for rich client programming. This is a very innovative task. For more info contact me.<br />
| Thomas Derflinger<br />
| [mailto:tderflinger@gmail.com Thomas Derflinger]<br />
| <br />
| <br />
|-<br />
| Split File Editor<br />
| [http://www.eclipse.org/eclipse/platform-text/ Platform Text]<br />
| Implement a split file editor functionality: bug [https://bugs.eclipse.org/bugs/show_bug.cgi?id=8009 8009], the most voted-for bug ever in the entire Eclipse universe with &gt;180 votes<br />
| Nikolay Botev<br />
| <br />
| <br />
| Nikolay Botev, San Jose State University - San Jose, California, USA.<br />
|-<br />
| Office-2007-ribbon-inspired UI<br />
| [http://www.eclipse.org/eclipse/platform-ui/ Platform UI]<br />
recently-used statistics. The structure has enough room for 3 rows of buttons in small format with small (16x16) icon and optional label to the right (like Office 2007). The most relevant buttons are displayed in large format when possible, filling all three rows, with a large icon and label below. The structure automatically expands and shrinks based on window size to take advantage of all available space on modern high-resolution/wide-screen displays (like Office 2007).<br />
| Nikolay Botev<br />
| <br />
| <br />
| Nikolay Botev, San Jose State University - San Jose, California, USA.<br />
|-<br />
| Equinox and SAT4J<br />
| [http://www.eclipse.org/equinox/ Equinox]<br />
| Do you like difficult problems of solving resolver problems at runtime? If so... this project is for you. The new provisioning work at Eclipse (p2) is using a new SAT Solver (SAT4J) to do complex resolver computations. This project will explore using SAT4J as the replacement for the current Equinox runtime resolver.<br />
| Chris Aniszczyk<br />
| [mailto:hargrave@us.ibm.com BJ Hargrave], [mailto:tjwatson@us.ibm.com Thomas Watson], [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| I think this should be more general. It should be about using constraint solver to replace the equinox resolver. Another open-source implementation of a solver is [http://choco-solver.net/index.php?title=Main_Page Choco]<br />
| <br />
|-<br />
| ECF and Yahoo<br />
| [http://www.eclipse.org/ecf/ ECF]<br />
| Implement a EPL'd version of the Yahoo messaging protocol and than code an ECF provider implementation for that. The baseline goal of this project is to just implement messanging for Yahoo... things like file transfer can come later or if there's time.<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Michael Berry, University of Kent, Canterbury, UK.<br />
|-<br />
| BPMN/BPEL to SCA model transformations for STP<br />
| [http://www.eclipse.org/stp/ STP]<br />
| This project will leverage and extend the existing STP Intermediate Model (STP-IM) in order to provide better support for transformations between process editors (BPMN and BPEL) and architecture editors (SCA in particular, potentially EID as well). The contribution would be of great importance to SOA developers and would therefore be an important incentive for the community adoption of the Eclipse STP. <br />
| Juan Cadavid<br />
| [mailto:adrian.mos@inria.fr Adrian Mos]<br />
| <br />
| Juan Cadavid, Universidad EAFIT, Medellín Colombia.<br />
|-<br />
| RAP product file<br />
| [http://www.eclipse.org/rap/ RAP]<br />
| <br />
| Balazs Brinkus<br />
| <br />
| <br />
| Balazs Brinkus, University of Szeged, Hungary<br />
|}<br />
<br />
More ideas can be found at [http://eclipse-wiki.info/GoogleSummerOfCode2007 Eclipse-Wiki], [[Mylyn Contribution Ideas|Mylyn Contribution Ideas page]], and [[Google Summer of Code 2007 Ideas|Google Summer of Code 2007 ideas]].<br />
<br />
== Unmatched Students ==<br />
Yifei Ma, Virginia Tech, Equinox<br />
<br />
Jingwen 'Owen' Ou, The University of British Columbia, Mylyn: dynamic traces and buddy list</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=Google_Summer_of_Code_2008_Ideas&diff=89568Google Summer of Code 2008 Ideas2008-03-29T01:41:52Z<p>Pombredanne.nexb.com: /* Ideas */ formattings</p>
<hr />
<div>== Rules ==<br />
* Be creative<br />
* Be specific: what do you want to be implemented<br />
* If you are willing to mentors those ideas, add your name and email to the idea.<br />
* Ii is ok to have a project idea without parent project<br />
* If you're an interested student, add your name and email next to the idea. It is ok to have several students interested by one idea.<br />
<br />
== Ideas ==<br />
<br />
{| border=&quot;1&quot; cellpadding=&quot;2&quot; width=&quot;100%&quot;<br />
!width=&quot;20%&quot;|Title<br />
!width=&quot;5%&quot; align=&quot;center&quot;|Project<br />
!width=&quot;40%&quot;|Abstract - links to details/bugs/etc<br />
!width=&quot;10%&quot;|Reporter<br />
!width=&quot;10%&quot;|Possible mentor(s)<br />
!width=&quot;15%&quot;|Comments<br />
!width=&quot;10%&quot;|Potential students(s)<br />
|-<br />
| Support for user-defined refactorings in JDT<br />
| [http://www.eclipse.org/jdt JDT]<br />
| The idea is to produce a pattern language, rules engine, and user interface to allow the Java developer to perform queries n and make safe modifications of their code code. It's a superset of the current refactoring because ideally current refactorings could be expressed this new system, forming a nice set of initial examples. he users could then adapt those rules to their own purposes or come up with completely new ones. See {{bug|144642}} for more informations.<br />
| Ed Burnette<br />
| Martin Aeschlimann(?)<br />
| <br />
|<br />
|-<br />
| Implement a search mechanism for BPMN diagrams<br />
| [[STP/BPMN_Component|BPMN]]<br />
| Research indexing of domain specific models persisted in an XML format. Apply this research to indexing and searching BPMN diagrams.<br />
| Antoine Toulme<br />
| [mailto:antoine@lunar-ocean.com Antoine Toulme], [mailto:hmalphettes@intalio.com Hugues Malphettes]<br />
|<br />
|<br />
|-<br />
| Improve the usability of the BPMN editor<br />
| [[STP/BPMN_Component|BPMN]]<br />
| Gather feedback from users of the modeler. Select enhancements to support and develop them.<br />
| Antoine Toulme<br />
| [mailto:antoine@lunar-ocean.com Antoine Toulme], [mailto:hmalphettes@intalio.com Hugues Malphettes]<br />
|<br />
|<br />
|-<br />
| Support for StyledText<br />
| [http://www.eclipse.org/rap RAP]<br />
| One of the most asked features of RAP is the StyledText widget. Not only to show funny colored texts in your application but it's one of the most complex widgets to implement. But having at least some basic API working enabled RAP to port other parts of RCP to the web based on the new StyledText widget. More information about StyledText can be found [http://help.eclipse.org/stable/nftopic/org.eclipse.platform.doc.isv/reference/api/org/eclipse/swt/custom/StyledText.html here]. <br />
| Benjamin Muskalla<br />
| Frank Appel, Rüdiger Herrmann<br />
|<br />
| <br />
|-<br />
| Theme Editor<br />
| [http://www.eclipse.org/rap RAP]<br />
| Theming allows RAP application developers to give their applications a custom style. Currently, a theme must be defined as a .properties file. As the theming capabilities improve, these files are getting more and more complex. A theme editor should provide an easy-to-use user interface for defining themes. It could be shipped as part of the RAP tooling. For more information on the RAP theming, see the [http://help.eclipse.org/help33/index.jsp?topic=/org.eclipse.rap.help/help/html/advanced/theming.html online help].<br />
| Ralf Sternberg<br />
| [mailto:rsternberg@innoopract.com Ralf Sternberg]<br />
| <br />
| Mathias Schaeffner, Coventry University, UK<br />
|-<br />
| AIM Provider<br />
| [http://www.eclipse.org/ecf ECF]<br />
| ECF allows messaging protocols to be plugged in as providers. AIM isn't currently supported. The student can choose to implement the AIM (OSCAR) protocol themselves, or wrap an existing Java library like JOscar.<br />
| Chris Aniszczyk, Remy Suen<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:remy.suen@gmail.com Remy Suen]<br />
| <br />
| Michael Berry, University of Kent, Canterbury, UK. Çağatay Çallı, Middle East Technical University - Turkey. Tharindu Mathew, University of Moratuwa Sri Lanka<br />
|-<br />
| DITA or DocBook Help Content Producer<br />
| [http://www.eclipse.org/eclipse/platform-ua/main.html User Assistance]<br />
| Eclipse User Assistance allows for help content to be dynamically produced. Traditionally, all Eclipse content came in the form of hand-written HTML files. This is so 90's, we should have [http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/extension-points/org_eclipse_help_contentProducer.html help content producers] to produce help content from DITA or DocBook files.<br />
| Chris Aniszczyk, Chris Goldthorpe(?)<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:cgold@us.ibm.com Chris Goldthorpe], [mailto:d_a_carver@yahoo.com David Carver]<br />
| <br />
| Zhiyang Jiang,Chinese Academy of Sciences<br />
|-<br />
| GraphicsZilla<br />
| [http://www.eclipse.org/phoenix Phoenix]<br />
| Eclipse uses Bugzilla in many interesting ways. It uses it in the normal fashion for bug tracking. It also uses a modified version for IP tracking (IPZilla). This proposal is to create a GraphicsZilla to help streamline icon and graphics creation in Eclipse. This would allow not only programmers to contribute their talents to Eclipse. This would also make the process of where icons come from more transparent. See this [http://mea-bloga.blogspot.com/2007/01/graphicszilla-running-man.html blog post] and [https://bugs.eclipse.org/bugs/show_bug.cgi?id=170720 bug] for more info. Note, this would also provide a viewable repository of all the graphics used in Eclipse... which is currently lacking now.<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
|<br />
|-<br />
| Bundles in a Browser<br />
| [http://www.eclipse.org/equinox Equinox]<br />
| Eclipse runs pretty much everywhere these days... in cell phones... devices... desktops... servers... how about a web browser? This proposal is being left open-ended for a purpose. I'd like to see a student figure out how to get Eclipse plug-ins (bundles) installed into a browser like Firefox and then somehow expose working with them via some API... maybe XPCOM or Javascript. That's all ;p<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| PDE Ménage à trois: Scala and Java<br />
| [http://www.eclipse.org/pde PDE]<br />
| There are some crazy people out there developing Eclipse plug-ins using languages other than Java (how dare they ;p!). Scala is one of these popular languages and there already has been [http://neilbartlett.name/blog/2007/06/13/eclipse-pde-does-scala/ some Eclipse integration] to make this happen. However, PDE suffers from limitations that strictly binds itself to Java... the goal of this project would be to analyze these PDE limitations... and come up with patches or prototyped code to let PDE play better with Scala and other languages.<br />
| Chris Aniszczyk, Neil Bartlett (?)<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Moises Osorio, Instituto Tecnologico de Culiacan, Culiacan Mexico. [mailto:wcoder.mx@gmail.com wcoder.mx@gmail.com]<br />
|-<br />
| Declarative Services (DS) Tooling<br />
| [http://www.eclipse.org/pde PDE]<br />
| Equinox finally has a stable implementation of the Declarative Services specification from OSGi. It's time to tool this beast. Any takers?<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Bartosz Michalik, Poznan University of Technology - Poland. Rafael Oliveira Nóbrega, Universidade Federal de Pernambuco - Brazil<br />
|-<br />
| IM for Eclipse<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Developers work in project teams, and team members need to communicate. An IM program integrated into Eclipse itself will be useful for this, that's optimized to transfer large amounts of code which usual IM programs limit and also allows developers to be grouped accordingly.<br />
| Tharindu Mathew<br />
| <br />
| I think it's worth to take a look at the [http://www.eclipse.org/ecf ECF] project. Most of the features are already available there.<br />
| Michael Berry, University of Kent, Canterbury, UK. Michelangelo De Simone, University of Salerno - Italy. Michael Diamond, Dartmouth College. Sam Ryan, Victoria University Wellington New Zealand<br />
|-<br />
| XpandDoc documentation generator<br />
| [http://www.eclipse.org/modeling/m2t/?project=xpand#xpand M2T/Xpand]<br />
| Xpand is a template language which allows users to comment their templates with a JavaDoc-like syntax. So far, there is no tooling that can use this documentation. The goals of the project are to (1) create an engine that can parse Xpand template comments, (2) create a commandline tool that can generate a JavaDoc-like HTML output for all template comments in a project, and (3) enhance the Xpand text editor to show template comments in a tooltip when hovering over the respective template invocation.<br />
| Peter Friese<br />
| [mailto:peter.friese@itemis.de Peter Friese]<br />
| <br />
|<br />
|-<br />
| Refactorings for Xpand / Xtend / Check<br />
| [http://www.eclipse.org/modeling/m2t/?project=xpand#xpand M2T/Xpand]<br />
| Xpand, Xtend and Check are languages for writing code generators. As your code generator grows, you'll feel the desire to restructure your code generator templates. Currently, no refactoring support is available for Xpand / Xtend / Check. We're looking for a brave student willing to fill this void.<br />
| Peter Friese<br />
| [mailto:peter.friese@itemis.de Peter Friese]<br />
| <br />
|<br />
|-<br />
| Improving the TCP/IP Monitor Plugin <br />
| [http://www.eclipse.org/webtools/server/ WTP_Server_Tools]<br />
| The TCP/IP Monitor plugin available with the Eclipse WTP could use some improvement in several areas. A few suggestions are XML prettyfying, switchable layouts, persistable message logs, tabs for concurrent listeners, proxy mode, HTTP proxy support, simulation of slow connections, documentation and overall UI and usability improvement. IMHO, such additions, alongwith other requirements expressed by developers for this plugin, would make it more popular among the Eclipse Web developer community. <br />
| Suran Jayathilaka<br />
| <br />
| <br />
| Suran Jayathilaka, University Of Colombo School Of Computing - Sri lanka<br />
|-<br />
| Generic unit testing support<br />
| [http://www.eclipse.org/dltk DLTK]?<br />
| JUnit is well integrated at the moment used to test java code. As there are many other projects which need to implement other testing tools, we should be a generalized form of the Junit framework as provide some extension points to build the implementations of other XUnit frameworks on top of it. See {{bug|180884}} for more informations.<br />
| Benjamin Muskalla<br />
| <br />
| <br />
| <br />
|-<br />
| Continuous JUnit integration<br />
| [http://www.eclipse.org/jdt JDT]<br />
| Running a specific set of JUnit sets in the background while editing Java source code would help to detect defects early. The concept is to provide unobstrusive early detection and reporting of changes to source code that negatively affect its agreed upon functionality. Detecting failing tests would mark the changed source code with annotations to see which changes affected the green bar. There are already some (forgotten) bugs: {{bug|12167}} and {{bug|51292}}.<br />
| Benjamin Muskalla<br />
| [mailto:ContinuousJUnitGSoC08@lemmster.de Markus Kuppe] <br />
| [http://groups.csail.mit.edu/pag/continuoustesting/ PAG]<br />
| Sam Ryan, Victoria University Wellington New Zealand. Andrew Murray, Queen's University<br />
|-<br />
| toString generation<br />
| [http://www.eclipse.org/jdt JDT]<br />
| Like the setter/getter, equals and hashcode generator, it would be nice to have a little helper to generate toString methods. See bug {{bug|26070}} and take a look at [http://code.google.com/p/generate-tostring/wiki/Features this plugin] for some ideas. <br />
| Benjamin Muskalla<br />
| [mailto:toStringGSoC08@lemmster.de Markus Kuppe]<br />
| [http://eclipse-jutils.sourceforge.net/ JUtils]<br />
| Michelangelo De Simone, University of Salerno - Italy. Michael Diamond, Dartmouth College. Sam Ryan, Victoria University Wellington New Zealand. Andrew Murray, Queen's University<br />
|-<br />
| Web-CAT Eclipse plugin<br />
| [http://web-cat.cs.vt.edu/ Web-CAT]<br />
| Web-CAT is a plug-in-based web application that supports electronic submission and automated grading of programming assignments that is presently used by over 30 universities and colleges in the United States and elsewhere. The Web-CAT Grader supports traditional models of automated program grading, and also supports grading of assignments where students do their own testing. Web-CAT is already supported by an Eclipse plugin that allows students to view graders' comments on their assignments directly within the IDE. The aim of this project is to provide support for the graders as well, i.e., to allow professors, teaching assistants, and students to mark up code with comments, assign grades (both freeform and from rubrics), and so on. This will not only make grading easier, but will also help turn Eclipse into a student-friendly code review tool, which we hope will encourage wider use of code reviews in teaching.<br />
| Jason Montojo<br />
| [mailto:jmontojo@ca.ibm.com Jason Montojo], [mailto:gvwilson@cs.utoronto.ca Greg Wilson]<br />
| <br />
| Qi Yang, University of Toronto - Canada<br />
|-<br />
| Feature Diagram plugin<br />
| [https://stanley.cdf.toronto.edu/drproject/consulting-2008-01/featdiag Feature Diagram Prototype]<br />
| &quot;Feature diagrams&quot; are a graphical notation for describing the relationships between class elements that first appeared in Michael Feathers' book &quot;[http://www.amazon.com/Working-Effectively-Legacy-Robert-Martin/dp/0131177052 Working Effectively with Legacy Code]&quot;. A prototype plugin for Eclipse that automatically produces feature diagrams, and allows users to modify their layout, now exists. The aim of this project is to connect that plugin to Eclipse's Java refactorings to allow drag-and-drop manipulation of the visual representations of fields and methods.<br />
| Greg Wilson<br />
| [mailto:gvwilson@cs.utoronto.ca Greg Wilson]<br />
| <br />
|<br />
|-<br />
| XQuery Syntax Editor<br />
| [http://www.eclipse.org/webtools/incubator XSL Tooling / Web Tools Incubator]<br />
| Provide basic support for XQuery syntax editing. Including coloring, validation, content assistance, possibly provide extensions for allowing the selection of which xquery editors can be used for validation. Preference pages for controling XQuery specificat options for generating output. Possible future ability to include debugging support.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| <br />
| Buddhika Laknath, University of Moratuwa - Sri Lanka<br />
|-<br />
| Eclipse single instance<br />
| [http://www.eclipse.org/platform platform]<br />
| More and more applications are eclipse RCP based applications. This is great but each application launch a JVM and load in memory quite often the same plug-ins. Like xul runner for mozilla, it would be interesting to have an &quot;Eclipse runner&quot;. Issues to work on are how to manage several platforms (3.1, 3.2, 3.3, etc..) and share plug-ins (in memory). update : the problem seems to be adressed with p2 provided in eclipse 3.4 M6<br />
| Mariot Chauvin<br />
| Someone from platform project<br />
| <br />
|<br />
|-<br />
| BIRT JPA or JDO Connector<br />
| [http://www.eclipse.org/birt birt]<br />
| A data connector for BIRT Reports that allows BIRT to easily access data via JPA or JDO.<br />
| Markus Kuppe<br />
| The BIRT Project Team <br />
| In [http://wiki.eclipse.org/Google_Summer_of_Code_2007_Ideas GSoC '07] the BIRT team was willing to mentor<br />
|<br />
|-<br />
| BIRT Reports and Connectors for Ad Revenue<br />
| [http://www.eclipse.org/birt birt]<br />
| This one is very business focused -- provide connectors and reports that allow Google customers and users to build their own reports on their Google Ad Revenue etc.<br />
| Kevin Peters<br />
| The BIRT Project Team <br />
| In [http://wiki.eclipse.org/Google_Summer_of_Code_2007_Ideas GSoC '07] the BIRT team was willing to mentor<br />
| [mailto:kevjay@gmail.com Kevin Peters], University of Kansas<br />
|-<br />
| Barcode Support<br />
| [http://www.eclipse.org/birt birt]<br />
| See https://bugs.eclipse.org/bugs/show_bug.cgi?id=149928 for additional details.<br />
| Kevin Peters<br />
| The BIRT Project Team <br />
| <br />
| [mailto:kevjay@gmail.com Kevin Peters], University of Kansas<br />
|-<br />
| PDE fetch script factory for SVN<br />
| [http://www.eclipse.org/pde/ pde]<br />
| So far Eclipse only support CVS in a map file build. Though there exists an SVN impl, it's not EPL<br />
| Markus Kuppe<br />
| If nobody from PDE: [mailto:fetchGSoC08@lemmster.de Markus Kuppe]<br />
| [http://wiki.eclipse.org/index.php/PDEBuild#Building_from_a_subversion_repository SVN impl]<br />
|<br />
|-<br />
| JET Transforms/Wizards for creating project meta <br />
| [[Modeling Project Releng|Modeling Releng]]? [[Nexus_Project|Nexus]]?<br />
| Starting a new project requires a lot of duplicative code &amp; metadata: .doc plugins/features, .examples plugins/features, .test examples/features, .sdk feature, .releng project. Being able to generate this from JET templates via a wizard would make it much easier to get a project up and running -- and then get a PDE build that much easier, too.<br />
| [[User:Nickb|Nick Boldt]] <br />
| [[User:Nickb|Nick Boldt]]<br />
| <br />
| Michael Robb, Mount Royal College<br />
|-<br />
| Rich text editing and wiki integration<br />
| [http://eclipse.org/mylyn Mylyn]<br />
| Provide wiki integration. This involves providing mechanisms for rich editing and viewing of task repository comments in wiki format, potentially adding wiki editing. see also [[Mylyn/Contribution_Ideas|More ideas for Mylyn projects]]<br />
| Steffen Pingel<br />
| Steffen Pingel<br />
| There are at least two projects already providing wiki editing in Eclipse, albeit without Mylyn integration: [http://www.matheclipse.org/en/Eclipse_Wikipedia_Editor Wikipedia Editor], [http://eclipsewiki.sourceforge.net/ Wiki Editor]. &lt;/[[User:nickb]]&gt;<br />
| Jingwen 'Owen' Ou, The University of British Columbia<br />
|-<br />
| Java based Abstract Syntax Tree (AST) generator for Ada Programs<br />
| [http://eclipse.org/hibachi Hibachi]<br />
| An Abstract Syntax Tree is the base framework for many powerful tools of a language IDE. For Hibachi, the Ada Development Toolkit project (like JDT or CDT), the presence of an AST would allow many more powerful IDE features, and improve those already in place (like refactoring, code folding, reformating).<br />
| Tom Grosman<br />
| Tom Grosman, Adam Haselhuhn<br />
| For a good idea about ASTs in Eclipse, see [http://www.eclipse.org/articles/article.php?file=Article-JavaCodeManipulation_AST/index.html JDT AST]<br />
|<br />
|-<br />
| Feature implementation for Ada Development Toolkit<br />
| [http://eclipse.org/hibachi Hibachi]<br />
| Implementation of new or extension of existing Hibachi funtionality. Depending on student interest and background, features may include but are not limited to code folding, Ada body generation, object tooltips display, dependency graphs and trees, code fixing, etc.<br />
| Tom Grosman<br />
| Tom Grosman, Adam Haselhuhn<br />
|<br />
|<br />
|-<br />
| JDT and Google Code Search service <br />
| [http://www.eclipse.org/jdt JDT]<br />
| JDT and Google Code Search service integration: a)During debug under JDT source code are often unavailable. Google Code Search Source Provider should provide source code for corresponding class. b)Integrate common JDT search possibilities (for example &quot;Search\References&quot;) with Google Code Search Service (Search not under local projects but in Web too).<br />
| Andrey Vakunov<br />
| <br />
|<br />
| Michelangelo De Simone, University of Salerno - Italy. Andrey Vakunov, Grodno State University<br />
|-<br />
| XML+CSS = IFigure<br />
| [http://www.eclipse.org/gef/ GEF/Draw2d]<br />
| Adding possibility to generate draw2d figures from XML and CSS descriptors (for example HTML subset and CSS). <br />
| Andrey Vakunov<br />
| [mailto:anthonyh_at_ca.ibm.com Anthony Hunter]<br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| Equinox Console and script language integration<br />
| [http://www.eclipse.org/equinox/ Equinox]<br />
| Integrate any script language (Groovy or JRuby or Bash :-) ) in OSGi console. Add possibilities to write in OSGi console &quot;s grep &lt;my-service-name&gt;&quot;<br />
| Andrey Vakunov<br />
| <br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| Buddy list for task assignments and CCs<br />
| [http://www.eclipse.org/mylyn/ Mylyn]<br />
| Enhance Mylyn's Rich Client Bugzilla to have an address book for CC's<br />
| Jingwen 'Owen' Ou<br />
| <br />
| Normally people work on projects with similar teammates and it would be nice to use previous queries to propose CCs. Details in [https://bugs.eclipse.org/bugs/show_bug.cgi?id=152415 bug 152415]<br />
|<br />
|-<br />
| Remote Service Deployment Tool<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Take the R-OSGi Deployment Tool idea ([http://www.iks.inf.ethz.ch/publications/files/etx07.pdf paper]) and the prototype and port it to a new platform (PDE projects, ECF remote services, p2 for deployment) so that it can be easily used within Eclipse to deploy a distributed OSGi application. <br />
| Jan S. Rellermeyer<br />
| [mailto:rellermeyer_at_inf.ethz.ch Jan S. Rellermeyer]<br />
| <br />
|<br />
|-<br />
| Enhanced Eclipse search<br />
| [http://www.eclipse.org/platform platform]<br />
| Eclipse search plugin: provide an enhanced Eclipse search: better, faster, more relevant. Think Lucene or opengrok inside Eclipse.<br />
| Philippe Ombredanne<br />
| [mailto:philippe.ombredanne_at_eclipse.org Philippe Ombredanne]<br />
| <br />
| Jeffrey Czyz, University at Buffalo. Çağatay Çallı, Middle East Technical University - Turkey. Suran Jayathilaka, University Of Colombo School Of Computing - Sri lanka<br />
|-<br />
| Eclipse-Moodle integration<br />
| <br />
| The idea of this project is to provide an Eclipse plugin for the Moodle CMS e-learning system. This tool will enable students participating in online courses to import and export resources (projects or other materials) directly from an Eclipse workspace. Integration with Mylyn (for managing tasks assigned in such courses) could be an additional feature. <br />
| Aleksandra Woźniak<br />
| <br />
| <br />
| Aleksandra Woźniak, Poznan University of Technology &amp; Adam Mickiewicz University - Poznan, Poland<br />
|-<br />
| Use case editor<br />
| [http://www.eclipse.org/proposals/ormf/ ORMF]?<br />
| Use case editor: for writing use cases in a textual form, managing sets of use cases and (maybe) generating UML diagrams as well as html and pdf files from them. <br />
| Aleksandra Woźniak<br />
| <br />
| <br />
| Aleksandra Woźniak, Poznan University of Technology &amp; Adam Mickiewicz University - Poznan, Poland<br />
|-<br />
| Augment p2 dependencies<br />
| [http://wiki.eclipse.org/Equinox_p2 p2]<br />
| In its first release, p2 limited its expression of dependencies to something equivalent to what most other package management system proposed (A package can say that it requires or conflicts with others). However several provisioning scenarios could benefit from more powerful inter-package dependencies (e.g, when mylyn and SVN are installed, install the connector). The goal of this project is to advance p2 by providing more powerful inter-package dependencies (and their mapping to the PB solver). Directions are: * more complex implications, * mapping filters into the solver, * expressing generic capabilities / dependencies (e.g. putting requirements on memory size, hard drive size, etc), * representing affinities between packages (see the OSGi notion of uses clauses) , * finding a way to automatically pick the most applicable line-up / recommendations<br />
| <br />
| [mailto:pascal_rapicault_at_ca.ibm.com Pascal Rapicault], Daniel Le Berre<br />
| <br />
|<br />
|-<br />
|Transformation from CIM to PIM<br />
| <br />
|This project aims to create a module for additional Omondo, allowing transformations from computation independent model (CIM) represented by activity diagram,to a platform independent model (PIM) represented by class diagram and use cases, based in model driven architecture (MDA) and UML. The project ([https://eclipsecon.greenmeetingsystems.com/submissions/view/609 paper]) was submitted to eclipsecon 2008.<br />
| Ernesto Suarez Lopez<br />
| <br />
| <br />
|<br />
|-<br />
|Custom menu positioning for Eclipse Monkey scripts<br />
|[http://www.eclipse.org/dash/ Dash]<br />
|Eclipse Monkey scripts must currently reside under the Scripts menu, which doesn't integrate them well with existing functionality. When customizing a perspective, make it possible to add Monkey scripts to any menu (on the menu bar) that the user decides, both using specifiers in the script and through the UI.<br />
| [[User:Nitind|Nitin Dahyabhai]]<br />
| <br />
| <br />
|<br />
|-<br />
| CDT Windows Debugger<br />
| [[CDT]]<br />
| The CDT provides a front end to many debuggers in order to unify the debug UI around the Debug Platform augmented by a number of C/C++ specific debug views. We currently support the GNU debugger on Windows in parallel with build support for the GCC tool chain. We'd also like to support integration with the Windows SDK. We have Visual C++ build support. This project would be to add in Windows Debugger support.<br />
| Doug Schaefer<br />
| [mailto:doug.schaefer_at_windriver.com Doug Schaefer]<br />
| <br />
|<br />
|-<br />
| JDT Debugger Extensibility<br />
| [http://www.eclipse.org/eclipse/debug/jdt/ JDT Debug]<br />
| The JDT debugger provides debugging services and works with any JDPA-compliant JVM. The debugger has greatly matured over the years. Debugging facilities in general have not advanced much, however. Many in the research community would like to extend the capabilities of the JDT debugger without losing (or re-writing) existing functionality. Doing so often requires customizing how the JDT debugger makes use of the Java Debug Interface (JDI). This project would open up the JDI portion of the debugger in such a way that extensibility can be accomplished in a safe manner.<br />
| Jeffrey Czyz<br />
| <br />
| <br />
| Jeffrey Czyz, University at Buffalo<br />
|-<br />
| PDE and JavaScript<br />
| [http://www.eclipse.org/pde PDE]<br />
| PDE allows you to create plug-ins using Java these days. This request is simply for a student to explore the realm of creating plug-ins using JavaScript or other languages. To start simple, I'd start with adding a new schema attribute of type &quot;javascript&quot; to allow plug-in authors to at least plug different languages in. From there, we can explore ideas on &quot;how would you define a view&quot; in such a way that you could take javascript or java code?<br />
| Chris Aniszczyk<br />
| Chris Aniszczyk<br />
| <br />
|<br />
|-<br />
| PDE and Equinox Transforms<br />
| [http://www.eclipse.org/pde PDE]<br />
| Equinox has a new component called transforms that allows you to transform various aspects of a plug-in during runtime. For example, a common use case is to write a transform that modifies some plugin.xml entries to not display certain menu items. This project aims to provide tooling for the transforms component so plugin authors can easily author transforms.<br />
| Chris Aniszczyk<br />
| Chris Aniszczyk<br />
| <br />
| Bartosz Michalik, Poznan University of Technology - Poland<br />
|-<br />
| VNC over ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Virtual Network Console is a popular screen sharing technology. It would be useful to have an implementation of VNC protocol for ECF. See [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01452.html mailing list entry by Marek Zawirski] for a more detailed description of idea.<br />
| Scott Lewis<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe<br />
| <br />
|<br />
|-<br />
| Google Calendar access using ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| [http://calendar.google.com Google Calendar] is a popular and open calendaring system. It would be useful to have an integrated ECF-based calendar for Eclipse. See [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01452.html mailing list entry by Marek Zawirski] for a more detailed description of idea.<br />
| Scott Lewis<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe<br />
| <br />
|<br />
|-<br />
| SIP VoIP implementation for ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| SIP is a popular signaling protocol, widely used for setting up VoIP calls with 2 or more participiants. This project aims to create working SIP/VoIP implementation, that will implement existing [http://wiki.eclipse.org/index.php/VOIP ECF Call API]. Implementation should allow VoIP calls using SIP from Eclipse and will make Eclipse more functional softphone with another protocol implemented (already working implementations are jingle and Skype).<br />
| Marek Zawirski<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe?<br />
| <br />
| Marek Zawirski, Poznan University of Technology - Poland<br />
|-<br />
| Further ECF and Mylyn integration<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Improvement of distributed development process is common goal of Mylyn and ECF projects. There have been [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01195.html some efforts] of integrating these projects. However, there are still some fields where integration could be further extended. This especially covers contacting easily with other developers when doing issue-oriented development with Mylyn. Goal of this project is to extend integration between Mylyn and ECF to allow easy task-oriented communication or task exchange.<br />
| Marek Zawirski<br />
| Remy Suen, Scott Lewis, Chris Aniszczyk, Markus Kuppe?<br />
| <br />
|<br />
|-<br />
| Customizable display of objects in CDT debugger<br />
| [[CDT]]<br />
| Variables view of CDT debugger currently displays object variables as trees with each data member represented by a separate node. Some types, like std::string, have a complex internal structure, but a simple meaning. Having to open multiple levels of node hierarchy to see the contents of a string is very annoying. In most cases user does not care about all details of the string object and just wants to see the contents of the string. This problem can be solved by supporting user-defined auto expansion rules defining display formats for commonly used types. See {{bug|155331}} for more information.<br />
| Sergey Prigogin<br />
| [mailto:eclipse.sprigogin@gmail.com Sergey Prigogin]<br />
| <br />
|<br />
|-<br />
| Patch file editor with an outline view<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Juggling patches is the practice of every day work for all Eclipse developers. The goal of the project is to create a patch file editor with an outline view. The outline view would allow not only browsing the patch, but also navigating to included files, applying only selected hunks and so on.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Details and initial code in {{bug|190418}}.<br />
|<br />
|-<br />
| &quot;Compare With&quot; dialog<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| The goal of the project is to add a dialog allowing the user to select resources to compare. At this momement the user need to select 2 or 3 files with ctrl-clicking. This is not always as easy and reliable as it seems. The dialog would allow browsing the workspace or file system to locate the resource for comparison. Drag'n'dropping would be also very useful.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| See bug {{bug|224562}} for details.<br />
|<br />
|-<br />
| Patches comparison<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Juggling patches is the practice of every day work for all Eclipse developers. There are certain use cases when the user would like to compare two patches against each other. The problem is that straight comparison (two patches alone) is not enough, what we need here is comparing diffs in context.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Details in {{bug|198149}} and {{bug|213043}}.<br />
|<br />
|-<br />
| diff from any comparison<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Generating a patch from any comparison is a very common request. It comes in many flavours: users would like to save a patch while comparing two files, two version in local history, current version and a one with a tag and so on. One thing they have in common is the ability to create a patch from actual comparison. It would be definietly a nice feature to have.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Some of the bugs {{bug|71374}}, {{bug|103681}}, {{bug|151980}}...<br />
|<br />
|-<br />
| Novel Rich Client<br />
| [http://www.eclipsemozilla.org EclipseMozilla.org]<br />
| Use the EclipseMozilla browser component and find new ways to program rich client applications. Especially, combining Eclipse technology with HTML and Flash is of interest. You should mesh Eclipse technology with web technologies to create a new unique way for rich client programming. This is a very innovative task. For more info contact me.<br />
| Thomas Derflinger<br />
| [mailto:tderflinger@gmail.com Thomas Derflinger]<br />
|<br />
| <br />
|-<br />
| Split File Editor<br />
| [http://www.eclipse.org/eclipse/platform-text/ Platform Text]<br />
| Implement a split file editor functionality: bug [https://bugs.eclipse.org/bugs/show_bug.cgi?id=8009 8009], the most voted-for bug ever in the entire Eclipse universe with &gt;180 votes<br />
| Nikolay Botev<br />
| <br />
| <br />
| Nikolay Botev, San Jose State University - San Jose, California, USA.<br />
|-<br />
| Office-2007-ribbon-inspired UI<br />
| [http://www.eclipse.org/eclipse/platform-ui/ Platform UI]<br />
| Toolbars and Menus are so 20th century (extremely outdated) and un-user-friendly. Eclipse's menus are particularly overcrowded and hard to manage. This project would be a bold endeavour - a wild experiment in UI innovation. The idea is to replace the menu and toolbars with an Office 2007-ribbon-inspired structure. Here is a tentative design of the new UI. The structure consists of top-level tabs that correspond to Eclipse IDE perspectives. Under the current tab are groups of buttons with labels on the bottom (like Office 2007). The groups correspond to the current top-level menus. Labels display the full menu on click (unlike Office 2007). The buttons in each group represent a list of relevant actions determined based on some intelligent mix of most-frequently- and most-recently-used statistics. The structure has enough room for 3 rows of buttons in small format with small (16x16) icon and optional label to the right (like Office 2007). The most relevant buttons are displayed in large format when possible, filling all three rows, with a large icon and label below. The structure automatically expands and shrinks based on window size to take advantage of all available space on modern high-resolution/wide-screen displays (like Office 2007).<br />
| Nikolay Botev<br />
| <br />
| <br />
| Nikolay Botev, San Jose State University - San Jose, California, USA.<br />
|-<br />
| Equinox and SAT4J<br />
| [http://www.eclipse.org/equinox/ Equinox]<br />
| Do you like difficult problems of solving resolver problems at runtime? If so... this project is for you. The new provisioning work at Eclipse (p2) is using a new SAT Solver (SAT4J) to do complex resolver computations. This project will explore using SAT4J as the replacement for the current Equinox runtime resolver.<br />
| Chris Aniszczyk<br />
| [mailto:hargrave@us.ibm.com BJ Hargrave], [mailto:tjwatson@us.ibm.com Thomas Watson], [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| I think this should be more general. It should be about using constraint solver to replace the equinox resolver. Another open-source implementation of a solver is [http://choco-solver.net/index.php?title=Main_Page Choco]<br />
|<br />
|-<br />
| ECF and Yahoo<br />
| [http://www.eclipse.org/ecf/ ECF]<br />
| Implement a EPL'd version of the Yahoo messaging protocol and than code an ECF provider implementation for that. The baseline goal of this project is to just implement messanging for Yahoo... things like file transfer can come later or if there's time.<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Michael Berry, University of Kent, Canterbury, UK.<br />
|-<br />
| BPMN/BPEL to SCA model transformations for STP<br />
| [http://www.eclipse.org/stp/ STP]<br />
| This project will leverage and extend the existing STP Intermediate Model (STP-IM) in order to provide better support for transformations between process editors (BPMN and BPEL) and architecture editors (SCA in particular, potentially EID as well). The contribution would be of great importance to SOA developers and would therefore be an important incentive for the community adoption of the Eclipse STP. <br />
| Juan Cadavid<br />
| [mailto:adrian.mos@inria.fr Adrian Mos]<br />
|<br />
| Juan Cadavid, Universidad EAFIT, Medellín Colombia.<br />
|-<br />
| RAP product file<br />
| [http://www.eclipse.org/rap/ RAP]<br />
| <br />
| Balazs Brinkus<br />
| <br />
| <br />
| Balazs Brinkus, University of Szeged, Hungary<br />
|}<br />
<br />
More ideas can be found at [http://eclipse-wiki.info/GoogleSummerOfCode2007 Eclipse-Wiki], [[Mylyn Contribution Ideas|Mylyn Contribution Ideas page]], and [[Google Summer of Code 2007 Ideas|Google Summer of Code 2007 ideas]].<br />
<br />
== Unmatched Students ==<br />
Yifei Ma, Virginia Tech, Equinox<br />
<br />
Jingwen 'Owen' Ou, The University of British Columbia, Mylyn: dynamic traces and buddy list</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=Google_Summer_of_Code_2008_Ideas&diff=89567Google Summer of Code 2008 Ideas2008-03-29T01:40:03Z<p>Pombredanne.nexb.com: </p>
<hr />
<div>== Rules ==<br />
* Be creative<br />
* Be specific: what do you want to be implemented<br />
* If you are willing to mentors those ideas, add your name and email to the idea.<br />
* Ii is ok to have a project idea without parent project<br />
* If you're an interested student, add your name and email next to the idea. It is ok to have several students interested by one idea.<br />
<br />
== Ideas ==<br />
<br />
{| border=&quot;1&quot; cellpadding=&quot;2&quot; width=&quot;100%&quot;<br />
!width=&quot;20%&quot;|Title<br />
!width=&quot;5%&quot; align=&quot;center&quot;|Project<br />
!width=&quot;40%&quot;|Abstract - links to details/bugs/etc<br />
!width=&quot;10%&quot;|Reporter<br />
!width=&quot;10%&quot;|Possible mentor(s)<br />
!width=&quot;15%&quot;|Comments<br />
!width=&quot;10%&quot;|Potential students(s)<br />
|-<br />
| Support for user-defined refactorings in JDT<br />
| [http://www.eclipse.org/jdt JDT]<br />
| The idea is to produce a pattern language, rules engine, and user interface to allow the Java developer to perform queries n and make safe modifications of their code code. It's a superset of the current refactoring because ideally current refactorings could be expressed this new system, forming a nice set of initial examples. he users could then adapt those rules to their own purposes or come up with completely new ones. See {{bug|144642}} for more informations.<br />
| Ed Burnette<br />
| Martin Aeschlimann(?)<br />
| <br />
|<br />
|-<br />
| Implement a search mechanism for BPMN diagrams<br />
| [[STP/BPMN_Component|BPMN]]<br />
| Research indexing of domain specific models persisted in an XML format. Apply this research to indexing and searching BPMN diagrams.<br />
| Antoine Toulme<br />
| [mailto:antoine@lunar-ocean.com Antoine Toulme], [mailto:hmalphettes@intalio.com Hugues Malphettes]<br />
|<br />
|<br />
|-<br />
| Improve the usability of the BPMN editor<br />
| [[STP/BPMN_Component|BPMN]]<br />
| Gather feedback from users of the modeler. Select enhancements to support and develop them.<br />
| Antoine Toulme<br />
| [mailto:antoine@lunar-ocean.com Antoine Toulme], [mailto:hmalphettes@intalio.com Hugues Malphettes]<br />
|<br />
|<br />
|-<br />
| Support for StyledText<br />
| [http://www.eclipse.org/rap RAP]<br />
| One of the most asked features of RAP is the StyledText widget. Not only to show funny colored texts in your application but it's one of the most complex widgets to implement. But having at least some basic API working enabled RAP to port other parts of RCP to the web based on the new StyledText widget. More information about StyledText can be found [http://help.eclipse.org/stable/nftopic/org.eclipse.platform.doc.isv/reference/api/org/eclipse/swt/custom/StyledText.html here]. <br />
| Benjamin Muskalla<br />
| Frank Appel, Rüdiger Herrmann<br />
|<br />
| <br />
|-<br />
| Theme Editor<br />
| [http://www.eclipse.org/rap RAP]<br />
| Theming allows RAP application developers to give their applications a custom style. Currently, a theme must be defined as a .properties file. As the theming capabilities improve, these files are getting more and more complex. A theme editor should provide an easy-to-use user interface for defining themes. It could be shipped as part of the RAP tooling. For more information on the RAP theming, see the [http://help.eclipse.org/help33/index.jsp?topic=/org.eclipse.rap.help/help/html/advanced/theming.html online help].<br />
| Ralf Sternberg<br />
| [mailto:rsternberg@innoopract.com Ralf Sternberg]<br />
| <br />
| Mathias Schaeffner, Coventry University, UK<br />
|-<br />
| AIM Provider<br />
| [http://www.eclipse.org/ecf ECF]<br />
| ECF allows messaging protocols to be plugged in as providers. AIM isn't currently supported. The student can choose to implement the AIM (OSCAR) protocol themselves, or wrap an existing Java library like JOscar.<br />
| Chris Aniszczyk, Remy Suen<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:remy.suen@gmail.com Remy Suen]<br />
| <br />
| Michael Berry, University of Kent, Canterbury, UK. Çağatay Çallı, Middle East Technical University - Turkey. Tharindu Mathew, University of Moratuwa Sri Lanka<br />
|-<br />
| DITA or DocBook Help Content Producer<br />
| [http://www.eclipse.org/eclipse/platform-ua/main.html User Assistance]<br />
| Eclipse User Assistance allows for help content to be dynamically produced. Traditionally, all Eclipse content came in the form of hand-written HTML files. This is so 90's, we should have [http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/extension-points/org_eclipse_help_contentProducer.html help content producers] to produce help content from DITA or DocBook files.<br />
| Chris Aniszczyk, Chris Goldthorpe(?)<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:cgold@us.ibm.com Chris Goldthorpe], [mailto:d_a_carver@yahoo.com David Carver]<br />
| <br />
| Zhiyang Jiang,Chinese Academy of Sciences<br />
|-<br />
| GraphicsZilla<br />
| [http://www.eclipse.org/phoenix Phoenix]<br />
| Eclipse uses Bugzilla in many interesting ways. It uses it in the normal fashion for bug tracking. It also uses a modified version for IP tracking (IPZilla). This proposal is to create a GraphicsZilla to help streamline icon and graphics creation in Eclipse. This would allow not only programmers to contribute their talents to Eclipse. This would also make the process of where icons come from more transparent. See this [http://mea-bloga.blogspot.com/2007/01/graphicszilla-running-man.html blog post] and [https://bugs.eclipse.org/bugs/show_bug.cgi?id=170720 bug] for more info. Note, this would also provide a viewable repository of all the graphics used in Eclipse... which is currently lacking now.<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
|<br />
|-<br />
| Bundles in a Browser<br />
| [http://www.eclipse.org/equinox Equinox]<br />
| Eclipse runs pretty much everywhere these days... in cell phones... devices... desktops... servers... how about a web browser? This proposal is being left open-ended for a purpose. I'd like to see a student figure out how to get Eclipse plug-ins (bundles) installed into a browser like Firefox and then somehow expose working with them via some API... maybe XPCOM or Javascript. That's all ;p<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| PDE Ménage à trois: Scala and Java<br />
| [http://www.eclipse.org/pde PDE]<br />
| There are some crazy people out there developing Eclipse plug-ins using languages other than Java (how dare they ;p!). Scala is one of these popular languages and there already has been [http://neilbartlett.name/blog/2007/06/13/eclipse-pde-does-scala/ some Eclipse integration] to make this happen. However, PDE suffers from limitations that strictly binds itself to Java... the goal of this project would be to analyze these PDE limitations... and come up with patches or prototyped code to let PDE play better with Scala and other languages.<br />
| Chris Aniszczyk, Neil Bartlett (?)<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Moises Osorio, Instituto Tecnologico de Culiacan, Culiacan Mexico. [mailto:wcoder.mx@gmail.com wcoder.mx@gmail.com]<br />
|-<br />
| Declarative Services (DS) Tooling<br />
| [http://www.eclipse.org/pde PDE]<br />
| Equinox finally has a stable implementation of the Declarative Services specification from OSGi. It's time to tool this beast. Any takers?<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Bartosz Michalik, Poznan University of Technology - Poland. Rafael Oliveira Nóbrega, Universidade Federal de Pernambuco - Brazil<br />
|-<br />
| IM for Eclipse<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Developers work in project teams, and team members need to communicate. An IM program integrated into Eclipse itself will be useful for this, that's optimized to transfer large amounts of code which usual IM programs limit and also allows developers to be grouped accordingly.<br />
| Tharindu Mathew<br />
| <br />
| I think it's worth to take a look at the [http://www.eclipse.org/ecf ECF] project. Most of the features are already available there.<br />
| Michael Berry, University of Kent, Canterbury, UK. Michelangelo De Simone, University of Salerno - Italy. Michael Diamond, Dartmouth College. Sam Ryan, Victoria University Wellington New Zealand<br />
|-<br />
| XpandDoc documentation generator<br />
| [http://www.eclipse.org/modeling/m2t/?project=xpand#xpand M2T/Xpand]<br />
| Xpand is a template language which allows users to comment their templates with a JavaDoc-like syntax. So far, there is no tooling that can use this documentation. The goals of the project are to (1) create an engine that can parse Xpand template comments, (2) create a commandline tool that can generate a JavaDoc-like HTML output for all template comments in a project, and (3) enhance the Xpand text editor to show template comments in a tooltip when hovering over the respective template invocation.<br />
| Peter Friese<br />
| [mailto:peter.friese@itemis.de Peter Friese]<br />
| <br />
|<br />
|-<br />
| Refactorings for Xpand / Xtend / Check<br />
| [http://www.eclipse.org/modeling/m2t/?project=xpand#xpand M2T/Xpand]<br />
| Xpand, Xtend and Check are languages for writing code generators. As your code generator grows, you'll feel the desire to restructure your code generator templates. Currently, no refactoring support is available for Xpand / Xtend / Check. We're looking for a brave student willing to fill this void.<br />
| Peter Friese<br />
| [mailto:peter.friese@itemis.de Peter Friese]<br />
| <br />
|<br />
|-<br />
| Improving the TCP/IP Monitor Plugin <br />
| [http://www.eclipse.org/webtools/server/ WTP_Server_Tools]<br />
| The TCP/IP Monitor plugin available with the Eclipse WTP could use some improvement in several areas. A few suggestions are XML prettyfying, switchable layouts, persistable message logs, tabs for concurrent listeners, proxy mode, HTTP proxy support, simulation of slow connections, documentation and overall UI and usability improvement. IMHO, such additions, alongwith other requirements expressed by developers for this plugin, would make it more popular among the Eclipse Web developer community. <br />
| Suran Jayathilaka<br />
| <br />
| <br />
| Suran Jayathilaka, University Of Colombo School Of Computing - Sri lanka<br />
|-<br />
| Generic unit testing support<br />
| [http://www.eclipse.org/dltk DLTK]?<br />
| JUnit is well integrated at the moment used to test java code. As there are many other projects which need to implement other testing tools, we should be a generalized form of the Junit framework as provide some extension points to build the implementations of other XUnit frameworks on top of it. See {{bug|180884}} for more informations.<br />
| Benjamin Muskalla<br />
| <br />
| <br />
| <br />
|-<br />
| Continuous JUnit integration<br />
| [http://www.eclipse.org/jdt JDT]<br />
| Running a specific set of JUnit sets in the background while editing Java source code would help to detect defects early. The concept is to provide unobstrusive early detection and reporting of changes to source code that negatively affect its agreed upon functionality. Detecting failing tests would mark the changed source code with annotations to see which changes affected the green bar. There are already some (forgotten) bugs: {{bug|12167}} and {{bug|51292}}.<br />
| Benjamin Muskalla<br />
| [mailto:ContinuousJUnitGSoC08@lemmster.de Markus Kuppe] <br />
| [http://groups.csail.mit.edu/pag/continuoustesting/ PAG]<br />
| Sam Ryan, Victoria University Wellington New Zealand. Andrew Murray, Queen's University<br />
|-<br />
| toString generation<br />
| [http://www.eclipse.org/jdt JDT]<br />
| Like the setter/getter, equals and hashcode generator, it would be nice to have a little helper to generate toString methods. See bug {{bug|26070}} and take a look at [http://code.google.com/p/generate-tostring/wiki/Features this plugin] for some ideas. <br />
| Benjamin Muskalla<br />
| [mailto:toStringGSoC08@lemmster.de Markus Kuppe]<br />
| [http://eclipse-jutils.sourceforge.net/ JUtils]<br />
| Michelangelo De Simone, University of Salerno - Italy. Michael Diamond, Dartmouth College. Sam Ryan, Victoria University Wellington New Zealand. Andrew Murray, Queen's University<br />
|-<br />
| Web-CAT Eclipse plugin<br />
| [http://web-cat.cs.vt.edu/ Web-CAT]<br />
| Web-CAT is a plug-in-based web application that supports electronic submission and automated grading of programming assignments that is presently used by over 30 universities and colleges in the United States and elsewhere. The Web-CAT Grader supports traditional models of automated program grading, and also supports grading of assignments where students do their own testing. Web-CAT is already supported by an Eclipse plugin that allows students to view graders' comments on their assignments directly within the IDE. The aim of this project is to provide support for the graders as well, i.e., to allow professors, teaching assistants, and students to mark up code with comments, assign grades (both freeform and from rubrics), and so on. This will not only make grading easier, but will also help turn Eclipse into a student-friendly code review tool, which we hope will encourage wider use of code reviews in teaching.<br />
| Jason Montojo<br />
| [mailto:jmontojo@ca.ibm.com Jason Montojo], [mailto:gvwilson@cs.utoronto.ca Greg Wilson]<br />
| <br />
| Qi Yang, University of Toronto - Canada<br />
|-<br />
| Feature Diagram plugin<br />
| [https://stanley.cdf.toronto.edu/drproject/consulting-2008-01/featdiag Feature Diagram Prototype]<br />
| &quot;Feature diagrams&quot; are a graphical notation for describing the relationships between class elements that first appeared in Michael Feathers' book &quot;[http://www.amazon.com/Working-Effectively-Legacy-Robert-Martin/dp/0131177052 Working Effectively with Legacy Code]&quot;. A prototype plugin for Eclipse that automatically produces feature diagrams, and allows users to modify their layout, now exists. The aim of this project is to connect that plugin to Eclipse's Java refactorings to allow drag-and-drop manipulation of the visual representations of fields and methods.<br />
| Greg Wilson<br />
| [mailto:gvwilson@cs.utoronto.ca Greg Wilson]<br />
| <br />
|<br />
|-<br />
| XQuery Syntax Editor<br />
| [http://www.eclipse.org/webtools/incubator XSL Tooling / Web Tools Incubator]<br />
| Provide basic support for XQuery syntax editing. Including coloring, validation, content assistance, possibly provide extensions for allowing the selection of which xquery editors can be used for validation. Preference pages for controling XQuery specificat options for generating output. Possible future ability to include debugging support.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| <br />
| Buddhika Laknath, University of Moratuwa - Sri Lanka<br />
|-<br />
| Eclipse single instance<br />
| [http://www.eclipse.org/platform platform]<br />
| More and more applications are eclipse RCP based applications. This is great but each application launch a JVM and load in memory quite often the same plug-ins. Like xul runner for mozilla, it would be interesting to have an &quot;Eclipse runner&quot;. Issues to work on are how to manage several platforms (3.1, 3.2, 3.3, etc..) and share plug-ins (in memory). update : the problem seems to be adressed with p2 provided in eclipse 3.4 M6<br />
| Mariot Chauvin<br />
| Someone from platform project<br />
| <br />
|<br />
|-<br />
| BIRT JPA or JDO Connector<br />
| [http://www.eclipse.org/birt birt]<br />
| A data connector for BIRT Reports that allows BIRT to easily access data via JPA or JDO.<br />
| Markus Kuppe<br />
| The BIRT Project Team <br />
| In [http://wiki.eclipse.org/Google_Summer_of_Code_2007_Ideas GSoC '07] the BIRT team was willing to mentor<br />
|<br />
|-<br />
| BIRT Reports and Connectors for Ad Revenue<br />
| [http://www.eclipse.org/birt birt]<br />
| This one is very business focused -- provide connectors and reports that allow Google customers and users to build their own reports on their Google Ad Revenue etc.<br />
| Kevin Peters<br />
| The BIRT Project Team <br />
| In [http://wiki.eclipse.org/Google_Summer_of_Code_2007_Ideas GSoC '07] the BIRT team was willing to mentor<br />
| [mailto:kevjay@gmail.com Kevin Peters], University of Kansas<br />
|-<br />
| Barcode Support<br />
| [http://www.eclipse.org/birt birt]<br />
| See https://bugs.eclipse.org/bugs/show_bug.cgi?id=149928 for additional details.<br />
| Kevin Peters<br />
| The BIRT Project Team <br />
| <br />
| [mailto:kevjay@gmail.com Kevin Peters], University of Kansas<br />
|-<br />
| PDE fetch script factory for SVN<br />
| [http://www.eclipse.org/pde/ pde]<br />
| So far Eclipse only support CVS in a map file build. Though there exists an SVN impl, it's not EPL<br />
| Markus Kuppe<br />
| If nobody from PDE: [mailto:fetchGSoC08@lemmster.de Markus Kuppe]<br />
| [http://wiki.eclipse.org/index.php/PDEBuild#Building_from_a_subversion_repository SVN impl]<br />
|<br />
|-<br />
| JET Transforms/Wizards for creating project meta <br />
| [[Modeling Project Releng|Modeling Releng]]? [[Nexus_Project|Nexus]]?<br />
| Starting a new project requires a lot of duplicative code &amp; metadata: .doc plugins/features, .examples plugins/features, .test examples/features, .sdk feature, .releng project. Being able to generate this from JET templates via a wizard would make it much easier to get a project up and running -- and then get a PDE build that much easier, too.<br />
| [[User:Nickb|Nick Boldt]] <br />
| [[User:Nickb|Nick Boldt]]<br />
| <br />
| Michael Robb, Mount Royal College<br />
|-<br />
| Rich text editing and wiki integration<br />
| [http://eclipse.org/mylyn Mylyn]<br />
| Provide wiki integration. This involves providing mechanisms for rich editing and viewing of task repository comments in wiki format, potentially adding wiki editing. see also [[Mylyn/Contribution_Ideas|More ideas for Mylyn projects]]<br />
| Steffen Pingel<br />
| Steffen Pingel<br />
| There are at least two projects already providing wiki editing in Eclipse, albeit without Mylyn integration: [http://www.matheclipse.org/en/Eclipse_Wikipedia_Editor Wikipedia Editor], [http://eclipsewiki.sourceforge.net/ Wiki Editor]. &lt;/[[User:nickb]]&gt;<br />
| Jingwen 'Owen' Ou, The University of British Columbia<br />
|-<br />
| Java based Abstract Syntax Tree (AST) generator for Ada Programs<br />
| [http://eclipse.org/hibachi Hibachi]<br />
| An Abstract Syntax Tree is the base framework for many powerful tools of a language IDE. For Hibachi, the Ada Development Toolkit project (like JDT or CDT), the presence of an AST would allow many more powerful IDE features, and improve those already in place (like refactoring, code folding, reformating).<br />
| Tom Grosman<br />
| Tom Grosman, Adam Haselhuhn<br />
| For a good idea about ASTs in Eclipse, see [http://www.eclipse.org/articles/article.php?file=Article-JavaCodeManipulation_AST/index.html JDT AST]<br />
|<br />
|-<br />
| Feature implementation for Ada Development Toolkit<br />
| [http://eclipse.org/hibachi Hibachi]<br />
| Implementation of new or extension of existing Hibachi funtionality. Depending on student interest and background, features may include but are not limited to code folding, Ada body generation, object tooltips display, dependency graphs and trees, code fixing, etc.<br />
| Tom Grosman<br />
| Tom Grosman, Adam Haselhuhn<br />
|<br />
|<br />
|-<br />
| JDT and Google Code Search service <br />
| [http://www.eclipse.org/jdt JDT]<br />
| JDT and Google Code Search service integration: a)During debug under JDT source code are often unavailable. Google Code Search Source Provider should provide source code for corresponding class. b)Integrate common JDT search possibilities (for example &quot;Search\References&quot;) with Google Code Search Service (Search not under local projects but in Web too).<br />
| Andrey Vakunov<br />
| <br />
|<br />
| Michelangelo De Simone, University of Salerno - Italy. Andrey Vakunov, Grodno State University<br />
|-<br />
| XML+CSS = IFigure<br />
| [http://www.eclipse.org/gef/ GEF/Draw2d]<br />
| Adding possibility to generate draw2d figures from XML and CSS descriptors (for example HTML subset and CSS). <br />
| Andrey Vakunov<br />
| [mailto:anthonyh_at_ca.ibm.com Anthony Hunter]<br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| Equinox Console and script language integration<br />
| [http://www.eclipse.org/equinox/ Equinox]<br />
| Integrate any script language (Groovy or JRuby or Bash :-) ) in OSGi console. Add possibilities to write in OSGi console &quot;s grep &lt;my-service-name&gt;&quot;<br />
| Andrey Vakunov<br />
| <br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| Buddy list for task assignments and CCs<br />
| [http://www.eclipse.org/mylyn/ Mylyn]<br />
| Enhance Mylyn's Rich Client Bugzilla to have an address book for CC's<br />
| Jingwen 'Owen' Ou<br />
| <br />
| Normally people work on projects with similar teammates and it would be nice to use previous queries to propose CCs. Details in [https://bugs.eclipse.org/bugs/show_bug.cgi?id=152415 bug 152415]<br />
|<br />
|-<br />
| Remote Service Deployment Tool<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Take the R-OSGi Deployment Tool idea ([http://www.iks.inf.ethz.ch/publications/files/etx07.pdf paper]) and the prototype and port it to a new platform (PDE projects, ECF remote services, p2 for deployment) so that it can be easily used within Eclipse to deploy a distributed OSGi application. <br />
| Jan S. Rellermeyer<br />
| [mailto:rellermeyer_at_inf.ethz.ch Jan S. Rellermeyer]<br />
| <br />
|<br />
|-<br />
| Enhanced Eclipse search<br />
| [http://www.eclipse.org/platform platform]<br />
| Eclipse search plugin: provide an enhanced Eclipse search: better, faster, more relevant. Think Lucene or opengrok inside Eclipse.<br />
| Philippe Ombredanne<br />
| [mailto:philippe.ombredanne_at_eclipse.org Philippe Ombredanne]<br />
| <br />
| Jeffrey Czyz, University at Buffalo. Çağatay Çallı, Middle East Technical University - Turkey. Suran Jayathilaka, University Of Colombo School Of Computing - Sri lanka<br />
|-<br />
| Eclipse-Moodle integration<br />
| <br />
| The idea of this project is to provide an Eclipse plugin for the Moodle CMS e-learning system. This tool will enable students participating in online courses to import and export resources (projects or other materials) directly from an Eclipse workspace. Integration with Mylyn (for managing tasks assigned in such courses) could be an additional feature. <br />
| Aleksandra Woźniak<br />
| <br />
| <br />
| Aleksandra Woźniak, Poznan University of Technology &amp; Adam Mickiewicz University - Poznan, Poland<br />
|-<br />
| Use case editor<br />
| [http://www.eclipse.org/proposals/ormf/ ORMF]?<br />
| Use case editor: for writing use cases in a textual form, managing sets of use cases and (maybe) generating UML diagrams as well as html and pdf files from them. <br />
| Aleksandra Woźniak<br />
| <br />
| <br />
| Aleksandra Woźniak, Poznan University of Technology &amp; Adam Mickiewicz University - Poznan, Poland<br />
|-<br />
| Augment p2 dependencies<br />
| [http://wiki.eclipse.org/Equinox_p2 p2]<br />
| In its first release, p2 limited its expression of dependencies to something equivalent to what most other package management system proposed (A package can say that it requires or conflicts with others). However several provisioning scenarios could benefit from more powerful inter-package dependencies (e.g, when mylyn and SVN are installed, install the connector). The goal of this project is to advance p2 by providing more powerful inter-package dependencies (and their mapping to the PB solver). Directions are: * more complex implications, * mapping filters into the solver, * expressing generic capabilities / dependencies (e.g. putting requirements on memory size, hard drive size, etc), * representing affinities between packages (see the OSGi notion of uses clauses) , * finding a way to automatically pick the most applicable line-up / recommendations<br />
| <br />
| [mailto:pascal_rapicault_at_ca.ibm.com Pascal Rapicault], Daniel Le Berre<br />
| <br />
|<br />
|-<br />
|Transformation from CIM to PIM<br />
| <br />
|This project aims to create a module for additional Omondo, allowing transformations from computation independent model (CIM) represented by activity diagram,to a platform independent model (PIM) represented by class diagram and use cases, based in model driven architecture (MDA) and UML. The project ([https://eclipsecon.greenmeetingsystems.com/submissions/view/609 paper]) was submitted to eclipsecon 2008.<br />
| Ernesto Suarez Lopez<br />
| <br />
| <br />
|<br />
|-<br />
|Custom menu positioning for Eclipse Monkey scripts<br />
|[http://www.eclipse.org/dash/ Dash]<br />
|Eclipse Monkey scripts must currently reside under the Scripts menu, which doesn't integrate them well with existing functionality. When customizing a perspective, make it possible to add Monkey scripts to any menu (on the menu bar) that the user decides, both using specifiers in the script and through the UI.<br />
| [[User:Nitind|Nitin Dahyabhai]]<br />
| <br />
| <br />
|<br />
|-<br />
| CDT Windows Debugger<br />
| [[CDT]]<br />
| The CDT provides a front end to many debuggers in order to unify the debug UI around the Debug Platform augmented by a number of C/C++ specific debug views. We currently support the GNU debugger on Windows in parallel with build support for the GCC tool chain. We'd also like to support integration with the Windows SDK. We have Visual C++ build support. This project would be to add in Windows Debugger support.<br />
| Doug Schaefer<br />
| [mailto:doug.schaefer_at_windriver.com Doug Schaefer]<br />
| <br />
|<br />
|-<br />
| JDT Debugger Extensibility<br />
| [http://www.eclipse.org/eclipse/debug/jdt/ JDT Debug]<br />
| The JDT debugger provides debugging services and works with any JDPA-compliant JVM. The debugger has greatly matured over the years. Debugging facilities in general have not advanced much, however. Many in the research community would like to extend the capabilities of the JDT debugger without losing (or re-writing) existing functionality. Doing so often requires customizing how the JDT debugger makes use of the Java Debug Interface (JDI). This project would open up the JDI portion of the debugger in such a way that extensibility can be accomplished in a safe manner.<br />
| Jeffrey Czyz<br />
| <br />
| <br />
| Jeffrey Czyz, University at Buffalo<br />
|-<br />
| PDE and JavaScript<br />
| [http://www.eclipse.org/pde PDE]<br />
| PDE allows you to create plug-ins using Java these days. This request is simply for a student to explore the realm of creating plug-ins using JavaScript or other languages. To start simple, I'd start with adding a new schema attribute of type &quot;javascript&quot; to allow plug-in authors to at least plug different languages in. From there, we can explore ideas on &quot;how would you define a view&quot; in such a way that you could take javascript or java code?<br />
| Chris Aniszczyk<br />
| Chris Aniszczyk<br />
| <br />
|<br />
|-<br />
| PDE and Equinox Transforms<br />
| [http://www.eclipse.org/pde PDE]<br />
| Equinox has a new component called transforms that allows you to transform various aspects of a plug-in during runtime. For example, a common use case is to write a transform that modifies some plugin.xml entries to not display certain menu items. This project aims to provide tooling for the transforms component so plugin authors can easily author transforms.<br />
| Chris Aniszczyk<br />
| Chris Aniszczyk<br />
| <br />
| Bartosz Michalik, Poznan University of Technology - Poland<br />
|-<br />
| VNC over ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Virtual Network Console is a popular screen sharing technology. It would be useful to have<br />
an implementation of VNC protocol for ECF. See [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01452.html mailing list entry by Marek Zawirski] for a more detailed description of idea.<br />
| Scott Lewis<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe<br />
| <br />
|<br />
|-<br />
| Google Calendar access using ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| [http://calendar.google.com Google Calendar] is a popular and open calendaring system. It would be useful to have<br />
an integrated ECF-based calendar for Eclipse. See [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01452.html mailing list entry by Marek Zawirski] for a more detailed description of idea.<br />
| Scott Lewis<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe<br />
| <br />
|<br />
|-<br />
| SIP VoIP implementation for ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| SIP is a popular signaling protocol, widely used for setting up VoIP calls with 2 or more participiants. This project aims to create working SIP/VoIP implementation, that will implement existing [http://wiki.eclipse.org/index.php/VOIP ECF Call API]. Implementation should allow VoIP calls using SIP from Eclipse and will make Eclipse more functional softphone with another protocol implemented (already working implementations are jingle and Skype).<br />
| Marek Zawirski<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe?<br />
| <br />
| Marek Zawirski, Poznan University of Technology - Poland<br />
|-<br />
| Further ECF and Mylyn integration<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Improvement of distributed development process is common goal of Mylyn and ECF projects. There have been [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01195.html some efforts] of integrating these projects. However, there are still some fields where integration could be further extended. This especially covers contacting easily with other developers when doing issue-oriented development with Mylyn. Goal of this project is to extend integration between Mylyn and ECF to allow easy task-oriented communication or task exchange.<br />
| Marek Zawirski<br />
| Remy Suen, Scott Lewis, Chris Aniszczyk, Markus Kuppe?<br />
| <br />
|<br />
|-<br />
| Customizable display of objects in CDT debugger<br />
| [[CDT]]<br />
| Variables view of CDT debugger currently displays object variables as trees with each data member represented by a separate node. Some types, like std::string, have a complex internal structure, but a simple meaning. Having to open multiple levels of node hierarchy to see the contents of a string is very annoying. In most cases user does not care about all details of the string object and just wants to see the contents of the string. This problem can be solved by supporting user-defined auto expansion rules defining display formats for commonly used types. See {{bug|155331}} for more information.<br />
| Sergey Prigogin<br />
| [mailto:eclipse.sprigogin@gmail.com Sergey Prigogin]<br />
| <br />
|<br />
|-<br />
| Patch file editor with an outline view<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Juggling patches is the practice of every day work for all Eclipse developers. The goal of the project is to create a patch file editor with an outline view. The outline view would allow not only browsing the patch, but also navigating to included files, applying only selected hunks and so on.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Details and initial code in {{bug|190418}}.<br />
|<br />
|-<br />
| &quot;Compare With&quot; dialog<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| The goal of the project is to add a dialog allowing the user to select resources to compare. At this momement the user need to select 2 or 3 files with ctrl-clicking. This is not always as easy and reliable as it seems. The dialog would allow browsing the workspace or file system to locate the resource for comparison. Drag'n'dropping would be also very useful.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| See bug {{bug|224562}} for details.<br />
|<br />
|-<br />
| Patches comparison<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Juggling patches is the practice of every day work for all Eclipse developers. There are certain use cases when the user would like to compare two patches against each other. The problem is that straight comparison (two patches alone) is not enough, what we need here is comparing diffs in context.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Details in {{bug|198149}} and {{bug|213043}}.<br />
|<br />
|-<br />
| diff from any comparison<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Generating a patch from any comparison is a very common request. It comes in many flavours: users would like to save a patch while comparing two files, two version in local history, current version and a one with a tag and so on. One thing they have in common is the ability to create a patch from actual comparison. It would be definietly a nice feature to have.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Some of the bugs {{bug|71374}}, {{bug|103681}}, {{bug|151980}}...<br />
|<br />
|-<br />
| Novel Rich Client<br />
| [http://www.eclipsemozilla.org EclipseMozilla.org]<br />
| Use the EclipseMozilla browser component and find new ways to program rich client applications. Especially, combining Eclipse technology with HTML and Flash is of interest. You should mesh Eclipse technology with web technologies to create a new unique way for rich client programming. This is a very innovative task. For more info contact me.<br />
| Thomas Derflinger<br />
| [mailto:tderflinger@gmail.com Thomas Derflinger]<br />
|<br />
| <br />
|-<br />
| Split File Editor<br />
| [http://www.eclipse.org/eclipse/platform-text/ Platform Text]<br />
| Implement a split file editor functionality: bug [https://bugs.eclipse.org/bugs/show_bug.cgi?id=8009 8009], the most voted-for bug ever in the entire Eclipse universe with &gt;180 votes<br />
| Nikolay Botev<br />
| <br />
| <br />
| Nikolay Botev, San Jose State University - San Jose, California, USA.<br />
|-<br />
| Office-2007-ribbon-inspired UI<br />
| [http://www.eclipse.org/eclipse/platform-ui/ Platform UI]<br />
| Toolbars and Menus are so 20th century (extremely outdated) and un-user-friendly. Eclipse's menus are particularly overcrowded and hard to manage. This project would be a bold endeavour - a wild experiment in UI innovation. The idea is to replace the menu and toolbars with an Office 2007-ribbon-inspired structure. Here is a tentative design of the new UI. The structure consists of top-level tabs that correspond to Eclipse IDE perspectives. Under the current tab are groups of buttons with labels on the bottom (like Office 2007). The groups correspond to the current top-level menus. Labels display the full menu on click (unlike Office 2007). The buttons in each group represent a list of relevant actions determined based on some intelligent mix of most-frequently- and most-recently-used statistics. The structure has enough room for 3 rows of buttons in small format with small (16x16) icon and optional label to the right (like Office 2007). The most relevant buttons are displayed in large format when possible, filling all three rows, with a large icon and label below. The structure automatically expands and shrinks based on window size to take advantage of all available space on modern high-resolution/wide-screen displays (like Office 2007).<br />
| Nikolay Botev<br />
| <br />
| <br />
| Nikolay Botev, San Jose State University - San Jose, California, USA.<br />
|-<br />
| Equinox and SAT4J<br />
| [http://www.eclipse.org/equinox/ Equinox]<br />
| Do you like difficult problems of solving resolver problems at runtime? If so... this project is for you. The new provisioning work at Eclipse (p2) is using a new SAT Solver (SAT4J) to do complex resolver computations. This project will explore using SAT4J as the replacement for the current Equinox runtime resolver.<br />
| Chris Aniszczyk<br />
| [mailto:hargrave@us.ibm.com BJ Hargrave], [mailto:tjwatson@us.ibm.com Thomas Watson], [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| I think this should be more general. It should be about using constraint solver to replace the equinox resolver. Another open-source implementation of a solver is [http://choco-solver.net/index.php?title=Main_Page Choco]<br />
|<br />
|-<br />
| ECF and Yahoo<br />
| [http://www.eclipse.org/ecf/ ECF]<br />
| Implement a EPL'd version of the Yahoo messaging protocol and than code an ECF provider implementation for that. The baseline goal of this project is to just implement messanging for Yahoo... things like file transfer can come later or if there's time.<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Michael Berry, University of Kent, Canterbury, UK.<br />
|-<br />
| BPMN/BPEL to SCA model transformations for STP<br />
| [http://www.eclipse.org/stp/ STP]<br />
| This project will leverage and extend the existing STP Intermediate Model (STP-IM) in order to provide better support for transformations between process editors (BPMN and BPEL) and architecture editors (SCA in particular, potentially EID as well). The contribution would be of great importance to SOA developers and would therefore be an important incentive for the community adoption of the Eclipse STP. <br />
| Juan Cadavid<br />
| [mailto:adrian.mos@inria.fr Adrian Mos]<br />
|<br />
| Juan Cadavid, Universidad EAFIT, Medellín Colombia.<br />
|-<br />
| RAP product file<br />
| [http://www.eclipse.org/rap/ RAP]<br />
| <br />
| Balazs Brinkus<br />
| <br />
| <br />
| Balazs Brinkus, University of Szeged, Hungary<br />
|}<br />
<br />
More ideas can be found at [http://eclipse-wiki.info/GoogleSummerOfCode2007 Eclipse-Wiki], [[Mylyn Contribution Ideas|Mylyn Contribution Ideas page]], and [[Google Summer of Code 2007 Ideas|Google Summer of Code 2007 ideas]].<br />
<br />
== Unmatched Students ==<br />
Yifei Ma, Virginia Tech, Equinox<br />
<br />
Jingwen 'Owen' Ou, The University of British Columbia, Mylyn: dynamic traces and buddy list</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=Google_Summer_of_Code_2008_Ideas&diff=89564Google Summer of Code 2008 Ideas2008-03-29T01:35:38Z<p>Pombredanne.nexb.com: </p>
<hr />
<div>== Rules ==<br />
* Be creative<br />
* Be specific: what do you want to be implemented<br />
* If you are willing to mentors those ideas, add your name and email to the idea.<br />
* Ii is ok to have a project idea without parent project<br />
* If you're an interested student, add your name and email next to the idea. It is ok to have several students interested by one idea.<br />
<br />
== Ideas ==<br />
<br />
{| border=&quot;1&quot; cellpadding=&quot;2&quot; width=&quot;100%&quot;<br />
!width=&quot;20%&quot;|Title<br />
!width=&quot;5%&quot; align=&quot;center&quot;|Project<br />
!width=&quot;40%&quot;|Abstract - links to details/bugs/etc<br />
!width=&quot;10%&quot;|Reporter<br />
!width=&quot;10%&quot;|Possible mentor(s)<br />
!width=&quot;15%&quot;|Comments<br />
!width=&quot;10%&quot;|Potential students(s)<br />
|-<br />
| Support for user-defined refactorings in JDT<br />
| [http://www.eclipse.org/jdt JDT]<br />
| The idea is to produce a pattern language, rules engine, and user interface to allow the Java developer to perform queries n and make safe modifications of their code code. It's a superset of the current refactoring because ideally current refactorings could be expressed this new system, forming a nice set of initial examples. he users could then adapt those rules to their own purposes or come up with completely new ones. See {{bug|144642}} for more informations.<br />
| Ed Burnette<br />
| Martin Aeschlimann(?)<br />
| <br />
|<br />
|-<br />
| Implement a search mechanism for BPMN diagrams<br />
| [[STP/BPMN_Component|BPMN]]<br />
| Research indexing of domain specific models persisted in an XML format. Apply this research to indexing and searching BPMN diagrams.<br />
| Antoine Toulme<br />
| [mailto:antoine@lunar-ocean.com Antoine Toulme], [mailto:hmalphettes@intalio.com Hugues Malphettes]<br />
|<br />
|<br />
|-<br />
| Improve the usability of the BPMN editor<br />
| [[STP/BPMN_Component|BPMN]]<br />
| Gather feedback from users of the modeler. Select enhancements to support and develop them.<br />
| Antoine Toulme<br />
| [mailto:antoine@lunar-ocean.com Antoine Toulme], [mailto:hmalphettes@intalio.com Hugues Malphettes]<br />
|<br />
|<br />
|-<br />
| Support for StyledText<br />
| [http://www.eclipse.org/rap RAP]<br />
| One of the most asked features of RAP is the StyledText widget. Not only to show funny colored texts in your application but it's one of the most complex widgets to implement. But having at least some basic API working enabled RAP to port other parts of RCP to the web based on the new StyledText widget. More information about StyledText can be found [http://help.eclipse.org/stable/nftopic/org.eclipse.platform.doc.isv/reference/api/org/eclipse/swt/custom/StyledText.html here]. <br />
| Benjamin Muskalla<br />
| Frank Appel, Rüdiger Herrmann<br />
|<br />
| <br />
|-<br />
| Theme Editor<br />
| [http://www.eclipse.org/rap RAP]<br />
| Theming allows RAP application developers to give their applications a custom style. Currently, a theme must be defined as a .properties file. As the theming capabilities improve, these files are getting more and more complex. A theme editor should provide an easy-to-use user interface for defining themes. It could be shipped as part of the RAP tooling. For more information on the RAP theming, see the [http://help.eclipse.org/help33/index.jsp?topic=/org.eclipse.rap.help/help/html/advanced/theming.html online help].<br />
| Ralf Sternberg<br />
| [mailto:rsternberg@innoopract.com Ralf Sternberg]<br />
| <br />
| Mathias Schaeffner, Coventry University, UK<br />
|-<br />
| AIM Provider<br />
| [http://www.eclipse.org/ecf ECF]<br />
| ECF allows messaging protocols to be plugged in as providers. AIM isn't currently supported. The student can choose to implement the AIM (OSCAR) protocol themselves, or wrap an existing Java library like JOscar.<br />
| Chris Aniszczyk, Remy Suen<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:remy.suen@gmail.com Remy Suen]<br />
| <br />
| Michael Berry, University of Kent, Canterbury, UK. Çağatay Çallı, Middle East Technical University - Turkey. Tharindu Mathew, University of Moratuwa Sri Lanka<br />
|-<br />
| DITA or DocBook Help Content Producer<br />
| [http://www.eclipse.org/eclipse/platform-ua/main.html User Assistance]<br />
| Eclipse User Assistance allows for help content to be dynamically produced. Traditionally, all Eclipse content came in the form of hand-written HTML files. This is so 90's, we should have [http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/extension-points/org_eclipse_help_contentProducer.html help content producers] to produce help content from DITA or DocBook files.<br />
| Chris Aniszczyk, Chris Goldthorpe(?)<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:cgold@us.ibm.com Chris Goldthorpe], [mailto:d_a_carver@yahoo.com David Carver]<br />
| <br />
| Zhiyang Jiang,Chinese Academy of Sciences<br />
|-<br />
| GraphicsZilla<br />
| [http://www.eclipse.org/phoenix Phoenix]<br />
| Eclipse uses Bugzilla in many interesting ways. It uses it in the normal fashion for bug tracking. It also uses a modified version for IP tracking (IPZilla). This proposal is to create a GraphicsZilla to help streamline icon and graphics creation in Eclipse. This would allow not only programmers to contribute their talents to Eclipse. This would also make the process of where icons come from more transparent. See this [http://mea-bloga.blogspot.com/2007/01/graphicszilla-running-man.html blog post] and [https://bugs.eclipse.org/bugs/show_bug.cgi?id=170720 bug] for more info. Note, this would also provide a viewable repository of all the graphics used in Eclipse... which is currently lacking now.<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
|<br />
|-<br />
| Bundles in a Browser<br />
| [http://www.eclipse.org/equinox Equinox]<br />
| Eclipse runs pretty much everywhere these days... in cell phones... devices... desktops... servers... how about a web browser? This proposal is being left open-ended for a purpose. I'd like to see a student figure out how to get Eclipse plug-ins (bundles) installed into a browser like Firefox and then somehow expose working with them via some API... maybe XPCOM or Javascript. That's all ;p<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| PDE Ménage à trois: Scala and Java<br />
| [http://www.eclipse.org/pde PDE]<br />
| There are some crazy people out there developing Eclipse plug-ins using languages other than Java (how dare they ;p!). Scala is one of these popular languages and there already has been [http://neilbartlett.name/blog/2007/06/13/eclipse-pde-does-scala/ some Eclipse integration] to make this happen. However, PDE suffers from limitations that strictly binds itself to Java... the goal of this project would be to analyze these PDE limitations... and come up with patches or prototyped code to let PDE play better with Scala and other languages.<br />
| Chris Aniszczyk, Neil Bartlett (?)<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Moises Osorio, Instituto Tecnologico de Culiacan, Culiacan Mexico. [mailto:wcoder.mx@gmail.com wcoder.mx@gmail.com]<br />
|-<br />
| Declarative Services (DS) Tooling<br />
| [http://www.eclipse.org/pde PDE]<br />
| Equinox finally has a stable implementation of the Declarative Services specification from OSGi. It's time to tool this beast. Any takers?<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Bartosz Michalik, Poznan University of Technology - Poland. Rafael Oliveira Nóbrega, Universidade Federal de Pernambuco - Brazil<br />
|-<br />
| IM for Eclipse<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Developers work in project teams, and team members need to communicate. An IM program integrated into Eclipse itself will be useful for this, that's optimized to transfer large amounts of code which usual IM programmes limit and also allows developers to be grouped accordingly.<br />
| Tharindu Mathew<br />
| <br />
| I think it's worth to take a look at the [http://www.eclipse.org/ecf ECF] project. Most of the features are already available there.<br />
| Michael Berry, University of Kent, Canterbury, UK. Michelangelo De Simone, University of Salerno - Italy. Michael Diamond, Dartmouth College. Sam Ryan, Victoria University Wellington New Zealand<br />
|-<br />
| XpandDoc documentation generator<br />
| [http://www.eclipse.org/modeling/m2t/?project=xpand#xpand M2T/Xpand]<br />
| Xpand is a template language which allows users to comment their templates with a JavaDoc-like syntax. So far, there is no tooling that can use this documentation. The goals of the project are to (1) create an engine that can parse Xpand template comments, (2) create a commandline tool that can generate a JavaDoc-like HTML output for all template comments in a project, and (3) enhance the Xpand text editor to show template comments in a tooltip when hovering over the respective template invocation.<br />
| Peter Friese<br />
| [mailto:peter.friese@itemis.de Peter Friese]<br />
| <br />
|<br />
|-<br />
| Refactorings for Xpand / Xtend / Check<br />
| [http://www.eclipse.org/modeling/m2t/?project=xpand#xpand M2T/Xpand]<br />
| Xpand, Xtend and Check are languages for writing code generators. As your code generator grows, you'll feel the desire to restructure your code generator templates. Currently, no refactoring support is available for Xpand / Xtend / Check. We're looking for a brave student willing to fill this void.<br />
| Peter Friese<br />
| [mailto:peter.friese@itemis.de Peter Friese]<br />
| <br />
|<br />
|-<br />
| Improving the TCP/IP Monitor Plugin <br />
| [http://www.eclipse.org/webtools/server/ WTP_Server_Tools]<br />
| The TCP/IP Monitor plugin available with the Eclipse WTP could use some improvement in several areas. A few suggestions are XML prettyfying, switchable layouts, persistable message logs, tabs for concurrent listeners, proxy mode, HTTP proxy support, simulation of slow connections, documentation and overall UI and usability improvement. IMHO, such additions, alongwith other requirements expressed by developers for this plugin, would make it more popular among the Eclipse Web developer community. <br />
| Suran Jayathilaka<br />
| <br />
| <br />
| Suran Jayathilaka, University Of Colombo School Of Computing - Sri lanka<br />
|-<br />
| Generic unit testing support<br />
| [http://www.eclipse.org/dltk DLTK]?<br />
| JUnit is well integrated at the moment used to test java code. As there are many other projects which need to implement other testing tools, we should be a generalized form of the Junit framework as provide some extension points to build the implementations of other XUnit frameworks on top of it. See {{bug|180884}} for more informations.<br />
| Benjamin Muskalla<br />
| <br />
| <br />
| <br />
|-<br />
| Continuous JUnit integration<br />
| [http://www.eclipse.org/jdt JDT]<br />
| Running a specific set of JUnit sets in the background while editing Java source code would help to detect defects early. The concept is to provide unobstrusive early detection and reporting of changes to source code that negatively affect its agreed upon functionality. Detecting failing tests would mark the changed source code with annotations to see which changes affected the green bar. There are already some (forgotten) bugs: {{bug|12167}} and {{bug|51292}}.<br />
| Benjamin Muskalla<br />
| [mailto:ContinuousJUnitGSoC08@lemmster.de Markus Kuppe] <br />
| [http://groups.csail.mit.edu/pag/continuoustesting/ PAG]<br />
| Sam Ryan, Victoria University Wellington New Zealand. Andrew Murray, Queen's University<br />
|-<br />
| toString generation<br />
| [http://www.eclipse.org/jdt JDT]<br />
| Like the setter/getter, equals and hashcode generator, it would be nice to have a little helper to generate toString methods. See bug {{bug|26070}} and take a look at [http://code.google.com/p/generate-tostring/wiki/Features this plugin] for some ideas. <br />
| Benjamin Muskalla<br />
| [mailto:toStringGSoC08@lemmster.de Markus Kuppe]<br />
| [http://eclipse-jutils.sourceforge.net/ JUtils]<br />
| Michelangelo De Simone, University of Salerno - Italy. Michael Diamond, Dartmouth College. Sam Ryan, Victoria University Wellington New Zealand. Andrew Murray, Queen's University<br />
|-<br />
| Web-CAT Eclipse plugin<br />
| [http://web-cat.cs.vt.edu/ Web-CAT]<br />
| Web-CAT is a plug-in-based web application that supports electronic submission and automated grading of programming assignments that is presently used by over 30 universities and colleges in the United States and elsewhere. The Web-CAT Grader supports traditional models of automated program grading, and also supports grading of assignments where students do their own testing. Web-CAT is already supported by an Eclipse plugin that allows students to view graders' comments on their assignments directly within the IDE. The aim of this project is to provide support for the graders as well, i.e., to allow professors, teaching assistants, and students to mark up code with comments, assign grades (both freeform and from rubrics), and so on. This will not only make grading easier, but will also help turn Eclipse into a student-friendly code review tool, which we hope will encourage wider use of code reviews in teaching.<br />
| Jason Montojo<br />
| [mailto:jmontojo@ca.ibm.com Jason Montojo], [mailto:gvwilson@cs.utoronto.ca Greg Wilson]<br />
| <br />
| Qi Yang, University of Toronto - Canada<br />
|-<br />
| Feature Diagram plugin<br />
| [https://stanley.cdf.toronto.edu/drproject/consulting-2008-01/featdiag Feature Diagram Prototype]<br />
| &quot;Feature diagrams&quot; are a graphical notation for describing the relationships between class elements that first appeared in Michael Feathers' book &quot;[http://www.amazon.com/Working-Effectively-Legacy-Robert-Martin/dp/0131177052 Working Effectively with Legacy Code]&quot;. A prototype plugin for Eclipse that automatically produces feature diagrams, and allows users to modify their layout, now exists. The aim of this project is to connect that plugin to Eclipse's Java refactorings to allow drag-and-drop manipulation of the visual representations of fields and methods.<br />
| Greg Wilson<br />
| [mailto:gvwilson@cs.utoronto.ca Greg Wilson]<br />
| <br />
|<br />
|-<br />
| XQuery Syntax Editor<br />
| [http://www.eclipse.org/webtools/incubator XSL Tooling / Web Tools Incubator]<br />
| Provide basic support for XQuery syntax editing. Including coloring, validation, content assistance, possibly provide extensions for allowing the selection of which xquery editors can be used for validation. Preference pages for controling XQuery specificat options for generating output. Possible future ability to include debugging support.<br />
| David Carver<br />
| [mailto:d_a_carver@yahoo.com David Carver]<br />
| <br />
| Buddhika Laknath, University of Moratuwa - Sri Lanka<br />
|-<br />
| Eclipse single instance<br />
| [http://www.eclipse.org/platform platform]<br />
| More and more applications are eclipse RCP based applications. This is great but each application launch a JVM and load in memory quite often the same plug-ins. Like xul runner for mozilla, it would be interesting to have an &quot;Eclipse runner&quot;. Issues to work on are how to manage several platforms (3.1, 3.2, 3.3, etc..) and share plug-ins (in memory). update : the problem seems to be adressed with p2 provided in eclipse 3.4 M6<br />
| Mariot Chauvin<br />
| Someone from platform project<br />
| <br />
|<br />
|-<br />
| BIRT JPA or JDO Connector<br />
| [http://www.eclipse.org/birt birt]<br />
| A data connector for BIRT Reports that allows BIRT to easily access data via JPA or JDO.<br />
| Markus Kuppe<br />
| The BIRT Project Team <br />
| In [http://wiki.eclipse.org/Google_Summer_of_Code_2007_Ideas GSoC '07] the BIRT team was willing to mentor<br />
|<br />
|-<br />
| BIRT Reports and Connectors for Ad Revenue<br />
| [http://www.eclipse.org/birt birt]<br />
| This one is very business focused -- provide connectors and reports that allow Google customers and users to build their own reports on their Google Ad Revenue etc.<br />
| Kevin Peters<br />
| The BIRT Project Team <br />
| In [http://wiki.eclipse.org/Google_Summer_of_Code_2007_Ideas GSoC '07] the BIRT team was willing to mentor<br />
| [mailto:kevjay@gmail.com Kevin Peters], University of Kansas<br />
|-<br />
| Barcode Support<br />
| [http://www.eclipse.org/birt birt]<br />
| See https://bugs.eclipse.org/bugs/show_bug.cgi?id=149928 for additional details.<br />
| Kevin Peters<br />
| The BIRT Project Team <br />
| <br />
| [mailto:kevjay@gmail.com Kevin Peters], University of Kansas<br />
|-<br />
| PDE fetch script factory for SVN<br />
| [http://www.eclipse.org/pde/ pde]<br />
| So far Eclipse only support CVS in a map file build. Though there exists an SVN impl, it's not EPL<br />
| Markus Kuppe<br />
| If nobody from PDE: [mailto:fetchGSoC08@lemmster.de Markus Kuppe]<br />
| [http://wiki.eclipse.org/index.php/PDEBuild#Building_from_a_subversion_repository SVN impl]<br />
|<br />
|-<br />
| JET Transforms/Wizards for creating project meta <br />
| [[Modeling Project Releng|Modeling Releng]]? [[Nexus_Project|Nexus]]?<br />
| Starting a new project requires a lot of duplicative code &amp; metadata: .doc plugins/features, .examples plugins/features, .test examples/features, .sdk feature, .releng project. Being able to generate this from JET templates via a wizard would make it much easier to get a project up and running -- and then get a PDE build that much easier, too.<br />
| [[User:Nickb|Nick Boldt]] <br />
| [[User:Nickb|Nick Boldt]]<br />
| <br />
| Michael Robb, Mount Royal College<br />
|-<br />
| Rich text editing and wiki integration<br />
| [http://eclipse.org/mylyn Mylyn]<br />
| Provide wiki integration. This involves providing mechanisms for rich editing and viewing of task repository comments in wiki format, potentially adding wiki editing. see also [[Mylyn/Contribution_Ideas|More ideas for Mylyn projects]]<br />
| Steffen Pingel<br />
| Steffen Pingel<br />
| There are at least two projects already providing wiki editing in Eclipse, albeit without Mylyn integration: [http://www.matheclipse.org/en/Eclipse_Wikipedia_Editor Wikipedia Editor], [http://eclipsewiki.sourceforge.net/ Wiki Editor]. &lt;/[[User:nickb]]&gt;<br />
| Jingwen 'Owen' Ou, The University of British Columbia<br />
|-<br />
| Java based Abstract Syntax Tree (AST) generator for Ada Programs<br />
| [http://eclipse.org/hibachi Hibachi]<br />
| An Abstract Syntax Tree is the base framework for many powerful tools of a language IDE. For Hibachi, the Ada Development Toolkit project (like JDT or CDT), the presence of an AST would allow many more powerful IDE features, and improve those already in place (like refactoring, code folding, reformating).<br />
| Tom Grosman<br />
| Tom Grosman, Adam Haselhuhn<br />
| For a good idea about ASTs in Eclipse, see [http://www.eclipse.org/articles/article.php?file=Article-JavaCodeManipulation_AST/index.html JDT AST]<br />
|<br />
|-<br />
| Feature implementation for Ada Development Toolkit<br />
| [http://eclipse.org/hibachi Hibachi]<br />
| Implementation of new or extension of existing Hibachi funtionality. Depending on student interest and background, features may include but are not limited to code folding, Ada body generation, object tooltips display, dependency graphs and trees, code fixing, etc.<br />
| Tom Grosman<br />
| Tom Grosman, Adam Haselhuhn<br />
|<br />
|<br />
|-<br />
| JDT and Google Code Search service <br />
| [http://www.eclipse.org/jdt JDT]<br />
| JDT and Google Code Search service integration: a)During debug under JDT source code are often unavailable. Google Code Search Source Provider should provide source code for corresponding class. b)Integrate common JDT search possibilities (for example &quot;Search\References&quot;) with Google Code Search Service (Search not under local projects but in Web too).<br />
| Andrey Vakunov<br />
| <br />
|<br />
| Michelangelo De Simone, University of Salerno - Italy. Andrey Vakunov, Grodno State University<br />
|-<br />
| XML+CSS = IFigure<br />
| [http://www.eclipse.org/gef/ GEF/Draw2d]<br />
| Adding possibility to generate draw2d figures from XML and CSS descriptors (for example HTML subset and CSS). <br />
| Andrey Vakunov<br />
| [mailto:anthonyh_at_ca.ibm.com Anthony Hunter]<br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| Equinox Console and script language integration<br />
| [http://www.eclipse.org/equinox/ Equinox]<br />
| Integrate any script language (Groovy or JRuby or Bash :-) ) in OSGi console. Add possibilities to write in OSGi console &quot;s grep &lt;my-service-name&gt;&quot;<br />
| Andrey Vakunov<br />
| <br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| Buddy list for task assignments and CCs<br />
| [http://www.eclipse.org/mylyn/ Mylyn]<br />
| Enhance Mylyn's Rich Client Bugzilla to have an address book for CC's<br />
| Jingwen 'Owen' Ou<br />
| <br />
| Normally people work on projects with similar teammates and it would be nice to use previous queries to propose CCs. Details in [https://bugs.eclipse.org/bugs/show_bug.cgi?id=152415 bug 152415]<br />
|<br />
|-<br />
| Remote Service Deployment Tool<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Take the R-OSGi Deployment Tool idea ([http://www.iks.inf.ethz.ch/publications/files/etx07.pdf paper]) and the prototype and port it to a new platform (PDE projects, ECF remote services, p2 for deployment) so that it can be easily used within Eclipse to deploy a distributed OSGi application. <br />
| Jan S. Rellermeyer<br />
| [mailto:rellermeyer_at_inf.ethz.ch Jan S. Rellermeyer]<br />
| <br />
|<br />
|-<br />
| Enhanced Eclipse search<br />
| [http://www.eclipse.org/platform platform]<br />
| Eclipse search plugin: provide an enhanced Eclipse search: better, faster, more relevant. Think Lucene or opengrok inside Eclipse.<br />
| Philippe Ombredanne<br />
| [mailto:philippe.ombredanne_at_eclipse.org Philippe Ombredanne]<br />
| <br />
| Jeffrey Czyz, University at Buffalo. Çağatay Çallı, Middle East Technical University - Turkey. Suran Jayathilaka, University Of Colombo School Of Computing - Sri lanka<br />
|-<br />
| Eclipse-Moodle integration<br />
| <br />
| The idea of this project is to provide an Eclipse plugin for the Moodle CMS e-learning system. This tool will enable students participating in online courses to import and export resources (projects or other materials) directly from an Eclipse workspace. Integration with Mylyn (for managing tasks assigned in such courses) could be an additional feature. <br />
| Aleksandra Woźniak<br />
| <br />
| <br />
| Aleksandra Woźniak, Poznan University of Technology &amp; Adam Mickiewicz University - Poznan, Poland<br />
|-<br />
| Use case editor<br />
| [http://www.eclipse.org/proposals/ormf/ ORMF]?<br />
| Use case editor: for writing use cases in a textual form, managing sets of use cases and (maybe) generating UML diagrams as well as html and pdf files from them. <br />
| Aleksandra Woźniak<br />
| <br />
| <br />
| Aleksandra Woźniak, Poznan University of Technology &amp; Adam Mickiewicz University - Poznan, Poland<br />
|-<br />
| Augment p2 dependencies<br />
| [http://wiki.eclipse.org/Equinox_p2 p2]<br />
| In its first release, p2 limited its expression of dependencies to something equivalent to what most other package management system proposed (A package can say that it requires or conflicts with others). However several provisioning scenarios could benefit from more powerful inter-package dependencies (e.g, when mylyn and SVN are installed, install the connector). The goal of this project is to advance p2 by providing more powerful inter-package dependencies (and their mapping to the PB solver). Directions are: * more complex implications, * mapping filters into the solver, * expressing generic capabilities / dependencies (e.g. putting requirements on memory size, hard drive size, etc), * representing affinities between packages (see the OSGi notion of uses clauses) , * finding a way to automatically pick the most applicable line-up / recommendations<br />
| <br />
| [mailto:pascal_rapicault_at_ca.ibm.com Pascal Rapicault], Daniel Le Berre<br />
| <br />
|<br />
|-<br />
|Transformation from CIM to PIM<br />
| <br />
|This project aims to create a module for additional Omondo, allowing transformations from computation independent model (CIM) represented by activity diagram,to a platform independent model (PIM) represented by class diagram and use cases, based in model driven architecture (MDA) and UML. The project ([https://eclipsecon.greenmeetingsystems.com/submissions/view/609 paper]) was submitted to eclipsecon 2008.<br />
| Ernesto Suarez Lopez<br />
| <br />
| <br />
|<br />
|-<br />
|Custom menu positioning for Eclipse Monkey scripts<br />
|[http://www.eclipse.org/dash/ Dash]<br />
|Eclipse Monkey scripts must currently reside under the Scripts menu, which doesn't integrate them well with existing functionality. When customizing a perspective, make it possible to add Monkey scripts to any menu (on the menu bar) that the user decides, both using specifiers in the script and through the UI.<br />
| [[User:Nitind|Nitin Dahyabhai]]<br />
| <br />
| <br />
|<br />
|-<br />
| CDT Windows Debugger<br />
| [[CDT]]<br />
| The CDT provides a front end to many debuggers in order to unify the debug UI around the Debug Platform augmented by a number of C/C++ specific debug views. We currently support the GNU debugger on Windows in parallel with build support for the GCC tool chain. We'd also like to support integration with the Windows SDK. We have Visual C++ build support. This project would be to add in Windows Debugger support.<br />
| Doug Schaefer<br />
| [mailto:doug.schaefer_at_windriver.com Doug Schaefer]<br />
| <br />
|<br />
|-<br />
| JDT Debugger Extensibility<br />
| [http://www.eclipse.org/eclipse/debug/jdt/ JDT Debug]<br />
| The JDT debugger provides debugging services and works with any JDPA-compliant JVM. The debugger has greatly matured over the years. Debugging facilities in general have not advanced much, however. Many in the research community would like to extend the capabilities of the JDT debugger without losing (or re-writing) existing functionality. Doing so often requires customizing how the JDT debugger makes use of the Java Debug Interface (JDI). This project would open up the JDI portion of the debugger in such a way that extensibility can be accomplished in a safe manner.<br />
| Jeffrey Czyz<br />
| <br />
| <br />
| Jeffrey Czyz, University at Buffalo<br />
|-<br />
| PDE and JavaScript<br />
| [http://www.eclipse.org/pde PDE]<br />
| PDE allows you to create plug-ins using Java these days. This request is simply for a student to explore the realm of creating plug-ins using JavaScript or other languages. To start simple, I'd start with adding a new schema attribute of type &quot;javascript&quot; to allow plug-in authors to at least plug different languages in. From there, we can explore ideas on &quot;how would you define a view&quot; in such a way that you could take javascript or java code?<br />
| Chris Aniszczyk<br />
| Chris Aniszczyk<br />
| <br />
|<br />
|-<br />
| PDE and Equinox Transforms<br />
| [http://www.eclipse.org/pde PDE]<br />
| Equinox has a new component called transforms that allows you to transform various aspects of a plug-in during runtime. For example, a common use case is to write a transform that modifies some plugin.xml entries to not display certain menu items. This project aims to provide tooling for the transforms component so plugin authors can easily author transforms.<br />
| Chris Aniszczyk<br />
| Chris Aniszczyk<br />
| <br />
| Bartosz Michalik, Poznan University of Technology - Poland<br />
|-<br />
| VNC over ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Virtual Network Console is a popular screen sharing technology. It would be useful to have<br />
an implementation of VNC protocol for ECF. See [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01452.html mailing list entry by Marek Zawirski] for a more detailed description of idea.<br />
| Scott Lewis<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe<br />
| <br />
|<br />
|-<br />
| Google Calendar access using ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| [http://calendar.google.com Google Calendar] is a popular and open calendaring system. It would be useful to have<br />
an integrated ECF-based calendar for Eclipse. See [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01452.html mailing list entry by Marek Zawirski] for a more detailed description of idea.<br />
| Scott Lewis<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe<br />
| <br />
|<br />
|-<br />
| SIP VoIP implementation for ECF<br />
| [http://www.eclipse.org/ecf ECF]<br />
| SIP is a popular signaling protocol, widely used for setting up VoIP calls with 2 or more participiants. This project aims to create working SIP/VoIP implementation, that will implement existing [http://wiki.eclipse.org/index.php/VOIP ECF Call API]. Implementation should allow VoIP calls using SIP from Eclipse and will make Eclipse more functional softphone with another protocol implemented (already working implementations are jingle and Skype).<br />
| Marek Zawirski<br />
| Scott Lewis, Remy Suen, Chris Aniszczyk, Markus Kuppe?<br />
| <br />
| Marek Zawirski, Poznan University of Technology - Poland<br />
|-<br />
| Further ECF and Mylyn integration<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Improvement of distributed development process is common goal of Mylyn and ECF projects. There have been [http://dev.eclipse.org/mhonarc/lists/ecf-dev/msg01195.html some efforts] of integrating these projects. However, there are still some fields where integration could be further extended. This especially covers contacting easily with other developers when doing issue-oriented development with Mylyn. Goal of this project is to extend integration between Mylyn and ECF to allow easy task-oriented communication or task exchange.<br />
| Marek Zawirski<br />
| Remy Suen, Scott Lewis, Chris Aniszczyk, Markus Kuppe?<br />
| <br />
|<br />
|-<br />
| Customizable display of objects in CDT debugger<br />
| [[CDT]]<br />
| Variables view of CDT debugger currently displays object variables as trees with each data member represented by a separate node. Some types, like std::string, have a complex internal structure, but a simple meaning. Having to open multiple levels of node hierarchy to see the contents of a string is very annoying. In most cases user does not care about all details of the string object and just wants to see the contents of the string. This problem can be solved by supporting user-defined auto expansion rules defining display formats for commonly used types. See {{bug|155331}} for more information.<br />
| Sergey Prigogin<br />
| [mailto:eclipse.sprigogin@gmail.com Sergey Prigogin]<br />
| <br />
|<br />
|-<br />
| Patch file editor with an outline view<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Juggling patches is the practice of every day work for all Eclipse developers. The goal of the project is to create a patch file editor with an outline view. The outline view would allow not only browsing the patch, but also navigating to included files, applying only selected hunks and so on.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Details and initial code in {{bug|190418}}.<br />
|<br />
|-<br />
| &quot;Compare With&quot; dialog<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| The goal of the project is to add a dialog allowing the user to select resources to compare. At this momement the user need to select 2 or 3 files with ctrl-clicking. This is not always as easy and reliable as it seems. The dialog would allow browsing the workspace or file system to locate the resource for comparison. Drag'n'dropping would be also very useful.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| See bug {{bug|224562}} for details.<br />
|<br />
|-<br />
| Patches comparison<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Juggling patches is the practice of every day work for all Eclipse developers. There are certain use cases when the user would like to compare two patches against each other. The problem is that straight comparison (two patches alone) is not enough, what we need here is comparing diffs in context.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Details in {{bug|198149}} and {{bug|213043}}.<br />
|<br />
|-<br />
| diff from any comparison<br />
| [http://wiki.eclipse.org/index.php/WorkspaceTeam Workspace]<br />
| Generating a patch from any comparison is a very common request. It comes in many flavours: users would like to save a patch while comparing two files, two version in local history, current version and a one with a tag and so on. One thing they have in common is the ability to create a patch from actual comparison. It would be definietly a nice feature to have.<br />
| Tomasz Zarna<br />
| [mailto:Tomasz.Zarna@pl.ibm.com Tomasz Zarna]<br />
| Some of the bugs {{bug|71374}}, {{bug|103681}}, {{bug|151980}}...<br />
|<br />
|-<br />
| Novel Rich Client<br />
| [http://www.eclipsemozilla.org EclipseMozilla.org]<br />
| Use the EclipseMozilla browser component and find new ways to program rich client applications. Especially, combining Eclipse technology with HTML and Flash is of interest. You should mesh Eclipse technology with web technologies to create a new unique way for rich client programming. This is a very innovative task. For more info contact me.<br />
| Thomas Derflinger<br />
| [mailto:tderflinger@gmail.com Thomas Derflinger]<br />
|<br />
| <br />
|-<br />
| Split File Editor<br />
| [http://www.eclipse.org/eclipse/platform-text/ Platform Text]<br />
| Implement a split file editor functionality: bug [https://bugs.eclipse.org/bugs/show_bug.cgi?id=8009 8009], the most voted-for bug ever in the entire Eclipse universe with &gt;180 votes<br />
| Nikolay Botev<br />
| <br />
| <br />
| Nikolay Botev, San Jose State University - San Jose, California, USA.<br />
|-<br />
| Office-2007-ribbon-inspired UI<br />
| [http://www.eclipse.org/eclipse/platform-ui/ Platform UI]<br />
| Toolbars and Menus are so 20th century (extremely outdated) and un-user-friendly. Eclipse's menus are particularly overcrowded and hard to manage. This project would be a bold endeavour - a wild experiment in UI innovation. The idea is to replace the menu and toolbars with an Office 2007-ribbon-inspired structure. Here is a tentative design of the new UI. The structure consists of top-level tabs that correspond to Eclipse IDE perspectives. Under the current tab are groups of buttons with labels on the bottom (like Office 2007). The groups correspond to the current top-level menus. Labels display the full menu on click (unlike Office 2007). The buttons in each group represent a list of relevant actions determined based on some intelligent mix of most-frequently- and most-recently-used statistics. The structure has enough room for 3 rows of buttons in small format with small (16x16) icon and optional label to the right (like Office 2007). The most relevant buttons are displayed in large format when possible, filling all three rows, with a large icon and label below. The structure automatically expands and shrinks based on window size to take advantage of all available space on modern high-resolution/wide-screen displays (like Office 2007).<br />
| Nikolay Botev<br />
| <br />
| <br />
| Nikolay Botev, San Jose State University - San Jose, California, USA.<br />
|-<br />
| Equinox and SAT4J<br />
| [http://www.eclipse.org/equinox/ Equinox]<br />
| Do you like difficult problems of solving resolver problems at runtime? If so... this project is for you. The new provisioning work at Eclipse (p2) is using a new SAT Solver (SAT4J) to do complex resolver computations. This project will explore using SAT4J as the replacement for the current Equinox runtime resolver.<br />
| Chris Aniszczyk<br />
| [mailto:hargrave@us.ibm.com BJ Hargrave], [mailto:tjwatson@us.ibm.com Thomas Watson], [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| I think this should be more general. It should be about using constraint solver to replace the equinox resolver. Another open-source implementation of a solver is [http://choco-solver.net/index.php?title=Main_Page Choco]<br />
|<br />
|-<br />
| ECF and Yahoo<br />
| [http://www.eclipse.org/ecf/ ECF]<br />
| Implement a EPL'd version of the Yahoo messaging protocol and than code an ECF provider implementation for that. The baseline goal of this project is to just implement messanging for Yahoo... things like file transfer can come later or if there's time.<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Michael Berry, University of Kent, Canterbury, UK.<br />
|-<br />
| BPMN/BPEL to SCA model transformations for STP<br />
| [http://www.eclipse.org/stp/ STP]<br />
| This project will leverage and extend the existing STP Intermediate Model (STP-IM) in order to provide better support for transformations between process editors (BPMN and BPEL) and architecture editors (SCA in particular, potentially EID as well). The contribution would be of great importance to SOA developers and would therefore be an important incentive for the community adoption of the Eclipse STP. <br />
| Juan Cadavid<br />
| [mailto:adrian.mos@inria.fr Adrian Mos]<br />
|<br />
| Juan Cadavid, Universidad EAFIT, Medellín Colombia.<br />
|-<br />
| RAP product file<br />
| [http://www.eclipse.org/rap/ RAP]<br />
| <br />
| Balazs Brinkus<br />
| <br />
| <br />
| Balazs Brinkus, University of Szeged, Hungary<br />
|}<br />
<br />
More ideas can be found at [http://eclipse-wiki.info/GoogleSummerOfCode2007 Eclipse-Wiki], [[Mylyn Contribution Ideas|Mylyn Contribution Ideas page]], and [[Google Summer of Code 2007 Ideas|Google Summer of Code 2007 ideas]].<br />
<br />
== Unmatched Students ==<br />
Yifei Ma, Virginia Tech, Equinox<br />
<br />
Jingwen 'Owen' Ou, The University of British Columbia, Mylyn: dynamic traces and buddy list</div>Pombredanne.nexb.comhttp://wiki.eclipse.org/index.php?title=Google_Summer_of_Code_2008_Ideas&diff=89560Google Summer of Code 2008 Ideas2008-03-29T01:27:12Z<p>Pombredanne.nexb.com: some serious reformatting removing the &lt;insert ... here&gt; empty comments</p>
<hr />
<div>== Rules ==<br />
* Be creative<br />
* Be specific: what do you want to be implemented<br />
* If you are willing to mentors those ideas, add your name and email to the idea.<br />
* Ii is ok to have a project idea without parent project<br />
* If you're an interested student, add your name and email next to the idea. It is ok to have several students interested by one idea.<br />
<br />
== Ideas ==<br />
<br />
{| border=&quot;1&quot; cellpadding=&quot;2&quot; width=&quot;100%&quot;<br />
!width=&quot;20%&quot;|Title<br />
!width=&quot;5%&quot; align=&quot;center&quot;|Project<br />
!width=&quot;40%&quot;|Abstract - links to details/bugs/etc<br />
!width=&quot;10%&quot;|Reporter<br />
!width=&quot;10%&quot;|Possible mentor(s)<br />
!width=&quot;15%&quot;|Comments<br />
!width=&quot;10%&quot;|Potential students(s)<br />
|-<br />
| Support for user-defined refactorings in JDT<br />
| [http://www.eclipse.org/jdt JDT]<br />
| The idea is to produce a pattern language, rules engine, and user interface to allow the Java developer to perform queries n and make safe modifications of their code code. It's a superset of the current refactoring because ideally current refactorings could be expressed this new system, forming a nice set of initial examples. he users could then adapt those rules to their own purposes or come up with completely new ones. See {{bug|144642}} for more informations.<br />
| Ed Burnette<br />
| Martin Aeschlimann(?)<br />
| <br />
|<br />
|-<br />
| Implement a search mechanism for BPMN diagrams<br />
| [[STP/BPMN_Component|BPMN]]<br />
| Research indexing of domain specific models persisted in an XML format. Apply this research to indexing and searching BPMN diagrams.<br />
| Antoine Toulme<br />
| [mailto:antoine@lunar-ocean.com Antoine Toulme], [mailto:hmalphettes@intalio.com Hugues Malphettes]<br />
|<br />
|<br />
|-<br />
| Improve the usability of the BPMN editor<br />
| [[STP/BPMN_Component|BPMN]]<br />
| Gather feedback from users of the modeler. Select enhancements to support and develop them.<br />
| Antoine Toulme<br />
| [mailto:antoine@lunar-ocean.com Antoine Toulme], [mailto:hmalphettes@intalio.com Hugues Malphettes]<br />
|<br />
|<br />
|-<br />
| Support for StyledText<br />
| [http://www.eclipse.org/rap RAP]<br />
| One of the most asked features of RAP is the StyledText widget. Not only to show funny colored texts in your application but it's one of the most complex widgets to implement. But having at least some basic API working enabled RAP to port other parts of RCP to the web based on the new StyledText widget. More information about StyledText can be found [http://help.eclipse.org/stable/nftopic/org.eclipse.platform.doc.isv/reference/api/org/eclipse/swt/custom/StyledText.html here]. <br />
| Benjamin Muskalla<br />
| Frank Appel, Rüdiger Herrmann<br />
|<br />
| <br />
|-<br />
| Theme Editor<br />
| [http://www.eclipse.org/rap RAP]<br />
| Theming allows RAP application developers to give their applications a custom style. Currently, a theme must be defined as a .properties file. As the theming capabilities improve, these files are getting more and more complex. A theme editor should provide an easy-to-use user interface for defining themes. It could be shipped as part of the RAP tooling. For more information on the RAP theming, see the [http://help.eclipse.org/help33/index.jsp?topic=/org.eclipse.rap.help/help/html/advanced/theming.html online help].<br />
| Ralf Sternberg<br />
| [mailto:rsternberg@innoopract.com Ralf Sternberg]<br />
| <br />
| Mathias Schaeffner, Coventry University, UK<br />
|-<br />
| AIM Provider<br />
| [http://www.eclipse.org/ecf ECF]<br />
| ECF allows messaging protocols to be plugged in as providers. AIM isn't currently supported. The student can choose to implement the AIM (OSCAR) protocol themselves, or wrap an existing Java library like JOscar.<br />
| Chris Aniszczyk, Remy Suen<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:remy.suen@gmail.com Remy Suen]<br />
| <br />
| * Michael Berry, University of Kent, Canterbury, UK. Çağatay Çallı, Middle East Technical University - Turkey. Tharindu Mathew, University of Moratuwa Sri Lanka<br />
|-<br />
| DITA or DocBook Help Content Producer<br />
| [http://www.eclipse.org/eclipse/platform-ua/main.html User Assistance]<br />
| Eclipse User Assistance allows for help content to be dynamically produced. Traditionally, all Eclipse content came in the form of hand-written HTML files. This is so 90's, we should have [http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/extension-points/org_eclipse_help_contentProducer.html help content producers] to produce help content from DITA or DocBook files.<br />
| Chris Aniszczyk, Chris Goldthorpe(?)<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk], [mailto:cgold@us.ibm.com Chris Goldthorpe], [mailto:d_a_carver@yahoo.com David Carver]<br />
| <br />
| Zhiyang Jiang,Chinese Academy of Sciences<br />
|-<br />
| GraphicsZilla<br />
| [http://www.eclipse.org/phoenix Phoenix]<br />
| Eclipse uses Bugzilla in many interesting ways. It uses it in the normal fashion for bug tracking. It also uses a modified version for IP tracking (IPZilla). This proposal is to create a GraphicsZilla to help streamline icon and graphics creation in Eclipse. This would allow not only programmers to contribute their talents to Eclipse. This would also make the process of where icons come from more transparent. See this [http://mea-bloga.blogspot.com/2007/01/graphicszilla-running-man.html blog post] and [https://bugs.eclipse.org/bugs/show_bug.cgi?id=170720 bug] for more info. Note, this would also provide a viewable repository of all the graphics used in Eclipse... which is currently lacking now.<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
|<br />
|-<br />
| Bundles in a Browser<br />
| [http://www.eclipse.org/equinox Equinox]<br />
| Eclipse runs pretty much everywhere these days... in cell phones... devices... desktops... servers... how about a web browser? This proposal is being left open-ended for a purpose. I'd like to see a student figure out how to get Eclipse plug-ins (bundles) installed into a browser like Firefox and then somehow expose working with them via some API... maybe XPCOM or Javascript. That's all ;p<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Andrey Vakunov, Grodno State University<br />
|-<br />
| PDE Ménage à trois: Scala and Java<br />
| [http://www.eclipse.org/pde PDE]<br />
| There are some crazy people out there developing Eclipse plug-ins using languages other than Java (how dare they ;p!). Scala is one of these popular languages and there already has been [http://neilbartlett.name/blog/2007/06/13/eclipse-pde-does-scala/ some Eclipse integration] to make this happen. However, PDE suffers from limitations that strictly binds itself to Java... the goal of this project would be to analyze these PDE limitations... and come up with patches or prototyped code to let PDE play better with Scala and other languages.<br />
| Chris Aniszczyk, Neil Bartlett (?)<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Moises Osorio, Instituto Tecnologico de Culiacan, Culiacan Mexico. [mailto:wcoder.mx@gmail.com wcoder.mx@gmail.com]<br />
|-<br />
| Declarative Services (DS) Tooling<br />
| [http://www.eclipse.org/pde PDE]<br />
| Equinox finally has a stable implementation of the Declarative Services specification from OSGi. It's time to tool this beast. Any takers?<br />
| Chris Aniszczyk<br />
| [mailto:caniszczyk@gmail.com Chris Aniszczyk]<br />
| <br />
| Bartosz Michalik, Poznan University of Technology - Poland. Rafael Oliveira Nóbrega, Universidade Federal de Pernambuco - Brazil<br />
|-<br />
| IM for Eclipse<br />
| [http://www.eclipse.org/ecf ECF]<br />
| Developers work in project teams, and team members need to communicate. An IM program integrated into Eclipse itself will be useful for this, that's optimized to transfer large amounts of code which usual IM programmes limit and also allows developers to be grouped accordingly.<br />
| Tharindu Mathew<br />
| <br />
| I think it's worth to take a look at the [http://www.eclipse.org/ecf ECF] project. Most of the features are already available there.<br />
| Michael Berry, University of Kent, Canterbury, UK. Michelangelo De Simone, University of Salerno - Italy. Michael Diamond, Dartmouth College. Sam Ryan, Victoria University Wellington New Zealand<br />
|-<br />
| XpandDoc documentation generator<br />
| [http://www.eclipse.org/modeling/m2t/?project=xpand#xpand M2T/Xpand]<br />
| Xpand is a template language which allows users to comment their templates with a JavaDoc-like synta