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 "JDT Core/Plan/Java"
< JDT Core
(→Overview) |
m (→JDK 11) |
||
Line 194: | Line 194: | ||
|- | |- | ||
| 9 | | 9 | ||
+ | | [https://bugs.openjdk.java.net/browse/JDK-8193576 Filer should warn if processors redefine symbols from the classpath or sourcepath ] | ||
+ | | [https://bugs.eclipse.org/bugs/show_bug.cgi?id=534979 534979] | ||
+ | | | ||
+ | | xd | ||
+ | | | ||
+ | | Candidate | ||
+ | |- | ||
+ | | 10 | ||
| [https://bugs.openjdk.java.net/browse/JDK-8046171 JEP 181: Nest-Based Access Control ] | | [https://bugs.openjdk.java.net/browse/JDK-8046171 JEP 181: Nest-Based Access Control ] | ||
| [https://bugs.eclipse.org/bugs/show_bug.cgi?id=534668 534668] | | [https://bugs.eclipse.org/bugs/show_bug.cgi?id=534668 534668] |
Revision as of 02:40, 23 May 2018
Contents
Java Releases Support Page
This page is a running wiki which documents the various Java releases and the features that affect JDT Core
Overview
Sl No | Java Version Support | JDT Bug(s) | Remarks |
1 | Java 10 | Top Level Java 10 Bugs | Last Release (3/2018) |
2 | Java 11 | Top Level Java 11 | Release Coming Up (9/2018) |
3 | TBD - Java 12 | Java 12 TBD | in the Near Future (9/2019) |
Technical Debt - Current and Past Releases
JDK 10
Query used is this; Generic JEP query is this. (Yes, we may get a JDK 10, 11, etc., after all: Proposal from jdk-dev list) For each Java X (10,11 etc) - add an additional weeks effort for pde related (3d) and misc sanity (2d).
Investigate Java 10 features and the possible support from JDT Core Top Level Bug.
Sl No | JEP /JDK Bug | Eclipse Bug/Wiki Link | Remarks | |
1 | JEP 314: Additional Unicode Language-Tag Extensions | Not Applicable - Placeholder | ||
2 | JEP 286: Local-Variable Type Inference | JEP286: Local Variable Type Inference | refer JDK-8187694 as well | |
3 | JEP 322: Time-Based Release Versioning | Placeholder | This may have impact on launcher as well JDT Core model tests (if not covered yet) | |
4 | JSR 269: Pluggable Annotation-Processing API | Bug 530444 - JSR 269 API changes | @Jay: Please https://bugs.eclipse.org/bugs/show_bug.cgi?id=530444#c15 | |
5 | Add -source 10 and -target 10 to javac | bug 527556 | ||
6 | Add module support for javadoc -link and -linkoffline options | to add bug number | CSR | |
7 | Support for multiple stylesheets in javadoc | to add bug number | CSR |
JDK 11
Handy General OPEN JDK Queries aka top-level requirement
Distilled from the above, specific bugs are listed below:
Sl No | JEP /JDK Bug | Eclipse Bug/Wiki Link | Target Milestone/Date | Effort Estimate | Effort Estimate Rationale | Remarks | |
1 | JEP 309: Dynamic Class-File Constants | 531710 | 3d | jdt.core: disassembler ; no mandatory changes expected for compiler though opportunistically it can generate the new constants - not taking that effort into consideration. No changes expected in jdt.ui and pde. jdt.debug also not affected though the invokedynamic will be used here - no change in jdt.debug atleast in the first phase. | targeted | ||
2 | JEP 318: Epsilon: An Arbitrarily Low-Overhead Garbage Collector | 1d | zero if no jdt.debug effort - no effect on jdt.core, jdt.ui and pde. At runtime, a debug session with this option turned on might terminate earlier- the solution could be as simple as bumping up the mem req in which case the effort is low. | targeted | |||
3 | JEP 320: Remove the Java EE and CORBA Modules | 2d | test effort only; no effect on JDT and debug - no change in launcher / eclipse.ini file as well as long as we are not using --add-modules=java.se.ee and other deprecated modules - Documentation at the marketplace may require removal of mention of these deprecated modules, if any and use only ALL-SYSTEM. | targeted | |||
4 | JEP 323: Local-Variable Syntax for Lambda Parameters | JEP 323 planning page see also bug 531711 | 3w | See here for details | targeted | ||
5 | Add -source 11 and -target 11 to javac | 531713 | 4d | includes 1d of jdt.core and 2d of estimate of jdt.ui and 1d effort of jdt.debug/launch testing | targeted (CSR) | ||
6 | Add module support for @see, @link and @linkplain javadoc tags. | 531712 | 2w | search, jdt.ui will be affected | targeted (CSR) | ||
7 | Add javac support for preview features | 533619 | 3d | closed (CSR) | |||
8 | JEP 327: Unicode 10 Proposed to Target | 534657 | xd | Targeted | |||
9 | Filer should warn if processors redefine symbols from the classpath or sourcepath | 534979 | xd | Candidate | |||
10 | JEP 181: Nest-Based Access Control | 534668 | xd | Candidate |
JDK 12
Handy General OPEN JDK Queries aka top-level requirement
Distilled from the above, specific bugs are listed below:
Sl No | JEP /JDK Bug | Eclipse Bug/Wiki Link | Target Milestone/Date | Effort Estimate | Effort Estimate Rationale | Remarks |
1 | tbd | tbd | xd | tbd | tbd |
Keep Watch: In the not so distant future?
Sl No | JEP /JDK Bug | Eclipse Bug/Wiki Link | Target Milestone/Date | Effort Estimate | Effort Estimate Rationale | Remarks |
1 | JEP 325: Switch Expressions | JEP 325 JDT Planning Page see also bug 531714 | 5w | see here for details | candidate - highly possible for JDK 11 | |
2 | JEP 305: Pattern Matching | 531715 | 8w | includes an estimated 5-6w for jdt.core and rest for jdt.ui and debug | candidate - highly possible for JDK 11 as an incubating feature | |
3 | Raw String Literals | 531716 | 3w | language changes, plus possible refactoring changes. includes a possible 1w effort from jdt.debug changes for breakpoints in between the lines | draft - highly possible for JDK 11 | |
4 | JEP 302: Lambda Leftovers | 0 - placeholder | candidate | |||
5 | JEP 301: Enhanced Enums | 0 - placeholder | candidate | |||
6 | JEP 293: Guidelines for JDK Command-Line Tool Options | 0 - placeholder | candidate (Launcher may be affected) | |||
7 | JEP 218: Generics over Primitive Types | 0 - placeholder | candidate | |||
8 | JEP 300: Augment Use-Site Variance with Declaration-Site Defaults | 0 - placeholder | candidate | |||
9 | JEP 303: Intrinsics for the LDC and INVOKEDYNAMIC Instructions | 0 - placeholder | candidate |