| <html> |
| |
| <head> |
| <meta http-equiv="Content-Language" content="en-us"> |
| <meta http-equiv="Content-Type" content="text/html; charset=windows-1252"> |
| <meta name="GENERATOR" content="Microsoft FrontPage 4.0"> |
| <meta name="ProgId" content="FrontPage.Editor.Document"> |
| <title>Eclipse Project Development</title> |
| <meta name="Author" content="Eclipse Project PMC"> |
| <link rel="stylesheet" href="../../default_style.css" type="text/css"> |
| </head> |
| |
| <body> |
| |
| <h1>Eclipse 2.1 High Priority Challenges</h1> |
| <p>Last revised October 2, 2002</p> |
| <p>The following key challenges confront Eclipse. To focus our efforts these challenges are |
| factored into two sets: the highest priority challenges |
| that we are addressing now, and other important challenges that we should |
| consider AFTER addressing the highest priority challenges. We will |
| regularly revise the contents of these lists to reflect current priorities.</p> |
| <h2>Highest Priority Challenges (that we are addressing now)</h2> |
| <h3>Allow user customizable key bindings</h3> |
| <p>Eclipse provides some support for configurable key bindings. The current |
| support is limited:</p> |
| <ul> |
| <li>only the editor key bindings can be customized.</li> |
| <li>the key bindings can only be changed by a plug-in contributor but not the |
| end user.</li> |
| <li>the current support is error prone for clients and puts a lot of burden on |
| the editor and view contributors <a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=22568">22568</a>.</li> |
| </ul> |
| <p>In addition to making it possible for the user to edit the environment's key |
| bindings, there are additional customization possibilities including visible |
| actions and perspective layout.</p> |
| <p>Involved components: SWT, Platform UI, Text, JDT UI</p> |
| <p>Dynamic team (tasked Sept. 20, 2002): Mike Wilson, Andre Weinand, Kai-Uwe Maetzel, |
| Chris McLaren, Steve Northover</p> |
| <h3>More flexible project layout</h3> |
| <p>In Eclipse the contents of a single project needs to be under a single root. |
| There are complaints that this structure is too rigid. We have to understand |
| this complaints and investigate into a solution, see <a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6664">6664</a>, |
| <a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6144">6144</a> or the |
| newsgroup <a href="file:///C:/Documents%20and%20Settings/EGamma/Desktop/Challenges2-1.htm">http://dev.eclipse.org/newslists/news.eclipse.tools/msg19749.html</a>.</p> |
| <p>It would be desirable to have the output folder used by the Java builder to |
| be not under the project <a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=5043">5043</a>. |
| This allows storing the source on a network drive and the generated code on a |
| local drive.</p> |
| <p>For some projects parts of the source tree should be ignored for building |
| purposes.</p> |
| <p>Involved components: Platform Core, Platform UI, VCM, JDT Core, JDT UI</p> |
| <p>Dynamic team (tasked Sept. 19, 2002): DJ Houghton, Philippe Mulet, Jim des |
| Rivieres, Chris McLaren, John Arthorne</p> |
| <p>Also particpating: Kevin McGuire, Michael Valenta, John Wiegand, Jeff McAffer |
| </p> |
| <p>Working documents:</p> |
| <ol> |
| <li><a href="inflexible-projects-problem.html">Problem Definition - Inflexible |
| Project Structure</a></li> |
| <li><a href="towards-more-flexible-projects.html">Towards More Flexible Project |
| Structure</a></li> |
| <li><a href="flexible-projects-proposal.html">Flexible Project Structure</a></li> |
| </ol> |
| <h3>Add Workbench Navigation History</h3> |
| <p>When navigating code many editors can get opened. It is easy for the user to |
| lose context since there is no easy way to go back to a previous point in the |
| navigation path. There should be support for back/forward actions to enable |
| users to go back.</p> |
| <p>Issue tracking bug: <a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=5700">5700</a>.</p> |
| <p>Involved components: Platform UI, Text, JDT UI</p> |
| <p>Dynamic team: Eduardo Pereira, Kai-Uwe Maetzel</p> |
| <h3><b>Support building projects with circular dependencies</b></h3> |
| <p>For 2.0.2 we will provide a fix to improve error reporting when there are circular |
| projects. For 2.1 we will revisit this problem <a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10262">10262</a> |
| to improve the build behavior.</p> |
| <p>Involved components: Platform Core, JDT Core, Platform UI.</p> |
| <p>Dynamic team (tasked Oct. 2, 2002): Philippe Mulet, Jim des Rivieres, John |
| Arthorne, Tod Creasey</p> |
| <h3>Improve file encoding support</h3> |
| <p>Eclipse allows to set the encoding used for reading and writing files for the |
| entire workspace. This is perceived as too limiting. The challenge here is to |
| describe the problem we want to solve, outline solution, and finally, to implement it.</p> |
| <p>Issue tracking bug: <a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=5399">5399</a>.</p> |
| <p>Involved components: Platform Core, Platform UI, Platform text, Search, |
| Compare, JDT UI, JDT Core.</p> |
| <h3>Improve startup time</h3> |
| <p>The time to start eclipse based products should be improved. This is |
| typically done by delaying the loading of plugins for as long as possible. |
| Additional opportunity for deferred activation of plugins should be investigated |
| including changing how (and how much) we recover UI state. There are also opportunities for improved tools to assist ISV's in |
| optimizing the time it takes for their plugins to load. </p> |
| <p>Involved components: Platform Core, Platform UI, (All)</p> |
| <h2>Other important challenges (that we should consider AFTER addressing the |
| highest priority challenges above)</h2> |
| <h3>Support multi-jar system libraries</h3> |
| <p>Eclipse can already use 1.4 level JREs and JDKs as the product runtime. |
| However, some recent JREs have started packaging their class libraries in |
| multiple jars (not a single rt.jar). This may require additional support |
| in JDT to make this both easy to define, and natural to use.</p> |
| <p>Involved components: All (testing JRE 1.4), JDT UI, JDT Core</p> |
| <h3>Improve Ant support</h3> |
| <p>Add support to navigate from Ant error output to the |
| corresponding source.</p> |
| <p>Involved components: Platform UI, Ant Core</p> |
| <h3>Add cheat sheets</h3> |
| <p>Cheat sheets are an |
| idea for providing better user assistance. For example, "creation and |
| deployment of a plugin" is a multi-step process that could be made easier |
| to follow if there was a guide, similar to a recipe that would track the user's |
| progress and provide both descriptive text that explains the steps involved and |
| integration with Eclipse to automate the process.</p> |
| <p>Involved components: Platform UI</p> |
| <h3>Add table of contents support to wizards</h3> |
| <p>Users may get lost in a complex wizard. For these cases a table of contents |
| may help provide the user context as well as assist in navigating.</p> |
| <p>Involved components: Platform UI</p> |
| <h3><strong>Improve update manager</strong></h3> |
| <p>Allow newly installed features to make the user aware of the new capabilities |
| that were installed as well as allowing the feature to customize the |
| environment.</p> |
| <p>Involved components: Platform UI, Install/Update</p> |
| <h3>Support floating toolbars and views</h3> |
| <p>There are cases where a floating view is useful - repetitive tasks or |
| sequenced instructions: e.g. Cheat sheets, palettes. Some developers want to maximize the edit area to use their entire screen and |
| then rely on floating toolbars to provide access to function.</p> |
| <p>Involved components: Platform UI, SWT</p> |
| <h3>"Remote Projects"</h3> |
| <p>This item is currently under-specified. We need to determine the correct |
| approach for clients to work with remote resources in the 2.1 timeframe. |
| Once we have closed on the direction, we can provide a more accurate |
| specification of this task.</p> |
| <p>Involved components: Unknown</p> |
| |
| <h3>Allow editors to open files outside workspace</h3> |
| <p>It is a common request to be able to open a file that is not part of the |
| workspace with Eclipse. In addition, applications would like to provide OS |
| associations into Eclipse so double-clicking on a file on the Windows Explorer |
| would open the associated Eclipse editor. We need to define what |
| operations and capabilities would be available for these "outside of |
| the workspace" files</p> |
| <p>Involved components: Platform UI, Text</p> |
| <h3>File System Synchronization</h3> |
| <p>The handling of out of sync resources is not consistent. We should have a |
| common scheme and improved support for handling file system synchronization.</p> |
| <h3>Improve serviceability</h3> |
| <p> Under some circumstances error messages that are only appropriate to eclipse developers are |
| being presented to users. While at other times errors can cause the environment to |
| unexpectedly terminate. The task here is to improve our exception handling and to |
| come up with an approach that is suitable both for eclipse developers and |
| eclipse based products.</p> |
| <p>See <a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12224">12224</a>, <a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=23369">23369</a>, |
| <a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=1947">1947</a>, or the |
| newsgroup <a href="http://dev.eclipse.org/newslists/news.eclipse.tools/msg03734.html">http://dev.eclipse.org/newslists/news.eclipse.tools/msg03734.html</a></p> |
| <p>Involved components: Platform Core, SWT, Platform UI</p> |
| <h3>Make Eclipse a platform for developing more than an IDE</h3> |
| <p>There are two parts to this task, the first is to split out generally useful |
| frameworks like JFace and JFace Text into their own plugin the second is to |
| provide a stripped down workbench that can be the foundation for products that |
| are not IDE's.</p> |
| <p>Involved components: Platform UI</p> |
| <h3>Table Widget Scalability</h3> |
| <p>The existing SWT table widget is not well suited for presenting large data |
| models. Investigate if it is possible to achieve sufficient performance |
| from the existing widget. If it is not possible to achieve the desired |
| level of performance then a custom control should be developed.</p> |
| <p>Involved components: Platform UI, SWT</p> |
| <h3>Separate User Preferences from Workspace Preferences</h3> |
| <p>It should be possible to store user preferences that are not specific to a |
| workspace separate from the workspace. </p> |
| <p>Involved components: Platform Core, Platform UI</p> |
| |
| </body> |
| |
| </html> |