Skip to main content

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

Jump to: navigation, search

Difference between pages "PTP/designs/remote/cdt" and "Google Summer of Code 2006"

< PTP‎ | designs‎ | remote(Difference between pages)
(The Current Status)
 
(Project Ideas)
 
Line 1: Line 1:
= Evaluation of CDT for EFS Support With an Emphasis on Remote File System =
+
Eclipse is participating in [http://code.google.com/ Google's Summer of Code] 2006. Currently, we have Wayne Beaton, Philippe Ombredanne, and Gunnar Wagenknecht as potential mentors.For more information, please see [http://code.google.com/soc/eclipse/about.html The Eclipse SOC Landing Page].
  
Our [[PTP/designs/remote|objective]] is to provide remote support for the Parallel Tools Project in a way that is natural to the user. The approach we take is to extend the new emerging Eclipse File System (EFS) with remote file system. As depending components, CDT/FDT needs to be modified to support EFS.
+
Eclipse mentors, sign up [http://code.google.com/soc/mentor_step1.html here] (an administrator -- Wayne or Philippe -- will have to accept your application). After you've signed up (and have been accepted), visit the [http://code.google.com/soc/mentor_home.html Mentor home page].
  
== The Current Status ==
+
==Project Ideas==
CDT has no support for EFS at all. Even its support for locally linked resources, as a special case of EFS, are quite limited. For example, the following bugs are already identified:
+
* Most popular bugs/feature requests: provide a patches or  fixes for any open bugzilla with at least 20 votes.
* 136136 Build directory should not be restricted to workspace
+
* Cross platform Eclipse SWT embedded Firefox browser widget. This is one of the longest standing and most asked for Eclipse feature.
* 70491 Invalid Include Path when "Link to Folder in the Filesystem"
+
* Eclipse JavaScript debugger: develop a working JavaScript debugging environment relying on an integration with the major browsers and available debuggers
And, also reference http://dev.eclipse.org/mhonarc/lists/cdt-dev/msg03059.html for the discussion of linked resources.
+
* Eclipse IDE generator: building on some previous research work (Chris Laffra), provide an Eclipse IDE generation environment derived from a language grammar. This project would allow the creation of basic support of new or existing languages in Eclipse rapidly.
 
+
* Add support for printing in Eclipse on Linux. yes! It does not have proper support.
== What is Needed? ==
+
* Eclipse Mono Development Environment: a feature rich .Net development platform for Eclipse.
With EFS, projects or its component directories and files can be linked to different file systems, which can be local, remote, or virtual. The files and directories can be physically located at completely diverse places.  
+
* New Eclipse update manager: Eclipse current update manager is four years old and ridden with significant problems. This project would provide with a modern and original design for an automated software update for plugins and natives, if possible generic for OSGi based runtimes and could provide original inputs for the revamp of update in 3.3 to the platform team.
 
+
* Eclipse key macros: this is one of the most requested and oldest pending feature on Eclipse. Think something like emacs style macros done right.
To support EFS while keeping the standard make builder, the CDT build has to be modified in the way that the files in the project can, when necessary, be replicated in a build directory (optionally on a remote build server) before the build command is invoked. The existing build directory of the C/C++ Build property can be exteded for this purpose and an additional property of build server can be added (see the picture).
+
* Eclipse key bindings manager: add support to Eclipse to create arbitrary bindings between keys and actions, even when not planned ahead by a plugin developer.
 
+
* Eclipse multiple fast view bars: add support for multiple fast view bars in Eclipse (Only one is supported for now.)... and earn Erich Gamma gratitude for doing so as a bonus.
[[Image:Buildserver.jpg]]
+
* NetBeans in Eclipse: netclipse: the plugins models for Eclipse and NetBeans are very similar yet different. This project would provide the ability to run and embed a minimal NetBeans environment within Eclipse -- as Eclipse plugins-- , and support running NetBeans plugins like Matisse (Swing UI painter) or Coyote (dynamic languages toolkit).  
 
+
* Eclipse plugin search plugin: provide an Eclipse search function that makes searching navigation and browsing in the plugin code easier.
The above process abstracts and covers many different cases. Some typical scenarios include, but not limited to:
+
* Eclipse RCP installer wizards: create Eclipse wizards to generate native graphical installers and packages for the major platforms: Windows , MacOSX, and Linux is, deb, emerge, rpms for an Eclipse Rich Client Platforma application.
* whole project on remote server: if the build machine is the same as the file server, then no replication is necessary; otherwise replicate.
+
* Eclipse Open Office Inegration: provide OpenOffice as a set of minimal Eclipse plugins for each platforms integrated in Eclipse and packaged for RCP deployment
* project with locally linked directories and files (linked to local file system): the files need to be replicated to a local build directory before invoking the build command.
+
* Eclipse install based manager: provide application and support for managing a large deployment of Eclipse based clients, including pushed updates and client configurations.
* project with virtual file system (zip, for example): the files has to be replicated to a local build directory.
+
* Mylar Wiki integration, enabling context and embedded authoring for Wiki pages and tasks.
 
+
* Mylar and [http://www.eclipse.org/ecf ECF] integration, enabling task contexts to be shared synchronously between developers. Possibly using XMPP and [http://www.google.com/talk/ Google Talk] messaging service
This will affect several other related components of CDT. Such components include the Indexer, Managed Make etc.
+
* Google Talk Voice-over-IP client implemented as RCP app using [http://www.eclipse.org/ecf ECF call API] and [http://www.jabber.org/jeps/jep-0166.html Jingle] protocol
 
+
* Real-time collaboration based upon ECF+RCP and [http://www.google.com/talk/ Google Talk] XMPP-based messaging
== Roadmap to EFS Enablement for CDT ==
+
# Modify the code to allow build directory outside of workspace (fix to bug 136136)
+
# Modify CDT Project Creation/Conversion Wizard for EFS support
+
# Add build server property to the build property tab and modify the code to launch build command on build server
+
# Modify the affected components like Indexer and ManagedMake and fix those components [to be investigated]
+
# Enable file replication before build to support other scenarios
+

Revision as of 23:28, 3 May 2006

Eclipse is participating in Google's Summer of Code 2006. Currently, we have Wayne Beaton, Philippe Ombredanne, and Gunnar Wagenknecht as potential mentors.For more information, please see The Eclipse SOC Landing Page.

Eclipse mentors, sign up here (an administrator -- Wayne or Philippe -- will have to accept your application). After you've signed up (and have been accepted), visit the Mentor home page.

Project Ideas

  • Most popular bugs/feature requests: provide a patches or fixes for any open bugzilla with at least 20 votes.
  • Cross platform Eclipse SWT embedded Firefox browser widget. This is one of the longest standing and most asked for Eclipse feature.
  • Eclipse JavaScript debugger: develop a working JavaScript debugging environment relying on an integration with the major browsers and available debuggers
  • Eclipse IDE generator: building on some previous research work (Chris Laffra), provide an Eclipse IDE generation environment derived from a language grammar. This project would allow the creation of basic support of new or existing languages in Eclipse rapidly.
  • Add support for printing in Eclipse on Linux. yes! It does not have proper support.
  • Eclipse Mono Development Environment: a feature rich .Net development platform for Eclipse.
  • New Eclipse update manager: Eclipse current update manager is four years old and ridden with significant problems. This project would provide with a modern and original design for an automated software update for plugins and natives, if possible generic for OSGi based runtimes and could provide original inputs for the revamp of update in 3.3 to the platform team.
  • Eclipse key macros: this is one of the most requested and oldest pending feature on Eclipse. Think something like emacs style macros done right.
  • Eclipse key bindings manager: add support to Eclipse to create arbitrary bindings between keys and actions, even when not planned ahead by a plugin developer.
  • Eclipse multiple fast view bars: add support for multiple fast view bars in Eclipse (Only one is supported for now.)... and earn Erich Gamma gratitude for doing so as a bonus.
  • NetBeans in Eclipse: netclipse: the plugins models for Eclipse and NetBeans are very similar yet different. This project would provide the ability to run and embed a minimal NetBeans environment within Eclipse -- as Eclipse plugins-- , and support running NetBeans plugins like Matisse (Swing UI painter) or Coyote (dynamic languages toolkit).
  • Eclipse plugin search plugin: provide an Eclipse search function that makes searching navigation and browsing in the plugin code easier.
  • Eclipse RCP installer wizards: create Eclipse wizards to generate native graphical installers and packages for the major platforms: Windows , MacOSX, and Linux is, deb, emerge, rpms for an Eclipse Rich Client Platforma application.
  • Eclipse Open Office Inegration: provide OpenOffice as a set of minimal Eclipse plugins for each platforms integrated in Eclipse and packaged for RCP deployment
  • Eclipse install based manager: provide application and support for managing a large deployment of Eclipse based clients, including pushed updates and client configurations.
  • Mylar Wiki integration, enabling context and embedded authoring for Wiki pages and tasks.
  • Mylar and ECF integration, enabling task contexts to be shared synchronously between developers. Possibly using XMPP and Google Talk messaging service
  • Google Talk Voice-over-IP client implemented as RCP app using ECF call API and Jingle protocol
  • Real-time collaboration based upon ECF+RCP and Google Talk XMPP-based messaging

Back to the top