PhpStorm 2017.2 EAP 172.2827 : New UML actions, remove Composer dependency action, PHP extensions detection, return types in change signature

The new PhpStorm 2017.2 EAP build (172.2827.17) 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.2465) 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.

Create new field/method actions for PHP UML diagrams

In this build, we’ve added new actions Create new field and Create new method for PHP UML diagrams. This will help you to design your code right in the UML diagram.create_new_action_uml


Composer: Remove dependency action

We continue our work on Composer, and this EAP brings you Remove dependency action that can be found in renamed Manage dependency dialog.


Return types support for Change Signature refactoring

Now, Change Signature refactoring allows you to add or modify the return type of method/function if your PHP language level is set to be 7.0 or above. The type will also be changed in all overriding methods to avoid return type incompatibilities.


Detection of enabled/disabled extensions for PHP interpreter

In the latest PhpStorm release, we made it possible to configure which PHP extensions are used in the project. Continuing working on the feature, we’ve now added an automatic detection of enabled/disabled extensions for the selected PHP interpreter. That will help you to keep synchronized your project extension settings and extensions that are actually installed in your PHP distributive. The feature works for local as well as for all types of remote PHP interpreters.


Preserve state of Start Listening for PHP Debug Connection option

Last but not least, we’ve implemented a request that many people asked for to preserve a state of PHP Debug Listening option. Now if you had Start Listening for PHP Debug Connection enabled in a project, the option will be restored on a project reopening. That should help you to avoid a situation where debugging doesn’t work because you forgot to enable the option.

From the platform side the update brings:

  • Run single Karma test
  • Configurable Patterns for Automatic Nesting of Transpiled Files
  • Improved navigation in TypeScript
  • New settings for Commit dialog: blank line between subject and body, their maximum length, etc
  • VCS: New Reword action that allows changing commit message
  • VCS: Redesigned shelf tab

See the full list of bug-fixes and improvements in our issue tracker and the complete release notes.

Learn more about other new features in PhpStorm 2017.2:

  • PhpStorm 2017.2 EAP, 172.2103: Docker Compose, PSR-0/4 root detection from composer.json, automatic run of PHPUnit tests, unified settings for frameworks, field declared dynamically warning for fields assigned in constructor but not declared
  • PhpStorm 2017.2 EAP, 172.2273: Reworked polymorphic types support($this, static, parent), $this highlighting, new formatting options, SSH-Agent support
  • PhpStorm 2017.2 EAP, 172.2465: New Composer actions, formatting options for blank lines, unified Test Frameworks settings
  • PhpStorm 2017.2 EAP, 172.2827: New UML actions, remove Composer dependency action, PHP extensions detection, return types in change signature

Download PhpStorm 2017. 2 EAP 172.2827 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

This entry was posted in Early Access Program, Newsletter. Bookmark the permalink.
  • Navarr Barnier

    A neat feature might be knowing which PHP extensions are being used in the code and, if it’s a composer project, helping set the requires block for which extensions are used.

    • Artem Khvastunov

      There’s a feature request for Composer integration, please vote As to detect extensions from the code, there’s no way to do it fast so I doubt it’ll be implemented soon. Still, you can file a feature request. Nevertheless, you can disable all extensions and then run the “Disabled extension stubs” inspection. It’ll give you extensions that can be enabled to make the code green.

    • Artem Khvastunov

      Oh, wait, it seems I understood you wrong. If you want to update composer.json basing on the code, there’s no such an issue request. Could you please file one?

  • Vicente Gomez

    Since updating, I’m unable to reach the “File” menu. I’m on ubuntu 17.04 using the gnome shell.

    • Vladimir Luchansky

      I cannot reproduce this with similar setup. What happens there?

      • Vicente Gomez

        Hi Vladimir,

        Things got worse since the loading of php plugins failed. It may be since I used the new functionality of disabling the php extensions not in use (I let phpstorm autodetect the extensions I had installed). Since then (not sure if related), everytime I tried to start phpstorm, a lot of plugins related to php failed (Blade and some other I don’t remember), and so there was no syntax highlighting.

        I solved both problems (“File” menú and startup problems) deleting my config directory and creating a brand new config directory (I tried importing from old one, but it brought also the failures).

        Hope this helps you diagnose what may be happening.


        • Vladimir Luchansky

          Do you have a copy of old directory by any chance? Looks like settings become corrupted. Did you sync it via some cloud service (Dropbox, Google Drive etc)?

  • Ilya Rogov

    > VCS: New Reword action that allows changing commit message

    It is cool!

    Please consider the possibility to add to the VCS options: git commit –fixup, –squash and git rebase –autosquash.

  • Greg


    Resize of branch/project popup on bottom right is EPIC! I did not know I need that until now! but removal of current branch is a step down :/ Can we restore that ? Should I create ticket for that ?

    Thanks and have a nice day.

  • Greg

    InteliJ markdown plugin doesn’t work after this update – it just throws exception while trying to open any .md file.

    • Vladimir Luchansky

      What exception? Try to change the preview browser in Settings | Languages & Frameworks | Markdown | Preview to Default.

      • Greg

        I’m not a java specialist, but the bottom of the stacktrace shows: java.lang.ClassNotFoundException: org.intellij.plugins.markdown.util.MarkdownPluginUtil PluginClassLoader[org.intellij.plugins.markdown, 2017.2.20170419]

        Look at the bug report 1467500 (sent from IDE itself). I changed from JavaFX to Default and now it works. What’s the real difference between these two?

        • Eugene Morozov

          The text rendering is better with JavaFX.

        • Vladimir Luchansky

          JavaFX has better performance and rendering abilities but looks like it conflicts with some systems. Please monitor if Default works fine for you.

  • Łukasz Piernikarczyk

    Great to see improvements on composer – it’s very needed.
    I’d love to see current and latest version number.

  • Danielx64

    “Run single Karma test” someone please explain what that mean?

  • grucha_net

    I think UML Diagram lacks one small, but great feature – showing types for parameters & methods. :)