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.
Difference between revisions of "CDT/Obsolete/APIBreakages"
(→Proposed API-breaking changes) |
(→Proposed API-breaking changes) |
||
Line 4: | Line 4: | ||
=== Proposed API-breaking changes === | === Proposed API-breaking changes === | ||
− | # Remove all methods, interfaces and classes that have been deprecated since CDT 8. | + | # Remove all methods, interfaces and classes that have been deprecated since around 2 years CDT 8.?.0 and are not currently used in CDT code. |
#* Improves readability | #* Improves readability | ||
#* Reduces maintenance | #* Reduces maintenance | ||
Line 11: | Line 11: | ||
#* Delete CDI plugins | #* Delete CDI plugins | ||
#* Cleaning up old build stuff | #* Cleaning up old build stuff | ||
− | #* Cleanup old-style | + | #** Removing UI that is not used |
+ | #* Cleanup old-style projects | ||
#** Our tests still use old-style and migrating them is not trivial | #** Our tests still use old-style and migrating them is not trivial | ||
#* Old scanner discovery (Language setting provider) | #* Old scanner discovery (Language setting provider) | ||
− | # Rewrite error parsers to use a better regex library (java.regex.Pattern is part of API now) because build is horribly slow from IDE | + | #* What about LR parser? |
+ | #** Need to follow-up with IBM | ||
+ | #** UPC, XLC plugins may need them, which are used by PTP | ||
+ | #** Can we move it to PTP? | ||
+ | #* p2 plugin | ||
+ | #** Could it be part of p2 itself? | ||
+ | #* o.e.cdt.core.native (Spawner) | ||
+ | #** Used by o.e.remote but CDT uses o.e.remote => circular | ||
+ | #** Spawner should be moved lower than CDT. Where? Maybe in CDT but be independent. That stills solves 'circular' dependency.. | ||
+ | #** native should have its own pom/build | ||
+ | #* Remove IA64, QNX if not available from platform | ||
+ | #* Remove o.e.cdt.linuxtools.cdt.autotools.core | ||
+ | |||
+ | # Rewrite error parsers to use a better regex library (java.regex.Pattern is part of API now) because build is horribly slow from IDE strictly because of error parsers. | ||
# Rewrite ui for debug tabs, all current ui controls are APIs... | # Rewrite ui for debug tabs, all current ui controls are APIs... | ||
− | # | + | # Java 1.8 changes |
− | + | ||
=== Proposed process === | === Proposed process === |
Revision as of 13:39, 9 March 2015
CDT 9.0
This page is attempt to collect possible API breaking proposals for next CDT release
Proposed API-breaking changes
- Remove all methods, interfaces and classes that have been deprecated since around 2 years CDT 8.?.0 and are not currently used in CDT code.
- Improves readability
- Reduces maintenance
- Could be contributions from a hackathon
- Suggested rules (not mandatory): something deprecated for around 2 years and not used by CDT itself
- Delete CDI plugins
- Cleaning up old build stuff
- Removing UI that is not used
- Cleanup old-style projects
- Our tests still use old-style and migrating them is not trivial
- Old scanner discovery (Language setting provider)
- What about LR parser?
- Need to follow-up with IBM
- UPC, XLC plugins may need them, which are used by PTP
- Can we move it to PTP?
- p2 plugin
- Could it be part of p2 itself?
- o.e.cdt.core.native (Spawner)
- Used by o.e.remote but CDT uses o.e.remote => circular
- Spawner should be moved lower than CDT. Where? Maybe in CDT but be independent. That stills solves 'circular' dependency..
- native should have its own pom/build
- Remove IA64, QNX if not available from platform
- Remove o.e.cdt.linuxtools.cdt.autotools.core
- Rewrite error parsers to use a better regex library (java.regex.Pattern is part of API now) because build is horribly slow from IDE strictly because of error parsers.
- Rewrite ui for debug tabs, all current ui controls are APIs...
- Java 1.8 changes
Proposed process
- Select an API-breaking change to work on
- Estimate the impact (code changes) of the change on the APIs
- Communicate that impact to the cdt-dev list to notify possible impacted parties