Our Pledge to Open Source

Maintaining an open-source project is a tough task that requires an enormous amount of time and effort. But the value that open source contributors bring to the community cannot be emphasized enough. It’s huge!

At JetBrains, we rely heavily on open source tools ourselves. And we have been proudly supporting them for over a decade now. Moreover, some of our products are open source too, like the IntelliJ Platform (yes really, you can develop your own IDE if you want!), the Kotlin programming language, phpstorm-stubs, and more.

Open Source Support Program

For all open source project leads and regular committers, we provide free All Products Pack subscriptions, as well as licenses for any team tools they may find useful (YouTrack, Upsource, and TeamCity). You can learn more about this initiative and apply to it on our Open Source Support Program page.

There are currently more than 1500 PHP projects registered in the program, and we provide about 2500 licenses to active contributors. We’d like to say a big thanks to everyone using PhpStorm to develop these open source projects!

We are happy to support the PHP community in other ways too!

Nikita Popov at JetBrains

Nikita Popov joined the PhpStorm team about a year ago. Back then, we did not know how it would go, but it turns out that Nikita and JetBrains are perfectly matched for each other, and we are now in a position to evaluate the results of this venture.

Here are the highlights of what Nikita has been working on:

PHP 7.4

PHP 8

Two other areas Nikita has been involved in are introducing new CI pipelines for PHP-SRC (with Joe Watkins) and stubs for internal PHP functions. The first has helped to make builds faster and more reliable. Thanks to all the contributors, the latter will allow type information about arguments and return values to be gathered in PHP 8 through Reflection.

Also, check out Nikita’s What’s coming in PHP 7.4 talk at the PHP Russia conference and the PHP Performance Trivia at PHP.BARCELONA. And you may want to see a new talk at PHP fwdays’20.

But Nikita is not the only member of the PHP community that we support and collaborate with.

Derick Rethans and Xdebug

Xdebug has been around for 17 years already. And ever since then, it’s been a key tool in the PHP ecosystem. It is an essential part of everyday life for many developers because it allows debugging, profiling, calculating code coverage, and other things. Even more mind-blowing is that it has been developed and maintained almost solely by Derick Rethans, who has worked on this voluntarily for more than 17 years!

Xdebug integration was one of the main features of PhpStorm. That’s why, starting from the first beta of PhpStorm, we’ve supported Xdebug and have begun collaborating more tightly with Derick. He has helped us find bugs in PhpStorm, and we have in turn reported issues in Xdebug back, which has been integral to making both tools better.

Over these last ten years, we’ve become great friends with Derick. And now, with his announcement to become an independent developer, we are finally proud to sponsor Derick in his endeavors. We started by covering the costs of developing the IDE specific feature #1388, Breakpoint validation. Obviously, this went very well. So now we are sponsoring Derick’s work regardless of the scope. We are happy that other companies have also signed up for the business package sponsorship.

By the way, Derick hosts the popular PHP Internals News podcast.

Individual Open Source Contributors

There are a number of other open-source contributors that dedicate an enormous amount of effort, time, and energy to building tools and making the PHP ecosystem a better place for all of us.

We have decided that we should try to support these individual contributors in whatever way we can, so we are pleased to announce that we will be donating a significant portion of our ads budget to instead sponsoring individual contributors.

Starting this year we are going to begin sponsoring a few key maintainers of the tools crucial to the ecosystem.

At the moment, we are trying to finalize the details of the GitHub Sponsors program.

This will be an ongoing program, and we plan to reconsider the list of contributors yearly.

Again, we would like to thank each and every one of the open source contributors. Please know that your work is much appreciated!

If you use open source tools in your work, you probably already appreciate what an awesome community we are all part of and what these contributors are doing for it.

A PHP Internals Gathering

This year will be the 25th anniversary of PHP. The topic of a PHP core team meeting has come up a number of times in Internals discussions. And in fact, there actually has been a meeting, but it was so long ago that it’s practically ancient history. This anniversary provides the perfect occasion for the team to finally all get together.

Which brings me to my point. JetBrains would like to host and sponsor a Grand PHP Internals Gathering! The first PHP announcement was made on the 8th of June in 1995, and we are planning to meet on roughly the same day 25 years later.

We’ve already reached out to Internals members, and we’ve received very positive feedback and a number of confirmations of participation. We’re now moving at full speed to plan the event, and we’ll share more details soon. Stay tuned!

Your JetBrains PhpStorm team
The Drive to Develop

Posted in Newsletter | Leave a comment

PhpStorm 2019.3.2 is released

PhpStorm 2019.3.2 build 193.6015.48 is now available!

This second minor update for PhpStorm 2019.3 brings a bunch of important bugfixes for PHP, the Web, and all the latest improvements made to the IntelliJ Platform.

