Early Access Program News

PhpStorm 2022.3 Early Access #4: New Settings Sync

In this build, we added a new way to sync your settings, and many improvements for HTTP Client and Docker integration. 

Keep on reading to learn all about it!

The EAP allows you to try new features from the upcoming PhpStorm 2022.3. EAP builds are free to use. You can install them side by side with a stable version of PhpStorm. If something doesn’t work correctly, you can quickly switch back to the previous version without interfering with your workflow.

Download PhpStorm 2022.3 EAP

New Settings Synchronization solution

In this EAP build, we introduce a reworked solution to synchronize your custom user settings.

For quite a long time, two solutions coexisted in parallel and featured intersecting functionality – IDE Settings Sync and Settings Repository. To avoid confusion, we’ve merged their feature sets into a single solution – the new Settings Sync. It covers all of the basic prerequisites for settings synchronization and is now available in PhpStorm.

Settings synchronization is essential when you use your IntelliJ-based IDE on two or more computers. After changing a color scheme or a keymap on one machine, you naturally want to see the same setup on the second machine. But even if you have only one IDE instance, Settings Sync is still valuable as a backup solution, since it will allow you to automatically restore all your settings when you set up a new machine from scratch.

The new Settings Sync plugin can sync all shareable settings from the platform, bundled plugins, and third-party plugins. By default, the plugins themselves will be synchronized and installed silently. As for the third-party plugin settings, not all of them will be transferred seamlessly, as this is dependent on the third-party vendors. We are now communicating with plugin developers about the actions required from their side.

How does the new Settings Sync work?

The settings are stored in the cloud attached to the user’s JetBrains Account. If you use different IntelliJ-based IDEs associated with the same user account, your settings will be automatically synced.

In the cases where a conflict arises due to the simultaneous modification of settings on two different computers, the settings will be merged using the most recent configuration.

How to enable the new Settings Sync?

Depending on your current approach to settings synchronization, you may need to manually enable the new sync:

  • If you have been using IDE Settings Sync, your data will be automatically migrated to the new plugin, so you won’t need to take any action.
  • If you are a Settings Repository user, we advise you to continue using your current setup, as the migration is still a work in progress. You’ll get an in-IDE notification once the functionality is ready.
  • If you weren’t previously using a settings synchronization solution, but want to try the new one, you can enable it via Settings / Preferences | Settings Sync | Enable Settings Sync.

Code style improvements for the HTTP Client

The HTTP Client now provides better formatting options for requests with long URLs. You can also use the Put query parameters on separate lines context action to break the query into smaller fragments on different lines.

To adjust this formatting preferences, we’ve implemented a new option in Settings / Preferences | Editor | Code Style | HTTP Request | Wrapping and Braces.

HTTP Client: Pre-request scripts and new APIs for JavaScript handlers

The HTTP Client now supports script blocks that are executed before requests. You can generate some data before request execution and pass it to the subsequent request using variables.

PhpStorm now also provides the сrypto API, making your code capable of computing the md5 or sha1 hash values for an HTTP request.

For simple cases, the IDE now features a new set of random variables.

Docker

Docker executable from WSL without Docker Desktop

As of v2022.3, PhpStorm supports connections to Docker that run on Windows Subsystem for Linux (WSL). You can set up this type of connection in Settings / Preferences | Build, Execution, Deployment | Docker.

New context action: Pull image

There is now an easy way to pull a required image without running it from Dockerfile, docker-compose.yml, or even from tests using the Testcontainers. Simply call up the context actions (Alt-Enter) on the highlighted image name and then select Pull Docker image.

Support for the .dockerignore file type

We’ve introduced full support for .dockerignore files, including code highlighting and completion. These files are now taken into account when you build an image from the IDE.

Support for the heredoc format in Dockerfile files

Here documents allow you to redirect subsequent Dockerfile lines to the input of RUN or COPY commands. PhpStorm now supports this syntax, so you can use it to generate config files or multiline scripts right in your Dockerfiles.

Docker connections from Docker Contexts

You can now set up additional Docker connections using Docker Contexts if you already have such settings in your Docker config. You can do so by calling the Add Service context menu in the Services view and selecting Docker Connections From Docker Contexts.


Please see the release notes for the complete list of changes in the EAP #4 build.

  • Important! PhpStorm EAP builds are not fully tested and may be unstable.
  • You can install an EAP build side by side with a stable PhpStorm version to try out the latest features.
  • EAP builds are free to use and don’t require a license. However, they expire 30 days after the build date and then you’ll have to download a new build.

Please let us know about any problems you find by reporting them to our issue tracker or commenting on this post.

image description