PhpStorm 2018.3 Early Access Program is Open

Today we start the Early Access Program for PhpStorm 2018.3 (EAP). A fresh build 183.2153.44 is available for download here and in the JetBrains Toolbox App.

PhpStorm 2018.3 EAP

This build delivers PHP CS Fixer Support, Simplified settings of quality tools, search variables in debug, Ctrl+Dot completion, redesigned Search Everywhere dialog, a bunch of bug fixes and improvements for PHP and the Web, and includes the latest improvements in IntelliJ Platform.

PHP CS Fixer Support

PhpStorm already provides support for neat quality tools: PHPCS and PHPMD. They will help you follow industry coding style standards (such as PSR-2), framework-specific standards, and even your team standards. Checking standards compliance is great but fixing them by hand is tedious, especially on large projects.

PhpStorm now supports PHP CS Fixer, which not only detects the issues but also fixes them for you.

code_sniffer

To set up PHP CS Fixer in PhpStorm, you only need to add it as a dev dependency to your composer.json:

php_cs_fixer_composer_json-1

The IDE will automatically detect the path to PHP CS Fixer. Moreover, PhpStorm will also autodetect your custom ruleset and turn the corresponding inspection on, just like for PHPCS and PHPMD.

php_cs_fixer_inspections

PHP CS Fixer in PhpStorm supports remote interpreters so you may use one of the many Docker images with PHP CS Fixer.

Simplified settings of quality tools

Now that we have a bunch of quality tools supported (PHPCS, PHPMD, and PHP CS Fixer) it would be nice if all the configuration for them lived in one place. Aaaand it’s done: Now you’ll find all the corresponding settings under the Language & Frameworks / PHP / Quality Tools.

quality_tools_set_up

Search variables in debug

During debugging, you can see all the variables of local and global scopes. This is especially handy when you do step debugging because you may follow how the variables values change.

This could become a tough task though when the number of variables grows. Or if you need to track a value deep in some array or objects hierarchy.

Now in PhpStorm 2018.3 you can do a speed search through the debug variables by simply typing what you need to locate.

search_debug

Ctrl+Dot Completion

This enhancement allows you to press Ctrl+Dot during the completion and get the completed item followed by an arrow. You can then type in a method name right away.
ctr-dot-completion

Search Everywhere

The upcoming PhpStorm 2018.3 introduces a better way to navigate over the project and the IDE – please welcome the new Search Everywhere dialog! It has a nicer UI, and it’s resizable and movable. It incorporates Go to class, Go to file, Go to symbol, and Find action!

search_everywhere

You can use the TAB key to switch between the tabs in this new dialog. All the shortcuts still work, and Double Shift will take you to the Search Everywhere tab. Press cmd+Shift+A to go to the Action tab.

You’ll also notice that the search is much faster now.

Other PHP features worth noting

  • WI-42897 Ini files spellchecking added
  • WI-43028 Allow the specification of PHPCS ‘installed_paths’
  • WI-20560 Option to not Follow Redirects added to Restful Web Service Tester
  • WI-40496 In REST client query parameters are now sent for POST methods
  • WI-2171 Automatic upload now listens to file revert, update and delete [and external changes]
  • WI-27738 Fixed: Improper type checking of type-hinted parameter when default value is set

Other platform features worth noting

  • Redesigned Structural Search
  • Reworked Plugins page – it’s now much easier to manage, install, uninstall, and update plugins.
  • “Batch mode” for IDE updates – when multiple updates avaialable (e.g. 2016.3.1 -> 2016.3.2 -> 2016.3.3) IDE is now capable to run update in a single pass
  • VCS improvements: Improved Show History for Revision, Native Git SSH Executable by default, Git Hooks support, Added option to ignore whitespace on merge and annotation, Copy some files from one branch to another branch
  • Tab action added to close all tabs to the right / to the left

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

Future plans

Use the board to view the up-to-date list of the features planned for 2018.3 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!

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.


Download PhpStorm 2018.3 EAP build 183.2153.44 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 Cool Feature, Early Access Program, Newsletter. Bookmark the permalink.
  • Oleg

    It is nice feature to have php CS fixer or other quality tools usable from IDE itself.
    However, question is – why it should be part of per-project composer settings ? :)

    It would be nice to install it once, and so it will be automatically used in all your projects.
    Similar to how XDebug and others working.
    Why not make it global feature?

    • Maxim Kolmakov

      PHP CS Fixer is not a composer setting (it’s just the easiest way to install it). You can point to global installation at Settings | Languages & Frameworks | PHP | Quality Tools.

      You can also specify any path to PHP CS Fixer in File | Preferences for new project | Languages & Frameworks | PHP | Quality Tools. That will set up PHP CS fixer for all newly created projects. Unfortunately, you will have to specify it manually for all existing project. See https://youtrack.jetbrains.com/issue/WI-19525 for the reasons we move all tools to the project-level.

  • ErickSkrauch

    PHP-CS-Fixer custom rulesets isn’t working. It’s still trying to format my code according to PSR-2: http://erickskrauch.ely.by/monosnap-06-09-2018-at-17-00-55.png

  • Xan Bertison

    And the remote collaboration feature that every popular FREE editor has nowadays? Can we have something like that so I can go back to using PHP Storm?

  • El KuKu

    Ctrl+Dot Completion is THE killer feature!!!
    JetBrains Rocks :)

  • Sebastiaan

    Does PHP CS Fixer support a PHP CodeSniffer ruleset then? I have the latter set up, but installing and enabling CS Fixer (project-level) shows me an empty warning balloon popup and no inline analyses. CodeSniffer worked and still works though, just have to manually try to fix it. CS Fixer is fully set up: Composer package installed (and validated), inspections enabled, custom ruleset pointing to my CodeSniffer `ruleset.xml` file.

    • Maxim Kolmakov

      I couldn’t find any information about support of PHP CodeSniffer rules in PHP CS Fixer. They are different tools so I assume they are not compatible with each other. See: https://github.com/FriendsOfPHP/PHP-CS-Fixer/issues/3459#issuecomment-359234259

      So if you have PHP CodeSniffer rules you can use our PHP CodeSniffer integration.

      • Sebastiaan

        Thanks for the reply. I have CodeSniffer set up and it’s working splendidly, but it’s only highlighting invalid code and not suggesting fixes like CS Fixer does. So to me it’s kind of strange to add support for another tool that fixes code based on a ruleset, while supporting another tool that just highlights it.

        CodeSniffer has a “fix” tool too, any way to get that up and running? Currently have to manually check via the CLI. Or maybe support for CodeSniffer fixing like for CS Fixer?

        These names are super confusing btw lol —CodeSniffer, CS Fixer, etc. Also unclear why there are so many identical tools.

  • Rüdiger Scheumann

    How would I install new plugins now from the jetbrains plugin repository? I can only search in “trending”, “installed” and “updates”.

    • Maxim Kolmakov

      Please use search in “Trending”, it will search across all plugins available in the repository.

  • Mat

    I use Debian with Kde on 4k monitor. Until 2018.2 version the resolution was good. Now with the 2018.3 version I have scaling problems because is all too small and I did not find any options to scale all togheter. For instance also Google chrome has resoluzion problem on kde and 4k monitor but passing the “–force-device-scale-factor=1.6” option to the executable, the browser scales. Is there any similar options?