Download PhpStorm 2019.3.2 for your platform on the website or click Update in your JetBrains Toolbox App, or from inside the IDE, or use snaps if you are an Ubuntu user.

Most notable changes:

  • DB Console: Execution of stored procedures (DBE-1734 +108)
  • Fixed: Customize Menus – Navigation Bar popup menu items are not saving (IDEA-222803 +18)
  • Fixed: Switch tab shortcut skips one file with Tab limit = 1 (IDEA-226761 +15)
  • Fixed: Start tag has wrong closing tag (WEB-42723 +5)
  • Fixed: Unable to remove Services tool window from panel (IDEA-227195 +4)
  • Select on Zerofill column (DBE-985 +4)
  • Fixed: PHPUnit: Invocation with class name is deprecated (WI-50201 +3)
  • Fixed: UnsupportedOperationException when trying to open Xdebug snapshot (WI-50502 +2)
  • Fixed: PHP 7.4 fails on a quality tools due to the conflict with libraries (PHPMD) (WI-50050 +1)

You can find the full list of changes in the release notes.


Feel free to reach out to us with any question or bugs and feature requests via Issue Tracker, Twitter @phpstorm (we read it), or here in the comments.

Your JetBrains PhpStorm Team
The Drive to Develop

Posted in Release Announcements | Tagged , | Leave a comment

PhpStorm 2019.3.2 RC

PhpStorm gets fresh updates every week, and this time we have a release candidate for 2019.3.2. Please give the PhpStorm 2019.3.2 RC build 193.6015.31 a try and share your feedback with us.

Notable updates since last build:

  • Fixed: PHP 7.4 fails on quality tools due to the conflict with libraries (PHPMD) (WI-50050 +1)
  • Support TypeScript 3.8 type-only imports/exports: syntax-only (WEB-43125 +1)

See all changes since the last build in the release notes.


Download PhpStorm 2019.3.2 RC build 193.6015.31 for your platform here:

Or just click Update in your JetBrains Toolbox App.

We’d appreciate it if you’d report any bugs and feature requests to our Issue Tracker, Twitter @phpstorm, or here in the comments.

Your JetBrains PhpStorm Team
The Drive to Develop

Posted in Release Candidates | Tagged , | Leave a comment

PHP Annotated – January 2020

php_annotated

Greetings everyone,

It’s time for 2020’s first edition of PHP Annotated! This edition includes 4 new RFCs from PHP Internals and a few interesting updates for PHP 8 in pull-requests. We’ll catch up on the fresh releases from the end of 2019: Codeception 4.0, Phalcon 4.0, CakePHP 4.0. We’ve also got articles on Laravel and Symfony, useful tools, videos, podcasts, and a whole lot more!
Continue reading

Posted in PHP Annotated Monthly | Tagged , , , , , , , , | Leave a comment

PhpStorm 2019.3.2 Preview

We’re back from the holidays with a preview of the second bugfix update for PhpStorm 2019.3. Please give the PhpStorm 2019.3.2 Preview build 193.6015.15 a try and share your feedback with us.

Notable updates

  • DB Console: Execution of stored procedures (DBE-1734 +108)
  • Fixed: Customize Menus – Navigation Bar popup menu items are not saving (IDEA-222803 +18)
  • Fixed: Switch tab shortcut skips one file with Tab limit = 1 (IDEA-226761 +15)
  • Fixed: PHPUnit: Invocation with class name is deprecated (WI-50201 +3)
  • Fixed: UnsupportedOperationException when trying to open XDebug snapshot (WI-50502 +1)
  • Fixed: Connect to database Joomla 4 integration (WI-48688)

See all changes in the release notes.


Continue reading

Posted in Release Candidates | Tagged , , | Leave a comment

How to Upgrade to PHP 7.4 with PhpStorm

Check out our fresh video with a few nice tips and tricks on how to update your codebase to PHP 7.4. It combines materials from the PhpStorm 2019.2 and PhpStorm 2019.3 releases, with a few cool bonuses to boot.

Nikita drew our attention to the fact that setters are slower than assigning properties directly. We had to make a microbenchmark. You can’t take Nikita’s word for it, can you?!
So in the video, don’t miss the guide on creating a custom inspection and quick-fix to convert setters to property assignments.

Your JetBrains PhpStorm Team
The Drive to Develop

Posted in Cool Feature, Newsletter, Screencast | Tagged , , | Leave a comment

PhpStorm 2019.3.1 is released

PhpStorm 2019.3.1 build 193.5662.63 is available now. It brings with it important bugfixes and a couple of small but heavily requested usability improvements.

Customizable auto-insertion of short tags

PhpStorm 2019.3 introduced the ability to automatically insert <?php as soon as you type <?, which can help you deprecate short tags:

php-no-short-tag

