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.
Difference between revisions of "CDT/Archive/planning/3.1"
m (Jonah.kichwacoders.com moved page CDT/planning/3.1 to CDT/Archive/planning/3.1) |
|||
(10 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | |||
+ | {{warning|Note: The contents of this page refer to planning documents of past Eclipse CDT releases. See [[CDT/planning]] for current information. }} | ||
+ | |||
+ | [[Category:CDT:Archive]] | ||
+ | |||
+ | == Endgame Plan == | ||
+ | |||
+ | CDT 3.1 is planned to be a part of the [http://www.eclipse.org/projects/callisto.php Callisto simultaneous release]. The following is the current endgame plan: | ||
+ | |||
+ | * RC0 – May 1 (done) | ||
+ | |||
+ | * RC1 – May 15 (done) | ||
+ | |||
+ | * RC2 – May 29 (end of free-for-all bug fixing) | ||
+ | |||
+ | * RC3 – June 12 (critical fixes only, GA candidate) | ||
+ | |||
+ | * RC4 – June 26 (if necessary, emergency fixes only) | ||
+ | |||
+ | |||
+ | Please add your CDT 3.1 plan items below. | ||
== The Debugger Plan Items == | == The Debugger Plan Items == | ||
The 3.1 plan below is a draft in progress - input from the community is welcome. | The 3.1 plan below is a draft in progress - input from the community is welcome. | ||
− | |||
'''''Eclipse Debug Platform improvements''''' | '''''Eclipse Debug Platform improvements''''' | ||
− | |||
'''Asynchronous API''' | '''Asynchronous API''' | ||
Provide asynchronous adapters for the CDT debug elements [https://bugs.eclipse.org/bugs/show_bug.cgi?id=106205 Bugzilla #106205]. | Provide asynchronous adapters for the CDT debug elements [https://bugs.eclipse.org/bugs/show_bug.cgi?id=106205 Bugzilla #106205]. | ||
− | |||
'''Pluggable view update policies''' | '''Pluggable view update policies''' | ||
Investigate the possibilities and advantages of the pluggable update policies feature for CDT [https://bugs.eclipse.org/bugs/show_bug.cgi?id=104111 Bugzilla #104111]. | Investigate the possibilities and advantages of the pluggable update policies feature for CDT [https://bugs.eclipse.org/bugs/show_bug.cgi?id=104111 Bugzilla #104111]. | ||
− | |||
'''Debug context management''' | '''Debug context management''' | ||
Investigate the advantages of the new debug context management for CDT. | Investigate the advantages of the new debug context management for CDT. | ||
− | |||
− | |||
---- | ---- | ||
'''''CDT UI''''' | '''''CDT UI''''' | ||
− | |||
'''Modules and Signals views''' | '''Modules and Signals views''' | ||
Replace the current viewer by the asynchronous tabletree viewer. | Replace the current viewer by the asynchronous tabletree viewer. | ||
− | |||
'''Signals view''' | '''Signals view''' | ||
Line 42: | Line 53: | ||
Improve the disassembly view [https://bugs.eclipse.org/bugs/show_bug.cgi?id=115786 Bugzilla #115786], [https://bugs.eclipse.org/bugs/show_bug.cgi?id=27239 Bugzilla #27239], [https://bugs.eclipse.org/bugs/show_bug.cgi?id=27892 Bugzilla #27892]. | Improve the disassembly view [https://bugs.eclipse.org/bugs/show_bug.cgi?id=115786 Bugzilla #115786], [https://bugs.eclipse.org/bugs/show_bug.cgi?id=27239 Bugzilla #27239], [https://bugs.eclipse.org/bugs/show_bug.cgi?id=27892 Bugzilla #27892]. | ||
− | |||
− | |||
− | |||
---- | ---- | ||
'''''Launcher''''' | '''''Launcher''''' | ||
− | |||
'''Projectless debugging''' | '''Projectless debugging''' | ||
Allow to debug executables built outside of CDT [https://bugs.eclipse.org/bugs/show_bug.cgi?id=39640 Bugzilla #39640]. | Allow to debug executables built outside of CDT [https://bugs.eclipse.org/bugs/show_bug.cgi?id=39640 Bugzilla #39640]. | ||
− | |||
− | |||
---- | ---- | ||
'''''CDI''''' | '''''CDI''''' | ||
− | |||
'''Add modularity''' | '''Add modularity''' | ||
The idea is to allow clients to contribute parts to CDI that overwrite the default implementation. | The idea is to allow clients to contribute parts to CDI that overwrite the default implementation. | ||
− | |||
'''Support for modules''' | '''Support for modules''' | ||
The modules view information should be retrieved from the backend [https://bugs.eclipse.org/bugs/show_bug.cgi?id=102164 Bugzilla #102164]. | The modules view information should be retrieved from the backend [https://bugs.eclipse.org/bugs/show_bug.cgi?id=102164 Bugzilla #102164]. | ||
− | |||
'''Support for symbol tables''' | '''Support for symbol tables''' | ||
The symbol table related information should be queried from the backend [https://bugs.eclipse.org/bugs/show_bug.cgi?id=91771 Bugzilla #91771]. | The symbol table related information should be queried from the backend [https://bugs.eclipse.org/bugs/show_bug.cgi?id=91771 Bugzilla #91771]. | ||
− | |||
'''Source lookup support''' | '''Source lookup support''' | ||
The list of required source files and directories should be provided by the backend [https://bugs.eclipse.org/bugs/show_bug.cgi?id=41529 Bugzilla #41529]. | The list of required source files and directories should be provided by the backend [https://bugs.eclipse.org/bugs/show_bug.cgi?id=41529 Bugzilla #41529]. | ||
− | |||
---- | ---- | ||
'''''gdb/MI''''' | '''''gdb/MI''''' | ||
− | |||
'''Modified/extended gdb/MI protocols''' | '''Modified/extended gdb/MI protocols''' | ||
Add an extension point to contribute command factories [https://bugs.eclipse.org/bugs/show_bug.cgi?id=114793 Bugzilla #114793]. | Add an extension point to contribute command factories [https://bugs.eclipse.org/bugs/show_bug.cgi?id=114793 Bugzilla #114793]. | ||
− | |||
'''Special launch configuration type for GDB Server''' | '''Special launch configuration type for GDB Server''' | ||
Add a separate launch configuration type for GDB Server instead of supporting it as a special debugger [https://bugs.eclipse.org/bugs/show_bug.cgi?id=79458 Bugzilla #79458]. | Add a separate launch configuration type for GDB Server instead of supporting it as a special debugger [https://bugs.eclipse.org/bugs/show_bug.cgi?id=79458 Bugzilla #79458]. | ||
− | |||
'''Verbose mode for gdb console''' | '''Verbose mode for gdb console''' | ||
Line 101: | Line 98: | ||
Add an option to display the gdb trace in the console [https://bugs.eclipse.org/bugs/show_bug.cgi?id=113107 Bugzilla #113107]. | Add an option to display the gdb trace in the console [https://bugs.eclipse.org/bugs/show_bug.cgi?id=113107 Bugzilla #113107]. | ||
+ | == Managed Build System Plan Items == | ||
+ | '''Support for resources with spaces''' | ||
− | == | + | Support spaces in the project name, sub-folder names, project resource names, and linked resources. See [https://bugs.eclipse.org/bugs/show_bug.cgi?id=76613 Bugzilla #76613], [https://bugs.eclipse.org/bugs/show_bug.cgi?id=85227 Bugzilla #85227] |
+ | '''Tool input ordering - ''Deferred''''' | ||
− | ''' | + | Support user defined ordering of tool inputs (e.g. the user can reorder the inputs to the linker to ensure link time dependencies are resolved in the proper order). '''This feature has been deferred''' |
− | + | '''Partial builds/cleans''' | |
+ | Support building/cleaning a single file, and compile all without linking. See [https://bugs.eclipse.org/bugs/show_bug.cgi?id=45538 Bugzilla #45538]. | ||
− | ''' | + | '''New Dependency Calculator interface''' |
− | + | Add a new dependency calculator interface. It will use Paths rather than Resources. It will add more flexibility to how dependencies can be generated. Convert the built-in GNU tool-chains to use the new interface and to generate .d files as a side-effect of compilation. See [https://bugs.eclipse.org/bugs/show_bug.cgi?id=109289 Bugzilla #109289] and [https://bugs.eclipse.org/bugs/show_bug.cgi?id=108715 Bugzilla #108715]. | |
+ | '''Usability improvements''' | ||
− | + | Allow CDT users to select the active build configuration in the C/C++ perspective without going through the project Properties dialog box. | |
− | + | '''New Build Description Model''' | |
+ | |||
+ | The proposed model splits the building process into 3 separate steps: | ||
+ | |||
+ | 1. A builder-independent description of how to build the selected build configuration is generated from the ManagedBuildInfo model. | ||
+ | |||
+ | 2. A build file generator uses the build description from step 1 to generate buildfiles that will perform the build, or an internal builder uses the build description to determine what needs to be built. | ||
+ | |||
+ | 3. The builder is invoked to perform the built using information generated in step 2. | ||
+ | |||
+ | The model will be partially implemented in CDT 3.1. See [https://bugs.eclipse.org/bugs/show_bug.cgi?id=126221 Bugzilla #126221]. | ||
+ | |||
+ | '''Build only what is needed''' | ||
+ | |||
+ | Building only what is needed to be built. See [https://bugs.eclipse.org/bugs/show_bug.cgi?id=76452 Bugzilla #76452], [https://bugs.eclipse.org/bugs/show_bug.cgi?id=121375 Bugzilla #121375] | ||
== DOM Plan Items == | == DOM Plan Items == | ||
Line 124: | Line 140: | ||
'''DOM Persistance (PDOM)''' | '''DOM Persistance (PDOM)''' | ||
− | Persist names and bindings and anything else necessary for fast retrieval by editor and source navigation features. | + | Persist names and bindings and anything else necessary for fast retrieval by editor and source navigation features. Rewrite the search engine so that it uses the PDOM instead of the old index. |
+ | |||
+ | '''Index View''' | ||
+ | |||
+ | Create a view that presents a tree representation of the contents of the index. | ||
'''Indexer and Type Cache Removal''' | '''Indexer and Type Cache Removal''' |
Latest revision as of 13:56, 22 January 2020
Contents
Endgame Plan
CDT 3.1 is planned to be a part of the Callisto simultaneous release. The following is the current endgame plan:
- RC0 – May 1 (done)
- RC1 – May 15 (done)
- RC2 – May 29 (end of free-for-all bug fixing)
- RC3 – June 12 (critical fixes only, GA candidate)
- RC4 – June 26 (if necessary, emergency fixes only)
Please add your CDT 3.1 plan items below.
The Debugger Plan Items
The 3.1 plan below is a draft in progress - input from the community is welcome.
Eclipse Debug Platform improvements
Asynchronous API
Provide asynchronous adapters for the CDT debug elements Bugzilla #106205.
Pluggable view update policies
Investigate the possibilities and advantages of the pluggable update policies feature for CDT Bugzilla #104111.
Debug context management
Investigate the advantages of the new debug context management for CDT.
CDT UI
Modules and Signals views
Replace the current viewer by the asynchronous tabletree viewer.
Signals view
Move to the gdb/MI UI.
Disassembly view
Improve the disassembly view Bugzilla #115786, Bugzilla #27239, Bugzilla #27892.
Launcher
Projectless debugging
Allow to debug executables built outside of CDT Bugzilla #39640.
CDI
Add modularity
The idea is to allow clients to contribute parts to CDI that overwrite the default implementation.
Support for modules
The modules view information should be retrieved from the backend Bugzilla #102164.
Support for symbol tables
The symbol table related information should be queried from the backend Bugzilla #91771.
Source lookup support
The list of required source files and directories should be provided by the backend Bugzilla #41529.
gdb/MI
Modified/extended gdb/MI protocols
Add an extension point to contribute command factories Bugzilla #114793.
Special launch configuration type for GDB Server
Add a separate launch configuration type for GDB Server instead of supporting it as a special debugger Bugzilla #79458.
Verbose mode for gdb console
Add an option to display the gdb trace in the console Bugzilla #113107.
Managed Build System Plan Items
Support for resources with spaces
Support spaces in the project name, sub-folder names, project resource names, and linked resources. See Bugzilla #76613, Bugzilla #85227
Tool input ordering - Deferred
Support user defined ordering of tool inputs (e.g. the user can reorder the inputs to the linker to ensure link time dependencies are resolved in the proper order). This feature has been deferred
Partial builds/cleans
Support building/cleaning a single file, and compile all without linking. See Bugzilla #45538.
New Dependency Calculator interface
Add a new dependency calculator interface. It will use Paths rather than Resources. It will add more flexibility to how dependencies can be generated. Convert the built-in GNU tool-chains to use the new interface and to generate .d files as a side-effect of compilation. See Bugzilla #109289 and Bugzilla #108715.
Usability improvements
Allow CDT users to select the active build configuration in the C/C++ perspective without going through the project Properties dialog box.
New Build Description Model
The proposed model splits the building process into 3 separate steps:
1. A builder-independent description of how to build the selected build configuration is generated from the ManagedBuildInfo model.
2. A build file generator uses the build description from step 1 to generate buildfiles that will perform the build, or an internal builder uses the build description to determine what needs to be built.
3. The builder is invoked to perform the built using information generated in step 2.
The model will be partially implemented in CDT 3.1. See Bugzilla #126221.
Build only what is needed
Building only what is needed to be built. See Bugzilla #76452, Bugzilla #121375
DOM Plan Items
DOM Persistance (PDOM)
Persist names and bindings and anything else necessary for fast retrieval by editor and source navigation features. Rewrite the search engine so that it uses the PDOM instead of the old index.
Index View
Create a view that presents a tree representation of the contents of the index.
Indexer and Type Cache Removal
Remove the old indexers. The PDOM provides more information than the indexers provided. Move all features that directly used the index to the PDOM, including search, class browser and type hierarchy.
Multi-Language Support
Support the adaptation of the DOM to multiple languages (at least formalize the interfaces since it is already multi-language). Ensure features that use the DOM do so in a language independent manner as much as possible.