The new PhpStorm 2017.2 EAP build (172.2273.9) is now available! You can download it here or via JetBrains Toolbox App. Or, if you have the previous PhpStorm 2017.2 EAP build (172.2103) installed, you should soon get a notification in the IDE about a patch update.
This build delivers new features, bug fixes and improvements for PHP and the Web, and takes on the latest improvements in IntelliJ Platform.
Reworked polymorphic types support($this, static, parent)
We’ve completely reworked support of polymorphic types such as $this, static and parent. That has fixed a missing type in chain call if a method has a double return type (WI-30131), type loosing with new static() call if method from base class returns $this (WI-27532), returning self in traits is not resolved correctly (WI-32050) and many others issues requiring complicated type juggling.
Please report any regressions that you’ve noticed.
When you place your caret on $this, PhpStorm highlights all usages of this variable across the whole class. That helps you to visually find usages of the variable.
New formatting options
We’ve added new formatting options that help you to tune your project more precisely according to your company requirements or personal taste:
- New parenthesis options for “if” statement
These options can be found in Settings | Editor | Code Style | PHP | Wrapping and Braces | if statement. They are called New line after ‘(‘ and Place ‘)’ on a new line. Note that the options work only for multiline if conditions.
- Separate option for brace placement for closures
The option can be found in Settings | Editor | Code Style | PHP | Wrapping and Braces | Minimum Blank Lines. It’s called In closure declaration.
- New option to enforce a newline after PHP opening tag
The option can be found in Settings | Editor | Code Style | PHP | Blank Lines | Brace placement. It’s called After opening tag.
We’ve also improved the way single line PHP blocks are treated so now braces will never be moved to the next line.
If you prefer to keep your SSH keys safe using SSH agent (on Linux and macOS) or Pageant (on Windows), this is now supported in PhpStorm. Just set authentication type to authentication agent when setting up your SSH connection.
Apart from new features, this build brings many bug fixes, including these:
- Window is not restored in proper maximized state on Windows OS: IDEA-96168
- Flow object type spread is not supported WEB-26408
Download PhpStorm 2017. 2 EAP 172.2273 for your platform from the project EAP page or click “Update” in your JetBrains Toolbox App and please do report any bugs and feature request to our Issue Tracker.
Your JetBrains PhpStorm Team
The Drive to Develop