[[pdt]]
= PHP Development Tools
[[pdt-general]]
== General

=== Unused/unassigned variable validation support

image::images/pdt60_variable_validator.png[]

=== Validation for scalars in break / continue

image::images/pdt60_break_validator.png[]

=== Static operation validation for PHP >= 7

image::images/pdt60_const_validator.png[]

== Fixed support for ASP tags

image::images/pdt60_asp_tags.png[]

=== PHP Explorer was replaced by Project Explorer

image::images/pdt60_perspective.png[]

=== More
* Support "@param callback" in same way as "@param callable"
* Open type shortcuts work in PHP perspective without focus on PHP editor

== Editor

* Async code completion
* Improved code assist for `@var` tags
* Fixed highlighting for projects with duplicated classes in validation paths
* Fixed memory leak in PHP editors
* Improved superglobal highlighting
* Fixed highlighting for `parent` keyword
* Method overriding support PHP 7 return types
* Consistent tooltip for constants defined via `define` and `const` keywords
* Improved highlighting for try/catch/finally statement

[[formatter]]
== Formatter

* Formatter preferences always use latest supported PHP version
* Support braces configuration for traits
* Stable formatter results
* No more "double spaces" around expressions
* New "Line Wrapping" becomes "Keep trailing comma"
* Formatter no longer produce "TextEdits" in places where code isn't really touched

[[debugger]]
== Debugger

* Fix possible deadlock during XDebug session startup
* Support XDebug profiling. Via CLI Launch or manual CacheGrind file import

image::images/pdt60_profiling_import.png[]

image::images/pdt60_profiling_dash.png[]

image::images/pdt60_profiling_tree.png[]

image::images/pdt60_profiling_invocation.png[]

image::images/pdt60_profiling_stat.png[]