EditorPlanNext

(Difference between revisions)
(Chnanged order)
m
 
(55 intermediate revisions not shown)
Line 1: Line 1:
 +
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 [http://netbeans.org/community/releases/roadmap.html NetBeans Roadmap].
 +
 +
 +
Plan for the upcoming release is here: [[EditorPlan80]]. This page serves as placeholder for items for future releases.
 +
=Features for future releases=
=Features for future releases=
-
==View hierarchy==
+
[[GUIBuilderPlan72| GUI Builder Plan]]
-
{{iz|121357}} New View Hierarchy '''(Mila 20)'''
+
[[CslPlan72 | CSL plans ]]
-
===Word Wrap===
 
-
{{iz|89894}} Add word wrap for text files '''(Mila 5)'''
 
-
===Rendering performance===
+
==More Hints==
-
==Rectangular tools==
+
===Competitive===
-
{{iz|13857}} Cutting/Copying vertical blocks of text: Rectangular Edit Tools '''(Mila 10)'''
+
[http://jupiter.czech.sun.com/wiki/view/NbQE/IdeaErrorsInspections Internal Wiki]
-
==OSGi support (maybe with Jesse?)==
+
==OSGi bundles support==
 +
The main question here whether we want to support bundles without using Maven. If so the following would have to be implemented:
-
==New applet support and JWS (maybe Milan Kubec)==
+
===OSGi bundle project type===
 +
===Platform manager changes===
 +
===Library Manager===
 +
===Debugger, Profiler===
 +
Handled by the respective teams --- but almost no changes required there.
 +
===Dependency Viewer===
 +
From Maven.
-
Improve support for Applets (JDK 1.6u10) {{iz|81678}} '''(Tomas Z.)'''
+
== Refactoring ==
 +
'''Top voted''' '''NetCat'''
 +
{{iz|224692}} [73cat] Improved rename refactoring for class name changes
-
==Spellchecker==
+
'''Top voted'''
-
Integrate (in contrib now)
+
{{iz|186206}} Should be possible to refactor method return type
-
==Stack trace analyzer==
+
'''Top voted'''
-
Integrate (in contrib now)
+
{{iz|144546}} Remember settings in Encapsulate Fields Dialog
-
==JDK 7 features==
+
{{iz|134295}} Delete Dialog should remember last settings
-
===Coin===
+
{{iz|199161}} need to be able to set defaults for 'Find Usages' dialog et. al.
-
http://openjdk.java.net/projects/coin/
+
-
http://wikis.sun.com/display/ProjectCoin/2009ProposalsTOC
+
-
Work started in http://hg.netbeans.org/jdk7 with builds available here http://bertram.netbeans.org/hudson/job/jdk7/
+
-
===JSR 308===
+
{{iz|220834}} [Pull-up method] Should add @Override
-
http://openjdk.java.net/projects/type-annotations/
+
-
Seems to be implemented in the JDK7 code base (???)
+
-
===Jigsaw (???)===
+
{{iz|212995}} Inspect and transform error list is not "linked" to files
-
http://jcp.org/en/jsr/detail?id=294
+
-
The status is currently unknown.
+
-
==Annotations support==
+
{{iz|211524}} Ctrl-R to invoke ActionProvider.COMMAND_RENAME when context is a
-
  (for the features already in JDK 6)
+
Project
-
*{{iz|111063}} Support JSR 269 (annotation processors)
+
-
**{{iz|111065}} Support Annotation Processors in Java Editor
+
-
***{{iz|111292}} Use code completion hints supplied by annotation processors
+
-
***{{iz|111293}} Editor should run annotation processors and display their messages
+
-
***{{iz|111294}} Editor should run annotation processors and be aware of generated classes
+
-
**{{iz|111080}} Minimal Support for Annotation Processing related javac options
+
-
Something is already here http://kenai.com/projects/pelmel/pages/AnnotationProcessors
+
-
==Jackpot 3.0 (???)==
+
{{iz|209778}} Refactoring operations not properly labeled in local history
-
http://kenai.com/projects/jackpot30
+
-
==More refactorings==
+
{{iz|204051}} [71cat] enhance rename refactoring
-
[http://jupiter.czech.sun.com/wiki/view/NbQE/IdeaRefactoringFeatures From IDEA, Eclipse]
+
-
{{iz|57767}} Move method refactoring, 6 duplicates '''(Honza P. 5)'''
+
{{iz|198479}} Missing obvious refactoring for Multiple top-level classes in
-
{{iz|147849}} depends on this '''(Honza P. 5)'''
+
file hint
-
{{iz|100758}} Beans Refactoring Integration '''(Honza P.)'''
+
{{iz|72059}} [50cat] Make Static , make the current selected method static
 +
and perform all requiered changes to source codes
-
{{iz|57715}} Replace Method Code Duplicates '''(Honza P.)'''
+
{{iz|211719}} Inline only selected method call
-
{{iz|57545}} Inline Method/Variable '''(Honza P.)'''
+
{{iz|211621}} Update the member selection table of Extract, Pull Up and Push
-
Improved Java Search
+
Down
-
==More Hints==
+
{{iz|211351}} "Extract Class" and "Move method" refactor options.
-
===From IDEA, Eclipse?===
+
{{iz|205064}} Refactor>>Extract Superclass>>Make Abstract -Should Add
 +
@Override to Methods in Subclass
-
===Hints from annotations===
+
{{iz|199457}} Display refactored Method in Popup when 'Introduce Method' is
-
[https://lang.dev.java.net/ Java Source Code Processing Annotations] '''(Honza L., Jarda)'''
+
used
-
==Indexing==
+
 
-
 
+
{{iz|165579}} Refactoring of loop labels doesn't work
-
[[EditorIndexing68 | done?]]
+
 
 +
{{iz|152018}} [rename] No warning when renaming generics to exisint one
 +
 
 +
{{iz|136259}} Add option "Find Concrete Subtypes Only" to "Find Usages"
 +
 
 +
 
 +
===More refactorings===
 +
[http://jupiter.czech.sun.com/wiki/view/NbQE/IdeaRefactoringFeatures Competitive]
 +
 
 +
Replace Temp with Query
 +
 
 +
Extract Method Object
 +
 
 +
Introduce Parameter Object
 +
 
 +
{{iz|72059}} Make Method Class Static
 +
 
 +
{{iz|55762}}, {{iz|56726}} Generify
 +
 
 +
===Copy Clone Move===
 +
Move: {{iz|154900}}
 +
 
 +
{{iz|57715}} Replace Method Code Duplicates
 +
 
 +
===Performance===
 +
 +
* Find Usages for methods (relates to Call Hierarchy too)
 +
* Mimetype registration for actions and plugins
==Stabilize editor APIs==
==Stabilize editor APIs==
Line 90: Line 115:
* rewrite or make Marian Petras to lexerify properties module
* rewrite or make Marian Petras to lexerify properties module
* isolate all Syntax related classes to a deprecated autoload module
* isolate all Syntax related classes to a deprecated autoload module
-
 
-
===CSL removal===
 
-
Impossible in one release (?)
 
===Make Parsing and Indexing API stable (??)===
===Make Parsing and Indexing API stable (??)===
-
==Better embeddings (SQL in Strings - Jirka Rechtacek?)==
+
==JNLP and WebStart improvements==
 +
 
 +
{{iz|181260}} Do not add Class-Path attribute into applet jar
 +
 
 +
{{iz|181261}} Provide a way to mark JNLP jars as eager or lazy.
 +
 
 +
{{iz|181262}} Add "indexMetaInf" attribute into jar task
 +
 
 +
{{iz|181263}} Provide UI to manage certificates to sign the JNLP application
 +
 
 +
{{iz|181264}} Add more sophisticated customizer of VM options
 +
 
 +
{{iz|181265}} Add filter warnings possibility into the output window
 +
 
==PelMel (?)==
==PelMel (?)==
Line 104: Line 139:
* extended support for closure-like anonymous innerclasses (anonymous innerclasses with one method):
* extended support for closure-like anonymous innerclasses (anonymous innerclasses with one method):
** folding of the anonymous innerclass class into a closure-like format
** folding of the anonymous innerclass class into a closure-like format
-
** code completion shows a closure-like entry when possible, that generates the appropriate anonymous innerclass  
+
** code completion shows a closure-like entry when possible, that generates the appropriate anonymous innerclass
* folding of constructor and method type parameters
* folding of constructor and method type parameters
-
* support for URLs in the editor (Ctrl-click works on URLs)
 
-
* Go to Implementation action for Java
 
==Integrated search (???)==
==Integrated search (???)==
Line 114: Line 147:
We should work on integration of those features: Find, Replace, Find in Projects, Replace in Projects, Find Usages
We should work on integration of those features: Find, Replace, Find in Projects, Replace in Projects, Find Usages
-
==Code beautifier (reformat and fix imports on more files)==
+
==Misc Features==
-
===Organize imports (?)===
+
{{iz|105927}} Support for Class-Path attribute in manifest '''(Tomas 5)'''
-
{{iz|122109}} Optimize Imports
+
{{iz|174506}} Run File for any java file with main methods should accept command line parameters '''(Tomas 3)'''
-
=Misc Features for future releases=
+
Various fixes/improvements in indexing (eg. {{iz|170521}}, {{iz|177511}}, {{iz|170939}}, {{iz|176271}}, {{iz|159756}}, {{iz|170915}}, etc.) '''(Vita 10) (Tomas 5)'''
==[https://netbeans.org/bugzilla/buglist.cgi?bug_file_loc=&bug_file_loc_type=allwordssubstr&bug_id=&bug_status=NEW&bug_status=STARTED&bug_status=REOPENED&bugidtype=include&chfieldfrom=&chfieldto=Now&chfieldvalue=&email1=&email2=&emailassigned_to1=1&emailassigned_to2=1&emailcc2=1&emailqa_contact2=1&emailreporter2=1&emailtype1=substring&emailtype2=substring&field-1-0-0=votes&field-1-1-0=product&field-1-2-0=bug_status&field0-0-0=noop&keywords=&keywords_type=allwords&known_name=top_voted_enhs&long_desc=&long_desc_type=allwordssubstr&product=editor&product=java&query_format=advanced&remaction=&short_desc=&short_desc_type=allwordssubstr&status_whiteboard=&status_whiteboard_type=allwordssubstr&type-1-0-0=greaterthan&type-1-1-0=anyexact&type-1-2-0=anyexact&type0-0-0=noop&value-1-0-0=4&value-1-1-0=editor%2Cjava&value-1-2-0=NEW%2CSTARTED%2CREOPENED&value0-0-0=&votes=5&order=bugs.votes%2Cbugs.bug_id%20desc&query_based_on=top_voted_enhs Top Voted Enhancements]==
==[https://netbeans.org/bugzilla/buglist.cgi?bug_file_loc=&bug_file_loc_type=allwordssubstr&bug_id=&bug_status=NEW&bug_status=STARTED&bug_status=REOPENED&bugidtype=include&chfieldfrom=&chfieldto=Now&chfieldvalue=&email1=&email2=&emailassigned_to1=1&emailassigned_to2=1&emailcc2=1&emailqa_contact2=1&emailreporter2=1&emailtype1=substring&emailtype2=substring&field-1-0-0=votes&field-1-1-0=product&field-1-2-0=bug_status&field0-0-0=noop&keywords=&keywords_type=allwords&known_name=top_voted_enhs&long_desc=&long_desc_type=allwordssubstr&product=editor&product=java&query_format=advanced&remaction=&short_desc=&short_desc_type=allwordssubstr&status_whiteboard=&status_whiteboard_type=allwordssubstr&type-1-0-0=greaterthan&type-1-1-0=anyexact&type-1-2-0=anyexact&type0-0-0=noop&value-1-0-0=4&value-1-1-0=editor%2Cjava&value-1-2-0=NEW%2CSTARTED%2CREOPENED&value0-0-0=&votes=5&order=bugs.votes%2Cbugs.bug_id%20desc&query_based_on=top_voted_enhs Top Voted Enhancements]==
Paste Formatted improvements
Paste Formatted improvements
-
 
-
{{iz|105927}} Support for Class-Path attribute in manifest
 
{{iz|122100}} Analyze framework (tool for static analysis) '''(Honza P., Honza L.)'''
{{iz|122100}} Analyze framework (tool for static analysis) '''(Honza P., Honza L.)'''
Line 136: Line 167:
{{iz|47507}} Transitively required libraries not automatically added to runtime classpath
{{iz|47507}} Transitively required libraries not automatically added to runtime classpath
-
=General Infrastructure Improvements=
+
==General Infrastructure Improvements==
{{iz|135492}} Simplify Coloring Profiles creation '''(Vita)'''
{{iz|135492}} Simplify Coloring Profiles creation '''(Vita)'''
 +
==Usability Improvements==
-
=Usability Improvements=
+
{{iz|138794}} - Redesign "Javadoc Index Search" GUI
-
 
+
-
{{iz|101843}} Up-to-date status in error stripe '''(Lahvac)'''
+
-
 
+
-
{{iz|138794}} - Redesign "Javadoc Index Search" GUI '''(Honza P.)'''
+
-
 
+
-
Features on Save (reformat, fix imports, etc) '''(Mila)'''
+
-
 
+
-
{{iz|157079}} Keymap Panel UI improvements
+
-
 
+
-
{{iz|164601}} Expansions improvements
+
 +
{{iz|164601}} Expansions improvements
=Quality Feedback=
=Quality Feedback=
Line 163: Line 186:
::* {{iz|96008}} Use simple name for inner classes
::* {{iz|96008}} Use simple name for inner classes
::* {{iz|112742}} Simple return value for methods returning wildcard generic
::* {{iz|112742}} Simple return value for methods returning wildcard generic
-
* Honza L.
 
-
* Hanz
 
* Mila
* Mila
-
:* {{iz|103467}} Explicit control of UndoableEdit chunking
 
:* {{iz|86511}} Create syntax coloring guide for Lexer
:* {{iz|86511}} Create syntax coloring guide for Lexer
:* {{iz|122856}} Eliminate non-read/write-locked use of TokenHierarchy's methods
:* {{iz|122856}} Eliminate non-read/write-locked use of TokenHierarchy's methods
:* {{iz|150197}} Switch off Lexer's Token Hierarchy during formatting
:* {{iz|150197}} Switch off Lexer's Token Hierarchy during formatting
-
* Vita
 
-
* Honza P.
 
-
 
* Max
* Max
:* There was also an idea of hardcoding lists of the most common shortcut that are used by various OSes and to warn a user when they try to assign them to Netbeans actions.
:* There was also an idea of hardcoding lists of the most common shortcut that are used by various OSes and to warn a user when they try to assign them to Netbeans actions.
Line 178: Line 195:
:* {{iz|131873}} - "add parameter to constructor" hint
:* {{iz|131873}} - "add parameter to constructor" hint
:* {{iz|148751}} - Provide change type hint when there are incompatible generic type
:* {{iz|148751}} - Provide change type hint when there are incompatible generic type
-
:* {{iz|145018}} - Change return type hint!! Performance
 

Current revision as of 08:20, 19 August 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.


Plan for the upcoming release is here: EditorPlan80. This page serves as placeholder for items for future releases.

Contents

Features for future releases

GUI Builder Plan CSL plans


More Hints

Competitive

Internal Wiki

OSGi bundles support

The main question here whether we want to support bundles without using Maven. If so the following would have to be implemented:

OSGi bundle project type

Platform manager changes

Library Manager

Debugger, Profiler

Handled by the respective teams --- but almost no changes required there.

Dependency Viewer

From Maven.

Refactoring

Top voted NetCat Issue 224692 [73cat] Improved rename refactoring for class name changes

Top voted Issue 186206 Should be possible to refactor method return type

Top voted Issue 144546 Remember settings in Encapsulate Fields Dialog

Issue 134295 Delete Dialog should remember last settings

Issue 199161 need to be able to set defaults for 'Find Usages' dialog et. al.

Issue 220834 [Pull-up method] Should add @Override

Issue 212995 Inspect and transform error list is not "linked" to files

Issue 211524 Ctrl-R to invoke ActionProvider.COMMAND_RENAME when context is a Project

Issue 209778 Refactoring operations not properly labeled in local history

Issue 204051 [71cat] enhance rename refactoring

Issue 198479 Missing obvious refactoring for Multiple top-level classes in file hint

Issue 72059 [50cat] Make Static , make the current selected method static and perform all requiered changes to source codes

Issue 211719 Inline only selected method call

Issue 211621 Update the member selection table of Extract, Pull Up and Push Down

Issue 211351 "Extract Class" and "Move method" refactor options.

Issue 205064 Refactor>>Extract Superclass>>Make Abstract -Should Add @Override to Methods in Subclass

Issue 199457 Display refactored Method in Popup when 'Introduce Method' is used

Issue 165579 Refactoring of loop labels doesn't work

Issue 152018 [rename] No warning when renaming generics to exisint one

Issue 136259 Add option "Find Concrete Subtypes Only" to "Find Usages"


More refactorings

Competitive

Replace Temp with Query

Extract Method Object

Introduce Parameter Object

Issue 72059 Make Method Class Static

Issue 55762, Issue 56726 Generify

Copy Clone Move

Move: Issue 154900

Issue 57715 Replace Method Code Duplicates

Performance

  • Find Usages for methods (relates to Call Hierarchy too)
  • Mimetype registration for actions and plugins

Stabilize editor APIs

Issue 130487 Provide replacements for API/SPIs from org.netbeans.editor (Mila,Vita)

Issue 130488 Provide better supports for particular editor API/SPIs (Mila,Vita)

(B) Issue 120357 Rework and stabilize Indentation API - this in particular means to (Vita 5)

  • isolate old formatting API to a deprecated autoload module (in progress)
  • cleanup GSF formatting related API
  • improve the new API, documentation, usecases, etc.

(B) Issue 102406 Stop using and deprecate Syntax (Vita 10)

  • get rid of Syntax based java indenter
  • rewrite or make Marian Petras to lexerify properties module
  • isolate all Syntax related classes to a deprecated autoload module

Make Parsing and Indexing API stable (??)

JNLP and WebStart improvements

Issue 181260 Do not add Class-Path attribute into applet jar

Issue 181261 Provide a way to mark JNLP jars as eager or lazy.

Issue 181262 Add "indexMetaInf" attribute into jar task

Issue 181263 Provide UI to manage certificates to sign the JNLP application

Issue 181264 Add more sophisticated customizer of VM options

Issue 181265 Add filter warnings possibility into the output window


PelMel (?)

http://kenai.com/projects/pelmel

  • extended support for closure-like anonymous innerclasses (anonymous innerclasses with one method):
    • folding of the anonymous innerclass class into a closure-like format
    • code completion shows a closure-like entry when possible, that generates the appropriate anonymous innerclass
  • folding of constructor and method type parameters

Integrated search (???)

We have many issues with Search dialogs (details) We should work on integration of those features: Find, Replace, Find in Projects, Replace in Projects, Find Usages

Misc Features

Issue 105927 Support for Class-Path attribute in manifest (Tomas 5)

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

Various fixes/improvements in indexing (eg. Issue 170521, Issue 177511, Issue 170939, Issue 176271, Issue 159756, Issue 170915, etc.) (Vita 10) (Tomas 5)

Top Voted Enhancements

Paste Formatted improvements

Issue 122100 Analyze framework (tool for static analysis) (Honza P., Honza L.)

Issue 60941 Javadoc Formatter (Honza P. 7)

(E) Issue 152749 Scanning of sources and compiling should be removed (Scan On Demand) (Vita 5 (evaluation))

Issue 47507 Transitively required libraries not automatically added to runtime classpath

General Infrastructure Improvements

Issue 135492 Simplify Coloring Profiles creation (Vita)

Usability Improvements

Issue 138794 - Redesign "Javadoc Index Search" GUI

Issue 164601 Expansions improvements

Quality Feedback

  • Dusan
  • Issue 74806 Code completion for method/variable/class names should offer used but undeclared identifiers
  • Couple of simple changes in code completion:
  • Issue 75503 Cross deprecated constructors in pop-up menu invoked by Ctrl-P
  • Issue 80733 Ctrl-P should work for generics type parameters
  • Issue 96008 Use simple name for inner classes
  • Issue 112742 Simple return value for methods returning wildcard generic
  • Mila
  • Issue 86511 Create syntax coloring guide for Lexer
  • Issue 122856 Eliminate non-read/write-locked use of TokenHierarchy's methods
  • Issue 150197 Switch off Lexer's Token Hierarchy during formatting
  • Max
  • There was also an idea of hardcoding lists of the most common shortcut that are used by various OSes and to warn a user when they try to assign them to Netbeans actions.
  • Issue 133145 - Surround with try-catch needs user options
  • Issue 131873 - "add parameter to constructor" hint
  • Issue 148751 - Provide change type hint when there are incompatible generic type
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