EditorPlan80

(Difference between revisions)
(Update NetBeans Features)
(Editor Usability Improvements)
 
(23 intermediate revisions not shown)
Line 4: Line 4:
[http://wiki.netbeans.org/NetBeans_80 High Level Plan]
[http://wiki.netbeans.org/NetBeans_80 High Level Plan]
-
[[EditorPlan73| Plan for previous release]]
+
[[EditorPlan74| Plan for previous release]]
[[EditorPlanNext| Plan for further releases]]
[[EditorPlanNext| Plan for further releases]]
Line 23: Line 23:
===Update NetBeans Features===
===Update NetBeans Features===
-
* use new javac '''(Dusan, M1)'''[[Image:yes_EditorPlan68.png | Image:yes_EditorPlan68.png]]
+
* use new javac '''(Dusan)'''
* handling of the new language features in:
* handling of the new language features in:
** indexing/class file analysis
** indexing/class file analysis
-
** code completion '''(Dusan, M2)'''
 
-
** reformatter, indenter and code generator '''(Dusan, M2)'''
 
** hints
** hints
===New NetBeans Features===
===New NetBeans Features===
-
* convert anonymous to lambda (partially contributed)
 
-
* convert for loops to bulk data operations (contributed)
 
===NetBeans Maintainence===
===NetBeans Maintainence===
-
 
-
* investigate and possibly rewrite javadoc support features to use the new DocTree API
 
-
[[Image:yes_EditorPlan68.png | Image:yes_EditorPlan68.png]] investigate if using DocLint instead of our own warnings would be beneficial, and use DocLint if so
 
==Project Features==
==Project Features==
Line 45: Line 38:
===Profiles===
===Profiles===
-
 
-
J2SE 8 is planned to specify [http://openjdk.java.net/jeps/161 several hardcoded profiles]. We need to change platform definition to enable the new JDK profile feature.
 
==Embedded features==
==Embedded features==
==JavaFX==
==JavaFX==
-
 
-
Redesign FX support according to JDK 8 architecture - FX is to be supported by SE projects in form of optional extension. The redesign would also resolve or make obsolete the issues {{iz|212238}}, {{iz|208800}}. '''(Petr, Tomas, ?20)'''
 
Extend native packaging support from JavaFX to JavaSE projects '''(Petr, Tomas, ?)'''
Extend native packaging support from JavaFX to JavaSE projects '''(Petr, Tomas, ?)'''
-
 
-
[[Image:yes_EditorPlan68.png | Image:yes_EditorPlan68.png]] {{iz|224827}} Update JavaFX Visual Debugger to support changes in FX SDK 8. '''(Petr, 2)'''
 
=Other New Features=
=Other New Features=
Line 65: Line 52:
New hints and error fixes.
New hints and error fixes.
 +
* {{iz|235701}} Java language level migration aids ('''6d''')
 +
* {{iz|235690}} Probable bugs ('''19d''')
 +
* {{iz|235702}} Performance issues ('''5d''')
Improve declarative hints language (e.g. isAccessible condition, onlyValid condition)
Improve declarative hints language (e.g. isAccessible condition, onlyValid condition)
Line 70: Line 60:
Investigate (and if possible create an "external" module for) code recommenders.
Investigate (and if possible create an "external" module for) code recommenders.
-
===Refactoring===
+
{{iz|235185}} Stack Analyser API
-
'''Top voted'''
+
-
 
+
-
{{iz|65315}} [50cat] Customizable templates for Encapsulate Field refactoring
+
-
 
+
-
{{iz|81243}} encapsulate fields: take configurable prefixes into account
+
-
 
+
-
{{iz|224242}} [73cat] rename property
+
-
 
+
-
{{iz|203121}} Support rename refactoring on labels.
+
-
 
+
-
{{iz|131873}} Add "change constructor" hint
+
 +
Code Coverage
 +
===Refactoring===
-
{{iz|216534}} [Find Usages] Include overloaded methods
+
{{iz|206651}} Instant Refactoring - Rename (Full), Introduce{Method, Parameter} (8d)
-
{{iz|198672}} Moving a class inserts "import" not in order
+
{{iz|204051}} Find Usages / Rename of Bundle keys (5d)
-
{{iz|126907}} Refactoring should parse javadoc and perform changes in it
+
{{iz|219075}} Introduce Parameter Object (3d)
-
{{iz|138220}} [Call hierarchy] Show real root of call hierarchy tree
+
{{iz|235564}} {{iz|201150}} {{iz|201606}} {{iz|201607}} {{iz|201609}}
==JavaFX==
==JavaFX==
-
{{iz|221184}} Support JavaFX2 in Maven Projects. '''(Petr, Milos, ? > 20)'''
 
ongoing support of SceneBuilder interoperability plugin (?, ? days)
ongoing support of SceneBuilder interoperability plugin (?, ? days)
-
{{iz|213219}} JavaFX Class Library sub-project. Standard Java Class Library is not usable in FX context. '''(Petr, ~7 days)'''
+
(likely to be obsoleted by the planned removal of FX Platforms as part of the ongoing merge of SE and FX infrastructure) {{iz|213219}} JavaFX Class Library sub-project. Standard Java Class Library is not usable in FX context. '''(~7 days)'''
-
{{iz|224680}} Option to disable "JavaFX-Feature-Proxy". '''(Petr, 2)'''
+
{{iz|215171}} Context sensitive display of FX CSS documentation. '''(~10 days)'''
-
{{iz|204758}} Update surfaced properties, add new, possibly remove obsolete. '''(Petr, 5)'''
+
{{iz|212020}} New Empty FXML Wizard does not allow creating Controller class in other package than FXML. '''(3)'''
-
{{iz|215171}} Context sensitive display of FX CSS documentation. '''(Petr, ~10 days)'''
+
Enable naming of Controller in New FXML Application wizard. '''(1)'''
-
{{iz|213572}} Custom entries in manifest for javafx projects. '''(Petr, ~3)'''
+
{{iz|205086}} {{iz|205085}} Main class and preloader refactoring improvements. '''(Petr, ?5, M3)'''
-
{{iz|212957}} JavaFX application with existing sources. '''(Petr, ?14)'''
+
==Profiler==
-
 
+
-
{{iz|213586}} Generic parameter passing to <fx:jar> and <fx:deploy> tasks; depends on support on FX team side. '''(Petr, 5)'''
+
-
 
+
-
{{iz|212400}} Allow to select required JavaFX runtime version. (possibly also SE version, see also {{iz|218422}}) '''(Petr, 3)'''
+
-
 
+
-
{{iz|212020}} New Empty FXML Wizard does not allow creating Controller class in other package than FXML. '''(Petr, 3)'''
+
-
 
+
-
Enable naming of Controller in New FXML Application wizard. '''(Petr, 1)'''
+
-
 
+
-
{{iz|205086}} {{iz|205085}} Main class and preloader refactoring improvements. '''(Petr, ?5)'''
+
-
 
+
-
Add JavaFX problem resolver (missing/wrong JavaFX platform), may be obsolete after JavaSE, FX and ME merge ? '''(Petr, ?)'''
+
-
 
+
-
? new project (sub)type to simplify creation of NetBeans modules that permit using JavaFX components (Petr, ?, ?>14 days)
+
=Performance=
=Performance=
Line 163: Line 129:
{{iz|197811}} Allow to cancel scan of misconfigured project'''(Tomas, 3 days)'''
{{iz|197811}} Allow to cancel scan of misconfigured project'''(Tomas, 3 days)'''
-
 
-
When refactoring the JavaDoc should be refactored as well.
 
==General Infrastructure Improvements==
==General Infrastructure Improvements==
 +
 +
{{iz|235457}} Essential Root / Incomplete ClassPath support to eliminate useless CPU burning when a JAR on classpath is accidentally missing
{{iz|144579}} (cndreq, API) Add support for child nodes to MimeLookup Preferences
{{iz|144579}} (cndreq, API) Add support for child nodes to MimeLookup Preferences
Line 178: Line 144:
{{iz|214770}} Better utilize mouse wheel to improve navigation and overall usability, depends on UEX review '''(??)'''
{{iz|214770}} Better utilize mouse wheel to improve navigation and overall usability, depends on UEX review '''(??)'''
-
{{iz|160771}} Custom Code Templates in Code Completion '''(Dusan)'''
+
[[Image:yes_EditorPlan68.png | Image:yes_EditorPlan68.png]] {{iz|182513}} indentation guides '''(Mito)'''
-
 
+
-
{{iz|218604}} Chained code completion '''(Dusan)'''
+
-
 
+
-
{{iz|198424}} Introduce 'reindent' action '''(Dusan)'''
+
-
 
+
-
{{iz|28294}}, {{iz|224245}} Ability to sort method order alphabetically '''(Dusan)'''
+
-
 
+
-
{{iz|220009}} - Option for wrapping in switch statements '''(Dusan)'''
+
-
 
+
-
{{iz|186419}}, {{iz|221377}} Minor code completion improvements '''(Dusan)'''
+
-
 
+
-
{{iz|225713}} Regexp highlighting in searchbox '''(Mito)'''
+
-
 
+
-
{{iz|223900}} Zoom action buttons '''(Mito)'''
+
-
 
+
-
{{iz|219536}} {{iz|214986}} Better search and replace UI '''(Mito)'''
+
-
 
+
-
{{iz|196301}} Make color profiles export and import as Keymap Profiles '''(Mito)'''
+
-
 
+
-
{{iz|225747}} - Allow more detailed control of whitespace and newline highlighting '''(Mila, 4 days)'''
+

Current revision as of 13:06, 18 November 2013

Disclaimer: The content of this NetBeans development wiki page is intended for pre-planning purposes ONLY. The development, release, and timing of any feature or functionality described here should not be treated as final, and is subject to change at any time at the sole discretion of Oracle. For information about NetBeans software releases please visit the NetBeans Roadmap.

Contents

Planning for NetBeans 8.0 (JET Team)

High Level Plan

Plan for previous release

Plan for further releases

Input from the marketing team

J2SE 8 Support

Core Features

Notable planned J2SE 8 features:

Update NetBeans Features

  • use new javac (Dusan)
  • handling of the new language features in:
    • indexing/class file analysis
    • hints

New NetBeans Features

NetBeans Maintainence

Project Features

  • need to update freeform to handle source level 1.8

Profiles

Embedded features

JavaFX

Extend native packaging support from JavaFX to JavaSE projects (Petr, Tomas, ?)

Other New Features

Java

Issue 225298 Per-project hint settings.

New hints and error fixes.

Improve declarative hints language (e.g. isAccessible condition, onlyValid condition)

Investigate (and if possible create an "external" module for) code recommenders.

Issue 235185 Stack Analyser API

Code Coverage

Refactoring

Issue 206651 Instant Refactoring - Rename (Full), Introduce{Method, Parameter} (8d)

Issue 204051 Find Usages / Rename of Bundle keys (5d)

Issue 219075 Introduce Parameter Object (3d)

Issue 235564 Issue 201150 Issue 201606 Issue 201607 Issue 201609

JavaFX

ongoing support of SceneBuilder interoperability plugin (?, ? days)

(likely to be obsoleted by the planned removal of FX Platforms as part of the ongoing merge of SE and FX infrastructure) Issue 213219 JavaFX Class Library sub-project. Standard Java Class Library is not usable in FX context. (~7 days)

Issue 215171 Context sensitive display of FX CSS documentation. (~10 days)

Issue 212020 New Empty FXML Wizard does not allow creating Controller class in other package than FXML. (3)

Enable naming of Controller in New FXML Application wizard. (1)

Issue 205086 Issue 205085 Main class and preloader refactoring improvements. (Petr, ?5, M3)

Profiler

Performance

Full text index

(Issue 201682), Find Usages and related refactorings for methods and fields can be made faster - a full text index would be very helpful (Tomas,5)

Remove obsolete code in editor

Issue 102406 Removing the old Syntax (the former version of lexer) - eliminate storage of Syntax.State from line elements. (Mila, 10 days)

Issue 204452 EditorActionRegistration annotation improvements should allow for declarative registration of all editor actions. (Mila, 10 days)

Issue 205707 Introduce View API/SPI and deprecate old o.n.editor.lib.view code and DrawEngine code. (Mila, 10 days)

Editor Performance improvements

Annotation Handling Performance

Issue 197747 - Performance improvements of org.netbeans.editor.Annotations and related classes

Misc performance improvements

Issue 187282 (cndreq, API) Allow to exclude embedded langs for source root (Tomas, 5 days)

Issue 195814 Improve Go To File performance for non source file. The Go To File has two parts. The first one is handling source files and is provided by parsing.api. This part is reasonably fast (for typical set up < 1s). The second part handles files which are not under source roots (parsing.api does not know about them) and it does file system search. The second part may take minutes. (Tomas, 5 days)

Issue 223984 - Provide diagnostics for tasks running under documents read/write lock for a long time (Mila, 1 day)

Java Project Improvements

Issue 123464 Improve UI for resolving broken references (Tomas, 10 days)

Issue 193436 Allow library registration using AnnotationProcessor (Tomas, 2 days)

Issue 174506 Run File for any java file with main methods should accept command line parameters (Tomas, 3 days)

Improve creation of a Java Project From Existing Sources Issue 194533 and Issue 190242. Partially done in NB 6.9, the wizard is now able to find source roots in selected folder but it should do it automatically for base project folder. The base project folder should be accessible from files tab as requested in Issue 194533. (Tomas, 5 days)

Issue 197811 Allow to cancel scan of misconfigured project(Tomas, 3 days)

General Infrastructure Improvements

Issue 235457 Essential Root / Incomplete ClassPath support to eliminate useless CPU burning when a JAR on classpath is accidentally missing

Issue 144579 (cndreq, API) Add support for child nodes to MimeLookup Preferences

Move stable part of java.api.common into regular api (java.project). Currently there in no way how 3rd party project implementors can use the utilities in java.api.common which causes copy paste programming. At least some parts of this module like QuerySupport should be cleaned up and moved to stable API. (Tomas, 5 days)

Remove implementation dependency of java.source on parsing.api. A support friend bridge module has to be created. The parsing.api and java.source will depend on it. (Tomas, 15 days)

Editor Usability Improvements

Issue 214770 Better utilize mouse wheel to improve navigation and overall usability, depends on UEX review (??)

Image:yes_EditorPlan68.png Issue 182513 indentation guides (Mito)

Not logged in. Log in, Register

By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2012, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo