Jump to: navigation, search

Difference between revisions of "Google Summer of Code 2011 Ideas"

(CDT - Build UI Improvements)
Line 4: Line 4:
 
*Be specific: what do you want to be implemented  
 
*Be specific: what do you want to be implemented  
 
*If you are willing to mentor those ideas, add your name and email to the idea.  
 
*If you are willing to mentor those ideas, add your name and email to the idea.  
*GSoC project ideas should align with an existing Eclipse project
+
*GSoC project ideas should align with an existing Eclipse project  
 
*If you're an interested student, add your name and email next to the idea. '''It is ok to have several students interested in one idea.'''  
 
*If you're an interested student, add your name and email next to the idea. '''It is ok to have several students interested in one idea.'''  
 
*'''Aspiring students''' and mentors '''need to register and submit their proposals on the [http://socghop.appspot.com/ SoC app]'''
 
*'''Aspiring students''' and mentors '''need to register and submit their proposals on the [http://socghop.appspot.com/ SoC app]'''
  
== Mentors info ==
+
== Mentors info ==
  
If you were a mentor last year then you are automatically in the list this year (the GSoC site may require that you re-register, but we think of you as "in").
+
If you were a mentor last year then you are automatically in the list this year (the GSoC site may require that you re-register, but we think of you as "in").  
  
Note that we only accept as mentors people who are known to us. This includes Eclipse committers. If you would like to be a mentor, please either introduce yourself to the group using the soc-dev mailing list, or send a note to [mailto:emo@eclipse.org EMO].
+
Note that we only accept as mentors people who are known to us. This includes Eclipse committers. If you would like to be a mentor, please either introduce yourself to the group using the soc-dev mailing list, or send a note to [mailto:emo@eclipse.org EMO].  
  
== Ideas submission ==
+
== Ideas submission ==
Idea proposal should contain the following information:
+
* project title, like "WTP - Improve auto-complete in xml editor"
+
* description with links to bug reports, project wiki pages, etc
+
* Reporter: who submitted idea (optional e-mail)
+
* Possible Mentors: who would like to mentor the students
+
* More info: other links or e-mail
+
* Eclipse Project: link to main eclipse project that improvement is targeting
+
* Potential students: who is interested (with optional e-mail). This one completely informal, to actually be interested you need to submit the proposal. Contact the idea owner or possible mentor to get some details before submitting it.
+
  
=Ideas=
+
Idea proposal should contain the following information:
  
These are some ideas. Students feel free to base your GSoC proposals on these ideas (note that you are more likely to find a mentor for an idea that has been proposed by a mentor). Some of these ideas can be factored into multiple projects; a GSoC project proposal can work on parts of these ideas (i.e. you don't necessarily have to do it all).
+
*project title, like "WTP - Improve auto-complete in xml editor"
 +
*description with links to bug reports, project wiki pages, etc
 +
*Reporter: who submitted idea (optional e-mail)
 +
*Possible Mentors: who would like to mentor the students
 +
*More info: other links or e-mail
 +
*Eclipse Project: link to main eclipse project that improvement is targeting
 +
*Potential students: who is interested (with optional e-mail). This one completely informal, to actually be interested you need to submit the proposal. Contact the idea owner or possible mentor to get some details before submitting it.
  
There are other sources of ideas. There are numerous bugs in the Eclipse Bugzilla issue tracking system marked as "[https://bugs.eclipse.org/bugs/buglist.cgi?bug_status=NEW&bug_status=REOPENED&columnlist=bug_severity%2Cpriority%2Cop_sys%2Cassigned_to%2Cbug_status%2Cresolution%2Cshort_desc%2Cvotes&field0-0-0=classification&field0-1-0=short_desc&field0-1-1=short_desc&keywords=helpwanted&keywords_type=allwords&negate0=1&query_format=advanced&type0-0-0=equals&type0-1-0=allwords&type0-1-1=allwords&value0-0-0=Mylyn&value0-1-0=%5Bconnector%5D&value0-1-1=%5Bbridge%5D helpwanted]" that may give you ideas.
+
= Ideas =
  
==EGit / JGit - git-blame support==
+
These are some ideas. Students feel free to base your GSoC proposals on these ideas (note that you are more likely to find a mentor for an idea that has been proposed by a mentor). Some of these ideas can be factored into multiple projects; a GSoC project proposal can work on parts of these ideas (i.e. you don't necessarily have to do it all).  
It's about adding support for [http://www.kernel.org/pub/software/scm/git/docs/git-blame.html "git blame"] in [http://www.eclipse.org/jgit JGit] (git library in Java) and
+
[http://www.eclipse.org/egit EGit] (Eclipse integration and UI). There is an [http://egit.eclipse.org/r/#change,1476 early proposed draft] for the jgit part
+
by Benjamin Muskalla which is based on [https://bugs.eclipse.org/bugs/show_bug.cgi?id=306161 prior work] from Manuel Woelker
+
but there wasn't much progress on that in the last months.
+
  
If you are interested to have a closer look refer to the [http://wiki.eclipse.org/EGit/Contributor_Guide EGit Contributor Guide] to find out how to setup
+
There are other sources of ideas. There are numerous bugs in the Eclipse Bugzilla issue tracking system marked as "[https://bugs.eclipse.org/bugs/buglist.cgi?bug_status=NEW&bug_status=REOPENED&columnlist=bug_severity%2Cpriority%2Cop_sys%2Cassigned_to%2Cbug_status%2Cresolution%2Cshort_desc%2Cvotes&field0-0-0=classification&field0-1-0=short_desc&field0-1-1=short_desc&keywords=helpwanted&keywords_type=allwords&negate0=1&query_format=advanced&type0-0-0=equals&type0-1-0=allwords&type0-1-1=allwords&value0-0-0=Mylyn&value0-1-0=%5Bconnector%5D&value0-1-1=%5Bbridge%5D helpwanted]" that may give you ideas.  
your environment for contributing and maybe try to fix some low hanging fruit
+
from our bug list to get a feeling what these projects are all about.  
+
  
* Reporter: Chris Aniszczyk
+
== EGit / JGit - git-blame support ==
* Possible Mentors: Chris Aniszczyk, Matthias Sohn
+
* More info: [mailto:egit-dev@eclipse.org EGit mailing list]
+
* Eclipse Project: [http://eclipse.org/egit '''EGit''']
+
* Potential students: TBD
+
  
==Acceleo - Export profiling data to gprof==
+
It's about adding support for [http://www.kernel.org/pub/software/scm/git/docs/git-blame.html "git blame"] in [http://www.eclipse.org/jgit JGit] (git library in Java) and [http://www.eclipse.org/egit EGit] (Eclipse integration and UI). There is an [http://egit.eclipse.org/r/#change,1476 early proposed draft] for the jgit part by Benjamin Muskalla which is based on [https://bugs.eclipse.org/bugs/show_bug.cgi?id=306161 prior work] from Manuel Woelker but there wasn't much progress on that in the last months.
  
Acceleo has a nice profiling model, so it could be nice to be able to export this data to gprof files so that the user can leverage
+
If you are interested to have a closer look refer to the [http://wiki.eclipse.org/EGit/Contributor_Guide EGit Contributor Guide] to find out how to setup your environment for contributing and maybe try to fix some low hanging fruit from our bug list to get a feeling what these projects are all about.  
other more sophisticated tools to analyse the trace. See [https://bugs.eclipse.org/bugs/show_bug.cgi?id=293304 bug 293304].
+
If you want to know more about the profiling in Acceleo see the [http://www.obeonetwork.com/acceleo/3.0.2/user-guide#HProfilinganAcceleoGeneration user guide].
+
  
If you are interested to have a closer look refer to our [http://wiki.eclipse.org/Acceleo/Setup_Environment Contributor Guide] to find out how to setup
+
*Reporter: Chris Aniszczyk
your environment for contributing.
+
*Possible Mentors: Chris Aniszczyk, Matthias Sohn
 +
*More info: [mailto:egit-dev@eclipse.org EGit mailing list]
 +
*Eclipse Project: [http://eclipse.org/egit '''EGit''']  
 +
*Potential students: TBD
  
* Reporter: Mariot Chauvin
+
== Acceleo - Export profiling data to gprof ==
* Possible Mentors: Mariot Chauvin, Laurent Goubet, Cédric Brun
+
* More info: [mailto:m2t-dev@eclipse.org?subject=[Acceleo] About Export profiling data to gprof M2T mailing list]
+
* Eclipse Project: [http://www.eclipse.org/acceleo '''Acceleo''']
+
* Potential students: TBD
+
  
==EEF - Enhance the end user experience==
+
Acceleo has a nice profiling model, so it could be nice to be able to export this data to gprof files so that the user can leverage other more sophisticated tools to analyse the trace. See [https://bugs.eclipse.org/bugs/show_bug.cgi?id=293304 bug 293304]. If you want to know more about the profiling in Acceleo see the [http://www.obeonetwork.com/acceleo/3.0.2/user-guide#HProfilinganAcceleoGeneration user guide].
 +
 
 +
If you are interested to have a closer look refer to our [http://wiki.eclipse.org/Acceleo/Setup_Environment Contributor Guide] to find out how to setup your environment for contributing.
 +
 
 +
*Reporter: Mariot Chauvin
 +
*Possible Mentors: Mariot Chauvin, Laurent Goubet, Cédric Brun
 +
*More info: [mailto:m2t-dev@eclipse.org?subject=%5BAcceleo%5D About Export profiling data to gprof M2T mailing list]
 +
*Eclipse Project: [http://www.eclipse.org/acceleo '''Acceleo''']
 +
*Potential students: TBD
 +
 
 +
== EEF - Enhance the end user experience ==
  
 
EEF provides a three steps process to generate eye-candy user interface for your models. This process could be simplified by doing automatically several steps instead of asking the user to do it. See [https://bugs.eclipse.org/bugs/show_bug.cgi?id=338939 bug 338939] and [https://bugs.eclipse.org/bugs/show_bug.cgi?id=338942 bug 338942] for instance.  
 
EEF provides a three steps process to generate eye-candy user interface for your models. This process could be simplified by doing automatically several steps instead of asking the user to do it. See [https://bugs.eclipse.org/bugs/show_bug.cgi?id=338939 bug 338939] and [https://bugs.eclipse.org/bugs/show_bug.cgi?id=338942 bug 338942] for instance.  
  
A second part of the work is to create a EEF models designer. This designer would help EEF users to defines easily their UI models (with enhanced model presentation, drag'n'drop, ...) and to iterate in case of ecore model changes.
+
A second part of the work is to create a EEF models designer. This designer would help EEF users to defines easily their UI models (with enhanced model presentation, drag'n'drop, ...) and to iterate in case of ecore model changes.  
  
Finally the last part consists of link EEF and Eclipse [http://www.eclipse.org/windowbuilder/ WindowBuilder] in order to allow EEF user to define their views with the WYSIWYG editor of WindowBuilder.
+
Finally the last part consists of link EEF and Eclipse [http://www.eclipse.org/windowbuilder/ WindowBuilder] in order to allow EEF user to define their views with the WYSIWYG editor of WindowBuilder.  
  
If you are interested to have a closer look refer to our [http://wiki.eclipse.org/EEF/Developer_Guide Developer Guide] to find out how to setup
+
If you are interested to have a closer look refer to our [http://wiki.eclipse.org/EEF/Developer_Guide Developer Guide] to find out how to setup your environment for contributing.  
your environment for contributing.
+
  
* Reporter: Mariot Chauvin
+
*Reporter: Mariot Chauvin  
* Possible Mentors: Mariot Chauvin, Goulwen Lefur
+
*Possible Mentors: Mariot Chauvin, Goulwen Lefur  
* More info: [mailto:emft-dev@eclipse.org?subject=[EEF] About enhancing end user experience EMFT mailing list]
+
*More info: [mailto:emft-dev@eclipse.org?subject=%5BEEF%5D About enhancing end user experience EMFT mailing list]  
* Eclipse Project: [http://www.eclipse.org/eef '''EEF''']
+
*Eclipse Project: [http://www.eclipse.org/eef '''EEF''']  
* Potential students: ?
+
*Potential students: ?
  
== CDT - Build UI Improvements ==
+
== CDT - Build UI Improvements ==
  
 
Currently the CDT build UI is hidden away in Project Properties. We'd like to add nodes in the Project Explorer under each project to list the build configurations. Actions would be added to open up a build configuration editor to change the settings. Actions would be added for invoking build and clean, and for setting the default build and indexer configuration.  
 
Currently the CDT build UI is hidden away in Project Properties. We'd like to add nodes in the Project Explorer under each project to list the build configurations. Actions would be added to open up a build configuration editor to change the settings. Actions would be added for invoking build and clean, and for setting the default build and indexer configuration.  
Line 98: Line 92:
 
*Potential students: TDB
 
*Potential students: TDB
  
==Mylyn==
+
== Mylyn ==
  
Mylyn maintains a list of ideas on this the [http://wiki.eclipse.org/Mylyn_Contribution_Ideas Contribution Ideas] wiki page. If you have your own idea or if you interested in one of the suggested ideas please feel free to contact mylyn-dev@eclipse.org or join one of the [http://wiki.eclipse.org/Mylyn/Meetings weekly meetings].
+
Mylyn maintains a list of ideas on this the [http://wiki.eclipse.org/Mylyn_Contribution_Ideas Contribution Ideas] wiki page. If you have your own idea or if you interested in one of the suggested ideas please feel free to contact mylyn-dev@eclipse.org or join one of the [http://wiki.eclipse.org/Mylyn/Meetings weekly meetings].  
  
* Reporter: Steffen Pingel
+
*Reporter: Steffen Pingel  
* Possible Mentors: Benjamin Muskalla, Steffen Pingel
+
*Possible Mentors: Benjamin Muskalla, Steffen Pingel  
* Eclipse Project: [http://www.eclipse.org/mylyn/ '''Mylyn''']
+
*Eclipse Project: [http://www.eclipse.org/mylyn/ '''Mylyn''']  
* Potential students: ?
+
*Potential students: Muslim Chochlov [mailto:muslim.chochlov@gmail.com muslim.chochlov@gmail.com]
  
==TPTP tools - Agent Controller on MAC OS==
+
== TPTP tools - Agent Controller on MAC OS ==
  
TPTP tools aleady run on a wide range of Linux and Unix flavors, but it doesn't work well on Mac OS. Deadly is that Mac OS is used widely in programmers. This problem first been proposed in 2004, nearly 6 years ago, more than 100 persons vote for this tool, See [https://bugs.eclipse.org/bugs/show_bug.cgi?id=68111 bug 68111] to learn more. But to now, we have only finished partially ported for org.eclipse.tptp.platform.agentcontroller , i want to continue and speed up the development process about this topic, improve org.eclipse.tptp.platform.agentcontroller, finish org.eclipse.hyades.probekit,org.eclipse.tptp.platform.jvmti.runtime and org.apache.harmony_vmcore_verifier support on Mac OS.
+
TPTP tools aleady run on a wide range of Linux and Unix flavors, but it doesn't work well on Mac OS. Deadly is that Mac OS is used widely in programmers. This problem first been proposed in 2004, nearly 6 years ago, more than 100 persons vote for this tool, See [https://bugs.eclipse.org/bugs/show_bug.cgi?id=68111 bug 68111] to learn more. But to now, we have only finished partially ported for org.eclipse.tptp.platform.agentcontroller , i want to continue and speed up the development process about this topic, improve org.eclipse.tptp.platform.agentcontroller, finish org.eclipse.hyades.probekit,org.eclipse.tptp.platform.jvmti.runtime and org.apache.harmony_vmcore_verifier support on Mac OS.  
  
* Reporter: Stefan Tannenbaum
+
*Reporter: Stefan Tannenbaum  
* Possible Mentors: ?
+
*Possible Mentors: ?  
* Eclipse Project: [http://www.eclipse.org/tptp/index.php '''TPTP''']
+
*Eclipse Project: [http://www.eclipse.org/tptp/index.php '''TPTP''']  
* Potential students: Tiger Gui [mailto:tigergui1990@gmail.com tigergui1990@gmail.com]
+
*Potential students: Tiger Gui [mailto:tigergui1990@gmail.com tigergui1990@gmail.com]
  
==Sequoyah - Add multi-language support to Eclipse plugin projects using the Sequoyah Localization Editor==
+
== Sequoyah - Add multi-language support to Eclipse plugin projects using the Sequoyah Localization Editor ==
The Sequoyah project is focused on Mobile application development tools.  One of the components of Sequoyah is the Localization Files Editor (LFE), which is a visual editor for handling parallel resources for multi-language projects.  The LFE has a reference implementation for Android, although it was written in a way so that the model is abstracted from the underlying implementation.
+
  
We are proposing a feature for the Sequoyah Localization Framework, which will extend support to Eclipse plugin projects. In order to do that, the framework must be changed to handle PDE projects, which contain strings files in the Java .properties format.  The result will be a new set of editors that will allow Eclipse projects to localize themselves more easily.
+
The Sequoyah project is focused on Mobile application development tools. One of the components of Sequoyah is the Localization Files Editor (LFE), which is a visual editor for handling parallel resources for multi-language projects. The LFE has a reference implementation for Android, although it was written in a way so that the model is abstracted from the underlying implementation.  
  
The Eclipse Babel project has expressed interest in participating in this work.
+
We are proposing a feature for the Sequoyah Localization Framework, which will extend support to Eclipse plugin projects. In order to do that, the framework must be changed to handle PDE projects, which contain strings files in the Java .properties format. The result will be a new set of editors that will allow Eclipse projects to localize themselves more easily.  
  
* Reporter: Marcel Gorri
+
The Eclipse Babel project has expressed interest in participating in this work.  
* Possible mentors: Marcel Gorri, Werner Keil (Babel)
+
* More info: [mailto:sequoyah-dev@eclipse.org Sequoyah mailing list]
+
* Eclipse Project: [http://www.eclipse.org/sequoyah '''Sequoyah''']
+
* Potential students: TBD
+
  
==Eclipse Communication Framework==
+
*Reporter: Marcel Gorri
 +
*Possible mentors: Marcel Gorri, Werner Keil (Babel)
 +
*More info: [mailto:sequoyah-dev@eclipse.org Sequoyah mailing list]
 +
*Eclipse Project: [http://www.eclipse.org/sequoyah '''Sequoyah''']
 +
*Potential students: TBD
  
ECF is a framework for building distributed servers, applications, and tools. It provides a modular implementation of the OSGi 4.2 Remote Services standard, along with support for REST-based and SOAP-based remote services, and asynchronous messaging for remote services.
+
== Eclipse Communication Framework ==
  
* [https://bugs.eclipse.org/bugs/buglist.cgi?keywords=helpwanted;query_format=advanced;keywords_type=allwords;bug_status=NEW;bug_status=REOPENED;product=ECF;classification=RT ECF "helpwanted" bugs]
+
ECF is a framework for building distributed servers, applications, and tools. It provides a modular implementation of the OSGi 4.2 Remote Services standard, along with support for REST-based and SOAP-based remote services, and asynchronous messaging for remote services.  
  
==Eclipse IDE for Education==
+
*[https://bugs.eclipse.org/bugs/buglist.cgi?keywords=helpwanted;query_format=advanced;keywords_type=allwords;bug_status=NEW;bug_status=REOPENED;product=ECF;classification=RT ECF "helpwanted" bugs]
  
The Eclipse IDE for Education is a version of Eclipse streamlined specifically for use by university and college students. The environment provides support for programming languages that are commonly used in university courses, including Java, Scheme, and Prolog (though only Java is supported for the time being).
+
== Eclipse IDE for Education ==
  
* [https://bugs.eclipse.org/bugs/buglist.cgi?keywords=helpwanted;query_format=advanced;keywords_type=allwords;bug_status=NEW;bug_status=REOPENED;classification=Technology;product=IDE4EDU IDE4EDU "helpwanted" bugs]
+
The Eclipse IDE for Education is a version of Eclipse streamlined specifically for use by university and college students. The environment provides support for programming languages that are commonly used in university courses, including Java, Scheme, and Prolog (though only Java is supported for the time being).
 +
 
 +
*[https://bugs.eclipse.org/bugs/buglist.cgi?keywords=helpwanted;query_format=advanced;keywords_type=allwords;bug_status=NEW;bug_status=REOPENED;classification=Technology;product=IDE4EDU IDE4EDU "helpwanted" bugs]
 +
 
 +
== Eclipse OCL - Add an extensible Java Code Generation Framework ==
  
==Eclipse OCL - Add an extensible Java Code Generation Framework==
 
 
The OMG's OCL specification provides a core expression language for an increasing range of modeling languages. The Eclipse MDT/OCL project provides an implementation for which evaluation occurs through interpreted evaluation of the OCL Abstract Syntax Tree. With the advent of Validation, Setting and Invocation delegates in Ecore, it is very desirable to support direct synthesis of Java code avoiding the need or incentive for manual recoding. More generally direct synthesis of C and VHDL implementations will expand the project utility.  
 
The OMG's OCL specification provides a core expression language for an increasing range of modeling languages. The Eclipse MDT/OCL project provides an implementation for which evaluation occurs through interpreted evaluation of the OCL Abstract Syntax Tree. With the advent of Validation, Setting and Invocation delegates in Ecore, it is very desirable to support direct synthesis of Java code avoiding the need or incentive for manual recoding. More generally direct synthesis of C and VHDL implementations will expand the project utility.  
  
* Reporter: Ed Willink
+
*Reporter: Ed Willink  
* Possible mentors: Ed Willink
+
*Possible mentors: Ed Willink  
* More info: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=279638 Bugzilla 279638], [mailto:mdt-ocl.dev@eclipse.org MDT/OCL mailing list]
+
*More info: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=279638 Bugzilla 279638], [mailto:mdt-ocl.dev@eclipse.org MDT/OCL mailing list]  
* Eclipse Project: [http://www.eclipse.org/projects/project_summary.php?projectid=modeling.mdt.ocl '''MDT/OCL''']
+
*Eclipse Project: [http://www.eclipse.org/projects/project_summary.php?projectid=modeling.mdt.ocl '''MDT/OCL''']  
* Potential students: TBD
+
*Potential students: TBD
 +
 
 +
== ECF: Salvo, the Eclipse NNTP/Newsreader Project ==
  
==ECF: Salvo, the Eclipse NNTP/Newsreader Project==
+
A subproject of ECF aims to provide a communications layer to NNTP servers (network news or forums) as well as a slick newsreader that is operated from within the Eclipse IDE.  
A subproject of ECF aims to provide a communications layer to NNTP servers (network news or forums) as well as a slick newsreader that is operated from within the Eclipse IDE.
+
  
[http://wiki.eclipse.org/Newsreader Downloads and more Information]
+
[http://wiki.eclipse.org/Newsreader Downloads and more Information] [http://www.google.com/search?sourceid=chrome&ie=UTF-8&q=salvo+newsreader Google on Salvo]  
[http://www.google.com/search?sourceid=chrome&ie=UTF-8&q=salvo+newsreader Google on Salvo]
+
  
The newsreader and the underlying protocol implementation is currently release 0.7.0 with 0.8.0 pending. The project has all the basic stuff: A local storage, subscribe to server, subscribe to newsgroups, read and post of articles.
+
The newsreader and the underlying protocol implementation is currently release 0.7.0 with 0.8.0 pending. The project has all the basic stuff: A local storage, subscribe to server, subscribe to newsgroups, read and post of articles.  
  
There are several fields where students can work on on this project, see this [http://http://wiki.eclipse.org/Google_Summer_of_Code_2011_Ideas/ECF_Salvo entry] for more details.
+
There are several fields where students can work on on this project, see this [http://http://wiki.eclipse.org/Google_Summer_of_Code_2011_Ideas/ECF_Salvo entry] for more details.  
  
 
*Reporter: Wim Jongman  
 
*Reporter: Wim Jongman  
Line 165: Line 161:
 
*Potential students: Isuru Udana (University of Moratuwa)
 
*Potential students: Isuru Udana (University of Moratuwa)
  
==EMF - ProtocolBuffer EMF Serialization==
+
== EMF - ProtocolBuffer EMF Serialization ==
  
ProtocolBuffer is binary serialization API which is smaller and faster than XML.
+
ProtocolBuffer is binary serialization API which is smaller and faster than XML. It would be interesting to be able to serialize EMF models with it.See http://code.google.com/intl/fr/apis/protocolbuffers/  
It would be interesting to be able to serialize EMF models with it.See http://code.google.com/intl/fr/apis/protocolbuffers/
+
  
* Reporter: Mariot Chauvin
+
*Reporter: Mariot Chauvin  
* Possible Mentors: TBD
+
*Possible Mentors: TBD  
* More info: http://www.eclipse.org/forums/index.php?t=thread&frm_id=108
+
*More info: http://www.eclipse.org/forums/index.php?t=thread&frm_id=108  
* Eclipse Project: [http://www.eclipse.org/emf '''EMF''']
+
*Eclipse Project: [http://www.eclipse.org/emf '''EMF''']  
* Potential students: TBD
+
*Potential students: TBD
  
==Amalgamation - Modeling Example==
+
== Amalgamation - Modeling Example ==
  
This idea is about providing an example of application of the modeling project tooling through a whole chain, from Ecore domain model, to code generator and going through model to model transformations and textual DSL. Basically taking the "Modeling Project as a DSL Toolkit" book examples, updating those and integrating them in the Modeling discovery UI available in the package.
+
This idea is about providing an example of application of the modeling project tooling through a whole chain, from Ecore domain model, to code generator and going through model to model transformations and textual DSL. Basically taking the "Modeling Project as a DSL Toolkit" book examples, updating those and integrating them in the Modeling discovery UI available in the package.  
  
* Reporter: Mariot Chauvin
+
*Reporter: Mariot Chauvin  
* Possible Mentors: Mariot Chauvin, Cedric Brun
+
*Possible Mentors: Mariot Chauvin, Cedric Brun  
* More info: http://www.eclipse.org/forums/index.php?t=thread&frm_id=182&S=33731b448034ee4089bffe7a361e2020
+
*More info: http://www.eclipse.org/forums/index.php?t=thread&frm_id=182&S=33731b448034ee4089bffe7a361e2020  
* Eclipse Project: [http://www.eclipse.org/amalgam '''Amalgamation''']
+
*Eclipse Project: [http://www.eclipse.org/amalgam '''Amalgamation''']  
* Potential students: TBD
+
*Potential students: TBD
  
==Orion - Git client==
+
== Orion - Git client ==
  
The first release of Orion is going to provide a simple but fully functional support for git. The idea behind this proposal is to identify missing bits and address them. The work will need to be done on the server by providing required services and in the UI (browser client). Required skills: Java, JavaScript, git, RESTful services.
+
The first release of Orion is going to provide a simple but fully functional support for git. The idea behind this proposal is to identify missing bits and address them. The work will need to be done on the server by providing required services and in the UI (browser client). Required skills: Java, JavaScript, git, RESTful services.  
  
* Reporter: Tomasz Zarna
+
*Reporter: Tomasz Zarna  
* Possible Mentors: Tomasz Zarna, Szymon Brandys
+
*Possible Mentors: Tomasz Zarna, Szymon Brandys  
* More info: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=336116 bug 336116]
+
*More info: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=336116 bug 336116]  
* Eclipse Project: [[Orion]]
+
*Eclipse Project: [[Orion]]  
* Potential students: TBD
+
*Potential students: TBD
  
==EMF - Provider for OData==
+
== EMF - Provider for OData ==
  
[http://www.odata.org/ Open Data Protocol (OData)] is a Web protocol for querying and updating structured data. It uses technologies such as HTTP, AtomPub, JSON etc. OData can be used to expose and access information from a variety of sources. There are many existing OData-capable [http://www.odata.org/producers producers] and [http://www.odata.org/consumers consumers].
+
[http://www.odata.org/ Open Data Protocol (OData)] is a Web protocol for querying and updating structured data. It uses technologies such as HTTP, AtomPub, JSON etc. OData can be used to expose and access information from a variety of sources. There are many existing OData-capable [http://www.odata.org/producers producers] and [http://www.odata.org/consumers consumers].  
  
Exposing EMF models via OData would make them accessible from any OData-capable client, but also from any browser / HTTP-capable client. This can be done in a generic way for any EMF model, including store-backed (e.g. CDO-backed) models. Anything convertible to Ecore (POJO/UML/XSD/...) could be OData-enabled as a result. The implementation could use [https://code.google.com/p/odata4j/ odata4j project] as a generic framework for Java-based OData providers.
+
Exposing EMF models via OData would make them accessible from any OData-capable client, but also from any browser / HTTP-capable client. This can be done in a generic way for any EMF model, including store-backed (e.g. CDO-backed) models. Anything convertible to Ecore (POJO/UML/XSD/...) could be OData-enabled as a result. The implementation could use [https://code.google.com/p/odata4j/ odata4j project] as a generic framework for Java-based OData providers.  
  
* Reporter: Alex Leites
+
*Reporter: Alex Leites  
* Possible Mentors: TBD
+
*Possible Mentors: TBD  
* More info: [http://www.odata.org/ OData] ([http://www.odata.org/mailing-list Mailing List]), [https://code.google.com/p/odata4j/ odata4j]([http://groups.google.com/group/odata4j-discuss Google group]), [http://www.eclipse.org/forums/index.php?t=thread&frm_id=108 EMF forum], [http://www.eclipsecon.org/2009/sessions?id=272 Building RESTFul Java Applications with EMF]
+
*More info: [http://www.odata.org/ OData] ([http://www.odata.org/mailing-list Mailing List]), [https://code.google.com/p/odata4j/ odata4j]([http://groups.google.com/group/odata4j-discuss Google group]), [http://www.eclipse.org/forums/index.php?t=thread&frm_id=108 EMF forum], [http://www.eclipsecon.org/2009/sessions?id=272 Building RESTFul Java Applications with EMF]  
* Eclipse Project: [http://www.eclipse.org/emf '''EMF''']
+
*Eclipse Project: [http://www.eclipse.org/emf '''EMF''']  
* Potential students: TBD
+
*Potential students: TBD
  
==EMF - EMF Databinding for Apache CXF==
+
== EMF - EMF Databinding for Apache CXF ==
  
Implement EMF Databinding for Apache CXF. Note that this was [http://wiki.eclipse.org/Servus_Proposal#Roadmap one of the goals] of the [http://wiki.eclipse.org/Servus Servus Project] (which is no longer active).
+
Implement EMF Databinding for Apache CXF. Note that this was [http://wiki.eclipse.org/Servus_Proposal#Roadmap one of the goals] of the [http://wiki.eclipse.org/Servus Servus Project] (which is no longer active).  
  
* Reporter: Alex Leites
+
*Reporter: Alex Leites  
* Possible Mentors: TBD
+
*Possible Mentors: TBD  
* More info: [http://cxf.apache.org/ Apache CXF] ([http://cxf.apache.org/docs/databindings.html databindings], [http://www.mail-archive.com/dev@cxf.apache.org dev mailing list]), [http://www.eclipse.org/forums/index.php?t=thread&frm_id=108 EMF forum], [http://wiki.eclipse.org/Servus Servus Project]
+
*More info: [http://cxf.apache.org/ Apache CXF] ([http://cxf.apache.org/docs/databindings.html databindings], [http://www.mail-archive.com/dev@cxf.apache.org dev mailing list]), [http://www.eclipse.org/forums/index.php?t=thread&frm_id=108 EMF forum], [http://wiki.eclipse.org/Servus Servus Project]  
* Eclipse Project: [http://www.eclipse.org/emf '''EMF''']
+
*Eclipse Project: [http://www.eclipse.org/emf '''EMF''']  
* Potential students: TBD
+
*Potential students: TBD
  
==EGit - EGit Synchronize View support part 2==
+
== EGit - EGit Synchronize View support part 2 ==
  
There are some things that can be implemented or improved in EGit Synchronization eg. synchronizing on folder level, synchronize wizard, show conflicts, include non-workspace resources in 'Workspace model', remove IO operations from UI thread, improve context menu action and so on...
+
There are some things that can be implemented or improved in EGit Synchronization eg. synchronizing on folder level, synchronize wizard, show conflicts, include non-workspace resources in 'Workspace model', remove IO operations from UI thread, improve context menu action and so on...  
  
* Reporter: Dariusz Luksza
+
*Reporter: Dariusz Luksza  
* Possible Mentors: TBD
+
*Possible Mentors: TBD  
* More info: [mailto:egit-dev@eclipse.org EGit mailing list]
+
*More info: [mailto:egit-dev@eclipse.org EGit mailing list]  
* Eclipse Project: [http://www.eclipse.org/egit '''EGit''']
+
*Eclipse Project: [http://www.eclipse.org/egit '''EGit''']  
* Potential students: Dariusz Luksza
+
*Potential students: Dariusz Luksza

Revision as of 12:39, 19 March 2011

Rules

  • Be creative
  • Be specific: what do you want to be implemented
  • If you are willing to mentor those ideas, add your name and email to the idea.
  • GSoC project ideas should align with an existing Eclipse project
  • If you're an interested student, add your name and email next to the idea. It is ok to have several students interested in one idea.
  • Aspiring students and mentors need to register and submit their proposals on the SoC app

Mentors info

If you were a mentor last year then you are automatically in the list this year (the GSoC site may require that you re-register, but we think of you as "in").

Note that we only accept as mentors people who are known to us. This includes Eclipse committers. If you would like to be a mentor, please either introduce yourself to the group using the soc-dev mailing list, or send a note to EMO.

Ideas submission

Idea proposal should contain the following information:

  • project title, like "WTP - Improve auto-complete in xml editor"
  • description with links to bug reports, project wiki pages, etc
  • Reporter: who submitted idea (optional e-mail)
  • Possible Mentors: who would like to mentor the students
  • More info: other links or e-mail
  • Eclipse Project: link to main eclipse project that improvement is targeting
  • Potential students: who is interested (with optional e-mail). This one completely informal, to actually be interested you need to submit the proposal. Contact the idea owner or possible mentor to get some details before submitting it.

Ideas

These are some ideas. Students feel free to base your GSoC proposals on these ideas (note that you are more likely to find a mentor for an idea that has been proposed by a mentor). Some of these ideas can be factored into multiple projects; a GSoC project proposal can work on parts of these ideas (i.e. you don't necessarily have to do it all).

There are other sources of ideas. There are numerous bugs in the Eclipse Bugzilla issue tracking system marked as "helpwanted" that may give you ideas.

EGit / JGit - git-blame support

It's about adding support for "git blame" in JGit (git library in Java) and EGit (Eclipse integration and UI). There is an early proposed draft for the jgit part by Benjamin Muskalla which is based on prior work from Manuel Woelker but there wasn't much progress on that in the last months.

If you are interested to have a closer look refer to the EGit Contributor Guide to find out how to setup your environment for contributing and maybe try to fix some low hanging fruit from our bug list to get a feeling what these projects are all about.

  • Reporter: Chris Aniszczyk
  • Possible Mentors: Chris Aniszczyk, Matthias Sohn
  • More info: EGit mailing list
  • Eclipse Project: EGit
  • Potential students: TBD

Acceleo - Export profiling data to gprof

Acceleo has a nice profiling model, so it could be nice to be able to export this data to gprof files so that the user can leverage other more sophisticated tools to analyse the trace. See bug 293304. If you want to know more about the profiling in Acceleo see the user guide.

If you are interested to have a closer look refer to our Contributor Guide to find out how to setup your environment for contributing.

EEF - Enhance the end user experience

EEF provides a three steps process to generate eye-candy user interface for your models. This process could be simplified by doing automatically several steps instead of asking the user to do it. See bug 338939 and bug 338942 for instance.

A second part of the work is to create a EEF models designer. This designer would help EEF users to defines easily their UI models (with enhanced model presentation, drag'n'drop, ...) and to iterate in case of ecore model changes.

Finally the last part consists of link EEF and Eclipse WindowBuilder in order to allow EEF user to define their views with the WYSIWYG editor of WindowBuilder.

If you are interested to have a closer look refer to our Developer Guide to find out how to setup your environment for contributing.

CDT - Build UI Improvements

Currently the CDT build UI is hidden away in Project Properties. We'd like to add nodes in the Project Explorer under each project to list the build configurations. Actions would be added to open up a build configuration editor to change the settings. Actions would be added for invoking build and clean, and for setting the default build and indexer configuration.

CDT - CMake and/or Qt qmake Builder Integration

CDT has it's own managed build system, but we are seeing more and more use of external managed builders such as CMake and Qt's qmake. We need to make sure the infrastructure is in place to allow for integration of these builders into the CDT builds. Then we need to implement them. CMake is a priority because there already exists a qmake builder. But then the qmake builder isn't very standard and could be redone.

Mylyn

Mylyn maintains a list of ideas on this the Contribution Ideas wiki page. If you have your own idea or if you interested in one of the suggested ideas please feel free to contact mylyn-dev@eclipse.org or join one of the weekly meetings.

  • Reporter: Steffen Pingel
  • Possible Mentors: Benjamin Muskalla, Steffen Pingel
  • Eclipse Project: Mylyn
  • Potential students: Muslim Chochlov muslim.chochlov@gmail.com

TPTP tools - Agent Controller on MAC OS

TPTP tools aleady run on a wide range of Linux and Unix flavors, but it doesn't work well on Mac OS. Deadly is that Mac OS is used widely in programmers. This problem first been proposed in 2004, nearly 6 years ago, more than 100 persons vote for this tool, See bug 68111 to learn more. But to now, we have only finished partially ported for org.eclipse.tptp.platform.agentcontroller , i want to continue and speed up the development process about this topic, improve org.eclipse.tptp.platform.agentcontroller, finish org.eclipse.hyades.probekit,org.eclipse.tptp.platform.jvmti.runtime and org.apache.harmony_vmcore_verifier support on Mac OS.

Sequoyah - Add multi-language support to Eclipse plugin projects using the Sequoyah Localization Editor

The Sequoyah project is focused on Mobile application development tools. One of the components of Sequoyah is the Localization Files Editor (LFE), which is a visual editor for handling parallel resources for multi-language projects. The LFE has a reference implementation for Android, although it was written in a way so that the model is abstracted from the underlying implementation.

We are proposing a feature for the Sequoyah Localization Framework, which will extend support to Eclipse plugin projects. In order to do that, the framework must be changed to handle PDE projects, which contain strings files in the Java .properties format. The result will be a new set of editors that will allow Eclipse projects to localize themselves more easily.

The Eclipse Babel project has expressed interest in participating in this work.

  • Reporter: Marcel Gorri
  • Possible mentors: Marcel Gorri, Werner Keil (Babel)
  • More info: Sequoyah mailing list
  • Eclipse Project: Sequoyah
  • Potential students: TBD

Eclipse Communication Framework

ECF is a framework for building distributed servers, applications, and tools. It provides a modular implementation of the OSGi 4.2 Remote Services standard, along with support for REST-based and SOAP-based remote services, and asynchronous messaging for remote services.

Eclipse IDE for Education

The Eclipse IDE for Education is a version of Eclipse streamlined specifically for use by university and college students. The environment provides support for programming languages that are commonly used in university courses, including Java, Scheme, and Prolog (though only Java is supported for the time being).

Eclipse OCL - Add an extensible Java Code Generation Framework

The OMG's OCL specification provides a core expression language for an increasing range of modeling languages. The Eclipse MDT/OCL project provides an implementation for which evaluation occurs through interpreted evaluation of the OCL Abstract Syntax Tree. With the advent of Validation, Setting and Invocation delegates in Ecore, it is very desirable to support direct synthesis of Java code avoiding the need or incentive for manual recoding. More generally direct synthesis of C and VHDL implementations will expand the project utility.

ECF: Salvo, the Eclipse NNTP/Newsreader Project

A subproject of ECF aims to provide a communications layer to NNTP servers (network news or forums) as well as a slick newsreader that is operated from within the Eclipse IDE.

Downloads and more Information Google on Salvo

The newsreader and the underlying protocol implementation is currently release 0.7.0 with 0.8.0 pending. The project has all the basic stuff: A local storage, subscribe to server, subscribe to newsgroups, read and post of articles.

There are several fields where students can work on on this project, see this entry for more details.

  • Reporter: Wim Jongman
  • Possible mentors: Wim Jongman
  • Eclipse Project: ECF
  • Potential students: Isuru Udana (University of Moratuwa)

EMF - ProtocolBuffer EMF Serialization

ProtocolBuffer is binary serialization API which is smaller and faster than XML. It would be interesting to be able to serialize EMF models with it.See http://code.google.com/intl/fr/apis/protocolbuffers/

Amalgamation - Modeling Example

This idea is about providing an example of application of the modeling project tooling through a whole chain, from Ecore domain model, to code generator and going through model to model transformations and textual DSL. Basically taking the "Modeling Project as a DSL Toolkit" book examples, updating those and integrating them in the Modeling discovery UI available in the package.

Orion - Git client

The first release of Orion is going to provide a simple but fully functional support for git. The idea behind this proposal is to identify missing bits and address them. The work will need to be done on the server by providing required services and in the UI (browser client). Required skills: Java, JavaScript, git, RESTful services.

  • Reporter: Tomasz Zarna
  • Possible Mentors: Tomasz Zarna, Szymon Brandys
  • More info: bug 336116
  • Eclipse Project: Orion
  • Potential students: TBD

EMF - Provider for OData

Open Data Protocol (OData) is a Web protocol for querying and updating structured data. It uses technologies such as HTTP, AtomPub, JSON etc. OData can be used to expose and access information from a variety of sources. There are many existing OData-capable producers and consumers.

Exposing EMF models via OData would make them accessible from any OData-capable client, but also from any browser / HTTP-capable client. This can be done in a generic way for any EMF model, including store-backed (e.g. CDO-backed) models. Anything convertible to Ecore (POJO/UML/XSD/...) could be OData-enabled as a result. The implementation could use odata4j project as a generic framework for Java-based OData providers.

EMF - EMF Databinding for Apache CXF

Implement EMF Databinding for Apache CXF. Note that this was one of the goals of the Servus Project (which is no longer active).

EGit - EGit Synchronize View support part 2

There are some things that can be implemented or improved in EGit Synchronization eg. synchronizing on folder level, synchronize wizard, show conflicts, include non-workspace resources in 'Workspace model', remove IO operations from UI thread, improve context menu action and so on...

  • Reporter: Dariusz Luksza
  • Possible Mentors: TBD
  • More info: EGit mailing list
  • Eclipse Project: EGit
  • Potential students: Dariusz Luksza