PHP tasks for NetBeans 6.9

This document contains a list of task, which are needed to improve PHP support in NetBeans 6.9.


PHP Editor

ID [Priority] Task Description Details Link
1.0 [P2] Configuration for coding standards

Support for configurable coding standards. If we want to spread NetBeans into corporate sphere,then the codding style has to be configurable not to block Continuous Integration

Each configuration should be defined in separate configuration file. There should be possible to add its own coding standard whereas a few predefined standards(how to write PHP code) should be delivered with Netbeans PHP. These predefined configurations could be taken from PHP Code Sniffer(called: MySource, PEAR, PHPCS, Squiz and Zend), which seems to be de facto standards.
1.1 [P2] Formating/Indentation improvements

Formating/Indentation subject of complaints

make it configurable(see Configuration for coding standards) and Formating/Indentation both should adhere to same formatting rules.

1.2 [P3] Code generation improvements

Support for configurable coding standards should affect all parts of NB PHP editor that somehow modifies/generates code.

  • make configurable behavior (see Configuration for coding standards) of: hints && fixes, templates, code generators
  • add additional individual hints checking code style or include PHP Code Sniffer integration
2.0 [P3] Code Completion for files not included into any PHP project

Code completion for individual files(not included in any project) is often required

Implementation based on model to propose items just from the current file should be relatively easy(optional could be considered virtual project for current folder)
3.0 [P3] Type Inference improvements (arrays, fields)

Type inference based on model needs improvements for arrays and fields

Model API/impl. needs to be improved to be able to resolve types for arrays and fields. Will improve quality of code completion, goto declaration, mark occurences, find usages (and refactorings later)
4.0 [P3] Model stabilization, expose as API

Model is heavily used inside PHP editor and needs to be polished and open it as API for other modules(meaning especially PHP project and its support for frameworks)

  • document it
  • expose as API to be able to use it also outside of PHP editor
  • stabilize implementation
5.0 [P3] Declarative Extension of Editor Features

Obviously editor cannot support all extensions for the PHP language, all frameworks

User should be able at least to extend:
  • code completion for individual contexts
  • add signatures for extensions

Deeper evaluation TBD

6.0 [P2] Cake PHP, Zend frameworks editor support

Reflect/support conventions of mentioned frameworks

Related to: Model stabilization, expose as API
7.0 [P3] Advanced navigation

Annotation and navigation similar like in java editor

  • implements
  • overrides
  • is overriden
  • has implementations

Plus show in navigator inherited methods.

Issue #177571
8.0 [P3] Smart Code Generation

Features for improving coding productivity

1. Surrounding of selected code fragment with different constructs could:
  • generate extracted method skeletons including parameters
  • assign variable to extracted expression

2. In code completion for method/function invocation generate calls including parameters taken from current context matching the requested type

3. Code generator showing all inherited methods, let user check wich of them should be generated(similar like for constructor and get/set methods)

9.0 [P3] Refactorings in project scope

Deliver Rename Refactoring

Improving/stabilizing find usages is needed. Consider whether implement also rename refactoring for non static class members which requires very good type inference and can't be implemented 100% reliable anyway.
10.0 [P3] PHP 5.3 support improvements

PHP 5.3 brought many features that were not fully supported in 6.8. Phar,namespace view (analogy of package view in java) should appear in PHP project plan, but also additional editor improvemnts

  • Improve mark occurences, goto declaration, find usages for cases when the same class/function/constant names from different namespaces are used inside one file
  • additional contexts for Code completion like the one for anonymous/closures functions

PHP Frameworks

Priority Task Description Link
P1 Zend framework support, one of the most used PHP framework these days. BZ, 108 votes
P1 CakePHP framework support, one of the most used PHP framework these days. BZ, 135 votes
P1 Major editor improvements, mainly code completion (complete variables passed from controllers to views).

PHP Debugger

ID [Priority] Task Description Details Link
10.0 [P3] Learn from feedback

Feedback shows that debugger is among the most wanted features. We came out with debugger based on XDebug backend and have a feedback now, many issues - many of them because of xdebug issues.

  • make easier setup/usability
  • documentation/discoverability
  • fixing NB issues
  • optional: removing features(if possible) that are unstable because of xdebug bugs(watches, balloon evaluation)
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