But because short tags are still a part of PHP, this turned out to be a bit excessive. That is why in this version, we’ve brought several enhancements to the feature.

First, you can now opt out completely. In the PhpStorm preferences, go to Editor | General | Smart Keys | PHP and clear the Auto-insert ‘<?php’ tag after typing ‘<?’ checkbox:

auto-insert-short-tag

Second, PhpStorm will filter out the extra php if you happen to type it reflexively, so <?phpphp should no longer occur. And, to remove the php part, you only have to press Backspace once:

php-no-short-tag-delete

Customizable highlighting for PHPDoc blocks

Another feature that required a more tailored approach is colored highlighting for PHPDoc blocks, which we introduced in 2019.3.

phpdoc-improvements

It turns out that change was a bit too radical for some, so now it’s possible to customize the colors used. In the PhpStorm preferences, go to Editor | Color Scheme | PHP | PHPDoc, clear the Inherit values from checkbox on the elements you’d like to customize, and then set the desired colors:

phpdoc-customize

As always, there’s a handy shortcut you can use to jump straight to the corresponding settings page. Place the caret on some PHPDoc element, press Shift+Cmd+A (Ctrl+Shift+A on WIndows), and search for the Jump to Colors and Fonts action:

phpdoc-jump-to-settings

Notable updates and bugfixes:

  • PHP Profiler: Show memory column for Xdebug > 2.6 (WI-40687 +5)
  • Fixed: Incorrect <visibility> const order in PHP class when formatting code (WI-49902 +3)
  • Fixed: Format Code incorrectly changes list to array destructure (WI-49966 +12)
  • Fixed: Scrolling very slow/sluggish in database table view/editor with many columns (DBE-9604 +10)
  • Fixed: Add property type modifies parent class in library (WI-49957 +4)
  • Fixed: Focus lost after closing tool window if editor tabs are split (IDEA-227102 +4)

For the full list of bugfixes and improvements in the update, please see the release notes.

To get the latest version, just click Update in your JetBrains Toolbox App.

We appreciate all your reports in our Issue Tracker, including both bugs and feature requests.

Your JetBrains PhpStorm Team
The Drive to Develop

Posted in Cool Feature, Release Announcements | Tagged , , | Leave a comment

PhpStorm 2019.3.1 RC

PhpStorm 2019.3.1 RC build 193.5662.42 is available now. It brings with it important bugfixes, usability improvements, as well as regression fixes. Give it a try and share your feedback with us.

Notable updates:

  • Fixed: Format Code incorrectly changes list to array destructure (WI-49966 +12)
  • Fixed: Scrolling very slow/sluggish in database table view/editor with many columns (DBE-9604 +10)
  • Added: New option Editor | General | Smart Keys | PHP | Auto-insert ‘<?php’ tag after typing ‘<?’ (WI-49962 +9)
  • Fixed: Add property type modifies parent class in library (WI-49957 +4)
  • Fixed: Focus lost after closing tool window if editor tabs are splitted (IDEA-227102 +4)

See the full list of bugfixes and improvements in the release notes.


Download PhpStorm 2019.3.1 RC build 193.5662.42 for your platform here:

We appreciate you reporting any bugs and feature requests to our Issue Tracker.

Your JetBrains PhpStorm Team
The Drive to Develop

Posted in Release Candidates | Tagged , | Leave a comment

PHP Annotated – December 2019

php_annotated

Greetings everyone,

It’s time for our December edition of PHP Annotated! Read about the latest releases PHP 7.4, Symfony 4.4 and 5.0, Xdebug 2.9, news from PHP Internals, articles on Laravel and Symfony, useful tools, videos, podcasts, and a whole lot more!
Continue reading

Posted in PHP Annotated Monthly | Tagged , , , , , | Leave a comment

PhpStorm 2019.3.1 Preview

We’ve just released PhpStorm 2019.3, and today we are ready to give you a preview of the first bugfix update. This PhpStorm 2019.3.1 Preview build 193.5662.16 brings with it important bugfixes and changes based on your feedback.

Notable updates:

  • Ability to configure PHPDoc reference/type and variable/params highlighting (WI-48105 +28)
  • PHP Profiler: Show memory column for Xdebug > 2.6 (WI-40687 +5)
  • Fixed: Incorrect <visibility> const order in PHP class when formatting code (WI-49902 +3)
  • Avoid the <?phpphp result when the user tries to type the full tag (WI-49337)
  • Remove “php” from <?php on the backspace (WI-49636)

See all changes in the release notes.


Download PhpStorm 2019.3.1 Preview build 193.5662.16 for your platform here:

Or just click Update in your JetBrains Toolbox App.

We appreciate you reporting any bugs and feature requests to our Issue Tracker.

Your JetBrains PhpStorm Team
The Drive to Develop

Posted in Release Candidates | Tagged , | Leave a comment