PhpStorm 2018.1 Early Access Program is Open
Today we start the Early Access Program for PhpStorm 2018.1 (EAP). A fresh build 181.3007.10 is available for download here and within the JetBrains Toolbox App.
What is Early Access Program?
Early Access Program (EAP) allows you to try pre-release versions of our software to evaluate features that will be added in the next release. It is important to distinguish EAP from traditional pre-release software. Please note that the quality of EAP versions may at times be far below even usual beta standards. If you are looking for a stable version of PhpStorm, please visit our site.
This build delivers new features, bug fixes and improvements for PHP and the Web, and includes the latest improvements in IntelliJ Platform.
Creating class from test
PhpStorm already can create a test from a class (Shift+Cmd+T), which is a time-saver for covering the class implementation with a test. With TDD becoming more and more popular, the situations are pretty common, in which the test is already in place, but the class does not exist yet. To handle such situations, PhpStorm will help you generate a class as well as the class methods from an existing test.
You can invoke the Create missing target class or Create missing target method actions by placing the caret on the element and pressing Alt-Enter.
You can generate all the class methods at once: invoke Run inspection by name and select the Missing target element for PHPUnit test inspection. PhpStorm will take your PSR-0/PSR-4 structure into account and will generate the target class and the class methods in their respective locations.
Improved @covers support
PhpStorm 2018.1 significantly enhances the support for the PHPUnit @covers and @coversDefaultClass annotations. When you add a @coversDefaultClass annotation for a test class, PhpStorm will now provide classes completion for you. With the class selected, PhpStorm will provide you with the relevant choice of the class methods to annotate with @covers. By invoking code completion (CMD/CTRL+Space) twice, you can also complete visibility modifiers.
You can navigate from a method to all test methods that cover it: simply invoke the Test action with the caret placed inside the method. And then, there’s more: the new inspection will show all usages of @covers with methods and functions not prepended with :: (the scope resolution operator).
New composer actions
We continue improving the support for Composer. In this version, we’ve added six new actions that can be invoked right from the editor: Validate, Dump Autoloader, Check for Changes in Dependencies, Clear Caches, List Licenses, and Diagnose. For the Validate and Dump Autoloader actions, a set of options is provided to better adapt them to your workflow.
Other features worth noting
- New deployment actions in version control Update info panel: WI-7372
- Script Output tab for debugger: WI-4466
- Reworked class_alias support: now hierarchy checks and exception analysis work correctly for aliases: WI-33814 and related
- PHPUnit: now runs all method listed in @depends before the actual test method
- Completion of test methods’ names based on tested class: WI-38938
- Inplace extract refactorings: WI-39248, WI-14691
- New inspection: ‘foreach’ can be replaced with ‘array_map’: WI-38051
- New feature “open terminal here”: IDEA-149976
Apart from new features, this build brings many important bug fixes and usability improvements, including these:
- CSS inspector does not recognize SVG elements and properties: WEB-56
- Alignment of text when line spacing > 1.0: IDEA-149608
See the full list of bug-fixes and improvements in our issue tracker and the complete release notes.
Future plans
Use the board here to view the up-to-date list of the features planned for 2018.1 release, as well as discovered bugs. The list only reflects our current plan and is not final. It may be revised during development since new issues may appear and existing may be re-planned to appear in later versions. Please share your opinions on what is important to you and what would you like to see in the new version!
Download PhpStorm 2018.1 EAP build 181.3007.10 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