Skip to main content

Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "CDT/Archive/planning/4.0Plan"

< CDT‎ | Archive‎ | planning
Line 89: Line 89:
 
* '''Call Hierarchy''': Explore call-graphs by means of a tree as proposed in [https://bugs.eclipse.org/bugs/show_bug.cgi?id=48212 bug 48212].
 
* '''Call Hierarchy''': Explore call-graphs by means of a tree as proposed in [https://bugs.eclipse.org/bugs/show_bug.cgi?id=48212 bug 48212].
 
* Reintroduce '''Type Hierarchy''': Present inheritance relations and members of types. This is proposed in [https://bugs.eclipse.org/bugs/show_bug.cgi?id=142189 bug 142189]. <br>The implementation will also consider [https://bugs.eclipse.org/bugs/show_bug.cgi?id=48213 bug 48213], [https://bugs.eclipse.org/bugs/show_bug.cgi?id=70246 bug 70246], [https://bugs.eclipse.org/bugs/show_bug.cgi?id=71943 bug 71943], [https://bugs.eclipse.org/bugs/show_bug.cgi?id=87815 bug 87815], [https://bugs.eclipse.org/bugs/show_bug.cgi?id=94197 bug 94197], [https://bugs.eclipse.org/bugs/show_bug.cgi?id=99833 bug 99833], [https://bugs.eclipse.org/bugs/show_bug.cgi?id=99835 bug 99835], [https://bugs.eclipse.org/bugs/show_bug.cgi?id=100655 bug 100655], [https://bugs.eclipse.org/bugs/show_bug.cgi?id=108879 bug 108879] and optionally also [https://bugs.eclipse.org/bugs/show_bug.cgi?id=73904 bug 73904].
 
* Reintroduce '''Type Hierarchy''': Present inheritance relations and members of types. This is proposed in [https://bugs.eclipse.org/bugs/show_bug.cgi?id=142189 bug 142189]. <br>The implementation will also consider [https://bugs.eclipse.org/bugs/show_bug.cgi?id=48213 bug 48213], [https://bugs.eclipse.org/bugs/show_bug.cgi?id=70246 bug 70246], [https://bugs.eclipse.org/bugs/show_bug.cgi?id=71943 bug 71943], [https://bugs.eclipse.org/bugs/show_bug.cgi?id=87815 bug 87815], [https://bugs.eclipse.org/bugs/show_bug.cgi?id=94197 bug 94197], [https://bugs.eclipse.org/bugs/show_bug.cgi?id=99833 bug 99833], [https://bugs.eclipse.org/bugs/show_bug.cgi?id=99835 bug 99835], [https://bugs.eclipse.org/bugs/show_bug.cgi?id=100655 bug 100655], [https://bugs.eclipse.org/bugs/show_bug.cgi?id=108879 bug 108879] and optionally also [https://bugs.eclipse.org/bugs/show_bug.cgi?id=73904 bug 73904].
 +
 +
=== Build ===
  
 
=== Debugger ===
 
=== Debugger ===
Line 96: Line 98:
 
How to make the CDI model flexible and extensible [[Proposals]]. See also [https://bugs.eclipse.org/bugs/show_bug.cgi?id=162080 bug 162080].
 
How to make the CDI model flexible and extensible [[Proposals]]. See also [https://bugs.eclipse.org/bugs/show_bug.cgi?id=162080 bug 162080].
  
=== Windows SDK C/C++ Support ===
+
=== Add-ons ===
 +
 
 +
==== Windows SDK C/C++ Support ====
  
 
Support the tool chain that comes with the Windows SDK for C/C++ development. This includes the Visual C++ compiler (cl), linker (link), library builder (lib) [https://bugs.eclipse.org/bugs/show_bug.cgi?id=162105 plan item]
 
Support the tool chain that comes with the Windows SDK for C/C++ development. This includes the Visual C++ compiler (cl), linker (link), library builder (lib) [https://bugs.eclipse.org/bugs/show_bug.cgi?id=162105 plan item]
 
as well as the debugger engine (dbgeng.dll) available with the Debugging Tools for Windows. [https://bugs.eclipse.org/bugs/show_bug.cgi?id=162108 plan item]. This functionality will be provided in an optional feature.
 
as well as the debugger engine (dbgeng.dll) available with the Debugging Tools for Windows. [https://bugs.eclipse.org/bugs/show_bug.cgi?id=162108 plan item]. This functionality will be provided in an optional feature.

Revision as of 13:19, 24 October 2006

This is currently a work in progress. Please let me know if you want any changes, Doug

Last revised: 13:18, 24 October 2006 (EDT)

CDT 4.0 is scheduled to be delivered in June 2007 as part of the Europa Simultaneous Release. Guidelines for this release are available here here.

Release Deliverables

The release deliverables are the same as with previous releases.

  • Source code in CVS tagged "CDT_4_0".
  • CDT run-time, i.e. org.eclipse.cdt feature, downloadable as a tar/zip per supported platform.
  • CDT SDK, i.e. org.eclipse.cdt.sdk and org.eclipse.cdt features, downloadable as a tar/zip per supported platform.
  • Contents of SDK available from the CDT update site.
  • Contents of CDT run-time available from the Europa update site.
  • Release review slides, including project log.

Release Milestones

The CDT will follow the Europa schedule for milestones and final delivery. These generally follow the milestones of the Eclipse Platform by one week. The following are the dates for when the milestones will be generally available along with links to the plans listing the state of the CDT features for that milestone.

  • Thursday, Dec. 21, 2006 - Milestone 4 (4.0 M4) - plan.
  • Friday, Feb. 16, 2007 - Milestone 5 (4.0 M5) - plan.
  • Friday, Mar. 30, 2007 - Milestone 6 (4.0 M6) - plan - API freeze.
  • Friday, May 11, 2007 - Milestone 7 (4.0 M7) - plan - Code freeze.

The code freeze date is the RC0 date which marks the beginning of the ramp down. All features should be implemented and only bug fixes of increasing criticality should be fixed marching towards the Europa release date of Friday, June 29, 2007.

Target Operating Environments

Builds of the CDT are available for the following host operation system and architecture combinations (there are no windowing system specific plugins in the CDT):

  • Windows - x86
  • Linux - x86, x86_64, ppc, ia64
  • Mac OS X - ppc
  • Solaris - sparc
  • AIX - ppc
  • QNX Neutino - x86

The download status show that Windows x86 and Linux x86 are by far the most widely used, and, thus, tested and have the best support.

The current plan is to support Java 1.4.2 run-time environments with CDT 4.0. Some optional components will require Java 1.5.0. We are still looking for concrete examples of CDT users that can not move to Java 1.5.0. If you have such an example, please report it to cdt-dev@eclipse.org.

Internationalization

All effort is made to ensure that the CDT can be nationalized to all languages supported by the Eclipse Platform. Only English is provided with the CDT and is the only language known to be tested.

Compatibility with Previous Releases

The CDT has had a troubled history maintaining backwards compatibility. One of the main objectives of CDT 4.0 will be to finalize all APIs so that we can maintain backwards compatability in future releases. As such, it is anticipated that there will be more churn in the APIs for this release. All plugins that use any APIs and/or extension points provided by the CDT will need to at least recompile against CDT 4.0 and will likely need to make code changes.

Component Plans

The following are the plan items proposed for specific components of the CDT.

Core

Indexing

  • Support headless creation of indexes (PDOM), and import of these prebuilt indexes into user workspaces. bug 74433.
    • Enable pdom index files to be relocatable (contain relative or symbolic paths)
  • Refactor the parser to allow it to be deployed as a standalone JAR file if so desired. bug 151846
  • Refactor the indexer to allow it to be deployed as a standalone JAR file if so desired. bug 158975
  • Refactor the indexer to remove hard dependencies on having an Eclipse project. bug 151847
  • Allow customizability of which parser to run on particular projects/files/resources. bug 151850

New Project Model

The main goal of the New Project Model is to increase the CDT usability, tool-integrator support and multi language support.

See the New Project Model Design attached to bug 115935 for more detail.

UI

C/C++ Editor

  • Support indent width independent of tab width. Allow to specify indent width independent of tab width to support mixed-mode indentation as already requested by bug 53994 and bug 92036.
  • Default formatter. Implement a (simple) default formatter/indenter. bug 95274
  • Text Drag and Drop. Implement Text Drag and Drop for the editor. bug 78677
    Note: This may become obsolete if Eclipse platform implements it in 3.3. See also bug 11624.
  • View non-printable characters. Provide a command and toolbar button to enable visualization of non-printable characters in the editor (CR, LF, TAB, SPACE). bug 140333
    Note: This may become obsolete if Eclipse platform implements it in 3.3. See also bug 22712.
  • Auto-save. Implement an option to regularly save dirty editor buffers to the Eclipse local history as a backup mechanism. bug 140334
    See also Eclipse platform bug 34076.
  • Semantic highlighting. Colorize definitions and declarations of various C/C++ elements: function, variable, type, enum, etc. bug 140335
  • Inactive code highlighting. Highlight lines of code which are inactive (ie. which are excluded by conditional preprocessor directives) in the current scanner configuration. bug 81511

CView

  • Common Navigator extensions. Adopt the new Common Navigator (CN) framework and create CDT specific extensions to plug the content and functionality of the C/C++ Projects view (aka CView) into any Common Navigator view. The extensions will be initially contributed to the new general purpose "Project Explorer", which serves as a playground for early adopters of the technology (like JDT). This should also help to stabilize and improve the CN framework by providing feedback and bug reports. bug 140337

New Views

Build

Debugger

CDI

How to make the CDI model flexible and extensible Proposals. See also bug 162080.

Add-ons

Windows SDK C/C++ Support

Support the tool chain that comes with the Windows SDK for C/C++ development. This includes the Visual C++ compiler (cl), linker (link), library builder (lib) plan item as well as the debugger engine (dbgeng.dll) available with the Debugging Tools for Windows. plan item. This functionality will be provided in an optional feature.

Back to the top