Early Access Program

PhpStorm 2019.1 EAP #4

PhpStorm 2019.1 EAP build 191.5532.18 is now available!

This build delivers the ability to enable soft-wraps depending on file type, a new “Uncheck all” checkbox for partial Git commits, a Sublime Text keymap, and more!

You can download it on the website or via JetBrains Toolbox App. Or, if you have the previous PhpStorm 2019.1 EAP build (191.5109.15) installed, you should soon get a notification in the IDE about a patch update.

Docker Compose: Container lifecycle management

In previous PhpStorm 2019.1 EAP builds, we’ve changed the default execution method for the Docker Compose based interpreters from docker-compose run to docker-compose exec. This solved the problem with heavy containers, which were forced to restart on each test run. However, this approach also has some downsides: It doesn’t support containers that don’t work in daemon mode (that is, stop right after the start).

To have the best from both worlds, we’ve introduced a lifecycle management option for Docker Compose:

docker_compose_lifecycle

New quick-fix: Remove unused variable

PhpStorm had the Unused variable inspection for a long time, but still provided no convenient way to remove the variable. PhpStorm 2019.1 introduces a new quick-fix that helps you get rid of the unused variables that appear in assignments and closures’ use lists. The quick-fix is smart enough to detect situations when the assignment expression may have side effects. In such cases, it will suggest leaving the right-hand side as it is.

unused_variable

Strict type rules violation inspection for all files

Let’s say you would like to introduce strict type checking into your project, but at the same time, you want a smooth transition that ensures the working application along the way. Now you can select the Enable for all files checkbox in PHP | Type compatibility | Strict type checking rules violation inspection that will emulate declare(strict_types=1).

settings_strict_type

Soft-wraps depending on file type

In PhpStorm you can use soft-wraps to handle the appearance of long lines in your code. To activate it for the currently opened file, go to View | Active Editor | Use Soft Wraps.

Sometimes you may need to have soft-wraps for one kind of files but not for others. For example, you need it for markdown or plain text files, but not for PHP code. Activating it manually every time can be annoying.

In this release, we’ve added the ability to set up a list of file types that will be soft-wrapped automatically. The feature is disabled by default, so make sure to check out Preferences | Editor | General | Soft Wraps and set it up as needed.

soft-wraps-by-file-type

Sublime Text keymap

Switching over from another IDE can be tough, especially if you’ve been using for a while and are accustomed to its keyboard shortcuts. This is why we are continuing to add new pre-configured keymaps.

Now it’s Sublime Text’s turn to have its keymap available out of the box in PhpStorm. If you are switching from Sublime Text and would like to use the same set of shortcuts, go to Preferences | Keymap and from the Keymap list, select Sublime Text.

sublime-keymap

New “Uncheck all” checkbox for partial Git commits

PhpStorm supports partial Git commits. By using the checkboxes in the Diff pane of the Commit Changes dialog, you can selectively add only some specific code changes into a commit. This can be useful when there are some work-in-progress parts that you don’t want to commit yet, or if you want to split changes into several logical commits.

We’ve just made partial commits a little easier to use. When you have a lot of changes in a file, but you only want to commit a few of them, use the new Uncheck all checkbox to uncheck all the code chunks at once, and then recheck only the ones you want to commit.

partial-commit-uncheck-all

Also, please note that you can always uncheck a file in the tree, in which case it will exclude all the changes in it from the commit. You can also select the whole file in the editor and choose “Exclude Lines from the commit” action from the context menu.

Other notable changes

  • WI-40739 Avoid reporting unhandled exceptions in a case of constant arguments
  • WI-9358 Unused local variable: Unused local variable inspection when passed by reference
  • WI-18501 Unused local variable false warning with closure by reference
  • WI-26941 Unused variable is not detected in use for closure
  • IDEA-85566 Git branches with underscores don’t render properly in branch menu
  • WEB-12349 Debugger console: support string substitutions/output styling
  • IDEA-185342 Shorten command line is missing on scratch run configuration even though prompted
  • IDEA-75181 show absolute time in local history

See all the PHP-related bug-fixes and improvements in our issue tracker or the full list of changes in the release notes.


What are Early Access Programs?

  • Every week we publish a fresh build for the upcoming version of PhpStorm.
  • EAP builds provide access to the newest features we’re currently developing.
  • EAP builds are free to use but expire within 30 days of the build date.
  • EAP builds might be unstable.
  • You can install an EAP build side by side with a stable PhpStorm version.
  • Your feedback is very welcome in comments or in our issue tracker: youtrack.jetbrains.com/issues/WI. Please don’t forget to mention the build number you’re using.

Your feedback is much appreciated. And the most active EAPers will get prizes from us!


Download PhpStorm 2019.1 EAP build 191.5532.18 for your platform from the project EAP page, or click “Update” in your JetBrains Toolbox App.

Your JetBrains PhpStorm Team
The Drive to Develop

image description